估算无人机所观测场景的位移及地速的电子装置和方法与流程

文档序号:16794938发布日期:2019-02-01 19:49阅读:253来源:国知局
估算无人机所观测场景的位移及地速的电子装置和方法与流程

本发明包括一种用于估计由配备在无人机上的图像传感器所观察场景的位移的电子装置。估计装置包括:第一获取模块,配置为获取由图像传感器所拍摄场景的一系列图像;以及估计模块,配置为通过光流算法计算先前获取图像和当前获取图像之间场景的位移的估计。

本发明还涉及一种用于计算无人机的地速的电子设备,该设备包括:第二获取模块,配置为获取测量高度,该估计装置配置为估计无人机所飞越地形的位移;以及计算模块,配置为根据获取的测量高度和估计的地形位移计算无人机的地速。

本发明还涉及一种无人机,其包括这种用于计算无人机的地速的电子设备。

本发明还涉及一种用于估计由配备在无人机上的图像传感器所观察场景的位移的方法,该方法由这种电子估计装置执行。

本发明还涉及一种计算机可读介质,其包括包括软件指令的计算机程序,当被计算机执行时,其执行这种估计方法。

本发明涉及无人机领域,即远程驾驶飞行机动设备。本发明特别适用于旋转翼无人机(例如四轴飞行器),同时也适用于其他类型的无人机(例如固定翼无人机)。

本发明特别适用于精确计算无人机的速度,特别是无人机的地速,以便基于给定的速度输入更好地控制无人机。

当驾驶员不发送命令时,即使存在诸如风的外部干扰,本发明也可用于控制无人机保持不动。

当无人机处于跟踪模式以便跟踪给定目标时,本发明也是特别有用的,例如无人机的驾驶员参加体育运动,然则必须能够精确地估计由配备在无人机上的图像传感器所观察场景的位移,并进一步精确地计算无人机的地速以有效跟踪目标。



背景技术:

从文献ep2,400,460a1中可知一种用于估计由配备在无人机上的垂直相机所捕获场景的差分位移的电子装置和方法,从而该估计的差分位移使其可以估计无人机的水平速度。

位移的估计包括周期性地连续更新图像金字塔类型的多分辨率描绘,对场景的相同捕获图像以不同的相继递减分辨率建模,并且对每个新捕获图像应用所述多分辨率描绘,光流型的迭代算法使其可以估计场景从一张图像到下一张图像的差分运动。

在一定的单个或多个条件下,位移的估计进一步包括从光流算法切换到角检测类型算法以估计场景从一张图像到下一张图像的差分运动。

例如,所谓光流算法的原理在以下文献中描述:“anlterativeimageregistrationtechniquewithanapplicationtostereovision”bylucasb.d.andkanadet.inproc.darpaimageunderstandingworkshop,pp.121-130,in1981、“determiningopticalflow”byhornb.k.p.andschunkb.inartificialintelligence,(17):185-204,in1981;以及“3dposeestimationbasedonplanarobjecttrackingforuavscontrol”bymondragoni.etal.inproc.ieeeconferenceonroboticsandautomation,pp.35-41,inmay2010。mondragoni.等人的文章描述了一种用于估计具有不同分辨率的光流以引导无人机着陆的多分辨率技术。

然而,这样的估计并不总是最佳的。



技术实现要素:

因此,本发明的目的是提出一种电子装置和相关方法,其能够更有效地估计由配备在无人机上的图像传感器所观察场景的位移。

为此,本发明包括一种用于估计由配备在无人机上的图像传感器所观察场景的位移的电子装置,该装置包括:

-第一获取模块,配置为获取由图像传感器所拍摄场景的一系列图像,

-估计模块,配置为通过光流算法计算先前获取图像和当前获取图像之间场景的位移的估计,光流算法被迭代应用在若干相继层级,与各个层级相关联的图像是与后继层级相关联的图像的子采样图像,与最终层级相关联的图像是所获取图像,

估计模块配置为在从各自一个层级通过到下一个层级期间,计算每个层级的场景的位移的至少一个估计,先前图像被各个估计的位移进一步平移,

估计模块进一步配置为确定各个估计位移的整数值的舍入,然后在从各自一个层级通过到下一个层级期间,按舍入位移平移先前图像。

利用现有技术的估计装置,通过光流算法估计的场景的位移的值是十进制值,以浮点数的形式描述。然后先前图像被转换为十进制像素值,其涉及由所述估计的十进制像素值转换的先前图像的插值。随后,由于在已平移的先前图像和当前图像之间光流算法的新迭代,获得平移残差的估计。然后,总估计平移等于应用于先前图像的平移与在该光流算法的新迭代中计算的平移残差之和。

利用根据本发明的估计装置,通过光流算法所估计场景的位移的值被舍入为整数值,例如最接近的整数值。然后通过该整数像素值平移先前图像,这使得可以利用现有技术的装置完成而避免上述插值,从而可以降低算法复杂度。

根据本发明的其他有利方面,单独考虑或根据所有技术上可能的组合考虑,电子估计装置包括以下特征中的一个或多个:

-在先前图像和当前图像之间计算每个层级的场景的位移的估计,并且估计模块进一步配置为基于在当前图像之前的图像的最终层级处先前确定的位移,选择在先前图像和当前图像之间的时间差,最初选择的时间差是预定义的;

-图像由图像传感器以预定义的频率拍摄,并且在先前图像与当前图像之间的时间差是由第一获取模块所获取拍摄图像的数量上差异,当先前图像和当前图像是连续拍摄的两张图像,并且在每个先前图像和当前图像之间拍摄的附加插入图像增加一个单位时,所拍摄图像在数量上差异等于1;

-先前图像和当前图像之间的时间差选择包括在所述时间差的增大和减小之间的滞后;

-为了选择先前图像和当前图像之间的时间差,估计模块配置为比较估计位移的当前平滑值与至少一个阈值,当前平滑值取决于先前平滑值和估计位移,初始平滑值是预定义的;以及

-估计模块配置为在每个层级和为每张当前图像计算场景的位移的单个估计。

当通过场景的位移的光流算法估计的残差值较低(通常小于0.5个像素)时,估计值被舍入为0并且不再平移先前图像。然后中断迭代过程,并因此中断梯度下降,这可能对要估计的平移残差产生相当不精确的结果。这种不精确通常大约是0.1像素。

当要估计的总平移非常小并且直接等于该平移残差时,那么所获得的估计是不精确的,通常约为0.1像素的不精确度,这在寻找小位移(通常小于0.5像素)时是显著的。

然后基于在当前图像之前的图像在最终层级先前确定的位移,选择先前图像和当前图像之间的时间差,并且特别地当位移的估计值变小时,增加下一次迭代中先前图像与当前图像之间的时间差,使其可以通过增加要估计的总平移以保持令人满意的精度。然后,根据本发明的估计装置所估计的位移取决于在先前图像和当前图像之间所选的时间差。当时间差限定为所获得图像的数量时,估计的最终位移除以所用时间差以计算2张相继图像之间位移,即具有归一时间差的位移。因此,对于要估计的小位移,不精确度显著降低。

本发明还涉及一种用于计算无人机的地速的电子设备,该设备包括:

-第二获取模块,配置为获取由配备在无人机上的测量装置所提供的测量高度,

-估计装置,配置为估计由配备在无人机上的图像传感器所观察场景的位移,该场景是被无人飞越的地形,以及

-计算模块,配置为根据所获取的测量高度和估计装置所估计的估计地形位移计算无人机的地速,

其中估计装置如上所限定。

本发明还涉及一种无人机,包括用于计算无人机的地速的电子设备,其中电子计算设备如上所限定。

本发明还涉及一种用于估计由配备在无人机上的图像传感器所观察场景的位移的方法,该方法由这种电子估计装置执行,并包括以下步骤:

-获取由图像传感器所拍摄场景的一系列图像,

-通过光流算法估计先前获取图像和当前图像之间场景的位移,光流算法被迭代应用在若干相继层级,与各个层级相关联的图像是与后继层级相关联的图像的子采样图像,与最终层级相关联的图像是所获取图像,

估计步骤包括在从各自一个层级通过到下一个层级期间,计算每个层级的场景的位移的至少一个估计,按各个的估计位移进一步平移先前图像,

估计步骤进一步包括确定各个估计位移的整数值的舍入,然后在从各自一个层级通过到下一个层级期间,按舍入位移平移先前图像。

本发明还涉及一种计算机可读介质,其包括包括软件指令的计算机程序,当被计算机执行时,其执行上述估计方法。

附图说明

通过阅读以下描述,本发明的这些特征和优点将变得更明显,该描述仅作为非限制性示例提供,并且参考附图进行,其中:

图1是无人机的示意图,包括配置为拍摄场景的一系列图像的图像传感器和根据本发明的电子估计装置,该估计装置包括用于通过光流算法估计在获取的先前图像和获取的当前图像之间场景的位移的模块;

图2是用于计算无人机的地速的方法流程图,该计算方法包括根据本发明的估计方法;

图3是由图1的估计模块通过光流算法实现的图像金字塔示意图;以及

图4是由图1的估计模块实现的状态机示意图,用于基于先前图像的估计位移选择在先前图像和当前图像之间的时间差。

具体实施方式

在图1中,无人机10(即在机上没有驾驶员的飞行器)包括图像传感器12,其配置为拍摄场景14(例如无人机10所飞越地形)的一系列图像;和电子计算设备16,其配置为计算无人机10的地速。

无人机10还包括高度计20(例如无线电高度计或超声波遥测仪),其向地面发射波束22,使其可测量无人机10相对于地形的高度,即相对于地面的高度。

作为可选的附加物,无人机10包括压力传感器(未示出),也称为气压传感器,其配置为确定无人机10的高度变化,例如瞬时变化和/或相对于参考平面的变化(即相对于预定初始高度的变化)。例如参考平面是海平面,然后压力传感器能够提供无人机10相对于海平面的测量高度。

无人机10是能够远程驾驶的机动飞行器,特别是通过操纵控制杆26远程驾驶。

无人机10包括传输模块28,其配置为优选地通过无线电波与一个或多个电子器材交换数据,特别是与控制杆26,或甚至与其他电子元件交换数据以传输由图像传感器12所获取的一张或多张图像。

在图1的示例中,无人机10是帆翼型的固定翼无人机。它包括两个机翼30和在后部设置具有推进系统34的机身32,该推进系统包括发动机36和推进器37。每个机翼30被设置在后缘的侧面上,具有至少一个可通过伺服机构(未示出)调节的控制表面38,以控制无人机10的飞行轨迹。

在未示出的替代方案中,无人机10是旋转翼无人机,包括至少一个旋翼,并且优选地包括多个旋翼,从而该无人机10被称为多旋翼无人机。例如,旋翼的数量等于4,则无人机10是四轴无人机。

图像传感器12本身是已知的,并且例如是指向下方的垂直相机。

场景14应在该术语的一般意义上理解,无论其涉及建筑物外部还是内部的场景。当场景14是由无人机10所飞越的地形时,地形也应在该术语的一般含义内被理解为当涉及外部地形时作为地表的一部分,无论其涉及陆地表面或海洋表面,或包括陆地部分和海洋部分的表面。或者,地形是布置在建筑物内部的内部地形。地形也被称为地面。

例如,电子计算设备16在无人机10上,如图1所示。

或者,电子计算设备16是远离无人机10的电子设备,从而电子计算设备16适于通过无人机10上的传输模块28与无人机10,特别是与图像传感器12通信。

电子计算设备16包括配置为估计由图像传感器12所观察场景14的位移的电子估计装置40,估计装置40包括:第一获取模块42,配置为获取由图像传感器12所拍摄场景14的一系列图像;以及估计模块44,配置为通过光流算法计算先前获取图像和当前获取图像之间场景14的位移的估计。

电子计算设备16包括第二获取模块46,配置为获取由配备在无人机10上的测量装置(例如高度计20)所提供的测量高度。

电子计算设备16包括计算模块48,其配置为根据所获取的测量高度和由估计装置40所估计的地形的位移计算无人机10的地速,其中场景14是无人机10所飞越的地形。

在图1的例子中,电子计算设备16包括信息处理单元50,例如由存储器52和处理器54组成,诸如与存储器52相关联的gpu(图形处理单元)或vpu(视觉处理单元)类型的处理器。

控制杆26本身是已知的,并且可以驾驶无人机10。在图1的例子中,控制杆26包括两个抓握把手60,每个抓握把手用于被驾驶员相应的手抓握;多个控制构件,包括两个操纵杆62,每个操纵杆布置在相应的抓握把手60附近并旨在被驾驶员操纵,优选地被相应的拇指操纵。或者,控制杆26由智能手机或电子平板电脑实现(未示出),如其本身已知的。

控制杆26还包括无线电天线64和无线电收发器(未示出),用于通过无线电波与无人机10向上和向下交换数据。

例如,电子估计装置40在无人机10上,如图1所示。

或者,电子估计装置40是远离无人机10的电子装置,然后电子估计装置40适于通过无人机10上的传输模块28与无人机10,特别是与图像传感器12通信。

电子估计装置40包括第一获取模块42和估计模块44。例如,它由第一获取模块42和估计模块44组成。

在图1的例子中,第一获取模块42和估计模块44,以及第二获取模块46和计算模块48均以可被处理器54所执行软件的形式制成。然后,信息处理单元50的存储器52能够存储第一获取软件,该第一获取软件配置为获取由图像传感器12拍摄所场景14的一系列图像。信息处理单元50的存储器52能够存储估计软件,该估计软件配置为经由光流算法计算在所获取的先前图像与当前图像之间的场景14的位移的估计。信息处理单元50的存储器52还能够存储第二获取软件,该第二获取软件配置为获取由配备在无人机10上的测量装置(例如高度计20)所提供的测量高度;以及计算软件,该计算软件配置为根据所获取的测量高度和估计软件所估计的地形位移计算无人机10的地速。然后,信息处理单元50的处理器54能够执行第一获取软件、估计软件、第二获取软件和计算软件。

在未示出的替代方案中,第一获取模块42和估计模块44,以及第二获取模块46和计算模块48均以可编程逻辑组件的形式制成,例如fpga(现场可编程门阵列),或者以专用集成电路的形式制成,例如asic(专用集成电路)。

第一获取模块42配置为获取由图像传感器12所拍摄场景14的至少两张图像,在所获取的先前图像和当前图像之间计算由估计模块44所估计的场景14的位移。具体地,第一获取模块42配置为获取场景14的一系列图像,这些图像已经由传感器12拍摄。优选地,第一获取模块42配置为通过传感器12定时获取场景14的多张图像,或者当传感器12拍摄图像时获取场景的多张图像。

估计模块44配置为经由光流算法计算在所获取的先前图像与当前图像之间场景14的位移的估计。

光流算法使得可以估计场景14从一个图像到下一个图像的差分运动,而且存在用于实现光流算法的不同已知方法,例如lucas-kanade法、horn-schunk法或farneback法。

之所以lucas-kanade估计法特别快速和简易,是因为存在局部恒定的光流,即其运动对于由图像传感器12所捕获场景14的每个点是相同的。如果运动平行于图像传感器12的焦平面并且没有围绕图像传感器12的光轴旋转,以及具有场景14的恒定照明,则如果场景14是完全平坦的,该假设被验证。

