999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Quad?Edge結構的散亂點集三角剖分并行算法研究及實現

2015-04-12 00:00:00付劍生馬存良
現代電子技術 2015年6期

摘 "要: 三角剖分算法在計算幾何中的地位非常重要,其中三角網格的剖分效率及質量對后續研究有著重要的影響。對Delaunay三角剖分算法的基本原理進行了分析,基于散亂點集研究了基于Quad?Edge結構下的分治算法,并將目前流行的Map?Reduce并行編程模型引入到對散亂點集進行基于Delaunay三角剖分中。實驗結果表明基于Map?Reduce編程模型實現的三角剖分并行化在大數據量的情況下大大提高了剖分的效率,速度明顯高于基于Quad?Edge結構實現的分治算法以及基于三角形索引的Bowyer?Watson三角剖分算法,并且具有很好的彈性計算能力,這對三角剖分的后續研究有重要的借鑒作用。

關鍵詞: Delaunay三角剖分算法; Quad?Edge; 并行算法; 三角網格

中圖分類號: TN911?34 " " " " " " " " " " " 文獻標識碼: A " " " " " " " " " " " " " "文章編號: 1004?373X(2015)06?0028?03

Parallel algorithm of Delaunay triangulation dividing for scattered point set

based on Quad?Edge structure

FU Jian?sheng, MA Cun?liang

(Institute of Electromagnetic Field and Microwave Technology, Southwest Jiaotong University, Chengdu 610031, China)

Abstract: The triangulation dividing algorithm plays an important role in computational geometry, in which the efficiency and quality of triangular mesh are inseparably linked with the follow?up study. In this paper, the basic principle of Delaunay triangulation dividing algorithm is analyzed and the divide?and?conquer algorithm for scattered point set is investigated based on the Quad?Edge structure. The popular Map?Reduce parallel programming model is introduced to the Delaunay triangulation dividing algorithm when dealing with scattered point set. The experiment result shows the parallel triangulation dividing parallelization can improve the efficiency of this algorithm in the case of mass data by means of Map?Reduce Programming Model. Furthermore, this method has good elastic capacity and the efficiency is obviously higher than another two methods, namely the divide?and?conquer algorithm based on the Quad?Edge structure and the Bowyer?Watson triangulation dividing algorithm with triangular index.

Keywords: Delaunay triangulation algorithm; Quad?Edge; parallel algorithm; triangular mesh

0 "引 "言

有限元網格生成是工程科學與計算科學相交叉的重要研究領域,在計算機輔助設計、科學計算可視化、計算機圖形學、生物醫學和有限元分析等領域有著廣泛的應用。網格剖分做為有限元計算的前置處理技術,其運算的工作量在有限元計算分析過程中所占的比重非常大,此過程是否成功對后續的工作成果有重大的影響。本文中在保證網格質量的情況下,實現了基于三角形索引的Bowyer?Watson[1]三角剖分算法、基于Quad?Edge[2]結構下的三角剖分分治算法以及基于Map?Reduce[3?5]編程模型實現的三角剖分并行化并在大數據量的情況下進行測試,結果表明基于Map?Reduce編程模型實現的三角剖分并行化效率明顯高于另外兩個并且具有很好的彈性計算能力。

1 "Delaunay三角剖分算法

在數值分析、圖形學以及有限元分析中,三角剖分都是極其重要的一項預處理技術。而Delaunay[6?7]三角剖分是運用最多的三角剖分方法。其中Delaunay三角剖分必須符合兩個重要的準則:第一,空外接圓特性,即在Delaunay三角網格中任意四個點不能共圓,同時任一三角形的外接圓范圍內不能有其他的點存在;第二,最小內角最大,即在散點集形成的三角剖分中,所形成的三角形的最小角最大。在兩個相鄰的三角形構成凸四邊形的對角線中,在相互交換后,六個內角的最小角不再增大。

2 "基于三角形邊索引Bowyer?Watson算法

基于逐點插入法[8]的Bowyer?Watson算法是基于Bowyer算法與Watson算法并在兩者的基礎之上進行改進而來的,因其簡單易于實現而得到廣泛的應用。此算法的思想是首先構建包含所有散亂點集的超級大三角形,然后選擇其他未處理的離散點插入進來,在已經構成的三角形中查找這些三角形的外接圓包含這個新加入的散亂點的三角形,并把這些三角形刪除掉,那么會形成一個包含這個新插入點的多邊形,然后把這個點與多邊形的各個頂點進行連接,從而構成多個新的三角形網格,重復這樣的處理直到所有的點都處理完為止。此算法的相當大的時間損耗在了對空腔的查找,原始的算法要對形成的三角形進行遍歷查找,而基于三角形邊索引的方式則大大減少了對待插入點進行空腔查找的時間,此三角形邊索引的結構如圖1所示。

lt;E:\王芳\現代電子技術201506\現代電子技術15年38卷第6期\Image\45T1.tifgt;

圖1 三角形邊索引結構

在對查找到的三角形進行保存的時候同時保存三角形的三個鄰邊三角形。如圖1所示,在對Tri1的三角形進行保存的時候同時保存其三個鄰邊三角形,保存其邊13的鄰邊三角形為Tri2,12邊的臨邊三角形為Tri4,23邊的鄰邊三角形為Tri3。這樣在進行新點的插入尋找空腔時,只需要判斷插入點與三角形鏈表中第一個三角形的關系,判斷是在三角形內還是在某條邊的一側,如果在某條邊的一側那么對該邊的鄰接三角形再進行同樣判斷,如果在三角形內,那么對該三角形的三個邊的鄰邊三角形依次判斷待插入點是否在這些三角形的外接圓內,這樣就會形成一個包圍該點的空腔,將該插入點連接空腔的各個點形成新的三角形并做基于Delaunay優化準則的調整。

基于改進后的Bowyer?Watson大大提高了對包圍待插入點的空腔的尋找速度,從而提高了三角網格剖分的速度。

3 "基于Map?Reduce實現的三角剖分并行化

3.1 "Quad?Edge結構介紹

Quad?Edge結構是由Guibas提出的一種處理點與Voronoi[9?10]圖關系的數據結構,這種結構保存了Delaunay邊與Voronoi邊的對偶關系,使得基于Delaunay的三角剖分操作也相對容易得多,這種結構如圖2所示。

lt;E:\王芳\現代電子技術201506\現代電子技術15年38卷第6期\Image\45T2.tifgt;

圖2 Quad?Edge結構

在Quan?Edge結構中邊next為以點origin為起點并且對與[e(0)]邊的下一個邊可以以逆時針方向找到,同時由于存儲了Voronoi圖的兩邊[e(1)]與[e(3)],因此可以很容易從Delaunay三角網格圖轉換為Voronoi圖。在本程序中,主要是用來對Delaunay邊進行求解,所有都是為了簡化處理去除了對應的Voronoi邊。

3.2 "Map?Reduce并行計算模型

Map?Reduce是一種目前在云計算平臺上廣泛使用的并行編程模型,主要用于對大規模數據集的并行計算,Map(映射)和Reduce(歸并)是他的主要思想。Map?Reduce主要是通過啟動多個Task(任務),對不同的數據集進行處理返回相應Task的處理結果,然后對返回的結果集進行Reduce處理,從而得到最終的結果。從上可以看出,通過啟動不同的Task數量可以很輕松地實現并行計算能力的提升,具有很高的彈性計算能力。

3.3 "三角剖分算法基于Map?Reduce思想的實現

基于Map?Reduce并行編程思想的Delaunay三角剖分算法處理步驟如下:

第一步:輸入散亂點集的坐標,記錄相應點的坐標并根據x值將散亂點基于快速排序算法進行排序;

第二步:啟動多個Task(任務)并對數據進行分塊后分配給每個Task進行處理,在每個子集進行三角剖分的處理過程中使用Quad?Edge結構存儲剖分的數據,對于剖分的子過程可以使用改進后的Bowyer?Watson算法也可以使用分治算法[11],此程序在實現時使用的分治算法,并返回相應的剖分后的結果;

第三步:對返回的結果進行Reduce操作。對數據集進行合并時對于上下邊切線的查找使用Zig?Zag[2]算法,當Reduce處理完成后返回結果即為三角剖分的網格。該程序通過基于Map?Reduce進行處理的流程圖如圖3所示。

lt;E:\王芳\現代電子技術201506\現代電子技術15年38卷第6期\Image\45T3.tifgt;

圖3 Map?Reduce網格剖分過程

該程序中使用的主要數據結構及算法簡介如下:

/*定義邊的關系,基于Quad?Edge進行改進,去除對應的Voronoi邊關系*/

QuadEdge(void)

{

e[0].num = 0;

e[1].num = 1;

e[0].ePrev = amp;(e[1]);

e[0].eNext = amp;(e[1]);

e[1].ePrev = amp;(e[0]);

e[1].eNext = amp;(e[0]);

visited = 1;

}

//二維中點的x,y坐標值

Point2d(double tx, double ty)

: x(tx), y(ty)

{

}

//數據合并

delaunayMerge(MaxEdge retleft,MaxEdge retright)

{

//數據合并

MaxEdge rettemp; " " " " "http://臨時兩三角剖分結果相聯接

Edge *ldo, *ldi; " " " " " " " //包圍左邊剖分結果集的邊

Edge *rdo, *rdi; " " " " " //包圍右邊剖分結果集的邊

……

Return rettemp; " " " " " " " " " " "http://返回兩邊合并的結果集

}

4 "結果驗證及分析

在本測試算法中采用C++分別對基于三角形索引的Bowyer?Watson三角剖分算法、基于Quad?Edge結構下的三角剖分分治算法以及基于Map?Reduce編程模型實現的三角剖分并行化進行實現。其中對Map?Reduce并行實現啟動四個Task。通過隨機獲取散亂點集點數50~1 000 000個,分別通過以上三個程序進行處理的結果如表1所示。

表1 算法針對目標散亂點集的計算結果

通過表1看出,在對少量點集的運算時由于改進后的Bowyer?Watson算法處理完插點后要遍歷三角形鏈表,對含有初始構建大三角形頂點的三角形進行刪除操作,所以相對要慢些,同時由于Map?Reduce過程需要進行任務拆分合并需要消耗時間,效果也不會好于基于Quad?Edge結構的分治算法,但是當點集數量非常大時,基于Map?Reduce編程模型實現的三角剖分并行化要明顯優于其他兩個算法,在點數100萬的時候速度是改進后Bowyer?Watson算法效率的7倍,同時也要比Quad?Edge分治算法快得多,通過增加Task數量還可以進一步提高剖分效率。

圖4是對含有1萬個點的圓通過基于Map?Reduce編程模型實現的三角剖分并行化的剖分結果,從圖四可以看出剖分后的網格很好的符合了Delaunay三角剖分的優化準則。

lt;E:\王芳\現代電子技術201506\現代電子技術15年38卷第6期\Image\45T4.tifgt;

圖4 基于Map?Reduce編程模型的剖分結果

5 "結 "語

本文通過使用Quad?Edge結構進行剖分結果的存儲,并將Map?Reduce編程模型應用到三角網格剖分中,通過與其他兩個方法對比證明此方法能夠很好地提高三角網格剖分的效率,同時由于此編程模型具有很好的彈性計算能力,可以很輕松地通過增加task數量來進一步提高剖分的效率。如何將此并行編程模型應用到三維散亂點集中進行剖分處理,這將是要進一步研究的問題。

參考文獻

[1] REBAY S. Efficient unstructured mesh generation by means of Delaunay triangulation and Bowyer?Watson algorithm [J]. Journal of Computational Physics, 1993, 106(1): 125?138.

[2] GUIBAS L, STOLFI J. Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams [J]. ACM Transactions on Graphics, 1985, 4(2): 75?123.

[3] YANG H, DASDAN A, HSIAO R L, et al. Map?reduce?merge: simplified relational data processing on large clusters[C]//Proceedings of the 2007 ACM SIGMOD international conference on Management of data. [S.l.]: ACM, 2007: 1029?1040.

[4] DEAN J, GHEMAWAT S. MapReduce: simplified data processing on large clusters [J]. Communications of the ACM, 2008, 51(1): 107?113.

[5] CHEN S, SCHLOSSER S W. Map?reduce meets wider varieties of applications, IRP?TR?08?05 [R]. Pittsburgh: IRP, 2008.

[6] 武曉波,王世新,肖春生.Delaunay三角網的生成算法研究[J]. 測繪學報,1999,28(1):28?35.

[7] 余杰,呂品,鄭昌文.Delaunay三角網構建方法比較研究[J].中國圖象圖形學報,2010,15(8):1158?1167.

[8] 劉云,夏興東,黃北生.基于分治算法與逐點插入法的Delaunay三角網建立算法的改進[J].現代測繪,2010(4):14?16.

[9] FORTUNE S. A sweepline algorithm for Voronoi diagrams [J]. Algorithmica, 1987, 2(1/4): 153?174.

[10] HUANG Y, QIN H, WANG D, et al. Convergent adaptive finite element method based on centroidal Voronoi tessellations and super convergence [J]. Communications in Computational Physics, 2011, 10(2): 339?370.

[11] 戴曉明,朱萍.平面散亂點三角剖分分治算法的實現[J].計算機技術與發展,2006,16(1):11?12.

主站蜘蛛池模板: 欧美激情第一欧美在线| 狠狠色狠狠综合久久| 青青草原国产免费av观看| 婷婷色中文| 欧美日韩精品一区二区在线线| 欧美色伊人| 日本五区在线不卡精品| 亚洲色图另类| 亚卅精品无码久久毛片乌克兰| AV不卡无码免费一区二区三区| 亚洲天堂日韩av电影| 精品国产成人a在线观看| 久久久久国产一区二区| 91午夜福利在线观看| 国产97视频在线观看| 在线精品亚洲一区二区古装| 女人爽到高潮免费视频大全| 亚洲色大成网站www国产| 天堂中文在线资源| 亚洲swag精品自拍一区| 亚洲人在线| 色婷婷在线影院| 免费国产不卡午夜福在线观看| 久久午夜影院| 99视频在线精品免费观看6| 综合色88| 男女男免费视频网站国产| 色欲色欲久久综合网| 欧美成人一区午夜福利在线| 亚洲人成日本在线观看| 不卡视频国产| 欧美午夜精品| 天堂在线视频精品| 国产91精品最新在线播放| 98超碰在线观看| 成人午夜网址| 亚洲国产第一区二区香蕉| 亚洲第一精品福利| 福利视频99| 午夜国产在线观看| 免费人成网站在线观看欧美| 又爽又大又黄a级毛片在线视频| 国产三级毛片| 亚洲精品欧美日本中文字幕| 在线毛片网站| 欧美a网站| h网站在线播放| 日韩无码真实干出血视频| 国产精品永久在线| 国产精品99久久久久久董美香 | 亚洲va在线∨a天堂va欧美va| 91免费国产在线观看尤物| 国产一区二区三区在线观看免费| 色婷婷丁香| 国产婬乱a一级毛片多女| 丁香综合在线| 国产在线一区视频| 91免费国产高清观看| 亚洲AⅤ无码国产精品| 最新日韩AV网址在线观看| 在线国产你懂的| 成人蜜桃网| 亚洲二区视频| 一级毛片不卡片免费观看| 久久精品中文无码资源站| 狠狠亚洲五月天| 免费无码又爽又黄又刺激网站| 久久99国产综合精品1| 99精品国产高清一区二区| 久久黄色视频影| 久久国产拍爱| 日韩福利在线视频| 欧美一区二区精品久久久| 午夜免费视频网站| 最新亚洲av女人的天堂| 自偷自拍三级全三级视频| 欧美性天天| 中文字幕永久在线看| 麻豆a级片| 久热这里只有精品6| 色一情一乱一伦一区二区三区小说| 精品国产美女福到在线直播|