在Tesseract中有指定进度和取消回调的方法吗?我正在使用机器人中的Tesseract,使用苔丝-两个项目。
前面已经有一个问题-- Android Tesseract进度回调。然而,那里的答案意味着这是不可能的。
我还有一个重要的细节要添加--我检查了源代码,并找到了一个名为的类,它看起来就可以用于这个目的。
我的问题是- ETEXT_DESC是否可以用于进度和取消回调,如果可以,我如何使用它?
发布于 2015-05-04 14:19:57
是的,您可以通过实现ProgressNotifier接口和重写onProgressValues方法来获得进度回调。(在幕后,它使用了您提到的ETEXT_DESC类。)将通知程序对象作为参数提供给TessBaseAPI构造函数。
您可以使用stop方法取消正在进行的OCR。
最近我写了一篇关于这个的博客帖子。如果你遇到问题,请在“苔丝-二”计划上开一个新的题目。
编辑:
来自博客的文章:
进度百分比可用于温度计式ProgressBar.在识别过程中,可以在输入图像的显示上绘制边框。 实现此回调需要使用TessBaseAPI对象的备用构造函数和ProgressNotifier接口的实现:
登记以接收更新:
ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar1);
// Create the TessBaseAPI object, and register to receive OCR progress updates
TessBaseAPI baseApi = new TessBaseAPI(this);
baseApi.getHOCRText(myImage);接收udpates:
@Override
public void onProgressValues(ProgressValues progressValues) {
progressBar.setProgress(progressValues.getPercent());
}https://stackoverflow.com/questions/30025912
复制相似问题