其他光流算法的实现例子在briod等人的文献“optic-flowbasedcontrolofa46gquadrotor”、julin等人的文献“opticalflowbasedvelocityestimationforvisionbasednavigationofaircraft”以及ho等人的文献“distanceandvelocityestimationusingopticalflowfromamonocularcamera”中。

光流算法进一步以所谓的多分辨率技术实现,适用于从低分辨率到高分辨率以不同的相继图像分辨率估计光流。

例如,光流算法是具有金字塔型实现的迭代算法,如图3所示,金字塔70包括若干层级72,并且与相应层级k相关联的图像ik是与后继层级k-1相关联的图像ik-1的子采样图像。k是表示层级的索引,并且包括在0和n之间,同时以递减的方式演变,n指定初始层级而0指定最终层级。

换言之,光流算法被迭代地应用于若干相继层级k、k-1,与相应层级k相关联的图像ik是与后继层级k-1相关联的图像ik-1的子采样图像,与最终层级0相关联的图像i0是所获取的图像。

然后,最子采样图像in对应于迭代算法的初始层级n,或者对应于金字塔的顶层级。与迭代算法的最终层级0相关联或金字塔的底部层级的图像i0是由第一获取模块42所获取的图像。换言之,与最终层级0相关联的图像i0不是子采样的。

例如,从层级k到前一层级k+1的子采样因子f等于2。例如,迭代算法的层级72的数字等于n+1,包括在2和4之间,优选地等于3。换言之,例如n包括在1和3之间,优选地等于2。

作为例子,在0层级的完整图像分辨率为176×144像素,在1层级的图像分辨率为88×72像素,在2层级的图像分辨率为44×36像素,以及在3层级的图像分辨率为22×18个像素,在此例子中n等于3。

例如,通过计算来自图像ik-1的f2个像素的图像ik的每个像素,获得相对于层级k相关联的图像ik子采样的后继层级k-1相关联的图像ik-1,例如图像ik的每个像素是图像ik-1的f2个对应像素的平均值,f表示子采样因子。在图3的例子中,f等于2,然后图像ik的每个像素取决于图像ik-1的4个像素,例如是这4个像素的平均值。

然后,估计光流的精度与所做的减少成反比;相反,对应的最大可检测速度与减小层级成比例地增加。多分辨率方法包括以最低分辨率(即层级n)估计恒定光流,然后将该结果再输入在后继分辨率(即层级n-1)中的预测,等等。该输入在后继分辨率中的预测将针对此后续分辨率调整大小。在图像的粗略版本(即最子采样的图像in)上开始的优点在于在图像中仅允许非常小的位移并且点的跟踪非常快。然后,由此获得的运动信息可用于预测较低层级图像中的运动。因此,从一个层级到另一个层级执行该进程直到获得足够的精度。

或者,执行从层级3(三个相继减少)到层级1(一个减少)的估计,这使得可以非常快速地获得精确结果。根据该替代方案,放弃层级0(完整图像)使其可以节省大约75%的计算,这提供了计算时间和结果精度之间的有效折衷。

作为可选的附加,光流算法与其他图像处理算法相结合,特别是与角检测器类型的算法相结合,以便改善场景从一个图像到下一个图像的差分运动估计,如在文献ep2,400,460a1中所描述。

估计模块44配置为在每个层级k处计算场景14的位移的至少一个估计,该估计是在先前图像和当前图像之间计算的。在从相应的层级k到后继层级k-1的过程中(例如,在每个估计之前),如图2所示,先前图像通过各自的估计位被进一步平移。当在估计之前完成平移时,估计模块44配置为对先前图像执行在初始层级0之前从估计的位移到最终层级的平移。

优选地,估计模块44配置成为每个层级k和每张当前图像计算场景14的位移的单个估计。

