一种大位移光流场估计方法与流程

文档序号:24069654发布日期:2021-02-26 14:30阅读:243来源:国知局
一种大位移光流场估计方法与流程

[0001]
本发明涉及视觉系统技术领域,特别涉及一种大位移光流场估计方法。


背景技术:

[0002]
自horn和schunck首次提出的经典变分最小化框架的光流方法以来,研究人员一直致力于减少这种方法的缺陷,多年来提出了一系列改进,但传统光流方法均基于变分能量模型和相关的能量最小化问题,对于大位移光流场估计效果较差。为了处理大位移,大多数光流方法采用多尺度粗到细框架,从细尺度到粗尺度对图像进行子采样,构建金字塔之后,更高级别金字塔的匹配对应关系作为较低级别匹配过程的指导。作为匹配和光流整合的重要里程碑,brox和malik等开创性的在光流的经典变分最小化框架中引入了稀疏描述符匹配项,稀疏描述符是具有高置信度的点,对于大位移是稳健的。然而,由于匹配的稀疏性和变分最小化的精确初始化的要求,它们通常在运动大于其自身尺度的小细节的情况下失败。
[0003]
基于纯粹数据的方法,如最近邻域场(nnf)和稀疏描述符匹配,可以快速、有效地执行全局搜索以获得完整图像分辨率的最佳匹配,避免了复杂的能量最小化过程。nnf计算定义为,对于一个图像中的每个块,在另一个图像中找到一个最相似的图像块。通过称为patchmatch的开创性工作和改进的方法,计算nnf的效率显着提高,这种提升的核心思想是邻近之间的随机搜索和传播。本发明针对大位移情况,融合最近邻域场方法与从粗到精图像金字塔策略,提出了一种大位移光流场估计方法。


技术实现要素:

