CN112700486A - 对图像中路面车道线的深度进行估计的方法及装置 - Google Patents

对图像中路面车道线的深度进行估计的方法及装置 Download PDF

Info

Publication number
CN112700486A
CN112700486A CN201911013187.8A CN201911013187A CN112700486A CN 112700486 A CN112700486 A CN 112700486A CN 201911013187 A CN201911013187 A CN 201911013187A CN 112700486 A CN112700486 A CN 112700486A
Authority
CN
China
Prior art keywords
image
binocular camera
road surface
road
information
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.)
Pending
Application number
CN201911013187.8A
Other languages
English (en)
Inventor
谭梦文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuzhou Online E Commerce Beijing Co ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201911013187.8A priority Critical patent/CN112700486A/zh
Publication of CN112700486A publication Critical patent/CN112700486A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • G06T2207/30256Lane; Road marking

Abstract

本申请实施例公开了对图像中路面车道线的深度进行估计的方法及装置,所述方法包括:获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值;获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换带来的位置偏移量;通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿;根据实际视差信息,进行路面车道线的深度估计。通过本申请实施例,能够在路面存在起伏不平状态下,更准确的对相机采集到的图像中的车道线进行深度估计。

Description

对图像中路面车道线的深度进行估计的方法及装置
技术领域
本申请涉及视觉定位术领域,特别是涉及对图像中路面车道线的深度进行估计的方法及装置。
背景技术
高精度定位技术对于L3(自动系统既能完成某些驾驶任务,也能在某些情况下监控驾驶环境,但驾驶员必须准备好重新取得驾驶控制权)以上自动驾驶的实现至关重要。
自动驾驶高精度定位从定位方式上可分为三类:基于信号的定位,基于DR(deadreckoning,航迹推算)的定位,基于环境特征匹配的相对定位。其中,基于环境特征匹配的相对定位技术目前主要分为两种:以Lidar(Light Detection And Ranging,激光雷达)为主和以Camera(相机)为主。其中,Lidar通过激光扫描获得周围环境的精确3D信息,但成本高、易受雨雾天气影响;Camera可提供丰富视觉信息,可以以更低成本实现精确定位,因此,受到广泛的关注。
在基于视觉信息的定位技术中,通常可以预先针对道路交通场景建立高精地图,地图中可以对路面上的车道线等特征所在的位置进行精确记录。在定位时,通过车载的相机采集路面上的图像信息,并从采集到的图像信息中进行车道线的识别,以及车道线的深度估计,通过深度估计结果与所述高精度地图中对应的信息进行匹配,实现对车辆的厘米级精确定位。
其中,对采集到的图像中的车道线进行准确的深度估计,是精确定位中比较关键的一环。在现有技术中,通常是假设路面是个严格的平面,设定一个好相应的路面平面方程参数,从而用于大致近似的估计车道线深度。但是,实际的路面环境通常不会是严格的平面,并且更多情况是,路面中存在一些起伏或者凹凸不平的情况,即便比较微小,也会造成车辆的晃动颠簸,路面平面的假设就被打破,从而估计出的车道线深度误差很大,进而影响车道线定位精度。
因此,在视觉定位的过程中,如何在路面存在起伏不平状态下,更准确的对相机采集到的图像中的车道线进行深度估计,成为需要本领域技术人员解决的技术问题。
发明内容
本申请提供了对图像中路面车道线的深度进行估计的方法及装置,能够在路面存在起伏不平状态下,更准确的对相机采集到的图像中的车道线进行深度估计。
本申请提供了如下方案:
一种对图像中路面车道线的深度进行估计的方法,包括:
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
根据所述实际视差信息,进行路面车道线的深度估计。
一种视觉定位方法,包括:
获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
一种自动驾驶控制方法,包括;
获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述定位信息进行自动驾驶控制。
一种提供导航信息的方法,包括:
获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述定位信息提供导航信息。
一种对图像中路面车道线的深度进行估计的装置,包括:
图像采集单元,用于获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
单应矩阵获得单元,用于获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
立体匹配单元,用于通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
补偿单元,用于利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
深度估计单元,用于根据所述实际视差信息,进行路面车道线的深度估计。
一种视觉定位装置,包括:
地图数据获得单元,用于获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
图像采集单元,用于获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
深度估计单元,用于从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
定位单元,用于根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
一种自动驾驶控制装置,包括;
定位信息获得单元,用于获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
自动驾驶控制单元,用于根据所述定位信息进行自动驾驶控制。
一种提供导航信息的装置,包括:
定位信息获得单元,用于获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
导航信息提供单元,用于根据所述定位信息提供导航信息。
一种计算机系统,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
根据所述实际视差信息,进行路面车道线的深度估计。
一种计算机系统,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
通过本申请实施例,通过采用长基线的双目相机对路面环境进行图像采集,可以提高路面起伏波动情况下的车道线深度估计精度;同时,针对长基线带来的左右图像之间过大的形变差异对立体匹配过程造成的影响,本申请实施例首先通过对左右图像中其中一幅进行单应变换的方式,来减小两幅图像之间的形变差异,然后再进行立体匹配,以此提高立体匹配的效率,同时降低对计算资源的占用。当然,针对单应变换对图像中具体像素点的位置所带来的影响导致的立体匹配结果中的视差计算结果不准确的问题,还可以通过单应变换中对图像中具体像素点造成的位置偏移量对立体匹配结果中的视差计算结果进行补偿,以此获得左右两幅图像之间的相匹配的像素点之间的实际视差值。进而便可以根据这种实际视差值进行三维重建等处理,从而得到车道线的深度估计结果。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的应用场景的示意图;
图2是本申请实施例提供的系统架构的示意图;
图3是本申请实施例提供的第一方法的流程图;
图4-1、4-2是本申请实施例提供的立体校正示意图;
图5是本申请实施例提供的单应变换关系示意图;
图6是本申请实施例提供的单应变换前后图像中像素点位置变化示意图;
图7是本申请实施例中的深度估计算法示意图;
图8是本申请实施例提供的第二方法的流程图;
图9是本申请实施例提供的第三方法的流程图;
图10是本申请实施例提供的第四方法的流程图;
图11是本申请实施例提供的第一装置的示意图;
图12是本申请实施例提供的第二装置的示意图;
图13是本申请实施例提供的第三装置的示意图;
图14是本申请实施例提供的第四装置的示意图;
图15是本申请实施例提供的计算机系统的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中,针对实际路面可能存在起伏波动等情况,为了提高车道线深度估计的精度,可以使用双目相机进行路面环境图像的采集,并且,具体的双目相机可以是长基线的双目相机。其中,所谓基线是指左右双目光心之间的物理距离长度,长基线是指,本申请实施例中使用的双目相机的基线的长度可以大于传统双目相机的基线长度。例如,传统双目相机的基线长度通常在十厘米或者几十厘米的量级,而在本申请实施例中,可以采用大于100厘米的基线长度,具体长度可以根据实际的精度需求而定。通过这种长基线的双目相机,可以在图像深度方向上获得更远更精确的深度信息。这样,即使是起伏波动的路面,在对图像中的路面车道线进行深度估计时,也有利于提高估计的准确度。
但是,长基线的双目相机在获得更远更准确的深度信息的同时,还会带来一个问题:左右图像之间的形变差异会比较大,也即,物理世界中的同一个点在分别映射成左图像以及右图像中的像素点后,两个像素点之间的视差会比较大。例如,对于普通短基线的双目相机而言,物理世界中同一个点在分别映射到左右两幅图像上时,在左图像上的x轴方向上可能位于第500个像素的位置,而在右图像中的x轴方向上可能位于第480个像素的位置,此时,该同一点在两幅图像中的视差是20个像素;但是,当双目相机的基线长度变长后,同样是上述物理世界中的同一个点,在左图像上的x轴方向上位于第500个像素的位置,而在右图像中的x轴方向上却可能位于第300个像素的位置,使得同一点在左右图像中的视差成为200个像素。也即,在双目相机的基线变长之后,左右图像之间的形变差异会成倍的增大。
而在深度估计的过程中,需要通过立体匹配算法对左图像以及右图像进行像素点匹配,也即,通过算法匹配出分别位于左右两幅图像中的多个像素点对,每个像素点对中包括分别位于左图像以及右图像上的一个像素点,且这两个像素点对应着物理世界中的同一个点。之后,再计算出每个像素点对之间的视差,在此基础上才能够进行三维重建以及深度估计。
但是,在双目相机的基线变长之后,由于左右图像之间的形变差异成倍数增大,这就使得立体匹配算法在匹配过程中的计算量也成倍增大。例如,在短基线的情况下,对于左图像中的一个像素点(例如,位于x轴上第500个像素的位置),在右图像中也是在x轴上第500个像素的位置附近向左或向右搜索几十个像素,即可找到与之匹配的像素点(暂时不考虑y轴上的形变)。但是,在基线增长之后,对于左图像中同样位置的一个像素点,在右图像中该位置附近可能需要向左或向右搜索数百个像素,才能够找到与之匹配的像素点。而针对图像中的每个像素点都需要进行同样的匹配过程,其所累计增加的计算量是很明显的。并且,现有的立体匹配算法所支持的最大立体匹配长度通常在128像素以内,对于更大的形变差异,将无法获得有效的匹配结果。即使通过对算法的改进,使其能够支持更大的立体匹配长度,其匹配效率也会很低,并且对处理器等计算资源而言,通常也是一项比较大的挑战。
总之,针对路面起伏波动的情况,为了提高对路面车道线的深度估计精度,可以增大双目相机的基线长度,但是,由于长基线会导致左右图像的形变差异增大,因此,将会使得深度估计过程中的立体匹配算法无法进行有效处理,或者,匹配效率降低且需占用大量的计算资源。
为此,在本申请实施例中,提供了在长基线基础上,使立体匹配算法依然能够有效处理,顺利获得左右图像之间的视差,进而进行实现精确的深度估计的实现方案。在该方案中,在通过长基线的双目相机对路面环境采集到左右图像后,可以首先针对左右相机的像平面求解出单应矩阵,然后,通过单应矩阵对其中左图像或者右图像进行单应变换。由于单应矩阵是用于对左右相机的像平面之间的矩阵变换关系进行描述的矩阵,因此,通过这种方式对其中一个图像进行变换后,可以减小左右图像之间的形变差异。后续在进行立体匹配时,可以基于这种单应变换后的图像与另一未作变换的图像进行立体匹配以及视差计算。这样,即使无需对立体匹配算法支持的最大匹配长度进行改进,即可高效地完成匹配以及视差计算,降低对计算资源的压力。当然,由于在立体匹配之前对其中一幅图像进行了单应变换,使得该图像中的像素点发生了位移,因此,通过上述方式计算出的左右图像之间的视差并不能反映实际情况。为此,在具体实现时,在进行对其中一幅图像进行单应变换之后,还可以确定出由所述单应变换对被变换图像中的像素点带来的位置偏移量。这样,在根据单应变换后的图像进行立体匹配并计算出视差后,还可以通过这种位置偏移量对计算出的视差进行补偿,从而计算出左图像与右图像之间的实际视差。进而,在该视差基础上图像中路面车道线对应的像素点进行深度估计即可。
从应用场景角度而言,参见图1,本申请实施例中可以应用于对道路交通环境中行驶的车辆进行定位的场景,具体的双目相机11可以安装在车辆12上,在车辆行驶的过程中,通过双目相机对路面环境进行图像采集。车辆中还可以包括具体的定位系统,用于通过对采集到的图像中包含的路面车道线13上的点P进行识别以及深度估计(图中仅以一个点P进行标识,实际应用中可以对多个点进行识别),进而通过将深度估计结果与预先建立的高精地图进行匹配,完成对车辆的定位。或者,具体的定位系统也可以位于云端,此时,具体采集到的图像可以上传到云端服务器中,在服务器中获得定位结果再返回给车辆,或提供给其他车辆。当然,为了减少由于信息传输延迟造成的定位延迟,优选的方式下,具体的定位系统可以位于车辆内部。如果其他车辆需要获取该车辆的定位信息,则该车辆可以将其定位信息上传到服务器,再由服务器向其他车辆转发,等等。
从系统架构角度而言,参见图2所示,在一种具体的实现方式下,车辆上可以安装有长基线的双目相机设备,用于对路面环境中的图像进行采集。另外,车辆内可以基于预先部署的计算机系统、工控机系统等,运行具体的定位系统,通过该定位系统可以根据双目相机设备采集到的图像对车辆进行定位。在定位的过程中,就可以通过立体校正(该步骤为可选步骤,在后文中会有介绍)、单应变换、立体匹配、深度估计等模块,获得车道线的深度信息,其中单应变换模块是本申请实施例中比较关键的模块。在获得深度信息后,再结合预先从云端服务器获得的高精地图,可以完成具体对车辆的定位。再者,车辆内还可以运行有自动驾驶决策系统,具体的定位结果可以提供给这种自动驾驶决策系统,用于辅助进行驾驶决策。也可以将定位结果提供给导航系统,导航系统可以结合电子地图系统为车辆的驾驶员提供导航信息,等等。
下面对本申请实施例提供的具体实现方式进行详细介绍。
实施例一
首先,该实施例一提供了一种对图像中路面车道线的深度进行估计的方法,参见图3,该方法具体可以包括:
S301:获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
具体实现时,可以为车辆等交通参与者安装双目相机,所谓的双目相机就是指具有两个摄像头的相机,或者,也可以通过两部相机来实现。双目定位过程中,对于被拍摄物体上的一个特征点,用两部固定于不同位置的相机摄得物体的左图像以及右图像,并且可以分别获得该点在两部相机像平面上的坐标,之后通过特征提取、立体匹配、三维重构等步骤,可以获得特征点的深度信息,该深度信息可以用于对车辆等进行定位。
如前文所述,在本申请实施例中,可以采用长基线的双目相机,也即,两部相机之间的距离比较大,例如,普通的双目相机,其基线长度大约在10厘米到几十厘米之间,而本申请实施例中,可以采用大于100厘米的基线长度。当然,具体实现时,基线长度可以根据实际场景中的深度估计精度的需求而定。另外,在不同的场景中,还可以根据路面的起伏波动程度的不同,设定不同长度的基线,等等。
需要说明的是,在进行定位的过程中,随着车辆的行驶,双目相机会按照一定的帧率(例如30帧/秒,等等)进行图像采集,每采集到一帧图像,都可以基于该帧图像对车辆进行定位。因此,在该步骤S301中,具体获得的图像,就可以是双目相机采集到的当前的图像帧,由于是双目相机,因此,具体的图像帧可以包括左图像以及右图像这样两幅图像,后续就是基于该左图像以及右图像进行深度估计。
另外需要说明的是,在本申请实施例中,主要是基于路面上的车道线信息对车辆进行定位,因此,双目相机具体采集图像时,可以对相机的架设角度等进行调节,保证在车辆行驶过程中,双目相机能够采集到路面上的图像数据。而之所以采用路面上的车道线这一特征进行定位,是因为,路面上的车道线这种特征在道路路面上通常是一直存在的,尤其是在高速路等更适合自动驾驶的环境中,路面上的车道线通常都会比较明显。因此,只需要预先在高精地图中对车道线特征进行记录,包括其长度、宽度、具体特征点在世界坐标系中的位置,等等,并从采集到的图像中识别出符合车道线特征的像素点,再获得其深度信息,则可以与高精地图相结合,实现对车辆的精确定位。
再者,在具体实现时,为了便于后续进行左右图像的立体匹配,在可选的实施方式中,获得当前的左图像以及右图像之后,还可以对左图像以及右图像进行立体校正处理。其中,立体校正是降低立体匹配计算复杂性的最有效方法之一。所谓的立体校正是指,将原来不共面、不对准的左图像以及右图像,校正为共面、行对准的状态,从而使得立体匹配的复杂度从二维搜索降至一维搜索。
具体的,为了能够获取到图像的深度信息,双目相机在架设时,两者的光轴会呈一定的角度,这就使得两部相机的像平面之间也存在一定的角度,左右图像之间的像素点基本也不是行对准的状态。例如,对于物理世界中的某个特征点,映射到左相机的像平面后,所在的位置是(x1,y1),映射到右相机的像平面后,所在的位置是(x2,y2),并且,x1≠x2,y1≠y2。而立体匹配算法的目的是,对于左图像中的像素点(x1,y1),在右图像中找到与之匹配的像素点(x2,y2),所谓的匹配,就是指左右图像中两个相匹配的像素点对应着物理世界中的同一个特征点。但是,在x1≠x2,y1≠y2的情况下,立体匹配算法就需要在x轴以及y轴方向上进行二维的搜索,才能够完成匹配。而同一个像素点在x轴以及y轴方向上的邻域中存在8个像素点,因此,二维搜索的难度会非常大,使得立体匹配的效率非常低。
为此,可以预先对左图像以及右图像进行立体校正,将实际非共面行对准的两幅图像,校正为共面行对准的状态。如图4-1所示,其中展示出了立体校正前左右图像的状态,而图4-2展示出了立体校正后左右图像的状态。其中,所谓的行对准是指,两幅图像中的互相匹配的像素点在y轴方向上是对准的。也即,对于左图像中的像素点(x1,y1),在校正之后,其坐标成为(x′1,y′1),对于右图像中的像素点(x2,y2),在校正之后,其坐标成为(x′2,y′2),其中,x′1≠x′2,但是,y′1=y′2。换言之,在立体校正后,立体匹配之前,已经获知相互匹配的两个像素点在左右图像中的纵坐标是相同的,因此,立体匹配时,只需要在x轴方向上进行一维的搜索,接口完成立体匹配,以此降低立体匹配的计算复杂性。
其中,关于具体的立体校正算法,可以采用已有技术中的算法来实现,这里不再详述。但是需要说明的是,在完成立体校正之后,由于左图像与右图像的像平面不再体现双目相机的原始状态,包括两部相机各自的焦距,两部相机之间的角度等。而在后续的立体匹配、三维重建等步骤中,还需要用到双目相机的内参、外参信息。因此,为了保证基于立体校正后的左右图像进行立体匹配、三维重建等处理后的结果的准确性,在完成立体校正后,还可以重新生成一组新的内参、外参数据,使之与立体校正后的图像状态相匹配,这样,后续在基于立体校正后的图像进行立体匹配或三维重建等处理时,可以使用与校正后的图像匹配的相机内参以及外参进行计算,以此确保计算结果的准确性。其中,所谓的内参是指:双目相机中两部相机各种的内部参数,包括焦距、图像中心位置、畸变系数,等等。而外参是指两部相机之间的参数,通常可以包括平移向量和旋转矩阵等。
S302:获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
在本申请实施例中,由于双目相机采用的是长基线,因此,使得左右两幅图像之间的形变差异比较大,即使进行了立体校正,两幅图像中相互匹配的两个像素点之间的视差可能也会比较大,以此增加立体匹配算法的难度,甚至造成立体匹配算法的不支持,或者对计算资源的过多占用。为了解决该问题,在本申请实施例中,在进行立体匹配之前,可以首先对左右图像中的其中一幅进行单应变换。所谓的单应变换是根据单应矩阵的定义而言的。具体的,一个严格的平面在两个摄像机下的图像之间的关系是一个二维射影变换,假设矩阵H用于实现第一个像平面与第二个像平面的一一变换,则称矩阵H为平面诱导的两个摄像机的像平面间(或两幅图像间)的单应矩阵,相应的,通过单应矩阵对其中一幅图像进行的变换称为单应变换。
其中,单应矩阵可以看作是用于描述左右图像之间形变差异的矩阵,因此,通过对其中一幅图像进行单应变换,可以使得变换后的图像与另一幅图像之间的形变差异减小,从而有利于提高后续立体匹配算法的效率。
其中,在具体进行单应变换之前,首先可以获得左相机的成像平面与右相机的成像平面之间的单应矩阵H。所谓的单应矩阵,其描述了平面与平面之间的线性变换。假设存在一个路面平面,如图5所示,所谓的平面与平面之间的线性关系,其中的平面就可以包括两个相机的像平平面以及一个路面平面。其中,在路面平面为一个绝对的平面的情况下,假设左相机的光心O1与左相机像平面上的像素点x的连线的延长线,与路面平面相交的点X(实际物理空间中的点),则该路面平面上的点X与右相机的光心O2之间的连线与右相机像平面的交点x′,便是右图像中与左图像中的像素点x相匹配的像素点。如果已知左图像与右图像中几对(例如,至少四对)相匹配的像素点各自的坐标,则可以计算出平面间的单应矩阵。
当然,在进行立体匹配之前,并不能获知左右图像之间哪些像素点是相匹配的。为此,在具体求解单应矩阵时,可以采用以下方式来进行:首先,虚拟一个严格的路面平面,并且可以获知路面平面的参数信息,构造出路面平面方程。之后,可以在虚拟的路面平面上选取不共线的任意四个点(或更多),把这四个点分别反投影到左相机像平面和右相机像平面,得到四对相匹配的像素点,然后再用这四对像素点分别在左图像以及右图像中的坐标信息,以及双目相机的内参矩阵、外参变换矩阵等,即可求解出两个平面之间的单应矩阵。
在求解出单应矩阵后,便可以利用该单应矩阵对左图像或右图像中的其中一幅进行单应变换(为便于描述,下文中主要以对左图像进行单应变换为例进行介绍)。其中,对左图像进行单应变换后,左图像中的像素点的位置在变换前后会发生偏移。并且,如果实际路面也是严格的平面,则变换后的左图像中的像素点与右图像中与之对应物理世界中同一特征点的像素点(也即前述的相匹配的像素点),应该是完全重合的。但是,由于实际路面并不是一个严格的平面,而是具有一定程度的起伏波动,这就使得变换后的左图像与右图像中相匹配的像素点并不是完全重合,而是仍然存在形变差异,但是,两者之间的距离已经缩小了,以此达到减小左图像与右图像之间形变差异的目的。
例如,如图6所示,假设在未进行单应变换之前,左图像与右图像中一对相匹配的点p1和p2,其中,左图像中的点p1在x轴方向上的坐标为xl,右图像中的点p2在x轴方向上的坐标为xr,两者之间的形变差异也即视差为:xl-xr。而在对左图像进行了单应性变换后,该左图像中的点p1变换到了p′1所在的位置,其在x轴方向上的坐标为x′l,此时,该变换后的左图像上的点p′1与右图像上的p2之间的形变差异也即视差为:x′l-xr。由图中可见,x l-xr<xl-xr,以此体现出单应变换后,两个图像之间的形变差异缩小。
当然,由于在单应变换的过程中,被变换的图像中的像素点发生了位移,如图6所示,对左图像进行单应变换后,左图像中的点p1变换到了p′1所在的位置。因此,后续通过立体匹配之后计算出的相匹配的像素点之间的视差将无法体现出原始图像中的真正视差值。为此,在进行单应变换之后,还可以确定出由所述单应变换对被变换图像中的像素点带来的位置偏移量,也即x′l-xl。后续在通过立体匹配算法计算出具体的视差(x′l-xr)后,可以利用该位置偏移量进行补偿,以此获得原始图像中的实际视差。也即(x′l-xr)-(x′l-xl)=xl-xr,从而得到原始的左图像与右图像之间的实际视差。当前,前述关于视差的表达,都可以是在对左右图像进行了立体校正之后进行的,因此,仅体现了x轴方向上的视差变化,关于y轴方向上,由于已经通过立体校正进行了对准,因此,即使对其中一幅图像进行了单应变换,两幅图像仍然处于行对准状态,后续的立体匹配仍然只需要在x轴方向上进行一维搜索即可。
其中,关于具体图像中的每个像素点,都可以计算得到一个位置偏移量的值,具体保存这些信息时,可以以图的形式进行保存,图中的每个像素点对应一个浮点值,该浮点值就是对应位置上的像素点的位置偏移量信息。
S303:通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
由于对其中一幅图像进行了单应变换,因此,就可以在该单应变换后的图像的基础上,与另一幅图像进行立体匹配,确定出两幅图像之间相互匹配的像素点对,同时可以求解出相互匹配的像素点之间的视差值。其中,具体的立体匹配算法可以使用已有的算法来实现。例如,一类是基于窗口的局部立体匹配算法,它只需在窗口的范围内选择匹配代价聚集后的最佳点(最佳点的获取通常采用绝对误差和算法SAD或误差平方和算法SSD等结果取最小值)作为对应的匹配点(WTA赢者通吃)。另一类是基于全局的立体匹配算法,实质是获得能量函数的最小值,算法先给出一个能量评价函数,然后通过优化算法来求得能量的最小值,使能量函数最小的匹配关系即为最终的视差,同时可以获得每对像素点之间的视差值。局部匹配算法只有数据项,并无平滑项。全局算法包含数据项和平滑项。关于具体的算法实现细节这里不进行详述。
其中,具体计算出的视差值也是多个,具体也可以通过图的方式来进行记录,其中,图中每个像素点同样可以对应一个浮点值,该浮点值就是对应位置上的像素点与其在另一图像中相匹配的像素点之间的视差值。
S304:利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
由于单应变换为被变换的图像中的像素点带来了位置偏移,因此,在通过立体匹配算法计算出相匹配的像素点之间的视差后,还可以利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,这样便可以确定所述左图像与右图像之间的实际视差。该实际的视差值同样也可以以图的形式进行保存。
S305:根据所述实际视差信息,进行路面车道线的深度估计。
在获得左右图像中相互匹配的像素点之间的视差之后,便可以进行三维重建,以此实现对路面车道线的深度估计。具体的,首先可以从单应变换前的左图像或右图像中进行路面车道线识别;然后,根据对应相机内参中的焦距信息、所述基线的长度以及所述实际视差信息,确定属于所述路面车道线的像素点对应的深度信息。
其中,车道线检测解决方案主要可以通过图像处理的方式来进行,其中,由于检测的目标可能是直线也可能是曲线,而且只是“线”,因此,可以采用传统的图像处理方法来解决。或者,在本申请实施例中,还可以通过预先训练得到的卷积神经网络(CNN)模型进行所述路面车道线识别。CNN模型通常是由卷积块堆叠构建,有强大的特征提取能力,通过设计编码解码结构的语义分割网络结构,可以用于提取检测图像中的路面车道线。其中,该网络的训练可以是采用Pytorch等深度学习框架,训练数据集可以是通过实际路况采集获得的图像,并人工标注等方式从中标注出车道线多边形(路面上的车道线具有一定的宽度,在标注时,可以对车道线的轮廓进行标注,该轮廓通常就构成多边形),完成该车道线网络的训练,这样,在进行车道线检测时,具体的检测结果也可以是车道多边形,多边形内部的像素点就全部是属于车道线的像素点。
其中,在实际应用中,在采集训练数据时,可以针对多种不同的环境(包括风雪雨等天气环境等)下的实际路况分别进行采集。这样,由于训练样本覆盖了多种不同环境下采集到的路况数据,因此,实际从各种环境下采集到的图像中进行车道线识别时,可以不受各种环境的影响,更准确鲁棒地识别提取出车道线多边形。
需要说明的是,由于之前计算的视差图可以是与被单应变换的图像在变换前的图像中(例如,单应变换前的左图像)的各个像素点对应的,因此,具体在进行车道线多边形提取时,也可以从该被单应变换的图像在变换前的图像中进行提取。
在获取了左右图像中相互匹配的像素点之间的视差信息,并识别出车道线相关的像素点后,便可以根据双目相机参数的配置,转换为空间深度信息Z,从而获取车道线深度图。
具体的,进行转换时所依据的公式可以为:
Figure BDA0002244811820000171
其中,f为相机焦距,具体可以是被单应变换的图像对应的相机的焦距。B为基线长度,xl为相互匹配的一对像素点中,左图像中的像素点在x轴上的坐标,xr为右图像中对应匹配的像素点在x轴上的坐标,两者之差d便是两者之间的视差。具体可以如图7所示,其中,P为实际物理空间中的一个特征点,Ol和Or分别是左右相机的光心位置,p和p′分别是P点在左右相机像平面中的投影。在已知p和p′之间的视差,以及相机的焦距、相机之间的基线长度信息后,便可以计算出P点的深度信息,也即,车辆中心与该P点在z轴方向上的距离。进而,根据高精地图中,该P点在世界坐标系中的位置信息,便可以实现对车辆的定位。
这里需要说明的是,在图7所示的例子中,左右相机的光轴是平行的,这是因为,具体的深度估计是在对左右图像进行立体校正的基础上进行的,相应的,关于相机的焦距这一参数信息,可以是根据调整后的与立体校正后的图像相匹配的焦距参数来确定的。
需要说明的是,在本申请的可选实施例中,在获得具体的深度估计信息后,还可以根据所述深度估计的结果与预先获得的地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息。之后,还可以根据定位结果,确定所述双目相机识别出的车道线形状相对于地图数据中对应路段的标准车道线的形变情况,进而,可以根据所述形变情况确定路面起伏程度,以用于根据所述路面起伏程度对所述双目相机的基线长度进行调节。也就是说,在实际应用中,不同路段的起伏程度可能不同,在起伏程度相对比较低的情况下,实际上可以不必采用长基线的方式来实现,这样可以节省计算资源。因此,在本申请的可选实施方式中,还可以在进行定位的过程中,通过双目相机识别出的车道线的形变情况,对车道的起伏程度进行判断,进而可以根据实际的起伏程度的变化来调节基线长度。这样,可以在必要时采用长基线的方式来进行定位,以此从整体上降低对计算资源的占用,提升定位效率。
总之,通过本申请实施例,通过采用长基线的双目相机对路面环境进行图像采集,可以提高路面起伏波动情况下的车道线深度估计精度;同时,针对长基线带来的左右图像之间过大的形变差异对立体匹配过程造成的影响,本申请实施例首先通过对左右图像中其中一幅进行单应变换的方式,来减小两幅图像之间的形变差异,然后再进行立体匹配,以此提高立体匹配的效率,同时降低对计算资源的占用。当然,针对单应变换对图像中具体像素点的位置所带来的影响导致的立体匹配结果中的视差计算结果不准确的问题,还可以通过单应变换中对图像中具体像素点造成的位置偏移量对立体匹配结果中的视差计算结果进行补偿,以此获得左右两幅图像之间的相匹配的像素点之间的实际视差值。进而便可以根据这种实际视差值进行三维重建等处理,从而得到车道线的深度估计结果。
实施例二
在前述实施例一中,提供了在长基线情况下,对图像中路面车道线的深度进行估计的方法,以此实现对路面起伏波动情况下对路面车道线进行精确的深度估计。而在实际应用中,具体的深度估计结果可以应用到定位过程中,为此,本申请实施例二还提供了一种视觉定位方法,参见图8,该方法具体可以包括:
S801:获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
在具体实现时,可以通过性能更高的设备采集,采用复杂度更高的算法生成上述高精地图,还可以通过人工复检的方式确保地图数据的准确性。
S802:获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
S803:从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
S804:根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
具体实现时,在可选的实施方式中,还可以根据定位结果对地图数据中对应路段的车道线图像进行展示,并在地图数据的基础上,对所述双目相机识别出的车道线进行图形化展示。这样,可以在定位的过程中提供直观的可视化信息。
实施例三
在从双目相机采集到的图像中进行了路面车道线识别以及深度估计,并据此对车辆进行了定位后,具体的定位信息可以应用到多种具体的应用场景中,例如,一种场景下,可以通过这种定位信息为自动驾驶系统提供驾驶决策的依据。为此,在本申请实施例三中,还从车辆的自动驾驶系统的角度,提供了一种自动驾驶控制方法,参见图9,该方法具体可以包括;
S901:获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
S902:根据所述定位信息进行自动驾驶控制。
其中,具体在进行自动驾驶控制时,根据定位信息可以确定车辆当前所处的位置信息,进而,可以根据该位置信息、车辆当前的运动参数信息、周围其他交通参与者的位置信息等,做出具体的驾驶决策方案,包括是否需要转向,是否改变车道,等等。更细节的方法在这本申请实施例中不再详述。
实施例四
该实施例四针对定位信息在导航场景中的应用,也即,在人工驾驶的情况下,也可以利用这种定位信息,为驾驶员用户提供导航信息。具体的,该实施例四提供了一种提供导航信息的方法,参见图10,该方法具体可以包括:
S1001:获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
S1002:根据所述定位信息提供导航信息。
具体在获得车辆的定位信息后,可以结合电子地图数据与预先规划的路线等,提供相应的导航信息,包括对前方路口处行驶方向的提示,在接近路口时进行的转向提示,对道路上的交通事故多发路段的提示,等等。其中,用于提供导航信息的电子地图与前述用于进行定位的高精地图可以是不同的,导航时所用到的电子地图同时用于显示给驾驶员用户,而用于对车辆进行基于视觉定位的高精地图则通常不会展示给用户,仅在后台的数据匹配过程中会用到。
关于前述实施例二至实施例四中的未详述部分,可以参见前述实施例一中的记载,这里不再赘述。
与实施例一相对应,本申请实施例还提供了一种对图像中路面车道线的深度进行估计的装置,参见图11,该装置具体可以包括:
图像采集单元1101,用于获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
单应矩阵获得单元1102,用于获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
立体匹配单元1103,用于通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
补偿单元1104,用于利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
深度估计单元1105,用于根据所述实际视差信息,进行路面车道线的深度估计。
具体实现时,该装置还可以包括:
立体校正单元,用于对所述左图像以及右图像进行立体校正,以便校正后的左图像与右图像共面且行对准,并在所述立体校正后的图像基础上进行立体匹配。
另外该装置还可以包括:
参数修改单元,用于修改所述双目相机的内参以及外参,使其与校正后的左图像以及右图像适配,以便在基于校正后的图像进行单应变换、立体匹配以及深度估计时,利用修改后的内参以及外参进行所述单应变换、立体匹配以及深度估计。
具体的,所述单应矩阵获得单元具体可以用于:
根据假设的路面平面以及双目相机的内参、外参信息,获得所述单应矩阵。
所述深度估计单元具体可以用于:
车道线识别子单元,用于从单应变换前的左图像或右图像中进行路面车道线识别;
车道线深度信息确定子单元,用于根据对应相机内参中的焦距信息、所述基线的长度以及所述实际视差信息,确定属于所述路面车道线的像素点对应的深度信息。
其中,所述车道线识别子单元具体可以用于:
通过预先训练得到的卷积神经网络模型进行所述路面车道线识别。
其中,模型训练所使用的训练数据集是通过对多种环境下进行实际路况采集并标注出车道线多边形的图像数据。
其中,所述基线长度的阈值是根据路面起伏波动情况下所需的路面车道线深度估计精度而确定的。
在实际应用中,该装置还可以包括:
定位单元,用于根据所述深度估计的结果与预先获得的地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位;所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息
形变情况确定单元,用于根据定位结果,确定所述双目相机识别出的车道线形状相对于地图数据中对应路段的标准车道线的形变情况;
路面起伏程度判断单元,用于根据所述形变情况确定路面起伏程度,以用于根据所述路面起伏程度对所述双目相机的基线长度进行调节。
与实施例二相对应,本申请实施例还提供了一种视觉定位装置,参见图12,该装置具体可以包括:
地图数据获得单元1201,用于获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
图像采集单元1202,用于获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
深度估计单元1203,用于从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
定位单元1204,用于根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
具体实现时,该装置还可以包括:
展示单元,用于根据定位结果对地图数据中对应路段的车道线图像进行展示,并在地图数据的基础上,对所述双目相机识别出的车道线进行图形化展示。
与实施例三相对应,本申请实施例还提供了一种自动驾驶控制装置,参见图13,该装置可以包括;
定位信息获得单元1301,用于获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
自动驾驶控制单元1302,用于根据所述定位信息进行自动驾驶控制。
与实施例四相对应,本申请实施例还提供了一种提供导航信息的装置,参见图14,该装置可以包括:
定位信息获得单元1401,用于获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
导航信息提供单元1402,用于根据所述定位信息提供导航信息。
另外,本申请实施例还提供了一种计算机系统,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
根据所述实际视差信息,进行路面车道线的深度估计。
以及一种计算机系统,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
其中,图15示例性的展示出了电子设备的架构,具体可以包括处理器1510,视频显示适配器1511,磁盘驱动器1512,输入/输出接口1513,网络接口1514,以及存储器1520。上述处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520之间可以通过通信总线1530进行通信连接。
其中,处理器1510可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器1520可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1520可以存储用于控制电子设备1500运行的操作系统1521,用于控制电子设备1500的低级别操作的基本输入输出系统(BIOS)。另外,还可以存储网页浏览器1523,数据存储管理系统1524,以及深度估计处理系统1525等等。上述深度估计处理系统1525就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器1520中,并由处理器1510来调用执行。
输入/输出接口1513用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口1514用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1530包括一通路,在设备的各个组件(例如处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520)之间传输信息。
需要说明的是,尽管上述设备仅示出了处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,存储器1520,总线1530等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的对图像中路面车道线的深度进行估计的方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。

Claims (19)

1.一种对图像中路面车道线的深度进行估计的方法,其特征在于,包括:
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
根据所述实际视差信息,进行路面车道线的深度估计。
2.根据权利要求1所述的方法,其特征在于,还包括:
对所述左图像以及右图像进行立体校正,以便校正后的左图像与右图像共面且行对准,并在所述立体校正后的图像基础上进行立体匹配。
3.根据权利要求2所述的方法,其特征在于,还包括:
修改所述双目相机的内参以及外参,使其与校正后的左图像以及右图像适配,以便在基于校正后的图像进行单应变换、立体匹配以及深度估计时,利用修改后的内参以及外参进行所述单应变换、立体匹配以及深度估计。
4.根据权利要求1所述的方法,其特征在于,
所述获得左相机的成像平面与右相机的成像平面之间的单应矩阵,包括:
根据假设的路面平面以及双目相机的内参、外参信息,获得所述单应矩阵。
5.根据权利要求1所述的方法,其特征在于,
所述根据所述实际视差信息,进行路面车道线的深度估计,包括:
从单应变换前的左图像或右图像中进行路面车道线识别;
根据对应相机内参中的焦距信息、所述基线的长度以及所述实际视差信息,确定属于所述路面车道线的像素点对应的深度信息。
6.根据权利要求5所述的方法,其特征在于,
所述从单应变换前的左图像或右图像中进行路面车道线识别,包括:
通过预先训练得到的卷积神经网络模型进行所述路面车道线识别。
7.根据权利要求6所述的方法,其特征在于,
模型训练所使用的训练数据集是通过对多种环境下进行实际路况采集并标注出车道线多边形的图像数据。
8.根据权利要求1至7任一项所述的方法,其特征在于,
所述基线长度的阈值是根据路面起伏波动情况下所需的路面车道线深度估计精度而确定的。
9.根据权利要求1至7任一项所述的方法,其特征在于,还包括:
根据所述深度估计的结果与预先获得的地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位;所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息
根据定位结果,确定所述双目相机识别出的车道线形状相对于地图数据中对应路段的标准车道线的形变情况;
根据所述形变情况确定路面起伏程度,以用于根据所述路面起伏程度对所述双目相机的基线长度进行调节。
10.一种视觉定位方法,其特征在于,包括:
获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
11.根据权利要求10所述的方法,其特征在于,还包括:
根据定位结果对地图数据中对应路段的车道线图像进行展示,并在地图数据的基础上,对所述双目相机识别出的车道线进行图形化展示。
12.一种自动驾驶控制方法,其特征在于,包括;
获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述定位信息进行自动驾驶控制。
13.一种提供导航信息的方法,其特征在于,包括:
获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述定位信息提供导航信息。
14.一种对图像中路面车道线的深度进行估计的装置,其特征在于,包括:
图像采集单元,用于获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
单应矩阵获得单元,用于获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
立体匹配单元,用于通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
补偿单元,用于利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
深度估计单元,用于根据所述实际视差信息,进行路面车道线的深度估计。
15.一种视觉定位装置,其特征在于,包括:
地图数据获得单元,用于获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
图像采集单元,用于获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
深度估计单元,用于从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
定位单元,用于根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
16.一种自动驾驶控制装置,其特征在于,包括;
定位信息获得单元,用于获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
自动驾驶控制单元,用于根据所述定位信息进行自动驾驶控制。
17.一种提供导航信息的装置,其特征在于,包括:
定位信息获得单元,用于获得关联车辆的定位信息,所述定位信息是根据所述车辆关联的双目相机设备的观测数据与地图数据相匹配的方式获得的;其中,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;所述双目相机的基线长度大于阈值;所述双目相机设备的观测数据包括:根据双目相机采集到的图像所识别出的路面车道线以及深度估计结果,其中,在深度估计过程中,对所述双目相机采集到的左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
导航信息提供单元,用于根据所述定位信息提供导航信息。
18.一种计算机系统,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
获得左相机的成像平面与右相机的成像平面之间的单应矩阵,利用所述单应矩阵对左图像或右图像进行单应变换,并确定由所述单应变换对被变换图像中的像素点带来的位置偏移量;
通过立体匹配算法,对单应变换后的图像与另一图像进行像素点匹配,并计算出匹配成功的像素点之间的视差;
利用所述位置偏移量对所述立体匹配算法计算出的视差进行补偿,确定所述左图像与右图像之间的实际视差;
根据所述实际视差信息,进行路面车道线的深度估计。
19.一种计算机系统,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如下操作:
获得地图数据,所述地图数据中包括道路交通场景中路面车道线对应的特征点的位置信息;
获得通过双目相机对路面环境采集到的图像,其中,所述双目相机的基线长度大于阈值,所述图像包括左图像以及右图像;
从所采集到的图像中进行路面车道线的识别,并对路面车道线上的像素点进行深度估计;其中,在深度估计过程中,对所述左图像或右图像进行单应变换后,再通过立体匹配算法进行两幅图像中的像素点匹配以及视差计算;
根据所述深度估计的结果与所述地图数据中的特征点进行匹配,并根据匹配结果以及所述特征点对应的位置信息,对关联车辆进行定位。
CN201911013187.8A 2019-10-23 2019-10-23 对图像中路面车道线的深度进行估计的方法及装置 Pending CN112700486A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911013187.8A CN112700486A (zh) 2019-10-23 2019-10-23 对图像中路面车道线的深度进行估计的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911013187.8A CN112700486A (zh) 2019-10-23 2019-10-23 对图像中路面车道线的深度进行估计的方法及装置

Publications (1)

Publication Number Publication Date
CN112700486A true CN112700486A (zh) 2021-04-23

Family

ID=75505141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911013187.8A Pending CN112700486A (zh) 2019-10-23 2019-10-23 对图像中路面车道线的深度进行估计的方法及装置

Country Status (1)

Country Link
CN (1) CN112700486A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112985360A (zh) * 2021-05-06 2021-06-18 中汽数据(天津)有限公司 基于车道线的双目测距校正方法、装置、设备和存储介质
CN113259589A (zh) * 2021-05-17 2021-08-13 中新国际联合研究院 一种基线自适应调整的双目相机智能感知方法及其装置
CN113450335A (zh) * 2021-06-30 2021-09-28 湖南三一华源机械有限公司 一种路沿检测方法、路沿检测装置及路面施工车辆
CN114782447A (zh) * 2022-06-22 2022-07-22 小米汽车科技有限公司 路面检测方法、装置、车辆、存储介质及芯片

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009040872A1 (ja) * 2007-09-25 2009-04-02 Fujitsu Limited 画像合成装置及び方法
CN101710932A (zh) * 2009-12-21 2010-05-19 深圳华为通信技术有限公司 图像拼接方法及装置
CN103679707A (zh) * 2013-11-26 2014-03-26 西安交通大学 基于双目相机视差图的道路障碍物检测系统及检测方法
WO2018086348A1 (zh) * 2016-11-09 2018-05-17 人加智能机器人技术(北京)有限公司 双目立体视觉系统及深度测量方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009040872A1 (ja) * 2007-09-25 2009-04-02 Fujitsu Limited 画像合成装置及び方法
CN101710932A (zh) * 2009-12-21 2010-05-19 深圳华为通信技术有限公司 图像拼接方法及装置
CN103679707A (zh) * 2013-11-26 2014-03-26 西安交通大学 基于双目相机视差图的道路障碍物检测系统及检测方法
WO2018086348A1 (zh) * 2016-11-09 2018-05-17 人加智能机器人技术(北京)有限公司 双目立体视觉系统及深度测量方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CHANG-KUN YAO: "VLSI implementation of a real-time vision based lane departure warning system", IEEE, 31 January 2013 (2013-01-31) *
同志学;赵涛;王消为;: "基于双目序列图像的测距定位与自车速度估计", 应用光学, no. 05, 15 September 2017 (2017-09-15) *
张振;吕莉;石爱业;刘海韵;王慧斌;: "基于物像尺度变换的河流水面流场定标方法", 仪器仪表学报, no. 09, 15 September 2017 (2017-09-15) *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112985360A (zh) * 2021-05-06 2021-06-18 中汽数据(天津)有限公司 基于车道线的双目测距校正方法、装置、设备和存储介质
CN113259589A (zh) * 2021-05-17 2021-08-13 中新国际联合研究院 一种基线自适应调整的双目相机智能感知方法及其装置
CN113450335A (zh) * 2021-06-30 2021-09-28 湖南三一华源机械有限公司 一种路沿检测方法、路沿检测装置及路面施工车辆
CN114782447A (zh) * 2022-06-22 2022-07-22 小米汽车科技有限公司 路面检测方法、装置、车辆、存储介质及芯片

Similar Documents

Publication Publication Date Title
WO2021233029A1 (en) Simultaneous localization and mapping method, device, system and storage medium
KR101725060B1 (ko) 그래디언트 기반 특징점을 이용한 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법
CN112734852B (zh) 一种机器人建图方法、装置及计算设备
CN112444242B (zh) 一种位姿优化方法及装置
Fathi et al. Automated sparse 3D point cloud generation of infrastructure using its distinctive visual features
CN112700486A (zh) 对图像中路面车道线的深度进行估计的方法及装置
US8437501B1 (en) Using image and laser constraints to obtain consistent and improved pose estimates in vehicle pose databases
CN109300143B (zh) 运动向量场的确定方法、装置、设备、存储介质和车辆
JP7422105B2 (ja) 路側計算装置に用いる障害物3次元位置の取得方法、装置、電子デバイス、コンピュータ可読記憶媒体、及びコンピュータプログラム
WO2015024407A1 (zh) 基于电力机器人的双目视觉导航系统及方法
CN113903011A (zh) 一种适用于室内停车场的语义地图构建及定位方法
CN114969221A (zh) 一种更新地图的方法及相关设备
CN111768489B (zh) 一种室内导航地图构建方法和系统
CN114037762A (zh) 基于图像与高精度地图配准的实时高精度定位方法
CN113763504A (zh) 地图更新方法、系统、车载终端、服务器及存储介质
CN116958452A (zh) 三维重建方法和系统
CN111862146B (zh) 一种目标对象的定位方法及装置
CN111553342A (zh) 一种视觉定位方法、装置、计算机设备和存储介质
CN112651991A (zh) 视觉定位方法、装置及计算机系统
CN116295412A (zh) 一种基于深度相机的室内移动机器人稠密建图与自主导航一体化方法
KR102516450B1 (ko) 맵 생성 방법 및 이를 이용한 이미지 기반 측위 시스템
CN113763468B (zh) 一种定位方法、装置、系统及存储介质
CN113011212B (zh) 图像识别方法、装置及车辆
Unger et al. Efficient stereo matching for moving cameras and decalibrated rigs
Kadiofsky et al. Off-road terrain mapping based on dense hierarchical real-time stereo vision

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230717

Address after: Room 437, Floor 4, Building 3, No. 969, Wenyi West Road, Wuchang Subdistrict, Yuhang District, Hangzhou City, Zhejiang Province

Applicant after: Wuzhou Online E-Commerce (Beijing) Co.,Ltd.

Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK

Applicant before: ALIBABA GROUP HOLDING Ltd.