1.一种GPU加速的基于方向对齐与匹配传递的近似最相似图像块匹配方法,其特征在于,所述方法包括:S1、确定目标图像和源图像,并将所述目标图像和所述源图像分别基于结构张量计算出各自相应的方向角图像,且进一步根据所述目标图像和所述源图像及各自计算所得的方向角图像,定义出计算两个图像块距离的相似性匹配函数;
S2、确定所述目标图像中每一个像素坐标值分别对应在所述目标图像中传递的K个最相似图像块,通过迭代更新方式更新K个最相似图像块,在每一次迭代过程中利用空间传播方法和图像块随机搜索方法确定候选的相似图像块,利用所述相似性匹配函数计算所述目标图像中每一个像素坐标值所对应的图像块与其对应传递在所述目标图像中的K个最相似图像块间的相似性匹配函数值,得到迭代更新后的所述目标图像中每一个像素坐标值所对应的图像块分别对应传递在所述目标图像中具有相似性匹配函数值为最小的K个最相似图像块;K为大于1的正整数;每一个像素坐标值对应于以该像素坐标值为中心的方形图像块;
S3、将所述得到的目标图像中每一个像素坐标值分别对应传递在所述目标图像中具有相似性匹配函数值为最小的前K个最相似图像块再次传递,得到所述目标图像中每一个像素坐标值对应传递在所述源图像中具有K*K个最相似图像块,并利用所述相似性匹配函数计算所述目标图像中每一个像素坐标值与其对应传递在所述源图像中的K*K个最相似图像块间的相似性匹配函数值,筛选出所述目标图像中每一个像素坐标值内各自所计算出相似性匹配函数值为最小的前K个最相似图像块同时输出。
2.如权利要求1所述的方法,其特征在于,所述步骤S1中“将所述目标图像和所述源图像分别基于结构张量计算出各自相应的方向角图像”具体包括:给定一个3*3的卷积权重模板,并利用所述给定的3*3的卷积权重模板计算所述目标图像的水平方向的梯度场图像和竖直方向的梯度场图像,以及计算所述源图像的水平方向的梯度场图像和竖直方向的梯度场图像;
根据所述计算出的目标图像的水平方向及竖直方向的梯度场图像和所述计算出的源图像的水平方向的梯度场图像和竖直方向的梯度场图像,分别计算出所述目标图像和所述源图像各自对应的结构张量图像,并进一步根据所述计算出的目标图像和源图像各自对应的结构张量图像,得到所述目标图像和所述源图像的方向角图像。
3.如权利要求2所述的方法,其特征在于,所述目标图像的方向角图像是通过公式来实现,所述源
图像的方向角图像是通过公式
来实现;其中,
所述目标图像的结构张量图像表示为SA=(SAx,SAy,SAz);SAx(p)=Ax(p)·Ax(p),SAy(p)= A x ( p ) · A y ( p ) ,S A z ( p ) = A y ( p ) · A y ( p ) ;
p为所述目标
图像的任意一个像素坐标值;i、j均为整数,
所述源图像的结构张量图像表示为SB=(SBx,SBy,SBz);SBx(q)=Bx(q)·Bx(q),SBy(q)=B x ( q ) · B y ( q ) ,S B z ( q ) = B y ( q ) · B y ( q ) ;
q为所述源图
像的任意一个像素坐标值。
4.如权利要求1所述的方法,其特征在于,所述步骤S2具体包括:
S21、获取所述目标图像中任意一个像素坐标值及其在所述目标图像中通过并行随机数生成函数生成K个第一随机像素坐标值,得到所述目标图像中每一个像素坐标值对应传递在所述目标图像中由K个第一随机像素坐标值所形成的K个最相似图像块;
S22、设置第一迭代次数;
S23、设置第一空间偏移量以及第一随机搜索区域边长;
S24、获取当前第一空间偏移量以及所述目标图像中每一个像素坐标值分别对应的当前K个最相似图像块;
S25、判断所述当前第一空间偏移量是否大于等于1;如果是,则执行下一步骤S26;如果否,则跳转至步骤S27;
S26、根据所述获取到的当前第一空间偏移量,将所述目标图像中每一个像素坐标值分别对应的当前K个最相似图像块进行更新,并利用所述相似性匹配函数计算出所述目标图像中每一个像素坐标值所对应的图像块与根据当前第一空间偏移量所获取到的目标图像中的候选图像块以及更新前的K个最相似图像块间的相似性匹配函数值,且进一步保留所述目标图像中每一个像素坐标值所计算出相似性匹配函数值为最小的K个最相似图像块作为各自对应的当前K个最相似图像块,以及将所述当前第一空间偏移量除以2后,返回步骤S24;其中,将所述目标图像中每一个像素坐标值分别对应的当前K个最相似图像块进行更新的具体过程为,选取图像块的像素坐标值计算公式为:{NNF2(A(p/)),NNF2(A(p/+(J,
0)))-(J,0),NNF2(A(p/-(J,0)))+(J,0),NNF2(A(p/+(0,J)))-(0,J),NNF2(A(p/-(0,J)))+(0,J)},并通过所选取的像素坐标值计算公式,更新所述目标图像中每一个像素坐标值分别对应的当前K个最相似图像块;其中,NNF2(A(p/))为任意像素坐标值记为p/的图像块PA(p/)在目标图像A中的K个最相似图像块的像素坐标值;J为所述获取到的当前第一空间偏移量;
S27、获取当前第一随机搜索区域边长以及所述目标图像中每一个像素坐标值分别对应的当前K个最相似图像块;
S28、继续判断所述当前第一随机搜索区域边长是否大于等于1;如果是,则执行下一步骤S29;如果否,则跳转至步骤S210;
S29、所述目标图像中每一个像素坐标值的当前K个最相似图像块分别以各自为中心在当前第一随机搜索区域边长的范围内各自对应随机选取一个像素坐标值进行二次更新,并利用所述相似性匹配函数计算出所述目标图像中每一个像素坐标值所对应的图像块与根据当前第一空间偏移量所获取到的目标图像中的候选图像块以及更新前的K个最相似图像块间的相似性匹配函数值,且进一步保留二次更新后所述目标图像中每一个像素坐标值所计算出相似性匹配函数值为最小的K个最相似图像块作为各自对应的当前K个最相似图像块,以及将所述当前第一随机搜索区域边长除以2后,返回步骤S27;
S210、判断所述第一迭代次数是否等于0;如果是,则执行下一步骤S211;如果否,则将所述第一迭代次数减去1后,返回步骤S23;
S211、结束计算,并将所述目标图像中每一个像素坐标值分别各自最后得到相似性匹配函数值为最小的前K个最相似图像块作为所述目标图像中每一个像素坐标值对应传递在所述目标图像中的前K个最相似图像块输出。
5.如权利要求1所述的方法,其特征在于,所述步骤S3具体包括:
S31、获取所述目标图像中任意一个像素坐标值在所述源图像中通过并行随机数生成函数生成K个第二随机像素坐标值,得到所述目标图像中每一个像素坐标值对应传递在所述源图像中由K个第二随机像素坐标值所形成的K个最相似图像块;
S32、设置第二迭代次数;
S33、设置第二空间偏移量以及第二随机搜索区域边长;
S34、获取当前第二空间偏移量以及所述目标图像中每一个像素坐标值分别对应在所述源图像中形成的当前K*K个最相似图像块;
S35、判断所述当前第二空间偏移量是否大于等于1;如果是,则执行下一步骤S36;如果否,则跳转至步骤S37;
S36、根据所述获取到的当前第二空间偏移量,将所述目标图像中每一个像素坐标值分别对应在所述源图像中的当前K个最相似图像块进行更新,并利用所述相似性匹配函数计算出所述目标图像中每一个像素坐标值所对应的图像块与根据当前第二空间偏移量所获取到的源图像中的候选图像块以及更新前的K个最相似图像块间的相似性匹配函数值,且进一步保留由所述目标图像中每一个像素坐标值所计算出相似性匹配函数值为最小的K个最相似图像块作为各自对应的当前K个最相似图像块,以及将所述当前第二空间偏移量除以2后,返回步骤S34;其中,将所述目标图像中每一个像素坐标值分别对应在所述源图像中的当前K个最相似图像块进行更新的具体过程为,选取图像块的像素坐标值计算公式为:{NNF1(A(p/)),NNF1(A(p/+(J,0)))-(J,0),NNF1(A(p/-(J,0)))+(J,0),NNF1(A(p/+(0,J)))-(0,J),NNF1(A(p/-(0,J)))+(0,J)};其中,NNF1(A(p/))为任意像素坐标值记为p/的图像块PA(p/)在源图像图像B中的K个最相似图像块的像素坐标值;J为所述获取到的当前第二空间偏移量;
S37、获取当前第二随机搜索区域边长以及所述目标图像中每一个像素坐标值分别对应在所述源图像中形成的当前K*K个最相似图像块;
S38、继续判断所述当前第二随机搜索区域边长是否大于等于1;如果是,则执行下一步骤S39;如果否,则跳转至步骤S310;
S39、所述目标图像中每一个像素坐标值分别对应在所述源图像中的当前K个最相似图像块分别以各自为中心在当前第二随机搜索区域边长的范围内各自对应随机选取一个像素坐标值进行二次更新,并利用所述相似性匹配函数计算出所述目标图像中每一个像素坐标值所对应的图像块与根据当前第二空间偏移量所获取到的源图像中的候选图像块以及更新前的K个最相似图像块间的相似性匹配函数值,且进一步保留由二次更新后所述目标图像中每一个像素坐标值所计算出相似性匹配函数值为最小的K个最相似图像块作为各自对应的当前K个最相似图像块,以及将所述当前第二随机搜索区域边长除以2后,返回步骤S37;
步骤S310、根据步骤S2得到所述目标图像中每一个像素坐标值在所述目标图像中的K个最相似图像块,将所述得到的目标图像中每一个像素坐标值分别对应传递在所述目标图像中具有相似性匹配函数值为最小的K个最相似图像块再次传递,得到所述目标图像中每一个像素坐标值对应传递在所述源图像中的K*K个最相似图像块,并利用所述相似性匹配函数计算出所述目标图像中每一个像素坐标值所对应的图像块与对应的匹配传递得到的源图像中的K*K个最相似图像块以及更新前的K个最相似图像块间的相似性匹配函数值,且进一步保留由三次更新后所述目标图像中每一个像素坐标值所计算出相似性匹配函数值为最小的前K个最相似图像块作为当前K个最相似图像块;
S311、判断所述第二迭代次数是否等于0;如果是,则执行下一步骤S312;如果否,则将所述第二迭代次数减去1后,返回步骤S33;
S312、结束计算,并将所述目标图像中每一个像素坐标值内各自最后计算所得相似性匹配函数值为最小的前K个最相似图像块同时输出。
6.一种GPU加速的基于方向对齐与匹配传递的近似最相似图像块匹配方法,其特征在于,所述方法包括:S5、确定目标图像和源图像,并将所述目标图像和所述源图像分别基于结构张量计算出各自相应的方向角图像,且进一步根据所述目标图像和所述源图像及各自计算所得的方向角图像,定义出计算两个图像块距离的相似性匹配函数;
S6、确定所述源图像中每一个像素坐标值分别对应在所述源图像中传递的K个最相似图像块,通过迭代更新方式更新K个最相似图像块,在每一次迭代过程中利用空间传播方法和图像块随机搜索方法确定候选的相似图像块,利用所述相似性匹配函数计算所述源图像中每一个像素坐标值所对应的图像块与其对应传递在所述源图像中的K个最相似图像块间的相似性匹配函数值,得到迭代更新后的所述源图像中每一个像素坐标值所对应的图像块分别对应传递在所述源图像中具有相似性匹配函数值为最小的K个最相似图像块;K为大于
1的正整数;
S7、确定所述目标图像中每一个像素坐标值对应传递在所述源图像中的K个最相似图像块,并根据所述源图像中每一个像素坐标值分别对应在所述源图像中具有相似性匹配函数值为最小的前K个最相似图像块,得到所述目标图像中每一个像素坐标值对应传递在所述源图像中具有K*K个最相似图像块,且进一步利用所述相似性匹配函数计算所述目标图像中每一个像素坐标值与其对应传递在所述源图像中的K*K个最相似图像块间的相似性匹配函数值,筛选出所述目标图像中每一个像素坐标值内各自所计算出相似性匹配函数值为最小的前K个最相似图像块同时输出。
7.如权利要求6所述的方法,其特征在于,所述步骤S5中“将所述目标图像和所述源图像分别基于结构张量计算出各自相应的方向角图像”具体包括:给定一个3*3的卷积权重模板,并利用所述给定的3*3的卷积权重模板计算所述目标图像的水平方向的梯度场图像和竖直方向的梯度场图像,以及计算所述源图像的水平方向的梯度场图像和竖直方向的梯度场图像;
根据所述计算出的目标图像的水平方向及竖直方向的梯度场图像和所述计算出的源图像的水平方向的梯度场图像和竖直方向的梯度场图像,分别计算出所述目标图像和所述源图像各自对应的结构张量图像,并进一步根据所述计算出的目标图像和源图像各自对应的结构张量图像,得到所述目标图像和所述源图像各自对应的方向角图像。
8.如权利要求7所述的方法,其特征在于,所述目标图像的方向角图像是通过公式来实现,所述源
图像的方向角图像是通过公式
来实现;其中,
所述目标图像的结构张量图像表示为SA=(SAx,SAy,SAz);SAx(p)=Ax(p)·Ax(p),SAy(p)= A x ( p ) · A y ( p ) ,S A z ( p ) = A y ( p ) · A y ( p ) ;
p为所述目标
图像的任意一个像素坐标值;i、j均为整数,
所述源图像的结构张量图像表示为SB=(SBx,SBy,SBz);SBx(q)=Bx(q)·Bx(q),SBy(q)=B x ( q ) · B y ( q ) ,S B z ( q ) = B y ( q ) · B y ( q ) ;
q为所述源图
像的任意一个像素坐标值。