智能 OCR 解决方案使用 Xilinx Ultrascale+ 和 Vitis AI 进行开发

作者:Softnautics 市场营销总监 Prasant Agarwal
解决方案总监 Ranganathan SK

文本是人类最具智慧、最有影响力的创造之一。文本中所蕴含的丰富、精确的高级语义可以帮助我们理解周遭世界,并用于构建可部署在真实环境中的自主运行解决方案。因此,自然环境下的自动文本读取,也称为场景文本检测/识别或 Photo OCR(Optical Character Recognition,光学字符识别),已成为计算机视觉领域中关注度和重要性日益提高的研究课题。

随着人类语言书写形式的演进,已经发展出数千种独特的字体系。再加上大小写(大写/小写/全大全小/小型大写)、斜体(意大利体/罗马体)、缩放体(横向缩放)、粗细、指定大小(显示/文本)、波痕体、衬线(总体分为衬线体和无衬线体),这一数量可以扩充到数百万,使得文本识别成为机器学习领域中一个振奋人心的专业学科。

为什么赛灵思技术成为开发 OCR 解决方案的不二之选?

如今,赛灵思丰富多样的强大平台已为 70% 的新开发提供支持,引领着基于 FPGA 系统的设计发展趋势。Softnautics 之所以选择赛灵思技术来实现这个解决方案,是因为它同时集成了 Vitis™ AI 堆栈和强大的硬件功能。

赛灵思 Vitis™ 是一款免费、开源的开发平台,可将硬件模块封装成软件可调用功能,同时与标准的开发环境、工具和开源库兼容。它能够根据软件和算法自动适配赛灵思硬件,无需具备 VHDL 或 Verilog 专业知识。

选择正确的赛灵思平台

综合全面且丰富多样的赛灵思工具集和生态系统使原型设计成为高度可预测的过程,这有助于加快解决方案的开发速度,从而将总体开发时间缩短高达 70%。

Softnautics 选择赛灵思 Ultrascale+ 平台是因为它提供了最优秀的应用处理和 FPGA 加速功能。此外,它还提供了优异的高层次综合(HLS)功能。与此前的平台相比,系统级单位功耗性能提高了 4 倍。它支持赛灵思 Vitis AI,后者为使用加速库构建 AI 推断提供了广泛功能。

Softnautics 采用了赛灵思 Vitis AI 堆栈并运用该软件提供加速,开发出混合应用,同时实现了 LSTM 功能,通过将 TensorFlow-lite 移植/迁移到 ARM 进行有效的序列预测。它使用 N2Cube 软件在处理侧(PS)运行。图像预处理/后处理通过 Vivado 使用 HLS 实现,而 Vitis 的作用是使用连接文本提议网络(CTPN)完成推断。最终,Softnautics 将该解决方案用于视频流水线中的实时场景文本检测,并使用可靠的数据集对模型进行改进。

场景文本检测

目前已有多种实现方案可供使用,新的实现方案也在研究中。在自然场景进行文本检测和识别时,仍然可能会遇到一系列的艰巨挑战。与文档中的脚本相比,自然场景下的检测和识别困难主要源于以下三大差异:

◀ 语言、颜色、字体、大小、方向等造成的多样化和可变性

◀ 书写文本的背景色彩鲜艳

◀ 场景文本的纵横比和布局可能会有很大的不同

这种解决方案广泛适用于要求对视频流进行实时文本检测的众多领域,具有较高的精确度和快速识别能力。部分典型应用领域如:
◀ 泊车验证 — 一些市镇按照城市规定正在使用移动 OCR 自动验证车辆是否按照市镇规定泊车。城市泊车检查员使用配备有 OCR 功能的移动设备扫描车辆牌照,并通过在线数据库查看是否允许该车辆泊车。

◀ 移动文档扫描 — 各种移动应用允许用户为文档拍照,然后将其转换成文本。与采用传统的文档扫描仪相比,这种 OCR 工作的难度更大,因为照片在图像角度、光照条件和文本质量方面往往无法预测。

◀ 数字资产管理 — 该软件有助于对图像、视频和动画等富媒体资产进行组织管理。DAM 系统的主要特征之一就是能搜索富媒体。通过在上传的图像和视频帧上运行 OCR,DAM 能让富媒体变得可搜索,并使用有意义的标签丰富它。

Softnautics 团队一直深耕基于赛灵思 FPGA 的解决方案,在赛灵思技术方面积累了丰富的经验,并深刻理解各种复杂性。因此,该公司仅用不到四个星期便推动这一解决方案从构思到概念验证的飞速进展。依托公司针对端到端解决方案构建的专业知识,您能够在赛灵思平台上借助最快速的概念实现服务,可视化您的构想,大幅加快上市进程。

文章来源:Xilinx赛灵思官微

推荐阅读