Print

发布时间: 2018-10-16
摘要点击次数:
全文下载次数:
DOI: 10.11834/jig.180140
2018 | Volume 23 | Number 10




    图像处理和编码    




  <<上一篇 




  下一篇>> 





有约束Patch-Match框架下的非刚体匹配算法
expand article info 黄滢1,2, 陈建胜1, 汪承义1
1. 中国科学院遥感与数字地球研究所, 北京 100101;
2. 中国科学院大学, 北京 100049

摘要

目的 非刚性物体进行匹配时,往往需要对图像中存在的非刚性形变目标进行快速精确的配准,进而实现对图像的后续处理和分析,实现快速而准确的非刚体匹配显得尤为重要。针对传统特征点匹配方法在非刚性物体匹配中准确性差的问题,本文提出了一种基于DAISY算子和有约束Patch-Match的非刚体密集匹配算法。方法 首先对参考图像和待匹配图像生成DAISY特征描述子,其次对两幅图像进行超像素分割,形成相互邻接但没有重叠的超像素块结构,并以其为单元,计算初始位置上对应每一个像素的DAISY特征算子聚合代价。然后,采用Patch-Match算法对整幅图像进行传播和变异,在变异过程中,通过图像预处理和分析得到的先验知识对位置标签的变异窗口进行局部空间约束,使得每个像素的位置标签在该空间范围内随机更新,计算新的聚合代价,保留代价较小的位置标签,重复迭代此过程,直到聚合代价不发生变化或者达到最大迭代次数为止。结果 实验选取了标准数据集、10幅分别由TFDS(the trucking fault dynamic image detection system)线阵列相机和框幅式相机采集的包含非刚体的图像进行匹配,均取得了较好的匹配效果,经验证,本文方法的匹配精度为86%,误匹配点的平均匹配误差为5个像素左右,是传统基于SIFT特征光流匹配方法误差的一半,并且本文采用的DAISY算子在特征提取速度上是Dense SIFT(dense scale invariant feature transform)特征提取算法的2~3倍,大大提升了图像匹配的效率。结论 本文提出了一种非刚体密集匹配算法,针对非刚体变化的不确定性采用密集特征点进行最优化搜索匹配。本文算法对包含小范围非刚性变化的图像匹配上具有较好的适应性,且匹配精度高,视觉效果好,鲁棒性强。

关键词

计算机视觉; 非刚体匹配; DAISY算子; 超像素分割; 代价聚合; 块匹配

Improved non-rigid matching algorithm under the framework of constrained patch-match
expand article info Huang Ying1,2, Chen Jiansheng1, Wang Chengyi1
1. Institute of Remote Sensing and Digital Earth, Chinese Academy of Sciences, Beijing 100101, China;
2. University of Chinese Academy of Sciences, Beijing 100049, China
Supported by: National Basic Research Program of China(20126YFB0502503)

Abstract

Objective Feature-based image matching is a fundamental research in the fields of computer vision and pattern recognition.Progress has been achieved in matching rigid objects.However, the fast and accurate registration of non-rigid deformation is often necessary in many practical matching problems to facilitate the subsequent processing and analysis.the existing non-rigid matching algorithms at home and abroad have difficulty in making perfect trade-offs between matching precision, speed, and robustness.Therefore, research on non-rigid matching algorithms that can achieve non-rigid deformation quickly and accurately and obtain nonlinear transformation parameters with an optimization algorithm should be conducted. Method Our method is based on the SIFT flow algorithm proposed by Ce Liu et al.for stereo matching.The SIFT flow algorithm uses fixed-scale SIFT descriptors densely for the entire image lattice, and thus, it cannot match the scenes containing non-rigid and spatially varying deformations well (e.g., the scale and rotation changes).Meanwhile, due to the complex construction process of SIFT feature operators, the algorithm has an unsatisfactory real-time performance.In this study, we introduce the DAISY descriptor to replace the SIFT operator.The descriptor not only improves the operator construction speed but also has a good rotation invariance because of its unique circular symmetric structure.This paper presents a non-rigid dense matching algorithm that is based on the DAISY feature descriptor and the constrained patch-match.First, the DAISY feature descriptor is generated for the reference and under-matched images.Second, the reference and under-matched images are segmented to form super-pixel block structures, which are adjacent but non-overlapping.These super-pixel block structures will be used as units for calculating the cost of the DAISY feature descriptor in each pixel at the initial position.Then, each pixel in the entire image undergoes propagation followed by a random search based on the patch-match algorithm.In the process of random search, the initialization window of the local label is localized, and the position tag of each pixel is updated in the space range based on the prior knowledge obtained by the pre-process and analysis.The new aggregation cost is calculated through the above processes, and the position tag with the smaller cost is retained.This process is repeated until the aggregate cost does not change or the maximum number of iterations is reached. Result A random search should be conducted for each pixel in the entire image to provide more matching possibilities due to the spatially varying deformations of the moving object in the traditional optical flow-based stereo matching method.In this paper, three types of images are selected:the standard test sets provided by the Middlebury visual website, the coupler buffer images taken with TFDS line array cameras, and the non-rigid images collected by frame cameras.These datasets contain non-rigid and a small range of deformations.In this experiment, we perform spatial constraints artificially on the initialization window in the random search of the patch-match algorithm, which avoids the mismatches caused by noise or a lack of texture, instead of randomly searching the entire image.All tests achieve improved match results.The experiments verify that the matching accuracy of our method is 86%, and the average matching error of mismatched points is approximately 5 pixels, which is half of that produced by the traditional SIFT flow matching method.The speed of the DAISY operator adopted in this paper is 1 to 2 times faster than that of the Dense SIFT in features extraction, which greatly improves the image matching efficiency. Conclusion Traditionally, the entire image should be searched for the best matching points to consider the matching accuracy of the points with large-scale changes, which can result in mismatches.To obtain non-rigid images with small-scale deformation, this paper proposes a non-rigid dense matching algorithm.To deal with the uncertainty of changes in non-rigid images, we use the optimization search algorithm based on dense features.Experiment results indicate that our method is adaptive to the image matching with non-rigid deformation and successfully achieves higher matching accuracy and better visual effects than other methods.

