gpt4 book ai didi

opencv - Unity3D——OCR数字识别

转载 作者:太空宇宙 更新时间:2023-11-03 22:50:03 33 4
gpt4 key购买 nike

我们最初的用例要求在 Unity3D 中编写一个应用程序(只用 C# 编写并同时部署到 iOS 和 Android),允许手机用户将相机对准杂志文章的标题,使用 OCR阅读标题,然后我们将在后端处理该标题以获取相关故事。 Vuforia由于其快速的 native 字符识别,它无疑是此用例的最佳选择。

在对初始应用程序进行了一些演示后,出现了更多潜在用途。任何只需要识别 A-z 字符的用例在 Vuforia 中都很容易,但第二个它需要数字识别,我们不得不去别处寻找,因为 Vuforia 不支持数字识别(现在或在不久的将来的任何地方)。

尝试的解决方法:

  1. Google Cloud Vision - 效果很好,但不是原生的,而且相机图像有时非常大,所以速度没有我们需要的那么快。甚至考虑过使用 OpenCV Unity Assets 识别数字,然后发送多个更小的 API 调用,但仍然不是原生的,需要一个额外的步骤。
  2. 按照 SO 的说明进行操作为 Tesseract 使用 .Net 包装器 - 可能效果很好,但在构建并尝试将外部 dll 引入 Unity 后,我收到此错误 .Net Assembly Not Found(很可能是版本问题.Net 中编译了 dll)。
  3. 在服务器上从源代码安装 Tesseract,然后创建我们自己的 API - 老实说,我们不清楚为什么在 Google 的工作如此出色并且得到积极维护的情况下我们尝试这样做。

有没有人在 Unity 中遇到过同样的问题并最终找到了好的解决方案?

最佳答案

Vuforia 本身不提供任何系统来检测数字,只提供字母。为了解决这个问题,我采用了下一个策略(仅针对接近普通图像的数字):

  1. 识别图像。
  2. 识别目标图像后立即截屏(此截屏必须包含数字)。
  3. 将屏幕截图发送到 OCR 网络服务并获得响应。
  4. 从响应中提取数字。
  5. 使用这些数字执行您需要的任何操作并显示 AR 信息。

这种方法解决了这个问题,但效果并不理想。他们的成功取决于屏幕截图的质量和 OCR 服务。

关于opencv - Unity3D——OCR数字识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40077320/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com