用小型载板传输 4 台相机的数据流:快速原型设计
嵌入式视觉组件一直很受欢迎,被众多应用所采用。所有这些应用的共同点是需要在狭小的空间内集成越来越多的功能。通常,让这些系统在边缘做出决策也是很有利的。为了支持此类系统,包括快速原型设计的能力,Teledyne FLIR 推出了Quartet™ 嵌入式 TX2 解决方案。这种定制的载板可在满带宽下轻松集成最多 4 台USB3 机器视觉相机。它包括 NVidia Jetson 深度学习硬件加速器,预先集成了Teledyne FLIR 的 Spinnaker® SDK。通常,让这些系统在边缘做出决策也是很有利的,尤其是在检查、移动机器人、交通系统和各种类型的无人载具领域。
图 1:所有四个应用程序的原型设置
在这篇非常实用的文章中,为了强调 Quartet 能够实现的功能,我们描述了开发受 ITS(交通系统)启发的原型的步骤,该原型同时运行四个应用程序,其中三个采用了深度学习:
- 应用程序 1:利用深度学习识别车牌
- 应用程序 2:利用深度学习实现车辆类型分类
- 应用程序 3:利用深度学习实现车辆颜色分类
- 应用程序 4:透过挡风玻璃观察(透过反光和眩光)
购物清单:硬件和软件组件
1)用于处理的 SOM:
用于 TX2 的新 Teledyne FLIR Quartet 载板包括:
- 4 个 TF38 连接器,配备专用的 USB3 控制器
- Nvidia Jetson TX2 模块
- 预装了 Teledyne FLIR 功能强大且便于使用的Spinnaker SDK,以确保在即插即用情况下兼容 Teledyne FLIR Blackfly S 板级相机
- Nvidia Jetson 深度学习硬件加速器可在紧凑型单板上实现完整的决策系统
图 2:带 TX2 的 Quartet 嵌入式解决方案,可配备 4 台 Blackfly S 相机和 4 根 FPC 电缆。
2)相机和电缆
- 3 台标准 Teledyne FLIR Blackfly S USB3 板级摄像头,采用与盒装版相同的丰富功能集,适用于最新的 CMOS 传感器,可与 Quartet 无缝集成
- 1 台定制相机:Blackfly S USB3 板级相机,带 Sony IMX250MZR 偏振传感器
- 线缆:TF38 FPC 电缆,可用单根电缆传输电源和数据,节省了空间
图 3:Blackfly S 板级相机,带 FPC 电缆
注册获取更多类似文章
3)照明:LED 灯可提供充足的照明,以避免车牌的运动模糊。
应用程序 1:利用深度学习识别车牌
开发时间:2-3 周,主要是为了使其更加稳健,运行速度更快
训练图像:LPDNet 附带
对于车牌识别,我们通过 Nvidia 部署了现成的 车牌检测 (LPDNet) 深度学习模型,以检测车牌的位置。为了识别字母和号码,我们使用了 Tesseract 开源 OCR 引擎。该相机为 Blackfly S board level 8.9 MP color camera (BFS-U3-88S6C-BD) Blackfly S 板级 890 万像素彩色相机 (BFS-U3-88S6C-BD),配备了 Sony IMX267 传感器。我们限制了车牌检测的侦测区域,以加快运行速度,并利用跟踪来提高稳健性。输出包括车牌的边界框,以及相应的车牌字符。
图 4:传输车牌边界框和车牌字符。
应用程序 2:利用深度学习实现车辆类型分类
开发时间:约 12 小时,包括图像采集和注释
训练图像:~300
在车型分类方面,我们利用迁移学习,用三台玩具车(分别是 SUV、轿车和卡车)训练了我们自己的深度学习目标检测模型。我们采集了此设置在不同距离和角度下拍摄的约 300 幅训练图像。相机为Blackfly S 板级 500 万像素彩色相机 (BFS-U3-51S5C-BD),配备了 Sony IMX250 传感器。我们标出了玩具车的边界框,大约耗时 3 小时。我们进行了迁移学习,以训练我们自己的 SSD MobileNet SSD MobileNet 目标检测模型,训练过程在 Nvidia GTX1080 Ti GPU 上进行,耗时半天左右。通过 GPU 硬件加速器,Jetson TX2 模块可以高效率地执行深度学习推断,并输出汽车的边界框,以及对应的车辆类型。
图 5:传输边界框和预设的车辆类型,以及确认的置信系数
应用程序 3:利用深度学习实现车辆颜色分类
开发时间:重复利用了“车辆类型应用”中的型号,用额外 2 天时间进行颜色分类、集成和测试
训练图像:重复利用了 300 幅与“车辆类型应用”相同的图像
对于车辆颜色分类,我们运行了与上述相同的深度学习对象检测模型来检测汽车,然后在边界框上进行了图像分析,以对其颜色进行分类。输出包括汽车的边界框,以及对应的车辆颜色。相机为 Blackfly S 板级 300 万像素彩色相机 (BFS-U3-32S4C-BD),配备了 Sony IMX252 传感器。
图 6:传输边界框和确认的预设颜色类型
应用程序 4:透过挡风玻璃观察(透过反光和眩光)
减少眩光对于交通相关应用至关重要,例如透过挡风玻璃观察 HOV 车道、检查安全带是否合规,甚至可以检查驾驶时是否使用手机。为此,我们将 Blackfly S USB3 板级相机与 500 万像素 Sony IMX250MZR 偏振传感器相结合,定制了一款相机。这款板级偏振相机不是标准产品,但 Teledyne FLIR 能够轻松换用不同的传感器,从而提供定制的相机选项,以展示其消眩光功能。我们只需通过 Teledyne FLIR 的 SpinView GUI 来传输相机图像流,该 GUI 提供各种“偏振算法”选项,如四通道模式、眩光弱化模式,可以在静止的玩具车上显示眩光弱化效果。
图 7:Spinnaker SDK GUI 提供各种“偏振算法”选项,如四通道模式、眩光弱化模式,可以在静止的玩具车上显示眩光弱化效果。四通道模式可以显示 4 个不同的偏振角度所对应的 4 幅图像。
系统总体优化
虽然这四个原型各自独立工作,但我们注意到,在所有深度学习模型同时运行时,总体性能相当差。Nvidia 的 TensorRT SDK 为 Nvidia 硬件(如 Jetson TX2 模块)提供深度学习推断优化器和运行时。我们用 TensorRT SDK 优化了我们的深度学习模型,使性能提升了 10 倍左右。在硬件方面,我们将一个散热器连接到 TX2 模块,以避免过热,因为该模块在所有应用程序都运行时会相当热。最终,我们设法在所有四个应用程序一起运行时实现了良好的帧率:车辆类型识别为 14 fps,车辆颜色分类为 9 fps,自动车牌识别为 4 FPS,偏振相机为 8 FPS。
由于 Quartet 嵌入式解决方案和 Blackfly S 板级相机的易用性和可靠性,我们在相对较短的时间内开发出了此原型。预装了 Spinnaker SDK 的 TX2 模块可确保在即插即用的情况下兼容所有 Blackfly S 板级相机,这些相机可在满 USB3 带宽下,通过 TF38 连接器实现可靠的传输。Nvidia 提供了多种工具来促进 TX2 模块的开发和优化。Quartet 现在可从 fir.com 上在线购买,也可以通过我们的办事处和全球经销商网络购买。