[0004]
本发明的目的在于提供一种大位移光流场估计方法,将最近领域场nnf思想与从粗到精图像金字塔策略相结合,以kd-tree算法为搜索策略,实现图像块的有效匹配。
[0005]
本发明提供了一种大位移光流场估计方法,包括以下步骤:
[0006]
s1:kd-tree初始化:图像i1和i2是由以某一像素点为中心并含有一定邻域构成的图像像素块,在图像i1中的任一图像块,都能以某种配对方式指定其在图像i2中相对应的图像块,将得到的每个图像块的27维向量分类为叶大小相同的kd-tree,并以树中最大维度及该维度的中值构建kd-tree;
[0007]
s2:领域传播:构建kd-tree之后,对图像i1中的像素位置p1处的所有图像块p
r
(p1)创建wht向量,并搜索所建kd-tree内的相应匹配子树向量,从图像块p
r
(p1)的wht向量中找到在kd-tree中所有l个匹配项设为是初始光流场f(p1)的候选项,计算l个匹配项的匹配误差e
d
并且仅保留在初始光流场中具有最低匹配误差的候选项,即:
[0008][0009]
根据初始光流场中最优匹配候选项,获取邻近图像块的信息,光流场值从位置(x,y-1)1与(x-1,y)1传播到位置p1=(x,y)1:
[0010][0011]
g1={f(p1),f((x,y-1)1),f((x-1,y)1)}+p1ꢀꢀꢀ
(3)
[0012]
其中,g1为第一个传播步骤考虑的光流场;在处理位置(x,y)1之前,采用公式(2)、(3)处理位置(x,y-1)1和(x-1,y)1;
[0013]
s3:随机搜索:获得初始光流场g1后,以交错的方式迭代地执行邻域传播和随机搜索,将图像i1和i2的构造了一个具有k级别的金字塔,在图像金字塔每个尺度下构建图像子块,保证每个尺度上的图像块数量相同,在每个尺度上进行随机搜索的传播,并从金字塔顶部到底部传播每个图像块的光流场;
[0014]
s4:粗尺度细化:在搜索半径r内迭代地执行的随机搜索与邻域传播,设n为迭代次数,经过n次迭代后,停止匹配过程,以获得每个图像块的精确光流场,将r限制在一小范围内,有效处理粗糙尺度的匹配,保留细微结构特征;
[0015]
s5:光流场估计:采用前向后向一致性检查,对异常值过滤,通过边缘保持插值方法插值,在middlebury,mpi-sinte数据库上进行仿真实验,完成光流场的估计。
[0016]
进一步地,所述步骤s1中给定两个图像i1和i2,其中i1,p
r
(p
i
)表示以像素位置p
i
=(x,y)
i
∈i
i
,i=1,2为中心,半径r的图像子块,图像子块是(2r+1)
×
(2r+1)像素尺寸,采用f(p1)表示图像i1每个像素p1∈i1的光流场,其中光流场f(p1)=m(p1)-p1,m(p1)表示像素的位置,确定像素p1在图像i2的相对应匹配位置p2∈i2,计算以像素位置p2为中心的i2中所有图像块p
r
(p2)的walsh-hadamard变换。
[0017]
进一步地,所述步骤s3将图像i1和i2构造成一个具有k级别的金字塔,其中下采样因子均为η,采用表示图像i
i
金字塔的第i级i∈{1,2},i∈{0,1,...,k-1},金字塔的底层i
10
和是原始图像,在图像金字塔每个尺度下构建图像子块,并且定义在第i级像素位置{p
il
}的图像子块{p
r
(p
i
)
l
}为i
i0
(i∈{1,2},i∈{0,1,...,k-1})中原始图像的下采样,即:
[0018]
{p
r
(p
i
)
l
}=η
·
{p
r
(p
i
)
l-1
},i≥1
ꢀꢀꢀ
(4)
[0019]
每个尺度上的图像块数量相同,在构建金字塔和每个尺度的图像块生成之后,在每个尺度上进行随机搜索的传播,并从金字塔顶部到底部传播每个图像块的光流场。
[0020]
进一步地,从金字塔顶部到底部传播每个图像块的光流场的步骤如下所示:
[0021]
s31:将在金字塔顶层中图像块的光流场{p
r
(p
i
)
k-1
}作为随机流;
[0022]
s32:迭代地执行在该尺度上的最大图像维度内的随机搜索与传播,将获得的光流场{f(p
r
(p
i
)
k-1
)}作下一级的图像块{p
r
(p
i
)
k-2
}的初始化,同样在每个尺度中计算的光流场总是用作在下一个尺度中图像块的初始化:
[0023][0024]
s33:在小搜索半径r内迭代地执行的随机搜索与传播,以获得每个图像块的精确光流场,r定义为每个金字塔等级的像素级搜索半径,将限制在一小范围内,能够有效处理粗糙尺度的匹配。
[0025]
与现有技术相比,本发明具有如下显著优点:
[0026]
(一)本发明针对传统光流场估计的不足,利用最近邻域场方法与从粗到精图像金字塔策略,提出了一种大位移光流场估计方法。经仿真实验,本方法得到验证,对于大位移
图像序列,可估计出较为准确的光流场,能较好体现图像边缘的细节信息,同时所计算的光流场色彩信息更加丰富,光流场效果更好。
[0027]
(二)本发明所提出大位移算法是利用nnf的全局搜索与多尺度粗到精框架相结合,在不同尺度上利用kd-tree传播搜索;通过walsh-hadamard变换(wht),对图像信息进行压缩,保留有用信息,降低数据集的维数,以达到避免维数灾难目的,来进一步提高计算的效率;由于粗到精框架的存在误差传播,较粗糙水平的误差,在不同的尺度上可以重叠,可以跨尺度传播,采用前向后向一致性检查算法,对异常值过滤,最后通过边缘保持插值方法对异常值过滤后的间隙插值。
附图说明
[0028]
图1为本发明实施例提供的大位移光流估计方法流程图;
[0029]
图2为本发明实施例提供的patchmatch算法的原理图;
[0030]
图3为本发明实施例提供的图像金字塔模型图;
[0031]
图4为本发明实施例提供的未边缘插值的光流场图;
[0032]
图5为本发明实施例提供的backyard序列图;
[0033]
图6为本发明实施例提供evergreen序列图;
[0034]
图7为本发明实施例提供的alley序列图;
[0035]
图8为本发明实施例提供的bamboo序列图;
[0036]
图9为本发明实施例提供的cave序列图。
具体实施方式
[0037]
下面结合本发明中的附图,对本发明实施例的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
[0038]
参照图1-9,本发明提供了一种大位移光流场估计方法,包括以下步骤:
[0039]
s1:kd-tree初始化:基于cielab色彩空间中所有三个颜色通道的前9个基,图像i1和i2是由以某一像素点为中心并含有一定邻域构成的图像像素块在图像i1中的任一图像块,都能以某种配对方式指定其在图像i2中相对应的图像块,将得到的每个图像块的27维向量分类为叶大小相同的kd-tree,并以树中最大维度及该维度的中值构建kd-tree;
[0040]
s2:领域传播:构建kd-tree之后,对图像i1中的像素位置p1处的所有图像块p
r
(p1)创建wht向量,并搜索所建kd-tree内的相应匹配子树向量,从图像块p
r
(p1)的wht向量中找到在kd-tree中所有l个匹配项被认为是初始光流场f(p1)的候选项,计算l个匹配项的匹配误差e
d
并且仅保留在初始光流场中具有最低匹配误差的候选项,即:
[0041][0042]
根据初始光流场中最优匹配候选项,获取邻近图像块的信息,初始光流场值的传播类似于patchmatch方法中的传播步骤,光流场值从位置(x,y-1)1与(x-1,y)1传播到位置p1=(x,y)1:
[0043][0044]
g1={f(p1),f((x,y-1)1),f((x-1,y)1)}+p1ꢀꢀꢀ
(3)
[0045]
其中,g1为第一个传播步骤考虑的光流场;在处理位置(x,y)1之前,采用公式(2)、(3)处理位置(x,y-1)1和(x-1,y)1;
[0046]
s3:随机搜索:由于光流在相邻像素之间变化,且传播只能传播当前的光流场值,因此可进行随机搜索步骤,获得初始光流场g1后,以交错的方式迭代地执行邻域传播和随机搜索,将图像i1和i2的构造了一个具有k级别的金字塔,在图像金字塔每个尺度下构建图像子块,保证每个尺度上的图像块数量相同,在每个尺度上进行随机搜索的传播,并从金字塔顶部到底部传播每个图像块的光流场;
[0047]
s4:粗尺度细化:在搜索半径r内迭代地执行的随机搜索与邻域传播,设n为迭代次数,经过n次迭代后,停止匹配过程,以获得每个图像块的精确光流场,将r限制在一小范围内,有效处理粗糙尺度的匹配,保留细微结构特征;
[0048]
s5:光流场估计:采用前向后向一致性检查,对异常值过滤,通过边缘保持插值方法插值,在middlebury,mpi-sinte数据库上进行仿真实验,完成光流场的估计。
[0049]
如图2所示,patchmatch算法是一种利用图像局部一致性的近似最近邻搜索算法,在算法中执行整像素块相对应匹配的过程,主要包括有最近邻传播步骤和迭代优化估计步骤。patchmatch算法的基本思想认为一个随机图像块总存在更优的图像块与之匹配,同时该匹配块能够通过邻域传播到整个图像中,将参考图像设为a和预匹配图像设为b,若两者进行匹配,则执行patchmatch算法的图像间整像素图像块的匹配过程可描述为以下步骤:
[0050]
(1)初始化:可以将图像a和b看作由以某一像素点为中心并含有一定邻域构成的图像像素块,在图像a中的任一个这样的图像块,都能以某种配对方式指定其在图像b中相对应的图像块。
[0051]
(2)邻域传播:每次的迭代中会经历邻域传播与随机搜索过程,图像匹配块在图像中进行邻域传播,若传播的匹配代价比当前图像块小的话,则更新当前图像块位置,并将图像块位置调整到邻域图像块的匹配位置;反之,则保留当前图像块的位置,并接着执行随机搜索过程。
[0052]
(3)迭代优化:从当前匹配位置开始,以指数步长在整个图像范围内搜索,根据图像块的匹配代价大小,不断选择代价较小的图像块来更正非最优匹配块,并将当前位置作为当前图像块的最佳匹配位置。
[0053]
如图3所示,为了计算大尺度位移的光流场,选择从粗到精多分辨率(coarse-to-fine estimation)的图像金字塔策略,实现大位移光流的计算。如果无限制地进行下采样,图像层的分辨率太低对光流计算没有多大帮助,因此通过寻找图像层中适宜的低分辨率和金字塔层数,以达到光流计算的要求。
[0054]
利用多分辨率图像金字塔策略处理光流大位移问题时,需根据输入图像创建图像金字塔。下面以输入图像i1为例,构建图像金字塔的基本步骤如下:
[0055]
(1)获得金字塔结构的层数k
[0056]
设定最低分辨率的阈值ξ和图像下采样因子η,可根据图像大小自动得到金字塔层数,以满足精度与实时性的需求。
[0057]
(2)建立金字塔结构
[0058]
以输入图像i1为例,首先把i1看作是金字塔最底层的图像层即为第一层,该层在整个金字塔中具有最高分辨率。然后从该最底层开始,以η为下采样因子进行下采样,便可获得图像金字塔的第二层。依此类推,接着对新得到的每一层进行下采样,分辨率随之逐层降低,直到达到最小分辨率阈值的要求,如此便能把每幅图像分成了k层。
[0059]
如上所述,根据预先设定恰当最低分辨率的阈值ζ和下采样因子η,便可构建成图像金字塔,其过程如图3所示。
[0060]
实施例1
[0061]
所述步骤s2构建kd-tree之后,创建图像i1中的像素位置p1处的所有图像块p
r
(p1)的wht向量,并搜索所建kd-tree内的相应匹配子树向量,从图像块p
r
(p1)的wht向量中找到在kd-tree中所有l个匹配项,并将l个匹配项设为初始光流场f(p1)的候选项。
[0062]
实施例2
[0063]
基本光流场匹配中包含许多由小图像块的模糊性引起的异常值。处理小图像块的模糊性的常用方法是增加块的尺寸大小,而这通常导致不太准确的匹配。为此引入了一个简单但功能强大的图像金字塔架构,从上到下传递来处理这个问题。所述步骤s3将图像i1和i2构造成一个具有k级别的金字塔,其中下采样因子均为η,采用表示图像i
i
金字塔的第i级i∈{1,2},i∈{0,1,...,k-1},金字塔的底层和是原始图像,在图像金字塔每个尺度下构建图像子块,并且定义在第i级像素位置{p
il
}的图像子块{p
r
(p
i
)
l
}为(i∈{1,2},i∈{0,1,...,k-1})中原始图像的下采样,即:
[0064]
{p
r
(p
i
)
l
}=η
·
{p
r
(p
i
)
l-1
},i≥1
ꢀꢀꢀ
(4)
[0065]
每个尺度上的图像块数量相同,在构建金字塔和每个尺度的图像块生成之后,在每个尺度上进行随机搜索的传播,并从金字塔顶部到底部传播每个图像块的光流场。在构建图像块时出现的重叠,能使随机搜索与传播在较低分辨率上更有效地执行,这是一个重要的特点,可以保证粗尺度匹配结果的稳健性。
[0066]
实施例3
[0067]
所述步骤s3从金字塔顶部到底部传播每个图像块的光流场的步骤如下所示:
[0068]
s31:将在金字塔顶层中图像块的光流场{p
r
(p
i
)
k-1
}作为随机流;
[0069]
s32:迭代地执行在该尺度上的最大图像维度内的随机搜索与传播,将获得的光流场{f(p
r
(p
i
)
k-1
)}作下一级的图像块{p
r
(p
i
)
k-2
}的初始化,同样在每个尺度中计算的光流场总是用作在下一个尺度中图像块的初始化:
[0070][0071]
s33:在小搜索半径r内迭代地执行的随机搜索与传播,以获得每个图像块的精确光流场,r定义为每个金字塔等级的像素级搜索半径,将限制在一小范围内,能够有效处理粗糙尺度的匹配。同时,在粗糙尺度上,小搜索半径范围内的领域传播与搜索对于最终匹配的平滑性非常有帮助。当从细尺度到粗尺度对图像进行子采样时,子采样在减小图像的尺寸和内部运动的同时,图像尺寸减小会导致图像某些细节信息的丢失,通过适当的r,对于在粗糙尺度中未能恢复图像细微结构有一定复原效果。
[0072]
实施例4
[0073]
所有实验均cpu 1.70ghz,内存6gb,操作系统平台为windows 7(64位),采用软件
matlab 2018a,vs2017编程实现。光流场计算方法测试研究时使用middlebury光流测试集与mpi-sinte数据集进行仿真实验。参数选择:图像子块半径r=3,迭代次数n=6,金字塔等级k=5,最低分辨率的阈值ζ=16,下采样因子η=0.5,小搜索半径r=1。
[0074]
参照图5和图6,从middlebury数据库选取高速相机图像backyard与序列evergreen序列,进行仿真实验,并与epicflow算法作比较。如图5、6所示,图5(a)中epicflow算法较好显示出三位小孩的整体轮廓,但是有些细节没有得到表现,同时展示出小球部分光流场,图6(a)中epicflow算法对树叶光流场估计效果不佳;图5(b)、6(b)中本节算法效果,从整体上看,色彩信息比图5(a)、6(a)更加丰富,在细节上,小球的光流场能完全表示,以及小孩的腿部细节与裙摆信息得到了比图5(a)更好的效果。在图6中,本发明提供的方法对当前的树叶光流场尽可能呈现,在细节与色彩两方面均比epicflow算法效果更佳。
[0075]
参照图7、图8和图9,选择mpi-sinte数据库alley、bamboo与cave图像序列仿真实验,并与epicflow算法、mdpflow2算法作比较。从横向看,与图像序列的光流真值相比,本发明提供的方法效果显著,能过较为准确估计出图像序列的光流场,但在某些图像边缘的光流场效果较差。在图7、8、9中,图7(c)中人物的手掌及腰后的小包信息丢失,图8(c)中人物腿部及人物身后竹子光流场估计失败,图9(c)中背景动物的手爪与人物持刀的刀身效果比光流真值差。从纵向看,本发明提供的方法均取得比epicflow算法、mdpflow2算法更佳的效果,如图7、8、9所示。比如alley序列中人物轮廓清晰,以及人物手臂边缘细节,bamboo序列中在人物的轮廓与腿部光流估计较好。
[0076]
为了客观评价本发明提供的方法的有效性,采用某些客观性能指标,从客观角度验证算法在各个方面的优缺点。主要参考指标选择:平均角度误差aae(average angular error)、平均端点误差aee(average end point error)。
[0077]
(1)角度误差(angularerror,ae)
[0078]
角度误差表示了计算得到的光流矢量场整体偏离标准光流矢量场的程度,该值越小越好,其计算公式如下:
[0079][0080]
若对整个图像每个像素点的角度误差进行加权平均处理,便得到了平均角度误差aae。
[0081]
(2)端点误差(endpointerror,ee)
[0082]
端点误差是用来度量计算得到的光流场的矢量长度与标准数据集给出的光流真值(groundtruth)长度之间的误差,该值越小越好,其计算公式如下:
[0083][0084]
若对整个图像每个像素点的端点误差进行加权平均处理,便得到了平均角度误差aee。
[0085]
表1 alley序列平均端点误差
[0086][0087]
表2 bamboo平均端点误差
[0088][0089]
表3 cave序列平均端点误差
[0090][0091]
表1、2、3为各自图像序列的平均端点误差与平均角度误差,在数值上有所下降,表明与光流真值更接近,计算的光流场更准确,从表中看出本发明提供的方法优于另外两种算法。
[0092]
以上公开的仅为本发明的几个具体实施例,但是,本发明实施例并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1