发明内容
本发明实施例提供了一种车道线检测方法、装置、计算机设备及存储介质,能够解决相关技术中车道线检测的准确性较差的问题。所述技术方案如下:
一方面,提供了一种车道线检测方法,所述方法包括:
在车辆行驶过程中,基于所述车辆的多个图像采集设备,采集周围环境的多张第一图像,所述多张第一图像的视点不同;
识别出所述多张第一图像中每张第一图像所包括的第一车道线;
对于每张第一图像,基于所述车辆的第二车道线和所述每张第一图像所包括的第一车道线,确定所述第二车道线与每个第一车道线之间的距离,所述第二车道线为基于所述车辆的多张第二图像所确定的车道线;
基于所述第二车道线与每个第一车道线之间的距离,确定所述车辆当前所在车道的目标车道线。
在一种可能实现方式中,所述基于所述车辆的第二车道线和所述每张第一图像所包括的第一车道线,确定所述第二车道线与每个第一车道线之间的距离包括:
对于每个第一车道线,基于所述第一车道线所包括的多段第一折线与所述第二车道线所包括的多段第二折线,确定每段第一折线与每段第二折线之间的距离;
基于所述每段第一折线与每段第二折线之间的距离,确定所述第一车道线与所述第二车道线之间的距离。
在一种可能实现方式中,所述基于所述第二车道线与每个第一车道线之间的距离,确定所述车辆当前所在车道的目标车道线包括:
对于每个第一车道线,当所述第二车道线与所述第一车道线之间的距离小于第一预设阈值时,根据所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线;
当所述第二车道线与所述第一车道线之间的距离不小于第一预设阈值时,根据所述第一车道线、所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线。
在一种可能实现方式中,所述当所述第二车道线与所述第一车道线之间的距离小于第一预设阈值时,根据所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线包括:
当所述第二车道线与所述第一车道线之间的距离小于第一预设阈值时,基于所述第一车道线所包括的多个第一折线,调整所述第二车道线所包括的多个第二折线的端点位置;
根据调整后的第二车道线和所述车辆的位置,确定所述目标车道线。
在一种可能实现方式中,所述当所述第二车道线与所述第一车道线之间的距离不小于第一预设阈值时,将所述第一车道线添加到所述车辆的车道线模型中,根据所述第一车道线、所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线包括:
当所述第二车道线与所述第一车道线之间的距离不小于第一预设阈值时,继续采集所述车辆的多张第三图像;
确定所述第二车道线与每张第三图像所包括的第三车道线与之间的距离;
当所述多张第三图像中满足目标条件的第三图像的数量超过第二预设阈值时,执行所述根据所述第一车道线、所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线的步骤,所述目标条件为所包括的第三车道线与所述第二车道线之间的距离不小于所述第一预设阈值。
另一方面,提供了一种车道线检测装置,所述装置包括:
采集模块,用于在车辆行驶过程中,基于所述车辆的多个图像采集设备,采集周围环境的多张第一图像,所述多张第一图像的视点不同;
识别模块,用于识别出所述多张第一图像中每张第一图像所包括的第一车道线;
确定模块,用于对于每张第一图像,基于所述车辆的第二车道线和所述每张第一图像所包括的第一车道线,确定所述第二车道线与每个第一车道线之间的距离,所述第二车道线为基于所述车辆的多张第二图像所确定的车道线;
所述确定模块,还用于基于所述第二车道线与每个第一车道线之间的距离,确定所述车辆当前所在车道的目标车道线。
在一种可能实现方式中,所述确定模块,还用于对于每个第一车道线,基于所述第一车道线所包括的多段第一折线与所述第二车道线所包括的多段第二折线,确定每段第一折线与每段第二折线之间的距离;基于所述每段第一折线与每段第二折线之间的距离,确定所述第一车道线与所述第二车道线之间的距离。
在一种可能实现方式中,所述确定模块,还用于对于每个第一车道线,当所述第二车道线与所述第一车道线之间的距离小于第一预设阈值时,根据所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线;当所述第二车道线与所述第一车道线之间的距离不小于第一预设阈值时,根据所述第一车道线、所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线。
在一种可能实现方式中,所述确定模块,还用于当所述第二车道线与所述第一车道线之间的距离小于第一预设阈值时,基于所述第一车道线所包括的多个第一折线,调整所述第二车道线所包括的多个第二折线的端点位置;根据调整后的第二车道线和所述车辆的位置,确定所述目标车道线。
在一种可能实现方式中,所述确定模块,还用于当所述第二车道线与所述第一车道线之间的距离不小于第一预设阈值时,继续采集所述车辆的多张第三图像;确定所述第二车道线与每张第三图像所包括的第三车道线与之间的距离;当所述多张第三图像中满足目标条件的第三图像的数量超过第二预设阈值时,根据所述第一车道线、所述第二车道线和所述车辆的位置,确定所述车辆的目标车道线,所述目标条件为所包括的第三车道线与所述第二车道线之间的距离不小于所述第一预设阈值。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上述的车道线检测方法所执行的操作。
另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上述的车道线检测方法所执行的操作。
本发明实施例提供的技术方案带来的有益效果是:
通过多个图像采集设备采集多张第一图像,先识别出每张第一图像所包括的第一车道线,再确定第二车道线和每张第一图像的第一车道线之间的距离,从而基于每张第一图像与第二图像的检测结果之间的对比做进一步判断,根据该距离最终确定所述车辆当前所在车道的目标车道线,避免简单图像拼接带来的误差,提高了车道线检测的准确性。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的一种车道线检测方法的流程图。该发明实施例的执行主体为计算机设备,例如,该计算机设备服务器或终端。参见图1,该方法包括:
101、在车辆行驶过程中,基于该车辆的多个图像采集设备,采集周围环境的多张第一图像,该多张第一图像的视点不同;
102、识别出该多张第一图像中每张第一图像所包括的第一车道线;
103、对于每张第一图像,基于该车辆的第二车道线和该每张第一图像所包括的第一车道线,确定该第二车道线与每个第一车道线之间的距离,该第二车道线为基于该车辆的多张第二图像所确定的车道线;
104、基于该第二车道线与每个第一车道线之间的距离,确定该车辆当前所在车道的目标车道线。
在一种可能实现方式中,该基于该车辆的第二车道线和该每张第一图像所包括的第一车道线,确定该第二车道线与每个第一车道线之间的距离包括:
对于每个第一车道线,基于该第一车道线所包括的多段第一折线与该第二车道线所包括的多段第二折线,确定每段第一折线与每段第二折线之间的距离;
基于该每段第一折线与每段第二折线之间的距离,确定该第一车道线与该第二车道线之间的距离。
在一种可能实现方式中,该基于该第二车道线与每个第一车道线之间的距离,确定该车辆当前所在车道的目标车道线包括:
对于每个第一车道线,当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,根据该第二车道线和该车辆的位置,确定该车辆的目标车道线;
当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线。
在一种可能实现方式中,该当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,根据该第二车道线和该车辆的位置,确定该车辆的目标车道线包括:
当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,基于该第一车道线所包括的多个第一折线,调整该第二车道线所包括的多个第二折线的端点位置;
根据调整后的第二车道线和该车辆的位置,确定该目标车道线。
在一种可能实现方式中,该当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,将该第一车道线添加到该车辆的车道线模型中,根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线包括:
当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,继续采集该车辆的多张第三图像;
确定该第二车道线与每张第三图像所包括的第三车道线与之间的距离;
当该多张第三图像中满足目标条件的第三图像的数量超过第二预设阈值时,执行该根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线的步骤,该目标条件为所包括的第三车道线与该第二车道线之间的距离不小于该第一预设阈值。
本发明实施例提供的方法,通过多个图像采集设备采集多张第一图像,先识别出每张第一图像所包括的第一车道线,再确定第二车道线和每张第一图像的第一车道线之间的距离,从而基于每张第一图像与第二图像的检测结果之间的对比做进一步判断,根据该距离最终确定该车辆当前所在车道的目标车道线,避免简单图像拼接带来的误差,提高了车道线检测的准确性。
图2是本发明实施例提供的一种车道线检测方法的流程图。该发明实施例的执行主体为计算机设备,该计算机设备服务器或终端,本发明实施例仅以终端为例进行说明,例如,该终端可以为车载终端。参见图2,该方法包括:
201、终端在车辆行驶过程中,基于该车辆的多个图像采集设备,采集周围环境的多张第一图像。
其中,多张第一图像的视点不同。本发明实施例中,该车辆上安装有多个图像采集设备,例如,多个摄像头,在车辆行驶过程中,该多个图像采集设备可以实时对车辆行驶的周围环境进行拍摄,得到该周围环境的多张图像,该终端可以基于该多张图像,检测出该车辆当前所在车道的车道线。另外,该车辆可以为自动驾驶车辆,也即是该车辆可以配置有全自动驾驶系统,该车辆实时基于检测出的车道线、周围环境中的障碍物等进行驾驶决策规划,并自动执行驾驶操作,以保证车辆安全行驶。或者,该车辆也可以为非全自动驾驶系统,例如,该车辆可以配置有辅助驾驶系统,则该终端可以实时显示检测出的车道线,以辅助驾驶员向进行驾驶操作,进而保证车辆安全行驶。
本步骤中,该多张第一图像为当前时刻所采集的图像。需要说明的是,该多个图像采集设备可以安装于车辆的不同位置,因此,该多张第一图像之间的视点不同。该多个图像采集设备的安装位置可以基于需要进行设置,本发明实施例对该多个图像采集设备的安装位置不做具体限定。例如,该多个图像采集设备可以安装于车辆前挡风玻璃内侧左端、右端或者中间位置,又或者,还可以安装于车辆的后挡风玻璃内侧的左端、右端或者中间位置等。
202、终端识别出该多张第一图像中每张第一图像所包括的第一车道线。
本发明实施例中,该终端可以对该多张第一图像进行图像识别,识别出每张第一图像中所包括的第一车道线。其中,该终端可以利用图像识别算法,根据每张第一图像所包括的多个像素点的像素值,对第一图像进行识别。或者,该终端还可以利用已训练好的深度学习网络模型,将每张第一图像输入该深度学习网络模型中,输出该每张第一图像所包括的第一车道线的位置。在一个可能示例中,该终端可以识别出每张第一图像中第一车道线在第一图像的图像坐标系的位置坐标。该终端还可以根据该第一车道线在图像坐标系的位置坐标,确定出该第一车道线在三维的车辆坐标系中的空间位置坐标。
需要说明的是,该终端还可以根据第一车道线的位置,对该第一车道线进行曲线拟合,例如,该终端可以利用低阶多项式对该第一车道线所包括的多个像素点进行拟合,从而去除第一图像中的噪音,同时压缩图像数据,进一步瞄准该第一车道线的位置和形状。
203、对于每张第一图像,终端基于该车辆的第二车道线和该每张第一图像所包括的第一车道线,确定该第二车道线与每个第一车道线之间的距离。
该第二车道线为基于该车辆多张第二图像所确定的车道线。其中,该第二图像可以为当前时刻之前所采集的多张图像,也可以为该多张第一图像中除本图像以外的第一图像。
本发明实施例中,该终端可以采用折线段表示车道线。该终端可以根据车道线所包括的多段折线,来判断两个车道线之间的距离。在一种可能的实施方式中,本步骤可以包括:对于每个第一车道线,该终端可以基于该第一车道线所包括的多段第一折线与该第二车道线所包括的多段第二折线,确定每段第一折线与每段第二折线之间的距离;该终端可以基于该每段第一折线与每段第二折线之间的距离,确定该第一车道线与该第二车道线之间的距离。在一个可能示例中,终端可以根据每段第一折线的位置和每段第二折线的位置,确定每段第一折线与对应的第二折线之间的距离。其中,该终端可以用图像坐标系的坐标表示第一折线和第二折线的位置,也可以采用车辆坐标系中的空间位置坐标表示第一折线和第二折线的位置,本发明实施例对此不做具体限定。
如图3所示,该终端可以采用图3所示的多个相连接的折线的方式,来表示车道线。对于每个第一车道线,该终端可以根据该第一车道线所包括的每段第一折线,确定该第二车道线所包括的多段第二折线中与该第一折线对应的第二折线。该终端确定每段第一折线与对应的第二折线之间的距离,从而得到多个距离。该终端可以计算该多个距离之间的平均值,将该平均值作为该第一车道线与第二车道线之间的距离。在一个可能示例中,该终端可以根据第一折线的折线特征,来确定该第一折线所对应的第二折线。例如,对于每个第一折线,该终端可以根据每个第一折线的折线特征和每个第二折线的折线特征,从第二车道线中查找出与第一折线相似的第二折线,将查找出的第二折线作为该第一折线对应的第二折线。例如,该折线特征可以包括但不限于:该折线的位置、折线的长度、折线的方向、折线的标号等。例如,该终端可以对第一车道线所包括的多段第一折线进行标号,例如,由近及远的顺序,分别为折线1、折线2、折线3等。则该终端可以将第二车道线中标号与第一折线相同的第二折线,作为该第一折线所对应的第二折线。当然,该终端也可以采用其他方式来确定相对应的第二折线,例如,该终端还可以将长度、折线两端的端点位置相近的第一折线和第二折线作为相对应的折线。
需要说明的是,当该终端在初始时刻采集到多张初始图像时,该终端可以直接对该多张初始图像进行检测,对于每张初始图像,该终端确定该初始图像所包括的第一车道线与其他初始图像所包括的第二车道线之间的距离,并通过以下步骤204,确定出目标车道线,并将该目标车道线存储至车道线模型中。然后,当终端下一时刻继续采集多张第一图像时,对于每张第一图像,该终端可以将基于初始图像所确定的目标车道线作为第二车道线,并继续基于第一图像所包括的第一车道线和该第二车道线,确定最新的目标车道线。对于所采集的每张图像,该终端均可以执行本发明实施例的车道线检测过程。其中,该车道线模型包括基于该车辆的多张第二图像所确定的至少一条第二车道线。
204、终端基于该第二车道线与每个第一车道线之间的距离,确定该车辆当前所在车道的目标车道线。
本发明实施例中,对于每个第一车道线,当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,该终端可以根据该第二车道线和该车辆的位置,确定该车辆的目标车道线;当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,该终端可以根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线。
在一种可能的实施方式中,该终端可以根据该第一车道线和第二车道线之间的距离,判断该第一车道线与第二车道线是否为同一条车道线,从而最终确定该车辆最终的目标车道线。在一种可能的实施方式中,本步骤可以包括:对于每个第一车道线,当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,该终端可以确定该第一车道线与第二车道线相同,也即是,该第一车道线与第二车道线为同一条车道线,属于已检测出来的车道线,则该终端确定该车辆的车道线模型中已包括有该第一车道线。该终端可以根据该第二车道线来定位车辆当前所在车道的目标车道线。其中,该车道模型可以包括已检测出来的多条车道线,例如,车道线模型可以包括基于该车辆的多张第二图像所确定的至少一条第二车道线;当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,该终端可以确定该第一车道线与第二车道线不是同一条车道线,该第一车道线为新的车道线,该终端可以将该第一车道线添加到该车辆的车道线模型中。则该终端需要根据第一车道线、第二车道线来定位车辆当前所在车道的目标车道线。
在一种可能的实施方式中,当该第二车道线与第一车道线之间的距离小于第一预设阈值时,也即是,该第一车道线与第二车道线相同时,该终端可以将该第一车道线作为该第二车道线的一个观测数据,来对该第二车道线进行修正。该过程可以包括:当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,该终端基于该第一车道线所包括的多个第一折线,调整该第二车道线所包括的多个第二折线的端点位置;该终端根据调整后的第二车道线和该车辆的位置,确定该目标车道线。其中,该终端可以实时存储之前从每张第二图片中所检测到的观测车道线,需要说明的是,该观测车道线为直接从第二图片中检测得到的车道线,该第二车道线为基于该多张第二图像中多条观测车道线所确定的,该观测车道线可以作为对第二车道线的一个观测数据。本步骤中,该终端可以结合多条观测车道线和第一车道线来修正该第二车道线,例如,该终端可以根据之前多个时刻所采集多张第二图像所包括的多条观测车道线,获取该多条观测车道线的多段观测折线的端点位置,根据该多段观测折线的端点位置和该多段第一折线的端点位置,预测该第二车道线中每段第二折线的目标端点位置。其中,该终端可以利用概率分布模型来进行预测,例如,该终端可以根据高斯分布模型,判断该多段观测折线的端点位置和该多段第一折线的端点位置是否符合高斯分布模型,如果符合高斯分布模型,则确定该第二车道线不包括噪音,如果不符合高斯分布模型,则确定该第二车道线包括噪音,该终端可以根据该多段观测折线的端点位置和该多段第一折线的端点位置,利用高斯分布模型,预测出每段第二折线的目标端点位置。
需要说明的是,该终端可以在车辆行驶过程中,基于所采集的图像中的车道线,实时检测已有的车道线是否有噪音,从而不断的对已有车道线进行修正。因此,随着第二车道线的观测数据越多,整个车道线所包括的各段折线段越来越逼近真实世界的车道线,从而大大提高了车道线的准确性。
在一种可能的实施方式中,当第一车道线与第二车道线之间距离较大时,该终端还可以继续采集图像,基于更多的图像的车道线检测结果来判断该第一车道线与第二车道线是否为同一条车道线,进而实现目标车道线的确定。该过程可以包括:当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,该终端可以继续采集该车辆的多张第三图像;该终端可以确定该第二车道线与每张第三图像所包括的第三车道线与之间的距离;当该多张第三图像中满足目标条件的第三图像的数量超过第二预设阈值时,该终端才执行该根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线的步骤,否则,该终端执行根据该第二车道线和该车辆的位置,确定该车辆的目标车道线的步骤。其中,该目标条件为所包括的第三车道线与该第二车道线之间的距离不小于该第一预设阈值。需要说明的是,当多张第三图像中满足目标条件的图像数量大于第二预设阈值时,说明有数量较多的第三图像中,所包括的第三车道线与第二车道线之间的距离较大,此时,终端可以排除第一图像中车道线检测结果的噪音影响,确定该第一车道线即为一条新的车道线,从而基于第一车道线和第二车道线共同确定目标车道线。
需要说明的是,当车辆行驶的车道上新增障碍物时,例如,新增了反光的垃圾,甚至于车道路面修补留下的条状痕迹等,均可能会在检测过程中产生误差,导致车道线检测不准确。该终端利用对数量更多的第三图像的检测结果进一步作出判断,从而使得检测结果更加稳定、准确,滤除了单次检测过程可能存在的误差,进一步提高了所确定出的车道线的准确性。另外,本发明实施例通过采用多个图像采集设备从多个不同角度进行图像采集,所得到的多张图像能够从各个方位全面性的覆盖周围环境,并且,图像采集设备的成本低廉,一般的摄像头即可实现本发明实施例的图像采集,本发明实施例的方法的可适用范围很广泛,不仅仅可适用于全自动驾驶系统,也可适用于辅助自动驾驶系统等;也正是由于利用多个图像采集设备,不会由于其中的一个或几个图像采集设备的失效而造成整个车道线检测和建模模块的失效,极大地提高道路检测的鲁棒性。
为了更加清晰的描述对本发明实施例的整个过程,下面结合图4、图5对上述步骤201-204的技术过程进一步介绍。如图4所示,该终端可以配置有多摄像头道路观测建模模块,本发明实施例中,通过多个摄像头采集多张第一图像,均对每张第一图像进行车道线检测,独立提取出每张第一图像所包括的第一车道线,该终端通过该摄像头道路观测建模模块,对每张第一图像执行上述步骤203-204的过程,从而实现对多张第一图像所包括的第一车道线的车道线拼接,最终得到一个更全面、准确的车道线,该终端将该检测结果继续输出给下游,以使该检测结果可被继续利用。如图5所示,在车道线检测过程中,每当采集到一张第一图像时,该终端根据对该单张图像的识别结果,识别出该第一图像所包括的第一车道线,并基于第一车道线和车道线模型中已有的第二车道线之间的距离,判断该第一车道线是否属于车道线模型中已有车道线线,如果不属于已有车道线,则将该第一车道线添加至车道线模型中,完成新车道线的构建,从而实现车道线模型的建立。如果属于已有车道线,则终端根据该第一车道线,对第二车道线所包括的各段第二折线的端点位置进行修正,在第二车道线包括噪音时,则基于高斯分布模型滤除噪音,如果不包括噪音,则确定该第二车道线为准确的车道线,从而实现车道模型的建立。
本发明实施例提供的方法,通过多个图像采集设备采集多张第一图像,先识别出每张第一图像所包括的第一车道线,再确定第二车道线和每张第一图像的第一车道线之间的距离,从而基于每张第一图像与第二图像的检测结果之间的对比做进一步判断,根据该距离最终确定该车辆当前所在车道的目标车道线,避免简单图像拼接带来的误差,提高了车道线检测的准确性。
图6是本发明实施例提供的一种车道线检测装置的结构示意图。参见图6,该装置包括:
采集模块601,用于在车辆行驶过程中,基于该车辆的多个图像采集设备,采集周围环境的多张第一图像,该多张第一图像的视点不同;
识别模块602,用于识别出该多张第一图像中每张第一图像所包括的第一车道线;
确定模块603,用于对于每张第一图像,基于该车辆的第二车道线和该每张第一图像所包括的第一车道线,确定该第二车道线与每个第一车道线之间的距离,该第二车道线为基于该车辆的多张第二图像所确定的车道线;
该确定模块603,还用于基于该第二车道线与每个第一车道线之间的距离,确定该车辆当前所在车道的目标车道线。
在一种可能实现方式中,该确定模块603,还用于对于每个第一车道线,基于该第一车道线所包括的多段第一折线与该第二车道线所包括的多段第二折线,确定每段第一折线与每段第二折线之间的距离;基于该每段第一折线与每段第二折线之间的距离,确定该第一车道线与该第二车道线之间的距离。
在一种可能实现方式中,该确定模块603,还用于对于每个第一车道线,当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,根据该第二车道线和该车辆的位置,确定该车辆的目标车道线;当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线。
在一种可能实现方式中,该确定模块603,还用于当该第二车道线与该第一车道线之间的距离小于第一预设阈值时,基于该第一车道线所包括的多个第一折线,调整该第二车道线所包括的多个第二折线的端点位置;根据调整后的第二车道线和该车辆的位置,确定该目标车道线。
在一种可能实现方式中,该确定模块603,还用于当该第二车道线与该第一车道线之间的距离不小于第一预设阈值时,继续采集该车辆的多张第三图像;确定该第二车道线与每张第三图像所包括的第三车道线与之间的距离;当该多张第三图像中满足目标条件的第三图像的数量超过第二预设阈值时,根据该第一车道线、该第二车道线和该车辆的位置,确定该车辆的目标车道线,该目标条件为所包括的第三车道线与该第二车道线之间的距离不小于该第一预设阈值。
本发明实施例提供的方法,通过多个图像采集设备采集多张第一图像,先识别出每张第一图像所包括的第一车道线,再确定第二车道线和每张第一图像的第一车道线之间的距离,从而基于每张第一图像与第二图像的检测结果之间的对比做进一步判断,根据该距离最终确定该车辆当前所在车道的目标车道线,避免简单图像拼接带来的误差,提高了车道线检测的准确性。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的车道线检测装置在检测车道线时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的车道线检测装置与车道线检测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7是本发明实施例提供的一种终端的结构示意图。该终端700可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端700包括有:处理器701和存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所执行以实现本申请中方法实施例提供的车道线检测方法。
在一些实施例中,终端700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、触摸显示屏705、摄像头706、音频电路707、定位组件708和电源709中的至少一种。
外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在再一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
定位组件708用于定位终端700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件708可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。
加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制触摸显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在终端700的侧边框和/或触摸显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在触摸显示屏705的下层时,由处理器701根据用户对触摸显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置终端700的正面、背面或侧面。当终端700上设置有物理按键或厂商Logo时,指纹传感器714可以与物理按键或厂商Logo集成在一起。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制触摸显示屏705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏705的显示亮度;当环境光强度较低时,调低触摸显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制触摸显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制触摸显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图8是本发明实施例提供的一种服务器的结构示意图,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)801和一个或一个以上的存储器802,其中,该存储器802中存储有至少一条指令,该至少一条指令由该处理器801加载并执行以实现上述各个方法实施例提供的车道线检测方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端或服务器中的处理器执行以完成上述实施例中的车道线检测方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。