替代地,估计模块44配置成为至少一个层级和每张当前图像计算场景14的位移的多个估计,例如至少三个估计。然后,本领域技术人员将理解,在每个层级所计算的估计的数量是计算精度和计算时间之间的折衷,当在每个层级所计算的估计的数量高时,计算将更精确,特别是对于最后层级(即具有最佳分辨率的层级,例如层级0或1),当在每个层级所计算的估计的数量高时,计算时间也更长。根据该替代方案,估计模块44配置为优选地针对最后层级(即具有最佳分辨率的层级,例如层级0或1)和针对每个当前图像,计算场景14的位移的多个估计。

根据本发明,估计模块44进一步配置为在从各自一个层级k到下一个层级k-1的过程期间,针对先前图像的平移,确定各估计位移的整数值舍入,然后先前图像按舍入后的位移平移。舍入优选地是舍入到与估计的位移最接近的整数值。

作为可选的附加,估计模块44进一步配置为基于当前图像之前的图像在最终层级处先前确定的位移,选择在先前图像和当前图像之间的时间差,最初选择的时间差是预定义的。时间差的选择优选地在估计场景14在最终层级0的位移之后进行,以便估计新获取的图像的位移,从而对应于将应用迭代光流算法的下一个当前图像。

图像由图像传感器12以预定频率拍摄,并且在先前图像和当前图像之间的时间差优选地是由第一获取模块42所获取的拍摄图像的数量差异。

例如,当先前图像和当前图像是连续拍摄的两张图像,并且在每个先前图像和当前图像之间拍摄的附加插入图像增加一个单位时,所拍摄图像在数量上的差异等于1。

例如,对于通过估计模块44选择的时间差,以图像数量表示的差异小于或等于5,优选地小于或等于3。

然后,根据该可选的附加,估计的位移取决于在先前图像和当前图像之间的所选时间差,并且估计模块44优选地还被进一步地配置为将估计的最终位移除以所选择的时间差。当以所拍摄图像的数量定义时间差时,这从而使得可以估计两张相继图像之间的位移,即具有归一的时间差的位移。本领域技术人员将进一步理解,当时间差以时间值的形式被定义时,估计模块44优选地被进一步配置为将估计的最终位移乘以预定时间段与所选时间差之间的比率,以便估计两张相继图像之间的位移。然后,预定时间段对应于两个相继图像之间的时间段,或图像传感器12的两次图像采集,即图像传感器12所预定义图像采集频率的倒数。

另外,作为可选的附加,估计模块44配置为选择在时间差增加和减小之间具有滞后的先前图像和当前图像之间的所述时间差。

另外,作为可选的附加,为了选择先前图像和当前图像之间的时间差,估计模块44配置为比较估计位移的当前平滑值d与至少一个阈值,当前平滑值d取决于先前平滑值和估计位移,初始平滑值是预定义的。

然后,在图4的例子中,估计模块44配置为实现有限状态机80,以便根据先前确定的位移(例如估计的位移的当前平滑值d)选择时间差。

在图4的这个例子中,时间差以整数值的形式表示,并且该差值在有限状态机80的初始状态82中等于1,如前所述,差值等于1对应于连续拍摄的两张图像,例如具有索引n和n-1的图像。

估计模块44配置为只要估计的位移的当前平滑值d大于或等于(m-1)×δ,就保持在具有差值等于1的该初始状态82中,其中m是预定的以图像数量表示的最大差异,而δ是以与估计的位移的当前平滑值d相同的单位表示的预定阈值。

δ通常表示为像素数,例如等于2个像素(px)。m也对应于有限状态机80的状态数,例如等于3。

估计模块44配置为当估计的位移的当前平滑值d小于(m-1)×δ时,进入有限状态机80的后继状态84,该后继状态84对应于差值等于2(即由插入图像分隔的两张图像,例如具有索引n和n-2的图像)。

然后,在m=3且δ=2px的例子中,估计模块44配置为如果当前平滑值d大于或等于4个像素则保持在初始状态82,并且如果该当前平滑值d严格小于4个像素则进入对应差值等于2的后继状态84。

