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