CN114842438B - 用于自动驾驶汽车的地形检测方法、系统及可读存储介质 - Google Patents
用于自动驾驶汽车的地形检测方法、系统及可读存储介质 Download PDFInfo
- Publication number
- CN114842438B CN114842438B CN202210582679.4A CN202210582679A CN114842438B CN 114842438 B CN114842438 B CN 114842438B CN 202210582679 A CN202210582679 A CN 202210582679A CN 114842438 B CN114842438 B CN 114842438B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- ground
- dimensional
- data
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 85
- 238000003860 storage Methods 0.000 title claims abstract description 11
- 239000000463 material Substances 0.000 claims abstract description 106
- 230000011218 segmentation Effects 0.000 claims abstract description 101
- 238000012216 screening Methods 0.000 claims abstract description 22
- 239000011159 matrix material Substances 0.000 claims description 54
- 238000012549 training Methods 0.000 claims description 47
- 230000009466 transformation Effects 0.000 claims description 46
- 238000004364 calculation method Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 29
- 238000001914 filtration Methods 0.000 claims description 19
- 230000036544 posture Effects 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 238000013507 mapping Methods 0.000 claims description 16
- 230000000007 visual effect Effects 0.000 claims description 16
- 230000002776 aggregation Effects 0.000 claims description 14
- 238000004220 aggregation Methods 0.000 claims description 14
- 238000009499 grossing Methods 0.000 claims description 12
- 238000009826 distribution Methods 0.000 claims description 10
- 238000007781 pre-processing Methods 0.000 claims description 10
- 230000003068 static effect Effects 0.000 claims description 10
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 8
- 230000004888 barrier function Effects 0.000 claims description 6
- 239000004576 sand Substances 0.000 claims description 4
- 238000012876 topography Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 claims 1
- 238000000034 method Methods 0.000 abstract description 41
- 230000008569 process Effects 0.000 description 26
- 230000008859 change Effects 0.000 description 4
- 238000006073 displacement reaction Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 4
- 238000005065 mining Methods 0.000 description 3
- 239000004575 stone Substances 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 244000025254 Cannabis sativa Species 0.000 description 2
- 241000196324 Embryophyta Species 0.000 description 2
- 238000007476 Maximum Likelihood Methods 0.000 description 2
- 238000005266 casting Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000006116 polymerization reaction Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/762—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biophysics (AREA)
- Databases & Information Systems (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Remote Sensing (AREA)
- Image Analysis (AREA)
Abstract
本发明具体涉及用于自动驾驶汽车的地形检测方法、系统及可读存储介质。所述方法包括:从目标车辆的多个角度获取地面的图像数据和三维点云数据;通过目标车辆各个角度的图像数据结合航迹数据计算车身运动姿态;对各个角度的三维点云数据进行点云筛选,生成对应的预处理点云数据;通过目标车辆的车身运动姿态对各个角度的预处理点云数据进行拼接,生成地面三维点云;对各个角度的图像数据进行材质识别和分割,得到地面材质分割图像;基于地面三维点云和地面材质分割图像进行环境重建,生成地面三维场景。本发明还公开了一种地形检测系统及可读存储介质。本发明的地形检测方法及系统能够提高地形检测的可靠性和实用性。
Description
技术领域
本发明涉及自动驾驶汽车技术领域,具体涉及用于自动驾驶汽车的地形检测方法、系统及可读存储介质。
背景技术
随着自动驾驶汽车技术的不断发展,车辆应用场景会得到极大的扩展,包括稳定可控的封闭道路、状况复杂的城市道路、充满挑战的越野道路等。目前,已经有众多自动驾驶解决方案能有效的应对封闭道路和城市道路。然而,由于越野道路复杂多变,凹凸不平的地面有大量石头,严重阻碍了车辆的正常行驶,行驶过程中容易因为底盘与障碍物剐蹭,甚至出现底盘零部件变形、断裂严重等损害,或者车辆陷入凹坑,造成损失。
在智能驾驶领域中,针对车辆行驶过程中地面障碍物检测方法提出了多种解决方案。例如,公开号为CN113030997B的中国专利公开了《一种基于激光雷达的露天矿区可行驶区域检测方法》,其包括点云和路径点获取、点云预处理、扇形投影、可行驶区域检测、新地面原点确定以及最终检测结果叠加几个步骤。该方法不需要拟合平面,针对矿区复杂多变、崎岖不平的路面状况,能够进行有效的地面检测。
上述现有方案中的露天矿区可行驶区域检测方法也是一种地形检测方法,其采集车辆近处的三维点云数据,然后将三维点云数据分割成地面和上部障碍物,对地面的点云做滤波和稀疏化得到地面的稀疏点,再对点集做平面拟合获得基准地面,根据点与基准面的关系进行突起与凹陷的标注。但申请人发现,上述现有方案采用激光雷达检测地形的方式,对激光雷达的安装位置具有较为苛刻的要求,并且其无法对较近位置的障碍物进行探测,也无法很好的处理特殊材质的反射干扰。同时,现有方案无法为车辆规划路线提供参考信息,导致地形检测的可靠性和实用性均不好。因此,如何设计一种能够兼顾地形检测可靠性和实用性的方法是亟需解决的技术问题。
发明内容
针对上述现有技术的不足,本发明所要解决的技术问题是:如何提供一种自动驾驶汽车的地形检测方法,以能够结合视觉数据和三维点云数据实现地形检测,并能够识别出地面材质用以为车辆规划路线提供参考信息,从而能够提高地形检测的可靠性和实用性。
为了解决上述技术问题,本发明采用了如下的技术方案:
用于自动驾驶汽车的地形检测方法,包括以下步骤:
S1:从目标车辆的多个角度获取地面的图像数据和三维点云数据;
S2:通过目标车辆各个角度的图像数据结合航迹数据计算车身运动姿态;
S3:对各个角度的三维点云数据进行点云筛选,生成对应的预处理点云数据;
S4:通过目标车辆的车身运动姿态对各个角度的预处理点云数据进行拼接,生成地面三维点云;
S5:对各个角度的图像数据进行材质识别和分割,得到地面材质分割图像;
S6:基于地面三维点云和地面材质分割图像进行环境重建,生成地面三维场景。
优选的,还包括:
S7:基于地面材质分割图像提取可通行区域和障碍物信息,进而通过路径规划算法计算可通行的线路作为避障行驶路径。
优选的,步骤S2中,具体包括如下步骤:
S201:对各个角度的图像数据进行特征提取,得到对应的图像特征点;
S202:通过图像特征点和目标车辆的航迹数据,结合视觉里程计算法估计相机位姿;
S203:通过预设的外参矩阵将相机位姿转换为对应的车身位姿;
S204:对各个角度的车身位姿态进行融合,生成目标车辆的车身运动姿态。
优选的,步骤S204中,通过卡尔曼滤波器对融合后的车身位姿态进行滤波处理。
优选的,步骤S3中,具体包括如下步骤:
S301:对各个角度的图像数据进行语义分割,得到对应的图像语义信息;
S302:对各个角度的三维点云数据进行语义分割,得到对应的点云语义信息;
S303:将图像语义信息与点云语义信息进行映射,获得每个点云的实际语义信息;
S304:基于点云的实际语义信息进行点云的筛选、删除和填充,得到对应的预处理点云数据。
优选的,步骤S302中,通过对三维点云数据进行逐点预测、点聚合和点集聚合的方式完成语义分割。
优选的,步骤S303中,通过将图像语义信息和点云语义信息对应的外参矩阵和内参矩阵进行级联的方式, 实现图像语义信息到点云语义信息的映射。
优选的,步骤S304中,通过点云补洞算法实现点云的筛选、删除和填充。
优选的,步骤S4中,具体包括如下步骤:
S401:将各个角度的预处理点云数据转换到同一坐标系下;
S402:从预处理点云数据中提取点云特征点对各个角度的预处理点云数据进行配准;
S403:基于车身运动姿态计算对应的变换矩阵,通过变换矩阵对配准后的预处理点云数据进行拼接,生成地面三维点云。
优选的,步骤S401中,通过目标车辆在世界坐标系下的位姿变换矩阵和相机外参矩阵级联获得当前相机坐标系到世界坐标系下的变换矩阵,进而通过变换矩阵将预处理点云数据投影到世界坐标系下。
优选的,步骤S402中,通过正态分布变换算法对预处理点云数据进行配准。
优选的,步骤S403中,通过半径滤波算法对拼接后的预处理点云数据进行滤波平滑处理。
优选的,步骤S5中,将图像数据输入经过训练的材质识别模型中进行材质识别和分类,并将输出的预测语义分割图像作为地面材质分割图像。
优选的,步骤S5中,选用深度网络模型作为材质识别模型;
通过如下步骤训练深度网络模型:
S501:构建训练数据集,训练数据集中包括人工标注了地面材质的训练图像;
S502:将训练图像输入深度网络模型中,输出对应的预测语义分割图像;
S503:通过预测语义分割图像结合损失函数对深度网络模型进行监督训练;
S504:重复步骤S502至S503,直至深度网络模型收敛。
优选的,步骤S503中,损失函数为Focal loss、IOUloss和MM-SSIM之和组成的混合损失函数。
优选的,步骤S501中,地面材质的类型包括草地、砂石地、水面、雪地、砖石和道路。
优选的,步骤S6中,先基于当前时刻的地面三维点云和地面三维点云的历史数据生成完整的地面三维点云,然后通过完整的地面三维点云和地面材质分割图像进行静态的环境重建,得到地面三维场景。
本发明还公开了一种用于自动驾驶汽车的地形检测系统,基于本发明的地形检测方法实施,包括:
多个三维视觉采集模块,安装于目标车辆上,用于从多个角度获取地面的图像数据和三维点云数据;三维视觉采集模块包括用于采集图像数据的颜色系统相机、用于采集三维点云数据的三维深度相机,以及用于对图像数据进行预处理的边缘计算模块;
车载处理模块,用于通过各个角度的图像数据结合目标车辆的航迹数据,计算目标车辆的车身运动姿态;其次对三维点云数据进行点云筛选,生成对应的预处理点云数据;再通过目标车辆的车身运动姿态结合三维深度相机的外部参数对各个角度的预处理点云数据进行拼接,生成地面三维点云;然后基于各个角度的图像数据进行材质识别和分类,得到地面材质分割图像;最后基于地面三维点云和地面材质分割图像进行环境重建,生成对应的地面三维场景。
优选的,通过如下步骤修正三维深度相机的外部参数:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
对图像特征点进行特征匹配,获得各个角度之间的位姿转换关系;
基于各个角度之间的位姿转换关系结合目标车辆的车身运动姿态修正三维深度相机的外部参数。
优选的,至少包括安装于目标车辆四周的六个三维视觉采集模块,目标车辆的前部和后部各装有一个三维视觉采集模块,目标车辆的车身左右各装有两个三维视觉采集模块。
优选的,各个三维深度相机组合形成的探测范围能覆盖目标车辆的四周,且各个三维视觉采集模块的探测范围无缝衔接。
优选的,车载处理模块通过如下步骤计算车身运动姿态:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
通过图像特征点和目标车辆的航迹数据,结合视觉里程计算法估计相机位姿;
通过预设的外参矩阵将相机位姿转换为对应的车身位姿;
对各个角度的车身位姿态进行融合,生成目标车辆的车身运动姿态。
优选的,车载处理模块通过如下步骤生成预处理点云数据:
对各个角度的图像数据进行语义分割,得到对应的图像语义信息;
对各个角度的三维点云数据进行语义分割,得到对应的点云语义信息;
将图像语义信息与点云语义信息进行映射,获得每个点云的实际语义信息;
基于点云的实际语义信息进行点云的筛选、删除和填充,得到对应的预处理点云数据。
优选的,车载处理模块通过如下步骤生成地面三维点云:
将各个角度的预处理点云数据转换到同一坐标系下;
从预处理点云数据中提取点云特征点对各个角度的预处理点云数据进行配准;
基于车身运动姿态计算对应的变换矩阵,通过变换矩阵对配准后的预处理点云数据进行拼接,生成地面三维点云。
优选的,车载处理模块将图像数据输入经过训练的材质识别模型中进行材质识别和分类,并将输出的预测语义分割图像作为地面材质分割图像。
优选的,选用深度网络模型作为材质识别模型;
通过如下步骤训练深度网络模型:
构建训练数据集,训练数据集中包括人工标注了地面材质的训练图像;
将训练图像输入深度网络模型中,输出对应的预测语义分割图像;
通过语义分割图像结合损失函数对深度网络模型进行监督训练;
重复训练,直至深度网络模型收敛。
优选的,车载处理模块先基于当前时刻的地面三维点云和地面三维点云的历史数据生成完整的地面三维点云,然后通过完整的地面三维点云和地面材质分割图像进行静态的环境重建,得到地面三维场景。
本发明还公开了一种可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现本发明的用于自动驾驶汽车的地形检测方法的步骤。
本发明中的地形检测方法与现有技术相比,具有如下有益效果:
本发明通过图像数据结合航迹数据计算车身运动姿态,并对各个角度的三维点云数据进行点云筛选,然后通过车身运动姿态对各个角度的预处理点云数据进行拼接生成地面三维点云;再基于图像数据进行材质识别分类得到地面材质分割图像,最后基于地面三维点云和地面材质分割图像进行环境重建生成地面三维场景,即本发明能够结合视觉数据和三维点云数据实现地形检测,并能够通过地面材质分割图像识别出地面材质。一方面,本发明对采集设备的安装位置没有严格要求(只需要实现多个角度的数据采集),并且能够对较近位置各种材质的障碍物进行探测,不会受到特殊材质的反射干扰;另一方面,本发明能够通过地面材质分割图像识别出各种材质的障碍物,进而能够为车辆规划路线提供参考信息,帮助自动驾驶车辆及时规划行驶路线,从而能够提高地形检测的可靠性和实用性。
附图说明
为了使发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步的详细描述,其中:
图1为用于自动驾驶汽车的地形检测方法的逻辑框图;
图2为用于自动驾驶汽车的地形检测系统的结构示意图;
图3为用于自动驾驶汽车的地形检测的软件流程框图;
图4为安装三维视觉采集模块的车辆的水平探测范围;
图5为安装三维视觉采集模块的车辆的垂直探测范围。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以通过各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。此外,术语“水平”、“竖直”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜的。在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
下面通过具体实施方式进一步详细的说明:
实施例一:
本实施例中公开了一种用于自动驾驶汽车的地形检测方法。
如图1所示,用于自动驾驶汽车的地形检测方法,包括以下步骤:
S1:从目标车辆的多个角度获取地面的图像数据和三维点云数据;
本实施例中,通过三维视觉采集模块采集图像数据和三维点云数据,其包括颜色系统相机(RGB相机)和三维深度相机(3DTOF相机)。
S2:通过目标车辆各个角度的图像数据结合航迹数据计算车身运动姿态;
S3:对各个角度的三维点云数据进行点云筛选,生成对应的预处理点云数据;
S4:通过目标车辆的车身运动姿态(结合三维深度相机的外部参数)对各个角度的预处理点云数据进行拼接,生成地面三维点云;
S5:对各个角度的图像数据进行材质识别和分割,得到地面材质分割图像;
S6:基于地面三维点云和地面材质分割图像进行环境重建,生成地面三维场景。
S7:基于地面材质分割图像提取可通行区域和障碍物信息,进而通过路径规划算法计算可通行的线路作为避障行驶路径。
本实施例中,通过现有手段对地面材质分割图像中的各个目标和对象进行标注和颜色区分,进而提取出可通行区域和障碍物信息并输入到现有的路径规划模块,路径规划模块基于可通行区域和障碍物信息为车辆在此复杂场景下规划计算出一条通行线路。
需要说明的是,本发明中用于自动驾驶汽车的地形检测方法可通过程序编程的方式生对应的成软件代码或软件服务,进而能够在服务器和计算机上运行和实施。
本发明通过图像数据结合航迹数据计算车身运动姿态,并对各个角度的三维点云数据进行点云筛选,然后通过车身运动姿态对各个角度的预处理点云数据进行拼接生成地面三维点云;再基于图像数据进行材质识别分类得到地面材质分割图像,最后基于地面三维点云和地面材质分割图像进行环境重建生成地面三维场景,即本发明能够结合视觉数据和三维点云数据实现地形检测,并能够通过地面材质分割图像识别出地面材质。一方面,本发明对采集设备的安装位置没有严格要求(只需要实现多个角度的数据采集),并且能够对较近位置各种材质的障碍物进行探测,不会受到特殊材质的反射干扰;另一方面,本发明能够通过地面材质分割图像识别出各种材质的障碍物,进而能够为车辆规划路线提供参考信息,帮助自动驾驶车辆及时规划行驶路线,从而能够提高地形检测的可靠性和实用性。
同时,本发明通过地面材质分割图像提取可通行区域和障碍物信息,进而通过路径规划算法计算可通行的线路作为避障行驶路径,即能够有效的帮助自动驾驶车辆及时规划行驶路线,从而能够进一步提高地形检测的可靠性和实用性。
步骤S2中,具体包括如下步骤:
S201:对各个角度的图像数据进行特征提取,得到对应的图像特征点;
S202:通过图像特征点和目标车辆的航迹数据,结合视觉里程计算法(通过底盘里程计获取行驶里程)估计相机位姿;
S203:通过预设的外参矩阵将相机位姿转换为对应的车身位姿;
S204:对各个角度的车身位姿态进行融合,生成目标车辆的车身运动姿态。
本实施例中,通过卡尔曼滤波器对融合后的车身位姿态进行滤波处理。
本实施例中,可选择采用现有的半直接视觉里程计算法基于图像数据进行位姿估计。半直接视觉里程计算法主要包含两个模块,都是单独的线程。一个模块用于估计相机位姿,融合IMU测量值,实现了相机相对位姿估计。另一个模块用于建图,为每个要被估计的3D点对应的2D特征初始化概率深度滤波器,当深度滤波器不确定性足够小时,在地图上插入3D点,并估计相机的位姿。
位姿估计中,通过对相同路标点投影位置对应的像素之间的光度误差,得到当前相对于前一帧的相机位姿。通过相应的特征块对齐对新一帧的重投影点对应二维坐标进行优化。由于当前帧与参考关键帧中同一特征块会存在光度误差,这里将对特征块的2维位姿优化,以便最小化光度误差。对输入的IMU数据进行预积分,计算更新状态量关于bias的雅克比,更新方差和帧间位姿变换。最后将相机位姿、帧间位姿变换、imu噪声、路标点位姿统一进行优化,得到准确的路标点位姿、相机位姿、imu状态量。
特征建图中,从读入的图像帧中检测并选择关键帧。如果是关键帧,就对这个图像进行特征提取,并对每个2D特征初始化概率深度滤波器,由于刚初始化的滤波器有很大的不确定性,在之后的图像帧深度估计中,通过贝叶斯方式更新。如果该帧图像不是关键帧,就用来更新深度滤波器,如果深度滤波器不确定新足够小,就在地图中插入相应的3D点,用来估计位姿。
得到相机的位姿后,由预先标定的外参矩阵,将相机位姿转换为车辆的位姿。车辆在室外行驶中,会实时接收到GPS的定位信息。建立一个EKF滤波器,将VIO和GPS的定位结果进行时间上的同步,依次作为观测量输入到EKF中,更新方差和状态量,获得车辆的融合后的姿态。
其他优选实施例中,可以采用其他现有的方式实现车身运动姿态估计和计算。
需要说明的,本实施例中所述的特征提取、视觉里程计算法以及融合滤波均可采用现有其他的成熟手段实现,具体过程这里不再赘述。其中,在机器人学与计算机视觉领域,视觉里程计算法是一个通过分析相关图像序列,来确定机器人位置和朝向的过程。视觉里程计算法是一种利用连续的图像序列来估计机器人移动距离的方法,增强了机器人在任何表面以任何方式移动时的导航精度。
本发明通过图像特征点和目标车辆的航迹数据结合视觉里程计算法,能够准确的计算各个三维视觉采集模块的运动姿态,进而能够有效的计算目标车辆的车身运动姿态,从而能够为后续的三维点云拼接提供基础。
步骤S3中,具体包括如下步骤:
S301:对各个角度的图像数据进行语义分割,得到对应的图像语义信息;
本实施例中,采用现有手段进行图像数据的语义分割。
S302:对各个角度的三维点云数据进行语义分割,得到对应的点云语义信息;
本实施例中,通过对三维点云数据进行逐点预测、点聚合和点集聚合的方式完成语义分割。
1、逐点预测:点云预测网络以点云作为输入,将数据转化为规则的体素网格,然后由堆叠的3D稀疏卷积层组成类u-net结构来提取体素特征Fvoxel;再由体素特征Foxvel映射回点特征Fpoint;利用Fpoint构建分支,一个用于预测点标签,另一个用于预测点的中心偏移量。
2、点聚合:同一实例点由于较为接近,利用语义标签和中心偏移向量,对点进行移动并聚类,完成对实体的分割,将点分成多个集合。
3、点集聚合:由于之前点的中心偏移矢量并不完全准确,导致点聚合过程会产生碎片实例,而聚合效果好的点形成主实例。因此,主实例采用平均实例半径将周围大量的碎片实例吸收,形成更好的实例分割结果。最后通过NMS非极大值抑制来去除重复的实例预测。
S303:将图像语义信息与点云语义信息进行映射,获得每个点云的实际语义信息;
本实施例中,通过将图像语义信息和点云语义信息对应的外参矩阵和内参矩阵进行级联的方式, 实现图像语义信息到点云语义信息的映射。
S304:基于点云的实际语义信息进行点云的筛选、删除和填充,得到对应的预处理点云数据。
本实施例中,通过点云补洞算法实现点云的筛选、删除和填充。云补洞算法主要分为两步:1)法向传播,用于控制填充点的方向和恢复的表面的形状。2)位置传播,在一次边缘收束中生成新的边界点。这两个步骤在补洞算法中交替执行,且能够相互优化,这种交替传播方式能够将法相约束插入到法向传播步骤中,以恢复空洞的尖锐特征。
如果图像中某个区域识别的语义为水面,这个区域对应的点云拟合平面,点计算到平面的距离,筛选剔除其中平面之下和离平面过远的点,将这些游离点删除。同时按照归属同一语义区域的区域分割方式,对此区域中的空洞区域进行平滑与填充。如果图像部分区域的语义为杂草等不影响通行的障碍物,将这个区域对应的点云滤除,保留其周围环境中的有效点云,最后对空洞区域进行填充与平滑。
需要说明的是,本实施例所述的语义分割、点云映射和点云筛选均可采用现有成熟手段实现,这里不再赘述。
本发明将图像语义信息与三维点云数据进行映射获得每个点云的语义信息,进而基于点云的语义信息进行点云的筛选、删除和填充得到预处理点云数据,使得能够获得完整且有效的三维点云数据,从而能够提高后续地形检测的可靠性。
步骤S4中,具体包括如下步骤:
S401:将各个角度的预处理点云数据转换到同一坐标系下;
本实施例中,通过目标车辆在世界坐标系下的位姿变换矩阵和相机外参矩阵级联获得当前相机坐标系到世界坐标系下的变换矩阵,进而通过变换矩阵将预处理点云数据投影到世界坐标系下。或者,基于三维深度相机的外部参数将三维点云数据通过旋转平移转换到车辆后轴中点的坐标系下。
S402:从预处理点云数据中提取点云特征点对各个角度的预处理点云数据进行配准;
本实施例中,通过正态分布变换算法对预处理点云数据进行配准。
正态分布变换算法主要包括六个步骤:1)将空间划分为各个格子cell;2)将之间构建的参考点云投到各个网格中;3)基于网格中的点计算正态分布概率密度函数的参数;4)将新采集点云的每个点按转换矩阵变换到参考点云坐标系下;5)将新点云的点落在参考点云的网格中,计算对应的概率分布概率密度函数;6)求最大似然函数,得到最优变换参数。使用优化算法调整参数,最小化负对数似然函数(采用牛顿法优化参数)。
S403:基于车身运动姿态计算对应的变换矩阵,通过变换矩阵对配准后的预处理点云数据进行拼接,生成地面三维点云。
本实施例中,通过半径滤波算法对拼接后的预处理点云数据进行滤波平滑处理,用以去除重叠多余的点,改善点云的平滑度和连续性。
由之前车体的融合运动姿态计算变换矩阵,将融合后的点云数据由变换矩阵转换到起始点的坐标系下。在获得起始点坐标系下的点云数据后,将其与之前记录的点云(历史数据)进行配准、拼接,经过滤波平滑,对场景中地形数据进行连续更新。
需要说明的是,本实施例所述的点云坐标转换、点云配准、计算变换矩阵、点云拼接和滤波平滑均可采用现有其他的成熟手段实现,具体过程这里不再赘述。
本发明将预处理点云数据转换到同一坐标系下,然后提取点云特征点对各个角度的预处理点云数据进行配准,进而基于车身运动姿态计算对应的变换矩阵对配准后的预处理点云数据进行拼接和滤波平滑生成地面三维点云,从而能够提高地形检测的可靠性。
具体实施过程中,将图像数据输入经过训练的材质识别模型中进行材质识别和分类,并将输出的预测语义分割图像作为地面材质分割图像。
本实施例中,选用深度网络模型作为材质识别模型;
深度网络模型采用unet3+,Unet3+在u-net基础上,每个解码器层融合了来自编码器的较小相同尺度的特征图,以及来自较大尺度的特征图,捕获了全尺度下的细粒度语义和粗粒度语义。通过最大池化操作将来自较小尺度编码器层的输出进行池化下采样,以便传递底层的低级语义信息。通过一系列内部解码器跳跃连接,并对来自大尺度解码器层的高级语义信息进行双线性插值。
对语义的监督训练,在每个解码器阶段产生一个切分侧边输出,由真实分类结果进行监督,为了实现深度监督,每个解码器阶段最后一层被送入一个普通的3x3卷积层,然后是一个双线性采样,之后传输给一个sigmoid函数。损失函数采用包含Focal loss、IOUloss和MM-SSIM混合损失函数,对三种层级(像素级、补丁级、图片级)结构的分割有较好的性能,可以捕获大尺度的和精细结构的清晰的边界信息。其中多尺度结构相似性指数(MM-SSIM)损失用于为模糊边界分配更高的权重,用以改善模糊区域的分割效果。
将训练集按批输入训练网络,获得地面材质分割模型。当车辆行驶过程中,会不断采集车辆前方的图像,将采集到的前方路标图像输入到网络中,通过计算,输出地面材质的语义分割图像,其中语义类别包含草地,砂石地,水面,雪地,砖石,道路这几类。
通过如下步骤训练深度网络模型:
S501:构建训练数据集,训练数据集中包括人工标注了地面材质的训练图像;
本实施例中,地面材质的类型包括草地、砂石地、水面、雪地、砖石和道路。
S502:将训练图像输入深度网络模型中,输出对应的预测语义分割图像;
S503:通过预测语义分割图像结合损失函数对深度网络模型进行监督训练;
本实施例中,损失函数为Focal loss、IOUloss和MM-SSIM之和组成的混合损失函数。
S504:重复步骤S502至S503,直至深度网络模型收敛。
需要说明的是,本实施例所述的深度网络模型及其训练过程均可采用现有其他的成熟手段实现,具体过程这里不再赘述。
本发明通过材质识别模型对图像数据进行识别和分类得到地面材质分割图像,使得能够有效的识别地面材质分割图像,进而通过地面材质分割图像识别出各种材质的障碍物,能够为车辆规划路线提供参考信息,帮助自动驾驶车辆及时规划行驶路线,从而能够提高地形检测的实用性。
具体实施过程中,通过如下步骤修正三维深度相机的外部参数:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
对图像特征点进行特征匹配,获得各个角度之间的位姿转换关系;
基于各个角度之间的位姿转换关系结合目标车辆的车身运动姿态修正三维深度相机(三维视觉采集模块)的外部参数。
本实施例中,具有重合视野的三维视觉采集模块通过对特征点的匹配,获得模块之间的位姿转换关系,结合实时的VIO获得的跟踪位姿(车身运动姿态),在车载处理模块中对相机的外参进行修正和优化,克服模块位移产生的外参变化问题,获得较为精确的三维视觉采集模块的外参数据。
本发明对图像特征点进行特征匹配获得各个角度之间的位姿转换关系,进而基于各个角度之间的位姿转换关系结合目标车辆的车身运动姿态修正三维深度相机的外部参数,使得克服模块位移产生的外参变化问题,进而能够提高三维深度相机三维视觉采集模块)外部参数的准确性,更有利于辅助完成后续的三维点云拼接,从而能够提高地形检测的可靠性。
具体实施过程中,先基于当前时刻的地面三维点云和地面三维点云的历史数据生成完整的地面三维点云,然后通过完整的地面三维点云和地面材质分割图像进行静态的环境重建(输入场景重建软件中经过渲染生成实时的3D场景),得到地面三维场景。
本实施例中,静态的环境重建是指:将空间划分为很多体元,每个体元有8个体素点,构成一个小包围盒。遍历区域中的所有体元,根据体元内部是否有点云数据点,分为实体元,虚体元,边界体元。对于边界体元,根据建立好的体元配置的三角形表确定该体元的三角形片。将所有的体元中三角形片组合起来,形成重建的三角网格模型。
需要说明的是,本实施例所述的静态的环境重建可采用现有其他的成熟手段实现,具体过程这里不再赘述。
实施例二:
本实施例中公开了一种用于自动驾驶汽车的地形检测系统,基于本发明的用于自动驾驶汽车的地形检测方法实施。
如图2和图3所示,用于自动驾驶汽车的地形检测系统,包括:
多个三维视觉采集模块,安装于目标车辆上,用于从多个角度获取地面的图像数据和三维点云数据;三维视觉采集模块包括用于采集图像数据的颜色系统相机、用于采集三维点云数据的三维深度相机,以及用于对图像数据进行预处理的边缘计算模块;
如图4所示,至少包括安装于目标车辆四周的六个三维视觉采集模块,前部和后部各装有一个三维视觉采集模块,车身左右各装有两个三维视觉采集模块。如图5所示,安装高度依照车身的尺寸调节,使得三维深度相机的探测范围能覆盖车辆的四周,各个三维视觉采集模块的探测范围可以无缝衔接。三维视觉采集模块与车端的车载处理模块连接,车载处理模块具备实时三维点云处理、视觉里程计、实时点云拼接的功能、视觉在线标定、数据记录与回放等功能。同时,三维视觉采集模块与外部时钟源通过信号线连接,使用LPWM脉冲信号同步拍摄时序。
车载处理模块,用于通过各个角度的图像数据结合目标车辆的航迹数据,计算目标车辆的车身运动姿态;其次对三维点云数据进行点云筛选,生成对应的预处理点云数据;再通过目标车辆的车身运动姿态结合三维深度相机的外部参数对各个角度的预处理点云数据进行拼接,生成地面三维点云;然后基于各个角度的图像数据进行材质识别和分类,得到地面材质分割图像;最后基于地面三维点云和地面材质分割图像进行环境重建,生成对应的地面三维场景。
由于受到三维视觉采集模块探测范围的限制,无法探测较远范围的地形信息,感知更大范围的环境状态,故本发明的方案适用于车辆慢速行驶的情况。此外,当车辆进入崎岖路段时,为安全起见,亦无法高速行进。因此,当车速下降的预设的阈值以下,将会提示司机开启此地形探测系统。
车辆以较低的速度行驶过程中,通过实时采集四周地面的三维点云数据与地面三维点云的历史数据生成完整的地面三维点云。完整的地面三维点云经过滤波压缩后输入到碰撞检测模块中,计算预测车辆底盘到地面的距离判断碰撞的风险,如果预测的碰撞概率大于预设的阈值,系统将立刻向AEB反馈,控制车辆急停。
本发明通过图像数据结合航迹数据计算车身运动姿态,并对各个角度的三维点云数据进行点云筛选,然后通过车身运动姿态对各个角度的预处理点云数据进行拼接生成地面三维点云;再基于图像数据进行材质识别分类得到地面材质分割图像,最后基于地面三维点云和地面材质分割图像进行环境重建生成地面三维场景,即本发明能够结合视觉数据和三维点云数据实现地形检测并能够通过地面材质分割图像识别出各种材质的障碍物。一方面,本发明对采集设备的安装位置没有严格要求(只需要实现多个角度的数据采集),并且能够对较近位置各种材质的障碍物进行探测,不会受到特殊材质的反射干扰;另一方面,本发明能够通过地面材质分割图像识别出各种材质的障碍物,进而能够为车辆规划路线提供参考信息,帮助自动驾驶车辆及时规划行驶路线,从而能够提高地形检测的可靠性和实用性。
具体实施过程中,通过如下步骤修正三维深度相机的外部参数:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
对图像特征点进行特征匹配,获得各个角度之间的位姿转换关系;
基于各个角度之间的位姿转换关系结合目标车辆的车身运动姿态修正三维深度相机(三维视觉采集模块)的外部参数。
本实施例中,具有重合视野的三维视觉采集模块通过对特征点的匹配,获得模块之间的位姿转换关系,结合实时的VIO获得的跟踪位姿(车身运动姿态),在车载处理模块中对相机的外参进行修正和优化,克服模块位移产生的外参变化问题,获得较为精确的三维视觉采集模块的外参数据。
本发明对图像特征点进行特征匹配获得各个角度之间的位姿转换关系,进而基于各个角度之间的位姿转换关系结合目标车辆的车身运动姿态修正三维深度相机的外部参数,使得克服模块位移产生的外参变化问题,进而能够提高三维深度相机三维视觉采集模块)外部参数的准确性,更有利于辅助完成后续的三维点云拼接,从而能够提高地形检测的可靠性。
具体实施过程中,车载处理模块通过如下步骤计算车身运动姿态:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
通过图像特征点和目标车辆的航迹数据,结合视觉里程计算法估计相机位姿;
通过预设的外参矩阵将相机位姿转换为对应的车身位姿;
对各个角度的车身位姿态进行融合,生成目标车辆的车身运动姿态。
本实施例中,通过卡尔曼滤波器对融合后的车身位姿态进行滤波处理。
本实施例中,可选择采用现有的半直接视觉里程计算法基于图像数据进行位姿估计。半直接视觉里程计算法主要包含两个模块,都是单独的线程。一个模块用于估计相机位姿,融合IMU测量值,实现了相机相对位姿估计。另一个模块用于建图,为每个要被估计的3D点对应的2D特征初始化概率深度滤波器,当深度滤波器不确定性足够小时,在地图上插入3D点,并估计相机的位姿。
位姿估计中,通过对相同路标点投影位置对应的像素之间的光度误差,得到当前相对于前一帧的相机位姿。通过相应的特征块对齐对新一帧的重投影点对应二维坐标进行优化。由于当前帧与参考关键帧中同一特征块会存在光度误差,这里将对特征块的2维位姿优化,以便最小化光度误差。对输入的IMU数据进行预积分,计算更新状态量关于bias的雅克比,更新方差和帧间位姿变换。最后将相机位姿、帧间位姿变换、imu噪声、路标点位姿统一进行优化,得到准确的路标点位姿、相机位姿、imu状态量。
特征建图中,从读入的图像帧中检测并选择关键帧。如果是关键帧,就对这个图像进行特征提取,并对每个2D特征初始化概率深度滤波器,由于刚初始化的滤波器有很大的不确定性,在之后的图像帧深度估计中,通过贝叶斯方式更新。如果该帧图像不是关键帧,就用来更新深度滤波器,如果深度滤波器不确定新足够小,就在地图中插入相应的3D点,用来估计位姿。
得到相机的位姿后,由预先标定的外参矩阵,将相机位姿转换为车辆的位姿。车辆在室外行驶中,会实时接收到GPS的定位信息。建立一个EKF滤波器,将VIO和GPS的定位结果进行时间上的同步,依次作为观测量输入到EKF中,更新方差和状态量,获得车辆的融合后的姿态。
其他优选实施例中,可以采用其他现有的方式实现车身运动姿态估计和计算。
需要说明的,本实施例中所述的特征提取、视觉里程计算法以及融合滤波均可采用现有其他的成熟手段实现,具体过程这里不再赘述。其中,在机器人学与计算机视觉领域,视觉里程计算法是一个通过分析相关图像序列,来确定机器人位置和朝向的过程。视觉里程计算法是一种利用连续的图像序列来估计机器人移动距离的方法,增强了机器人在任何表面以任何方式移动时的导航精度。
本发明通过图像特征点和目标车辆的航迹数据结合视觉里程计算法,能够准确的计算各个三维视觉采集模块的运动姿态,进而能够有效的计算目标车辆的车身运动姿态,从而能够为后续的三维点云拼接提供基础。
具体实施过程中,车载处理模块通过如下步骤生成预处理点云数据:
对各个角度的图像数据进行语义分割,得到对应的图像语义信息;
本实施例中,采用现有手段进行图像数据的语义分割。
对各个角度的三维点云数据进行语义分割,得到对应的点云语义信息;
本实施例中,通过对三维点云数据进行逐点预测、点聚合和点集聚合的方式完成语义分割。
1、逐点预测:点云预测网络以点云作为输入,将数据转化为规则的体素网格,然后由堆叠的3D稀疏卷积层组成类u-net结构来提取体素特征Fvoxel;再由体素特征Foxvel映射回点特征Fpoint;利用Fpoint构建分支,一个用于预测点标签,另一个用于预测点的中心偏移量。
2、点聚合:同一实例点由于较为接近,利用语义标签和中心偏移向量,对点进行移动并聚类,完成对实体的分割,将点分成多个集合。
3、点集聚合:由于之前点的中心偏移矢量并不完全准确,导致点聚合过程会产生碎片实例,而聚合效果好的点形成主实例。因此,主实例采用平均实例半径将周围大量的碎片实例吸收,形成更好的实例分割结果。最后通过NMS非极大值抑制来去除重复的实例预测。
将图像语义信息与点云语义信息进行映射,获得每个点云的实际语义信息;
本实施例中,通过将图像语义信息和点云语义信息对应的外参矩阵和内参矩阵进行级联的方式, 实现图像语义信息到点云语义信息的映射。
基于点云的实际语义信息进行点云的筛选、删除和填充,得到对应的预处理点云数据。
本实施例中,通过点云补洞算法实现点云的筛选、删除和填充。云补洞算法主要分为两步:1)法向传播,用于控制填充点的方向和恢复的表面的形状。2)位置传播,在一次边缘收束中生成新的边界点。这两个步骤在补洞算法中交替执行,且能够相互优化,这种交替传播方式能够将法相约束插入到法向传播步骤中,以恢复空洞的尖锐特征。
如果图像中某个区域识别的语义为水面,这个区域对应的点云拟合平面,点计算到平面的距离,筛选剔除其中平面之下和离平面过远的点,将这些游离点删除。同时按照归属同一语义区域的区域分割方式,对此区域中的空洞区域进行平滑与填充。如果图像部分区域的语义为杂草等不影响通行的障碍物,将这个区域对应的点云滤除,保留其周围环境中的有效点云,最后对空洞区域进行填充与平滑。
需要说明的是,本实施例所述的语义分割、点云映射和点云筛选均可采用现有成熟手段实现,这里不再赘述。
本发明将图像语义信息与三维点云数据进行映射获得每个点云的语义信息,进而基于点云的语义信息进行点云的筛选、删除和填充得到预处理点云数据,使得能够获得完整且有效的三维点云数据,从而能够提高后续地形检测的可靠性。
具体实施过程中,车载处理模块通过如下步骤生成地面三维点云:
将各个角度的预处理点云数据转换到同一坐标系下;
本实施例中,通过目标车辆在世界坐标系下的位姿变换矩阵和相机外参矩阵级联获得当前相机坐标系到世界坐标系下的变换矩阵,进而通过变换矩阵将预处理点云数据投影到世界坐标系下。或者,基于三维深度相机的外部参数将三维点云数据通过旋转平移转换到车辆后轴中点的坐标系下。
从预处理点云数据中提取点云特征点对各个角度的预处理点云数据进行配准;
本实施例中,通过正态分布变换算法对预处理点云数据进行配准。
正态分布变换算法主要包括六个步骤:1)将空间划分为各个格子cell;2)将之间构建的参考点云投到各个网格中;3)基于网格中的点计算正态分布概率密度函数的参数;4)将新采集点云的每个点按转换矩阵变换到参考点云坐标系下;5)将新点云的点落在参考点云的网格中,计算对应的概率分布概率密度函数;6)求最大似然函数,得到最优变换参数。使用优化算法调整参数,最小化负对数似然函数(采用牛顿法优化参数)。
基于车身运动姿态计算对应的变换矩阵,通过变换矩阵对配准后的预处理点云数据进行拼接,生成地面三维点云。
本实施例中,通过半径滤波算法对拼接后的预处理点云数据进行滤波平滑处理,用以去除重叠多余的点,改善点云的平滑度和连续性。
由之前车体的融合运动姿态计算变换矩阵,将融合后的点云数据由变换矩阵转换到起始点的坐标系下。在获得起始点坐标系下的点云数据后,将其与之前记录的点云(历史数据)进行配准、拼接,经过滤波平滑,对场景中地形数据进行连续更新。
需要说明的是,本实施例所述的点云坐标转换、点云配准、计算变换矩阵、点云拼接和滤波平滑均可采用现有其他的成熟手段实现,具体过程这里不再赘述。
本发明将预处理点云数据转换到同一坐标系下,然后提取点云特征点对各个角度的预处理点云数据进行配准,进而基于车身运动姿态计算对应的变换矩阵对配准后的预处理点云数据进行拼接和滤波平滑生成地面三维点云,从而能够提高地形检测的可靠性。
具体实施过程中,车载处理模块将图像数据输入经过训练的材质识别模型中进行材质识别和分类,并将输出的预测语义分割图像作为地面材质分割图像。
本实施例中,选用深度网络模型作为材质识别模型;
深度网络模型采用unet3+,Unet3+在u-net基础上,每个解码器层融合了来自编码器的较小相同尺度的特征图,以及来自较大尺度的特征图,捕获了全尺度下的细粒度语义和粗粒度语义。通过最大池化操作将来自较小尺度编码器层的输出进行池化下采样,以便传递底层的低级语义信息。通过一系列内部解码器跳跃连接,并对来自大尺度解码器层的高级语义信息进行双线性插值。
对语义的监督训练,在每个解码器阶段产生一个切分侧边输出,由真实分类结果进行监督,为了实现深度监督,每个解码器阶段最后一层被送入一个普通的3x3卷积层,然后是一个双线性采样,之后传输给一个sigmoid函数。损失函数采用包含Focal loss、IOUloss和MM-SSIM混合损失函数,对三种层级(像素级、补丁级、图片级)结构的分割有较好的性能,可以捕获大尺度的和精细结构的清晰的边界信息。其中多尺度结构相似性指数(MM-SSIM)损失用于为模糊边界分配更高的权重,用以改善模糊区域的分割效果。
将训练集按批输入训练网络,获得地面材质分割模型。当车辆行驶过程中,会不断采集车辆前方的图像,将采集到的前方路标图像输入到网络中,通过计算,输出地面材质的语义分割图像,其中语义类别包含草地,砂石地,水面,雪地,砖石,道路这几类。
通过如下步骤训练深度网络模型:
构建训练数据集,训练数据集中包括人工标注了地面材质的训练图像;
本实施例中,地面材质的类型包括草地、砂石地、水面、雪地、砖石和道路。
将训练图像输入深度网络模型中,输出对应的预测语义分割图像;
通过语义分割图像结合损失函数对深度网络模型进行监督训练;
本实施例中,损失函数为Focal loss、IOUloss和MM-SSIM之和组成的混合损失函数。
重复训练,直至深度网络模型收敛。
需要说明的是,本实施例所述的深度网络模型及其训练过程均可采用现有其他的成熟手段实现,具体过程这里不再赘述。
本发明通过材质识别模型对图像数据进行识别和分类得到地面材质分割图像,使得能够有效的识别地面材质分割图像,进而通过地面材质分割图像识别出各种材质的障碍物,能够为车辆规划路线提供参考信息,帮助自动驾驶车辆及时规划行驶路线,从而能够提高地形检测的实用性。
具体实施过程中,车载处理模块先基于当前时刻的地面三维点云和地面三维点云的历史数据生成完整的地面三维点云,然后通过完整的地面三维点云和地面材质分割图像进行静态的环境重建,得到地面三维场景。
本实施例中,静态的环境重建是指:将空间划分为很多体元,每个体元有8个体素点,构成一个小包围盒。遍历区域中的所有体元,根据体元内部是否有点云数据点,分为实体元,虚体元,边界体元。对于边界体元,根据建立好的体元配置的三角形表确定该体元的三角形片。将所有的体元中三角形片组合起来,形成重建的三角网格模型。
需要说明的是,本实施例所述的静态的环境重建可采用现有其他的成熟手段实现,具体过程这里不再赘述。
实施例三:
本实施例中公开了一种可读存储介质。
一种可读存储介质,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现本发明的用于自动驾驶汽车的地形检测方法的步骤。可读存储介质可以是U盘或计算机等具有可读存储功能的设备。
最后需要说明的是,以上实施例仅用以说明本发明的技术方案而非限制技术方案,本领域的普通技术人员应当理解,那些对本发明的技术方案进行修改或者等同替换,而不脱离本技术方案的宗旨和范围,均应涵盖在本发明的权利要求范围当中。
Claims (28)
1.用于自动驾驶汽车的地形检测方法,其特征在于,包括以下步骤:
S1:从目标车辆的多个角度获取地面的图像数据和三维点云数据;
S2:通过目标车辆各个角度的图像数据结合航迹数据计算车身运动姿态;
S3:对各个角度的三维点云数据进行点云筛选,生成对应的预处理点云数据;
S4:通过目标车辆的车身运动姿态对各个角度的预处理点云数据进行拼接,生成地面三维点云;
S5:对各个角度的图像数据进行材质识别和分割,得到地面材质分割图像;
S6:基于地面三维点云和地面材质分割图像进行环境重建,生成地面三维场景。
2.如权利要求1所述的用于自动驾驶汽车的地形检测方法,其特征在于,还包括:
S7:基于地面材质分割图像提取可通行区域和障碍物信息,进而通过路径规划算法计算可通行的线路作为避障行驶路径。
3.如权利要求1所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S2中,具体包括如下步骤:
S201:对各个角度的图像数据进行特征提取,得到对应的图像特征点;
S202:通过图像特征点和目标车辆的航迹数据,结合视觉里程计算法估计相机位姿;
S203:通过预设的外参矩阵将相机位姿转换为对应的车身位姿;
S204:对各个角度的车身位姿态进行融合,生成目标车辆的车身运动姿态。
4.如权利要求3所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S204中,通过卡尔曼滤波器对融合后的车身位姿态进行滤波处理。
5.如权利要求1所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S3中,具体包括如下步骤:
S301:对各个角度的图像数据进行语义分割,得到对应的图像语义信息;
S302:对各个角度的三维点云数据进行语义分割,得到对应的点云语义信息;
S303:将图像语义信息与点云语义信息进行映射,获得每个点云的实际语义信息;
S304:基于点云的实际语义信息进行点云的筛选、删除和填充,得到对应的预处理点云数据。
6.如权利要求5所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S302中,通过对三维点云数据进行逐点预测、点聚合和点集聚合的方式完成语义分割。
7.如权利要求5所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S303中,通过将图像语义信息和点云语义信息对应的外参矩阵和内参矩阵进行级联的方式, 实现图像语义信息到点云语义信息的映射。
8.如权利要求5所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S304中,通过点云补洞算法实现点云的筛选、删除和填充。
9.如权利要求1所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S4中,具体包括如下步骤:
S401:将各个角度的预处理点云数据转换到同一坐标系下;
S402:从预处理点云数据中提取点云特征点对各个角度的预处理点云数据进行配准;
S403:基于车身运动姿态计算对应的变换矩阵,通过变换矩阵对配准后的预处理点云数据进行拼接,生成地面三维点云。
10.如权利要求9所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S401中,通过目标车辆在世界坐标系下的位姿变换矩阵和相机外参矩阵级联获得当前相机坐标系到世界坐标系下的变换矩阵,进而通过变换矩阵将预处理点云数据投影到世界坐标系下。
11.如权利要求9所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S402中,通过正态分布变换算法对预处理点云数据进行配准。
12.如权利要求9所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S403中,通过半径滤波算法对拼接后的预处理点云数据进行滤波平滑处理。
13.如权利要求1所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S5中,将图像数据输入经过训练的材质识别模型中进行材质识别和分类,并将输出的预测语义分割图像作为地面材质分割图像。
14.如权利要求13所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S5中,选用深度网络模型作为材质识别模型;
通过如下步骤训练深度网络模型:
S501:构建训练数据集,训练数据集中包括人工标注了地面材质的训练图像;
S502:将训练图像输入深度网络模型中,输出对应的预测语义分割图像;
S503:通过预测语义分割图像结合损失函数对深度网络模型进行监督训练;
S504:重复步骤S502至S503,直至深度网络模型收敛。
15.如权利要求14所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S503中,损失函数为Focal loss、IOUloss和MM-SSIM之和组成的混合损失函数。
16.如权利要求14所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S501中,地面材质的类型包括草地、砂石地、水面、雪地、砖石和道路。
17.如权利要求1所述的用于自动驾驶汽车的地形检测方法,其特征在于:步骤S6中,先基于当前时刻的地面三维点云和地面三维点云的历史数据生成完整的地面三维点云,然后通过完整的地面三维点云和地面材质分割图像进行静态的环境重建,得到地面三维场景。
18.用于自动驾驶汽车的地形检测系统,其特征在于:基于权利要求1中所述的用于自动驾驶汽车的地形检测方法实施,包括:
多个三维视觉采集模块,安装于目标车辆上,用于从多个角度获取地面的图像数据和三维点云数据;三维视觉采集模块包括用于采集图像数据的颜色系统相机、用于采集三维点云数据的三维深度相机,以及用于对图像数据进行预处理的边缘计算模块;
车载处理模块,用于通过各个角度的图像数据结合目标车辆的航迹数据,计算目标车辆的车身运动姿态;其次对三维点云数据进行点云筛选,生成对应的预处理点云数据;再通过目标车辆的车身运动姿态结合三维深度相机的外部参数对各个角度的预处理点云数据进行拼接,生成地面三维点云;然后基于各个角度的图像数据进行材质识别和分类,得到地面材质分割图像;最后基于地面三维点云和地面材质分割图像进行环境重建,生成对应的地面三维场景。
19.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:通过如下步骤修正三维深度相机的外部参数:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
对图像特征点进行特征匹配,获得各个角度之间的位姿转换关系;
基于各个角度之间的位姿转换关系结合目标车辆的车身运动姿态修正三维深度相机的外部参数。
20.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:至少包括安装于目标车辆四周的六个三维视觉采集模块,目标车辆的前部和后部各装有一个三维视觉采集模块,目标车辆的车身左右各装有两个三维视觉采集模块。
21.如权利要求20所述的用于自动驾驶汽车的地形检测系统,其特征在于:各个三维深度相机组合形成的探测范围能覆盖目标车辆的四周,且各个三维视觉采集模块的探测范围无缝衔接。
22.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:车载处理模块通过如下步骤计算车身运动姿态:
对各个角度的图像数据进行特征提取,得到对应的图像特征点;
通过图像特征点和目标车辆的航迹数据,结合视觉里程计算法估计相机位姿;
通过预设的外参矩阵将相机位姿转换为对应的车身位姿;
对各个角度的车身位姿态进行融合,生成目标车辆的车身运动姿态。
23.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:车载处理模块通过如下步骤生成预处理点云数据:
对各个角度的图像数据进行语义分割,得到对应的图像语义信息;
对各个角度的三维点云数据进行语义分割,得到对应的点云语义信息;
将图像语义信息与点云语义信息进行映射,获得每个点云的实际语义信息;
基于点云的实际语义信息进行点云的筛选、删除和填充,得到对应的预处理点云数据。
24.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:车载处理模块通过如下步骤生成地面三维点云:
将各个角度的预处理点云数据转换到同一坐标系下;
从预处理点云数据中提取点云特征点对各个角度的预处理点云数据进行配准;
基于车身运动姿态计算对应的变换矩阵,通过变换矩阵对配准后的预处理点云数据进行拼接,生成地面三维点云。
25.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:车载处理模块将图像数据输入经过训练的材质识别模型中进行材质识别和分类,并将输出的预测语义分割图像作为地面材质分割图像。
26.如权利要求25所述的用于自动驾驶汽车的地形检测系统,其特征在于:选用深度网络模型作为材质识别模型;
通过如下步骤训练深度网络模型:
构建训练数据集,训练数据集中包括人工标注了地面材质的训练图像;
将训练图像输入深度网络模型中,输出对应的预测语义分割图像;
通过语义分割图像结合损失函数对深度网络模型进行监督训练;
重复训练,直至深度网络模型收敛。
27.如权利要求18所述的用于自动驾驶汽车的地形检测系统,其特征在于:车载处理模块先基于当前时刻的地面三维点云和地面三维点云的历史数据生成完整的地面三维点云,然后通过完整的地面三维点云和地面材质分割图像进行静态的环境重建,得到地面三维场景。
28.一种可读存储介质,其特征在于,其上存储有计算机管理类程序,所述计算机管理类程序被处理器执行时实现如权利要求1-17任一项所述的用于自动驾驶汽车的地形检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210582679.4A CN114842438B (zh) | 2022-05-26 | 2022-05-26 | 用于自动驾驶汽车的地形检测方法、系统及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210582679.4A CN114842438B (zh) | 2022-05-26 | 2022-05-26 | 用于自动驾驶汽车的地形检测方法、系统及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114842438A CN114842438A (zh) | 2022-08-02 |
CN114842438B true CN114842438B (zh) | 2024-06-14 |
Family
ID=82571943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210582679.4A Active CN114842438B (zh) | 2022-05-26 | 2022-05-26 | 用于自动驾驶汽车的地形检测方法、系统及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114842438B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115179920B (zh) * | 2022-09-07 | 2023-01-17 | 北京中科慧眼科技有限公司 | 一种基于越野场景的车辆行驶系统调节方法和系统 |
CN115438430B (zh) * | 2022-11-08 | 2023-01-24 | 上海伯镭智能科技有限公司 | 一种矿区车辆行驶稳定性预测方法和装置 |
CN115661395B (zh) * | 2022-12-27 | 2023-04-11 | 安徽蔚来智驾科技有限公司 | 车位建图方法、车辆及存储介质 |
TWI831552B (zh) * | 2022-12-30 | 2024-02-01 | 鴻海精密工業股份有限公司 | 圖像識別模型訓練方法、圖像深度識別方法及相關設備 |
CN115861561B (zh) * | 2023-02-24 | 2023-05-30 | 航天宏图信息技术股份有限公司 | 一种基于语义约束的等高线生成方法和装置 |
CN115973131B (zh) * | 2023-03-20 | 2023-06-13 | 上海伯镭智能科技有限公司 | 一种矿区无人驾驶车辆预防翻车方法和相关装置 |
CN116778101B (zh) * | 2023-06-26 | 2024-04-09 | 北京道仪数慧科技有限公司 | 基于营运载具的地图生成方法及系统 |
CN117029804B (zh) * | 2023-08-07 | 2024-04-26 | 自然资源部重庆测绘院 | 一种基于车辆定位信息的矿区地形自动更新方法 |
CN117496464B (zh) * | 2023-10-23 | 2024-05-24 | 广东灵锶智能科技有限公司 | 一种足式机器人地面探测方法及装置 |
CN117115366B (zh) * | 2023-10-25 | 2024-02-13 | 中国科学院自动化研究所 | 基于无人系统三维感知的环境模型重建方法、系统及设备 |
CN117152399A (zh) * | 2023-10-30 | 2023-12-01 | 长沙能川信息科技有限公司 | 基于变电站的模型制作方法、装置、设备和存储介质 |
CN117197019A (zh) * | 2023-11-07 | 2023-12-08 | 山东商业职业技术学院 | 一种车辆三维点云图像融合方法及系统 |
CN117252996B (zh) * | 2023-11-20 | 2024-05-10 | 中国船舶集团有限公司第七〇七研究所 | 一种特种车辆在船舱环境下的数据扩充系统及方法 |
CN118429563B (zh) * | 2024-07-02 | 2024-09-27 | 万联易达物流科技有限公司 | 一种车辆三维地图道路的高程匹配方法及系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6529463B2 (ja) * | 2016-06-14 | 2019-06-12 | 日本電信電話株式会社 | 道路構造化装置、道路構造化方法、及び道路構造化プログラム |
US11592566B2 (en) * | 2019-08-15 | 2023-02-28 | Volvo Car Corporation | Vehicle systems and methods utilizing LIDAR data for road condition estimation |
CN113569778A (zh) * | 2021-08-03 | 2021-10-29 | 清华大学 | 基于多模态数据融合的路面湿滑区域检测及预警方法 |
-
2022
- 2022-05-26 CN CN202210582679.4A patent/CN114842438B/zh active Active
Non-Patent Citations (2)
Title |
---|
Road Surface Reconstruction by Stereo Vision;Hauke Brunken等;《 PFG–Journal of Photogrammetry, Remote Sensing and Geoinformation Science》;20201118;第88卷;433-448 * |
结合道路结构化特征的语义SLAM算法;李琳辉等;《哈尔滨工业大学学报》;20210127;第53卷(第02期);175-183 * |
Also Published As
Publication number | Publication date |
---|---|
CN114842438A (zh) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114842438B (zh) | 用于自动驾驶汽车的地形检测方法、系统及可读存储介质 | |
US11691648B2 (en) | Drivable surface identification techniques | |
CN111551958B (zh) | 一种面向矿区无人驾驶的高精地图制作方法 | |
CN112396650B (zh) | 一种基于图像和激光雷达融合的目标测距系统及方法 | |
CN105825173B (zh) | 通用道路和车道检测系统与方法 | |
Zhao et al. | On-road vehicle trajectory collection and scene-based lane change analysis: Part i | |
CN110648389A (zh) | 基于无人机和边缘车辆协同的城市街景3d重建方法和系统 | |
WO2018055378A1 (en) | Autonomous route determination | |
CN115049700A (zh) | 一种目标检测方法及装置 | |
CN110197173B (zh) | 一种基于双目视觉的路沿检测方法 | |
CN114325634A (zh) | 一种基于激光雷达的高鲁棒性野外环境下可通行区域提取方法 | |
CN117237919A (zh) | 跨模态监督学习下多传感器融合检测的卡车智驾感知方法 | |
CN116597122A (zh) | 数据标注方法、装置、电子设备及存储介质 | |
CN117576652A (zh) | 道路对象的识别方法、装置和存储介质及电子设备 | |
KR102618680B1 (ko) | 영상과 라이다를 이용한 실시간 3차원 물체 인식 및 추적하는 시스템 | |
Giosan et al. | Superpixel-based obstacle segmentation from dense stereo urban traffic scenarios using intensity, depth and optical flow information | |
Hu et al. | A novel lidar inertial odometry with moving object detection for dynamic scenes | |
Na et al. | Drivable space expansion from the ground base for complex structured roads | |
Ho et al. | Localization on freeways using the horizon line signature | |
Huang et al. | A coarse-to-fine LiDar-based SLAM with dynamic object removal in dense urban areas | |
Schomerus et al. | Camera-based lane border detection in arbitrarily structured environments | |
Velat et al. | Vision based vehicle localization for autonomous navigation | |
Zhang | Photogrammetric point clouds: quality assessment, filtering, and change detection | |
CN112020722A (zh) | 基于三维传感器数据识别路肩 | |
Kühner et al. | Automatic generation of training data for image classification of road scenes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |