一种基于距离约束的网格曲面曲线设计方法技术

技术编号:20391958 阅读:26 留言:0更新日期:2019-02-20 03:41
本发明专利技术公开了一种基于距离约束的网格曲面上曲线设计方法。所设计曲线经过给定插值点,具有光滑性(离散意义下)且严格位于网格曲面上。该方法将复杂的流形约束转化为距离约束,并与光滑约束、插值约束共同描述成优化问题;用切平面逼近局部曲面,并将距离约束松弛成用点到切平面的距离;由于计算距离所用的曲线上的点与其对应的切点相互依赖,采用“整体‑局部”交替迭代的策略,并运用Gauss‑Newton法的思想控制其收敛行为:整体阶段,通过距离近似将其松弛成凸优化问题求解迭代步长;局部阶段,采用鲁棒高效的投影法将优化后的曲线映射到曲面以更新切点。最后利用切割平面法将所有处于松弛状态的折线映射到网格曲面。该方法相比于现有方法在效率、鲁棒性、应用范围等方面均表现出较大的优势。

【技术实现步骤摘要】
一种基于距离约束的网格曲面曲线设计方法
本专利技术涉及计算机图形学、几何处理、计算机辅助设计等领域,具体涉及一种基于距离约束的网格曲面上曲线设计方法,以实现在离散网格上设计光滑的离散曲线。
技术介绍
在网格曲面上进行曲线设计是进行几何处理与编辑的一项重要内容,且有着广泛的应用背景,如网格处理中的部件分割、虚拟手术中的模拟切割、制造业中的图案设计、流形上的计算几何,以及CAD系统等。这种曲线有多种设计方式,其中常见的有插值与光顺两种:用户在网格曲面上输入几个控制点或一条初始曲线,系统便生成一条附着于曲面的光滑曲线,使之经过这些输入点(插值)。换言之,在网格曲面上设计曲线需同时满足流形约束、光滑约束、插值点约束等。而其中的流形约束使其较之于欧式空间的曲线设计问题更为复杂,难度更大。现有针对网格曲面的曲线设计方法大致可分为三类:投影法、光顺法与参数化法。投影法通常将光滑的空间曲线迭代地投影到网格流形上,方法简单高效,但是其迭代过程缓慢,不适用于交互应用,且投影步骤往往不太鲁棒。光顺法即对给定曲线在保持流形约束下进行光顺,方法通常较为鲁棒,但其效率较低,且难以设计插值曲线。参数化法,即将局部曲面参数化到平面,在平面上设计曲线,并将结果映射回曲面。该方法往往鲁棒、高效且灵活,但其受限于局部区域,难以进行大范围的曲线设计。
技术实现思路
本专利技术的目的是针对现有技术的不足,提供一种针对离散网格曲面的高效鲁棒的曲线设计方法:将流形约束转化为距离约束,用切平面逼近局部曲面,并将距离约束松弛为点到切平面的距离,并与光滑约束、插值点约束共同作为优化目标进行求解;求解时,采用“整体-局部”交替迭代的思想,并借助Gauss-Newton法控制其收敛行为。本专利技术提供的一种基于距离约束的网格曲面曲线设计方法,该方法包括以下步骤:步骤一,输入插值点:在三维网格模型表面上顺序选取若干个点{pi}作为插值点;设置软约束权重λ和ω,最大迭代次数N,误差阈值ε;步骤二,离散化曲线段:用弦长参数化方法,对相邻两个插值点所形成的线段pipi+1均匀地插入若干个点{qj},将曲线离散成折线段,采样点个数其中|e|为网格平均边长,α为采样密度参数;对于开曲线需处理m-1段曲线;对于闭曲线,需处理m段曲线(首尾两点形成的线段),m为插值点个数,设置迭代次数n=0;步骤三,生成初始曲线:对于每相邻两个插值点,用Dijkstra最短路径生成初始曲线,并根据步骤二得到的采样点个数,对曲线段进行均匀采样,从而形成曲线采样点集坐标及其投影点集步骤四,更新曲线采样点集坐标利用曲线采样点到其投影点的切平面的距离约束替代流形约束(将点约束在网格表面),并联合光滑约束(离散意义下)与插值约束(曲线经过插值点),求解如下能量函数的极小值,得到新曲线的位置:其中,对于开曲线,M表示折线段中除却首尾端点的离散点个数,对于闭曲线,M表示所有离散点个数;E(qn+1)为能量函数,λ为流形约束权重,为处的法向量,pi为第i个插值点坐标,ω为插值约束权重,通常取大常系数(108),目的是近似保证插值条件,为第ki个采样点,ki为第i个插值点在所有采样点中的位置;求解时,运用能量函数(公式1)的Hessian矩阵计算迭代方向,并结合线性回溯搜索法控制迭代步长;步骤五,投影曲线采样点至网格曲面:在曲线采样点所在面片的邻域内搜索投影点投影点优先选择切平面法向与该区域的交点;若不存在则搜索采样点到该区域的最近点作为投影点;若存在多个投影点,则选择拉普拉斯能量,即最小的点作为投影点;步骤六,设置n=n+1,并重复上述步骤四~五,直到曲线采样点坐标满足下列收敛条件之一:||g||2<ε或max{|qjn-qjn-1|}<ε或n≥N,其中g为能量函数的梯度,ε为误差阈值,N为最大迭代次数;步骤七,将构成曲线的所有折线段运用切割平面法投影到曲面上:对于每一条未处于网格表面的线段,由起始点向终止点逐步构造切割平面(由起始点法向和起始点与终止点矢量构成的平面),与相关的网格边进行求交,并将交点更新为起始点,逐步往前传播,如此循环直至起始点与终止点重叠。进一步地,所述步骤一中插值点不仅限于网格顶点,还可以是网格曲面上任意点。进一步地,所述步骤二中曲线采样点个数由相邻两个插值点之间的欧式距离与网格平均边长确定。进一步地,所述步骤四具体为:根据第n迭代得到的投影点集计算新的曲线采样点集由于由前一次迭代曲线采样点计算得到,而并非当前的投影点,因此直接用欧式距离度量点到曲面的距离并不精确;为提高距离度量的精确度,本专利技术借鉴用于曲面配准的迭代最近点(ICP)的算法思想,用该点处的切平面逼近局部曲面,并采用点到切平面的距离进行度量;设处的切平面为Tj,其对应的法向为则到曲面S的距离可近似表示如下:通过优化如下方程求解新曲线的位置:其中,对于开曲线,M表示折线段中除却首尾端点的离散点个数;而对于闭曲线,M表示所有离散点个数;该式是关于qn+1的二次函数,可转化成稀疏线性方程组Hqn+1=b进行求解;本专利技术借助Gauss-Newton法的思想,利用该公式的Hessian矩阵H计算迭代方向,并结合线性回溯搜索法控制迭代步长;进一步地,所述步骤四中,由于能量函数为平方和形式,其对应Hessian矩阵是对称正定的,因此其每次迭代的方程均可转化为凸优化问题进行求解;因此,其迭代求解的每一步通过如下公式更新顶点位置:qn+1=qn-ωs,其中H是Hessian矩阵,ω∈(0,1]为迭代步长,通过折半线性回溯法确定大小。进一步地,所述步骤五具体为:由于计算球体与网格的交集以及在该交集处的最近点较为耗时,本专利技术从两方面对该问题进行近似简化以提高计算效率:1)交集的近似,根据前一次迭代得到的投影点进行估算,即将所在三角形面片f0的r-环拓扑邻域的面片集合F作为的球形邻域与网格曲面的交集,r-环拓扑邻域的面片集合中r默认取作3;2)最近点的近似,确定交集F后,则到该局部区域的最近点距离如下:其中,为点到三角形面片fi的距离;为点到面片fi上的点s的距离;为进一步提高效率,本专利技术运用法向求交法,即计算为起点沿着切平面法向的射线与面片集合F的交点作为投影点;当交点不存在时再考虑将最近点作为投影点;具体地,以f0作为种子点以广度优先的方式遍历F,对每个面片计算法向与其交点,若交点在其内部则将该交点作为投影点并结束搜索;否则计算点到面片的距离并更新最近点,直至遍历完所有面片;若存在多个投影点,则选择拉普拉斯能量最小的点作为投影点。进一步地,所述步骤七采用基于切割平面的求交法计算曲线的折线段到网格曲面的投影。本专利技术的有益效果是:本专利技术方法将复杂的流形约束转化为距离约束,并与光滑约束、插值约束共同描述成优化问题;用切平面逼近局部曲面,并将距离约束松弛成用点到切平面的距离;由于计算距离所用的曲线上的点与其对应的切点相互依赖,采用“整体-局部”交替迭代的策略,并运用Gauss-Newton法的思想控制其收敛行为:整体阶段,通过距离近似将其松弛成凸优化问题求解迭代步长;局部阶段,采用鲁棒高效的投影法将优化后的曲线映射到曲面以更新切点。最后利用切割平面法将所有处于松弛状态的折线映射到网格曲面。该方法相比于现有方法在效率、鲁棒性、可控性、应本文档来自技高网...

