在Android上使用OpenCV提高Tesseract性能

Qui*_*HoN 6 java ocr android opencv tesseract

我正在使用实时OCR处理Android应用程序.我使用OpenCV和Tesseract Library.但即使在我的Galaxy SIII上,性能也很差.有什么方法可以改善性能吗?这是我的代码:

    Mat mGray = new Mat();
capture.retrieve(mGray);
Bitmap bmp = Bitmap.createBitmap(mGray.cols(), mGray.rows(), Bitmap.Config.ARGB_8888);
tessBaseApi.setImage(bmp);
String recognizedText = tessBaseApi.getUTF8Text();
Log.i("Reg", recognizedText);
Run Code Online (Sandbox Code Playgroud)

将位图传递给Tesseract API会降低tesseract OCR的速度吗?在传递给Tesseract API之前,我应该执行哪些预处理?

Rui*_*ues 0

一些可能使它更快的事情是:

  • 在 createBitmap 之前,从 mGray 中选择文本所在的较小区域 - 因此接下来的更繁重的方法会处理较小的图像。
  • 将 Bitmap.Config.ARGB_8888 更改为 Bitmap.Config.RGB_565 - 您的图像是灰度的,它不需要 ARGB 位图。