非刚性ICP配准通过对V上的每个顶点v_i,利用仿射变换X_i来对模板网格进行变形。由此将V形变成为一个形变模板网格V^′,使得V^′与目标数据T的形状越接近越好,即V^′上的每个顶点在T上的对应点为该顶点在T中的最近点。该过程的目标函数如下:
其中:E_d为距离项(Distance Term)误差,E_s为刚度项(Stiffness Term)误差,E_i为关键点项(Landmark Term)误差,α、β是加权参数。
E_d表示当前形变后的模板网格与目标数据对应点之间的相似程度。
其中:v_i为齐次向量[x,y,z,1]^T;dist(T,v_i)表示v_i与其在T中的最近点的距离;ω_i∈[0,1]表示第i个顶点的距离函数的可靠程度;若v_i在T上找不到对应点与其最近点间的距离超过某个阈值),则将ω_i置为0,否则将ω_i置为1。
E_s表示形变过程中相邻顶点的仿射变换参数矩阵的一致性,该损失函数的作用是使变换后的模板尽量平滑。该损失函数使用一个权重矩阵G_4×4=diag(1,1,1,γ)在‖∙‖_F下对相邻顶点的仿射变换的加权差进行惩罚。
其中:i,j∈ξ是指i,j为同一条边上的两个顶点。ξ为模板网格V中所有边的集合。
E_l表示模板网格与目标数据的对应特征点间的距离,在迭代初期引导形变过程。给定一个对应特征点集合L={(v_i_1,l_1),⋯,(v_i_l,l_l)},即将模板网格的顶点映射到目标数据表面的对应点上。