一种人体髋部模型网格划分方法与流程

文档序号:11204746阅读:670来源:国知局
一种人体髋部模型网格划分方法与流程

本发明涉及人体髋部模型网格划分方法。



背景技术:

1、模型简化方面:人体髋部模型数据量大,曲面复杂,需要进行快速高分辨率地的简化操作,现有技术针对人体组织复杂模型的简化算法研究有限,简化结果不能满足髋部模型的简化要求,不能有效保留原模型几何特征。

2、网格划分方面:髋部模型表面分界轮廓线不明显,形状不规则,特征不突出,现有网格划分技术无法完成髋部模型的一次性高质量自动网格划分。



技术实现要素:

本发明是为了解决现有模型简化方法的简化结果不能满足髋部模型的简化要求的问题,而提出的一种人体髋部模型网格划分方法。

一种人体髋部模型网格划分方法按以下步骤实现:

步骤一:进行髋部模型的简化;

步骤二:模型简化后进行子域曲面重建;

步骤三:根据步骤二进行网格尺寸控制;

步骤四:根据步骤三进行特征点计算和区域边界的离散;

步骤五:步骤四完成后进行表面网格和体网格的生成。

发明效果:

为了获得高质量的人体髋部网格划分结果,本发明算法以边折叠算法为基础,实现高比例模型简化,并在折叠矩阵中引入顶点局部区域的面积,并对迭代累积误差平均,有效避免了折叠代价的积累,保证简化模型原有的几何形状特征。本发明通过联合利用波前推进算法和Delaunay算法,构建综合尺寸场实现局部网格加密,更好地适应复杂模型几何形状,针对人体髋部简化后的几何模型生成的表面网格单元均匀、过渡平缓,有利于体网格形成,增加计算的精确性。

1、针对MC算法得到的髋部几何模型,含有大量三角面片,对后续计算造成很大压力,本发明通过改进二次误差测度(QEM)的边折叠算法对复杂的表面网格模型进行简化。利用Metro定量分析简化前后髋部股骨和股外侧肌模型,简化比例为80%时,本专利股骨简化结果的Mean距离误差为0.037397mm,明显小于经典算法和现有软件的0.062644mm、0.482732mm,证明本专利算法能够实现简化操作,且保持良好的原模型几何特征。

2、根据髋部模型具有组成表面分界轮廓线不明显,形状不规则,特征不突出等特点,本专利基于AFT算法,改进局部坐标转换,避免映射时网格畸变,得到三角形单元形状规则;在尺寸控制时构建综合尺寸控制函数进行局部网格加密,生成的表面网格均匀、过渡平缓,且保持了原模型的几何特征。全局尺寸为5mm股骨网格结果,相比于现有软件AFT算法直接绘制的表面网格,最小角在45°~60°之间优质三角形占比由77.75%提高到90.85%;Hausdorf距离误差由6.445955mm下降到1.100910mm。

3、利用Waston-Bowyer逐点插入法完成髋部模型内部的Delaunay四面体网格划分,此时并未更改表面网格形状,从而使体网格有一定自适应能力。利用Tet collapse对单元质量进行分析,优质四面体数量占比17.81%,略高于现有方法结果的16.31%。

4、利用本发明提出的方法能够实现所有髋部模型的网格划分,其中股内侧肌和股中肌模型在现有软件中无法直接完成划分,提示边界面角过大,而在本发明设计的程序中能够进行有效网格划分,证明所提出的网格划分方法对复杂模型有更强的适应能力。

5、在进行髋部组织模型装配时,由于网格划分结果更加逼近原始几何模型,使得装配模型间配合更加准确,这对于有限元力学计算的收敛意义重大。

附图说明

图1为股骨原始模型图;

图2为股骨模型40%简化图;

图3为股骨模型80%简化图;

图4为股骨模型97.5%简化图;

图5为股骨网格加密图;

图6为股外侧肌表面网格模型图;

图7为股外侧肌体网格剖视图;

图8为髋部装配模型示意图;

图9为总体设计流程图。

具体实施方式

具体实施方式一:如图9所示,一种人体髋部模型网格划分方法包括以下步骤:

步骤一:进行髋部模型的简化;

步骤二:模型简化后进行子域曲面重建;

步骤三:根据步骤二进行网格尺寸控制;

步骤四:根据步骤三进行特征点计算和区域边界的离散;

步骤五:步骤四完成后进行表面网格和体网格的生成。

具体实施方式二:本实施方式与具体实施方式一不同的是:所述步骤一中进行髋部模型的简化的具体过程为:

模型简化算法:

基于QEM的边折叠算法能够很好地保持原模型的特征约束和几何形状信息,但是随着简化比例增大,新生成的顶点折叠代价会不断积累,直到特征边缘部分的边小于模型平缓区域的边,从而导致错误的选择边缘部分进行简化,最终影响模型网格划分的精度。本专利对折叠代价函数采用均值,从而获得更好的折叠排序;另外考虑到用顶点邻接几何元素的影响,将三角形的面积融合到折叠代价函数中,表示为:

<mrow> <msub> <mi>Q</mi> <mrow> <mi>v</mi> <mi>i</mi> </mrow> </msub> <mo>=</mo> <mrow> <mo>(</mo> <munderover> <mo>&Sigma;</mo> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>n</mi> </munderover> <msub> <mi>f</mi> <mi>i</mi> </msub> <msub> <mi>Q</mi> <mi>i</mi> </msub> <mo>)</mo> </mrow> <mo>/</mo> <mi>n</mi> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow>

其中n是与包含顶点vi三角形的个数,Qi和fi分别为与包含该顶点i个三角形平面的二次误差测度和三角形的面积。

模型简化结果:

对输入数据规模为512×512×140的两组经过预处理的CT图像,经由MC方法进行表面重建得到由大量三角面片组成的股骨模型,并对模型进行指定不同面片数量(即不同简化比例)的简化操作,模型简化结果如图1—图4所示。图1为股骨原始模型,含有284572个三角形,图2、图3、图4为简化后模型,简化比例分别为40%、80%和97.5%。

其它步骤及参数与具体实施方式一相同。

具体实施方式三:本实施方式与具体实施方式一或二不同的是:所述步骤二中进行子域曲面重建的具体过程为:

首先对简化后的模型进行表面三角形网格划分,然后对离散化的三角模型进行四面体填充,通过联合利用波前推进算法和Delaunay算法,更好地控制网格划分过程,不仅实现模型的高质量网格划分,而且保证模型的几何精度。

模型简化操作后导出文件为STL文件,通过一组表面三角面片来进行封闭模型的边界表示,存储格式分为二进制和ASCII两种。本发明采用ASCII码格式,基本的记录信息包含三角形顶点和法向量信息,不包含拓扑关系。为保证子域曲面重建结果更加逼近原模型,简化模型中的边界边、脊线和角点应该被保留。

将简化模型表面分解为多个子域曲面,通过设置相邻三角面片夹角阈值的染色算法来进行模型特征的识别,并将特征定义在子域的边界上,完成模型分解。在子域识别过程中,若设置的角度阈值较小,简化模型就会被分解成过多的子域,则会在子域中引入很多非特征边界。因此,为了避免这种情况的发生,本研究角度阈值取为30°,针对分解后子域曲面由邻接离散三角面片组成的特点,本研究通过为每个三角形构建一个一阶连续的三角Bemstein-Bézier(B-B)曲面片来重建连续子域曲面。

其它步骤及参数与具体实施方式一或二相同。

具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:所述步骤三中进行网格尺寸控制的具体过程为:

通过网格尺寸场中的尺寸信息可以获得区域内任意点所需的单元理想尺寸值。综合考虑了用户定义的尺寸信息和曲面几何自适应尺寸信息,将采样点的理想尺寸表示为:

h=max(min(hk,hl,hmax),hmin) (2)

其中hmax为用户指定最大尺寸,hmin为用户指定最小尺寸,hk为曲率特征的自适应尺寸,hl为邻近特征自适应尺寸。

其它步骤及参数与具体实施方式一至三之一相同。

具体实施方式五:本实施方式与具体实施方式一至四之一不同的是:所述步骤四中进行特征点计算和区域边界的离散的具体过程为:

为了划分后的网格尽可能逼近重建曲面,提高网格模型的几何精度,本研究将模型的特征点优先确定为单元的节点,模型的边界定义为单元的边界,所以模型曲面重建后的第一步是确定模型特征点的位置,特征点包括三类:交汇点(至少三个面相交的特殊节点)、极值点(在一个封闭的边界上,x,y,z的极大值点或极小值点)、其他特征点(由边界退化形成的点)。

确定特征点后,根据尺寸控制信息要求对区域边界离散,为保证不同子域曲面的相容性,优先考虑公共边界,最终得到边界离散节点以及节点的网格尺寸控制信息。优先选择交汇点作为初始点,极值点和其他特征点在边界离散的过程中作为新节点使用。

边界的离散首先从公共边界曲线中选取节点x0作为初始点,预测和修正得到下一个点,对曲线沿切线方向进行分段离散,直至终止点结束,设当前节点为xk,计算得到该点对应的切向量为tk,则预测下一个节点位置为:

<mrow> <msup> <mover> <mi>x</mi> <mo>~</mo> </mover> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msup> <mo>=</mo> <msup> <mi>x</mi> <mi>k</mi> </msup> <mo>+</mo> <mi>h</mi> <mo>&CenterDot;</mo> <msup> <mi>t</mi> <mi>k</mi> </msup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

将预测点投影到曲线上,得到新的节点xk+1

<mrow> <mo>|</mo> <mo>|</mo> <msup> <mi>x</mi> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msup> <mo>-</mo> <msup> <mover> <mi>x</mi> <mo>~</mo> </mover> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msup> <mo>|</mo> <mo>|</mo> <mo>=</mo> <mi>O</mi> <mrow> <mo>(</mo> <mo>|</mo> <mo>|</mo> <msup> <mover> <mi>x</mi> <mo>~</mo> </mover> <mrow> <mi>k</mi> <mo>+</mo> <mn>1</mn> </mrow> </msup> <mo>-</mo> <msup> <mi>x</mi> <mi>k</mi> </msup> <mo>|</mo> <msup> <mo>|</mo> <mn>2</mn> </msup> <mo>)</mo> </mrow> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>

||xk+1-x~k+1||≤c||x~k+1-xk|| (5)

式中c为常数,取值为0.1;

对公式(5)进行判断,当公式(5)不成立时,改变步长h为原来的一半,重复上述过程公式(3)到公式(5),直到整个边界曲线被分割为期望的网格尺寸线段;最后将所有得到的节点集合存储在ADT树中。

其它步骤及参数与具体实施方式一至四之一相同。

具体实施方式六:本实施方式与具体实施方式一至五之一不同的是:所述步骤五中进行表面网格和体网格的生成的具体过程为:

在曲面重建、特征点和边界离散计算完成后,将进行子域曲面网格的生成,结合局部映射法将待划分曲面映射到二维平面上,运用二维的波前推进法划分,并将划分结果反映射到曲面上生成曲面域的三角形网格;在表面网格的基础上,采用Delaunay算法中的Waston-Bowyer逐点插入法实现髋部模型四面体网格划分。

实施例一:

本发明在Visual Studio 2010环境下实现网格划分的程序设计,应用本发明设计的网格划分方法对简化后股骨模型、股外侧肌模型进行网格划分,结果如图5至图7所示,其中图5是股骨网格加密效果图;图6是股外侧肌表面网格模型,图7是股外侧肌体网格剖视图。从图5至图7可以看到:本研究设计的网格划分方法在模型曲率较大区域进行自适应表面网格划分,得到单元形状接近于等边三角形、过渡平缓,适应了模型的曲率变化,保持了模型的几何形状特征,如图5、图6中1点所示;为有效描述曲面形状,在模型特征约束较多区域进行网格加密,更好的适应复杂曲面,保持模型的几何精度,如图6中2点所示;在体网格划分时,四面体单元过渡平稳,如图7所示。

由于人体髋部肌肉复杂和二维图像数据精度的限制,本发明将位置相邻、功能相近的肌肉和一些小块组织合并建模,共建立人体髋部骨骼2块、肌肉13块,关节软骨1块,利用本研究提出的方法对髋部模型进行简化和网格划分,结果如图8所示。利用本研究提出的方法能够实现所有髋部模型的网格划分,其中股内侧肌和股中肌模型在HyperMesh中无法直接完成划分,提示边界面角过大,而在本研究设计的程序中能够进行有效网格划分,证明所提出的网格划分方法对复杂模型有更强的适应能力;在进行髋部组织模型装配时,由于网格划分结果更加逼近原始几何模型,使得装配模型间配合更加准确,这对于有限元力学计算的收敛意义重大;从图8中可以看到在模型曲率大的区域网格明显加密,过渡平缓。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1