ZHCACO4 may   2023 AM62A3 , AM62A3-Q1 , AM62A7 , AM62A7-Q1 , AM68A , AM69A

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
    1. 1.1 目标读者
    2. 1.2 主机信息
  5. 2创建数据集
    1. 2.1 收集图像
    2. 2.2 标记图像
    3. 2.3 增强数据集(可选)
  6. 3选择模型
  7. 4训练模型
    1. 4.1 输入优化(可选)
  8. 5编译模型
  9. 6使用模型
  10. 7构建最终应用
    1. 7.1 使用 TI 的 Gstreamer 插件优化应用
    2. 7.2 使用原始 MIPI-CSI2 摄像头
  11. 8总结
  12. 9参考文献

使用原始 MIPI-CSI2 摄像头

TI 的边缘 AI 处理器(例如 AM62A、TDA4VM、AM68A)包括 ISP 和其他硬件加速器,用于缩放广角镜头(镜头失真校正,LDC)的图像(多标量 MSC)和去扭曲失真。ISP、MSC 和 LDC 都是 TI 在视觉处理器加速器 (VPAC) 中设计的 IP。本节将介绍如何为此应用使用 IMX219 图像传感器。

注: 零售扫描仪演示还适用于 720 和 1080p 的 USB 摄像头。运行时,请将 -c 标签与用于 720p 或 1080p USB 输入的 usb-720p 或 usb-1080p 一起使用。C270 和 C920 Logitech USB 摄像头均已经过验证可正常运行。本文档到目前为止,GST 流水线版本使用 USB 输入来进行简化。

需要 ISP(图像信号处理器)来获取图像传感器的原始输出并将其处理为 RGB 等更典型的格式。原始输出传感器的价格更低,与图像传感器中内置的 ISP 相比,外部 ISP(包括 TI 的集成式 ISP)更易于调优。可根据光照条件、透镜效应、自动曝光等对 ISP 进行调优。TI 提供了用于集成式 ISP 的调优工具和相关支持文档

IMX219 是一款开箱即用的低成本传感器,在 15fps 时可以高达 800 万像素采集数据,在 30fps 时可以高达 200 万像素采集数据(60fps 时可以 200 万像素采集数据,但需要 SDK 文档中链接的 Linux 补丁)。

支持传感器包括多个元件,所有这三个元件均可用于 IMX219:

  • 一个驱动程序,理想情况下,该驱动程序会向上流式传输到主线 LINX 内核并进行主动维护
  • ISP 调优
  • 用于评估的硬件模块

零售扫描仪演示在 30fps 下需要 200 万像素输入,并需要至少 70° 的视野。使用此特定传感器会给此用例带来几个难题;这些难题及其解决方案如下所述:

  • 该驱动程序对不同分辨率和格式的支持有限
    • 典型的 16:9 宽高比 1920x1080(200 万像素)分辨率没有完整的视野 – 这是对完整 800 万像素帧的裁剪,因此会放大的不自然。结果远低于 70° 的 FOV 要求。
    • 1640x1232 可实现宽高比为 4:3 的全 FOV(宽度和高度为半分辨率;仍为 200 万像素)。但是,上游驱动程序仅在 10 位像素值 (RGGB10) 下正常工作。此模式用于零售扫描仪应用,并修改演示库中的 setup_cameras.sh 脚本以使用 Linux“media-ctl”命令行工具设置此配置。
    • 在 200 万像素分辨率下不支持 60fps,它以 30fps 运行。这是由于上游驱动程序造成的。TI 的边缘 AI 处理器能够为该传感器提供完整的 60fps 速率,但它需要一个 Linux 内核补丁、重新构建驱动程序模块并在目标上安装。
  • 不同的分辨率可能需要更改 ISP 文件(通常位于 /opt/imaging/imx219 下)– 这需要重新生成“DCC”文件。本文档不介绍该过程。
    • 8.6 Edge AI SDK 现在包含 ISP 配置文件,可提供上游 IMX219 驱动程序所能实现的所有分辨率和位深度。