视觉系统中的目标检测,延迟降低 25 倍
借助 AI 加速处理器和业界通用软件,以高帧率实时查找并定位特定物体和人物
应用概述
许多基于视觉的系统需要检测摄像头视野范围内的目标,例如车辆、人员、人脸、故障器件和可扫描码。在工厂自动化、家居/楼宇安防、汽车安全、机器人等应用中,了解目标数量及其位置至关重要。
对于复杂目标,需要深度学习 AI 解决方案才能实现可靠、精确的检测。专家级知识可以通过提供待检测目标的示例图像来替代,从而简化开发过程。基于 AI 的目标检测对场景变化(如光照、意外目标和传感器噪声)也具有更强的稳健性。
在边缘上集成 AI 可提高系统的隐私性和安全性,并提供不受网络速度或可靠性限制的快速响应。硬件加速(如 TDA4x 和 AM62A 器件中的 C7™ NPU)以及业界通用工具(如 ONNX Runtime)使开源 AI 目标检测模型能够在芯片上实时运行。
开始评估
数据收集
目标检测训练数据包括图像和标注,其中标注描述了图像中存在哪些目标及其位置。TI 工具使用 MS COCO 格式的数据集。
用于目标检测的图像应与最终系统运行的环境相匹配。在类似的光照条件、摄像头镜头和环境变化下采集数据,将提高所训练模型的精度。
数据质量评估
图像质量对于训练输出的高精度至关重要,并且数据应具有一定程度的变化。待检测目标应以不同的方式呈现,例如旋转目标、使其离摄像头更近或更远,或者故意遮挡目标的一部分,使其不完全显示。尽管并非绝对必要,但训练数据中更多的变化将确保模型能够应对现实世界中的此类变化。
每种目标类型只需几十张图像就足以构建一个相当精确的模型。
构建并训练模型
我们提供了一组优化的模型,可通过 CCStudio™ Edge AI Studio 或 TI 官方 GitHub 上的类似命令行工具,在自定义数据集上进行微调。用户提供数据集并配置一些训练参数,如迭代次数和学习速率。
训练完成后,针对目标硬件编译模型,以准备部署。此编译步骤在命令行和图形化工具中均可自动处理。
寻找符合您需求的模型
每个支持的器件都有多种模型可供选择。精度和速度之间存在平衡,更大的模型将更精确,但运行速度更慢。寻找符合您需求的模型。
部署模型
模型部署需要事先对其进行编译,以针对目标硬件进行优化。使用 Edge AI Studio 等工具时,编译会自动完成。否则,编译模型需要通过 TI GitHub 上的 edgeai-tidl-tools 等软件包单独进行。
模型工件通过 ONNX Runtime、tensorflow-lite 和 TVM 等运行时进行部署,使用 TI Deep Learning (TIDL) 作为硬件后端来进行加速。使用 TI 工具训练的模型将在 PyTorch 中进行训练,并导出为 ONNX 模型,以便与 ONNX Runtime 配合使用。
要将模型部署到端到端的视觉应用中,可通过 edgeai-gst-apps 来完成,该工具除了能加速 AI 模型本身外,还通过多个硬件加速阶段构建处理流程,实现对图像的预处理和后处理。
选择适合您的器件
TI 处理器已在各种模型上经过基准测试,这些数据可在 Edge AI Studio 中获取。有多种目标检测模型可用,在带或不带 NPU 的器件上都可以运行,不过性能差异表明,实时处理会显著受益于 NPU。
入门所需的所有硬件、软件和资源
硬件
SK-AM62A-LP
AM62A 是 AM6xA 系列中成本最低的 AI 加速器件,非常适合用于评估。可使用通用 USB 摄像头或网络摄像头对实时数据进行图像采集和模型评估
软件与开发工具
PROCESSOR-SDK-LINUX-AM62A
该边缘 AI 处理器 SDK 基于 Linux,包含运行经硬件加速的已编译模型所需的软件组件。其他经过边缘 AI 加速的处理器可以替代 AM62A
CCStudio™ Edge AI Studio
此工具包含用于训练、编译模型并将其部署到 TI 边缘 AI 处理器的工具。提供了模型选择工具,可查看热门模型的预生成基准测试结果。
命令行工具
适用于支持 Linux 和 TIDL 的微处理器器件的工具。TI 的边缘 AI 解决方案通过提供丰富的工具集和经优化的库,简化了 DNN 开发与部署的整个产品生命周期。
TIDL 工具
查找基本的 TI 深度学习示例并编译自定义模型架构。
Edgeai-gst-apps
利用 gstreamer 及简单的 YAML 配置文件,在经过边缘 AI 加速的 MPU 上生成端到端应用