2014-09-01 5 views
-1

Я разрабатываю приложение Windows Phone 8.1 (не silverlight) об OCR с использованием [WindowsPreview.Media.Ocr]. Я заменил файл данных OCR по умолчанию на китайский файл ocr resouce.Microsoft OcrEngine: Исключение в распознавании изображения, которое содержит содержимое китайского текста

Вот мой код, в конструкторе:

ocrEngine = new OcrEngine(OcrLanguage.ChineseSimplified); 

, а затем загрузить тестовый файл с китайским содержанием текста:

private async Task LoadImage() 
    { 
     var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync("TestImages\\Test4.png"); 

     ImageProperties imgProp = await file.Properties.GetImagePropertiesAsync(); 

     using (var imgStream = await file.OpenAsync(FileAccessMode.Read)) 
     { 
      bitmap = new WriteableBitmap((int)imgProp.Width, (int)imgProp.Height); 
      bitmap.SetSource(imgStream); 
      PreviewImage.Source = bitmap; 
     } 
    } 

и начать:

await ocrEngine.RecognizeAsync((uint)bitmap.PixelHeight, (uint)bitmap.PixelWidth, bitmap.PixelBuffer.ToArray()); 

на этой линии, исключение было выбрано: System.NullReferenceException: ссылка на объект не установлена ​​в экземпляр объекта.

at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at OCRImgReadText.MainPage.<ExtractText_Click>d__f.MoveNext() 

Приведенный выше код отлично работает с распознаванием содержимого содержимого на английском языке. Может ли кто-нибудь дать мне совет? Спасибо!

ответ

2

Кажется, что использование ресурсов как на китайском упрощенном, так и на английском языке решает проблему.

+0

Спасибо за ваш ответ, он решает мою проблему! –