【发布时间】:2017-02-25 21:39:00
【问题描述】:
我们最初的用例要求用 Unity3D 编写一个应用程序(仅用 C# 编写并同时部署到 iOS 和 Android),它允许手机用户将他们的相机对准杂志文章的标题,使用 OCR阅读标题,然后我们将在后端处理该标题以获取相关故事。 Vuforia 是这个用例的最佳选择,因为它具有快速的原生字符识别功能。
在对初始应用程序进行了一些演示之后,出现了更多潜在用途。任何只需要识别 A-z 字符的用例在 Vuforia 中都很容易,但第二个它需要数字识别,我们不得不寻找其他地方,因为 Vuforia 不支持数字识别(现在或不久的将来的任何地方)。
尝试的解决方法:
- Google Cloud Vision - 效果很好,但不是原生的,而且相机图像有时非常大,所以几乎没有我们需要的那么快。甚至考虑过使用 OpenCV Unity 资产来识别数字,然后发送多个小得多的 API 调用,但仍然不是原生的,需要额外的步骤。
- 按照SO 的说明为 Tesseract 使用 .Net 包装器 - 可能效果很好,但在构建并尝试将外部 dll 引入 Unity 后,我收到此错误
.Net Assembly Not Found(很可能是版本问题.Net 中编译 dll)。 - 在服务器上从源代码安装 Tesseract,然后创建我们自己的 API - 老实说,当 Google 运行良好且得到积极维护时,我们为什么要尝试这个。
有没有人在 Unity 中遇到过同样的问题并最终找到了好的解决方案?
【问题讨论】:
标签: opencv unity3d ocr tesseract vuforia