针对运动边界的稠密光流快速计算方法、装置及电子设备

文档序号:31215812发布日期:2022-08-20 04:29阅读:169来源:国知局
针对运动边界的稠密光流快速计算方法、装置及电子设备

1.本发明属于机器视觉技术领域,具体涉及针对运动边界的稠密光流快速计算方法、装置及电子设备。


背景技术:

2.光流法是一种利用图像序列中像素在时间域中的变化,及相邻帧图像间相关性,以得到物体运行信息的估计方法。其在涉及目标追踪及运动获取的各种领域均具有广泛应用,例如实现智能机器人的视觉导航,无人机的位姿估计校准;以及通过云层变化进行气象分析预报,通过烟雾检测以获取森林火灾事故情况等。
3.依据光流场中二维矢量的疏密程度将光流法分为稠密光流法及稀疏光流法。其中,稠密光流法由于进行了图像逐点配准,具有配准效果更好的优点;因此其相较于稀疏光流法具有更广泛的使用场景。同时为了减小稠密光流计算过程中的噪声或异常值以提高最终的图像效果,还需要进行相应的滤波处理。
4.但基于现有的滤波手段进行稠密光流计算仍存在以下缺点:一方面,滤波处理的目的在于对整个图像序列进行优化,因此在具体的滤波过程中均针对整个光流场进行,而未考虑运动边界的特殊性,导致输出的图像常存在运动边界区域交叉混合的现象。进而导致光流计算结果无法在需要进行准确的目标及场景分割的领域具有良好的应用。另一方面,由于现有的滤波处理针对整个光流场进行,因此导致整个光流计算量较大;特别是稠密光流本身就具有计算量大的缺点。从而导致光流计算结果也无法实时性要求较高的实时导航或者物体检测等领域无法进行有效应用。


技术实现要素:

5.本发明目的在于提供一种针对运动边界的稠密光流快速计算方法、装置及电子设备,以解决现有的稠密光流计算中无法快速准确的进行运动边界处理的技术问题。
6.为达成上述目的,本发明提出如下技术方案:
7.针对运动边界的稠密光流快速计算方法,包括:
8.基于能量泛函变分求解图像金字塔第l层的稠密光流场w=(u
l
,v
l
)
t
;其中u
l
、v
l
分别为第l层图像的光流值的水平分量及及垂直分量;
9.对所述稠密光流场进行运动边界区域ni提取,并以所述运动边界区域中每个像素点i为中心设置邻域窗口;
10.建立非局部传播滤波器其中,wi为所述邻域窗口内中心像素点i处的光流场;w
i’为所述邻域窗口内任一像素点i’处的光流场;为所述邻域窗口内任一像素点i’相较于中心像素点i的权重,zi为确保所有权重之和为1的归一化因子;其中,q(in,i')表示in和i’之间的相似性度量,in为i至i’传播路径中的第n
个像素;p(i,i')表示i和i’之间的相似性度量;且所述q(in,i')与所述p(i,i')都与相应像素间的欧氏距离、亮度差值及光流散度同时相关;
11.基于所述非局部传播滤波器对所述第l层的稠密光流场进行处理以作为第l+1层的初始稠密光流场;
12.依次重复上述步骤直至得到最底层原始图像序列的光流场。
13.进一步的,所述基于能量泛函变分求解图像金字塔第l层的稠密光流场w=(u
l
,v
l
)
t
之前,包括:
14.分别获取所述图像在水平方向上及垂直方向上的分辨率并判断高低;
15.对较高分辨率所在的方向进行下采样以构建图像分层,并计算每层在该方向上的分辨率;
16.对较低分辨率所在的方向依据上述分层结果进行下采样,以使每层在水平方向上及垂直方向上的分辨率相等。
17.进一步的,与所述图像金字塔第l层的稠密光流场w=(u
l
,v
l
)
t
对应的能量函数为:
[0018][0019]
其中,表示charbonnier惩罚函数,和分别表示第l层图像中像素的亮度分别在对应方向的偏导数,表示空间梯度算子,λ表示平滑项系数因子。
[0020]
进一步的,所述对所述稠密光流场进行运动边界区域ni提取,包括:
[0021]
使用边缘检测器检测光流场的运动边界;
[0022]
使用膨胀掩码扩展检测出的边界获取运动边界区域ni。
[0023]
进一步的,所述q(in,i')与所述p(i,i')的表达式分别为:
[0024][0025][0026]
其中,为像素点in与像素点i’间的欧氏距离,σ
qs
为该项的优化参数;为像素点in与像素点i’间的亮度差值,σ
qb
为该项的优化参数;为像素点in与像素点i’间的光流散度,σ
qd
为该项的优化参数;
[0027]
为像素点i与像素点i’间的欧氏距离,σ
ps
为该项的优化参数;
为像素点i与像素点i’间的亮度差值,σ
pb
为该项的优化参数;为像素点i与像素点i’间的光流散度,σ
pd
为该项的优化参数。
[0028]
进一步的,对于所述各相应的优化参数,σ
qs
>σ
ps
,σ
qb
>σ
pb
,σ
qd
>σ
pd

[0029]
针对运动边界的稠密光流快速计算装置,包括:
[0030]
输入模块,所述输入模块用于获取相邻两帧图像对应的图像金字塔;
[0031]
光流计算模块,所述光流计算模块用于基于能量泛函变分对图像金字塔第l层的稠密光流场进行求解;
[0032]
边界提取模块,所述边界提取模块用于对所述稠密光流场进行运动边界区域提取;
[0033]
非局部传播滤波模块,所述非局部传播滤波模块用于对所述运动边界区域进行非局部传播滤波;
[0034]
输出模块,所述输出模块用于对最底层原始图像的光流场进行输出。
[0035]
进一步的,包括预处理模块,所述预处理模块用于对相邻两帧图像进行下采样得到图像金字塔。
[0036]
进一步的,所述边界提取模块包括:
[0037]
边缘检测器,所述边缘检测器用于检测光流场的运动边界;
[0038]
膨胀掩码扩展器,所述膨胀掩码扩展器用于检测运动边界区域。
[0039]
针对运动边界的稠密光流快速计算电子设备,包括:
[0040]
至少一个处理器;
[0041]
与所述处理器通讯连接的存储器;
[0042]
存储于所述存储器,并被所述处理器识别的软件;所述软件用于执行所述的方法。
[0043]
有益效果:
[0044]
由以上技术方案可知,本发明的技术方案提供了一种关注运动边界处理的稠密光流计算方法。
[0045]
所述方法基于能量方法,并通过图像金字塔进行图像序列分割以得到原始图像序列的光流场。因此首先进行如下步骤:基于能量泛函变分求解图像金字塔第l层的稠密光流场w=(u
l
,v
l
)
t

[0046]
由于所述方法的核心目的在于防止输出的图像序列的运动边界区域交叉混合,以使在基于该光流计算结果进行后续图像处理时,可准确的以对场景内目标的轮廓进行准确提取。从而使所述光流计算方法在仅对轮廓情况有针对性要求的领域可充分应用。因此在获得第l层的稠密光流场后,继续进行如下步骤:对所述稠密光流场进行运动边界区域ni提取。本步骤的目的在于对具有相近性质的区域(即该运动边界区域)进行提取,以作为后续进行单独处理的基础。
[0047]
在得到运动边界区域ni时,则需对其进行针对性处理。现有的滤波手段多基于仅由像素亮度差异定义的相似性度量进行。但是在光流场的实际优化处理时仅考虑像素亮度相关性信息则常常缺乏足够的鲁棒性。因此本方法则建立了如下非局部传播滤波器:
并设置与所述非局部传播滤波器中权重相关的q(in,i')值(in和i’之间的相似性度量),p(i,i')值(i和i’之间的相似性度量)均与相应像素间的欧氏距离、亮度差值及光流散度同时相关。此时,滤波时的权重将不仅包含了相应像素间的亮度相关性信息,还包含了传播路径上图像角度的像素邻域间的位置相关性信息,及流场角度的光流场密度相关性信息。此时,若中心像素i与邻域窗口内任一像素i’间的传播路径上存在不同属性像素in时,权重将可有效抑制其造成的光流计算错误,从而避免最终图像上的运动边界区域交叉混合。
[0048]
继续基于所述非局部传播滤波器对所述第l层的稠密光流场进行处理以作为第l+1层的初始稠密光流场;
[0049]
最终依次重复上述步骤直至得到最底层原始图像序列的光流场,而基于所述光流场的计算结果即可准确的获取目标的轮廓信息,即不存在运动边界混乱的情况。
[0050]
且由于上述非局部传播滤波器仅针对运动边界区域进行,因此相对于金字塔稠密光流计算,不会引起计算量的增加。从而使相应的光流计算结果在更关注目标轮廓情况,且对时效性要求较高的实时导航或者物体检测等领域具有良好的应用。
[0051]
本发明还提供了一种针对运动边界的稠密光流快速计算装置及电子设备。它们均基于所述方法进行搭建,因此同样在更关注目标轮廓情况,且对时效性要求较高的实时导航或者物体检测等领域具有良好的应用。
[0052]
应当理解,前述构思以及在下面更加详细地描述的额外构思的所有组合只要在这样的构思不相互矛盾的情况下都可以被视为本公开的发明主题的一部分。
[0053]
结合附图从下面的描述中可以更加全面地理解本发明教导的前述和其他方面、实施例和特征。本发明的其他附加方面例如示例性实施方式的特征和/或有益效果将在下面的描述中显见,或通过根据本发明教导的具体实施方式的实践中得知。
附图说明
[0054]
附图不意在按比例绘制。在附图中,在各个图中示出的每个相同或近似相同的组成部分可以用相同的标号表示。为了清晰起见,在每个图中,并非每个组成部分均被标记。现在,将通过例子并参考附图来描述本发明的各个方面的实施例,其中:
[0055]
图1为本发明所述的针对运动边界的稠密光流快速计算方法的流程图;
[0056]
图2为本发明所述的非局部传播滤波器的线性化模型图;
[0057]
图3为图1中图像金字塔的构建流程图;
[0058]
图4为图1中运动边界区域的提取流程图;
[0059]
图5为本发明所述的针对运动边界的稠密光流快速计算装置的一种结构示意图;
[0060]
图6为为本发明所述的针对运动边界的稠密光流快速计算装置的另一种结构示意图。
具体实施方式
[0061]
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发
明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。
[0062]
本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,除非上下文清楚地指明其它情况,否则单数形式的“一个”“一”或者“该”等类似词语也不表示数量限制,而是表示存在至少一个。“包括”或者“包含”等类似的词语意指出现在“包括”或者“包含”前面的元件或者物件涵盖出现在“包括”或者“包含”后面列举的特征、整体、步骤、操作、元素和/或组件,并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。“上”“下”“左”“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
[0063]
本发明实施例提供了针对运动边界的稠密光流快速计算方法、装置及电子设备。所述方法基于金字塔稠密光流进行光流场计算优化,且为了提高与最底层原始图像的光流场相应的原始图像中运动边界的清晰度,进行了运动边界及运动边界区域的提取,并建立了非局部传播滤波器以对所述运动边界区域单独进行加权滤波处理,然后将该结果代入至通过图像金字塔获取的第l层图像的光流场中。最终基于上述循环计算即可得到具有清晰运动边界的原始图像。由于上述滤波处理仅针对运动边界区域进行,因此所述方法整体上还具有计算量小,实时性强的优点。基于此,本发明实施例在更关注目标轮廓情况,且对时效性要求较高的实时导航或者物体检测等领域具有良好的应用。
[0064]
如图1-2所示,所述计算方法包括:
[0065]
步骤s102、基于能量泛函变分求解图像金字塔第l层的稠密光流场w=(u
l
,v
l
)
t
;其中u
l
、v
l
分别为第l层图像的光流值的水平分量及及垂直分量。
[0066]
本步骤的目的在于对每层图像进行稠密光流场计算,以通过不断的迭代计算得到最底层原始图像的稠密光流场。
[0067]
在具体计算时,与所述图像金字塔第l层的稠密光流场w=(u
l
,v
l
)
t
对应的能量函数为:
[0068][0069]
其中,表示charbonnier惩罚函数,和分别表示第l层图像中像素点的亮度分别在对应方向的偏导数,表示空间梯度算子,λ>0表示平滑项系数因子。具体的,所述charbonnier惩罚函数可以表示为:其中,s为自变量,τ为一确保所述能量函数e可微的小参数,计算时一般设置τ=0.001。
[0070]
建立图像金字塔是进行步骤s102中对应计算的基础,在图像金字塔中每层的水平方向上的分辨率需要与垂直方向上的分辨率保持一致。但受目前的宽视场显示需求,现有的显示器多为横屏或竖屏结构,从而导致水平方向上的分辨率与垂直方向上的分辨率存在差异。
[0071]
因此如图3所示,作为一种可以选择的实施方式,在步骤s102之前,还进行如下步骤以构建非对称图像金字塔:
[0072]
步骤s101.2、分别获取所述图像在水平方向上及垂直方向上的分辨率并判断高低;
[0073]
步骤s101.4、对较高分辨率所在的方向进行下采样以构建图像分层,并计算每层在该方向上的分辨率;
[0074]
步骤s101.6、对较低分辨率所在的方向依据上述分层结果进行下采样,以使每层在水平方向上及垂直方向上的分辨率相等。
[0075]
由于步骤s101.4中从较高分辨率开始进行图像分层,因此避免了分层过程中造成原始图像分辨率降低,从而对输出的图像造成影响。
[0076]
本实施例中,所述图像金字塔具体为4层。在具体实施时,4层的范围已经足以满足图像处理的需求。
[0077]
本实施例中待处理的图像序列为rubblewhale图像序列,进行图像分层时,设置较高分辨率方向上的下采样因子为0.5,较低分辨率方向上的下采样因子为0.6。
[0078]
步骤s104、对所述稠密光流场进行运动边界区域ni提取,并以所述运动边界区域中每个像素点i为中心设置邻域窗口。
[0079]
特别的,如图2所示,本实施例所述的邻域窗口为菱形结构。
[0080]
由于本实施例的核心目的在于基于光流计算结果获取所述原始图像序列准确的运动边界,以对场景内目标的轮廓进行准确提取,因此对整个场景及目标内是否有噪点或异常值等并不甚关注,而使所述方法的计算结果适用于仅对轮廓情况有特殊要求的实时定位等领域。
[0081]
因此在得到第l层光流场之后继续进行相应的运动边界区域提取。
[0082]
如图4所示,作为一种具体的实施方式,所述运动边界区域的提取由如下步骤进行:
[0083]
步骤s104.2、使用边缘检测器检测光流场的运动边界;
[0084]
步骤s104.4、使用膨胀掩码扩展检测出的边界获取运动边界区域ni。
[0085]
步骤s106、建立非局部传播滤波器其中,wi为所述邻域窗口内中心像素点i处的光流场;w
i’为所述邻域窗口内任一像素点i’处的光流场;为所述邻域窗口内任一像素点i’相较于中心像素点i的权重,zi为确保所有权重之和为1的归一化因子;其中,q(in,i')表示in和i’之间的相似性度量,in为i至i’传播路径中的第n个像素;p(i,i')表示i和i’之间的相似性度量;且所述q(in,i')与所述p(i,i')都与相应像素间的欧氏距离、亮度差值及光流散度同时相关。
[0086]
由于所述非局部传播滤波器中权重相关的q(in,i')值(in和i’之间的相似性度量),p(i,i')值(i和i’之间的相似性度量)均与相应像素间的欧氏距离、亮度差值及光流散度同时相关。因此滤波时的权重将不仅包含了相应像素间的亮度相关性信息,还包含了传播路径上图像角度的像素邻域间的位置相关性信息,及流场角度的光流场密度相关性信息。此时结合图2可得,若中心像素i与邻域像素i’间的传播路径上存在不
同属性像素in(如i1、i2或i3)时,权重将可有效抑制其造成的光流计算错误,从而避免最终图像上的运动边界区域交叉混合。
[0087]
本实施例中,所述q(in,i')与所述p(i,i')的表达式分别为:
[0088][0089][0090]
其中,为像素点in与像素点i’间的欧氏距离,σ
qs
为该项的优化参数;为像素点in与像素点i’间的亮度差值,σ
qb
为该项的优化参数;为像素点in与像素点i’间的光流散度,σ
qd
为该项的优化参数;
[0091]
为像素点i与像素点i’间的欧氏距离,σ
ps
为该项的优化参数;为像素点i与像素点i’间的亮度差值,σ
pb
为该项的优化参数;为像素点i与像素点i’间的光流散度,σ
pd
为该项的优化参数。
[0092]
由于局部传播滤波权重中包含了两种不同的相似性度量,而相似性度量q(in,i')重点反映了图像的传播信息,因此避免了传播路径中的不同属性像素造成的异常;从而使最终的流场优化具有足够的鲁棒性。因此对于所述各优化参数,设置σ
qs
>σ
ps
,σ
qb
>σ
pb
,σ
qd
>σ
pd
。具体的,设置σ
qs
为σ
ps
的3倍,σ
qb
为σ
pb
的3倍,σ
qd
为σ
pd
的3倍。
[0093]
步骤s108、基于所述非局部传播滤波器对所述第l层的稠密光流场进行处理以作为第l+1层的初始稠密光流场;
[0094]
步骤s110、依次重复上述步骤直至得到最底层原始图像序列的光流场。
[0095]
在实际光流计算时,由于运动边界区域交叉混合出现的概率不是100%,因此为了节约计算步骤,进而减小计算量,进一步提高结果输出实时性。作为一种可以选择的实施方式,在步骤s102后进行如下步骤:
[0096]
步骤s103.2、输出与第l层的稠密光流场相应的第l层图像;判断是否发生运动边界区域交叉混合;
[0097]
步骤s103.4、若发生运动边界区域交叉混合,则进入步骤s104;反之,则进入步骤s108。
[0098]
此时,只有在实际发生运动边界区域交叉混合时,才会通过所述非局部传播滤波器进行滤波处理。
[0099]
由于本实施例的目的在于通过该光流结果可准确的提取到图像序列的边界信息或轮廓信息,因此作为一种可以选择的实施方式,在步骤s110后,还包括:
[0100]
步骤s112.2、提取所述原始图像序列的光流场的运动边界;
[0101]
步骤s112.4、对所述运动边界的邻域内的像素亮度进行滤波处理,以使运动边界对应的像素的亮度高于其邻域对应的像素的亮度。
[0102]
此时,通过步骤s112.2-步骤s112.4即可通过亮度差异对原始图像序列的运动边界进行进一步标记,以便于后续可准确快速对图像序列中的轮廓进行提取。
[0103]
上述方法过程可以运行在处理器中,或者也可以存储在存储器中(或称为计算机可读介质),计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0104]
这些计算机程序也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤,对应与不同的步骤可以通过不同的模块来实现。
[0105]
本实施例还提供了一种针对运动边界的稠密光流快速计算装置,所述装置基于所述方法搭建。
[0106]
如图5所示,其包括:
[0107]
输入模块,所述输入模块用于获取相邻两帧图像对应的图像金字塔;
[0108]
光流计算模块,所述光流计算模块用于基于能量泛函变分对图像金字塔第l层的稠密光流场进行求解;
[0109]
边界提取模块,所述边界提取模块用于对所述稠密光流场进行运动边界区域提取;
[0110]
非局部传播滤波模块,所述非局部传播滤波模块用于对所述运动边界区域进行非局部传播滤波;
[0111]
输出模块,所述输出模块用于对最底层原始图像的光流场进行输出。
[0112]
如图6所示,为了减小计算量,提高计算结果输出实时性,作为一种可以选择的实施方式,所述装置还包括:
[0113]
第二输出模块,所述第二输出模块与光流计算模块相连,用于输出其计算得到的光流场的对应图像;
[0114]
分析模块,所述分析模块的输入端与所述第二输出模块相连,输出端与所述输入模块及边界提取模块相连。用于对所述对应图像是否发生运动边界区域交叉混合进行判断,以确定其下一步计算步骤。具体实施时,若通过所述分析模块判断所述对应图像已发生
运动边界区域交叉混合,则将光流数据传输给边界提取模块进行非局部传播滤波处理;反之则将光流数据传输给输入模块进入下一次迭代计算。
[0115]
为了创建所述图像金字塔,设置所述装置还包括预处理模块。所述预处理模块与所述输入模块的输入端相连,用于对相邻两帧图像进行下采样得到图像金字塔。
[0116]
为对所述运动边界区域进行有效提取,设置所述边界提取模块包括边缘检测器及膨胀掩码扩展器。所述边缘检测器用于检测光流场的运动边界,所述膨胀掩码扩展器,所述膨胀掩码扩展器用于检测运动边界区域。本实施例中,所述边缘检测器具体为sobel边缘检测器。
[0117]
本实施例还提供了一种针对运动边界的稠密光流快速计算电子设备。所述电子设备包括:至少一个处理器、存储器及软件。所述处理器与所述存储器通讯连接,所述软件存储于所述存储器内并被所述处理器识别,用于执行所述的方法。
[0118]
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1