Page 297 - 《软件学报》2020年第10期
P. 297

金耀  等:距离约束的网格曲面曲线设计方法                                                            3273


         104ms,而最近点策略迭代 101 次,耗时 431ms.因此,前者能在不影响结果的前提下有效地提升效率.本文同时比较了
         不同邻域大小对结果的影响,如图 5(b)所示(其中的红点为插值点,下同).由图可见:1-环邻域结果与其他结果有一定
         差异,而 2-环与 3-环邻域的结果几无区别,三者的迭代次数分别为 126、95 与 88 次.由此说明,r 对算法收敛快慢有
         一定影响.这是由于 r 较小时,曲线移动的步长相应减少,因此需要更多的迭代次数到达极小值点;而当 r≥2 时,其结
         果差异较小,虽然能在一定程度上加快收敛,但同时也意味着将增加局部搜索次数.综合权衡算法效率,本文将 r 默
         认设置为 2.











                (a)  能量函数值的迭代变化                        (b)  梯度值的迭代变化                          (c)  平均距离的迭代变化
                              Fig.4  Generated curves during the iteration on the face model
                                     图 4   人脸模型上曲线的迭代变化过程










                           (a)  最近点与法向交点结果比较                       (b)  不同局部邻域结果比较

                        Fig.5  Comparison results with different strategies of local neighboring search
                                   图 5   采用不同局部邻域搜索策略的结果比较
         3.2   可控参数λ
             在公式(10)中,参数λ用于平衡曲线的光滑度与流形约束的满足程度.当λ过大时,流形约束能量将占主导.此时,
         算法行为将与光滑法(例如文献[4])类似.曲线在迭代时易陷入局部极小值,即曲线得不到充分光顺,同时也将增大
         方程条件数,使得数值性质变差.当λ过小时,光滑约束能量将占主导,此时,算法行为将与传统的投影法(如文献[12])
         相似.虽然曲线得到了充分的光顺,但是距离曲面较远,投影将破坏曲线的光滑度.当λ取值适宜时,算法将兼具两类
         方法的优势.图 6 展示了插值点相同但λ取值不同情况下,人脸模型上的插值曲线.










                    (a)  初始曲线             (b) λ=0.01               (c) λ=0.1                 (d) λ=1                 (e) λ=10
                           Fig.6    Interpolatory curves on the face model with different values of λ
                                    图 6   λ取不同值时,人脸模型上的插值曲线
   292   293   294   295   296   297   298   299   300   301   302