自车道的提取方法、装置和电子设备与流程

文档序号:27430748发布日期:2021-11-17 21:59阅读:129来源:国知局
自车道的提取方法、装置和电子设备与流程

1.本发明涉及自动驾驶技术领域,尤其是涉及一种自车道的提取方法、装置和电子设备。


背景技术:

2.自动驾驶车辆是一种通过电脑系统实现无人驾驶的智能汽车,自动驾驶车辆在行驶过程中,需要提取自车道,即车辆所行驶的当前车道,有效的提取自车道,不仅能够有效的划分行驶区域,还能够有效的判断前方最近障碍物的距离,提高车辆行驶的安全性。相关技术中,通常采用三维重建的方式提取自车道,并在提取自车道过程中,通常需要进行逆透视变换处理等将像素坐标系转换为车辆坐标系,进而得到鸟瞰图视角下的图像,该方式计算量较大,计算过程比较复杂,降低了对自车道的提取效率和准确率。


技术实现要素:

3.本发明的目的在于提供一种自车道的提取方法、装置和电子设备,以提高对自车道的提取效率和准确率。
4.本发明提供的一种自车道的提取方法,方法包括:获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度;基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵;基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值;基于每条车道线对应的位置点在车辆坐标系中的第二坐标值提取自车道。
5.进一步的,获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值的步骤包括:获取车载相机采集的第一图像;对第一图像进行车道线检测,输出包含有车道线对应的位置点的第二图像,以及每个位置点在像素坐标系中的第三坐标值;如果基于车道线对应的位置点确定第二图像中包括至少两条车道线,对每个位置点在像素坐标系中的第三坐标值进行筛选,得到筛选后的第二图像;基于预先获取到的转换范围限定参数,处理筛选后的第二图像,得到目标图像,以及目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。
6.进一步的,对每个位置点在像素坐标系中的第三坐标值进行筛选,得到筛选后的第二图像的步骤包括:针对每个第三坐标值,将横轴方向坐标值大于第二图像的宽度,和/或,纵轴方向坐标值大于第二图像的高度的指定坐标值对应的位置点删除,得到筛选后的第二图像。
7.进一步的,转换范围限定参数包括:第一限定点、第二限定点、第三限定点和第四限定点;第一限定点、第二限定点和第三限定点的纵轴方向坐标值相同,用于在筛选后的第二图像中,确定目标图像的上边界线;第四限定点的纵轴方向坐标值用于在筛选后的第二图像中,确定目标图像的下边界线;第一限定点的横轴方向坐标值用于在筛选后的第二图
像中,确定目标图像的左边界线;第三限定点的横轴方向坐标值用于在筛选后的第二图像中,确定目标图像的右边界线;第二限定点的横轴方向坐标值和第四限定点的横轴方向坐标值相同,且位于筛选后的第二图像宽度值一半对应的直线上。
8.进一步的,基于预先获取到的转换范围限定参数,处理筛选后的第二图像,得到目标图像,以及目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值的步骤包括:依次连接第一限定点、第二限定点、第三限定点和第四限定点,将第一限定点、第二限定点、第三限定点和第四限定点所围成的图像区域,确定为目标图像;获取目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。
9.进一步的,基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵的步骤包括:按照预设的变换矩阵计算方式,基于标定参数和相机高度确定变换矩阵。
10.进一步的,基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值的步骤包括:基于变换矩阵与每条车道线对应的位置点在像素坐标系中的第一坐标值,确定第一矩阵;对第一矩阵进行归一化处理,得到每条车道线对应的位置点在车辆坐标系中的第二坐标值。
11.进一步的,基于每条车道线对应的位置点在车辆坐标系中的第二坐标值,提取自车道的步骤包括:基于第二坐标值,确定目标图像对应的鸟瞰图像;对第二坐标值进行筛选,确定鸟瞰图像中,满足预设范围的位置点;如果满足预设范围的位置点指示鸟瞰图像中包括至少两条车道线,基于每条车道线对应的位置点的第二坐标值,进行直线拟合,得到每条车道线对应的拟合直线;基于每条车道线对应的拟合直线,提取自车道。
12.进一步的,基于每条车道线对应的拟合直线,提取自车道的步骤包括:确定每条车道线对应的拟合直线与鸟瞰图像的指定边界线的交点坐标;其中,指定边界线包括鸟瞰图像的上边界线或下边界线;将每个交点坐标中的第一横轴方向坐标值,以及鸟瞰图像一半宽度对应的第二横轴方向坐标值,按从小到大进行排序,将位于第二横轴方向坐标值左侧的第一横轴方向坐标值所在的拟合直线确定为自车道的左车道线,将位于第二横轴方向坐标值右侧的第一横轴方向坐标值所在的直线确定为自车道的右车道线;基于左车道线和右车道线,确定自车道。
13.本发明提供的一种自车道的提取装置,装置包括:获取模块,用于获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度;第一确定模块,用于基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵;第二确定模块,用于基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值;提取模块,用于基于每条车道线对应的位置点在车辆坐标系中的第二坐标值提取自车道。
14.本发明提供的一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器执行机器可执行指令以实现上述自车道的提取方法。
15.本发明提供的一种机器可读存储介质,机器可读存储介质存储有机器可执行指令,机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述自车道的提取方法。
16.本发明提供的自车道的提取方法、装置和电子设备,获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度;基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵;基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值;基于每条车道线对应的位置点在车辆坐标系中的第二坐标值,提取自车道。该方式中,根据车载相机的标定参数和相机高度就可以确定像素坐标系转换为车辆坐标系的变换矩阵,通过该变换矩阵实现将车道线对应的位置点在像素坐标系中的第一坐标值转换为车辆坐标系下的第二坐标值,进而提取自车道,由于不需要通过三维重建及逆透视变换处理等过程,从而提升了对自车道的提取效率和准确率。
附图说明
17.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
18.图1为本发明实施例提供的一种自车道的提取方法的流程图;
19.图2为本发明实施例提供的另一种自车道的提取方法的流程图;
20.图3为本发明实施例提供的一种bev变换范围示意图;
21.图4为本发明实施例提供的另一种自车道的提取方法的流程图;
22.图5为本发明实施例提供的另一种自车道的提取方法的流程图;
23.图6为本发明实施例提供的另一种自车道的提取方法的流程图;
24.图7为本发明实施例提供的一种测试结果示意图;
25.图8为本发明实施例提供的一种弯道测试结果示意图;
26.图9为本发明实施例提供的一种匝道测试结果示意图;
27.图10为本发明实施例提供的一种特殊场景测试结果示意图;
28.图11为本发明实施例提供的一种自车道的提取装置的结构示意图;
29.图12为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
30.下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
31.目前,自动驾驶车辆行驶过程中,有效的提取自车道,不仅能够有效的划分行驶区域,同时能够有效的判断前方最近障碍物的距离,提高车辆行驶的安全性。相关技术中,关于自车道提取的方法比较稀少,其中一种方式中,可以通过三维重建的方式提取自车道,该方式在提取自车道的过程中,通常需要进行逆透视变换处理等以得到鸟瞰图,该方式计算量较大,计算过程比较复杂,降低了对自车道的提取效率和准确率。
32.基于此,本发明实施例提供了一种自车道的提取方法、装置和电子设备,该技术可以应用于车辆驾驶过程中需要提取自车道的应用中。
33.为便于对本实施例进行理解,首先对本发明实施例所公开的一种自车道的提取方法进行详细介绍;如图1所示,该方法包括如下步骤:
34.步骤s102,获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度。
35.上述目标图像通常是包括自车道对应区域的图像,因此,该目标图像通常需要包括至少两条车道线,该目标图像对应的图像区域可以是三角形区域等,上述目标图像中所包含的每条车道线通常对应有多个位置点,每个位置点都有其对应的第一坐标值,在像素坐标系中,第一坐标值通常是二维坐标;可以采用相关技术中的标定参数获取方式获取上述车载相机的标定参数,如,可以采用张氏标定法对车载相机进行标定,获取相机的内参矩阵,通过内参矩阵可获取fx,fy,u0,v0;对相机进行外参标定可以获取俯仰角pitch,偏航角yaw。上述相机高度可以理解为车辆中的车载相机距离地面的垂直高度。在实际实现时,当需要提取车辆行驶的自车道时,通常需要先获取上述目标图像、第一坐标值、车载相机的标定参数和相机高度。
36.步骤s104,基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵。
37.上述车辆坐标系通常是用来描述汽车运动的特殊动坐标系,其原点与质心重合,当车辆在水平路面上处于静止状态,x轴平行于地面指向车辆前方,z轴通过汽车质心指向上方,y轴指向驾驶员的左侧。在实际实现时,为了将车载相机拍摄的图像转换为鸟瞰图视野下的图像,可以将像素坐标系转换为车辆坐标系,具体的,可以先基于获取到的车载相机的标定参数和相机高度,确定相应的变换矩阵;比如,可以预先确定变换矩阵表达式,将获取的到的标定参数和相机高度代入该变换矩阵表达式中即可确定上述变换矩阵。
38.步骤s106,基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值。
39.在实际实现时,在确定变换矩阵后,可以基于该变换矩阵,对每条车道线对应的位置点在像素坐标系中的第一坐标值进行变换处理,即可得到车体坐标系下每个位置点对应的第二坐标值,完成该变换过程后,就可以获取到目标图像对应的鸟瞰图视角下的图像。
40.步骤s108,基于每条车道线对应的位置点在车辆坐标系中的第二坐标值,提取自车道。
41.在确定每条车道线对应的位置点在车辆坐标系中的第二坐标值后,就可以基于所确定的多个第二坐标值,提取车辆行驶的自车道。
42.上述自车道的提取方法,获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度;基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵;基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值;基于每条车道线对应的位置点在车辆坐标系中的第二坐标值,提取自车道。该方式中,根据车载相机的标定参数和相机高度就可以确定像素坐标系转换为车辆坐标系的变换矩阵,通过该变换矩阵实现将车道线对应的位置点在像素坐标系中的第
一坐标值转换为车辆坐标系下的第二坐标值,进而提取自车道,由于不需要通过三维重建及逆透视变换处理等过程,从而提升了对自车道的提取效率和准确率。
43.本发明实施例还提供了另一种自车道的提取方法,该方法在上述实施例方法的基础上实现;如图2所示,该方法包括如下步骤:
44.步骤s202,获取车载相机采集的第一图像。
45.步骤s204,对第一图像进行车道线检测,输出包含有车道线对应的位置点的第二图像,以及每个位置点在像素坐标系中的第三坐标值。
46.上述第一图像可以理解为车辆行驶过程中,车载相机所采集的原始图像,在获取到该第一图像后,可以对该第一图像进行车道线检测,具体可以采用相关技术中的检测方式,如基于霍夫的车道线检测、基于透视变换的车道线检测等,在车道线检测完成后,针对车载相机采集的每帧第一图像,可以输出该第一图像对应的显示有车道线位置点的第二图像,以及每个位置点在像素坐标系中的点坐标,即上述第三坐标值。
47.步骤s206,如果基于车道线对应的位置点确定第二图像中包括至少两条车道线,对每个位置点在像素坐标系中的第三坐标值进行筛选,得到筛选后的第二图像。
48.在实际实现时,上述第一图像中可能包括车道线,也可能不包括车道线,因此在对第一图像进行车道线检测后,需要确认检测结果中的第二图像所包含的车道线的数目是否低于两条,如果低于两条,则默认自车道提取失败,如果不低于两条,则需要进一步对每个位置点在像素坐标系中的第三坐标值进行筛选,基于筛选坐标值之后的位置点,确定筛选后的第二图像。
49.具体的,对每个位置点在像素坐标系中的第三坐标值进行筛选,得到筛选后的第二图像的步骤包括:针对每个第三坐标值,将横轴方向坐标值大于第二图像的宽度,和/或,纵轴方向坐标值大于第二图像的高度的指定坐标值对应的位置点删除,得到筛选后的第二图像。
50.由于车道线检测过程中,可能出现错检的情况,因此需要对获取到的每个位置点在像素坐标系中的第三坐标值进行筛选,通常情况下,车道线检测出来的每个位置点在像素坐标系中的第三坐标值为二维坐标,可以将横坐标大于第二图像的宽度,或者,纵坐标大于第二图像的高度,或者,横坐标大于第二图像的宽度且纵坐标大于第二图像的高度所对应的指定坐标值删除,即将该指定坐标值对应的位置点(即像素点)删除,其他第三坐标值即为有效坐标值,得到筛选无效位置点后的第二图像,比如,第二图像尺寸为1920*1080,像素点的坐标超出1920或1080的就需要被删除。
51.步骤s208,基于预先获取到的转换范围限定参数,处理筛选后的第二图像,得到目标图像,以及目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。
52.如果基于筛选后的位置点确定筛选后的第二图像中包括的车道线数目低于两条,则默认自车道提取失败,如果确定筛选后的第二图像中包括的车道线数目不低于两条,由于通过观察车载相机采集的图像不难发现,在图像的上半部分几乎为天空,在图像的下半部分几乎为车辆行驶的道路,而道路上的车道线信息才是自车道提取所需要的重要信息,因此,在得到筛选后的第二图像后,通常需要进一步设置图像转换范围。在实际实现时,可以预先设置转换范围限定参数,根据所设置的转换范围限定参数对筛选后的第二图像设置图像转换范围,进而得到上述目标图像,以及目标图像中,每条车道线对应的位置点在像素
坐标系中的第一坐标值。
53.上述转换范围限定参数通常包括:第一限定点、第二限定点、第三限定点和第四限定点;第一限定点、第二限定点和第三限定点的纵轴方向坐标值相同,用于在筛选后的第二图像中,确定目标图像的上边界线;第四限定点的纵轴方向坐标值用于在筛选后的第二图像中,确定目标图像的下边界线;第一限定点的横轴方向坐标值用于在筛选后的第二图像中,确定目标图像的左边界线;第三限定点的横轴方向坐标值用于在筛选后的第二图像中,确定目标图像的右边界线;第二限定点的横轴方向坐标值和第四限定点的横轴方向坐标值相同,且位于筛选后的第二图像宽度值一半对应的直线上。
54.在实际实现时,通常需要设置四个点,即上述第一限定点、第二限定点、第三限定点和第四限定点,可以根据需要转换的图像范围进行设置,参见图3所示的一种bev变换范围示意图,第一限定点、第二限定点和第三限定点通常设置在一条直线上,一般选择图像像素高一半的位置对应的直线,且该直线通常与横轴平行,以表示在筛选后的第二图像上需要变换的纵向最远位置,可以以bev_top表示,比如,图像大小为1920*1080,则图像高度的一半为1080/2=540;第四限定点通常设置在靠近筛选后的第二图像的下边缘位置对应的直线上,该直线通常与横轴平行,最大可选择筛选后的第二图像的下边缘位置,以表示在筛选后的第二图像上需要变换的纵向最近位置,可以以bev_bottom表示;第一限定点通常设置在靠近筛选后的第二图像的左侧边缘位置对应的直线上,该直线通常与纵轴平行,可以根据实际需求进行设置,最小可选择筛选后的第二图像的最左侧边缘位置,可以以bev_left表示;第三限定点通常设置在靠近筛选后的第二图像的右侧边缘位置对应的直线上,该直线通常与纵轴平行,可以根据实际需求进行设置,最大可选择筛选后的第二图像的最右侧边缘位置,可以以bev_right表示;如图3所示,第二限定点和第四限定点在横轴方向的坐标值通常相同,且通常位于筛选后的第二图像宽度值一半对应的直线上,该直线通常与纵轴平行。
55.该步骤s208具体可以通过步骤一和步骤二实现:
56.步骤一,依次连接第一限定点、第二限定点、第三限定点和第四限定点,将第一限定点、第二限定点、第三限定点和第四限定点所围成的图像区域,确定为目标图像。
57.如图3所示,依次连接所设置的四个点,即依次连接第一限定点、第二限定点、第三限定点和第四限定点,所围成的图像区域为三角形,可以将所围成的三角形确定为目标图像。
58.步骤二,获取目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。
59.步骤s210,获取车载相机的标定参数和相机高度。
60.步骤s212,按照预设的变换矩阵计算方式,基于标定参数和相机高度确定变换矩阵。
61.上述预设的变换矩阵计算方式可以是如下所示的m1矩阵表达式,该m1矩阵表达式通常是预先设置好的,可以将车载相机的标定参数的值和相机高度值代入m1矩阵表达式中,即可得到上述变换矩阵,该m1矩阵表达式中,fx,fy,u0,v0即为获取到的车载相机的标定参数中的fx,fy,u0,v0;另外,m1矩阵表达式中的c1=cos(pitch),c2=cos(yaw),s1=sin(pitch),s2=sin(yaw),h为相机高度;需要说明的是,标定参数中的fx,fy,u0,v0通常
是固定的,pitch角和yaw角通常是实时变化的。
[0062][0063]
步骤s214,基于变换矩阵与每条车道线对应的位置点在像素坐标系中的第一坐标值,确定第一矩阵。
[0064]
在实际实现时,为方便计算,通常会将每条车道线对应的位置点在像素坐标系中的第一坐标值以四维坐标形式表示,比如,像素坐标系下,某个位置点的横坐标为u,纵坐标为v,则表示为四维坐标形式即为p=[u,v,1,1],将上述得到的变换矩阵乘以p
t
,得到第一矩阵,该第一矩阵是个四行一列的矩阵。
[0065]
步骤s216,对第一矩阵进行归一化处理,得到每条车道线对应的位置点在车辆坐标系中的第二坐标值。
[0066]
在得到上述第一矩阵后,通常会对该第一矩阵进行归一化处理,具体的,可以将第一矩阵中每一行中的数据同时除以最后一行的数据,即可得到车体坐标系下的世界坐标,即上述车辆坐标系中的第二坐标值,可以以d表示,其中,d
t
=[x,y,z,1],x表示距离车辆车头平面的前方距离,y表示距离车辆左侧的距离,z表示向上高度。
[0067]
另外,如果需要将车体坐标系下的坐标值转换到像素坐标系下的坐标值,可以基于下述转换矩阵表达式m2,确定转换矩阵,将d乘以该转换矩阵即可,其中,转换矩阵表达式m2中各个字符的含义可以参考上述m1矩阵表达式中各个字符的含义。
[0068][0069]
步骤s218,基于每条车道线对应的位置点在车辆坐标系中的第二坐标值提取自车道。
[0070]
上述自车道的提取方法,获取车载相机采集的第一图像。对第一图像进行车道线检测,输出包含有车道线对应的位置点的第二图像,以及每个位置点在像素坐标系中的第三坐标值。如果基于车道线对应的位置点确定第二图像中包括至少两条车道线,对每个位置点在像素坐标系中的第三坐标值进行筛选,得到筛选后的第二图像。基于预先获取到的转换范围限定参数,处理筛选后的第二图像,得到目标图像,以及目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。获取车载相机的标定参数和相机高度。按照预设的变换矩阵计算方式,基于标定参数和相机高度确定变换矩阵。基于变换矩阵与每条车道线对应的位置点在像素坐标系中的第一坐标值,确定第一矩阵。对第一矩阵进行归一化处理,得到每条车道线对应的位置点在车辆坐标系中的第二坐标值。基于第二坐标值提
取自车道。该方式中,根据车载相机的标定参数和相机高度就可以确定像素坐标系转换为车辆坐标系的变换矩阵,通过该变换矩阵实现将车道线对应的位置点在像素坐标系中的第一坐标值转换为车辆坐标系下的第二坐标值,进而提取自车道,由于不需要通过三维重建及逆透视变换处理等过程,从而提升了对自车道的提取效率和准确率。
[0071]
本发明实施例还提供了另一种自车道的提取方法,该方法在上述实施例方法的基础上实现;如图4所示,该方法包括如下步骤:
[0072]
步骤s402,获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度。
[0073]
步骤s404,基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵。
[0074]
步骤s406,基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值。
[0075]
步骤s408,基于第二坐标值,确定目标图像对应的鸟瞰图像。
[0076]
上述鸟瞰图像可以理解为在鸟瞰图视角下的图像,通常在将像素坐标系中的坐标转换为车体坐标系中的坐标后,相当于将车载相机采集的图像转换为了鸟瞰图视角下的图像,就可以确定鸟瞰图像,比如,如果车辆坐标系中的第二坐标值以d表示,其中d
t
=[x,y,z,1],将x和y坐标设置在鸟瞰图像的二维坐标系中显示即可。
[0077]
步骤s410,对第二坐标值进行筛选,确定鸟瞰图像中,满足预设范围的位置点。
[0078]
上述预设范围通常是距离车辆的车头平面前方一定距离内的范围,比如,可以是距离车辆的车头平面前方30米范围内等;在实际实现时,为了提高所提取的自车道的有效性,提高提取效率和准确率,在确定每条车道线对应的位置点在车辆坐标系中的第二坐标值后,通常会对所得到的第二坐标值进行筛选过滤,比如,选择距离车辆的车头平面前方30米范围内的位置点,将大于30米的位置点删除,只保留30米范围内的位置点,具体的,如果车辆坐标系中的第二坐标值以d表示,其中d
t
=[x,y,z,1],由于x表示距离车辆车头平面的前方距离,因此,可以根据x值,对多个位置点所对应的多个第二坐标值进行筛选。
[0079]
步骤s412,如果满足预设范围的位置点指示鸟瞰图像中包括至少两条车道线,基于每条车道线对应的位置点的第二坐标值,进行直线拟合,得到每条车道线对应的拟合直线。
[0080]
如果筛选过后的位置点指示鸟瞰图像中车道线的数量低于两条,则默认自车道提取失败,如果车道线的数量不低于两条,则可以对筛选后所保留下来的车道线进行直线拟合,根据所有位置点的第二坐标值,求取直线方程y=kx+b,可以求解出k与b的值,具体可以采用相关技术中的直线拟合方式,在此不再赘述;在完成直线拟合处理后,通常所保留下来的每条车道线对应一条拟合直线。
[0081]
步骤s414,基于每条车道线对应的拟合直线,提取自车道。
[0082]
该步骤s414具体可以通过下述步骤五至步骤七实现:
[0083]
步骤五,确定每条车道线对应的拟合直线与鸟瞰图像的指定边界线的交点坐标;其中,指定边界线包括鸟瞰图像的上边界线或下边界线。
[0084]
为方便说明个,以鸟瞰图像的左上角点为原点,在实际实现时,在得到上述每条车道线对应的拟合直线后,可以计算每条拟合直线与鸟瞰图像(即bev图像)下边界线的交点,
具体的,令每一条拟合直线y的值为鸟瞰图像的图像高,可以求出每条拟合直线的x的值。
[0085]
步骤六,将每个交点坐标中的第一横轴方向坐标值,以及鸟瞰图像一半宽度对应的第二横轴方向坐标值,按从小到大进行排序,将位于第二横轴方向坐标值左侧的第一横轴方向坐标值所在的拟合直线确定为自车道的左车道线,将位于第二横轴方向坐标值右侧的第一横轴方向坐标值所在的直线确定为自车道的右车道线。
[0086]
计算鸟瞰图像宽的一半所对应的值,记为half_x,将通过上述步骤得到的每条拟合直线的x值与该half_x,按照从小到大的位置进行排序,排序完成之后,与half_x左边紧邻的x值所在的拟合直线对应自车道的左车道线,与half_x右边紧邻的x值所在的拟合直线对应自车道的右车道线。若half_x为最大值或最小值,表示车辆有漏检情况,检测出来的车道线均在左侧或右侧,无法筛选自车道,这时通常会默认自车道筛选失败,至此自车道筛选完成。
[0087]
参见图5所示的另一种自车道的提取方法流程图,包括拟合直线1、拟合直线2、拟合直线3和拟合直线4,计算每条拟合直线与鸟瞰图像的指定边界线的交点坐标的x值分别为x1、x2、x3、x4,计算鸟瞰图像宽的一半所对应的值half_x,对x1、x2、x3、x4和half_x从小到大排序,如果half_x位于中间,则可以进行自车道提取,如果half_x最小或half_x最大,则无法提取自车道。
[0088]
步骤七,基于左车道线和右车道线,确定自车道。
[0089]
上述自车道的提取方法,基于第二坐标值,确定目标图像对应的鸟瞰图像。对第二坐标值进行筛选,确定鸟瞰图像中,满足预设范围的位置点。如果满足预设范围的位置点指示鸟瞰图像中包括至少两条车道线,基于每条车道线对应的位置点的第二坐标值,进行直线拟合,得到每条车道线对应的拟合直线。基于每条车道线对应的拟合直线,提取自车道。该方式中,根据车载相机的标定参数和相机高度就可以确定像素坐标系转换为车辆坐标系的变换矩阵,通过该变换矩阵实现将车道线对应的位置点在像素坐标系中的第一坐标值转换为车辆坐标系下的第二坐标值,进而提取自车道,由于不需要通过三维重建及逆透视变换处理等过程,从而提升了对自车道的提取效率和准确率。
[0090]
为进一步理解上述实施例,下面提供如图6所示的另一种自车道的提取方法的流程图,首先获取车道线图片,确定bev变换范围,同时,基于车道线检测像素点坐标,判断车道线条数是否小于2,如果是,默认自车道提取失败,如果否,则对像素点坐标进行筛选,筛选后,再次判断车道线条数是否小于2,如果是,默认自车道提取失败,如果否,则基于所确定的bev变换范围进行bev变换,对bev变换后的世界坐标点进行筛选过滤,对保留下来的车道线进行直线拟合,得到各个车道线对应的拟合直线,最后基于拟合直线进行自车道提取。
[0091]
上述方式能够将车载摄像头下的图像转换为鸟瞰图视野下的图像,为自动驾驶领域的测距以及车道线检测等提供有效的帮助;在鸟瞰图视野下,能够有效的区分自车道,左右车道,分类速度快且简单,有效的解决了车道线类型回归的弱点。bev变换方法高效且准确,明显优于其他的逆透视变换方法。另外,该方式中的自车道筛选比较新颖,结合车道线特征,避免了深度学习的大量回归计算。且准确率较高。可以有效避免车道线三维重建带来的复杂性,通过简单易实施的方案即可提取自车道。
[0092]
上述自车道的提取方式已经过大量实验验证,提取方式简单高效,能够应用在高速及城市道路场景等,并且在高速匝道处、弯道处同样有效。只要车道线能够有效检测,就
可以采用本方案中的自车道提取方式提取自车道。如图7所示的一种测试结果示意图,如图8所示的一种弯道测试结果示意图,如图9所示的一种匝道测试结果示意图,如图10所示的一种特殊场景测试结果示意图,如图7至图10中的左图为输入图像及车道线点坐标,右图为自车道筛选过程,其中,右图中处于图像中间区域的两条黑色实线为所提取的自车道。
[0093]
本发明提供了一种自车道的提取装置的结构示意图,如图11所示,装置包括:获取模块110,用于获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度;第一确定模块111,用于基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵;第二确定模块112,用于基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值;提取模块113,用于基于每条车道线对应的位置点在车辆坐标系中的第二坐标值提取自车道。
[0094]
上述自车道的提取装置,获取包括至少两条车道线的目标图像、每条车道线对应的位置点在像素坐标系中的第一坐标值、车载相机的标定参数和相机高度;基于标定参数和相机高度,确定将像素坐标系转换为车辆坐标系的变换矩阵;基于每条车道线对应的位置点在像素坐标系中的第一坐标值,以及变换矩阵,确定每条车道线对应的位置点在车辆坐标系中的第二坐标值;基于每条车道线对应的位置点在车辆坐标系中的第二坐标值,提取自车道。该装置中,根据车载相机的标定参数和相机高度就可以确定像素坐标系转换为车辆坐标系的变换矩阵,通过该变换矩阵实现将车道线对应的位置点在像素坐标系中的第一坐标值转换为车辆坐标系下的第二坐标值,进而提取自车道,由于不需要通过三维重建及逆透视变换处理等过程,从而提升了对自车道的提取效率和准确率。
[0095]
进一步的,获取模块还用于:获取车载相机采集的第一图像;对第一图像进行车道线检测,输出包含有车道线对应的位置点的第二图像,以及每个位置点在像素坐标系中的第三坐标值;如果基于车道线对应的位置点确定第二图像中包括至少两条车道线,对每个位置点在像素坐标系中的第三坐标值进行筛选,得到筛选后的第二图像;基于预先获取到的转换范围限定参数,处理筛选后的第二图像,得到目标图像,以及目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。
[0096]
进一步的,获取模块还用于:针对每个第三坐标值,将横轴方向坐标值大于第二图像的宽度,和/或,纵轴方向坐标值大于第二图像的高度的指定坐标值对应的位置点删除,得到筛选后的第二图像。
[0097]
进一步的,转换范围限定参数包括:第一限定点、第二限定点、第三限定点和第四限定点;第一限定点、第二限定点和第三限定点的纵轴方向坐标值相同,用于在筛选后的第二图像中,确定目标图像的上边界线;第四限定点的纵轴方向坐标值用于在筛选后的第二图像中,确定目标图像的下边界线;第一限定点的横轴方向坐标值用于在筛选后的第二图像中,确定目标图像的左边界线;第三限定点的横轴方向坐标值用于在筛选后的第二图像中,确定目标图像的右边界线;第二限定点的横轴方向坐标值和第四限定点的横轴方向坐标值相同,且位于筛选后的第二图像宽度值一半对应的直线上。
[0098]
进一步的,获取模块还用于:依次连接第一限定点、第二限定点、第三限定点和第四限定点,将第一限定点、第二限定点、第三限定点和第四限定点所围成的图像区域,确定为目标图像;获取目标图像中,每条车道线对应的位置点在像素坐标系中的第一坐标值。
[0099]
进一步的,第一确定模块还用于:按照预设的变换矩阵计算方式,基于标定参数和相机高度确定变换矩阵。
[0100]
进一步的,第二确定模块还用于:基于变换矩阵与每条车道线对应的位置点在像素坐标系中的第一坐标值,确定第一矩阵;对第一矩阵进行归一化处理,得到每条车道线对应的位置点在车辆坐标系中的第二坐标值。
[0101]
进一步的,提取模块还用于:基于第二坐标值,确定目标图像对应的鸟瞰图像;对第二坐标值进行筛选,确定鸟瞰图像中,满足预设范围的位置点;如果满足预设范围的位置点指示鸟瞰图像中包括至少两条车道线,基于每条车道线对应的位置点的第二坐标值,进行直线拟合,得到每条车道线对应的拟合直线;基于每条车道线对应的拟合直线,提取自车道。
[0102]
进一步的,提取模块还用于:确定每条车道线对应的拟合直线与鸟瞰图像的指定边界线的交点坐标;其中,指定边界线包括鸟瞰图像的上边界线或下边界线;将每个交点坐标中的第一横轴方向坐标值,以及鸟瞰图像一半宽度对应的第二横轴方向坐标值,按从小到大进行排序,将位于第二横轴方向坐标值左侧的第一横轴方向坐标值所在的拟合直线确定为自车道的左车道线,将位于第二横轴方向坐标值右侧的第一横轴方向坐标值所在的直线确定为自车道的右车道线;基于左车道线和右车道线,确定自车道。
[0103]
本发明实施例所提供的自车道的提取装置,其实现原理及产生的技术效果和前述自车道的提取方法实施例相同,为简要描述,自车道的提取装置实施例部分未提及之处,可参考前述自车道的提取方法实施例中相应内容。
[0104]
本发明实施例还提供了一种电子设备,参见图12所示,该电子设备包括处理器130和存储器131,该存储器131存储有能够被处理器130执行的机器可执行指令,该处理器130执行机器可执行指令以实现上述自车道的提取方法。
[0105]
进一步地,图12所示的电子设备还包括总线132和通信接口133,处理器130、通信接口133和存储器131通过总线132连接。
[0106]
其中,存储器131可能包含高速随机存取存储器(ram,random access memory),也可能还包括非不稳定的存储器(non

volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口133(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。总线132可以是isa总线、pci总线或eisa总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
[0107]
处理器130可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器130中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器130可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field

programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为
硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器131,处理器130读取存储器131中的信息,结合其硬件完成前述实施例的方法的步骤。
[0108]
本发明实施例还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,该机器可执行指令促使处理器实现上述自车道的提取方法,具体实现可参见方法实施例,在此不再赘述。
[0109]
本发明实施例所提供的自车道的提取方法、装置和电子设备的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
[0110]
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0111]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1