估计模块44配置为如果估计的位移的当前平滑值d大于或等于(m-2)×δ,而小于或等于(m-1)×δ+h,则保持在有限状态机80对应于差值等于2的该后继状态84,其中h表示滞后值,以与当前平滑值d和预定阈值δ相同的单位表示。

h通常表示为像素数量,例如等于0.5个px。

在这个m=3,δ=2px且h=0.5px的例子中,估计模块44配置为在当前平滑值d在2个像素和4.5个像素之间时,保持在对应于差值等于2的该后继状态84中,而仅在当前平滑值d严格大于4.5个像素时,返回到对应于差值等于1的初始状态82。

类似地,估计模块44配置为在估计的位移的当前平滑值d小于(m-2)×δ时,进入有限状态机80的后继状态86,该后继状态86对应于差值等于3(即由两张插入图像分隔的两张图像,例如具有索引n和n-3的图像)。估计模块44配置为在估计的位移的当前平滑值d大于或等于(m-3)×δ,而小于或等于(m-2)×δ+h的情况下,则保持在对应于差值等于3的该后继状态86,以此类推直至最终状态88。

在这个m=3,δ=2px且h=0.5px的例子中,估计模块44配置为如果当前平滑值d严格小于2个像素则进入对应于差值等于3的后继状态86,而在当前平滑值d在0像素和2.5像素之间时保持在该后继状态86,此时该后继状态86实际上对应于最终状态88,m等于3,并且最后仅在当前平滑值严格大于2.5个像素时,返回到与差值等于2相关联的前述状态84。

位移的平滑值(也称为估计的位移的当前平滑值d)优选地是指数平滑的值,例如满足以下等式:

d:=α·d+(1-α)·trans(1)

其中α表示平滑常数,

trans表示估计的位移的值,优选地以像素数的十进制值形式表示;

或者以下式子:

dp=α·dp-1+(1-α)·trans(2)

其中dp和dp-1分别表示当前平滑值和先前平滑值。

例如,对于每秒60张图像的图像速率,α等于0.959对应于0.4s的时间常数,并且默认的trans的初始值等于15个像素。

trans值可通过不同方式计算。例如,光流算法沿着表征图像传感器12的2根轴线在2维空间(fx,fy)中产生像素估计。通常,lucas-kanade光流算法由以下公式产生这种平移:

ix和iy是图像梯度的分量,而

e是梯度具有范数大于第一预定有用阈值的点集。

通过使用无人机的运动模型,也可以获得3维空间(tx,ty,tz)中的估计,作为3维空间中的平移。然后,这需要适配光流算法以考虑移动模型根据图像的区域引起不同的平移的事实。

例如,在输出为3维空间(tx,ty,tz)的情况下,后者表示为无人机10以米为单位,高度为1米的3维空间内平移。之所以使用这种高度为1米的假设,是因为光流算法不知道无人机10的高度,并且其结果取决于该高度。然后,例如使用以下等式计算值trans:

其中f表示为以像素表示的传感器12的焦距,以及

cx、cy表示光学中心的像素坐标。

然后,估计模块44配置成将场景14的估计的位移的值用于每张新图像,优选地使用具有最佳分辨率(即层级0,该结果是最精确的)的层级的值。作为估计模块44的输出提供的估计值是十进制值,诸如以像素数量表示的十进制值。

第二获取模块46配置为获取测量高度,例如由高度计20提供的高度。第二获取模块46优选地配置为获取由测量装置以规则的间隔所测量的高度,或者由所述测量装置测量高度。

计算模块48配置为根据所获取的测量高度和由估计装置40所估计的地形的位移以自身已知的方式计算无人机的地速,其中场景14是无人机10所飞越的地形。

现在将根据图2描述电子计算设备16,特别是电子估计装置40的操作,图2展示了用于计算无人机的地速的方法流程图,该计算方法包括用于估计由图像传感器12所观察的场景14的位移的方法。

在以规则间隔执行的初始步骤100期间,电子估计装置40通过其第一获取模块42获取由图像传感器12预先拍摄场景14的至少两张图像。本领域技术人员应理解,传感器12所拍摄的多张图像优选地由第一获取模块42以规则间隔获取并存储在缓冲存储器(例如存储器52的分区)中,同时等待被估计模块44计算,以便估计在每张新获取图像上场景14的位移。

在随后的步骤110期间,电子估计装置40通过其估计模块44和先前描述的光流算法,计算在所获取的先前图像和当前图像之间场景14的位移的估计。用于计算估计的步骤110将在下文中更详细地描述。

在随后的步骤120中,电子计算设备16通过其第二获取模块46获取由测量装置(例如高度计20)所测量的无人机10的高度,该获取的测量高度对应于先前在前一步骤110期间已完成对场景14的位移的估计。

换言之,本领域技术人员应理解,电子测量设备16优选地包括用于第一获取模块42和第二获取模块44的时间同步装置,使得用于通过光流算法计算场景14的位移的估计的所获取图像在时间上对应于所获取的测量高度。

最后,在步骤130期间,电子计算设备16通过其计算模块48根据在步骤120期间获取的测量高度和在步骤110期间由估计装置40所估计的地形的位移,计算无人机10的地速,在这种情况下,场景14是无人机10所飞越的地形。

现在将更详细地描述估计步骤110。该估计步骤110包括子步骤150,用于将先前图像按先前光流算法在前一层级中迭代应用所估计的位移平移,或者当在初始层级n处对新获取的图像重复光流算法时,将先前图像按前一图像在最终层级0处估计的位移平移。

根据本发明,先前图像的这种平移通过舍入到该先前估计的位移的整数值而完成,优选地舍入到该估计位移的最接近的整数值。这种舍入到估计的位移的整数值以像素数量表示。这使得可以降低该平移对于估计模块40的算法复杂度,并且特别是避免必须执行在估计的位移具有像素数量的十进制值的情况下所必需的插值。

估计步骤110包括子步骤160,用于通过实现光流算法的已知方法之一(例如lucas-kanade法),在金字塔70的层级k处估计场景14的位移。

估计步骤110接下来包括测试子步骤170,用于确定在迭代应用的光流算法中表示各个层级的索引k的值是严格为正还是为零。然后,该测试使得可以确定索引k何时等于0时,此时迭代算法已经到达对应于确定当前图像的精确估计的最终层级,或者索引k何时严格为正,此时必须在具有更多采样图像的后继层级处重复算法。

如果在子步骤170期间执行的测试是否定的(即k>0),则估计步骤110包括用于递减索引k的子步骤180,索引k在n和0之间以递减的方式演变,并且在每次递减180时递减一个单位。

本领域技术人员应理解,在先前描述的替代方案的情况下,估计从层级3(三次连续减少)到层级1(一次减少)执行完成,放弃层级0(完整图像不是子采样),在子步骤170期间执行完成的测试包括确定索引k的值是否严格大于1或等于1,并且确定索引k在n和1之间以递减的方式演变。

相反,当在子步骤170期间进行的测试是肯定的,即k=0或根据前述替代方案k=1时,估计步骤110进入子步骤190,用于选择先前图像和当前图像之间的时间差以估计下一张图像的位移。例如,根据图4,以前述方式使用有限状态机80进行该选择。

在该选择子步骤190结束时,估计模块44一方面特别地向计算模块48提供当前图像的场景14的位移的计算估计,另一方面通过返回到平移子步骤150,再次开始用于新获取图像的迭代光流算法。

因此可以看出,根据本发明的电子估计装置40和相关的估计方法能够更有效地估计由配备在无人机10上的图像传感器12所观察的场景14的位移,特别是在下一层级光流算法的新迭代之前,通过舍入位移到整数值的平移估计位移。

更进一步地,作为可选的附加,选择在先前图像和当前图像之间的时间差作为先前确定的位移的函数使得可以保持令人满意的精度,同时当先前估计的位移的值减少时,增加待估计的总平移。

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