论文部分内容阅读
水上运输是我国综合运输体系中的重要组成部分,并正日益显示出它的巨大作用。在我国的内河每日都有大量船舶通航,但某些航道有时需要禁止或限制船舶通行,如水域跨设电缆、建桥施工期间以及其他需要对航道进行管控的时段,需要对过往船舶尽早警示甚至驱离以避免发生事故。为了尽早识别船舶以提前发出信号,常用具备长焦镜头的网络摄像机对航道指定水域周期性扫描监控,但受水面水纹、船舶行驶过程中引起的波浪及摄像机转动、震颤的影响,使得传统目标检测算法在船舶检测过程中出现准确率低、计算量大等问题。针对以上问题本文开发了基于深度学习的方法来对动态背景下的船舶目标进行检测识别,使检测效果得到了显著的改善。本文所作的主要工作总结如下:1)对比研究了Faster R-CNN、SSD及YOLOv3三种典型基于深度学习的目标检测网络结构、原理及效率,并对YOLOv3网络进行优化。在Ubuntu系统下利用Python编程语言以及Tensorflow深度学习框架搭建网络模型,后利用在航道实景采集、标注的船舶数据集进行训练分析。结果表明YOLOv3比Faster R-CNN的平均误检率低10%,推理速度更快且拥有相似的平均检测识别率;比SSD的平均检测识别率高10%,平均误检率低5%。进一步对YOLOv3检测网络进行系列优化训练,使其平均检测准确率达到了86.53%,小型渔船的检测准确率提升了21%,平均检测准确率提升了4.23%。2)开发了针对深度学习网络输出的抗干扰后处理算法,实现对船舶目标精确检测与跟踪。针对YOLOv3网络在连续视频帧中的预测结果,结合相邻两帧图像中的目标形心距、IOU重合度以及颜色直方图相关性信息对船舶目标进行匹配。在此基础上,设计了一套目标跟踪算法。测试结果表明,所开发的算法能对船舶目标准确识别与连续跟踪。3)融合深度学习的船舶检测系统软件开发。利用带云台的海康威视球型网络摄像机(DS-2DC4420IW-D),通过网络实时的获取视频信息流并控制云台的转动,在C++编程语言和框架下,结合Qt界面开发库、OPENCV图像处理库、海康威视二次开发库以及Tensorflow深度学习库开发了针对动态背景下的航道船舶检测软件,经测试实现并满足了船舶检测要求。