我使用Qualcomm的vuforia库实现了增强现实程序。现在我想在我的程序中添加光学字符识别功能,以便我可以实时将文本从一种语言翻译成另一种语言。我打算使用Tesseract OCR库。但我的问题是如何将Tesseract与QCAR集成? 有些人可以建议我这样做吗?
答案 0 :(得分:2)
您需要的是访问相机框架,因此您可以将它们发送到Tesseract。 Vuforia SDK提供了一种使用QCAR::UpdateCallback
界面访问框架的方法(文档here)。
您需要做的是创建一个实现此协议的类,使用QCAR::registerCallback()
将其注册到Vuforia SDK(请参阅here),然后每次都会收到通知Vuforia SDK处理了一个框架。
此回调将提供一个QCAR::State
对象,您可以从该对象访问相机框架(请参阅QCAR::State::getFrame()
here的文档),然后将其发送到Tesseract SDK
但是要注意Vuforia SDK以相当低的分辨率使用帧的事实(在我测试的许多手机上,它返回360x240到720x480范围内的帧,更常见的是前者(后者),这可能不足以让Tesseract检测文本。
答案 1 :(得分:0)
作为@mbrenon答案的补充信息:Tesseract仅进行文本识别并且不支持ROI文本提取,因此您需要在捕获图像后将其添加到系统中。
您可以阅读这些学术论文,报告在手机上使用Tesseract的其他步骤,并提供一些评估性能: