参数估计方法、装置和电子设备与流程

文档序号:12273113阅读:213来源:国知局
参数估计方法、装置和电子设备与流程

本申请涉及图像处理领域,且更具体地,涉及一种参数估计方法、装置、电子设备、计算机程序产品和计算机可读存储介质。



背景技术:

交通工具(例如,车辆)在运动过程中会因为颠簸而引起震动,从而导致其上装备的传感器(例如,成像器件等)相对于地平面的位置和角度发生改变。该现象会干扰包括成像器件在内的多种传感器的环境感知能力,使得传感器无法提供正确的感测结果,从而例如无法很好地辅助驾驶员进行驾驶操作等。因此,准确地校准交通工具上装备的各种传感器的上述参数是很关键的。

为此,在现有技术中提出了一种消失线估计技术,其可以用于校准成像器件自身相对于地平面的位置和角度,特别是在俯仰方向上,效果显著。例如,在现有技术的第一方案中,可以通过使用成像器件捕捉到的图像来直接计算其中消失线的位置坐标。但是,消失线可能由于前方车辆、建筑物等物体的遮挡而无法被完整地捕捉到,另外,这种直接计算方法的计算量巨大,处理成本昂贵。又如,在现有技术的第二方案中,还可以通过计算捕捉到的路面上的平行车道线之间的夹角角度来确定消失线的位置坐标。但是,由于车道线在某些道路上可能并不完整、甚至根本就不存在,所以这种方案也无法提供全天候的消失线估计功能。

因此,现有的消失线估计技术是不准确且不可靠的。



技术实现要素:

为了解决上述技术问题,提出了本申请。本申请的实施例提供了一种参数估计方法、装置、电子设备、计算机程序产品和计算机可读存储介质,其使得可以以较高的精度来估计消失线在成像器件所采集的当前帧图像中的位置坐标,满足了实时的消失线估计要求。

根据本申请的一个方面,提供了一种参数估计方法,包括:获取成像器件所采集的当前帧图像和先前帧图像;确定所述当前帧图像和所述先前帧图像之间的映射关系;以及根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。

在本申请的一个实施例中,确定所述当前帧图像和所述先前帧图像之间的映射关系包括:对所述先前帧图像进行采样,以获得一像素点集合,所述像素点集合中的每个像素点在所述先前帧图像中的位置坐标为已知位置坐标;确定所述像素点集合中的每个像素点在所述当前帧图像中的当前位置坐标;以及根据每个像素点的已知位置坐标和当前位置坐标来确定所述映射关系。

在本申请的一个实施例中,对所述先前帧图像进行采样包括:在一宽基线区域中对所述先前帧图像进行采样,所述宽基线区域为物距与焦距之比大于或等于一阈值的区域。

在本申请的一个实施例中,确定所述像素点集合中的每个像素点在所述当前帧图像中的当前位置坐标包括:基于光流算法在所述当前帧图像中对所述像素点集合中的每个像素点进行跟踪;以及根据跟踪结果来确定每个像素点在所述当前帧图像中的当前位置坐标。

在本申请的一个实施例中,根据每个像素点的已知位置坐标和当前位置坐标来确定所述映射关系包括:通过使用每个像素点的已知位置坐标和当前位置坐标优化拟合误差来确定所述映射关系。

在本申请的一个实施例中,确定所述当前帧图像和所述先前帧图像之间的映射关系还包括:针对所述像素点集合中的每个像素点,根据所述映射关系以及所述像素点的已知位置坐标和当前位置坐标来计算所述像素点的预测误差;对所有像素点的预测误差进行排序;以及通过使用误差较小的预定数目个像素点中的每个像素点的已知位置坐标和当前位置坐标重新优化拟合误差来重新确定所述映射关系。

在本申请的一个实施例中,确定所述当前帧图像和所述先前帧图像之间的映射关系包括:在所述先前帧图像中检测先前特征点集合并且确定所述先前特征点集合中每个特征点的位置坐标和特征信息;在所述当前帧图像中检测当前特征点集合并且确定所述当前特征点集合中每个特征点的位置坐标和特征信息;根据所述特征信息来确定所述先前帧图像和所述当前帧图像中的匹配特征点对;以及根据所述匹配特征点对在所述先前帧图像中的先前位置坐标和在所述当前帧图像中的当前位置坐标来确定所述映射关系。

在本申请的一个实施例中,在所述先前帧图像中检测先前特征点集合包括:在所述先前帧图像的一宽基线区域中检测先前特征点集合,所述宽基线区域为物距与焦距之间比大于或等于一阈值的区域。

在本申请的一个实施例中,所述参数估计方法还包括:计算所述消失线的所述当前位置坐标与所述先前位置坐标之间的位置坐标差;以及根据所述位置坐标差来对所述当前位置坐标进行修正。

在本申请的一个实施例中,根据所述位置坐标差来对所述当前位置坐标进行修正包括:将所述位置坐标差与一阈值进行比较;响应于所述位置坐标差大于或等于所述阈值,将估计出的当前位置坐标直接确定为修正后的当前位置坐标;以及响应于所述位置坐标差小于所述阈值,通过一权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标。

在本申请的一个实施例中,通过一权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标包括:根据所述位置坐标差来确定所述权重系数,所述位置坐标差越大,所述权重系数使得估计出的当前位置坐标在修正后的当前位置坐标中所占的比例越大,所述位置坐标差越小,所述权重系数使得估计出的当前位置坐标在修正后的当前位置坐标中所占的比例越小;以及通过所述权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标。

在本申请的一个实施例中,所述参数估计方法还包括:计算所述消失线的所述当前位置坐标与所述先前位置坐标之间的位置坐标差;以及根据所述位置坐标差来计算所述成像器件相对于地平面的俯仰角的变化量。

根据本申请的另一方面,提供了一种参数估计装置,包括:图像获取单元,用于获取成像器件所采集的当前帧图像和先前帧图像;关系确定单元,用于确定所述当前帧图像和所述先前帧图像之间的映射关系;以及坐标估计单元,用于根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。

根据本申请的另一方面,提供了一种电子设备,包括:处理器;存储器;以及存储在所述存储器中的计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行上述的参数估计方法。

在本申请的一个实施例中,所述电子设备还包括:成像器件,被配置为采集所述当前帧图像和所述先前帧图像。

根据本申请的另一方面,提供了一种计算机程序产品,包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行上述的参数估计方法。

根据本申请的另一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行上述的参数估计方法。

与现有技术相比,采用根据本申请实施例的参数估计方法、装置、电子设备、计算机程序产品和计算机可读存储介质,可以接收成像器件所采集的图像帧序列,确定当前帧图像和先前帧图像之间的映射关系,并且根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。因此,可以以较高的精度来估计消失线在成像器件所采集的当前图像中的位置坐标,满足了实时的消失线估计要求。

附图说明

通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。

图1A图示了根据本申请实施例的成像器件所采集到的消失线位于默认位置的图像的示意图,图1B图示了根据本申请实施例的成像器件所采集到的消失线偏离默认位置的图像的示意图。

图2图示了根据本申请第一实施例的参数估计方法的流程图。

图3图示了根据本申请实施例第一示例的确定映射关系步骤的流程图。

图4图示了根据本申请实施例的宽基线区域的示意图。

图5图示了根据本申请实施例第二示例的确定映射关系步骤的流程图。

图6图示了根据本申请第二实施例的参数估计方法的流程图。

图7图示了根据本申请实施例的确定映射关系步骤的流程图。

图8图示了根据本申请实施例的参数估计装置的框图。

图9图示了根据本申请实施例的电子设备的框图。

具体实施方式

下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。

申请概述

如上所述,由于消失线容易受到遮挡、车道线可能出现残缺等原因,目前还没有一种有效的消失线估计方法,能够全天候地在成像器件捕捉到的图像中估计出消失线的位置。

针对该技术问题,本申请的基本构思是提出一种新的参数估计方法、装置、电子设备、计算机程序产品和计算机可读存储介质,其可以接收成像器件所采集的图像帧序列,确定当前帧图像和先前帧图像之间的映射关系,并且根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。因此,根据该基本构思的本申请的实施例可以以较高的精度来估计消失线在成像器件所采集的当前帧图像中的位置坐标,满足了实时的消失线估计要求。

在介绍了本申请的基本原理之后,下面将参考附图来具体介绍本申请的各种非限制性实施例。

应用场景总览

本申请的实施例可以应用于各种场景。例如,本申请的实施例可以用于对装备于交通工具上的成像器件的参数进行估计。例如,该交通工具可以是不同的类型,其可以是车辆、飞行器、航天器、水中运载工具等。为了便于说明,下面将以车辆作为交通工具的示例来继续描述。

例如,为了实现辅助驾驶等目的,在车辆上通常都装备有一个或多个成像器件。这些成像器件可以用于采集关于行驶路径的图像,以防止车辆与路面上的其他物体产生碰撞并指引车辆选取正确的路线等等。由于制造公差,每辆车都必须执行独立的终检线摄像机校准(end-of-line camera calibration)或后续市场摄像机调节,以便确定成像器件在该车辆上的俯仰角度,从而确定消失线在成像器件捕捉到的图像中的默认位置,并最终用于辅助驾驶等目的。

图1A图示了根据本申请实施例的成像器件所采集到的消失线位于默认位置的图像的示意图,图1B图示了根据本申请实施例的成像器件所采集到的消失线偏离默认位置的图像的示意图。

如图1A所示,在经过调校之后,在正常情况下,消失线应该始终准确地位于成像器件所捕捉到的图像中的默认位置(如图1A中的短划线所示的位置)。但是,由于车辆在运动过程中会因为颠簸而引起车身出现前后倾斜,从而导致其上装备的成像器件相对于地平面的俯仰角度可能发生改变,进而导致消失线与成像器件所捕捉到的图像中的默认位置出现偏离。如图1B所示,当车辆由于震动而导致车头向上翘起、车尾向下压低时,消失线的真实位置(如图1B中的双点划线所示的位置)将从该默认位置(如图1B中的短划线所示的位置)向下移动。相反地,当车辆的车头向下压低、车尾向上翘起时,消失线的真实位置将从该默认位置向上移动。

这样,如果在车辆出现倾斜的情况下继续使用默认的消失线的位置来对成像器件所捕捉到的图像进行分析和处理,必然会导致图像分析和处理结果出现错误,如果继而再基于这些错误结果来执行辅助驾驶操作,则可能会对道路状况产生错误的判断结果。

例如,假设在当前车辆的前方100米处存在另一车辆。在当前车辆无颠簸的情况下,由于消失线正确地位于默认位置,所以根据图像分析和物体识别的结果,可以正确地识别出该另一车辆位于当前车辆的前方100米。然而,一旦当前车辆的车头由于震动向上倾斜时,消失线的真实位置将从该默认位置向下移动,这时如果继续基于默认位置来对图像进行分析和物体识别,则可能导致将该另一车辆错误地识别为位于当前车辆前方小于100米,这样可能会造成后续产生错误的辅助驾驶操作,导致车辆不必要地采取制动、告警等措施,降低用户体验、甚至产生交通安全隐患。

为此,在本申请的实施例中,可以使用成像器件本身所采集到的图像帧序列,对成像器件所采集的当前帧图像中的消失线的位置坐标进行估计,并可选地进而根据估计到的消失线的位置坐标来估计该成像器件相对于地平面的俯仰角,从而减少由于运动颠簸等原因对交通工具上装备的各种传感器的感知精度造成的影响。

当然,尽管上面以交通工具为例对本申请的实施例进行了说明,但是本申请不限于此。本申请的实施例可以应用于对装备于各种电子设备上的成像器件的参数进行估计。例如,本申请的实施例同样可以适用于装备在可移动机器人上的成像器件、设置在固定位置用于监控的成像器件等的参数估计操作中。

下面,将结合图1A和1B的应用场景,参考附图来描述根据本申请的各个实施例。

示例性方法

图2图示了根据本申请第一实施例的参数估计方法的流程图。

如图2所示,根据本申请第一实施例的参数估计方法可以包括:

在步骤S110中,获取成像器件所采集的当前帧图像和先前帧图像。

下面,为了便于说明,将以成像器件装备在车辆上为例来继续描述。

例如,该成像器件可以是用于捕捉图像帧序列的图像传感器,其可以是摄像头或摄像头阵列。例如,图像传感器所采集到的图像数据序列可以是连续图像帧序列(即,视频流)或离散图像帧序列(即,在预定采样时间点采样到的图像数据组)等。例如,该摄像头可以是如单目相机、双目相机、多目相机等,另外,其可以用于捕捉灰度图,也可以捕捉带有颜色信息的彩色图。当然,本领域中已知的以及将来可能出现的任何其他类型的相机都可以应用于本申请,本申请对其捕捉图像的方式没有特别限制,只要能够获得输入图像的灰度或颜色信息即可。为了减小后续操作中的计算量,在一个实施例中,可以在进行分析和处理之前,将彩色图进行灰度化处理。

例如,成像器件可以不断捕捉图像帧,捕捉到的图像帧可以被不断进行分析和处理,并且被存储在存储器中以供后续处理。

例如,在本方法中,在成像器件采集到当前帧图像时,可以接收该当前帧图像,同时地或者在此之前或之后,可以从存储器中读取该当前帧图像的先前帧图像。例如,该先前帧图像可以是近邻该当前帧图像的前一帧图像,或者在图像内容变化不大的情况下,该先前帧图像可以是该当前帧图像的某几帧之前的一帧图像。

在步骤S120中,确定所述当前帧图像和所述先前帧图像之间的映射关系。

在获取到成像器件所采集的当前帧图像和先前帧图像之后,可以通过各种方法来分析和处理当前帧图像和先前帧图像,以计算两者之间的映射关系。

图3图示了根据本申请实施例第一示例的确定映射关系步骤的流程图。

如图3所示,步骤S120可以包括:

在子步骤S121中,对所述先前帧图像进行采样,以获得一像素点集合,所述像素点集合中的每个像素点在所述先前帧图像中的位置坐标为已知位置坐标。

例如,可以在获取到当前帧图像时,从存储器中读取先前帧图像,并对所述先前帧图像进行采样,以获得该先前帧图像中处于已知位置处的像素点集合。

由于在本申请的实施例中主要关注图像中的消失线的位置坐标,而消失线总是处于与摄像头非常远的位置处,所以为了减小数据的计算量并且提高数据处理精度,可以不是对图像帧的整个区域进行采样,而是仅仅对图像帧的一特定关注区域(ROI)进行采样。

例如,可以在一宽基线区域中对所述先前帧图像进行采样,所述宽基线区域为物距与焦距之比大于或等于一阈值的区域。换言之,该宽基线区域可以是物距远远大于焦距的区域。在实际操作中,可以人为地根据经验来确定该宽基线区域的位置和大小。

图4图示了根据本申请实施例的宽基线区域的示意图。

如图4所示,假设成像器件所捕捉的图像的分辨率为640*480像素。例如,可以根据经验地将该宽基线区域定义为位于图像中心位置的300*100像素的区域。当然本申请不限于此。在实际使用中,需要根据终检线摄像机校准或后续市场摄像机调节、以及图像的不同分辨率来适当地选择该宽基线区域在图像中的位置。

在本申请实施例的第一示例中,可以通过各种采样方法来对宽基线区域进行采样。例如,可以使用均匀采样的方法。具体地,可以在宽基线区域中选择处于预设位置处的一些间隔均匀的网格点,例如每行取M个像素点,间隔N行取一次,其中M和N是自然数。均匀采样的好处在于可以在后续确定映射关系时减小计算量、加快计算速度。当然,本申请不限于此。例如,还可以使用随机采样等其他方法在宽基线区域中进行采样。无论采用何种采样方法,所采样得到的像素点集合中的每个像素点在所述先前帧图像中的位置坐标都可以是已知的。

需要说明的是,尽管上面以首先存储整个先前帧图像、然后在从存储器中读取到先前帧图像之后执行该获得像素点集合的操作为例进行了说明,但是本申请不限于此。例如,为了减小存储量,也可以仅仅存储先前帧图像中的关注区域(例如,宽基线区域),或者也可以预先从先前帧图像中进行采样以获得该像素点集合,并仅仅在存储器中存储该像素点集合中每个像素点的灰度信息和位置信息等,而不是存储完整的先前帧图像。这样,可以在获取到当前帧图像时,直接从存储器中读取每个像素点的灰度信息和位置信息等即可,从而提高了消失线估计操作在当前帧中的执行速度。

在子步骤S122中,确定所述像素点集合中的每个像素点在所述当前帧图像中的当前位置坐标。

当在先前帧的宽基线区域中选择了像素点集合(例如,网格点)之后,可以在当前帧中对其中的每个像素点进行跟踪,以确定它们在所述当前帧图像中的当前位置坐标。

在一个实施例中,由于两帧之间的变换非常小,所以每个像素点在图像中的移动距离通常来说也非常有限,所以为了减小计算量,可以在当前帧图像中将该宽基线区域扩大一定高度和宽度的范围内跟踪每个像素点。

例如,可以基于光流算法在所述当前帧图像中对所述像素点集合中的每个像素点进行跟踪,并且根据跟踪结果来确定每个像素点在所述当前帧图像中的当前位置坐标。

光流是观察者(眼睛或相机)和场景之间的相对运动引起的视觉场景中的对象、表面和边缘的显著运动的模式,其可以用来表示时间上前后两帧图像中像素之间的对应关系。光流法实际是通过检测图像像素点的强度I随时间的变化进而推断出物体移动速度及方向的方法。通常,假设位于(x,y,t)处的像素(其中,x和y分别是像素在图像中的横竖坐标,而t是该图像的时间坐标)的亮度是I(x,y,t),基于同一像素在相邻的两个图像帧之间的亮度近似相同的假设,根据泰勒级数经过推导可以得出以下公式:

I(x,y,t)=I(x+Δx,y+Δy,t+Δt)

忽略高阶项H.O.T.,则有

其可以导出

其中,Vx和Vy是x和y方向上的速率分量,也就是I(x,y,t)的光流,和分别是图像中x和y方向中相邻两个像素点之间的差分,是同一像素点在相邻两帧图像之间的差分。这一个方程有两个未知量Vx和Vy,尚不能被解决,这也就是所谓光流算法的光圈问题。那么要找到光流向量(Vx,Vy),则需要另一套解决的方案。

例如,可以使用Lucas-Kanade方法(LK方法)来对上述问题进行求解。LK方法是一个非迭代的方法,其假设上述光流方程对以关注点p为中心的一小窗内的所有像素点都成立,即本地图像流(速度)向量(Vx,Vy)必然满足下式:

其中,q1,q2,…qn是小窗内的像素点,而Ix(qi)、Iy(qi)和It(qi)分别是在当前时间在像素点qi处估计的该图像相对于位置x、y和t的偏导。

可以看出上述方程组中只有两个未知数但是有多于两个的方程,这个方程组是个超定方程,也就是说方程组内有冗余。为了解决这个超定问题,我们采用最小二乘法来求解得到该光流信息(Vx,Vy)。由于具体的推导以及求解过程不是本发明的重点,在此不再赘述。

在一个实施例中,例如,在对像素点集合中中的每个点使用光流进行跟踪时,可以进一步使用金字塔光流算法来逐个跟踪每个像素点,以进一步提高跟踪算法的精度和速度。

需要说明的是,尽管上面以基于LK方法的光流跟踪算法说明了像素跟踪的具体操作,但是本申请不限于此。例如,还可以采用基于Horn-Schunck方法、Buxton-Buxton方法等其他的光流跟踪算法。此外,除了光流跟踪算法之外,还可以使用诸如CamShift、粒子滤波算法等任何公知的或者将来所开发出来的各种算法来实现像素点的跟踪操作。

在计算出光流向量(Vx,Vy)之后,可以通过下式来得到先前帧图像中的像素点(x0,y0)在当前帧图像中的位置坐标(x1,y1):

x1=x0+Vx

y1=y0+Vy

在子步骤S123中,根据每个像素点的已知位置坐标和当前位置坐标来确定所述映射关系。

例如,可以通过使用每个像素点的已知位置坐标和当前位置坐标优化拟合误差来确定所述映射关系。

由于关注区域是消失线所在区域(即,宽基线区域),其物距远远大于焦距的区域,所以可以使用单应性(homography)矩阵来拟合前后两帧之间的映射关系(或称为变换关系)。在计算机视觉中,平面的单应性被定义为一个平面到另外一个平面的投影映射。因此,一个二维平面上的点映射到摄像机成像仪上的映射就是平面单应性的例子。该单应性矩阵(或称为变换矩阵)为一个3×3的矩阵,标称为H。

具体地,可以通过优化先前帧图像和当前帧图像之间的拟合误差来获得最优的变换矩阵H,拟合误差err定义如下:

其中,是像素点在先前帧图像中坐标(x0,y0)的齐次项,并且是该像素点在当着帧图像中坐标(x1,y1)的齐次项,并且

通过先前帧图像中的所有采样点的位置坐标、及其在当前帧中的跟踪位置坐标求解该拟合误差err的最小值,来获得作为最优解的变换矩阵H,以用于在后续操作中继续估计消失线在当前帧图像中的当前位置坐标。

然而,由于光流跟踪中存在噪声问题,即光流跟踪结果中可能存在错误的跟踪结果,因此,在一个实施例中,可以采用更为鲁棒的变换矩阵H计算方法。例如,在通过使用每个像素点的已知位置坐标和当前位置坐标优化拟合误差来确定所述映射关系之后,还可以进一步对该映射关系进行修正。

在一个实施例中,可以通过以下方法来对该映射关系进行修正:针对所述像素点集合中的每个像素点,根据所述映射关系以及所述像素点的已知位置坐标和当前位置坐标来计算所述像素点的预测误差;对所有像素点的预测误差进行排序;并且通过使用误差较小的预定数目个像素点中的每个像素点的已知位置坐标和当前位置坐标重新优化拟合误差来重新确定所述映射关系。

具体地,可以如上所述地,首先使用全部有效的光流跟踪结果优化先前帧图像和当前帧图像之间的拟合误差err来估计变换矩阵H。然后,在得到变换均值H之后,可以对于每个点计算预测误差。计算预测误差的公式与拟合误差err的定义公式(1)相同。接下来,可以对关于所有点所计算的预测误差进行排序。最后,可以选择误差最小的一定数目(例如,30%)的样本作为重新拟合的样本,来对变换矩阵H进行重拟合获得前后两帧图像之间的变换矩阵H。

需要说明的是,尽管在本申请实施例的第一示例中以对所述先前帧图像进行像素点采样、确定每个采样像素点在所述当前帧图像中的当前位置坐标、并且根据像素点的已知位置坐标和当前位置坐标来确定映射关系为例进行了说明,但是本申请不限于此。

图5图示了根据本申请实施例第二示例的确定映射关系步骤的流程图。

如图5所示,步骤S120可以包括:

在子步骤S124中,在所述先前帧图像中检测先前特征点集合并且确定所述先前特征点集合中每个特征点的位置坐标和特征信息。

以子步骤S121中类似地,为了减小数据的计算量并且提高数据处理精度,可以在一宽基线区域中对所述先前帧图像进行特征点检测,并且获得各个特征点的位置信息和特征信息。例如,各特征点的位置信息可以是该特征点在图像帧中的位置坐标,并且该特征点的特征信息可以是该特征点的特征描述子,或称之为特征描述符或特征描述向量,或直接简称为特征描述。

例如,可以使用各种特征点检测算法来检测先前帧图像的宽基线区域中的特征点并对其进行特征描述。总的来说,特征点提取是提取不同类型图像中保持不变的特征,如边缘点、角点、兴趣点、闭区域的中心等。特征点作为配准控制点,要求其数量足够且分布较均匀。目前常用的特征点提取方法包括哈里斯(Harris)算法、尺度不变特征转换(SIFT)算法和加速鲁棒特征(SURF)算法等。

Harris算法采用了一种新的角点判定方法。矩阵M的两个特征向量λ1和λ2与矩阵M的主曲率成正比。Harris利用λ1和λ2来表征变化最快和最慢的两个方向。若两个都很大,则该像素点就是角点;若一个大一个小,则该像素点就是边缘上的点;若两个都小,则该像素点就是在变化缓慢的图像区域。

SIFT算法在特征点检测方面,将输入图像通过不同尺度的高斯核函数连续滤波和下采样,形成高斯金字塔影像,然后再对相邻尺度的高斯金字塔影像相减得到高斯函数的差分(DoG)。对DoG尺度空间每个点与相邻尺度和相邻位置的点逐个进行比较,得到的局部极值位置即为特征点所处的位置和对应的尺度。

SURF算法借鉴了SIFT中简化近似的思想,将Hessian行列式(DoH)中的高斯二阶微分模板进行了近似简化,使得模板对图像的滤波只需要进行几个简单的加减法运算,并且,这种运算与滤波模板的尺寸有关。该算法在积分图像的基础上进行快速计算,通过快速Hessian检测子来检测特征点。

需要说明的是,尽管上面列举了几种具体的特征点检测算法,但是本申请不限于此。无论是现有的、还是将来开发的特征点检测算法,都可以应用于根据本申请实施例的参数估计方法中,并且也应包括在本申请的保护范围内。

在检测到特征点并利用特定的特征描述子对其进行描述以获得其特征信息之后,还可以在当前帧图像中确定各个特征点的位置信息,即x轴和y轴的坐标。

在子步骤S125中,在所述当前帧图像中检测当前特征点集合并且确定所述当前特征点集合中每个特征点的位置坐标和特征信息。

类似地,可以采用与子步骤S124中相同的特征点检测算法来检测当前帧图像中的特征点并对其进行特征描述。在一个实施例中,由于两帧之间的变换非常小,所以每个像素点在图像中的移动距离通常来说也非常有限,所以为了减小后续特征点匹配过程中的计算量,可以在当前帧图像中将该宽基线区域扩大一定高度和宽度的范围内跟踪每个像素点。

在子步骤S126中,根据所述特征信息来确定所述先前帧图像和所述当前帧图像中的匹配特征点对。

例如,可以根据分别在先前帧图像和当前帧图像中检测到的特征点的描述信息来计算两帧图像之间特征点相似度。该相似度可以采用距离测量值fdis(fi,fj)来表示,其包括但不限于欧几里得距离。这里,fi是先前帧图像中第i个特征点的特征描述信息,fj是先前帧图像中第j个特征点的特征描述信息。然后,将其相似度大于或等于预定阈值的一对特征点确定为所述匹配特征点对。即,距离测量值fdis(fi,fj)越小,可以表示特征点对之间的相似度越高。接下来,可以为先前帧图像中的各特征点选择最相似的当前帧图像中的特征点。

在子步骤S127中,根据所述匹配特征点对在所述先前帧图像中的先前位置坐标和在所述当前帧图像中的当前位置坐标来确定所述映射关系。

例如,可以通过使用每个特征点的先前位置坐标和当前位置坐标优化拟合误差来确定所述映射关系。

由于子步骤S127与子步骤S123基本一致,并且也同样可以采用更为鲁棒的变换矩阵H计算方法,因而在此省略其相似描述。

在步骤S130中,根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。

在确定当前帧图像和先前帧图像之间的变换矩阵H之后,使用该变换矩阵对当前帧的消失线进行预测。即,当前帧中的消失线在y轴上的坐标cur_y与先前帧中消失线在y轴上的坐标last_y之间的关系为:

cur_y=last_y×H。

由此,便成功地估计出消失线在当前帧中的位置坐标,以用于后续确定成像器件在该车辆上的俯仰角度,从而确定消失线在成像器件捕捉到的图像中的默认位置,并最终用于辅助驾驶等目的。

在一个实施例中,可以循环地执行根据本申请实施例的参数估计方法,以不断实时地在成像器件捕捉到的每一帧图像中估计消失线的位置坐标。例如,在确定出消失线在所述当前帧图像中的当前位置坐标之后,可以将该当前帧图像存储在存储器中,以作为下一帧图像的先前帧图像,从而估计下一帧图像中消失线的位置坐标。当然,如上所述,为了节省存储空间,也可以不是存储整幅图像,而是可以对该当前帧图像进行部分截取、像素点采样或者特征点提取,将已经确定的像素点(包括采样点、特征点)的位置信息和其他相关信息(例如,特征点的特征描述子)存储在存储器中,以用于后续处理。

由此可见,采用根据本申请第一实施例的参数估计方法,可以接收成像器件所采集的图像帧序列,确定当前帧图像和先前帧图像之间的映射关系,并且根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。因此,在本实施例中,可以以较高的精度来估计消失线在成像器件所采集的当前帧图像中的位置坐标,满足了实时的消失线估计要求,并且原理简单、计算量小、准确率高、对不同的场景均具有很强的适应性。

通过实验发现,如图1B所示,根据本申请第一实施例的参数估计方法所得到的消失线在当前帧图像中的估计位置(如图1B中的单点划线所示的位置)比默认位置(如图1B中的短划线所示的位置)更加接近于消失线的真实位置(如图1B中的双点划线所示的位置)。因此,缓解了毫无区分地采用消失线的默认位置会在车辆出现颠簸时导致图像分析和处理结果出现错误的情况。

在第一实施例中,总是在当前帧图像中唯一地依靠当前帧图像和先前帧图像之间的映射关系、以及消失线在先前帧图像中的先前位置坐标来估计消失线在所述当前帧图像中的当前位置坐标。然而,一旦由于各种原因导致图像帧序列中的某一帧中的估计操作出现误差,必然导致该误差被传递到后续的估计操作中,并且如果这种误差是长期存续的话,则将导致该误差被不断累计和扩大,从而造成后续的估计结果出现错误。

为了解决上述问题,在本申请的第二实施例中提出:可以在估计出消失线在所述当前帧图像中的当前位置坐标之后,对所述消失线在所述当前帧图像中的当前位置坐标进行加权修正。

图6图示了根据本申请第二实施例的参数估计方法的流程图。

在图6中,采用了相同的附图标记来指示与图2相同的步骤。因此,图6中的步骤S110-S130与图2的步骤S110-S130相同,并可以参见上面结合图2到图5进行的描述。图6与图2的不同之处在于增加了步骤S140。

在步骤S140中,对所述消失线在所述当前帧图像中的当前位置坐标进行加权修正。

通过进一步的研究发现,在车辆在颠簸较小的状况下平稳行驶时,消失线的真实位置往往很更加接近于终检线摄像机校准或后续市场摄像机调节之后确定的默认位置,而在车辆在颠簸较大的状况下非平稳行驶时,消失线的真实位置往往很更加接近于根据上述步骤S110-S130估计出的估计位置。因此,可以判断车辆当前的行驶状态,并且根据该行驶状态来对消失线在所述当前帧图像中的当前位置坐标进行加权修正,以防止误差在后续的估计操作中不断积累。

图7图示了根据本申请实施例的确定映射关系步骤的流程图。

如图7所示,步骤S140可以包括:

在子步骤S141中,计算所述消失线的所述当前位置坐标与所述先前位置坐标之间的位置坐标差。

例如,可以如下地计算消失线在先前帧和当前帧之间的变换差diff:

diff=cur_y-last_y。

其中,该变换差diff是消失线在y轴方向上的位置变化,当它的值较小时,可以认为车辆处于颠簸较小的状况;而当它的值较大时,可以认为车辆处于颠簸较大的状况。

在子步骤S142中,根据所述位置坐标差来对所述当前位置坐标进行修正。

例如,可以将所述位置坐标差与一阈值进行比较;响应于所述位置坐标差大于或等于所述阈值,将估计出的当前位置坐标直接确定为修正后的当前位置坐标;并且响应于所述位置坐标差小于所述阈值,通过一权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标。

