本技术涉及无人驾驶,具体而言,涉及一种救援无人车slam方法、装置、电子设备及存储介质。
背景技术:
1、随着无人驾驶技术的普及,无人车已经成为人们生产生活当中十分重要的工具,无人车作为智能机器人发展的成果之一,不管是在港口码头,还是快递配送,都能见到它们的身影。除此以外,为应对各种突发灾难和不便于人类探查的地点,无人车的救援和搜索优势也逐步得到体现。
2、现有的救援无人车所采用的方法需要对整个环境提取特征点,并直接对所有特征点等大量数据进行处理将十分费时、效率低、不具有实时性。
技术实现思路
1、本技术实施例的目的在于提供一种救援无人车slam方法、装置、电子设备及存储介质,对特征点进行分层提取和筛选,并利用icp算法对分层后的特征点进行分别处理,提高算法的准确性和效率,解决了现有方法需要对整个环境提取特征点,并直接对所有特征点等大量数据进行处理导致的效率低、不具有实时性的问题。
2、本技术实施例提供了一种救援无人车slam方法,所述方法包括:
3、获取环境信息,所述环境信息包括点云数据和红外热图;
4、对所述点云数据进行预处理,获得点云强度图和激光点反射强度信息;
5、利用分层特征提取算法对所述点云强度图中的特征点进行分层提取,并利用所述激光点反射强度信息筛选分层后的特征点;
6、利用icp算法获得分层后的特征点的位姿信息;
7、将所述红外热图和所述点云强度图融合生成红外位置图,并利用轮廓点分割算法计算所述红外位置图中所有相邻轮廓点的中心点位置坐标,并随着所述救援无人车的移动更新所述中心点位置坐标,直至所有相邻轮廓点的数量满足占比阈值,停止移动。
8、在上述实现过程中,利用分层特征提取算法对点云强度图中的特征点进行分层提取,并利用各特征点的反射强度进一步筛选特征点,得到有效的特征点,减少对数据的处理量,且利用icp算法时,针对分层后的特征点分别进行处理,不仅可以提高icp算法的准确性,而且可以解决icp算法在面对大量数据时的耗时问题,提高slam算法(同步定位与地图创建,simultaneous localization and mapping)的实时性,解决了现有方法需要对整个环境提取特征点,并直接对所有特征点等大量数据进行处理导致的效率低、不具有实时性的问题。
9、进一步地,所述对所述点云数据进行预处理,获得点云强度图和激光点反射强度信息,包括:
10、将所述点云数据中的每个激光点进行深度投影,获得所述点云强度图,所述点云强度图包括激光雷达到反射点的距离信息r和反射强度信息i;
11、利用数学模型对所述反射强度信息进行归一化处理,获得所述激光点反射强度信息,其中,所述数学模型为:
12、;
13、其中,表示归一化后的反射强度信息,表示入射角度。
14、在上述实现过程中,预处理主要包括点云数据生成点云强度图和反射强度归一化,以便后续对点云强度图进行进一步处理和特征点筛选。
15、进一步地,所述利用分层特征提取算法对所述点云强度图中的特征点进行分层提取,并利用所述激光点反射强度信息筛选分层后的特征点,包括:
16、将所述点云强度图的特征点分成顶部和地面两部分,并进行分层提取,以分别获得顶部特征点集合和地面特征点集合;
17、利用所述激光点反射强度信息对所述顶部特征点集合和地面特征点集合中的每个特征点进行筛选,其中,筛选公式表示为:
18、;
19、其中,表示特征点的反射强度值, f表示特征点标志位,去除标志位为0的特征点。
20、在上述实现过程中,对特征点进行筛选,以便获得有效特征点,并减少特征点数量,提高处理速度。
21、进一步地,所述进行分层提取,以分别获得顶部特征点集合和地面特征点集合,包括:
22、利用特征点判定值从顶部和地面分别提取平面点和边缘点,所述特征点判定值表示为:
23、;
24、其中, x表示选取的关键像素点, xi表示所述关键像素点周围的像素点, b表示所述关键像素点周围的像素点数量;
25、若所述特征点判定值大于判定阈值,则关键像素点为边缘点;
26、若所述特征点判定值小于判定阈值,则关键像素点为平面点;
27、通过对所述关键像素点进行判断,获得顶部特征点集合和地面特征点集合,其中,分别表示顶部边缘点集合和顶部平面点集合,分别表示地面边缘点集合和地面平面点集合。
28、在上述实现过程中,利用特征点判定值和判定阈值对特征点进行分层,以便后续对分层后的特征点进行分别处理,提高处理效率。
29、进一步地,所述利用icp算法获得分层后的特征点的位姿信息,包括:
30、将当前帧点云强度图中的顶部边缘点和前一帧点云强度图中的顶部边缘点进行匹配,并利用icp算法获得顶部边缘点的位姿信息;
31、将当前帧点云强度图中的顶部平面点和前一帧点云强度图中的顶部平面点进行匹配,并利用icp算法获得顶部平面点的位姿信息;
32、将当前帧点云强度图中的地面边缘点和前一帧点云强度图中的地面边缘点进行匹配,并利用icp算法获得地面边缘点的位姿信息;
33、将当前帧点云强度图中的地面平面点和前一帧点云强度图中的地面平面点进行匹配,并利用icp算法获得地面平面点的位姿信息;
34、将四种位姿信息进行加权融合,获得点云强度图中各特征点的位姿信息:
35、;
36、其中,分别表示顶部边缘点的位姿信息、顶部平面点的位姿信息、地面边缘点的位姿信息、地面平面点的位姿信息,分别表示各位姿信息对应的权重且和为1。
37、在上述实现过程中,利用icp算法分别对分层后的特征点进行位姿信息计算,提高了icp算法的效率。
38、进一步地,所述利用icp算法获得顶部边缘点的位姿信息,包括:
39、分别计算当前帧点云强度图中的顶部边缘点和前一帧点云强度图中的顶部边缘点的质心:
40、;
41、;
42、其中, pt表示当前帧点云强度图中的顶部边缘点, qt表示前一帧点云强度图中的顶部边缘点, n表示顶部边缘点的总数量, j表示顶部边缘点的序列号;
43、对当前帧点云强度图和前一帧点云强度图去除质心,获得去除质心后的所有顶部边缘点的位置信息:
44、;
45、;
46、其中, ptj和 qtj分别表示去除质心前的当前帧点云强度图顶部边缘点位置信息和前一帧点云强度图顶部边缘点位置信息;
47、利用去除质心后的所有顶部边缘点的位置信息构建海森矩阵,并对所述海森矩阵进行svd分解,以获得筛选后顶部边缘点的位姿信息,其中海森矩阵表示为:
48、。
49、在上述实现过程中,利用icp算法获得顶部边缘点的位姿信息,其他特征点也是如此,利用icp算法同时处理,可提高算法处理效率。
50、进一步地,所述将所述红外热图和所述点云强度图融合生成红外位置图,并利用轮廓点分割算法计算所述红外位置图中所有相邻轮廓点的中心点位置坐标,并随着所述救援无人车的移动更新所述中心点位置坐标,直至所有相邻轮廓点的数量满足占比阈值,停止移动,包括:
51、将所述红外热图中的温度值和点云强度图中的特征点位置相关联,生成红外位置图;
52、对所述红外位置图进行聚类,计算特征点与周边特征点的累计温度差,若累计温度差大于设定阈值,则所述特征点为轮廓点,所述累计温度差表示为:
53、;
54、其中, h表示所述特征点的温度值, hi表示周边特征点的温度值;
55、局部搜索所有相邻轮廓点,并计算所有相邻轮廓点的中心点位置坐标,并随着救援无人车的移动更新所述中心点位置坐标;
56、若所有相邻轮廓点的数量满足:,则停止移动。
57、在上述实现过程中,获得中心点位置坐标,且所有相邻轮廓点的数量满足占比阈值时,说明距离中心点位置坐标足够近,可实施救援。
58、本技术实施例还提供一种救援无人车slam装置,所述装置包括:
59、环境信息获取模块,用于获取环境信息,所述环境信息包括点云数据和红外热图;
60、预处理模块,用于对所述点云数据进行预处理,获得点云强度图和激光点反射强度信息;
61、分层提取模块,用于利用分层特征提取算法对所述点云强度图中的特征点进行分层提取,并利用所述激光点反射强度信息筛选分层后的特征点;
62、位姿信息获取模块,用于利用icp算法获得分层后的特征点的位姿信息;
63、中心点位置坐标获取模块,用于将所述红外热图和所述点云强度图融合生成红外位置图,并利用轮廓点分割算法计算所述红外位置图中所有相邻轮廓点的中心点位置坐标,并随着所述救援无人车的移动更新所述中心点位置坐标,直至所有相邻轮廓点的数量满足占比阈值,停止移动。
64、在上述实现过程中,利用分层特征提取算法对点云强度图中的特征点进行分层提取,并利用各特征点的反射强度进一步筛选特征点,得到有效的特征点,减少对数据的处理量,且利用icp算法时,针对分层后的特征点分别进行处理,不仅可以提高icp算法的准确性,而且可以解决icp算法在面对大量数据时的耗时问题,提高slam算法的实时性,解决了现有方法需要对整个环境提取特征点,并直接对所有特征点等大量数据进行处理导致的效率低、不具有实时性的问题。
65、本技术实施例还提供一种电子设备,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行计算机程序以使所述电子设备执行上述中任一项所述的救援无人车slam方法。
66、本技术实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述中任一项所述的救援无人车slam方法。