图像处理中对含内孔多边形的剖分方法

文档序号:85563阅读:521来源:国知局
专利名称:图像处理中对含内孔多边形的剖分方法
技术领域
本发明属于微机电系统设计与计算机图形学领域,涉及一种图像处理方法。
背景技术
在微机电系统集成化设计环境中,实现器件三维实体到二维版图的转换,可以简化器件的版图绘制,提高设计效率。三维实体到二维版图的转换从几何上看可以认为是器件三维实体模型沿z方向的二维投影。
为了叙述简便,本发明引入环和域等概念。根据拓扑学术语,环由多边形的边界构成,构成外部多边形边界的顶点系列称为外环,构成内部的多边形边界的顶点系列称为内环。环形成的闭合区域称为域。所有圆弧均用近似多边形表示。在微机电系统中,器件三维实体经常含有内孔,因此,转换得到的二维版图存在以下三个特点1.有且只有一个外环,但可能存在多个内环。
2.外环与内环不相交。
3.内环之间不相交。
在下面的陈述中,所述的环用R加数字标号表示。
设有一个长方体,含有一个内孔,将该三维实体转换为二维版图之后,理想的二维版图是从外环形成的域R2减去内环形成的域R1。但是由于二维版图不能直接描述出一个含有内孔的多边形,即内环形成的域R1会被外环形成的域R2淹没。因此,在转换过程中需要对含内孔的多边形进行剖分,剖分目的是将含有内孔的多边形区域剖分为多个不含内孔的多边形区域的组合,该含内孔长方体的二维版图被剖分成了不含内孔的多边形区域R3和R4的组合。
目前有关多边形剖分方法的研究比较活跃,如1995年清华大学的闵卫东研究了二维任意多边形的Delaunay三角剖分,1999年马小虎等人提出了基于凹凸顶点判定的简单多边形Delaunay三角剖分,2003年邱龙辉等人提出了梯形化多边形剖分方法。
上述多边形剖分方法的主要目的是为了降低多边形的复杂度,将多边形剖分为多个简单几何图形,它们的主要特点是剖分时间长,但得到的简单几何图形方便后续处理。而微机电系统器件一般都包含大量的梳齿、梁等结构,因此,直接转换得到的二维版图通常都由复杂多边形构成,其边数甚至高达数万,且通常含有多个复杂内孔,在二维版图的描述与剖分后得到的几何图形是否简单无关的情况下,使用上述方法的计算成本太高,因此它们对于剖分微机电系统设计中直接由三维实体转换得到的二维版图并不适合。

发明内容为了克服现有技术过程复杂、计算成本过高的不足,本发明针对微机电系统设计中三维实体到二维版图转换过程研究了一种计算效率高的含内孔多边形的剖分方法。
本发明提出的用于微机电系统三维实体到二维版图转换的多边形剖分方法包括以下的步骤步骤1初始化,设定各环和各顶点。从外环顶点序列中任选一个作为初始顶点,将外环其它顶点和初始顶点按顺时针排列,然后存入外环链表中;分别从内环顶点序列中任选一个作为相应内环的初始顶点,将内环的其它顶点和初始顶点按逆时针排列,然后存入内环链表中。内环之间按环的最大y坐标由大到小进行排列,对于最大y坐标相同的内环,按其最大x坐标由小到大排列,即内环链表中第一个内环的最大y坐标最大。如果环的边界为圆弧,则取其逼近多边形后设定各顶点。
步骤2将外环链表中的最后一个外环作为当前外环,如果内环链表不为空,将第一个内环作为当前内环,否则转步骤6。
步骤3从初始顶点开始遍历当前内环的所有顶点,查找y坐标最大点并记为y1,查找y坐标次大点并记为y2,如果一个内环同时含有多个相等的y坐标最大点,则将首先找到的作为y坐标最大点y1,第二次找到的作为y坐标次大点y2。
步骤4过y1作沿y轴正方向的射线,与当前外环相交,如果交点有多个,则取与y1距离最近的点,并记为t1,然后过y2作沿y轴方向的射线,与当前外环相交,如果交点有多个,则取与y2距离最近的点,并记为t2,将t1、t2按顺时针顺序插入到当前外环的顶点序列中。
步骤5剖分外环。遍历当前内环中位于y1、y2之间和当前外环中位于t2、t1之间的所有顶点,将这些顶点按顺时针顺序,由y1、y2、t2、t1和它们之间的顶点构成一个新的多边形外环,将其存入外环链表中;然后遍历当前外环的所有顶点和当前内环的剩余顶点,由当前外环的初始顶点开始按顺时针排列顺序构成另外一个多边形外环,将其存入外环链表中,并删除当前内环和当前外环,然后转步骤2。
步骤6剖分结束,剖分结果由外环链表中的所有外环组成。
本发明的有益效果是提出了一种可用于微机电系统三维实体到二维版图转换的多边形剖分方法,使剖分后的器件二维版图能够得到正确描述,提高微机电系统的设计效率。
下面结合附图和实施例对本发明进一步说明。
图1(a)是含一个内孔的长方体模型,(b)是未进行多边形剖分得到的二维工艺版图,其内孔被淹没,(c)是进行多边形剖分后得到的二维版图。
图2是本发明的流程图。
图3是阵列式压力传感器在剖分前的二维版图。
图4是剖分后阵列式压力传感器的二维版图。
图5是剖分前的微机械陀螺的二维版图。
图6是剖分内环R20的二维版图。
图7(a)为剖分内环R21的二维版图,(b)为剖分内环R20的结果。
图8(a)为剖分内环R22的二维版图,(b)为剖分内环R21的结果。
图9(a)为剖分内环R23的二维版图,(b)为剖分内环R22的结果。
图10(a)为剖分内环R24的二维版图,(b)为剖分内环R23的结果。
图11(a)为完全剖分后剩余外环R35的二维版图,(b)为剖分内环R24的结果。
图12是剖分后得到的微机械陀螺的二维版图。
具体实施方式为了表达方便,在下面的陈述中,图中所示的多边形的顶点用V加数字标号表示,图中所示的两线交点用P加数字标号表示。
实施实例1一种压力传感器阵列的二维版图的剖分过程。
步骤1初始化。附图3是一种压力传感器阵列的二维版图,它由一个外环R9和四个顺时针排列的内环R5、R6、R7、R8组成,内环的排列顺序为R5、R6、R7、R8;内环的各顶点逆时针排列,排列顺序分别如下,R5v1、v2、v3、v4,R6v5、v6、v7、v8,R7v9、v10、v11、v12,R8v13、v14、v15、v16;外环R9的顶点顺时针排列,顺序为v17、v18、v19、v20。将所有内环和外环分别存入内、外环链表中。
循环一剖分内环R5。参照附图4。
步骤2将外环R9作为当前外环,内环R5作为当前内环。
步骤3查找内环R5的最大y坐标顶点和次大y坐标顶点,记为v3、v4。
步骤4通过v3、v4分别沿y轴正方向作两条射线,与当前外环相交得到交点p1、p2,将p1、p2按顺时针顺序插入到外环R9的顶点序列中。
步骤5由内环R5中顶点v3、v4和外环R9中顶点p2、p1按顺时针构成一个新的外环R10,存入外环链表中;由外环R9的所有顶点和内环R5的顶点v1、v2按顺时针构成新的当前外环R11,存入外环链表中,并删除循环一开始时的外环R9和内环R5。
循环二剖分内环R6。
步骤2将外环R11作为当前外环,内环R6作为当前内环。
步骤3查找内环R6的最大y坐标顶点v7和次大y坐标顶点v8,记为v7、v8。
步骤4通过v7、v8沿y轴正方向作两条射线,与当前外环R11相交得到交点p3、p4;将p3、p4按顺时针顺序插入到外环R11的顶点序列中。
步骤5由内环R6中顶点v7、v8和外环R11中顶点p4、p3按顺时针构成一个新的外环R12,存入外环链表中;由外环R11的所有顶点和内环R6的顶点v5、v6按顺时针构成新的当前外环R13,存入外环链表中,并删除循环二2开始时的外环R11和内环R6。
循环三剖分内环R7。
步骤2将外环R13作为当前外环,内环R7作为当前内环。
步骤3查找内环R7的最大y坐标顶点v11和次大y坐标顶点v12,记为v11、v12。
步骤4通过v11沿y轴正方向作一条射线,与当前外环R13相交得到两个交点v2、p1,取距离v11较近点v2。然后通过v12沿y轴正方向作一条射线,与当前外环R13相交得到两个交点v1、p2,取距离v12较近点v1。由于v2、v1是当前外环R13的顶点,故无需再次将v2、v1插入到当前外环R13中。
步骤5由内环R7中顶点v11、v12和外环R13中顶点v1、v2按顺时针构成一个新的外环R14,存入外环链表中;由外环R13的所有顶点和内环R7的顶点v9、v10按顺时针构成新的当前外环R15,存入外环链表中,并删除循环三开始时的外环R13和内环R7。
循环四剖分内环R8。
步骤2将外环R15作为当前外环,内环R8作为当前内环。
步骤3查找内环R8的最大y坐标顶点v15和次大y坐标顶点v16,记为v15、v16。
步骤4通过v15沿y轴正方向作一条射线,与当前外环R15相交得到两个交点v6、p3,取距离v15较近点v6。然后通过v16沿y轴正方向作一条射线,与当前外环R15相交得到两个交点v5、p4,取距离v16较近点v5。由于v6、v5是当前外环R15的顶点,故无需再次将v6、v5插入到当前外环R15中。
步骤5由内环R8中顶点v15、v16和外环R15中顶点v5、v6按顺时针构成一个新的外环R16,存入外环链表中;由外环R15的所有顶点和内环R8的顶点v13、v14按顺时针构成新的当前外环R17,存入外环链表中,并删除循环四开始时的外环R15和内环R8。
步骤6剖分结束,得到最终的二维版图。
实施实例2一种简化的微机械陀螺二维版图的剖分过程。
步骤1初始化。附图5是一种微机械陀螺的二维版图,它由一个外环R25和五个内环组成,内环的排列顺序为R20、R21、R22、R23、R24,图中v25、v26、v27、v28、v29分别是各内环的初始顶点。将所有内环和外环分别存入内、外环链表中。
循环一剖分内环R20。
步骤2参照附图6,将外环R25作为当前外环,内环R20作为当前内环。
步骤3查找内环R20的最大y坐标顶点和次大y坐标顶点,记为v30、v31。
步骤4通过v30、v31分别沿y轴正方向作射线,与当前外环R25相交得到交点p5、p6;将p5、p6按顺时针顺序插入到当前外环R25的顶点序列中。
步骤5由内环R20中顶点v30、v31和当前外环R25中顶点p6、p5以及它们之间的顶点按顺时针构成一个新的外环R26,参照附图7(b),存入外环链表中;由当前外环R25和内环R20的其它顶点按顺时针构成新的当前外环R27,参照附图7(a),存入外环链表中,并删除循环一开始时的当前外环R25和内环R20。
循环二剖分内环R21。
步骤2参照附图7(a),将外环R27作为当前外环,内环R21作为当前内环。
步骤3查找内环R21的最大y坐标顶点和次大y坐标顶点,记为v32、v33。
步骤4通过v32、v33分别沿y轴正方向作射线,与当前外环R27相交得到交点p7、p8;将p7、p8按顺时针顺序插入到外环R27的顶点序列中。
步骤5由内环R21中顶点v32、v33和当前外环R27中顶点p8、p7以及它们之间的顶点按顺时针构成一个新的外环R28,参照附图8(b),存入外环链表中;由当前外环R27和内环R21的其它顶点按顺时针构成新的当前外环R29,参照附图8(a),存入外环链表中,并删除循环二开始时的当前外环R27和内环R21。
循环三剖分内环R22。
步骤2参照附图8(a),将外环R29作为当前外环,内环R22作为当前内环。
步骤3查找内环R22的最大y坐标顶点和次大y坐标顶点,记为v34、v35。
步骤4通过v34沿y轴正方向作一条射线,与当前外环R29相交,得到三个交点,取距离v34最近的交点记为p9;通过v35沿y轴正方向作一条射线,与当前外环R29相交,也得到三个交点,取距离v35最近的交点记为p10;将p9、p10按顺时针顺序插入到外环R29的顶点序列中。
步骤5由内环R22中顶点v34、v35和当前外环R29中顶点p10、p9按顺时针构成一个新的外环R30,参照附图9(b),存入外环链表中;由当前外环R29和内环R22的其它顶点按顺时针构成新的当前外环R31,参照附图9(a),存入外环链表中,并删除循环三开始时的当前外环R29和内环R22。
循环四剖分内环R23。
步骤2参照附图9(a),将外环R31作为当前外环,内环R23作为当前内环。
步骤3查找内环R23的最大y坐标顶点和次大y坐标顶点,记为v36、v37。
步骤4通过v36沿y轴正方向作一条射线,与当前外环R31相交,得到三个交点,取距离v36最近的交点记为p11;通过v37沿y轴正方向作一条射线,与当前外环R31相交,也得到三个交点,取距离v37最近的交点记为p12;将p11、p12按顺时针顺序插入到外环R31的顶点序列中。
步骤5由内环R23中顶点v36、v37和当前外环中顶点p12、p11按顺时针构成一个新的外环R32,参照附图10(b),存入外环链表中;由当前外环R31和内环R23的其它顶点按顺时针构成新的当前外环R33,参照附图10(a),存入外环链表中,并删除循环四开始时的当前外环R31和内环R23。
循环五剖分内环R24。
步骤2参照附图10(a),将外环R33作为当前外环,内环R24作为当前内环。
步骤3查找内环R24的最大y坐标顶点和次大y坐标顶点,记为v38、v39。
步骤4通过v38沿y轴正方向作一条射线,与当前外环R33相交,得到四个交点,取距离v38最近的交点记为p13;通过v39沿y轴正方向作一条射线,与当前外环R33相交,得到七个交点,取距离v39最近的交点记为p14;将p13、p14按顺时针顺序插入到外环R33的顶点序列中。
步骤5由内环R24中顶点v38、v39和当前外环R33中顶点p14、p13按顺时针构成一个新的外环R34,参照附图11(b),存入外环链表中;由当前外环R33和内环R24的其它顶点按顺时针构成另外一个外环R35,参照附图11(a),存入外环链表中,并删除循环五开始时的当前外环R33和内环R24。
步骤6剖分结束,得到最终陀螺的二维版图,描述参照附图12。
权利要求
1.图像处理中对含内孔多边形的剖分方法,其特征在于包括下述步骤(a)初始化,设定各环和各顶点,存入外环链表和内环链表中;(b)将外环链表中的最后一个外环作为当前外环,如果内环链表不为空,将第一个内环作为当前内环,否则转步骤(f);(c)查找y坐标最大点并记为y1,查找y坐标次大点并记为y2;(d)过y1作沿y轴正方向的射线,与当前外环相交,如果交点有多个,则取与y1距离最近的点,并记为t1,然后过y2作沿y轴方向的射线,与当前外环相交,如果交点有多个,则取与y2距离最近的点,并记为t2,将t1、t2按顺时针顺序插入到当前外环的顶点序列中;(e)剖分外环,将其存入外环链表中,并删除当前内环和当前外环,然后转步骤(b);(f)剖分结束,剖分结果由外环链表中的所有外环组成。
2.根据权利要求
1的图像处理中对含内孔多边形的剖分方法,其特征在于所述的步骤(a)从外环顶点序列中任选一个作为初始顶点,将外环其它顶点和初始顶点按顺时针排列,然后存入外环链表中;分别从内环顶点序列中任选一个作为相应内环的初始顶点,将内环的其它顶点和初始顶点按逆时针排列,然后存入内环链表中;内环之间按环的最大y坐标由大到小进行排列,对于最大y坐标相同的内环,按其最大x坐标由小到大排列,即内环链表中第一个内环的最大y坐标最大;如果环的边界为圆弧,则取其逼近多边形后设定各顶点。
3.根据权利要求
1的图像处理中对含内孔多边形的剖分方法,其特征在于所述的步骤(c)从初始顶点开始遍历当前内环的所有顶点,查找y坐标最大点并记为y1,查找y坐标次大点并记为y2,如果一个内环同时含有多个相等的y坐标最大点,则将首先找到的作为y坐标最大点y1,第二次找到的作为y坐标次大点y2。
4.根据权利要求
1的图像处理中对含内孔多边形的剖分方法,其特征在于所述的步骤(e)遍历当前内环中位于y1、y2之间和当前外环中位于t2、t1之间的所有顶点,将这些顶点按顺时针顺序,由y1、y2、t2、t1和它们之间的顶点构成一个新的多边形外环,将其存入外环链表中;然后遍历当前外环的所有顶点和当前内环的剩余顶点,由当前外环的初始顶点开始按顺时针排列顺序构成另外一个多边形外环,将其存入外环链表中,并删除当前内环和当前外环,然后转步骤(b)。
专利摘要
本发明公开了一种图像处理中对含内孔多边形的剖分方法。该方法首先对含内孔的多边形初始化,设定各环和各顶点,存入外环链表和内环链表中;设定当前外环和内环;获取当前内环最大和次大y坐标顶点,并通过它们作沿y轴正方向的射线与当前外环相交,剖分外环,将其存入外环链表中;继续剖分第二个内环直至所有内环剖分完毕,最终剖分结果由外环链表中的所有外环组成。本发明可用于微机电系统设计中三维实体到二维版图的转换,有助于提高微机电系统的设计效率。
文档编号G06F17/50GK1996383SQ200610105221
公开日2007年7月11日 申请日期2006年12月21日
发明者苑伟政, 徐景辉, 常洪龙, 谢建兵 申请人:西北工业大学导出引文BiBTeX, EndNote, RefMan
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1