【问题标题】:Tesseract in a specific informationTesseract 中的特定信息
【发布时间】:2020-04-13 17:39:12
【问题描述】:
我想扫描西班牙 DNI 并获取一些信息并将其打印在屏幕上。 DNI 具有这种形式:1
我想获取 DNI、Nombre 和 Apellidos 字段(在图像中,它将是 99999999R、CARMEN、ESPAÑOLA ESPAÑOLA)。
我认为最好的方法是使用“剪切工具”并在剪切图像中使用 OCR。你怎么看?我必须用 HTML/JS 制作项目,但我真的不知道如何编程。
谢谢。
【问题讨论】:
标签:
javascript
canvas
ocr
tesseract
information-extraction
【解决方案1】:
这不是一件容易的事,要做到这一点,您需要执行以下操作:
确保您“剪切”图像的边缘精确。这种方法需要对闪电条件、低对比度情况等具有鲁棒性。理想情况下,它应该使用先进的计算机视觉和 ML 技术
然后您需要定义各个字段的位置。这也不是一件容易的事,因为字段的大小和位置在不同的 ID 之间有所不同。
在最后一步中,您需要一个非常可靠的 OCR 工具,该工具的错误率较低,因此与仅重新输入所有这些字段相比,您实际上可以自动执行此操作手动。尽管 OCR 在今天看起来是一个简单的问题,但它仍然非常困难,尤其是在身份证件上,这些证件可能会磨损、损坏并在奇怪的光照条件下拍摄。
我的公司Microblink 多年来一直致力于 ID 扫描,不仅针对西班牙 DNI,还针对许多其他文档类型(世界上有 5000 多种不同类型)。
如果您有兴趣了解我们的工作方式,以下是一些材料:
- Goodbye Templates
- BlinkID v5
- From OCR to DeepOCR
至于“剪切工具”——我们确实有一项功能,可让您自动捕获文档图像并在文档边缘进行裁剪。我们称之为“文档捕获”,它是我们 BlinkID SDK 的一部分。
至于 HTML/JS - 不清楚您到底需要什么,但我们确实有一个 React Native 和 Cordova 插件,允许您在 JS 中构建跨平台移动应用程序,我们还有一个前端 SDK 和 Web API 允许您在任何浏览器中扫描文档。