每个人。我正在尝试将 tess-two OCR 库包含到 Android 项目中,但出现了一些问题。
[我正在尝试做的事情]
在 Android Studio 上使用 tess-two(tess-two github 链接)进行 OCR。
(我想开发一些 OCR 应用程序)
[我被困的地方]
从 Android Studio 运行时应用程序被强制终止
[我做了什么]
- 下载了 tess-2
- 建造它
ndk-build android update project --path C:\...\tess-two ant release
- 在 Android Studio 上做了一个新项目“测试”(API 16,空白活动)
- 将 classes.jar 放到 test\app\libs
- 将 classes.jar 作为库添加到应用程序
- 将带有 .so 文件(armeabi-v7a、mips、x86)的目录放入 test\app\src\main\jniLibs
- 将以下代码放入 MainActivity.java
import com.googlecode.tesseract.android.TessBaseAPI; public void testOCR(){ String storagePath = Environment.getExternalStorageDirectory().getPath(); Bitmap bitmap = null; ImageView img = (ImageView) findViewById(R.id.imageView); // Read an image File file = new File("storage/sdcard1/tess-two/ocr_sample.jpg"); if (file.exists()) { bitmap = BitmapFactory.decodeFile(file.getPath()); bitmap = bitmap.copy(Bitmap.Config.ARGB_8888, true); img.setImageBitmap(bitmap); }else{ Log.d("tess-two","File not found."); return; } // Init modules TessBaseAPI tessOCRAPI = new TessBaseAPI(); tessOCRAPI.init(storagePath+"/tess-two/", "eng"); // Set Image tessOCRAPI.setImage(bitmap); String recognizedText = tessOCRAPI.getUTF8Text(); Log.d("tess-two",recognizedText); // Close OCR API tessOCRAPI.end(); }
- 在智能手机上运行应用程序。
然后,应用程序停止了。我调试了它,程序似乎停止在TessBaseAPI tessOCRAPI = new TessBaseAPI();
. 调试时,调试窗口出现以下语句。
com.android.internal.os.ZygoteInit$MethodAndArgsCaller
重建和清理项目并在谷歌上搜索并没有得到任何好的结果。
任何人都可以提出解决此问题的方法吗?先感谢您!
【我的环境】
- Windows 8.1 专业版 64 位
- 安卓工作室 1.3
- Xperia SO-04F
[参考]