例如,该权重系统可以是一个固定值,也可以是根据位置坐标差的值而变化的值。

在后者情况下,这种修正操作可以称为弹簧修正。这时,例如,通过一权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标可以包括:根据所述位置坐标差来确定所述权重系数,所述位置坐标差越大,所述权重系数使得估计出的当前位置坐标在修正后的当前位置坐标中所占的比例越大,所述位置坐标差越小,所述权重系数使得估计出的当前位置坐标在修正后的当前位置坐标中所占的比例越小;并且通过所述权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标。

具体地,在diff的值大于一阈值时,说明车辆当前处于颠簸较大的非平稳行驶状态,而在diff的值小于该阈值时,说明车辆当前处于颠簸较小的平稳行驶状态。例如,当两帧之间的变换差diff较大(例如,大于或等于20像素)时,则认为当前的消失线变化是由于剧烈的车身俯仰角变化造成的,因此,则更加信任估计值;而当两帧之间的变换差diff较小(例如,小于20像素)时,则认为当前的消失线变化不是由于剧烈的车身俯仰角变化造成的,因此,将消失线拉向默认值,权重可以根据前后两帧的变化程度来设定,变化越小,默认值的权重越大,最后last_y=cur_y。也就是说,修正后的消失线的当前位置坐标cur_y可以利用以下公式来表示:

cur_y=(last_y+diff)×α+default_y×(1-α)。

其中,α是修正权重,default_y是消失线在出厂校准和调节之后确定的在y轴上的默认坐标。在非弹簧修正的情况下,该修正权重α可以例如设置为0.9。在弹簧修正的情况下,diff的值越接近于20,该修正权重α可以例如越接近于1,而diff的值越接近于0,该修正权重α可以例如越接近于0.9。

由此可见,采用根据本申请第二实施例的参数估计方法,可以在根据当前帧图像和先前帧图像之间的映射关系以及消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标之后,进一步根据该消失线在先前帧图像和当前帧图像之间的位置坐标差、该消失线的默认位置坐标和一权重系数来对估计结果进行加权修正。因此,在本实施例中,可以进一步提高消失线的估计精度,防止误差在后续的估计操作中被不断累计和扩大,从而造成后续的估计结果出现错误。

通过实验发现,根据本申请第二实施例的参数估计方法,可以获得比第一实施例更加准确的消失线在当前帧图像中的估计位置,其比根据本申请第一实施例的参数估计方法所得到的消失线估计位置更进一步地逼近于消失线的真实位置。

此外,在本申请的另一实施例中,在步骤S130或步骤S140之后,即一旦计算出消失线在所述当前帧图像中的当前位置坐标之后,可选地,可以根据所述消失线在所述先前帧图像中的先前位置坐标和所述消失线在所述当前帧图像中的当前位置坐标来确定成像器件的相对于地平面的俯仰角的变化量。

具体地,由于消失线的坐标变化量与成像器件的俯仰角的变化量之间存在线性对应关系,因此,可以计算所述消失线的所述当前位置坐标与所述先前位置坐标之间的位置坐标差;并且根据所述位置坐标差来计算所述成像器件相对于地平面的俯仰角的变化量。

然后,还可以基于成像器件的先前俯仰角的值和该变化量来求得其当前俯仰角的值。

更进一步地,由于在车辆上设置的所有传感器与车辆之间通常均处于刚性连接,所以一旦知道成像器件相对于地平面的俯仰角的变化量,即可以根据该变化量对除了成像器件之外的所有其他车载传感器的俯仰角进行修正,从而全面地减少车辆颠簸对各种传感器的感知精度造成的影响。

示例性装置

下面,参考图8来描述根据本申请实施例的参数估计装置。

图8图示了根据本申请实施例的参数估计装置的框图。

如图8所示,在一个实施例中,所述参数估计装置100可以包括:图像获取单元110,用于获取成像器件所采集的当前帧图像和先前帧图像;关系确定单元120,用于确定所述当前帧图像和所述先前帧图像之间的映射关系;以及坐标估计单元130,用于根据所述映射关系和消失线在所述先前帧图像中的先前位置坐标来估计所述消失线在所述当前帧图像中的当前位置坐标。

在一个示例中,所述关系确定单元120可以包括:图像采样模块,用于对所述先前帧图像进行采样,以获得一像素点集合,所述像素点集合中的每个像素点在所述先前帧图像中的位置坐标为已知位置坐标;坐标确定模块,用于确定所述像素点集合中的每个像素点在所述当前帧图像中的当前位置坐标;以及关系确定模块,用于根据每个像素点的已知位置坐标和当前位置坐标来确定所述映射关系。

在一个示例中,所述图像采样模块可以在一宽基线区域中对所述先前帧图像进行采样,所述宽基线区域为物距与焦距之比大于或等于一阈值的区域。

在一个示例中,所述坐标确定模块可以基于光流算法在所述当前帧图像中对所述像素点集合中的每个像素点进行跟踪;并且根据跟踪结果来确定每个像素点在所述当前帧图像中的当前位置坐标。

在一个示例中,关系确定模块可以通过使用每个像素点的已知位置坐标和当前位置坐标优化拟合误差来确定所述映射关系。

在一个示例中,所述关系确定单元120还可以包括:关系修正模块,用于对该映射关系进行修正。

