ZHCACT6 june   2023 AM62A1-Q1 , AM62A3 , AM62A7

 

  1.   1
  2.   应用简报

应用简报

引言

条形码对于库存管理、资产跟踪、信息共享、订票等机器视觉应用至关重要。1D 和 2D 条形码将信息压缩为可视化编码形式,可以打印或显示在屏幕和监测器上。打印的 1D 代码可使用基于激光的设计进行扫描。但是,可以编码更多信息并包含纠错信息的 2D 代码需要使用摄像头进行成像。屏幕上显示的代码也需要通过摄像头进行扫描,因为激光无法正确反射。这些基于摄像头的读取器可称为“成像仪”。

图像包含密度信息,条形码扫描的分辨率要求通常为 50 万至 200 万像素 (MP)。资产跟踪类应用(如跟踪移动式传送带上的包裹)需要较高的帧速率,因此需要快速处理器或 FPGA。

条形码成像仪终端设备的数据流如图 1 所示。在解码之前,必须首先在整个图像中定位代码区域。然后,通过旋转或对条形码进行计算变换,将代码重定向为直立图像且不受摄像头角度或不平坦表面的影响,是颇有益处的。作为此用例的概念证明,我们开发了一款演示应用程序。此应用程序使用深度学习和开源解码器软件来检测、解码编码信息并将其显示到监测器上。

GUID-20230614-SS0I-FQMN-MP6T-2DFNTC6J3Z7P-low.svg图 1 条形码读取器的应用程序数据流

条码成像仪中应用的深度学习

条形码成像仪最具挑战性且计算密集型的任务是在图像中查找或定位代码 [1]。此任务广泛使用了传统算法,但需要通过自定义实现、优化以及调整来匹配新环境。

要定位条形码,可选择使用深度神经网络模型(也称为深度学习)。物体检测和语义分割模型擅于在图像中查找松散定义的图形。该模型不需要从条形码中提取编码信息;模型只需要找到代码在图像中的位置。深度学习只需要一组带有条形码和相关真实标签的图像数据,而传统算法则需要特定领域的知识和传统的计算机视觉专业知识。深度学习方法的门槛较低。

此外,与传统算法相比,深度学习 (DL) 更容易加速,因为传统算法需要在高性能 DSP 或 FPGA 上进行定制实施才能提供类似的性能。DL 模型包含许多矩阵乘法,可直接并行以实现快速计算。虽然 DL 的计算复杂性比某些传统算法更高,但大多数类型 DL 模型的基本操作是一致的。这使开发人员能够采用 DL 加速器上现有的优化实施方案。

TI 的 AM6xA 高级视觉微处理器采用适合此确切任务的加速器而构建,这通过将 DSP 和名为 C7xMMA 的矩阵乘法加速器组合在一起来实现。对于深度学习性能以及可同时捕获和处理的摄像头流数量,AM6xA 产品系列具有可扩展的性能。

适用于条形码成像仪的 AM62A SoC

AM62A 专为条形码成像仪和机器视觉摄像头而设计,例如固定零售扫描仪、静止工厂扫描仪、缺陷检测摄像头和检查摄像头。

AM62A 中的 C7xMMA 提供高达 2TOPS 的性能,其中物体检测模型可以超过 120 帧/秒 (fps) 的速度运行,从而实现快速扫描和图像分析。集成式图像信号处理器 (ISP) 支持通过 MIPI-CSI2 进行原始摄像头馈送,从而在 150fps 速率下支持 200 万像素 (MP) RGB 摄像头,300fps 速率下支持 1MP 摄像头或支持 300MP/s 的任何其他排列(8MP 分辨率内)。单色摄像头可通过每通道 1.5Gbps 的 4 通道 CSI 接口实现更快的采集速度。镜头失真校正 (LDC) 加速器支持在需要大视野的应用(如静止扫描仪)中使用广角或鱼眼镜头,同时减轻镜头对图像质量的影响。

在 85°C 时,AM62A SoC 的功耗低于 3W,从而简化了热逃逸并实现了被动冷却。对于需要安全认证的工厂和工业应用,AM62A 在硬件完整性方面符合 SIL-2 要求,并具有 SIL-3 系统功能。安全启动和硬件安全功能可保护器件上敏感的客户或知识产权信息。

GUID-20230517-SS0I-TCJ6-SGLQ-DH0K3L8D6FTB-low.svg图 2 AM62A SoC 简化方框图

有关 SoC 功能的完整详细信息,请参阅 AM62A 数据表。

条形码成像仪演示应用程序

对于 AM62A 上条形码成像的演示,请在 GitHub 上查找相应的应用程序。此应用程序采用定制训练的深度学习模型(1)以及开源 1D 和 2D 解码器软件。条形码通过深度学习模型以高达 120fps 的速度进行定位,并使用屏幕上显示的文本进行解码。(1)

https://github.com/TexasInstruments/edgeai-gst-apps-barcode-reader

此存储库中的支持文档介绍了如何构建模型和应用程序。此外,该文档还说明了如何快速开发此类创新型应用程序,并且轻松简化评估,然后再专注于 SoC 的应用特定性能优化。

资源

表 1 列出了相关资源,帮助使用边缘 AI 和 AM62A 开始开发支持条形码成像的应用程序。

用途 链接
AM62A 产品页面(超集) AM62A7
AM62A 入门套件 EVM SK-AM62A-LP
EVM 用户指南 AM62A 入门套件 EVM (SK-AM62A-LP)
GitHub 上的边缘 AI 主页 边缘 AI
Edge AI Cloud Edge AI Studio
面向新开发人员的 Edge AI Academy Edge AI Academy (01.00.00.00)
AM62A Processor SDK PROCESSOR-SDK-AM62A
Edge AI Linux SDK 文档 Processor SDK Linux 软件开发指南
适用于 Linux 的 AM62A Academy AM62Ax Academy
AM62x 设计库 AM62x 设计库
支持论坛 (e2e) https://e2e.ti.com

参考文献

  1. R. Wudhikarn, "Deep learning in barcode recognition: A systematic literature review," IEEE Access, vol. 10, pp. 8049-8072, 2022.

深度学习条形码读取器模型仅用于评估。TI 不对该模型的准确性或在商业应用中的使用提供任何声明或保证。
具有加速功能的深度学习模型以高达 120fps 的速率运行,但应用程序通常受未经优化的开源条形码解码器库的 CPU 限制。该应用程序通常以 15fps 至 30fps 的速度运行,具体取决于要解码的代码数量。