あなたはBingのレンズが使用するのと同じOCRサービスを使用して試すことができます。試していない場合は、カメラを開き、レンズをビンレンズに変更して試してみてください。
サービスエンドポイントはhttp://ocrrest.bingvision.net/V1です。また、検出されたテキストの位置に関する情報をバウンディングボックスで表示します。
おそらく、いくつかのフィドラー解析は、同様の方法でイメージを送信するのに役立ちます。
私は、Windowsの携帯電話8は、任意のOCRのAPIをサポートしていないバイト配列
public static readonly string ocrServiceUrl = "http://ocrrest.bingvision.net/V1"; // was: "platform.bing.com/ocr/V1";
public static readonly string ocrLanguage = "en";
public static async Task<JsonObject> MakeOcrJSON(byte[] image)
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(string.Format("{0}/Recognize/{1}", ocrServiceUrl, ocrLanguage));
request.Method = "POST";
using (Stream requestStream = await request.GetRequestStreamAsync())
{
requestStream.Write(image, 0, image.Length);
}
try
{
using (HttpWebResponse response = (HttpWebResponse) (await request.GetResponseAsync()))
{
using (var responseStream = new StreamReader(response.GetResponseStream()))
{
var json = JsonObject.Parse(responseStream.ReadToEnd());
return json;
}
}
}
catch (WebException we)
{
using (Stream responseStream = we.Response.GetResponseStream())
{
DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(OcrResponse));
OcrResponse ocrResponse = (OcrResponse)serializer.ReadObject(responseStream);
string ErrorMessage = "Unknown Error";
if (ocrResponse.OcrFault.HasValue)
{
ErrorMessage = string.Format(
"HTTP status code: {0} Message: {1}",
ocrResponse.OcrFault.Value.HttpStatusCode,
ocrResponse.OcrFault.Value.Message);
}
throw new Exception(ErrorMessage);
}
}
}
として画像を期待し、それ以下の小さなスニペットを持っています。あなたはいくつかの外部ライブラリを試すことができます。 - http://www.leadtools.com/sdk/windows-phone/default.htm –
@SadAlAbdullah、Plsがこれを答えにして、答えを裏付けるMicrosoftの声明を追加して、それを終了させることができます。 – Eldho