Захватывает живую рамку камеры для распознавания текста в формах Xamarin - PullRequest
0 голосов
/ 28 сентября 2019

Я реализую OCR в формах xamarin.Я использую TesseractApi после Тессеракт OCR для Xamarin (часть 1) , xocr и MediaPlugin .Реализация проста из сохраненного / захваченного изображения, но я ищу, чтобы выполнить OCR из кадров, а не из сохраненного изображения.

private async void Button_Clicked(object sender, EventArgs e)
        {
            if (
                !CrossMedia.Current.IsPickPhotoSupported)
            {
                await DisplayAlert("No Upload", "Picking photo is not supported!", "OK");
                return;
            }

            if (!_tesseractApi.Initialized)
                await _tesseractApi.Init("eng");

            var photo = await TakePic(); //capture picture
           if (photo != null)
            {

                var tessResult = await _tesseractApi.SetImage(photo);

                if (tessResult)
                {
                    recognizedTextLabel.Text = _tesseractApi.Text;
                }
            }
        }

private async Task<Stream> TakePic()
        { 
            var file = await CrossMedia.Current.PickPhotoAsync();

            if (file != null)
            {
                //show stream in image - this is for test only
                img.Source = ImageSource.FromStream(() =>
                {
                    return file.GetStream();
                });
                //return stream for ocr reading
                return file.GetStream();
            }
            return null;
        }
...