一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

车道线的检测方法、装置、设备和计算机可读存储介质与流程

2022-06-05 08:36:27 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种车道线的检测方法、装置、设备和计算机可读存储介质。


背景技术:

2.随着人工智能的快速发展,使得自动驾驶成为可能。为了保证自动驾驶车辆行驶的安全性,自动驾驶车辆通常需要具有车道线检测的功能,准确地检测车道线是车道偏离预警、车道保持、变道等功能的重要前提。
3.现有技术中车道线的检测方案,是通过对输入图像进行语义分割(对像素进行二分类,判断像素属于车道线还是背景),将像素通过嵌入向量表示,根据语义分割结果和嵌入向量进行聚类,得到车道线。
4.然而,上述现有技术不能适应于复杂的车道线的场景,例如,大曲率弯道和岔道等,降低了车道线检测的准确性。


技术实现要素:

5.本技术实施例提供一种车道线的检测方法、装置、设备和计算机可读存储介质,提高了车道线检测的准确性。
6.本技术实施例的技术方案是这样实现的:
7.第一方面,本技术实施例提供一种车道线的检测方法,所述方法包括:获取行驶场景下的前视图;对所述前视图进行多尺度特征提取,得到前视图特征;利用预设的车道线检测模型,对所述前视图特征进行车道线预测,得到多组特征点的偏移量、所述多组特征点的可见度和所述多组特征点的置信度;其中,各组特征点包括多个纵向距离不同的特征点,一组特征点的偏移量表征多个特征点与其对应的一个预设的锚点线之间的横向偏移距离;根据所述多组特征点的偏移量、所述多组特征点的可见度、所述多组特征点的置信度,以及多个预设的锚点线,确定目标车道线;其中,所述多个预设的锚点线包括多组不同起始点的锚点线,相同起始点的锚点线的倾斜角度不同。
8.第二方面,本技术实施例提供一种车道线的检测装置,所述装置包括:获取模块,用于获取行驶场景下的前视图;提取模块,用于对所述前视图进行多尺度特征提取,得到前视图特征;预测模块,用于利用预设的车道线检测模型,对所述前视图特征进行车道线预测,得到多组特征点的偏移量、所述多组特征点的可见度和所述多组特征点的置信度;其中,各组特征点包括多个纵向距离不同的特征点,一组特征点的偏移量表征多个特征点与其对应的一个预设的锚点线之间的横向偏移距离;确定模块,用于根据所述多组特征点的偏移量、所述多组特征点的可见度、所述多组特征点的置信度,以及多个预设的锚点线,确定目标车道线;其中,所述多个预设的锚点线包括多组不同起始点的锚点线,相同起始点的锚点线的倾斜角度不同。
9.第三方面,本技术实施例提供一种车道线的检测设备,所述设备包括存储器,用于
存储可执行指令,处理器,用于执行所述存储器中存储的可执行指令时,实现上述车道线的检测方法。
10.第四方面,本技术实施例提供一种计算机可读存储介质,其上存储有可执行指令,用于被处理器执行时,实现上述车道线的检测方法。
11.本技术实施例提供了一种车道线的检测方法、装置、设备和计算机可读存储介质。根据本技术实施例提供的方案,获取行驶场景下的前视图;对前视图进行多尺度特征提取,得到前视图特征;利用预设的车道线检测模型,对前视图特征进行车道线预测,得到多组特征点的偏移量、多组特征点的可见度和多组特征点的置信度;其中,各组特征点包括多个纵向距离不同的特征点,一组特征点的偏移量表征多个特征点与其对应的一个预设的锚点线之间的横向偏移距离;根据多组特征点的偏移量、多组特征点的可见度、多组特征点的置信度,以及多个预设的锚点线,确定目标车道线;其中,多个预设的锚点线包括多组不同起始点的锚点线,相同起始点的锚点线的倾斜角度不同。通过设置适当密集的、多倾斜角度的锚点线,根据偏移量、可见度、置信度和锚点线方式确定车道线,能够更好的适应大曲率弯道,提高了车道线检测的准确性。
附图说明
12.图1为本技术实施例提供的一种车道线的检测方法的可选的流程图;
13.图2为本技术实施例提供的一种锚点线的可选的示意图;
14.图3为本技术实施例提供的另一种车道线的检测方法的可选的流程图;
15.图4为本技术实施例提供的一种前视图下二维偏移量的示例性的示意图;
16.图5为本技术实施例提供的一种鸟瞰图下三维偏移量的示例性的示意图;
17.图6为本技术实施例提供的一种投影变换的可选的示意图;
18.图7为本技术实施例提供的一种车道线检测模型训练过程的可选的流程图;
19.图8为本技术实施例提供的一种车道线的检测装置的结构示意图;
20.图9为本技术实施例提供的一种车道线的检测设备的结构示意图。
具体实施方式
21.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。应当理解的是,此处所描述的一些实施例仅仅用以解释本技术的技术方案,并不用于限定本技术的技术范围。
22.为便于理解本方案,在对本技术实施例进行说明之前,对本技术实施例中的相关技术进行说明。
23.相关技术中,基于单目相机的车道线检测方法中还存在一定的局限性,车道线检测方法基于手动设计的特征提取器,对提取的特征利用霍夫变换、随机采样一致性等算法来拟合车道线,检测结果较差。对远距离的车道线估计误差较大,且不能适用于复杂的车道线的场景,例如,大曲率弯道、上下坡、岔道等复杂的交通场景,降低了车道线检测的准确性。
24.本技术实施例提供的车道线的检测方法,可以应用于自动驾驶场景,作为自动驾驶的一个基础任务,能够为车辆的定位、规划、控制等上游任务提供依据,通过提高车道线
的检测精度、检测效率对自动驾驶有着重要的意义。
25.本技术实施例提供一种车道线的检测方法,如图1所示,图1为本技术实施例提供的一种车道线的检测方法的可选的流程图,车道线的检测方法包括以下步骤:
26.s101、获取行驶场景下的前视图。
27.在一些实施例中,上述图1中s101可以包括s1011和s1012。
28.s1011、获取行驶场景下采集的前视初始图。
29.s1012、对前视初始图进行预处理,得到前视图,预处理包括剪裁、缩放和像素值归一化中的至少一项。
30.在本技术实施例中,通过对前视初始图进行剪裁和缩放,使得剪裁和缩放后的图像尺寸能适用于预设的车道线预测模型。前视初始图是rgb图像,rgb表示红(red)、绿(green)、蓝(blue)三个通道的颜色,通过进行像素值归一的处理,使得前视图中的像素在预设范围内,便于后续对前视图进行特征提取、网络回归等处理。通过对前视初始图进行预处理,提高了前视图的准确性。
31.s102、对前视图进行多尺度特征提取,得到前视图特征。
32.在一些实施例中,前视图特征包括多种不同分辨率的图像特征,上述多种不同分辨率的图像特征可以通过以下方式获得。对前视图进行多种比例的下采样,然后对下采样后的前视图进行特征提取,得到多种不同分辨率的图像特征。
33.在本技术实施例中,前视图是二维图像,对前视图进行多种比例的下采样(subsampled),也可以称为缩小图像或降采样(down sampled)。示例性的,下采样倍数为2的n次方,例如,下采样倍数是2、4、8、16、32、64等。下采样倍数小,浅层特征,感受野小,分辨率高,适合处理小目标;下采样倍数大,深层特征,感受野大,分辨率低,适合处理大目标。例如,1/32大小的特征图(深层)下采样倍数高,感受野大,适合检测大目标的物体,1/8的特征图(较浅层)具有较小的感受野,适合检测小目标的物体。
34.在本技术实施例中,可以通过目标检测算法对前视图进行不同倍数的下采样,得到下采样后的前视图,然后对下采样后的前视图进行特征提取,得到多种不同分辨率的图像特征。目标检测算法包括但不限于fpn(feature pyramid networks for object detection)、ssd(single shot multibox detector)、yolo(you only look once)、faster r-cnn等。对此本技术实施例不做限制。
35.在本技术实施例中,将前视图进行不同倍数的下采样之后,输入多尺度模型,得到多种不同分辨率的图像特征。多尺度模型的结构可以是图像金字塔、特征金字塔或高斯金字塔等,示例性的,多尺度模型可以是卷积神经网络(convolutional neural networks,cnn)的骨干网络,包括但不限于resnet50、resnet101、resnet152和res2net等。对此本技术实施例不做限制。
36.在本技术实施例中,通过对前视图进行下采样,得到下采样后的前视图,然后对下采样后的前视图进行特征提取,得到多尺度特征,将多尺度特征作为前视图特征。前视图特征包括不同分辨率的特征,提高了特征丰富性和全面性。
37.s103、利用预设的车道线检测模型,对前视图特征进行车道线预测,得到多组特征点的偏移量、多组特征点的可见度和多组特征点的置信度;其中,各组特征点包括多个纵向距离不同的特征点,一组特征点的偏移量表征多个特征点与其对应的一个预设的锚点线之
间的横向偏移距离。
38.在本技术实施例中,可以通过预设的车道线检测模型进行多组偏移量的预测。预设的车道线检测模型可以理解为机器学习模型,可以是任意适当的、能够用于对前视图特征进行偏移量预测的神经网络(neural networks,nn)模型,包括但不限于:lenet模型、alexnet模型、googlenet模型、resnets模型、vgg模型、gan网络、r-cnn网络和循环神经网络(recurrent neural network,rnn)等,对此本技术实施例不做限制。
39.在本技术实施例中,特征点可以理解为车道线上的点,特征点的偏移量表征锚点线。每组特征点包括多个特征点,这些多个特征点分别位于不同的高度,高度是相对于前视图(或者前视图对应的鸟瞰图)的底部来说的。也就是说,这些特征点的纵向距离不同,可以是均匀选取的、等间距的特征点,用于从不同的高度对偏移量进行预测,从而根据均匀的偏移量绘制出一条均匀的车道线。特征点的纵向距离可以根据实际需求进行适当设置,对此本技术实施例不做限制。一组特征点对应一个预设的锚点线,多组特征点的数量与预设的锚点线的数量一致。由于特征点的高度是确定的,因此每组特征点的偏移量可以表征每组特征点中各个特征点距离其对应的锚点线的横向偏移距离。
40.在本技术实施例中,可见度表征特征点的可见值,例如,以0-1表示可见值,可见值越大,说明特征点越可信,越容易被考虑。可见值越小,说明特征点可能在车道线的尽头,例如边缘、前视图中的天空中,这些特征点也有可能是干扰信息,不需要考虑这些点。一组特征点对应一个置信度,置信度表征各组特征点对应的车道线的类别的置信度。
41.s104、根据多组特征点的偏移量、多组特征点的可见度、多组特征点的置信度,以及多个预设的锚点线,确定目标车道线;其中,多个预设的锚点线包括多组不同起始点的锚点线,相同起始点的锚点线的倾斜角度不同。
42.在本技术实施例中,多个预设的锚点线是按照一定规则在平面上的设置的多个射线,锚点线包括三维锚点线和二维锚点线,三维锚点线和二维锚点线均是在平面上。以鸟瞰图视角下的三维锚点线为例进行说明。在鸟瞰图底部设置数个起始点,在每个起始点上以多个不同的角度向上延伸出射线,每个角度均构成一组平行的三维锚点线。示例性的,如图2所示,图2为本技术实施例提供的一种锚点线的可选的示意图,图2中示出了4个起始点,每个起始点以5个不同角度向上延伸出射线,从而得到20个三维锚点线,相同角度的三维锚点线之间相互平行,图2中有4组平行的三维锚点线,每组平行的三维锚点线包括5个三维锚点线。倾斜的三维锚点线更贴近弯曲的车道线情况,通过设置不同角度的锚点线,可以减小大曲率弯道下模型的预测难度,并提高检测召回率。在得到鸟瞰图视角下的三维锚点线之后,根据数据样本集中的平均相机高度与俯仰角,将上述鸟瞰图视角下的三维锚点线投影至前视图中,从而得到前视图视角下的二维锚点线。鸟瞰图的车道线预测对三维锚点线进行回归,前视图的车道线预测对二维锚点线进行回归。通过投影关系匹配统一的锚点线,可以使得二维车道线检测分支与三维车道线预测分支关注统一的区域特征,帮助网络收敛。
43.可以理解的是,在实际场景中,可以设置更多的起始点和更多倾斜角度的锚点线,本技术实施例对于起始点的数量和每个起始点的锚点线的数量不做限制,通过设置密集的、多角度的锚点线,能够使得车道线检测方案更好的适应大曲率弯道和岔道的场景,提高车道线检测的准确性。
44.需要说明的是,在本技术实施例中,也可以先设置前视图视角下的二维锚点线,然
后通过坐标投影变换,得到鸟瞰图视角下三维锚点线,对此本技术实施例不做限制,只要是二维锚点线和三维锚点线之间的存在对应关系即可。
45.根据本技术实施例提供的方案,获取行驶场景下的前视图;对前视图进行多尺度特征提取,得到前视图特征;利用预设的车道线检测模型,对前视图特征进行车道线预测,得到多组特征点的偏移量、多组特征点的可见度和多组特征点的置信度;其中,各组特征点包括多个纵向距离不同的特征点,一组特征点的偏移量表征多个特征点与其对应的一个预设的锚点线之间的横向偏移距离;根据多组特征点的偏移量、多组特征点的可见度、多组特征点的置信度,以及多个预设的锚点线,确定目标车道线;其中,多个预设的锚点线包括多组不同起始点的锚点线,相同起始点的锚点线的倾斜角度不同。通过设置适当密集的、多倾斜角度的锚点线,根据偏移量、可见度、置信度和锚点线方式确定车道线,能够更好的适应大曲率弯道,提高了车道线检测的准确性。
46.在一些实施例中,上述图1中s104还可以包括:s1041-s1044。
47.s1041、根据各组特征点中各个特征点的可见度,在各组特征点中确定目标特征点,目标特征点的可见度用于反映车道线的长度。
48.在本技术实施例中,特征点的可见度表征了该特征点被选中的概率,可见度越小,例如,车道线的尽头或边缘,可见值为0,特征点越不被选中,因此,可见度决定了车道线的长度。在各组特征点中确定目标特征点,目标点的数量为多个。
49.s1042、根据各组特征点中目标特征点的偏移量,以及多个预设的锚点线的位置信息,确定多个车道线;其中,一组特征点对应一个车道线。
50.在本技术实施例中,特征点的偏移量是特征点与其对应的预设的锚点线之间的横向偏移距离,将预设的锚点线的位置坐标加上偏移量,就可以得到车道线的位置坐标。偏移量是自然数,包括正值、负值和0,因此,对于大曲率弯道的交通场景来说,通过偏移量和预设锚点线的方式,可以得到大曲率弯道的车道线。对于岔道的交通场景来说,包括多条相互影响的车道线,通过多个预设的锚点线,一组特征点对应于一个预设的锚点线,从而可以得到多条交叉的车道线。提高了车道线预测的准确性。
51.s1043、将各组特征点的置信度,作为各组特征点对应的车道线的置信度,从而得到多个车道线的置信度,车道线的置信度反映车道线类别的置信度。
52.在本技术实施例中,一组特征点对应一个预设的锚点线,一组特征点对应一个置信度,将该组特征点的置信度作为作为该车道线的置信度。
53.s1044、根据多个车道线的置信度,在多个车道线中确定目标车道线。
54.在本技术实施例中,根据特征点的可见度确定车道线的尽头和边缘,根据偏移量和预设的锚点线的位置坐标,确定车道线的位置坐标。然后根据车道线的置信度确定目标车道线,提高车道线的准确性。
55.在一些实施例中,上述s1044还可以包括以下两个示例。第一个示例,若至少两个车道线的置信度均在预设范围内,且至少两个车道线之间的距离位于预设距离,则将至少两个车道线中置信度最大值对应的车道线作为目标车道线。第二个示例,若至少两个车道线的置信度均在预设范围内,且至少两个车道线之间的距离超过预设距离,则将至少两个车道线作为目标车道线。
56.在本技术实施例中,以两个车道线为例进行说明,根据两个车道线的位置坐标确
定两个车道线的距离。若两个车道线的置信度都很大(即在预设范围),且两个车道线距离比较近(即,位于预设距离),说明是一条车道线,保留一个车道线即可。若两个车道线的置信度都很大(即在预设范围),但是两个车道线离得比较远,说明是两个不同的车道线,那么这两个车道线都保留。
57.需要说明的是,预设范围可以是由本领域技术人员根据实际需求进行适当设置,只要能反映车道线的置信度比较高即可,对此本技术实施例不做限制。预设距离可以是由本领域技术人员根据实际需求进行适当设置,只要能区分出车道线之间是否接近即可,对此本技术实施例不做限制。
58.在本技术实施例中,通过预设范围和预设距离的比较,在多个车道线中确定目标车道线,目标车道线的数量可以是一个或多个,提高了车道线检测的准确性。
59.在一些实施例中,目标车道线包括前视图的二维车道线和前视图对应的鸟瞰图的三维车道线,多个预设的锚点线包括多个预设的三维锚点线,以及将多个预设的三维锚点线通过投影得到的多个二维锚点线,多组特征点的偏移量包括多组特征点在图像坐标系中的二维偏移量和多组特征点在绝对坐标系中的三维偏移量。
60.在本技术实施例中,相机成像的过程是三维空间坐标到二维图像坐标的变换,这是一个投影过程。相机矩阵(camera matrix)是建立三维到二维的投影关系。相机矩阵包括内参矩阵和外参矩阵,内参矩阵(intrinsic matrix)与相机有关,包括焦距、相对于成像平面的主点坐标位置(中心点位置)、坐标轴倾斜参数和畸变参数,内参矩阵反应了相机自身的属性,各个相机的内参矩阵是不一样的。外参矩阵(extrinsic matrix)取决于相机在世界坐标系中的位置,包括旋转矩阵和平移矩阵,旋转矩阵和平移矩阵共同描述了如何把点从世界坐标系转换到相机坐标系。旋转矩阵描述了世界坐标系的坐标轴相对于相机坐标系的坐标轴的方向,平移矩阵描述了在相机坐标系下,空间原点的位置。
61.在本技术实施例中,相机中有四个坐标系,分别为世界坐标系(world),相机坐标系(camera),图像坐标系(image),像素坐标系(pixel),成像过程是世界坐标系-相机坐标系-图像坐标系-像素坐标系的过程。外参矩阵是世界坐标系在相机坐标系下的描述(或者位置姿态),可以理解为用于世界坐标系与相机坐标系的相互转换,内参矩阵用于相机坐标系到图像坐标系的相互转换,图像是以像素来衡量的,因此,还需要将图像坐标系转换为像素坐标系。
62.在本技术实施例中,从前视图到鸟瞰图的过程,是上述成像过程的逆过程,也就是根据内参矩阵和外参矩阵,将像素坐标系下的图像(像素级)转换为世界坐标系下的特征,从而完成前视图投影到鸟瞰图的过程。
63.在本技术实施例中,从三维锚点线到二维锚点线的过程,与上述成像过程一致,也就是根据内参矩阵和外参矩阵,将世界坐标系下三维锚点线的坐标转换为图像坐标系下的二维锚点线的坐标。
64.在一些实施例中,上述图1中s104还可以包括s201和s202,分别表示两种不同视角下车道线的交通场景。如图3所示,图3为本技术实施例提供的另一种车道线的检测方法的可选的流程图。
65.s201、根据多组特征点的二维偏移量和多个预设的二维锚点线,确定二维车道线。
66.在本技术实施例中,根据多组特征点的二维偏移量和多个预设的二维锚点线,确
定二维车道线的过程,可以参考上述s1041-s1044,对此本技术实施例不再赘述。通过特征点的可见度确定二维车道线的尽头和边缘,根据二维偏移量和预设的二维锚点线的位置坐标,确定二维车道线的位置坐标。然后根据二维车道线的置信度确定目标车道线,提高了二维车道线的准确性。
67.s202、根据多组特征点的三维偏移量和多个预设的三维锚点线,确定三维车道线。
68.在本技术实施例中,根据多组特征点的三维偏移量和多个预设的三维锚点线,确定三维车道线的过程,可以参考上述s1041-s1044,对此本技术实施例不再赘述。通过特征点的可见度确定三维车道线的尽头和边缘,根据三维偏移量和预设的三维锚点线的位置坐标,确定三维车道线的位置坐标。然后根据三维车道线的置信度确定目标车道线,提高了三维车道线的准确性。
69.相关技术的二维车道线的检测方法(例如,laneatt、condlanenet等),是基于地面为平面的假设,难以适用于带坡度地面的驾驶场景。此外,二维车道线的检测结果不能直接使用,还需要一定的后处理过程。因此,对于自动驾驶来说,二维车道线的检测是不够的,具有一定的局限性,并且,基于锚点线(anchor line)的二维车道线检测算法,设置了上千条非常密集的锚点线,过于密集,非常消耗计算量,且难以训练。然而。相关技术中三维车道线检测方法(例如,3dlanenet、gen-lanenet等),是基于锚点线(anchor-based)的车道线的检测方法,仅设置一组平行的锚点线,限制了车道形状的自由度,不能适应复杂拓扑形状。对于大曲率弯道、上下坡等场景的检测效果较差,精度还有较大的提升空间,且泛化性不强,不能很好地适应不同的交通场景。
70.在本技术实施例中,以统一的框架,可以同时输出二维车道线检测结果和三维车道线检测结果,相辅相成。通过适当设置的密集的、多角度(多斜率)的锚点线,使得本技术实施例提供的车道线检测方法,能够较好地应对大曲率弯道、岔道等场景。并且,本技术实施例提供的车道线检测方法,是对偏移量的回归,不依赖于图像的清晰度,具有较好的泛化能力,在极端天气、夜间等交通场景也具有较好的鲁棒性。
71.在一些实施例中,预设的车道线检测模型包括预设的二维车道线检测模型和预设的三维车道线检测模型。上述图3的s201中的多组特征点的二维偏移量可以通过以下方式得到。利用预设的二维车道线检测模型,对前视图特征进行车道线预测,得到多组特征点的二维偏移量。
72.示例性的,如图4所示,图4为本技术实施例提供的一种前视图下二维偏移量的示例性的示意图。图4中以8个特征点示出,8个特征点对应于一个锚点线,8个特征点等间距分布,8个特征点的纵向距离均不相同,图4中示出了其中一个特征点的纵向距离,特征点的纵向距离表示该特征点距离前视图的底部之间的距离,特征点的二维偏移量表示特征点与其对应的二维锚点线之间的距离。
73.在一些实施例中,上述图3的s202中的多组特征点的三维偏移量可以通过以下方式得到。利用预设的三维车道线检测模型和前视图特征进行车道线预测,得到多组三维特征点的偏移量。
74.示例性的,如图5所示,图5为本技术实施例提供的一种鸟瞰图下三维偏移量的示例性的示意图。图5中以13个特征点示出,13个特征点对应于一个锚点线,13个特征点等间距分布,13个特征点的纵向距离均不相同,图5中示出了其中一个特征点的纵向距离,特征
点的纵向距离表示该特征点距离鸟瞰图的底部之间的距离,特征点的三维偏移量表示特征点与其对应的三维锚点线之间的距离,其中,位于车道线两个端点的两个特征点的纵向距离为0。
75.在一些实施例中,可以通过以下方式得到多组三维特征点的偏移量。利用预设的编码器,在前视图上确定参考点,参考点与鸟瞰图上像素点对应;在前视图特征中,确定参考点预设范围内的图像特征;将参考点预设范围内的图像特征进行特征融合,得到参考点的融合特征;获取采集装置的内参矩阵和外参矩阵;根据内参矩阵和外参矩阵,对参考点的融合特征进行坐标投影转换,得到鸟瞰图特征,鸟瞰图特征包括与参考点对应的像素点的融合特征;利用预设的三维车道线检测模型,对鸟瞰图特征进行车道线预测,得到多组三维特征点的偏移量。
76.在本技术实施例中,参考点由相机的内参矩阵和外参矩阵得到,与逆透视变化类似。在逆透视变化方案中,假设是鸟瞰图对应的地面是水平的,相机的内参矩阵(例如,焦距、中心点位置),外参矩阵(例如,俯仰角、偏航角、滚转角、相机高度等)是已知的,其中,外参矩阵的旋转矩阵可以通过俯仰角、偏航角和滚转角确定,外参矩阵的平移矩阵可以通过相机高度确定。从图像坐标系出发,将前视图特征中的坐标乘以内参矩阵的逆矩阵得到相机坐标系下的坐标。将相机坐标系下的坐标乘以由外参矩阵的滚转角、偏航角(也可以称为转向角)和俯仰角得到的旋转矩阵,得到与假设参考平面平行的虚拟相机坐标系下的坐标。将虚拟相机坐标系下的坐标减去相机高度,得到以相机在地面的投影点为原点的世界坐标系下的坐标,完成坐标投影变换。
77.示例性的,如图6所示,图6为本技术实施例提供的一种投影变换的可选的示意图,图6中x是相机坐标系上的点,通过内参矩阵的逆矩阵转换,得到以c为原点的相机坐标系下的坐标(即与假设地平面平行的虚拟相机坐标系下的坐标)。为便于示出相机坐标系、虚拟相机坐标系和绝对坐标系之间的关系,图6中是以相机外参矩阵中的俯仰角(也可以称为转换角)为0进行示出。通过内参矩阵的逆矩阵,使得相机坐标系的x轴与参考平面(图6中平面π)的x轴平行,得到虚拟相机坐标系。然后,将虚拟相机坐标系下的坐标减去c点与平面π的高度差(即相机高度),从而得到以c点在平面π上的投影点x
π
为原点的世界坐标系下的坐标。通过以上步骤完成坐标投影变换。
78.在本技术实施例中,由于前视图上的像素点不仅包括表示前视图中地面上的像素点,还包括表示前视图中天空中的像素点,在对车道线进行检测时,不需要考虑天空中的像素点。因此,需要通过编码器先在前视图中确定出多个参考点,这些参考点与鸟瞰图视角下的像素点对应,然后,在每个参考点附近抽取前视图特征中的一定数量的特征通道,得到参考点预设范围内的图像特征。参考点预设范围内的图像特征经过一系列卷积层和神经元,进行特征融合,得到鸟瞰图特征的特征通道,结果上述坐标投影变换,从而完成从前视特征图往鸟瞰特征图的投影。
79.相关技术中,在确定鸟瞰图特征时,是将前视图经过坐标投影变换得到鸟瞰图,然后对鸟瞰图进行特征提取,从而得到鸟瞰图特征。然而通过坐标投影变换,会忽略掉前视图中与地面相关的特征,而且坐标投影变换是对像素点的变换,容易造成特征信息的丢失,降低了鸟瞰图特征的准确性。而在本技术实施例中,是在前视图特征中提取与鸟瞰图相关的特征,也就是以地面上的点为核心,首先从前视图特征中提取特征,并进行融合,提高了特
征的全局性,然后,将携带全局特征的像素点进行坐标投影变换,提高了鸟瞰图特征的准确性。
80.在本技术实施例中,引入deformable transformer结构,通过编码器将前视图视角的特征向量(即前视图特征)投影至鸟瞰图视角,得到鸟瞰图特征,相较于直接投影对应特征值的方法,提高了特征的准确性。
81.在一些实施例中,该车道线的检测方法还包括训练过程。训练过程包括:s301-s304。如图7所示,图7为本技术实施例提供的一种车道线检测模型训练过程的可选的流程图。
82.s301、获取图像样本。
83.s302、将图像样本对应的图像特征样本输入初始车道线检测模型,得到车道线预测结果。
84.s303、根据预设的损失函数和车道线预测结果,得到损失值。
85.s304、根据损失值对初始车道线检测模型进行持续训练,得到预设的车道线检测模型。
86.在本技术实施例中,采用预设的损失函数对初始车道线检测模型进行训练优化,计算损失值,根据损失值进行持续训练,直至达到训练终止条件,例如,训练次数达到预设次数,或者,损失值达到预设阈值等。
87.在本技术实施例中,预设的损失函数(loss function)可以由本领域技术人员根据实际需求进行设置,包括但不限于交并比值(diceloss)、平滑smooth l1损失函数和交叉熵损失函数等。
88.在本技术实施例中,整个框架支持高效的端到端训练,提高了车道线的检测效率。
89.在一些实施例中,上述图7中的s301可以包括:s3011-s3014。
90.s3011、获取前视图样本、前视图样本的多组二维标注特征点的偏移量、前视图样本对应的鸟瞰图样本,以及鸟瞰图样本的多组三维标注特征点的偏移量;其中,二维标注特征点的偏移量表征标注二维车道线与对应的二维锚点线之间的横向偏移距离;三维标注特征点的偏移量表征标注三维车道线与对应的三维锚点线之间的横向偏移距离,以及标注三维车道线与对应的三维锚点线之间的高度偏移。
91.s3012、根据前视图特征样本,以及鸟瞰图样本对应的鸟瞰图初始特征样本,确定前视图特征样本和鸟瞰图初始特征样本之间的对应关系。
92.s3013、将对应关系输入初始编码器,得到前视图样本上的参考点样本。
93.s3014、根据前视图样本上的参考点样本和前视图特征样本,确定鸟瞰图特征样本;其中,前视图样本、前视图样本的多组二维标注特征点的偏移量、鸟瞰图特征样本,以及多组三维标注特征点的偏移量作为图像样本。
94.在本技术实施例中,对编码器进行训练时,需要将前视特征图和鸟瞰特征图之间的坐标对应关系输入到deformable transformer的初始编码器。这种对应关系以参考点的形式给出。参考点由相机内外参得到,与逆透视变化类似。具体可参见上述坐标投影变换的描述,在此本技术实施例不做限制。
95.在本技术实施例中,鸟瞰图初始特征样本是对鸟瞰图样本进行特征提取得到的,鸟瞰图初始特征样本所包含的是地面上的像素点的图像特征,而前视图特征样本所包含的
是地面和天空上的像素点的图像特征,编码器的作用是根据特征之间的对应关系,在前视图样本中确定出与鸟瞰图样本中的像素点对应的像素点,即参考点。
96.在本技术实施例中,通过编码器在前视图样本上确定参考点样本,在每个参考点样本附近抽取前视图特征样本中的一定数量的特征通道,经过一系列卷积层和神经元,得到鸟瞰图特征样本的特征通道,结合上述坐标投影转换,得到鸟瞰图特征样本。训练完成后的编码器用于完成从前视图特征到鸟瞰图特征的投影,相较于直接投影对应特征值的方法,提高了特征的准确性。
97.在一些实施例中,初始车道线检测模型包括初始二维车道线检测模型、初始三维车道线检测模型和初始分割模型。上述图7中s302包括s3021和s3022。
98.s3021、将前视图特征样本输入初始二维车道线检测模型,得到多组预测二维特征点在图像坐标系中的偏移量、多组预测二维特征点的可见度和多组预测二维特征点的置信度。
99.示例性的,将前视图特征经过初始二维车道线检测模型,输出二维车道线检测结果。初始二维车道线检测模型针对前视图特征回归相应的车道线坐标、并对车道线类别进行分类。对于二维锚点线,每隔一定高度上的特征点,预测各组特征点中每个特征点相对二维锚点线的偏移量,以及各组特征点中每个特征点的可见度值,各组特征点的车道线类别的置信度。从而输出多组预测二维特征点在图像坐标系中的偏移量(也可以理解为二维特征点的像素坐标)、多组预测二维特征点的可见度和多组预测二维特征点的置信度。其中,二维坐标点的像素坐标、车道线类别和特征点的可见度,可以通过数据集真值分别计算损失,以进行监督训练。数据集真值包括各组二维标注特征点中各个二维标注特征点的偏移量、各组二维标注特征点中各个二维标注特征点的可见度,以及各组二维标注特征点的标注车道线类别。
100.s3022、将鸟瞰图特征样本输入初始三维车道线检测模型和初始分割模型,得到多组预测三维特征点在绝对坐标系中的偏移量、多组预测三维特征点的可见度、多组预测三维特征点的置信度,以及对象分割结果;其中,多组预测二维特征点在图像坐标系中的偏移量、多组预测二维特征点的可见度、多组预测二维特征点的置信度、多组预测三维特征点在绝对坐标系中的偏移量、多组预测三维特征点的可见度、多组预测三维特征点的置信度,以及对象分割结果为车道线预测结果。
101.示例性的,将上述通过deformable transformer的编码器生成的鸟瞰图特征输入初始三维车道线检测模型和初始分割模型,输出三维车道线的检测结果和分割结果。其中,分割模型仅是在训练中出现,是车道线检测的额外任务,是为了更好的训练车道线检测模型,输出的分割结果对训练是三维车道线检测模型起到辅助功能。三维车道线的检测结果包括(三维特征点在世界坐标系下的像素坐标和高度)、各个特征点的可见度和各组特征点的车道线类别置信度。与上述二维车道线检测分支类似,计算各输出的回归和分类损失,最终,总的损失函数包括二维车道线检测分支(包括分类损失、回归损失、可见度损失)与三维车道线检测分支(包括分类损失、回归损失、可见度损失、分割损失),整个框架可以进行高效的端到端监督训练,能够提高最终的检测结果的准确性。
102.需要说明的是,上述s3021和s3022之间的执行顺序不分先后,可以先执行s3022,再执行s3021;也可以同时执行s3021和s3022,对此本技术实施例不做限制。
103.在一些实施例中,损失值包括:二维损失值和三维损失值;上述图7中s303可以包括s3031和s3033。
104.s3031、根据多组预测二维特征点在图像坐标系中的偏移量、多组预测二维特征点的可见度、多组预测二维特征点的置信度,以及预设的二维损失函数,得到二维损失值;预设的二维损失函数包括车道线类别对应的多分类损失函数、偏移量对应的回归损失函数和可见度对应的二分类损失函数。
105.s3032、根据多组预测三维特征点在绝对坐标系中的偏移量、多组预测三维特征点的可见度、多组预测三维特征点的置信度、对象分割结果,以及预设的三维损失函数,得到三维损失值;预设的三维损失函数包括车道线类别对应的多分类损失函数、偏移量对应的回归损失函数,以及对象分割与可见度对应的二分类损失函数。
106.需要说明的是,上述s3031和s3032之间的执行顺序不分先后,可以先执行s3032,再执行s3031;也可以同时执行s3031和s3032,对此本技术实施例不做限制。
107.s3033、根据二维损失值和三维损失值,确定损失值。
108.在本技术实施例中,偏移量对应的回归损失函数可以是平滑smooth l1损失函数或平滑smooth l2损失函数,车道线类别对应的多分类损失函数可以是多分类交叉熵损失函数,可见度对应的二分类损失函数可以是二分类交叉熵损失函数,对象分割对应的二分类损失函数可以是二分类交叉熵损失函数。
109.在一些实施例中,上述图7中s304还可以通过以下方式实现。根据损失值对初始二维车道线检测模型、初始三维车道线检测模型和初始分割模型进行持续训练,得到预设的二维车道线检测模型和预设的三维车道线检测模型。
110.在一些实施例中,在执行上述图7中s304时,该方式还执行以下步骤。根据损失值对初始编码器同步进行持续训练,得到预设的编码器。
111.在本技术实施例中,在进行训练时,是对上述四个模型(初始二维车道线检测模型、初始三维车道线检测模型、初始分割模型和初始编码器)同时进行监督训练,从而实现高效的端到端监督训练。训练完成,得到二维车道线检测模型、三维车道线检测模型、分割模型和编码器,其中,在测试过程中不需要用到分割模型。
112.本技术实施例提供的车道线的检测方案可以同时输出二维车道线和三维车道线,具有更高的检测精度和召回率,且能够适用于大曲率弯道、上下坡、岔道等多种实际场景,具有更好的泛化性能和鲁棒性,对自动驾驶任务有较大帮助。
113.基于本技术实施例的车道线的检测方法,本技术实施例还提供一种车道线的检测装置,如图8所示,图8为本技术实施例提供的一种车道线的检测装置的结构示意图。该车道线的检测装置80包括:获取模块801,用于获取行驶场景下的前视图;提取模块802,用于对所述前视图进行多尺度特征提取,得到前视图特征;预测模块803,用于利用预设的车道线检测模型,对所述前视图特征进行车道线预测,得到多组特征点的偏移量、所述多组特征点的可见度和所述多组特征点的置信度;其中,各组特征点包括多个纵向距离不同的特征点,一组特征点的偏移量表征多个特征点与其对应的一个预设的锚点线之间的横向偏移距离;确定模块804,用于根据所述多组特征点的偏移量、所述多组特征点的可见度、所述多组特征点的置信度,以及多个预设的锚点线,确定目标车道线;其中,所述多个预设的锚点线包括多组不同起始点的锚点线,相同起始点的锚点线的倾斜角度不同。
114.在一些实施例中,确定模块804还用于根据各组特征点中各个特征点的可见度,在所述各组特征点中确定目标特征点,所述所述目标特征点的可见度用于反映车道线的长度;根据所述各组特征点中所述目标特征点的偏移量,以及所述多个预设的锚点线的位置信息,确定多个车道线;其中,一组特征点对应一个车道线;将所述各组特征点的置信度,作为所述各组特征点对应的车道线的置信度,从而得到所述多个车道线的置信度,所述车道线的置信度反映车道线类别的置信度;根据所述多个车道线的置信度,在所述多个车道线中确定所述目标车道线。
115.在一些实施例中,确定模块804还用于若至少两个车道线的置信度均在预设范围内,且所述至少两个车道线之间的距离位于预设距离,则将所述至少两个车道线中置信度最大值对应的车道线作为所述目标车道线;若所述至少两个车道线的置信度均在所述预设范围内,且所述至少两个车道线之间的距离超过所述预设距离,则将所述至少两个车道线作为所述目标车道线。
116.在一些实施例中,所述目标车道线包括所述前视图的二维车道线和所述前视图对应的鸟瞰图的三维车道线,所述多个预设的锚点线包括多个预设的三维锚点线,以及将所述多个预设的三维锚点线通过投影得到的多个二维锚点线,所述多组特征点的偏移量包括所述多组特征点在图像坐标系中的二维偏移量和所述多组特征点在绝对坐标系中的三维偏移量;
117.确定模块804还用于根据所述多组特征点的二维偏移量和所述多个预设的二维锚点线,确定所述二维车道线;根据所述多组特征点的三维偏移量和所述多个预设的三维锚点线,确定所述三维车道线。
118.在一些实施例中,所述预设的车道线检测模型包括预设的二维车道线检测模型和预设的三维车道线检测模型;
119.预测模块803还用于利用所述预设的二维车道线检测模型,对所述前视图特征进行车道线预测,得到所述多组特征点的二维偏移量;以及,利用所述预设的三维车道线检测模型和所述前视图特征进行车道线预测,得到所述多组三维特征点的偏移量。
120.在一些实施例中,该车道线的检测装置80还包括编码模块和投影模块;
121.编码模块用于利用预设的编码器,在所述前视图上确定参考点,所述参考点与鸟瞰图上像素点对应;在所述前视图特征中,确定所述参考点预设范围内的图像特征;将所述参考点预设范围内的图像特征进行特征融合,得到所述参考点的融合特征;
122.获取模块801还用于获取采集装置的内参矩阵和外参矩阵;
123.投影模块用于根据所述内参矩阵和所述外参矩阵,对所述参考点的融合特征进行坐标投影转换,得到鸟瞰图特征,所述鸟瞰图特征包括与所述参考点对应的所述像素点的融合特征;
124.预测模块803还用于利用所述预设的三维车道线检测模型,对所述鸟瞰图特征进行车道线预测,得到所述多组三维特征点的偏移量。
125.在一些实施例中,该车道线的检测装置80还包括预处理模块;
126.获取模块801还用于获取行驶场景下采集的前视初始图;
127.预处理模块用于对所述前视初始图进行预处理,得到所述前视图,所述预处理包括剪裁、缩放和像素值归一化中的至少一项。
128.在一些实施例中,该车道线的检测装置80还包括训练模块;
129.获取模块801还用于获取图像样本;
130.训练模块用于将所述图像样本对应的图像特征样本输入初始车道线检测模型,得到车道线预测结果;根据预设的损失函数和所述车道线预测结果,得到损失值;根据所述损失值对所述初始车道线检测模型进行持续训练,得到所述预设的车道线检测模型。
131.在一些实施例中,获取模块801还用于获取前视图样本、所述前视图样本的多组二维标注特征点的偏移量、所述前视图样本对应的鸟瞰图样本,以及鸟瞰图样本的多组三维标注特征点的偏移量;其中,所述二维标注特征点的偏移量表征标注二维车道线与对应的二维锚点线之间的横向偏移距离;所述三维标注特征点的偏移量表征标注三维车道线与对应的三维锚点线之间的横向偏移距离,以及标注三维车道线与对应的三维锚点线之间的高度偏移;
132.训练模块还用于根据所述前视图特征样本,以及所述鸟瞰图样本对应的鸟瞰图初始特征样本,确定所述前视图特征样本和所述鸟瞰图初始特征样本之间的对应关系;将所述对应关系输入初始编码器,得到所述前视图样本上的参考点样本;根据所述前视图样本上的参考点样本和所述前视图特征样本,确定鸟瞰图特征样本;其中,所述前视图样本、所述前视图样本的多组二维标注特征点的偏移量、所述鸟瞰图特征样本,以及所述多组三维标注特征点的偏移量作为所述图像样本。
133.在一些实施例中,所述初始车道线检测模型包括:初始二维车道线检测模型、初始三维车道线检测模型和初始分割模型;训练模块还用于将所述前视图特征样本输入初始二维车道线检测模型,得到多组预测二维特征点在图像坐标系中的偏移量、多组预测二维特征点的可见度和多组预测二维特征点的置信度;将所述鸟瞰图特征样本输入所述初始三维车道线检测模型和所述初始分割模型,得到多组预测三维特征点在绝对坐标系中的偏移量、多组预测三维特征点的可见度、多组预测三维特征点的置信度,以及对象分割结果;其中,所述多组预测二维特征点在图像坐标系中的偏移量、所述多组预测二维特征点的可见度、所述多组预测二维特征点的置信度、所述多组预测三维特征点在绝对坐标系中的偏移量、所述多组预测三维特征点的可见度、所述多组预测三维特征点的置信度,以及所述对象分割结果为所述车道线预测结果。
134.在一些实施例中,所述损失值包括:二维损失值和三维损失值;
135.训练模块还用于根据所述多组预测二维特征点在图像坐标系中的偏移量、所述多组预测二维特征点的可见度、所述多组预测二维特征点的置信度,以及预设的二维损失函数,得到二维损失值;所述预设的二维损失函数包括车道线类别对应的多分类损失函数、偏移量对应的回归损失函数和可见度对应的二分类损失函数;以及,根据多组预测三维特征点在绝对坐标系中的偏移量、所述多组预测三维特征点的可见度、所述多组预测三维特征点的置信度、对象分割结果,以及预设的三维损失函数,得到三维损失值;所述预设的三维损失函数包括车道线类别对应的多分类损失函数、偏移量对应的回归损失函数,以及对象分割与可见度对应的二分类损失函数;根据所述二维损失值和所述三维损失值,确定所述损失值。
136.在一些实施例中,训练模块还用于根据所述损失值对所述初始二维车道线检测模型、所述初始三维车道线检测模型和所述初始分割模型进行持续训练,得到所述预设的二
维车道线检测模型和所述预设的三维车道线检测模型。
137.在一些实施例中,训练模块还用于根据所述损失值对所述初始编码器同步进行持续训练,得到所述预设的编码器。
138.需要说明的是,上述实施例提供的车道线的检测装置在进行车道线的检测时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的车道线的检测装置与车道线的检测方法实施例属于同一构思,其具体实现过程及有益效果详见方法实施例,这里不再赘述。对于本装置实施例中未披露的技术细节,请参照本技术方法实施例的描述而理解。
139.在本技术实施例中,图9为本技术实施例提出的车道线的检测设备组成结构示意图,如图9所示,本技术实施例提出的设备90还可以包括处理器901、存储有处理器901可执行指令的存储器902,在一些实施例中,车道线的检测设备90还可以包括通信接口903,和用于连接处理器901、存储器902以及通信接口903的总线904。
140.在本技术实施例中,上述处理器901可以为特定用途集成电路(application specific integrated circuit,asic)、数字信号处理器(digital signal processor,dsp)、数字信号处理装置(digital signal processing device,dspd)、可编程逻辑装置(programmable logic device,pld)、现场可编程门阵列(field programmable gate array,fpga)、中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本技术实施例不作具体限定。
141.在本技术实施例中,总线904用于连接通信接口903、处理器901以及存储器902以及这些器件之间的相互通信。
142.在本技术实施例中,上述处理器901,用于实现上述任一实施例所描述的车道线的检测方法。
143.车道线的检测设备90中存储器902可以与处理器901连接,存储器902用于存储可执行程序代码和数据,该程序代码包括计算机操作指令,存储器902可能包含高速ram存储器,也可能还包括非易失性存储器,例如,至少两个磁盘存储器。在实际应用中,上述存储器902可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram);或者非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,rom),快闪存储器(flash memory),硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd);或者上述种类的存储器的组合,并向处理器901提供指令和数据。
144.另外,在本技术实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
145.集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计
算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
146.本技术实施例提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上任一实施例所述的车道线的检测方法。
147.示例性的,本实施例中的一种车道线的检测方法对应的程序指令可以被存储在光盘,硬盘,u盘等存储介质上,当存储介质中的与一种车道线的检测方法对应的程序指令被一电子设备读取或被执行时,可以实现如上述任一实施例所述的车道线的检测方法。
148.本领域内的技术人员应明白,本技术实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
149.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的实现流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及实现流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
150.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
151.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在实现流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
152.以上所述,仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献