CN106504249B - 部分曲面细分方法 - Google Patents
部分曲面细分方法 Download PDFInfo
- Publication number
- CN106504249B CN106504249B CN201610912196.0A CN201610912196A CN106504249B CN 106504249 B CN106504249 B CN 106504249B CN 201610912196 A CN201610912196 A CN 201610912196A CN 106504249 B CN106504249 B CN 106504249B
- Authority
- CN
- China
- Prior art keywords
- opf
- triangular plate
- adjacent
- carries out
- queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明涉及三维图像处理技术领域,尤其涉及一种部分曲面细分方法。本发明的部分曲面细分方法对于选中网格区域中的三角片,针对其三条边所对应的相邻三个三角片是否处于该选中的网格区域中而进行不同策略的划分,对位于边缘的三角片仅进行简单的平分,对位于选中的网格区域中的三角片则根据其边长比例再进行细分。这样采用多种特征值可以对三角片进行有效的细分,并且保证细分时只影响周围三个相邻的三角片,且周围的相邻的三个三角片也采用影响特征值最小的方法进行细分,这样不会出现递归处理,提高了分割效率。
Description
技术领域
本发明涉及三维图像处理技术领域,尤其涉及一种部分曲面细分方法。
背景技术
三角网格是几何模型的一种重要表示方法,广泛应用在虚拟现实、逆向工程、计算机图形学等领域中。随着激光三维扫描技术的快速发展,由扫描重建的三维模型得到越来越广泛的应用。
实体在经过扫描仪扫描后,建立起的三维模型,由于使用的点云重建方法的不同,以及实体的结构不同,导致三角形大小分布不均,使得某些其他方法应用到该模型上,会导致效果变差。因此需要对模型的一定区域进行曲面细分。现有的曲面细分方法大都是针对整个网格的,然而并不是所有的三角形都需要细分,而且现有曲面细分方法大都是针对三角形进行统一的处理,并不能按照三角形的特点针对性地进行细分。
发明内容
为了解决上述技术问题,本发明提供一种部分曲面细分方法,该方法是根据三角片的特性对三角片进行细分,分解效果好。
为了实现上述目的,本发明采用如下技术方案,部分曲面细分方法,包括如下步骤:
(1)确定选中的网格区域,将所述选中网格区域中的三角片放入一个队列中,并设队列中的三角片为f,f的三条边为e1,e2和e3,e1,e2和e3所对应的相邻三角片分别为opf1,opf2,opf3;
(2)设定面积阈值maxs,对队列中未弃用的f进行判断,如果该f的面积值小于maxs,则f不再处理;如果f的面积值大于maxs则根据opf1,opf2,opf3以及e1,e2和e3的比例而选择不同的策略对其进行分割;
(3)将队列中的三角片f以及其opf1、opf2和opf3分割产生的新的三角片再加入到队列中,将f以及其经过分割后的opf1、opf2和opf3标记为弃用,如果队列中的所有三角片f的面积值均小于maxs,则转至步骤(4),否则则转入步骤(2);
(4)将保存的三角片关系存到原来的网格结构中。
优选地:所述步骤(2)中,当进行判断的三角片f的面积值大于maxs时,则进行如下处理:
(11)如果f相邻的opf1、opf2和opf3中,存在一个为空,则设定该空的opfn所对应的en为不可分割,则f进行(21)分割策略;
(12)如果f相邻的opf1、opf2和opf3中,存在2个为空,则设定2个空的opfn所对应的en为不可分割,则f进行(22)分割策略;
(13)如果f相邻的opf1、opf2和opf3都存在,则计算f三条边的比例,1:r1:r2,
如果满足条件1≤r1<2&&1≤r2<2,则f进行(23)分割策略,
如果满足条件1≤r1<2&&r2≥2,则f进行(22)分割策略,
如果满足条件r1≥2&&r2≥2,则f进行(21)分割策略;
其中:n=1、2或3;r1为e2/e1,r2为e3/e1。
分割策略:
(21)计算出三角片f的重心cp,并连接f的3个顶点与重心cp,将f一分为三,f的opf不再进行计算,转至步骤(3);
(22)如果从(12)进入,则设定e2为f唯一一条可分割边,计算出e2的中点,并连接e2所对应的顶点,将f一份为二,e2所对应的opf2则转至进行(11)-(13);
如果从(24)进入,则将f与fx的公共边设定为e2,计算e2的中点,并连接e2所对应的fx的顶点将fx一分为2,新分割的三角片不再处理,转至步骤(3);
(23)计算f的三条边的中点,连接三个中点,将f一分为四,f的三个相邻面opf则进行(21)分割策略,然后再进行(24)分割策略;
(24)将opf分割出的三个三角片中直接与f相连的三角片设定为fx,进行(22)分割策略。
优选地,所述分割策略(21)中的重心可替换为内心。
优选地,还包括方法执行前或者方法执行后对网格结构进行平滑处理的步骤。
优选地,所述的平滑处理为高斯平滑处理。
本发明的部分曲面细分方法对于选中网格区域中的三角片,针对其三条边所对应的相邻三个三角片是否处于该选中的网格区域中而进行不同策略的划分,对位于边缘的三角片仅进行简单的平分,对位于选中的网格区域中的三角片则根据其边长比例再进行细分。这样采用多种特征值可以对三角片进行有效的细分,并且保证细分时只影响周围三个相邻的三角片,且周围的相邻的三个三角片也采用影响特征值最小的方法进行细分,这样不会出现递归处理,提高了分割效率。
附图说明
图1(a)为策略(21)的划分方式示意图;
(b)为策略(22)的划分方式示意图;
(c)为策略(23)的划分方式示意图。
具体实施方式
实施例1
部分曲面细分方法,包括如下步骤:
(1)确定选中的网格区域,将所述选中网格区域中的三角片放入一个队列中,并设队列中的三角片为f,f的三条边为e1,e2和e3,e1,e2和e3所对应的相邻三角片分别为opf1,opf2,opf3;
(2)设定面积阈值maxs,对队列中未弃用的f进行判断,如果该f的面积值小于maxs,则f不再处理;如果f的面积值大于maxs则根据opf1,opf2,opf3以及e1,e2和e3的比例而选择不同的策略对其进行分割;
(3)将队列中的三角片f以及其opf1、opf2和opf3分割产生的新的三角片再加入到队列中,将f以及其经过分割后的opf1、opf2和opf3标记为弃用,如果队列中的所有三角片f的面积值均小于maxs,则转至步骤(4),否则则转入步骤(2);
(4)将保存的三角片关系存到原来的网格结构中。
实施例1的方法在进行划分时,对选中网格区域中的三角片采用其多种特征值,包括面积、相邻三角片的状况以及边长比例而进行不同策略的划分,而不是针对选中区域中所有的三角片均进行统一的分割,这样的分割兼顾了三角片自身的特点,细分的效果更好。
实施例2
部分曲面细分方法,包括如下步骤:
(1)确定选中的网格区域,将所述选中网格区域中的三角片放入一个队列中,并设队列中的三角片为f,f的三条边为e1,e2和e3,e1,e2和e3所对应的相邻三角片分别为opf1,opf2,opf3;
(2)设定面积阈值maxs,对队列中未弃用的f进行判断,如果该f的面积值小于maxs,则f不再处理;如果f的面积值大于maxs则根据opf1,opf2,opf3以及e1,e2和e3的比例而选择不同的策略对其进行分割;
(3)将队列中的三角片f以及其opf1、opf2和opf3分割产生的新的三角片再加入到队列中,将f以及其经过分割后的opf1、opf2和opf3标记为弃用,如果队列中的所有三角片f的面积值均小于maxs,则转至步骤(4),否则则转入步骤(2);
(4)将保存的三角片关系存到原来的网格结构中。
其中,所述步骤(2)中,当进行判断的三角片f的面积值大于maxs时,则进行如下处理:
(11)如果f相邻的opf1、opf2和opf3中,存在一个为空,则设定该空的opfn所对应的en为不可分割,则f进行(21)分割策略;
(12)如果f相邻的opf1、opf2和opf3中,存在2个为空,则设定2个空的opfn所对应的en为不可分割,则f进行(22)分割策略;
(13)如果f相邻的opf1、opf2和opf3都存在,则计算f三条边的比例,1:r1:r2,
如果满足条件1≤r1<2&&1≤r2<2,则f进行(23)分割策略,
如果满足条件1≤r1<2&&r2≥2,则f进行(22)分割策略,
如果满足条件r1≥2&&r2≥2,则f进行(21)分割策略;其中:n=1、2或3;r1为e2/e1,r2为e3/e1。分割策略:
(21)计算出三角片f的重心cp,并连接f的3个顶点与重心cp,将f一分为三,f的opf不再进行计算,转至步骤(3);
(22)如果从(12)进入,则设定e2为f唯一一条可分割边,计算出e2的中点,并连接e2所对应的顶点,将f一份为二,e2所对应的opf2则转至进行(11)-(13);
如果从(24)进入,则将f与fx的公共边设定为e2,计算e2的中点,并连接e2所对应的fx的顶点将fx一分为2,新分割的三角片不再处理,转至步骤(3);
(23)计算f的三条边的中点,连接三个中点,将f一分为四,f的三个相邻面opf则进行(21)分割策略,然后再进行(24)分割策略;
(24)将opf分割出的三个三角片中直接与f相连的三角片设定为fx,进行(22)分割策略。
本发明的部分曲面细分方法对于选中网格区域中的三角片,针对其三条边所对应的相邻三个三角片是否处于该选中的网格区域中而进行不同的划分策略,对位于边缘的三角片仅进行简单的平分,对位于选中的网格区域中的三角片则根据其边长比例再进行细分。这样采用多种特征值可以对三角片进行有效的细分,并且保证细分时只影响周围三个相邻的三角片,且周围的相邻的三个三角片也采用影响特征值最小的方法进行细分,这样不会出现递归处理,提高了分割效率。原来网格的渲染结果与之前相比较,曲面数量增加,但形状未改变,曲面变得细化。
其中,所述分割策略(21)中的重心可替换为内心。
其中,还包括方法执行前或者方法执行后对网格结构进行平滑处理的步骤。所述的平滑处理为高斯平滑处理。在方法执行前或者方法执行后对网格结构进行平滑,则会产生更好的曲面细分效果。
Claims (4)
1.部分曲面细分方法,其特征在于,包括如下步骤:
(1)确定选中的网格区域,将所述选中网格区域中的三角片放入一个队列中,并设队列中的三角片为f,f的三条边为e1,e2和e3,e1,e2和e3所对应的相邻三角片分别为opf1,opf2,opf3;
(2)设定面积阈值maxs,对队列中未弃用的f进行判断,如果该f的面积值小于maxs,则f不再处理;当进行判断的三角片f的面积值大于maxs时,则进行如下处理:
(11)如果f相邻的opf1、opf2和opf3中,存在一个为空,则设定该空的opfn所对应的en为不可分割,则f进行(21)分割策略;
(12)如果f相邻的opf1、opf2和opf3中,存在2个为空,则设定2个空的opfn所对应的en为不可分割,则f进行(22)分割策略;
(13)如果f相邻的opf1、opf2和opf3都存在,则计算f三条边的比例,1:r1:r2,
如果满足条件1≤r1<2&&1≤r2<2,则f进行(23)分割策略,
如果满足条件1≤r1<2&&r2≥2,则f进行(22)分割策略,
如果满足条件r1≥2&&r2≥2,则f进行(21)分割策略;
其中:n=1、2或3;r1为e2/e1,r2为e3/e1;
分割策略:
(21)计算出三角片f的重心cp,并连接f的3个顶点与重心cp,将f一分为三,f的opf不再进行计算,转至步骤(3);
(22)如果从(12)进入,则设定e2为f唯一一条可分割边,计算出e2的中点,并连接e2所对应的顶点,将f一份为二,e2所对应的opf2则转至进行(11)-(13);
如果从(24)进入,则将f与fx的公共边设定为e2,计算e2的中点,并连接e2所对应的fx的顶点将fx一分为2,新分割的三角片不再处理,转至步骤(3);
(23)计算f的三条边的中点,连接三个中点,将f一分为四,f的三个相邻面opf则进行(21)分割策略,然后再进行(24)分割策略;
(24)将opf分割出的三个三角片中直接与f相连的三角片设定为fx,进行(22)分割策略;
(3)将队列中的三角片f以及其opf1、opf2和opf3分割产生的新的三角片再加入到队列中,将f以及其经过分割后的opf1、opf2和opf3标记为弃用,如果队列中的所有三角片f的面积值均小于maxs,则转至步骤(4),否则则转入步骤(2);
(4)将保存的三角片关系存到原来的网格结构中。
2.根据权利要求1所述的部分曲面细分方法,其特征在于:所述分割策略(21)中的重心可替换为内心。
3.根据权利要求1所述的部分曲面细分方法,其特征在于:还包括方法执行前或者方法执行后对网格结构进行平滑处理的步骤。
4.根据权利要求3所述的部分曲面细分方法,其特征在于:所述的平滑处理为高斯平滑处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610912196.0A CN106504249B (zh) | 2016-10-19 | 2016-10-19 | 部分曲面细分方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610912196.0A CN106504249B (zh) | 2016-10-19 | 2016-10-19 | 部分曲面细分方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106504249A CN106504249A (zh) | 2017-03-15 |
CN106504249B true CN106504249B (zh) | 2019-03-19 |
Family
ID=58294413
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610912196.0A Active CN106504249B (zh) | 2016-10-19 | 2016-10-19 | 部分曲面细分方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106504249B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877640A (zh) * | 2006-07-05 | 2006-12-13 | 中山大学 | 一种基于三角形插值曲面细分的几何数据细分方法 |
CN101833778A (zh) * | 2010-03-29 | 2010-09-15 | 中山大学 | 一种满足几何约束的细分方法 |
CN104616327A (zh) * | 2014-07-31 | 2015-05-13 | 浙江大学 | 一种基于曲面细分的着色器简化方法、装置及图形渲染方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009301284A (ja) * | 2008-06-12 | 2009-12-24 | Toshiba Corp | 描画装置および方法 |
-
2016
- 2016-10-19 CN CN201610912196.0A patent/CN106504249B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877640A (zh) * | 2006-07-05 | 2006-12-13 | 中山大学 | 一种基于三角形插值曲面细分的几何数据细分方法 |
CN101833778A (zh) * | 2010-03-29 | 2010-09-15 | 中山大学 | 一种满足几何约束的细分方法 |
CN104616327A (zh) * | 2014-07-31 | 2015-05-13 | 浙江大学 | 一种基于曲面细分的着色器简化方法、装置及图形渲染方法 |
Non-Patent Citations (2)
Title |
---|
基于细分的曲线曲面变形技术研究;张湘玉;《中国博士学位论文全文数据库 信息科技辑》;20120715;第3.4.2节 |
点云数据配准及曲面细分技术研究;薛耀红;《中国博士学位论文全文数据库 信息科技辑》;20101015;第3.1.3.5节 |
Also Published As
Publication number | Publication date |
---|---|
CN106504249A (zh) | 2017-03-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10204446B2 (en) | Adaptively zippering meshes | |
CN103279989B (zh) | 一种三维激光成像系统平面点云数据三角化处理方法 | |
KR101669819B1 (ko) | 깊이 영상의 고정밀 복원을 위한 필터링 장치 및 방법 | |
De-Maeztu et al. | Near real-time stereo matching using geodesic diffusion | |
CN105761252A (zh) | 图像分割的方法及装置 | |
WO2023087893A1 (zh) | 对象处理方法、装置、计算机设备、存储介质及程序产品 | |
CN106960470B (zh) | 三维点云曲面重建方法及装置 | |
US10922852B2 (en) | Oil painting stroke simulation using neural network | |
CN106204461A (zh) | 结合非局部先验的复合正则化图像去噪方法 | |
Wei et al. | Feature-preserving optimization for noisy mesh using joint bilateral filter and constrained Laplacian smoothing | |
KR100959349B1 (ko) | 그래픽스 처리 유닛을 이용한 사진트리 기반의 지형 렌더링 방법을 가속화하는 방법 | |
CN111508054B (zh) | 地形构建方法、装置及设备 | |
CN106504249B (zh) | 部分曲面细分方法 | |
JP6294700B2 (ja) | 画像処理装置及び画像処理方法 | |
Dyken et al. | Semi‐Uniform Adaptive Patch Tessellation | |
US8907976B2 (en) | Resolution-adaptive mesh smoothing brush | |
CN110909473B (zh) | 基于SP H与shape matching混合模型的动态流固交互仿真方法 | |
CN107507279A (zh) | 基于快速凸壳技术的三角网生成方法 | |
CN105224325B (zh) | 渲染方法和装置 | |
Huang et al. | Feature-adaptive rendering of loop subdivision surfaces on modern GPUs | |
CN102938139B (zh) | 一种找茬游戏图像自动合成方法 | |
CN107633543B (zh) | 考虑局部拓扑结构的线条形状对应方法 | |
CN106447753B (zh) | 一种物体模型的渲染简化的方法及系统 | |
CN105427354B (zh) | 基于平面块集合的图像矢量化表达方法 | |
CN110033511A (zh) | 区域块计算复杂度的预估方法、并行光路追踪方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 266000 room 120-61, A building, 43 Zhengzhou Road, Shibei District, Qingdao, Shandong (centralized office area) Applicant after: Qingdao Da Vinci Technology Co., Ltd. Address before: 266000 room 120-61, A building, 43 Zhengzhou Road, Shibei District, Qingdao, Shandong (centralized office area) Applicant before: QINGDAO LANXIN MEDICAL TECHNOLOGY CO., LTD. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |