用户故事

Drass发展深度学习在海洋环境中实时检测系统

挑战

帮助ship操作符监测海洋环境和检测对象,障碍,和其他船只

解决方案

创建一个对象检测深度学习模型,可以部署在船只和实时运行

结果

  • 数据标签自动
  • 减少开发时间
  • 灵活的和可再生的框架建立了

”注释的数据选择、培训、测试和微调我们的深度学习模型,用MATLAB都我们必要的GPU编码器的工具使我们能够迅速部署到我们的NVIDIA GPU即使我们GPU有限经验。”

Valerio Imbriolo Drass集团
Drass团队的两名成员查看一个港口作为他们执行对象检测测试设备。

第一天的对象检测测试与光电系统原型。


确保安全通道,ship操作符必须跟踪对象,障碍,和其他船只航行。然而,海上探测对象是具有挑战性的,因为海浪的不断运动变化的背景,和大海提供一些参考点。

为应对这些挑战,海洋科技公司Drass发达的深度学习模型实时海上目标检测。尽管这是团队的第一次深度学习应用程序,用MATLAB®使他们YOLOv2模型训练和验证两个月之前,他们的最后期限,然后用c++应用程序集成运行在船只。

“从原型到集成,MATLAB工具,使项目的每一步容易,“说Valerio Imbriolo, Drass计算机视觉工程师。“我们能够完成目标检测应用七个月,准备测试10个月。在剩下的两个月我们开发的附加功能。”

挑战

没有pretrained对象检测模型对于海洋环境,这意味着Drass团队开发和训练自己的深从头学习网络。传统的目标检测系统使用一个视觉输入源。相比之下,Drass团队的深度学习模型需要合并来自多个源的输入,包括日光和热相机,它需要额外的调整网络架构和数据预处理管道。

因为Drass想测试对象检测模型在多个海上目标,团队必须创建,预处理,自己和标签数据集,一个费力而耗时的任务。

团队开发他们的模型,可以集成到船只的主要使用对象检测应用程序,这是用c++写的。鉴于他们的应用程序的专业性质,大量的计算密集型测试和调整需要找到表现最好的模型配置。

所有这些任务都需要在12个月内完成,时间很紧,这将是他们第一次深度学习项目。

解决方案

Drass团队使用深度学习工具箱™创建和训练神经网络的原型和GPU编码器™将它集成到他们的c++应用程序。

团队从一个数据集的5000帧标记原始素材取自大海。使用图像处理工具箱™,他们预处理图像,消除噪音和透镜畸变。小波工具箱™帮助他们将日光和热成像系统的数据合并到一个数据源。

团队标记的一小部分数据集的视频贴标签机应用。他们创造了一个YOLOv2深度学习工具箱对象检测模型,训练有素的标签数据的子集。帮助他们自动化的部分训练模型的过程注释的数据集在视频贴标签机。团队扩充他们的数据集通过创建副本的训练例子和修改他们通过添加噪声,翻转图像或改变颜色。

加速的过程为目标应用程序配置网络,Drass团队使用并行计算工具箱™运行多个实例培训和优化过程的高容量CPU和GPU集群。

在CUDA GPU编码器翻译原型模型®NVIDIA的代码®GPU用于船只。代码,用c++写的,然后传递到编程团队与船上的应用程序集成。

结果

  • 数据标签自动。“手动标签需要三分钟每帧,整个数据集,或249小时”Imbriolo说。“使用自动标记过程视频贴标签机,我们减少0.3秒每帧。我们能够标签和验证5000帧在42小时。”
  • 减少开发时间。“我们完成了我们的项目在前10个月,剩下的两个月期限为客户实现额外的功能,“Imbriolo说。“没有MATLAB和GPU编码器,它可能已经18个月为一个完整的C + +工程师团队,每周工作40小时,从头开始开发和测试模型。”
  • 灵活的和可再生的框架建立了。“未来,我们将能够修改、更新、重新培训,并使其重新融入社会模型通过最少的努力在应用程序中使用MATLAB框架,“Imbriolo说。”例如,如果有人问我给你介绍一位代替YOLOv2 YOLOv3模型,我可以现在结果在大约三天。”