本发明涉及一种非完备模型局部变形恢复方法,特别涉及基于薄板样条基函数优化的非完备模型局部变形的恢复方法,属于计算机视觉数据处理领域。
背景技术:
径向基函数源于其在一些不同领域的应用,最早可能源于krige在1951年对矿藏的研究。1975年,duchon从样条弯曲能量最小的理论出发推导出了多元函数的薄板样条。tps薄板样条基函数控制能力强,可以产生特殊效果,例如非均匀渐变。可产生丰富的渐变效果和特技动画,实现特征标定的自动定位和高层理解。
leiyang等提出了一种基于骨架截面模板的rbf算法,用于薄壁结构的fe网格的快速变形。由提出的基于模板的变形方法提供的分级和灵活的变形能力使得fe网格适应设计优化以及人类交互式建模,网格模型通过目视可以看出是平滑的变形。使用这种算法可以使系统获得约98.7%的总精度。
youngjunkim提出了一种新型的用于乳房整形手术的3d虚拟模拟软件。其基于图像建模算法利用了一个模板模型,并且其根据患者的照片而变形。用的方法是普鲁克分析和径向基函数(rbf)。大约需要1-2分钟从患者照片中获得模拟结果。扫描数据与患者的重建数据之间的距离误差约为0.10mm。然而,由于数据库中手术病例数量的缺乏,他们的软件不太健壮。
李菁菁提出了基于控制点平滑的二维人脸变形算法。其在网格变形之前加入一个以薄板样条变形为原理的特征点平滑过程,使得图像变形的结果既远比网格变形的结果细腻自然又具有较快的速度。实验表明,平滑算法可以得到理想效果。
李旭东等人提出了基于非对称径向基函数的人脸图像变形算法。该文算法克服了对称径向基函数人脸图像变形算法中人脸图像边界发生扭曲的不合理变形现象。
技术实现要素:
本发明的目的是提出一个基于优化的薄板样条基函数来处理非完备模型局部变形的问题,解决了使用薄板样条基函数算法所产生的遗漏点的问题,并提出了使用薄板样条基函数对每个像素的偏移量进行插值运算,大大增加了局部变形准确性,节省了人力与时间。
本发明的目的是通过以下技术方案实现的,一种基于薄板样条基函数优化的非完备模型局部变形的恢复方法,包括下述步骤:首先在源图像和目标图像上选取对应特征点,根据这些对应特征点点对的关系,通过径向基函数来建立映射函数;然后目标图像中的每个像素都会根据这个映射函数找到它在源图像中对应的像素并对薄板样条基函数算法所产生的遗漏点进行插值;最后对每个像素的偏移量进行插值运算,即像素偏移函数可以由径向基函数的线性组合来表示。
优选的,所述的步骤1)与步骤2)中的运用径向基函数来建立映射函数并据此函数使目标图像中的每个像素找到它在源图像中对应的像素,包括如下过程:
采用薄板样条基函数作为映射函数,定义两个数组pi和hi用来分别表示两个坐标点集:pi=(xi,yi)和hi=(xi,yi)分别是源图像a和目标图像b的控制点;图像映射函数φ,根据公式(1)经过匹配计算将源图像a的每一个坐标点映射到目标图像b;映射变换的系数由所选择的匹配控制点个数决定;
其中p=(x,y)是图像空间的坐标;
为了求得公式(1)中的系数,一个(n+3)×2的矩阵w定义如下:
w=(ω1...ωna1axay)t=l-1h(2)
其中ω1,ω2,...,ωn;a1,ax,ay是薄板样条变换中的关键系数;矩阵w还可以由矩阵l和h如公式(2)那样表示,h是一个(n+3)×2的矩阵:
其中hi=(xi,yi),i=1,...,n是目标图像b中的控制点的坐标;矩阵l由矩阵i,q和一个3×3的零矩阵组合而成,如公式(4)所示,l应为(n+3)行(n+3)列矩阵:
为了计算出矩阵l,矩阵i和q的操作参数表示如下,矩阵i定义如下:
其中u(r)=r2logr,且rij=(|pi-pj|)是源图像a的任意两个控制点之间的距离;
同时,q矩阵定义如下:
其中(xi,yi),i=1,...,n表示源图像a的控制点坐标。
优选的,所述的步骤3中对薄板样条基函数算法所产生的遗漏点进行插值,包括如下过程:
p0是被表示成3×3矩阵形式的源图像a的中心点,它的8个邻居点被映射到目标图像b上的点被定义为p1'~p'8,p'0和p1'的像素值分别为c1和c2;然后,按照公式(7)和(8)分别定义p0和p1的像素值,令它们等于匹配点p'0和p1';
c{p'0}=c{p0}=c1(7)
c{p1'}=c{p1}=c2(8)
用c{p(k)}表示p'0和p1'点之间被遗漏的点的像素值,它们根据公式(9)来进行估算;
其中d1是p(k)和p'0之间的距离,d2是p(k)和p1'之间的距离;根据公式(9),每个遗漏点的像素值被估算出来,然后用于填补变形图像中空白的位置。
优选的,所述的步骤4中对每个像素的偏移量进行插值运算,包括如下过程:
假设取得n个特征点
gi(x,y)=[(x-xi)2+(y-yi)2]2log[(x-xi)2+(y-yi)2](10)
在这个基础上,像素点
其中系数向量
如果记
gα=δx,gβ=δy(13)
当得到
来确定:
与现有技术相比,本发明具有以下有益效果:解决了使用薄板样条基函数算法所产生的遗漏点的问题,并提出了使用薄板样条基函数对每个像素的偏移量进行插值运算,大大增加了局部变形准确性,节省了人力与时间。
附图说明
图1为基于薄板样条基函数优化的局部変形算法流程图;
图2a为用薄板样条基函数作为映射函数产生遗漏点的示意图。
图2b为对遗漏点插值的示意图。
具体实施方式
如图1所示,一种基于薄板样条基函数优化的非完备模型局部变形的恢复方法,包括下述步骤:
图像之间映射函数的具体描述:
采用薄板样条基函数作为映射函数,我们定义两个数组pi和hi用来分别表示两个坐标点集。pi=(xi,yi)和hi=(xi,yi)分别是源图像a和目标图像b的控制点。图像映射函数φ,根据公式(1)经过匹配计算将源图像a的每一个坐标点映射到目标图像b。映射变换的系数由所选择的匹配控制点个数决定。
其中p=(x,y)是图像空间的坐标。为了求得公式(1)中的系数,一个(n+3)×2的矩阵w定义如下:
w=(ω1...ωna1axay)t=l-1h(2)
其中ω1,ω2,...,ωn;a1,ax,ay是薄板样条变换中的关键系数。矩阵w还可以由矩阵l和h如公式(2)那样表示。h是一个(n+3)×2的矩阵:
其中hi=(xi,yi),i=1,...,n是目标图像b中的控制点的坐标。矩阵l由矩阵i,q和一个3×3的零矩阵组合而成,如公式(4)所示,l应为(n+3)行(n+3)列矩阵:
为了计算出矩阵l,矩阵i和q的操作参数表示如下。矩阵i定义如下:
其中u(r)=r2logr,且rij=(|pi-pj|)是源图像a的任意两个控制点之间的距离。
同时,q矩阵定义如下:
其中(xi,yi),i=1,...,n表示源图像a的控制点坐标。
对遗漏点进行插值:
如图2a、2b,p0是被表示成3×3矩阵形式的源图像a的中心点,它的8个邻居点被映射到目标图像b上的点被定义为p1'~p'8,比如,p'0和p1'的像素值分别为c1和c2。然后,我们按照公式(7)和(8)分别定义p0和p1的像素值,令它们等于匹配点p'0和p1'。
c{p'0}=c{p0}=c1(7)
c{p1'}=c{p1}=c2(8)
用c{p(k)}表示p'0和p1'点之间被遗漏的点的像素值,它们可根据公式(9)来进行估算。
其中d1是p(k)和p'0之间的距离,d2是p(k)和p1'之间的距离。根据公式(9),每个遗漏点的像素值可以被估算出来,然后用于填补变形图像中空白的位置。
对偏移量进行插值运算:
假设取得n个特征点
gi(x,y)=[(x-xi)2+(y-yi)2]2log[(x-xi)2+(y-yi)2](10)
在这个基础上,像素点
其中系数向量
如果记
gα=δx,gβ=δy(13)
当得到
来确定: