1.一种基于laplace优化的图像拓扑变形方法,其特征在于,包括如下步骤:
步骤1:建立化工人物模型,生成人体四面体网格,将人物模型使用网格完全包络,按照预定义将人物模型切分为不同的多面体,并生成相关切面的二维视图;
步骤2:依次记录每个多面体的拓扑结构,记录拓扑结构包括顶点、相邻顶点之间线、构成多面体的各个面;从记录的顶点中选取所需锚点,锚点分为固定锚点与移动锚点,变形的过程中保持不变的网格顶点是固定锚点,变形前后发生变化的顶点是移动锚点;
步骤3:根据步骤2记录的顶点与顶点之间的拓扑结构,利用加权公式得到选定的锚点创建的laplace矩阵,并由此将顶点坐标转化为对应的laplace微分坐标δ;
步骤4:根据步骤2记录的顶点、面信息,将相邻顶点组成的面放入二维平面中,记录的面基本拓扑结构有三角形和四边形,寻找三角形和四边形结构之间的联系,得到一种能够适用于这两种结构形体,并且都具有三角形和四边形结构二维直观解的一一映射方法,结合插值实现不同变形的需要,求出移动锚点的变化后的点坐标矩阵PoAf;
对选定的锚点的点集,记做S={S(i)|i=1,2,…,n},锚点进行平移操作后的特征点集,记做D={D(i)|i=1,2,…,n},根据特征点生成对应所需的三角形或四边形网格集合NS、ND,S和D中的点也具有一一对应性;
寻找具有三角形结构二维直观解的一一映射方法为:
若S中三点S(i)、S(j)和S(k)组成的三角形在网格集合NS中,则D中三点D(i)、D(j)和D(k)所组成的三角形在对应网格集合ND中;当非线性变形时,还需设置在ND中对应结构内平移三角形边的中点所获得偏移量ΔP;对于目标图像中的每一个像素点,根据NS网格计算出它在对应拓扑结构坐标系中的坐标值;根据所求出的坐标值,利用ND网格中对应拓扑结构,反算出其在目标图像中的笛卡尔坐标值,求出锚点变化后的坐标PoAf,而固定锚点前后坐标不发生变化;
步骤5:利用顶点的laplace微分坐标δ和移动锚点变化后的点坐标矩阵PoAf自动求解稀疏的对称正定矩阵A,并进行奇异值分解,快速回代得到变化后的网格顶点坐标,带入模型,完成变形;
步骤5.1:将顶点的laplace微分坐标δ与锚点变化后的坐标PoAf组成矩阵B,δ为上半部分,PoAf为下半部分,根据公式(4)求出选定锚点的laplace矩阵L添加锚点信息后的Ls矩阵:其中,di表示第i个顶点的邻接顶点数目,(Ls)ij表示根据顶点求出的对应矩阵,N(i)表示与vi相邻顶点的点集,网格中每个顶点i∈V的笛卡尔坐标为vi=(xi,yi,zi),V代表顶点集;
T
步骤5.2:设新矩阵A的值为A=Ls·Ls,A是稀疏的对称正定矩阵,且只与输入锚点的索引有关,选取固定锚点和移动锚点,采用奇异值分解加速计算,通过公式(5)快速回代得到变化后的网格顶点的笛卡尔坐标:Ax=B (5)
其中,x为所要求的顶点变化后的坐标值。
2.根据权利要求1所述的基于laplace优化的图像拓扑变形方法,其特征在于,所述步骤3中创建laplace矩阵的具体步骤为:步骤3.1:模型切分不同部分后,按照切分的每一部分建立三角面、边与顶点的完整拓扑信息,记录锚点索引值,记录为M=(V,E,F),M代表模型,V代表顶点集,包括顶点的坐标、索引,E代表边集,F代表面集,网格中每个顶点i∈V的笛卡尔坐标为vi=(xi,yi,zi),数学表示形式如公式(1);使用vector容器,将所有的顶点坐标放PoBe矩阵中;
其中,i=jN(i)={j∣(i,j)∈E},N(i)是vi的邻接顶点集,di=|N(i)|是第i个顶点的邻接顶点个数, 作为权值来构造坐标,对顶点vi周围邻接顶点做一个平均值,对权值的计算如公式(2):其中,Wij为所有选择的顶点的权值,N(i)是vi的邻接顶点集;
步骤3.2:选择预定义锚点,根据索引找到锚点的原坐标,遍历面集找到选定的锚点相邻顶点,根据公式(1)与公式(2)加权得到选定锚点的laplace矩阵L,并通过公式(3)计算vi点的微分坐标得到结果:*
LPoBe=δ (3)
其中,L为笛卡尔坐标与laplace坐标之间的转换矩阵,称为算子系数矩阵,表示网格模型的拓扑关系,与顶点的几何位置无关。