• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于碰撞檢測強化的實時爆炸視圖自動生成算法研究

      2019-05-14 07:34:46柳有權(quán)王愿超
      圖學(xué)學(xué)報 2019年2期
      關(guān)鍵詞:碰撞檢測視圖物體

      柳有權(quán),李 婉,王愿超,徐 琨

      ?

      基于碰撞檢測強化的實時爆炸視圖自動生成算法研究

      柳有權(quán),李 婉,王愿超,徐 琨

      (長安大學(xué)信息工程學(xué)院,陜西 西安 710064)

      爆炸視圖在機械設(shè)計和裝配實踐中有著廣泛的應(yīng)用,可幫助人們直觀地理解機械結(jié)構(gòu)和裝配關(guān)系。為解決仿真中的干涉問題,提出一種基于碰撞檢測強化的實時爆炸視圖自動生成算法。首先,構(gòu)建各機械零件的方向包圍盒,根據(jù)包圍盒的大小和位置偏差決定零件的分離次序和方向,構(gòu)造爆炸分離模型。其次,基于真實世界物體互斥屬性,對裝配的零部件進行實時碰撞檢測,借助碰撞響應(yīng)推動各部件進行進一步分離。該方法簡單易實現(xiàn),保證了零部件之間的合理移動,同時避免穿透現(xiàn)象的發(fā)生。實驗充分驗證了算法可行性和通用性。

      爆炸視圖;方向包圍盒;碰撞檢測;空間分離

      爆炸視圖(exploded view)通過將裝配體中的零件按一定順序、方向和距離層層拆分,可以構(gòu)建出一種真實立體的表現(xiàn)形式,從而直觀地呈現(xiàn)零部件復(fù)雜的裝配關(guān)系。與剖視圖、平面圖、透視圖等方式相比,爆炸視圖更能清晰地展現(xiàn)內(nèi)部零件的形狀信息及其關(guān)聯(lián)關(guān)系、裝配序列以及安裝路徑。另外,爆炸視圖不僅可以視為裝配順序的可視化載體,在產(chǎn)品構(gòu)思、演示和宣傳等過程中的裝配、拆卸動畫、工業(yè)制造、設(shè)備檢測、場外維護過程中的裝配指導(dǎo)、零部件手冊等方面,爆炸視圖有著廣泛應(yīng)用。

      本文提出了一種基于碰撞檢測的爆炸視圖生成算法。通過構(gòu)建各機械零件的方向包圍盒(oriented bounding box,OBB),根據(jù)其位置偏差決定零件的分離方向,構(gòu)建爆炸分離模型;另外基于真實世界物體互斥屬性,對裝配的零部件進行實時碰撞檢測,借助碰撞響應(yīng)推動各部件進行自動分離,從而生成爆炸視圖效果,保證了零部件之間的合理移動,同時避免穿透現(xiàn)象的發(fā)生。本文還利用Hololens頭盔結(jié)合手勢實現(xiàn)了爆炸視圖的交互操作,使操作人員更直觀、更方便地了解整個裝配體的內(nèi)部結(jié)構(gòu)。

      1 相關(guān)工作

      爆炸視圖常用于機械制造領(lǐng)域。于嘉鵬等[1-2]提出一種優(yōu)先搜索層次化裝配序列算法。該算法利用遞歸循環(huán)的思想可以實現(xiàn)復(fù)雜零件層次化爆炸視圖的自動生成。通過多規(guī)則篩選算法,將整體復(fù)雜的任務(wù)分割成若干易于計算的子任務(wù),構(gòu)建干涉矩陣和交叉矩陣,對二者簡單運算得出零部件間裝配關(guān)系和次序優(yōu)先級。另外,通過實時計算已分離部分的累積包圍盒,確定剩余零部件方向矢量,從而自動生成有次序、有方向的層次性爆炸視圖。但該方法在初始化時需要進行大量的相交檢測,在爆炸過程中還需要根據(jù)算法不斷計算包圍盒間的距離,因此,爆炸視圖生成效率低。

      趙鴻飛等[3]提出了一種基于同步解除幾何約束的爆炸視圖自動生成方法。在定義拆卸軸方向后,建立了干涉矩陣和拆卸約束矩陣,按照同步解除幾何約束的優(yōu)先順序?qū)α悴考M行劃分,并判斷是否具有母子裝配關(guān)系。結(jié)合OBB算法和FDH (fixed direction hull)包圍盒算法,由外向內(nèi)分層等速率移動零件,實現(xiàn)了裝配體爆炸視圖的自動生成。但使用FDH包圍盒,其算法測試復(fù)雜、計算量大、效率不高。

      邢宇飛等[4]提出一種利用蟻群算法求零部件分離順序的局部爆炸視圖自動生成方法。該方法較上述2種方法更為簡單,通過直接給定零件爆炸距離的算法構(gòu)建爆炸效果。生成零部件之間的拆卸矩陣和連接矩陣計算內(nèi)部布局及零件運動方向,但蟻群算法收斂速度慢、易陷入局部最優(yōu)。如果初始信息不足,蟻群算法一般需要較長的搜索時間。

      LI等[5-6]開發(fā)了基于圖像的爆炸視圖編輯工具,在爆炸前設(shè)置零部件的裝配次序和順序,通過二維圖像重疊放置的方式顯示爆炸效果。MOTOMASA[7]同樣根據(jù)給定的裝配方向、次序、距離,手動繪制爆炸視圖。KUMAMOTO等[8]開發(fā)了可以自動生成爆炸效果及爆炸動畫的工具,但仍需對各個零件規(guī)定其裝配序列、方向和距離。

      DRISKILL和COHEN[9]首次使用特征推算爆炸方向法自動生成爆炸視圖,但僅局限于單一零件的裝配。MOHAMMAD和KROLL[10]通過遍歷零件間面面是否接觸,生成具有接觸關(guān)系的有向圖(ABOVE graph),將有向圖轉(zhuǎn)變?yōu)槌橄蟊P(guān)系的二維平面有向圖,最終繪制出實際立體爆炸視圖。

      BRUNO等[11]利用投影推斷爆炸的大致方向。AGRAWALA等[12]提出了分步裝配,但需要手動輸入零部件的幾何信息、接壤信息、約束方向等,不適用于復(fù)雜產(chǎn)品。LI等[13]受其啟發(fā),利用手工輸入的一種包含相對爆炸順序的有向圖生成三維模型爆炸視圖,但耗時長,僅限于50個零件以內(nèi)。

      TATZGERN等[14]選擇在所有裝配體中最具有代表性的子裝配體,通過計算裝配體中每個零件分離包圍盒以及爆炸方向根據(jù)單元球體法進行爆炸,并用評價法選擇生成爆炸視圖的視角從而生成了更為緊湊的爆炸視圖。但干涉檢測耗時長,且不能實現(xiàn)全局干涉檢測計算。

      此外,目前建模軟件中如UG、Solidworks、Pro/ENGINEER Wildfire等,均具有生成爆炸視圖的功能,但其生成爆炸視圖的自動化程度不高,且對復(fù)雜裝配體生成效果較差,缺乏層次感。而且該爆炸視圖無法直接導(dǎo)入到虛擬現(xiàn)實和增強現(xiàn)實平臺中。

      本文首先利用各零件的包圍盒大小和位置偏差決定零件的分離次序和方向,對于仍無法分離的部件,則賦予其物理屬性,通過基于碰撞檢測的思路實施進一步分離,解決了爆炸仿真中的裝配干涉問題,使得爆炸分離過程更加自然,更具表現(xiàn)力。

      2 本文方法

      根據(jù)零部件層次結(jié)構(gòu),本文提出了基于碰撞檢測自動生成爆炸視圖,通過解析現(xiàn)有模型各個部件之間的相對位置關(guān)系使之自動分離,其流程如圖1所示。

      圖1 自動生成爆炸視圖流程圖

      利用碰撞檢測來進行自動爆炸視圖生成,按理應(yīng)該是一個更貼近爆炸視圖內(nèi)涵的算法。但是由于機械零件通常相互交疊,尤其是包圍盒會相互交疊,當(dāng)施加物理屬性后,各個部件之間會產(chǎn)生碰撞效應(yīng),形成的碰撞力將彼此推開,但該方法生成的爆炸視圖雜亂無序。如何形成有序且層層剝離的效果,是問題難點和關(guān)鍵所在。

      基于此,本文提出了一個粗分離和細分離相結(jié)合的爆炸視圖生成算法。相對于其他方法,本文算法有著操作簡單方便、實時且具有一定的物理效果的優(yōu)勢,只需要將完整的模型導(dǎo)入到場景中即可。

      2.1 爆炸過程粗分離

      爆炸過程仿真是將原本裝配完整的零部件進行有序拆分。爆炸過程粗分離仿真的流程如圖2所示。

      圖2 爆炸過程粗分離流程圖

      爆炸視圖通常以某個大部件作為基準,其他的部件相對做分離移動,這樣生成的效果圖才符合人們的認知。由于零件中可能出現(xiàn)一些扁長結(jié)構(gòu),本文采用OBB包圍盒最大面積準則來選擇基準物體,即計算這個零件的包圍盒的3個面積值,選擇具有最大面積的包圍盒所對應(yīng)的對象作為基準。

      圖3 偏移方向(點表示物體中心,箭頭表示分離方向)

      具體偽代碼如算法1。

      算法1.計算分離方向偽代碼Program CalcOffset(Object baseObject, Object attachObject) Vector3 diff = CenterOfAttachObject – CenterOfBaseObject OffsetCode = 0 if (diff.x > 0) OffsetCode |= 0x01 else if (diff.x < 0) OffsetCode |= 0x02 if (diff.y > 0) OffsetCode |= 0x04 else if (diff.y < 0) OffsetCode |= 0x08 if (diff.z > 0) OffsetCode |= 0x10 else if (diff.z < 0) OffsetCode |= 0x20 End

      為了讓零件分離呈現(xiàn)出從外到內(nèi)的爆炸次序,實現(xiàn)有序爆炸,計算其余零件距中心對象的距離并根據(jù)距離進行降序排列。并根據(jù)排序結(jié)果依次對各個零件進行分離,分離距離與原始偏移距離形成一定比例,保證了爆炸分離后各個部件相對位置關(guān)系仍然準確,且具有層次感。

      2.2 爆炸過程細分離

      上一節(jié)中的粗分離方法對于大部分部件可以生成很好的爆炸視圖效果。但是對于中心點重合的部件就無法進行分離,如圖4所示。

      圖4 中心點重合導(dǎo)致粗分離失敗

      本文引入碰撞檢測進行此類情形的分離,即通過剛體碰撞檢測進一步進行爆炸分離。當(dāng)兩個碰撞體發(fā)生碰撞時,碰撞響應(yīng)產(chǎn)生的作用力會推動兩個物體朝著與彼此接觸相背離的方向運動,從而實現(xiàn)爆炸效果。如圖5(a)所示,兩個物體交疊在一起,通過賦予兩個物體剛體和碰撞體屬性,兩個物體將發(fā)生碰撞;圖5(b)為發(fā)生碰撞后的效果,顯然兩個物體在碰撞作用下會產(chǎn)生旋轉(zhuǎn)運動,整個場景的爆炸視圖會顯得非常凌亂,其結(jié)果不符合爆炸視圖要求;圖5(c)為左右兩個物體同時施加了旋轉(zhuǎn)約束條件,即禁止其產(chǎn)生旋轉(zhuǎn)運動,只允許做平移移動,這樣兩個物體可以很好的分離。

      施加了旋轉(zhuǎn)約束的碰撞檢測可以很好地將中心點重合的物體進行分離,然后在此基礎(chǔ)上可再次采用2.1節(jié)的方法做進一步分離。

      圖5 碰撞分離模擬圖

      3 實驗與分析

      本文在Unity3D下進行爆炸過程仿真,采用C#腳本控制相關(guān)對象的屬性和運動。本文給出3個測試場景分別驗證該算法的實用性和可行性。

      第1個測試場景對比了文獻[13]和本文算法,如圖6(a)為文獻[13]生成的渦輪模型爆炸視圖效果,圖6(b)為本文算法下自動生成的爆炸視圖。其中,標紅部分為相應(yīng)包圍盒最大零部件,文獻[12]用時1 010 s,本文算法為實時生成,且得到的結(jié)果類似,更有層次感。

      圖6 渦輪模型爆炸視圖對比

      實驗結(jié)果表明,本文算法不僅對于存在同軸和包含關(guān)系的模型具有可行性,并且在爆炸圖的視覺效果上,分離更加細化。

      將該算法應(yīng)用到復(fù)雜的飛機模型上。圖7(a)為飛機模型的原始狀態(tài),圖7(b)為飛機零部件分層爆炸的效果圖。

      同理,將該算法應(yīng)用到汽車模型上。為了更好的說明粗分離和細分離的主要功能,在汽車測試場景中鎖定一個視角(側(cè)視角),如圖8(a)為汽車模型的原始狀態(tài),圖8(b)為汽車零部件粗分離爆炸后的效果圖,圖8(c)為細分離爆炸后的效果圖。

      圖7 飛機模型爆炸效果

      圖8 汽車模型爆炸效果

      由圖8可以清晰地看出算法效果:在粗分離下,中心不重合的車身呈現(xiàn)爆炸效果,但擁有同一中心點的汽車底盤和車廂兩者未發(fā)生分離。實驗證明,經(jīng)過基于碰撞檢測的細分離后,兩者呈現(xiàn)明顯的理想效果。

      為了更好的說明該算法下的爆炸視圖具有層次性,在汽車測試場景中鎖定另一個視角(俯角)突出分層爆炸效果,如圖9所示。

      在該測試場景中,由圖9可以清晰地看出分層效果:圖9(a)中,外層車身作為第1層開始分離;隨后,車窗第2層進行分離。圖9(b)前后排車輪以及車頭、車尾分別作為第3和第4層爆炸,之后作為車頭子節(jié)點的車燈等進行爆炸。最后爆炸視圖生成全部完成,分層效果理想。

      圖9 汽車模型分層爆炸視圖(俯視圖)效果

      此外,基于碰撞檢測的層次化爆炸視圖生成算法與增強現(xiàn)實交互設(shè)備相結(jié)合。本文將爆炸視圖最終實現(xiàn)在Hololens頭盔上,利用增強現(xiàn)實技術(shù)使爆炸視圖生成效果更加生動[15]。當(dāng)給定特定識別手勢如圖10(a)后,汽車模型如10(b)開始自動分層爆炸,其效果如圖10(c)和圖10(d)所示。

      (a) 手勢控制(b) 交互模式下的原始狀態(tài) (c) 交互模式下的 爆炸視圖(主)(d) 交互模式下的 爆炸視圖(側(cè))

      4 結(jié)束語

      本文提出了一種自動生成爆炸視圖的新思路。通過計算相對位置關(guān)系的幾何算法作為主要判斷依據(jù)來決定零部件爆炸次序和方向,并利用帶有旋轉(zhuǎn)約束的碰撞檢測進一步優(yōu)化分離操作,最終得到的帶有物理效果的爆炸視圖。實驗充分驗證其可行性和通用性。

      由于本文基于零部件完整模型進行爆炸分離,沒有對這些模型進行切割剖分來生成更為細膩的爆炸視圖效果,因此效果上仍有改進空間,未來將圍繞此開展相關(guān)工作。

      [1] 于嘉鵬, 王成恩, 張聞雷. 基于裝配序列規(guī)劃的爆炸圖自動生成方法[J]. 機械工程學(xué)報, 2010, 46(21): 149-157.

      [2] 于嘉鵬, 王健熙. 基于遞歸循環(huán)的層次化爆炸圖自動生成方法[J]. 機械工程學(xué)報, 2016, 13(7): 175-188.

      [3] 趙鴻飛, 張琦, 王海濤, 等. 基于同步約束解除的零件爆炸圖自動生成方法[J]. 中國機械工程, 2015, 26(1): 70-73.

      [4] 邢宇飛, 王成恩, 于嘉鵬. 基于蟻群算法的爆炸圖自動生成方法[J]. 東北大學(xué)學(xué)報, 2012, 33(6): 883-886.

      [5] LI W, AGRAWALA M. Interactive exploded views from 2D images: US, 20050248560 [P]. 2005-11-10. http://www.freepatentsonline.com/y2005/0248560.html.

      [6] LI W, AGRAWALA M, SALESIN D. Interactive image-based exploded view diagrams [C]//Proceedings Graphics Interface Conference. New York: ACM Press, 2004: 203-212.

      [7] MOTOMASA K. Exploded view automatic creation apparatus, storage media and methods: EP, 20030043177 [P].2003-03-06. http://www.freepatentson line.com/y2003/0043177.html.

      [8] KUMAMOTO K, SHIMOTSUKA Y, ISHIDA T, et al. Apparatus for producing exploded view and animation of assembling, and method thereof: US, 7262766 [P]. 2007-08-28. http://www.freepatentsonline.com/7262766.html.

      [9] DRISKILL E, COHEN E. Interactive design, analysis, and illustration of assemblies [C]//Proceedings of the Symposium on Interactive 3D Graphics. New York: ACM Press, 1995: 27-33.

      [10] MOHAMMAD R, KROLL E. Automatic generation of exploded view by graph transformation [C]//The Ninth Conference on Artificial Intelligence for Applications. New York: IEEE Press, 1993: 368-374.

      [11] BRUNO J M, YAMROM B, DAVIS J E. Method and system for generating automated exploded views: US, 7295201 [P]. 2007-11-13. http://www.freepatentsonline. com/7295201.html.

      [12] AGRAWALA M, PHAN D, HEISER J, et al. Designing effective step-by-step assembly instructions [J]. ACM Transactions on Graphics, 2003, 22(3): 828-837.

      [13] LI W, AGRAWALA M, CURLESS B, et al. Automated generation of interactive 3D exploded view diagrams [J]. ACM Transactions on Graphics, 2008, 27(3): 101-109.

      [14] TATZGERN M, KALKOFEN D, SCHMALSTIEG D. Multi-perspective compact explosion diagrams [J]. Computers and Graphics, 2011, 35(1): 135-147.

      [15] 潘仁宇, 孫長樂, 熊偉, 等. 虛擬裝配環(huán)境中碰撞檢測算法的研究綜述與展望[J]. 計算機科學(xué), 2016, 43(S2): 136-139.

      Real-Time Automatic Generation Algorithm of Exploded View with Collision Detection Enhancement

      LIU You-quan, LI Wan, WANG Yuan-chao, XU Kun

      (School of Information Engineering, Chang’an University, Xi’an Shaanxi 710064, China)

      Exploded view has been widely applied in mechanical design and assembly practice, facilitating the understanding of the mechanical structure and assembly relationship visually. To solve the interference problem in simulation, this paper presents an automatic exploded view generation algorithm enhanced by collision detection. Firstly, according to the size and position deviation of the bounding boxes, the sequence and direction of explosion is calculated to conduct the initial separation. Secondly, based on the mutual exclusion properties of objects, the real-time collision detection is done to further separate exploded parts to enhance the exploded view effect with physics effects. The method is easy to implement, allows for reasonable movement between parts and avoids potential penetrations. The experiments have verified our method’s feasibility and universality.

      exploded view; oriented bounding box; collision detection; spatial separation

      TP 391

      10.11996/JG.j.2095-302X.2019020235

      A

      2095-302X(2019)02-0235-05

      2018-08-31;

      2018-09-14

      中央高?;究蒲袠I(yè)務(wù)費專項資金(310824173401)

      柳有權(quán)(1976-),男,湖北秭歸人,教授,博士,碩士生導(dǎo)師。主要研究方向為計算機圖形學(xué)、虛擬現(xiàn)實技術(shù)。E-mail:youquan@chd.edu.cn

      猜你喜歡
      碰撞檢測視圖物體
      全新預(yù)測碰撞檢測系統(tǒng)
      深刻理解物體的平衡
      基于BIM的鐵路信號室外設(shè)備布置與碰撞檢測方法
      我們是怎樣看到物體的
      Unity3D中碰撞檢測問題的研究
      電子測試(2018年1期)2018-04-18 11:53:00
      5.3 視圖與投影
      視圖
      Y—20重型運輸機多視圖
      SA2型76毫米車載高炮多視圖
      BIM技術(shù)下的某辦公樓項目管線碰撞檢測
      永新县| 陆河县| 兴隆县| 泰宁县| 甘肃省| 互助| 大安市| 唐河县| 鲁甸县| 盐亭县| 北辰区| 临安市| 正安县| 天全县| 揭东县| 河西区| 通江县| 土默特右旗| 四川省| 开阳县| 炎陵县| 乌什县| 吉木萨尔县| 鹿邑县| 奉新县| 六安市| 石嘴山市| 嫩江县| 新绛县| 广水市| 上高县| 太康县| 库尔勒市| 大埔县| 宁阳县| 布尔津县| 南昌县| 化隆| 铁岭市| 巴彦县| 余庆县|