用于水面交通的基于多传感器融合的目标检测方法及介质

文档序号:32489440发布日期:2022-12-10 02:13阅读:24来源:国知局
用于水面交通的基于多传感器融合的目标检测方法及介质

1.本发明涉及无人船感知技术领域,具体涉及一种用于水面交通的基于多传感器融合的目标检测方法及介质。


背景技术:

2.无人船是一种能够自主路径规划、自主航行向,可以采用人工干预的方式或自主信息采集的方式对水面复杂环境完成环境感知、目标识别与探测、目标跟踪等多种任务。在复杂的水面环境中,无人船能否准确地感知与定位是无人船安全作业的关键。水面上环境复杂恶劣且变化无常,无人船体积重量等较小,航行平稳性较差,获得的水面图像质量较差,对其能够自主准确判断作业环境中的目标物或障碍物产生了巨大挑战,同时对其信息处理系统有着较高的智能化要求。
3.船舶高度自动化发展依赖于对障碍物的精准识别能力,对感知技术提出了更高的要求。完成对水面碍航物的识别,需要依靠传感器感知与数据处理技术,分析周围的静、动态障碍物的位置、大小和运动等信息,为船舶的定位、导航、路径规划与控制决策等提供支持。多传感器数据融合处理为无人船在未知的环境下,提供了自主导航和环境探测的可行性方案。


技术实现要素:

4.本发明提出的一种用于水面交通的基于多传感器融合的目标检测方法,可至少解决上述技术问题之一。
5.为实现上述目的,本发明采用了以下技术方案:
6.一种用于水面交通的基于多传感器融合的目标检测方法,包括以下步骤,
7.步骤一:通过单目相机和激光雷达采集水面目标数据;
8.步骤二:单目相机采集到的水面目标视频数据经过预处理后送入yolov3网络,对水面目标进行训练和识别,生成水面目标的2d框;
9.步骤三:激光雷达采集到的水面目标点云数据通过欧式聚类分割算法获取水面目标的位置和大小,生成水面目标的3d框;
10.步骤四:通过3d目标跟踪算法对步骤三中获取的水面目标建立目标模型并对前后帧的目标进行关联,实现目标的跟踪并得到每个目标的速度信息;
11.步骤五:将yolov3网络生成的2d框与点云生成的目标3d框进行融合,并输出融合后目标的完整信息;
12.步骤六:通过可视化模块显示目标框在点云和图像中的位置以及检测出的目标完整信息;
13.步骤七:将目标完整信息数据通过socket通信发送给控制决策层,实现无人船自主避障功能。
14.进一步的,所述步骤一中,单目相机使用的是180
°
的广角相机或普通相机;
15.激光雷达使用的是16线旋转式激光雷达,两个传感器垂直放置。
16.进一步的,所述步骤二中输入如果是广角相机采集到的水面目标视频数据,通过图像预处理对图片进行分割后在送入yolov3网络。
17.进一步的,所述步骤三包括对点云按距离进行区域划分,针对不同区域的点云设计了不同的聚类尺寸和聚类点个数;对于近距离范围即大于0小于等于40米的目标,激光雷达扫描获取到的目标点个数较多,所以增加聚类点的最小个数以及目标框的尺寸来筛选出符合特征的目标,减少小目标的干扰;而较远距离即大于40小于等于100米获取点的个数较少,实验过程中对于50m外的小型船舶仅能识别到几个点,所以对于远距离的目标则减少聚类的限制。
18.进一步的,所述步骤四中,在为现有目标分配检测时,估计每个目标的包围盒几何体在当前帧中的新位置,然后使用分配矩阵计算当前时刻的每个检测框与现有目标的所有预测边界框之间的iou距离,如果对目标的检测重叠小于阈值ioumin则拒绝分配。
19.进一步的,所述步骤四还包括解算目标速度时为了减小噪声干扰和误差,将上一时刻目标的速度加入当前时刻,计算公式如下:
20.v
cur
=(x
dif
+v
pre
)/(t
dif
+1)
21.其中,x
dif
和t
dif
为前后坐标差和时间差。
22.进一步的,所述步骤五中先通过特征点匹配的方法标定相机与激光雷达,然后将yolov3产生的2d框与点云聚类生成的3d目标框进行边界框融合。
23.进一步的,所述步骤五中边界框的融合策略如下:
24.(1)先对yolo框集合和3d点云框集合按照由近到远、由左到右的顺序分别进行排序;
25.(2)遍历yolo框集合,然后用当前yolo框去点云框集合遍历寻找是否有符合匹配条件的点云框;
26.(3)如果符合匹配条件,则将该点云框标记为已经匹配,并将点云框带有的目标标号、位置和速度信息赋给融合后的yolo框。
27.进一步的,所述步骤六中,输出的目标完整信息包含目标的类别名、目标标号、相对位置及相对速度。
28.另一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。
29.综上所述,目前对于多传感器的数据融合算法并不充分,鉴于激光雷达与摄像头各自优缺点的对比分析。本发明设计并开发一套以无人船为研究对象的多传感器融合的目标检测方法,帮助船舶能够更好地实现避障功能,满足和完成各种环境条件下的需求和任务,这对于实现船舶的自动驾驶功能具有极高的工程价值。本发明通过对相机和激光雷达的数据融合,能够实现对目标的快速识别和跟踪,实时地获取目标的类别、位置、速度信息。
30.本发明的优点在于:
31.(1)图像检测算法基于yolov3实现对水面障碍物的识别,算法准确性高且具有实时性,识别帧率可以达到40fps;
32.(2)将摄像头捕捉的目标图像与激光雷达获取的点云数据进行决策级融合,获取水面碍航物的类别、距离等信息,实现点云与图像融合的3d目标检测算法;
33.(3)在检测的基础上增加目标跟踪的功能,实现多目标跟踪算法,对前后帧的目标进行数据关联,并对目标的状态信息进行解算;
34.(4)基于ros设计无人船的各功能节点,使无人船能够满足不同场景下的需求实现l2级别的自动驾驶功能。
附图说明
35.图1为本发明给出的应用于无人船的基于多传感器融合的目标检测算法流程图;
36.图2为本发明给出的处理点云动态调参图;
37.图3为本发明给出的边界框融合算法流程图;
38.图4为本发明给出的基于单目相机与激光雷达融合实现对水面目标进行检测的可视化结果图;
39.图5为本发明给出的ros中各节点之间通信关系图。
具体实施方式
40.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
41.本发明实施例提出一种应用于无人船感知系统的基于多传感器融合的目标检测方法。其中,感知计算机搭载了intel(r)xeon(r)silver 4210cpu@2.20ghz、16g内存以及rtx2080显卡,操作系统版本为ubuntu18.04,安装了ros-melodic;传感器方面主要使用了velodyne的16线激光雷达、hy-606rtk组合导航仪和海康威视的摄像头。
42.如图1所示,其为本发明所提供的应用于无人船的基于多传感器融合的目标检测算法流程图,所述应用于无人船感知系统的目标检测方法包括如下步骤:
43.步骤一:通过单目相机和激光雷达采集水面目标数据;
44.步骤二:单目相机采集到的水面目标视频数据经过预处理后送入yolov3网络,对水面目标进行训练和识别,生成水面目标的2d框;
45.步骤三:激光雷达采集到的水面目标点云数据通过欧式聚类分割算法获取水面目标的位置和大小,生成水面目标的3d框;
46.步骤四:通过3d目标跟踪算法对步骤三中获取的水面目标建立目标模型并对前后帧的目标进行关联,实现目标的跟踪并得到每个目标的速度信息;
47.步骤五:将yolov3网络生成的2d框与点云生成的目标3d框进行融合,并输出融合后目标的完整信息;
48.步骤六:通过可视化模块显示目标框在点云和图像中的位置以及检测出的目标完整信息;
49.步骤七:将目标完整信息数据通过socket通信发送给控制决策层,实现无人船自主避障功能。
50.所述步骤一中,单目相机使用的是180
°
的广角相机,也可以使用普通相机;激光雷达使用的是16线旋转式激光雷达,两个传感器尽量垂直放置,有利于对激光雷达和相机作标定。
51.所述步骤二中,基于yolov3算法对水面的障碍物进行检测,输入如果是广角相机,通过图像预处理对图片进行分割后在送入yolov3网络。yolov3借鉴了特征金字塔网络的思想,yolov3设计了3种不同尺度的网络输出y1、y2、y3,目的是预测不同尺度的目标。由于在每一个尺度网格都负责预测3个边界框,且本发明制作的数据集有3个类。所以网络输出的张量应该是:n
×n×3×
(4+1+3)。由下采样次数不同,得到的n不同,最终y1、y2、y3的shape分别为:[13,13,24],[26,26,24],[52,52,24]。yolov3的损失函数主要分为三个部分:目标定位偏移量损失l
loc
(t,g),目标置信度损失l
conf
(o,c)以及目标分类损失l
cla
(o,c)。
[0052]
所述步骤三中,对点云按距离进行区域划分,针对不同区域的点云设计了不同的聚类尺寸和聚类点个数。对于近距离范围内的目标,激光雷达扫描获取到的目标点个数较多,所以增加聚类点的最小个数以及目标框的尺寸来筛选出符合特征的目标,减少小目标的干扰;而较远距离的目标获取点的个数较少,实验过程中对于50m外的小型船舶仅能识别到几个点,所以对于远距离的目标则减少聚类的限制。本发明还在算法中增加了动态调参功能,可以根据目标实时修改处理点云的参数,如图2。
[0053]
所述步骤四中,在为现有目标分配检测时,估计每个目标的包围盒几何体在当前帧中的新位置。然后使用分配矩阵计算当前时刻的每个检测框与现有目标的所有预测边界框之间的iou距离,如果对目标的检测重叠小于阈值ioumin则拒绝分配。解算目标速度时为了减小噪声干扰和误差,将上一时刻目标的速度加入当前时刻,计算公式如下:
[0054]vcur
=(x
dif
+v
pre
)/(t
dif
+1)
[0055]
其中,x
dif
和t
dif
为前后坐标差和时间差。
[0056]
所述步骤五中,先通过特征点匹配的方法标定相机与激光雷达,然后将yolov3产生的2d框与点云聚类生成的3d目标框进行边界框的融合。边界框的融合策略如下:(1)先对yolo框集合和3d点云框集合按照由近到远、由左到右的顺序分别进行排序;(2)遍历yolo框集合,然后用当前yolo框去点云框集合遍历寻找是否有符合匹配条件的点云框;(3)如果符合匹配条件,则将该点云框标记为已经匹配,并将点云框带有的目标标号、位置和速度信息赋给融合后的yolo框,算法流程图如图3。
[0057]
所述步骤六中,输出目标的信息主要包含目标的类别名、目标标号、相对位置及相对速度,最终可视化结果如图4。
[0058]
本发明所有软件程序均是基于c++和ros实现,ros提供了节点功能,在ros中根据功能划分了多个节点,按照运行顺序分别是:图像采集数据节点、lidar采集数据节点、图像预处理节点、yolov3图像检测节点、点云分割及跟踪节点、边界框节点、可视化节点,各节点之间通信关系如图5。
[0059]
综上所述,本发明实施例设计并开发一套以无人船为研究对象的多传感器融合的目标检测方法,帮助船舶能够更好地实现避障功能,满足和完成各种环境条件下的需求和任务,这对于实现船舶的自动驾驶功能具有极高的工程价值。
[0060]
又一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述任一方法的步骤。
[0061]
再一方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上述任一方法的步骤。
[0062]
在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一方法的步骤。
[0063]
可理解的是,本发明实施例提供的系统与本发明实施例提供的方法相对应,相关内容的解释、举例和有益效果可以参考上述方法中的相应部分。
[0064]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0065]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0066]
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1