增强现实与光学字符识别

时间:2013-05-26 13:13:30

标签: android ocr augmented-reality vuforia

我使用Qualcomm的vuforia库实现了增强现实程序。现在我想在我的程序中添加光学字符识别功能,以便我可以实时将文本从一种语言翻译成另一种语言。我打算使用Tesseract OCR库。但我的问题是如何将Tesseract与QCAR集成? 有些人可以建议我这样做吗?

2 个答案:

答案 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的其他步骤,并提供一些评估性能:

TranslatAR: Petter, M.; Fragoso, V.; Turk, M.; Baur, Charles, "Automatic text detection for mobile augmented reality translation," Computer Vision Workshops (ICCV Workshops), 2011 IEEE International Conference on , vol., no., pp.48,55, 6-13 Nov. 2011

Mobile Camera Based Detection and Translation