【技术保护点】
1.一种基于距离约束的网格曲面曲线设计方法,其特征在于,该方法包括以下步骤:步骤一,输入插值点:在三维网格模型表面上顺序选取若干个点{pi}作为插值点;步骤二,离散化曲线段:用弦长参数化方法,对相邻两个插值点所形成的线段pipi+1均匀地插入若干个点{qj},将曲线离散成折线段,采样点个数

【技术特征摘要】
1.一种基于距离约束的网格曲面曲线设计方法,其特征在于,该方法包括以下步骤:步骤一,输入插值点:在三维网格模型表面上顺序选取若干个点{pi}作为插值点;步骤二,离散化曲线段:用弦长参数化方法,对相邻两个插值点所形成的线段pipi+1均匀地插入若干个点{qj},将曲线离散成折线段,采样点个数其中|e|为网格平均边长,α为采样密度参数;对于开曲线需处理m-1段曲线;对于闭曲线,需处理m段曲线,m为插值点个数,设置迭代次数n=0;步骤三,生成初始曲线:对于每相邻两个插值点,用Dijkstra最短路径生成初始曲线,并根据步骤二得到的采样点个数,对曲线段进行均匀采样,从而形成曲线采样点集坐标及其投影点集步骤四,更新曲线采样点集坐标利用曲线采样点到其投影点的切平面的距离约束替代流形约束(将点约束在网格表面),并联合光滑约束(离散意义下)与插值约束(曲线经过插值点),求解如下能量函数的极小值,得到新曲线的位置:其中,对于开曲线,M表示折线段中除却首尾端点的离散点个数,对于闭曲线,M表示所有离散点个数;E(q)为能量函数,λ为流形约束权重,为处的法向量,pi为第i个插值点坐标,ω为插值约束权重,为第ki个采样点,ki为第i个插值点在所有采样点中的位置;求解时,运用能量函数的Hessian矩阵计算迭代方向,并结合线性回溯搜索法控制迭代步长;步骤五,投影曲线采样点至网格曲面:在曲线采样点所在面片的邻域内搜索投影点投影点优先选择切平面法向与该区域的交点;若不存在则搜索采样点到该区域的最近点作为投影点;若存在多个投影点,则选择拉普拉斯能量最小的点作为投影点;步骤六,设置n=n+1,并重复上述步骤四~五,直到曲线采样点坐标满足下列收敛条件之一:||g||2<ε或max{|qjn-qjn-1|}<ε或n≥N,其中g为能量函数的梯度,ε为误差阈值,N为最大迭代次数;步骤七,将构成曲线的所有折线段运用切割平面法投影到曲面上:对于每一条未处于网格表面的线段,由起始点向终止点逐步构造切割平面,与相关的网格边进行求...

【专利技术属性】
技术研发人员:金耀宋滢卢星宇何利力
申请(专利权)人:浙江理工大学
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1