形状匹配是指在形状描述的基础上,通过对两个形状的相似度或非相似度进行计算来判断其相似程度的过程。形状匹配的结果通常以一个数值表示,这个数值被称为形状相似度,它反映了两个形状的相似程度。形状相似度越大,说明两个形状越相似。与此相对,形状距离则是指两个形状的差异程度,形状距离越小,表明两个形状越相似。
形状匹配原理
形状匹配是在形状描述的基础上,依据一定的判定准则,计算两个形状的相似度或者非相似度。两个形状之间的匹配结果用一个数值表示,这一数值称为形状相似度。形状相似度越大,表示两个形状越相似。非相似度也称为形状距离。与相似度相反,形状距离越小,两个形状越相似。采用SC形状描述子对获得的区域形状进行描述,依据Z统计量作为形状距离的度量准则。若两个形状上的任一特征点P和q,对应的形状上下文分别为H和H,则两者之间的匹配代价为:
C(p,q)=1/2Σ[h(k)-h'(k)]/[h(k)+h'(k)]
式中:K为形状上下文描述子的总扇区数,K=S×T;h(k)与h'(k)为点p和点q的归一化形状上下文。对于由点集表示的图像区域轮廓P和目标形状模板Q,P{p,i=1,2,...,N},Q{q,j=1,2,...,N},则形状P和形状Q之间的匹配代价矩阵C(P,Q)为:
形状之间的相似度可以转化为求形状P和形状Q之间的最小匹配代价问题。同时考虑轮廓点的顺序信息,使用动态规划解决形状匹配。给定两个形状点集P={p,p,...,p}和Q={q,q,...,q}。按照上式计算P和Q之间的匹配代价矩阵。形状匹配的目标就是寻找一个匹配,令匹配代价之和最小,即:
M(P,Q)=∑C(p,g(p))
M*=argminM(P,Q)
式中:g(p)表示在形状点集P和形状点集Q的匹配g中与点p相对应的Q中的特征点;C(p,g(p)),是它们之间的匹配代价。计算形状距离的具体方法就是,在考虑采样点次序的前提下,寻找两个点集合P和Q中元素之间的对应关系。下图展示了一个简单的匹配例子,其中,n=8,m=7。在定义了匹配点对p和q之间的匹配代价C(p,q),以及非匹配点对的匹配代价ε的基础上,形状距离可通过图中最短路径问题解决。假设G=(V,E)是一个有向图,节点集合和边集合分别为V和E。V中的节点对应(n+1)×(m+1)网格中的点。边E有两种类型:权重为E的边,如连接点(i,j)和点(i+1,j)的水平边,以及连接点(i,j)和点(i,j+1)的垂直边;权重为C(p,q)的对角边,连接点(i,j)和点(i+1,j+1)。采用动态规划解决匹配问题如图所示,行列中的各元素分别对应于两个形状轮廓线上的采样点,有向图G中从点(0,0)到点(n,m)的路径就对应形状P和Q之间的匹配:路径中从节点(i,j)出去的对角边,代表点p与点q相对应。匹配路径从第一行的某一个矩阵项开始,沿对角线方向到最后一行的某一矩阵项结束。经过多尺度分割获得一系列图像块区域,采用形状描述方法对区域形状进行描述,得到各个区域的SC描述向量;同时,利用形状匹配衡量分割区域与目标模型之间的相似度,选取相似度高的区域作为目标的种子区域。
形状匹配要素
形状是描述图像内容的一个重要特征,因此,可以利用形状进行匹配。但采用形状进行匹配应综合考虑以下三个问题。(1)形状常与目标特征相联系,与颜色特征相比,形状特征被认为是更高层次的图像特征。要获取目标的有关形状参数,一般应先对图像进行分割,所以形状特征会受图像分割结果精度的影响。(2)目标形状的描述是一个非常抽象和复杂的问题,目前还没有与人的感觉一致且被大多数人所接受的关于图像形状描述的确切数学定义。(3)从不同视角和方法获取的图像中目标形状可能会有很大差别,为准确进行形状匹配,应保证平移、尺度、旋转变换的不变性等。目标轮廓在一定程度上可以表示目标物体的形状。轮廓是由物体的一系列边界点所形成的。因此根据图像分析的相关理论可知,在较大尺度下一般能较可靠地消除对物体边界点的误检。但却对边界的定位易产生不准确;相反,在较小尺度下,虽然增加了边界点误检的比例,但对物体或区域真正边界点的定位却比较准确。因此,可以结合两者的优点,即可先在较大尺度下检测出真正的边界点,然后在较小尺度下对边界点进行较精确的定位。目前。常用的形状匹配法主要有不变矩法、几何参数法、特征模表示法、边界方向直方图法、小波重要系数法以及我国学者杨翔英、章毓晋于1999年发表的小波轮廓表示法等许多方法。有着数学显微镜之称的小波变换与分析作为一种多尺度、多分辨率的分析工具,比较适合于对图像进行多尺度的边界检测。
形状匹配工具
形状匹配工具(Register)通过使物体和目标物体尽量重合定义一个几何变换。可以用一个常见问题作为例子,对旧车型外观故局部改动,有时在真实车体上用油泥进行。改动部分的数据如果和原始三维数据坐标有偏差,可以用形状匹配工具(Register)把测量数据移动到合适的位置。使用工具时,选取三对起始点和目标点,并根据情况选取匹配区域,通过三对点使物体初步移动到目标位置,然后进行若干次迭代运算,使匹配区域与目标物体形状尽可能贴合。形状匹配工具通过点击几何变换工具箱中的按钮Register或下拉菜单Modify→Move→Register激活,弹出形状匹配工具窗口,有Register,Iteration,Progress3个选项卡,如图所示是Register选项卡,定义几何变换参数。
参考资料
形状匹配算法 python 形状匹配和轮廓匹配.51CTO博客.2024-10-31