Key words

computer vision; non-rigid matching; DAISY descriptor; super pixel segmentation; cost aggregation correction; Patch-Match

0 引言

近年来,随着计算机视觉的不断发展,基于视觉理论的图像处理和分析越来越成为该领域的研究热点,而图像匹配,作为图像分析和处理的预处理步骤,在模式识别和计算机视觉领域中扮演着越来越重要的角色。例如,在3维重建、目标检测与识别、非刚体目标跟踪、图像拼接和融合等众多领域中图像匹配都是不可或缺的关键性步骤,且匹配的精度和速度将直接影响到图像后期处理的效率和效果。图像匹配的对象主要分为刚体和非刚体两类,在刚体匹配方面,目前已经有很多较为成熟的算法。然而,在实际应用中,相机拍摄的图像存在诸多非刚体目标,如OCR(optical character recognition)中的手写字符、跳动的心脏、运动的人体、零件软连接部分等,如果只是简单地将非刚性运动近似为刚性运动,进而按照刚体匹配的方法进行非刚体匹配,将会产生较大的匹配误差,阻碍后续的图像处理。因此,研究能实现非线性自由形变,并且以优化方式得到非线性变换参数或者位移场的非刚体匹配算法对实际应用具有重要价值和意义。

近30年,对于非刚体匹配的研究已取得相当丰富的成果,国内外涌现出许多非刚体匹配模型。但是现有的这些匹配算法,很难在匹配精度、速度和鲁棒性上做到足够的权衡,有的算法虽然实时性好,但是精度不高;有的虽然匹配精度高,但是算法计算量大;有的自动化程度低,需要进行人工干预;有的算法鲁棒性不高,适用范围有限。所有的这些问题都限制了非刚体匹配算法在实际问题中的应用,因此对非刚体匹配的进一步研究成为了计算机视觉和模式识别领域的研究热点和难点。早期对于非刚体匹配算法的研究大都是从刚体匹配发展而来,将部分刚体匹配的算法用于非刚体匹配中。Bookstein[1]提出了一种基于点的薄板样条插值(TPS)的方法,在求解非刚体变化方面取得了良好的结果,但该方法的前提是默认已知匹配点对的准确位置,这在实际应用中是不现实的。紧接着,Belongie等人[2]提出了一种可用于点匹配的形状上下文特征描述方法,并且将匹配得到的结果用来求解TPS模型,但由于形状上下文本身存在的局限性,导致求解的TPS参数精度不是很高。随着点特征算子的不断涌现,对非刚体匹配问题的研究转向基于特征点的图像匹配算法上,Chui等人[3]在已有匹配方法的启发下,提出了一种新的非刚体点匹配通用框架,并且开发了一种TPS-RPM(the thin-plate spline-rigid robust point matching)算法,解决了脑映射中所需的皮质解剖结构的非刚性匹配问题。余成文[4]提出一个基于混合t聚类的点匹配模型,针对非刚体点匹配进行联合优化,解决了非刚体形状控制点匹配中存在的对应性和有偏性问题。鲍文霞等人[5]通过形状上下文算法获得形状点集的初始匹配,在去除误匹配点后利用TPS变换参数使待匹配点集相互逼近,最终实现精度较高的非刚体匹配。近年来,图像匹配技术得到了快速发展,产生了几种最先进的光流技术[6]和立体匹配技术[7],对于包含非刚性几何变换和显著光度差异的图像匹配具有良好的效果。HaCohe等人[8]提出了一种计算两幅图像之间可靠密集对应关系的新方法,它将异常值的稠密局部匹配和鲁棒性结合起来,使得即使在非刚性变化图像中也能识别匹配对应关系。Liu等人[9]提出了SIFT流算法,用大型图像语料库的最近邻来匹配具有空间规律的突出局部图像结构,使得场景对齐具有语义意义的对应关系。但是SIFT流算法使用固定尺度的SIFT描述符,因此对于由非刚性和空间变化的变形组成的场景匹配无法达到较高的精度。目前专家学者对非刚体匹配问题的研究主要集中在以下几个方面:1)具备形变、尺度、光照不变特性的局部特征描述子;2)综合利用点特征的信息提高点集匹配的正确率;3)更快速的图像匹配算法。

针对非刚体匹配的以上发展趋势,遵循SIFT流使用密集计算描述符的方法,提出了一种基于DAISY算子和有约束Patch-Match的非刚体匹配算法。该算法引入了DAISY算子作为密集特征的描述子进行代价计算,与传统的SIFT算子相比,在保持稳定性的基础上,能对图像中的每个像素点进行快速计算形成描述符。同时算法采用Patch-Match传播和随机搜索时,对图像的空间搜索范围进行了局部约束,并且引入超像素分割,以超像素分割块为单元进行迭代和代价聚合计算,显著提高了图像匹配精度,加快了匹配速度。

1 理论介绍

1.1 DAISY密集特征提取

DAISY[10]描述子是2010年由Tola等人提出的面向稠密特征提取的可快速计算的局部图像特征描述子。其本质思想和SIFT是一样的,即通过分块统计梯度方向直方图,但在保持SIFT算子和GLOH(gradient location and orientation histogram)算子[11]稳健性的基础上,DAISY对分块策略上进行了改进,利用高斯卷积来进行梯度方向直方图的分块汇聚,从而实现快速稠密地特征描述子提取。

图 1所示,DAISY描述子是由外形类似“雏菊”的中央—周围对称结构组成,以某一个像素为中心,一般外围有3层半径不同的同心圆,表示不同的高斯尺度值,按照从中心向四周逐渐变大的规则进行排列。DAISY在描述特征的时候和SIFT一样,除了统计该点的尺度和方向特征外,还需要统计像素周围邻域的特征,所以在每一层同心圆各有均匀分布在8个方向的采样点,它们具有相同的高斯尺度值。DAISY描述符这种特有的结构对图像间存在的仿射变化和光照条件的差异都有较好的鲁棒性。同时,DAISY描述符采用圆形邻域进行特征描述,相比于SIFT算法和SURF(speeded up robust features)算法的矩形邻域具有更好的特征定位和旋转不变性。

图 1 DAISY描述符示意图
Fig. 1 DAISY descriptor diagram

对于一幅输入影像$\mathit{\boldsymbol{I}}$,首先计算$H$个方向的梯度图像${\mathit{\boldsymbol{G}}_i}$$i$=1, 2, …, $H$。然后对每一个方向图${\mathit{\boldsymbol{G}}_i}$采用不同尺度因子 $ \Sigma $的高斯核函数进行多次卷积操作,形成多尺度影像图$\mathit{\boldsymbol{G}}_i^{{\Sigma _k}}$$k$=1, 2, …, $Q$, 一般尺度因子满足${\Sigma _1} \le {\Sigma _2} \le \ldots \le {\Sigma _Q}$,可通过递归的方式求出各个$\mathit{\boldsymbol{G}}_i^{{\Sigma _k}}$。接着,对每一层中该点周围邻域进行$H$个不同方向的采样。本文中采样半径为$R$, 总共有$Q$层同心圆和$T$个角度方向,加上该点本身,一共需要采集$QT$+1个点,每个点都记录了$H$个方向上的梯度特征,因此,每一个像素都生成了$H \times \left({QT + 1} \right)$维的DAISY特征。整个DAISY描述子可以表示为

$ \begin{array}{l} \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\mathit{\boldsymbol{D}}({u_0}, {v_0}) = \\ \left[\begin{array}{l} {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_1}({u_0}, {v_0}), \\ {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_1}\left( {{\mathit{\boldsymbol{l}}_{{\theta _1}}}({u_0}, {v_0}, {r_1})} \right), \cdots {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_1}\left( {{\mathit{\boldsymbol{l}}_{{\theta _T}}}({u_0}, {v_0}, {r_1})} \right)\\ {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_2}\left( {{\mathit{\boldsymbol{l}}_{{\theta _1}}}({u_0}, {v_0}, {r_2})} \right), \cdots {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_2}\left( {{\mathit{\boldsymbol{l}}_{{\theta _T}}}({u_0}, {v_0}, {r_2})} \right)\\ \;\;\;\;\;\;\;\;\; \vdots \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\; \vdots \\ {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_Q}\left( {{\mathit{\boldsymbol{l}}_{{\theta _1}}}({u_0}, {v_0}, {r_Q})} \right), \cdots {{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_Q}\left( {{\mathit{\boldsymbol{l}}_{{\theta _T}}}({u_0}, {v_0}, {r_Q})} \right) \end{array} \right] \end{array} $ (1)

式中, $\mathit{\boldsymbol{D}}({u_0}, {v_0})$中的每一行表示一个同心圆上若干采样点,${{\mathit{\boldsymbol{\tilde h}}}_\Sigma }_{_1}({u_0}, {v_0})$表示中心点特征向量,由公式${\mathit{\boldsymbol{h}}_\Sigma }\left({u, v} \right) = [\mathit{\boldsymbol{G}}_1^\Sigma \left({u, v} \right), \ldots, \mathit{\boldsymbol{G}}_H^\Sigma \left({u, v} \right)]$得到点$\left({u, v} \right)$在尺度 $\Sigma $上的特征向量,然后对${\mathit{\boldsymbol{h}}_\Sigma }\left({u, v} \right)$进行归一化得到${{\mathit{\boldsymbol{\tilde h}}}_\Sigma }$。第2行至最后一行(共$Q$行),为周围区域的同心圆上$T$个方向上采样点特征向量。${\mathit{\boldsymbol{l}}_\theta }_{_j}({u_0}, {v_0}, {r_k})$表示的采样点为圆心在$({u_0}, {v_0})$处,半径为${r_k}$的圆上,方向为${\theta _j}$。则$\left({u, v} \right)$的计算公式为

$ \left\{ \begin{array}{l} u = {u_0} + {r_k}{\rm{cos}}{\theta _j}\\ v = {v_0}-{r_k}{\rm{sin}}{\theta _j} \end{array} \right. $ (2)

由于DAISY算子采用了圆形对称模板,大量的梯度影像$\mathit{\boldsymbol{G}}_i^{{\Sigma _k}}$可以重复利用。同时大量的卷积操作可以采用傅里叶变换进行加速,所以相比于SIFT算子,DAISY算子能有效地提高密集特征的提取效率。

1.2 有约束Patch-Match匹配算法

Patch-Match算法是Adobe公司的Barnes等人[11]在2009年提出的图像处理算法,已经成功在PhotoShop CS5软件里得到使用,主要用于图像修复,其目标是快速找到影像块之间的相关位置。

图 2所示为Patch-Match的算法流程,总共可以分为初始化和迭代两个步骤,迭代步骤又可分为传播和搜索改进(也称变异)两个过程。如图 2(a)所示,初始化的过程就是为$A$图中3个不同颜色的patch在$B$中随机找到各自对应的patch,并计算两个对应patch之间的相关程度以及位置偏移量。在图 2(b)图传播过程中Patch-Match巧妙地利用了图像的局部相关性,如图 2(d),如果patch C和patch X相匹配,那么C周围区域很可能和X周围区域相匹配,即patch D很可能与patch Y相匹配。在$A$中遍历每个点,奇数次迭代时查找其与左上邻域点的相关性,偶数次迭代时查找其与右下邻域点的相关性,并比较相关程度大小对偏移量进行更新。为了能够match到更长距离的映射,快速得到正确的偏移量,需要增加一个随机扰动搜索以提供更多的匹配可能,即搜索改进过程。具体做法是,对于任意点,首先给出一个与图片尺寸一致的搜索窗口,在窗口中随机选点与其进行相关性计算,并更新偏移量同时缩小窗口,重复以上过程,直到窗口大小小于某个阈值为止。一般Patch-Match的传播和搜索过程需要进行若干次重复迭代,本文采用固定迭代次数的方法。

图 2 Patch-Match算法示意图
Fig. 2 Flowchart of the Patch-Match((a)initialization; (b) propagation; (c)search; (d)local correlation)

本文研究的图像为包含非刚性物体的时变图像,且非刚体本身具有一定的结构稳定性,不会产生遍及整幅图像范围内的非线性变化。因此,在原始Patch-Match算法的变异过程中,对初始窗口的设置进行了约束改进,避免总是以整幅图像为初始窗口进行随机更新迭代,造成大量的误匹配和匹配效率的低下。本文对于初始窗口大小的选择,是根据某一类图像在预处理时整体分析得到,在该类图像的匹配实验过程中,人为固定初始窗口的尺寸大小。

2 方法与实验

本文算法流程如图 3所示,实验中输入为两张同一区域的时变图像,即分别为参考图像$\mathit{\boldsymbol{I}}$和待匹配图像$\mathit{\boldsymbol{I}}{\rm{'}}$,先后经过图像校正,DAISY特征提取,基于DAISY的代价计算和基于超像素分割的代价聚合,采用有约束Patch-Match算法进行传播搜索和改进,最后根据最小聚合代价值寻找到最佳匹配点,实验输出为参考影像每个像素对应在待匹配影像的位置标签。

图 3 算法流程图
Fig. 3 Workflow of this study

2.1 图像预处理

由于不同图像之间可能存在较大的位移,如图 4(a)中所示,为参考图像和待匹配图像的叠加图,两者之间存在较大的水平位移,所以在图像进行匹配之前,需要对实验图像进行粗校正,以消除参考图像和待匹配图像在灰度、尺度、角度上的差异。由于粗校正阶段仅仅是完成图像的角度与尺寸方面的校正,其校正精度要求不高。本文采用多项式1阶校正模型,如图 4所示,随机选取一幅待校正图像和与其对应的参考图像,选取6个校正控制点,对待校正影像进行校正。校正结果如图 5所示。

图 4 图像粗校正
Fig. 4 Image correction ((a)overlay map; (b) the correction model)
图 5 待匹配图像的粗校正结果
Fig. 5 The correction result of original image

2.2 代价计算和代价聚合

2.2.1 基于DAISY特征的代价计算

图像经过粗校正后,按照DAISY特征描述子的生成方法,对每一个像素生成$H \times \left({QT + 1} \right)$维的特征向量。假设参考影像上某一点$P$和待匹配影像上一点$P′$匹配,但$P′$相对于$P$发生了平移、旋转和尺度的变化,用一个4维向量标签$\mathit{\boldsymbol{l}}\left({u, v, s, \theta } \right)$来表示$P$点和$P′$的位置变化,$\left({u, v} \right)$表示坐标位置的平移变化,$s$表示尺度的变化,$θ$表示旋转量,即

$ \left\{ \begin{array}{l} p{\prime _x} = {p_x} + u\\ {\rm{ }}p{\prime _y} = {p_y} + v \end{array} \right. $ (3)

则参考影像上$P$点匹配到待匹配图像上$P′$点的代价为

$ {C_i}\left( p \right) = {\rm{min}}({\left\| {\mathit{\boldsymbol{D}}_b^R\left( p \right)-\mathit{\boldsymbol{D}}\prime _{s, \theta }^R\left( p \right)} \right\|_1}, \tau ) $ (4)

式中,$\mathit{\boldsymbol{D}}_b^R\left(p \right)$为参考影像上点$P$的原始DAISY特征,如图 6(a)所示,$\mathit{\boldsymbol{D}}{\rm{'}}_{s, \theta }^R\left(p \right)$为匹配影像上经过旋转、缩放后的$P′$点的DAISY特征,如图 6(b)所示。

图 6 基于DAISY特征的匹配
Fig. 6 DAISY-based matching ((a)original daisy features; (b) the daisy features after panning, rotating, scaling)

2.2.2 基于超像素块的代价聚合

由于单个像素点的匹配代价容易受到噪声影响,从而导致误匹配。例如,如果参考影像上某个像素点在待匹配影像上受到了椒盐噪声的影响,成像为一个白点,那么这个点的正确匹配的代价测度必然很大,按照代价测度小的策略进行选择,必然匹配到错误点。为了避免噪声引起的误匹配,需要通过像素周围某一邻域内的代价分布情况,进行统计分析,从而得到较为稳健的代价。因此,本文在应用单点代价作为测度的基础上,进行了基于超像素块的代价聚合,并以此为测度进行匹配。

超像素是2003年由Ren[12]提出和发展起来的图像分割技术,它利用影像的冗余性,将邻域中具有相似纹理、颜色、亮度等特征的像素组成一组,形成大小接近且有一定视觉意义的不规则像素块,用少量的超像素代替大量的像素来表达图片特征,从而降低了后续图像处理的复杂度。

常用的超像素分割方法有基于熵的和基于聚类算法的。由于本文的实验图像中部件种类多而杂乱,部件尺寸大小不一,且边缘均为不规则线条,对分割精度以及分割块的轮廓保持方面具有较高的要求。因此,本文采用基于聚类的SLIC[13](simple linear iterative clustering),即简单的线性迭代聚类。相比其他的超像素分割方法,SLIC在运行速度、生成超像素的紧凑度、轮廓保持方面都具有很强的优势。

在聚合方法的选取上,本文选用指导滤波器Guided Filtering[14] (GF)进行代价聚合,通过开窗处理对窗内像素按权值进行代价聚合。具体聚合公式为

$ w\left( {p, q} \right) = \frac{1}{{\left| {{\omega ^2}} \right|}}\sum\limits_{q \in N\left( p \right)} {\left( {1 + \frac{{\left( {I\left( p \right)-\mu } \right)\left( {I\left( q \right)-\mu } \right)}}{{\sigma _k^2 + \varepsilon }}} \right)} $ (5)

式中,$w\left({p, q} \right)$表示窗口中的点$q$对窗口中心点$p$的贡献权值,$\left| \omega \right|$表示窗口中像素的数量, $I\left(p \right), I\left(q \right)$分别表示$p$点和$q$点的灰度值,$μ$表示窗口内的灰度均值,$\sigma _k^2$表示窗口内灰度的方差。

图 7所示,对每个超像素块$S\left(k \right)$ (图中黄色区域)的外接矩形内的所有像素(图中绿色区域)进行GF代价聚合,即以绿色块为中心向外延伸$r$个像素开窗对区域内标签的代价进行聚合。当完成聚合后,只留下黄色区域内的聚合结果,并记录黄色区域内聚合后代价的最小值和相对应的位置标签。为了避免标签的重复计算带来的运算量,每次标签可以先记录在该超像素块的访问空间里,如果后续有相同或区别不大的标签,则无需进行代价聚合操作。

图 7 基于超像素块的代价聚合
Fig. 7 Cost aggregation based on super-pixels

2.3 基于DAISY算子和有约束Patch-Match的非刚体密集匹配算法

本文基于DAISY算子和有约束Patch-Match的非刚体匹配算法具体流程如下:

1) 对待匹配图像$\mathit{\boldsymbol{I}}{\rm{'}}$进行粗校正,得到校正后图像。按照DAISY描述子的生成方法对参考图像每一点生成相应的DAISY算子,对待匹配图像生成经旋转、缩放等变化后的DAISY特征。假设参考图像上某一点$P$匹配到待匹配图像上一点$P′$的位置标签为$\mathit{\boldsymbol{l}}\left({u, v, s, \theta } \right)$,按照式(4),基于DAISY特征向量计算两点间的代价。

2) 对参考图像和待匹配图像采用超像素分割,分割成相互邻接但没有重叠的超像素块结构。假设一共分割成$K$个超像素块,每个超像素块用$S\left(k \right)$进行表示,则$\mathit{\boldsymbol{I}} = \left\{ {S\left(k \right), k = 1, 2, \ldots, K} \right\}$。为每个超像素块$S\left(k \right)$设置初始标签$\mathit{\boldsymbol{l}} = \left({0, 0, 1, 0} \right)$,并认为该标签为最佳标签,即认为,参考图像和待匹配图像中对应的点为匹配点。

3) 采用Patch-Match算法遍历$K$个超像素块,对每一个超像素块${S\left(i \right)}$,选出与其邻接的$a$个超像素块和$b$个灰度值最为相似但是空间位置上不相邻的超像素块,从$a+b$个超像素块中随机选出${L^N}$个超像素块,取出这${L^N}$个超像素块的标签,加入标签集,并与已访问的标签集进行对比,删除重复的标签。分别计算超像素块中每个像元在${L^N}$个标签下的聚合代价,取出${L^N}$个标签中聚合代价最小的标签,并对原始标签进行替换更新。

4) 以当前最佳标签$\mathit{\boldsymbol{l}}\left({u, v, s, \theta } \right)$为中心产生一个窗口,随机选择窗口中的一个标签,计算该标签下的聚合代价,并与当前标签的聚合代价进行比较,如果更小则更新标签,否则标签不变。然后缩小一半窗口,再随机选取一个标签重复上述的计算与标签的更新,直到窗口不能缩小为止。实验中窗口的大小根据图像的先验信息来进行约束,避免标签在很大范围内随机赋值,导致匹配的异常错误。

5) 重复步骤3)— 4),直至达到最大迭代次数或者匹配像素的位置标签变化个数小于一定阈值为止。

算法结束后,得到参考图像上每个像素对应在待匹配图像上的位置标签${\mathit{\boldsymbol{l}}_p} = ({u_p}, {v_p}, {s_p}, {\theta _p})$。即参考图像上一像素点$P$对应待匹配图像上$P′$坐标为$\left({x + up, y + vp} \right)$

3 实验结果及分析

3.1 实验数据分析

本文实验部分采用的图像主要有以下3类:

1) TFDS缓冲钩图像。这部分图像主要用来进行精度评价实验。该图像是由改进后的第三代铁路货车运行故障动态图像检测系统(TFDS)[15]采集得到,是由位于底部的3个线阵推扫式相机进行拍摄的两节车厢之间的连接部分。如图 8所示,分别是TFDS-3安装在底部的3个线阵相机拍摄的同一趟货运列车经过宝鸡陇海上行站和新丰北环站的缓冲钩部分图像。通过对比分析两幅图以及他们的叠加图,可以发现该部分图像具有以下特点:(1)两幅图像在灰度和几何上存在差异;(2)图像中存在刚体部分的非刚体连接,存在非刚性变化,导致整体一致性较差。车体缓冲钩是连接货车两节车厢的部分,由刚体部分车钩、托架等和非刚体部分连接软管组成,因为软连接部分是非刚体,变化不规则,无法通过统一的校正模型或者匹配方法来得到高精度结果;(3)图像中部件的位移及形变大小是在一定范围内的而不是无限制的。

图 8 TFDS缓冲钩图像
Fig. 8 TFDS buffer hook image ((a) reference image; (b) origin image)

2) Middlebury视觉网站提供的计算机视觉领域研究立体匹配最重要的标准测试集。数据集下载网站(http://vision.middlebury.edu/)给出的影像都是经过核线校正的近景图像。图像类型十分丰富,包含弱纹理、重复纹理、阴影、光照差异、非刚性物体等难以处理的情况下的图像。

本文主要将这一数据用于算法对比实验分析中,采用其中包含非刚性变化的部分图像进行实验, 如图 9所示。

图 9 标准数据集
Fig. 9 Standard data set ((a) reference image; (b) origin image)

3) 人工不规则扭曲图像和框幅式相机拍摄的人体姿态变化图像。人工不规则扭曲图像很好的模拟了非刚性变形的不确定性,且存在大面积未变化区域,匹配结果能够很直观地表现出本文算法的效果。人体姿态变化图采用普通相机拍摄,且人体姿态的变动是任意不规则的,具有一定的普遍性。为了验证本文的算法具有一定的普适性和鲁棒性,文中将这部分图像用于普适性分析。

3.2 算法匹配精度分析

3.2.1 实验结果评价

本文采用的实验图像是大小为1 024×1 400像素的图像,实验经验表明,当图像尺寸在500×600像素时,效率较高,所以,实验中采用2级金字塔的方式进行,即共有两个同心圆,$Q$=2。因此,顶层金字塔每2×2个像素重采样成一个像素,底层为原始分辨率图像。实验中取角度方向$T$=8,梯度方向$H$=8,因此每个像素生成8×(2×8+1)=136维的DAISY特征描述子。

在对图像进行超像素分割时,通过对图像中物体区域大小和边缘规整度的分析,将超像素分割的块数选为1 000块,规整度参数设为20,分割结果如图 10(a)图 (b)所示。

图 10 超像素分割结果
Fig. 10 Superpixel segmentation results ((a) superpixel segmentation of Fig. 8(a); (b) superpixel segmentation of Fig. 8(b))

传统的Patch-Match算法在传播过程寻找最佳匹配点后,通过随机搜索改进位置标签从而降低误匹配率。但是实验中的图像有较多灰度或者纹理较为一致的区域,如果算法在整个图像范围内搜索变异,不仅大大降低算法的匹配速度,而且很容易导致异常匹配点,降低整幅图像的匹配精度。

本文在充分分析实验数据的基础上,认为图像中的非刚性物体的形变虽然具有不确定性和不规则性,但是形变的范围不是无限制的,且物体间具有一定的一致性。基于如上分析,对TFDS-3采集的车钩缓冲部图片分别进行了有约束和无约束匹配,实验结果如图 11所示。图 11(b)的匹配结果明显要次于图 11(a)图 11 (b)中在方框圈出的滑动栓部分出现了明显的扭曲和异常匹配,这是因为在大范围内随机更新标签,由于纹理的均一或缺乏很容易误匹配到比正确匹配点相似度更高的错误点。

图 11 匹配效果图
Fig. 11 Matching results ((a) constrained matching; (b) unconstrained matching)

本文的实验精度评价采用如下方式[16]:首先在参考图像上随机生成100个点,然后根据本文匹配算法得到的位置标签关系找到对应的100个同名像素点,经人工检查统计匹配的正确率,若匹配错误则统计误差像素,计算误匹配点的平均误差。

图 12所示,在图 12(a)参考图像中随机选取100个点,并用不同颜色的标记表示,图 12(b)中对应颜色的标记为通过本文算法找到的待匹配图像上与参考图像匹配的点。分别对有约束和无约束匹配算法结果图通过人工进行匹配点检查进行精度评价,结果如表 1所示,无约束Patch-Match匹配算法在精度和匹配误差上都远远差于本文的有约束Patch-Match匹配算法。

图 12 匹配点对图
Fig. 12 Matching points images ((a) the reference image matching point distribution; (b) the origin image matching point distribution)

表 1 匹配结果对比表
Table 1 Comparison of the matching results of different methods

下载CSV
匹配方法 正确匹配点数 错误点平均误差/像素
有约束 86 5.3
无约束 69 11.7

通过观察图 12(a)(b)中的错误点分布区域发现,错匹配和误匹配的点主要集中在两个区域:1)图像的边缘区域,这些区域可能由于粗校正导致没有像素,也可能参考图像的边界像素在待匹配图像中开窗寻找同名点时未找到同名点; 2)在纹理一致或者纹理缺失的区域,该区域纹理较为一致导致灰度等特征相似,在匹配过程相似性度量上出现误差。

通过观察错误点分布和对应标签${\mathit{\boldsymbol{l}}_p} = ({u_p}, {v_p}, {s_p}, {\theta _p})$之间的关系,对参考图像和待匹配图像对应像素之间的距离$d = \sqrt {u_p^2 + v_p^2} $的分布进行了统计,得到图 13的位移距离图。从图 13中可以看出,大部分点的匹配位移在50个像素以内,匹配位移超过50个像素的点仅占整幅图像的2.75%,且这些点往往是错误匹配点所在的区域。

图 13 位移距离图
Fig. 13 Displacement image

利用以上匹配评价标准,对另外7幅线阵推扫式相机采集的图像进行了匹配,并计算其匹配精度和匹配误差。结果如表 2所示。

表 2 匹配精度与误差
Table 2 Matching precision and error

下载CSV
图像序号 正确匹配点数 匹配误差/像素
1 87 4.6
2 86 5.2
3 83 6.7
4 86 5.1
5 83 7.4
6 85 6.2
7 83 8.9

表 2中可以看出,本文算法对于TFDS拍摄的缓冲钩连接部分图像的匹配能够达到较高的匹配精度,且算法具有一定的稳定性。

3.2.2 算法对比分析

除了对算法自身进行有无约束对比外,还将目前在非刚性变化图像匹配中效果较好的SIFT特征光流算法与本文提出的基于DAISY算子和有约束Patch-Match非刚体匹配算法进行实验对比。

SIFT特征光流算法中采用SIFT算子提取图像局部特征,在匹配时采用最近邻距离与次近邻距离的比率作为相似性度量标准,进而完成图像的匹配。虽然SIFT算子对平移、旋转等具有良好的不变性,且对视觉变化,仿射变换也保持一定程度的稳定性,但是SIFT特征光流算法中使用固定尺度的SIFT描述符,因此对于由非刚性和空间变化的变形组成的场景匹配无法达到非常高的精度[17]

图 14为通过两种方法得到的匹配结果图,可以看出在图 14中女孩儿脸部位置、背景小男孩腿部动作部分以及抛起的球部分,本文算法都具有更好的视觉匹配效果。在两幅图上随机选择10个点,并通过两种匹配方法找到待匹配图中对应的10个点,计算两两对应点的匹配误差,得到表 3

图 14 不同方法的匹配结果
Fig. 14 Result of different matching methods ((a) traditional method; (b) ours)

表 3 匹配结果对比表
Table 3 Comparison of the matching results of different methods

下载CSV
序号 检查点位置 本文方法误差/像素 传统方法误差/像素
1 (583.02, 832.54) 3.06 6.32
2 (850.9, 681.62) 3.16 12.37
3 (519.28, 153.9) 3.60 10.29
9 (1 048.14, 302.6) 7.81 10.20
10 (367.9, 241.95) 4.47 12.37

对比表 3中的实验结果可得,本文算法优于SIFT特征光流算法的匹配方法。尤其是在非刚体部分的匹配精度和匹配误差上,基于DAISY算子和有约束Patch-Match的非刚体匹配算法对于图像中存在的非刚性部分能够实现更好的匹配。表 3中点2取自图像中的非刚性部分(腿),可以很明显地看出本文算法相比于传统的方法具有更高的匹配精度。

本文算法不同于SIFT特征光流算法,选择DAISY算子进行特征提取,除了具有SIFT特征提取的平移、旋转、尺度缩放和仿射不变性外,由于DAISY描述子本身的结构特点,在特征提取的效率上有了明显的提高。在相似性度量上,本文算法不局限于单一像素空间邻域上的相似,还引入超像素分割块进行代价聚合,将区域的一致性考虑在内,明显提高了匹配的准确性。同时,本文算法充分利用了实验图像本身的先验知识,在利用Patch-Match对匹配点进行搜索时,进行了局部约束,在很大程度上降低了实验的误匹配率,提高了图像的匹配精度和匹配效率。

3.3 算法时效性分析

为了验证DAISY算子在密集特征提取效率上的优越性,本文将其与密集型SIFT[18]特征(Dense SIFT)提取算法进行对比。Dense SIFT是Lazebnik在2006年提出的一种基于固定网格和步长的SIFT特征[18],是对SIFT特征提取方法的一种改进。它利用密集型网格代替传统SIFT特征中提取的关键点,采用固定网格和步长的滑动窗口来提取密集特征,避免了计算高斯差分和局部极值的判断等过程,降低了计算量。但是由于提取的特征点数量庞大,有大量冗余信息,造成特征计算过程中对内存的需求较高,且Dense SIFT特征不具有旋转和尺度不变性。由于本文研究的图像包含非线性变化,因此需要对每一个像素点提取特征进行匹配,所以在实验对比过程中将Dense SIFT的网格参数值设为1,即对每一个像素点提取128维的SIFT特征。

实验选取了8幅不同尺寸的图像,分别进行SIFT和DAISY密集特征提取,并且记录两种算子的提取时间,如表 4所示。

表 4 SIFT和DAISY算子提取速度对比
Table 4 Comparison of the speeds of SIFT and DAISY

下载CSV
序号 图像大小/像素 SIFT/s DAISY/s
1 317×290 0.87 0.23
2 512×512 1.67 1.03
3 640×480 1.96 0.80
4 1 082×1 321 5.87 1.94
5 1 400×1 024 5.26 2.02
6 3 268×2 448 28.61 10.52
7 5 898×5 987 196.35 69.74
8 7 138×7 000 309.40 118.13

表 4中可以看出,对于同一幅图像的密集特征点提取,DAISY算子的速度大约比Dense SIFT特征提取算法快1~2倍,且图像越大,DAISY算子的优越性就越明显。这是因为DAISY算子采用了圆形对称模板,在特征提取过程中大量的梯度影像可以重复利用,大大减少了算法的计算量。

3.4 算法普适性分析

为了对本文算法进行普适性分析,额外选取了人为进行扭曲的和普通框幅式相机拍摄的包含不同非刚体目标的图像作为实验图像,分别为图像处理领域的标准图Lena、和人体姿态变化图像,并对其中非刚体部分进行了人工扭曲和自然扭曲,用本文的算法与原图进行匹配,结果如图 15图 16所示。

图 15 匹配效果图 1
Fig. 15 Matching result one ((a) reference image; (b) origin image; (c) displacement image; (d)matching result)
图 16 匹配效果图 2
Fig. 16 Matching result two((a) reference image; (b) origin image; (c) displacement image; (d)matching result)

从以上匹配结果可以看出对于一般包含非刚体的图像,本文算法对于人工进行扭曲的图像具有更好的匹配效果。

图 15(c)为参考图像到待匹配图像的位移距离图,从图中可以看出,位移距离较大的区域主要集中在图像的扭曲部分,在未扭曲部分能够完全与参考图像一一对应,没有发生位移。

对于自然拍摄的人体姿态变化图像,在没有校正的情况下直接基于本文算法进行匹配,达到了较好的整体视觉匹配效果。从图 16(c)(d)中可以明显得出,在非刚体扭动的区域,位移距离明显大于其他区域,且在纹理较丰富的非刚体部分也能达到较好的匹配效果。但是本文算法对于手指等灵活多变且纹理比较单一的非刚体部分的匹配具有一定的局限性。

4 结论

图像匹配是图像处理领域的一大热点研究课题,尤其是在图像包含非刚体部分的情况下,进行快速准确的匹配是一项更具挑战性的研究。本文提出一种基于DAISY算子和有约束Patch-Match的非刚体匹配算法,利用稠密特征提取算子DAISY,对图像进行快速特征提取,同时引入超像素分割技术,将参考影像和待匹配图像进行相同的分割,并以分割结果为基础,引进聚合代价作为相似性度量的标准,利用有约束Patch-Match搜索遍历整幅图像,寻找最佳匹配点的位置标签,最后根据每个像素的位置标签完成图像的最终匹配。实验结果表明,本文算法适用于对包含非刚体的图像进行快速精确的匹配,同时具有很强的鲁棒性。大量实验结果表明,本文算法对于绝大部分区域能保证误差在3个像素以内,对于无像素区域和纹理贫乏区域匹配精度有所下降,匹配误差在9个像素左右。因此,如何提高弱纹理区域的匹配精度,将是今后研究的方向。

参考文献

  • [1] Bookstein F L. Principal warps:thin-plate splines and the decomposition of deformations[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1989, 11(6): 567–585. [DOI:10.1109/34.24792]
  • [2] Belongie S, Malik J, Puzicha J. Shape matching and object recognition using shape contexts[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(4): 509–522. [DOI:10.1109/34.993558]
  • [3] Chui H L, Rangarajan A. A new point matching algorithm for non-rigid registration[J]. Computer Vision and Image Understanding, 2003, 89(2-3): 114–141. [DOI:10.1016/S1077-3142(03)00009-2]
  • [4] Yu C W, Guo L. Improving non-rigid point matching with a new model[J]. Journal of Northwestern Polytechnical University, 2006, 24(5): 562–566. [余成文, 郭雷. 基于混合t聚类的鲁棒非刚体点匹配[J]. 西北工业大学学报, 2006, 24(5): 562–566. ] [DOI:10.3969/j.issn.1000-2758.2006.05.007]
  • [5] Bao W X, Liang D, Cheng Z Y, et al. Graph theory based non-rigid shape matching algorithm[J]. Chinese Journal of Scientific Instrument, 2009, 30(10): 2027–2032. [鲍文霞, 梁栋, 程志友, 等. 一种基于图理论的非刚体形状匹配算法[J]. 仪器仪表学报, 2009, 30(10): 2027–2032. ] [DOI:10.3321/j.issn:0254-3087.2009.10.004]
  • [6] Xu L, Jia J Y, Matsushita Y. Motion detail preserving optical flow estimation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011, 34(9): 1744–1757. [DOI:10.1109/TPAMI.2011.236]
  • [7] Scharstein D, Szeliski R. A taxonomy and evaluation of dense two-frame stereo correspondence algorithms[J]. International Journal of Computer Vision, 2002, 47(1-3): 7–42. [DOI:10.1023/A:1014573219977]
  • [8] HaCohen Y, Shechtman E, Goldman D B, et al. Non-rigid dense correspondence with applications for image enhancement[J]. ACM Transactions on Graphics, 2011, 30(4): #70. [DOI:10.1145/2010324.1964965]
  • [9] Liu C, Yuen J, Torralba A. SIFT flow:dense correspondence across scenes and its applications[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2011, 33(5): 978–994. [DOI:10.1109/TPAMI.2010.147]
  • [10] Tola E, Lepetit V, Fua P. DAISY:an efficient dense descriptor applied to wide-baseline stereo[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2010, 32(5): 815–830. [DOI:10.1109/TPAMI.2009.77]
  • [11] Barnes C, Shechtman E, Finkelstein A, et al. PatchMatch:a randomized correspondence algorithm for structural image editing[J]. ACM Transactions on Graphics, 2009, 28(3): #24. [DOI:10.1145/1531326.1531330]
  • [12] Ren X, Malik J.Learning a classification model for segmentation[C]//Proceedings of the 9th IEEE International Conference on Computer Vision.Nice, France: IEEE, 2003, 10-17.[DOI: 10.1109/ICCV.2003.1238308]
  • [13] Achanta R, Shaji A, Smith K, et al. SLIC superpixels compared to state-of-the-art superpixel methods[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2012, 34(11): 2274–2282. [DOI:10.1109/TPAMI.2012.120]
  • [14] Hosni A, Rhemann C, Bleyer M, et al. Fast cost-volume filtering for visual correspondence and beyond[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35(2): 504–511. [DOI:10.1109/TPAMI.2012.156]
  • [15] Zhao Y, Chen J S. Region correction for train coupler buffer images based on dynamic time warping[J]. Journal of Image and Graphics, 2017, 22(1): 58–65. [赵耀, 陈建胜. 动态时间规整下的列车车钩缓冲图像区域校正[J]. 中国图象图形学报, 2017, 22(1): 58–65. ] [DOI:10.11834/jig.20170107]
  • [16] Li L.Dense matching for 3D reconstruction with multi-view remote sensing image[D].Beijing: Institute of Remote Sensing and Digital Earth Chinese Academy of Sciences, 2017. [李禄.密集匹配技术在多视遥感影像三维重构中的研究[D].北京: 中国科学院大学(中国科学院遥感与数字地球研究所), 2017.] http://cdmd.cnki.com.cn/Article/CDMD-80070-1017721014.htm
  • [17] Yang H S, Lin W Y, Lu J B.DAISY filter flow: a generalized discrete approach to dense correspondences[C]//Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition.Columbus, OH, USA: IEEE, 2014: 3406-3413.[DOI: 10.1109/CVPR.2014.435]
  • [18] Lazebnik S, Schmid C, Ponce J.Beyond bags of features: spatial pyramid matching for recognizing natural scene categories[C]//Proceedings of 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition.New York, NY, USA: IEEE, 2006: 2169-2178.[DOI: 10.1109/CVPR.2006.68]