在一个示例中,所述关系修正模块可以针对所述像素点集合中的每个像素点,根据所述映射关系以及所述像素点的已知位置坐标和当前位置坐标来计算所述像素点的预测误差;对所有像素点的预测误差进行排序;并且通过使用误差较小的预定数目个像素点中的每个像素点的已知位置坐标和当前位置坐标重新优化拟合误差来重新确定所述映射关系。

在一个示例中,所述关系确定单元120可以包括:第一检测模块,用于在所述先前帧图像中检测先前特征点集合并且确定所述先前特征点集合中每个特征点的位置坐标和特征信息;第二检测模块,用于在所述当前帧图像中检测当前特征点集合并且确定所述当前特征点集合中每个特征点的位置坐标和特征信息;特征匹配模块,用于根据所述特征信息来确定所述先前帧图像和所述当前帧图像中的匹配特征点对;以及关系确定模块,用于根据所述匹配特征点对在所述先前帧图像中的先前位置坐标和在所述当前帧图像中的当前位置坐标来确定所述映射关系。

在一个示例中,第一检测模块可以在所述先前帧图像的一宽基线区域中检测先前特征点集合,所述宽基线区域为物距与焦距之间比大于或等于一阈值的区域。

在另一实施例中,所述参数估计装置100还可以包括:坐标修正单元140,用于对所述消失线在所述当前帧图像中的当前位置坐标进行加权修正。

在一个示例中,坐标修正单元140可以包括:坐标差计算模块,用于计算所述消失线的所述当前位置坐标与所述先前位置坐标之间的位置坐标差;以及坐标修正模块,用于根据所述位置坐标差来对所述当前位置坐标进行修正。

在一个示例中,所述坐标修正模块可以将所述位置坐标差与一阈值进行比较;响应于所述位置坐标差大于或等于所述阈值,将估计出的当前位置坐标直接确定为修正后的当前位置坐标;以及响应于所述位置坐标差小于所述阈值,通过一权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标。

在一个示例中,所述坐标修正模块可以根据所述位置坐标差来确定所述权重系数,所述位置坐标差越大,所述权重系数使得估计出的当前位置坐标在修正后的当前位置坐标中所占的比例越大,所述位置坐标差越小,所述权重系数使得估计出的当前位置坐标在修正后的当前位置坐标中所占的比例越小;并且通过所述权重系数、估计出的当前位置坐标、和所述消失线的默认位置坐标来确定修正后的当前位置坐标。

在又一实施例中,所述参数估计装置100还可以包括:俯仰变化计算单元,用于根据所述消失线在所述先前帧图像中的先前位置坐标和所述消失线在所述当前帧图像中的当前位置坐标来确定成像器件的相对于地平面的俯仰角的变化量。

在一个示例中,所述俯仰变化计算单元可以计算所述消失线的所述当前位置坐标与所述先前位置坐标之间的位置坐标差;并且根据所述位置坐标差来计算所述成像器件相对于地平面的俯仰角的变化量。

上述参数估计装置100中的各个单元和模块的具体功能和操作已经在上面参考图1A到图7描述的参数估计方法中详细介绍,并因此,将省略其重复描述。

如上所述,本申请的实施例可以应用于其上装备有成像器件的诸如交通工具、可移动机器人、监控设施之类的电子设备。

相应地,根据本申请实施例的参数估计装置100可以作为一个软件模块和/或硬件模块而集成到该电子设备中,换言之,该电子设备可以包括该参数估计装置100。例如,该参数估计装置100可以是该电子设备的操作系统中的一个软件模块,或者可以是针对于该电子设备所开发的一个应用程序;当然,该参数估计装置100同样可以是该电子设备的众多硬件模块之一。

替换地,在另一示例中,该参数估计装置100与该电子设备也可以是分立的设备(例如,服务器),并且该参数估计装置100可以通过有线和/或无线网络连接到该电子设备,并且按照约定的数据格式来传输交互信息。

示例性电子设备

下面,参考图9来描述根据本申请实施例的电子设备。该电子设备可以是其上装备有成像器件的诸如交通工具、可移动机器人、监控设施之类的计算机或服务器或其他设备。

图9图示了根据本申请实施例的电子设备的框图。

如图9所示,电子设备10包括一个或多个处理器11和存储器12。

处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备10中的其他组件以执行期望的功能。

存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本申请的各个实施例的参数估计方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如先前帧图像、当前帧图像、图像中的像素点的位置坐标、特征描述等信息。

在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。应当注意,图9所示的电子设备10的组件和结构只是示例性的,而非限制性的,根据需要,电子设备10也可以具有其他组件和结构。

例如,该输入装置13可以是成像器件,用于采集图像帧序列,所采集的图像帧序列可以被存储在存储器12中以供其他组件使用。当然,也可以利用其他集成或分立的成像器件来采集该图像帧序列,并且将它发送到电子设备10。此外,该输入设备13还可以包括例如键盘、鼠标、以及通信网络及其所连接的远程输入设备等等。

输出装置14可以向外部(例如,用户)输出各种信息,包括估计出的消失线在当前帧图像中的当前位置坐标、成像器件相对于地平面的俯仰角的变化量之类的估计结果等。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。

当然,为了简化,图9中仅示出了该电子设备10中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。

示例性计算机程序产品和计算机可读存储介质

除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的参数估计方法中的步骤。

所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。

此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的参数估计方法中的步骤。

所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。

本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。

还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。

提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。

为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1