王 躍 鄭貴洲
(中國地質(zhì)大學(xué)(武漢)信息工程學(xué)院 湖北 武漢 430074)
?
基于OSG的OBS導(dǎo)航定位系統(tǒng)三維可視化場景實現(xiàn)
王 躍 鄭貴洲*
(中國地質(zhì)大學(xué)(武漢)信息工程學(xué)院 湖北 武漢 430074)
在海洋地震勘探中,海底地震儀OBS(Ocean Bottom Seismometer)導(dǎo)航定位系統(tǒng)可提高OBS投放精度。系統(tǒng)是在VS2010和OSG 3.0.0的可視化開發(fā)環(huán)境下,基于MFC框架,運用三維可視化技術(shù)搭建OBS投放場景,實現(xiàn)場景節(jié)點有效組織與管理,動態(tài)顯示船只和OBS運動過程。采用Chunked LOD算法處理測深格網(wǎng)數(shù)據(jù)構(gòu)建地形細節(jié)層次模型,應(yīng)用OSG數(shù)據(jù)庫分頁管理和分頁細節(jié)層次節(jié)點技術(shù)實現(xiàn)了OBS投放場景地形數(shù)據(jù)動態(tài)調(diào)度。通過場景漫游功能實現(xiàn)了OBS投放過程的多角度三維可視化監(jiān)控,直觀反映海底地形地貌與作業(yè)過程,提高了OBS投放精度和數(shù)據(jù)質(zhì)量。
海底地震儀 三維可視化 OpenSceneGraph 線程沖突 地形動態(tài)調(diào)度
海底地震儀OBS是一種放置在海底接收人工震源或天然地震信號的海洋調(diào)查設(shè)備。自20世紀60年代問世以來,在海底深部構(gòu)造調(diào)查、海洋油氣勘探和天然氣水合物的調(diào)查中得到了廣泛應(yīng)用[1]。OBS投放可分為有纜和無纜兩種投放方式,均需采用專業(yè)的導(dǎo)航定位系統(tǒng),引導(dǎo)作業(yè)船只到達設(shè)計目標點附近后投放OBS,使其在海底的觸底點盡可能靠近目標點站位,以滿足海洋地球物理對于OBS野外資料采集的導(dǎo)航定位的精度控制要求。然而,在實際的海上作業(yè)中,受海風(fēng)、海流等復(fù)雜環(huán)境因素影響,自由落體的OBS在降落至海底的過程中會偏離設(shè)計點一定距離,這將直接影響到OBS數(shù)據(jù)采集的質(zhì)量。目前應(yīng)用最為廣泛的有纜投放方式,通常需要結(jié)合超短基線USBL[2](Ultra Short BaseLine)水下定位系統(tǒng)實施作業(yè)。在此過程中,需要借助專用的導(dǎo)航定位系統(tǒng),輔助工作人員全面了解投放區(qū)域的地理環(huán)境,實時可視化監(jiān)控和引導(dǎo)整個投放過程,以提高OBS投放成功率。
近年來,三維可視化技術(shù)日趨成熟,在海洋研究領(lǐng)域的應(yīng)用也不斷深入。李勃[3]、王想紅[4]、李新放等[5]分別構(gòu)建了全球尺度的海洋多維動態(tài)三維可視化系統(tǒng),實現(xiàn)了海洋多源數(shù)據(jù)的直觀顯示,但是缺乏面向OBS水下投放與定位的模塊。張莉等[6]采用蒙特卡羅法模擬OBS降落海底的過程,該方法在一定程度上提高了OBS位置精度,但不能直觀反映OBS水下運動過程,不具備實時性。胡家賦等[7]針對OBS水下投放的需求,設(shè)計實現(xiàn)了二維OBS導(dǎo)航定位系統(tǒng),但無法直觀精確了解設(shè)備的采集環(huán)境。在實際OBS投放作業(yè)過程中,要求能從不同視角觀測OBS從海面到設(shè)計目標點投放過程中實時移動狀態(tài)和相對位置關(guān)系,同時能直觀獲悉擬投放區(qū)域的海底地形地貌,充分地考慮海底地形對OBS工作狀態(tài)的影響,傳統(tǒng)的二維可視化方法顯然無法滿足這些要求。針對以上問題,本文在研究三維渲染引擎OpenSceneGraph[8]的基礎(chǔ)上,通過Chunked LOD算法處理測深格網(wǎng)數(shù)據(jù)并生成地形細節(jié)層次模型。以VS2010為開發(fā)平臺,采用OSG 3.0.0作為圖形開發(fā)庫,結(jié)合osgOcean海洋模塊構(gòu)建了OBS投放三維可視化場景,直觀反映研究區(qū)域海底地形地貌,實現(xiàn)對OBS的實時監(jiān)控和精確定位。
1.1 場景體系結(jié)構(gòu)設(shè)計
OBS投放場景體系結(jié)構(gòu)可分為數(shù)據(jù)層、驅(qū)動層和應(yīng)用層三部分,如圖1所示。數(shù)據(jù)層包括場景模型、海底地形模型及導(dǎo)航定位數(shù)據(jù)。場景模型包括調(diào)查船只、OBS、站位等.3ds格式的模型數(shù)據(jù);海底地形模型是測深格網(wǎng)數(shù)據(jù)通過VPB等工具處理得到的分頁地形數(shù)據(jù)庫文件;導(dǎo)航定位數(shù)據(jù)包括GPS、羅經(jīng)、OBS以及水深儀實測數(shù)據(jù),系統(tǒng)通過支持串口通信和TCP/IP網(wǎng)絡(luò)通信兩種方式的實時通信模塊讀入外設(shè)數(shù)據(jù)[9]。驅(qū)動層通過OSG渲染引擎對場景數(shù)據(jù)進行組織、渲染和管理。應(yīng)用層實現(xiàn)了OBS和調(diào)查船只等場景要素的顯示、場景動態(tài)更新以及場景漫游等功能,可以全方位觀測投放過程中OBS與目標站位間的空間位置關(guān)系。
圖1 場景體系圖
1.2 場景組織結(jié)構(gòu)設(shè)計
OSG場景采用一種自頂向下的分層樹狀數(shù)據(jù)結(jié)構(gòu)來組織空間數(shù)據(jù)集,以提高渲染的效率。場景樹由節(jié)點組成,節(jié)點可以是可繪制對象、矩陣變換以及狀態(tài)切換等,它能夠反映場景的空間組成結(jié)構(gòu)以及對象的屬性狀態(tài)。場景樹頂部是一個根節(jié)點,自根節(jié)點向下分別為組節(jié)點和葉子節(jié)點。組節(jié)點包含了場景對象的渲染狀態(tài)信息和幾何信息,而處于場景樹底部的葉子節(jié)點則包含了場景對象的實際幾何信息,葉子節(jié)點沒有子節(jié)點。osgOcean是OSG的海洋模塊,作為一個子節(jié)點加入場景中,具備有可調(diào)波浪大小、水面的反射與折射、支持海平面模型的快速傅里葉(FFT)變換、水底光照(God Rays)、海面光暈、海底的霧效果等特效[10]。場景樹結(jié)構(gòu)如圖2所示。
圖2 場景樹結(jié)構(gòu)圖
2.1 場景核心類設(shè)計
三維可視化場景核心類主要分為三部分:繼承自osg::Referenced的COSG、OBS3D、SteelCable3D、Ship3D、OBS3DSurveyLine及OBS3DStation等類;繼承自osg::NodeCallBack的SteelCableCallBack、OBSPosCallBack、SurBoatCallBack及SurCameralCall-Back等類;繼承自osgGA::CameraManipulator的TravelManipulator類。場景核心類圖如圖3所示。
圖3 場景核心類圖
COSG類主要負責(zé)場景、相機、漫游器的初始化,海底地形的加載和移除及場景渲染。OBS3D、SteelCable3D、Ship3D、OBS3DStation及OBS3DSurveyLine類分別負責(zé)OBS、拖纜、船只、站位及測線在場景中的加載和移除。SteelCableCallBack、OBSPosCallBack和SurBoatCallBack類繼承自節(jié)點回調(diào)類,根據(jù)讀入的外設(shè)數(shù)據(jù)對場景進行動態(tài)更新,通過回調(diào)機制實現(xiàn)拖纜、OBS和船只等場景模型的動態(tài)顯示效果。SurCameraCallBack類負責(zé)天空盒跟隨視點移動,確保場景的可見性。TravelManipulator類定義了一系列操作實現(xiàn)場景的漫游、目標居中定位、視點跟隨等功能。
2.2 場景動態(tài)更新
OSG中節(jié)點主要使用回調(diào)機制來完成用戶在每幀中所要執(zhí)行的工作。在遍歷場景過程中,如果遇到與用戶定義的回調(diào)類和函數(shù)相關(guān)聯(lián)的節(jié)點,則執(zhí)行該節(jié)點的回調(diào)。按照關(guān)聯(lián)方法的不同,可分為更新回調(diào)和人機交互回調(diào)等。本文主要通過船只、OBS及拖纜的更新回調(diào)方案實現(xiàn)場景動態(tài)顯示效果。以船只節(jié)點回調(diào)為例,首先編寫繼承自NodeCallback類的新類SurBoatCallBack;其次重載operator()方法獲取船只節(jié)點位置變換矩陣;最后在Ship3D類中通過VecMatrix->setUpdateCallback(VecCallBack.get())設(shè)置回調(diào)實例,完成船只節(jié)點的回調(diào),其中VecMatrix為位置變換矩陣。節(jié)點更新回調(diào)功能主要通過operator()方法實現(xiàn),它包含兩個參數(shù),分別是關(guān)聯(lián)節(jié)點地址osg::Node* node和節(jié)點訪問器osg::NodeVisitor* nv。獲取關(guān)聯(lián)的船只節(jié)點并設(shè)置節(jié)點訪問器遍歷類型為UPDATE_VISITOR,分別計算世界坐標系下的變換矩陣、縮放矩陣和旋轉(zhuǎn)矩陣,相乘可以得到船只節(jié)點在更新回調(diào)中的位置變換矩陣,主要實現(xiàn)代碼如下:
void operator()(osg::Node* node, osg::NodeVisitor* nv)
{
vecNode->GetBoatGNode();
//獲取船只節(jié)點
nv->getVisitorType()==osg::NodeVisitor::UPDATE_VISITOR;
//設(shè)置節(jié)點訪問器
//計算船只節(jié)點位置變換矩陣
matrix=osg::computeLocalToWorld(nv->getNodePath());
//計算世界坐標系下的變換矩陣
scal.makeScale();
//計算縮放矩陣
rot.makeRotate();
//計算旋轉(zhuǎn)矩陣
matrix = scal * rot * matrix;
//計算位置變換矩陣
}
此外,拖纜是連接船只和OBS的纜線,它實質(zhì)上是一個osg::Vec3Array類型的三維頂點數(shù)組,根據(jù)船只節(jié)點坐標和OBS節(jié)點坐標,通過算法可以計算拖纜上一系列點的坐標,并存儲在三維數(shù)組中,再由渲染線程繪制出來。由于在讀取外設(shè)數(shù)據(jù)時船只和OBS的位置坐標值是不斷變化的,因此拖纜上點的坐標在每幀渲染時也需要更新。此時拖纜在進行更新回調(diào)時主線程和渲染線程就會發(fā)生資源同搶的問題,導(dǎo)致場景運行卡頓。本文解決線程沖突的具體流程如圖4所示。
圖4 線程沖突解決機制
當需要更新頂點數(shù)組時,先暫停渲染線程,由主線程進行修改,修改完成后再啟動渲染線程進行渲染。首先定義全局布爾型變量NeedModify和CanModify,并初始化值為false。在渲染線程中,通過函數(shù)PreFrameUpdate()判斷是否需要進行修改,若不需要修改,則進入frame()函數(shù)進行渲染;若需要修改,在主線程中將NeedModify值置為true。此時在函數(shù)PostFrameUpdate()中CanModify值也變?yōu)閠rue,再回到主線程中更新頂點數(shù)組坐標值,修改完成后將NeedModify值置為false,啟動渲染線程進行場景渲染工作。通過這種設(shè)置信號量的方法可以有效解決線程沖突問題,保證場景的流暢顯示。
2.3 場景漫游
進行場景交互時,通過改變視點位置和視點方向,實現(xiàn)虛擬場景漫游功能,獲取場景對象的相關(guān)信息[11]。 osgGA::CameraManipulator類繼承自osgGA事件處理器osgGA::GUIEventHandler類,它由GUIEventAdapter和GUIActionAdapter組成。前者定義了一個且僅有一個人機交互事件,是OSG交互事件和系統(tǒng)交互事件的適配接口;后者實現(xiàn)了用戶向系統(tǒng)傳遞請求的功能。場景漫游功能主要在TravelManipulator類中實現(xiàn),該類繼承自CameraManipulator類,它提供了矩陣變換和事件處理的接口,可以通過重載矩陣變換函數(shù)和事件處理函數(shù)實現(xiàn)漫游功能。四個矩陣變換函數(shù)均為純虛函數(shù),分別是setByMatrix()、getMatrix()、setByInverseMatrix ()及getInverseMatrix(),可以通過重載get函數(shù)向viewer傳遞矩陣,從而控制當前視口。定義事件處理函數(shù)bool TravelManipulator::handle(const osgGA::GUIEventAdapter &ea, osgGA::GUIAction-Adapter &us),首先在handle()函數(shù)中添加所需的事件處理函數(shù),包括handleKeyUp、handleKeyDown、handleMousePush、handleMouseDrag及handleMouse-Release五種類型的事件,通過響應(yīng)鍵盤和鼠標操作實現(xiàn)漫游功能;其次進行碰撞檢測[12];最后通過viewer->setCameraManipulator(camera)將操作器和場景相關(guān)聯(lián)。
三維場景提供多種觀測角度對OBS投放過程進行監(jiān)控,可以通過視點跟隨功能實現(xiàn)。視點跟隨是一種是基于目標的漫游,其原理是選取一個視點,將船只和OBS的運動矩陣和相機矩陣關(guān)聯(lián)起來,實現(xiàn)相機跟隨視點的效果[13]。分別定義函數(shù)computeFollowSide-Position()和computeFollowBackPosition()來實現(xiàn)側(cè)視角和后視角跟隨功能,實現(xiàn)過程中根據(jù)場景中有無OBS節(jié)點可分為兩種情況。船只航向角是以正北方向為基準線的,首先獲取船只航向,再經(jīng)過坐標轉(zhuǎn)換得到直角坐標系下的角度變量,最后分別計算位置坐標和旋轉(zhuǎn)角度的值,通過矩陣函數(shù)實現(xiàn)視點跟隨功能。
3.1 地形網(wǎng)格LOD模型構(gòu)建
隨著三維地形可視化技術(shù)不斷發(fā)展,對地形的顯示范圍和精度要求越來越高。本文研究區(qū)域范圍為105°E-122°E,8°N-25°N,橫跨UTM投影下48、49、50和51四個分帶,原始格網(wǎng)數(shù)據(jù)量較大,地形數(shù)據(jù)難以一次性載入計算機內(nèi)存中,加大了實時渲染的難度。
本文采用Chunked LOD[14]算法構(gòu)建地形模型,后人也對基于分塊的地形算法進行了一定改進和應(yīng)用[15-18],地形效果圖如圖5所示。本文構(gòu)建一個自上而下包含整個地形區(qū)域的四叉樹,它的每個節(jié)點包含一塊地形,子節(jié)點包含其父節(jié)點地形的四分之一,但分辨率更高,根節(jié)點表示最粗糙的地形,葉子節(jié)點表示最高分辨率的精細地形。該算法需要對地形數(shù)據(jù)進行預(yù)處理,將生成的靜態(tài)地形數(shù)據(jù)存儲在網(wǎng)格中。每個塊內(nèi)的數(shù)據(jù)可以通過一個繪制命令和一個高級的混合通道來完成繪制。本文中構(gòu)建的四叉樹深度值為8,將地形數(shù)據(jù)按照不同的細節(jié)層次進行分塊預(yù)處理,塊與塊之間相互獨立,在地形渲染過程中,通過多線程分別調(diào)用不同層次不同區(qū)域的地形,實現(xiàn)了out-of-core算法對數(shù)據(jù)的分頁管理和動態(tài)調(diào)度。此外,相鄰塊的細節(jié)層次不同會導(dǎo)致裂縫的產(chǎn)生,本文采用“裙邊法”消除裂縫,如圖6所示。在塊的周圍構(gòu)造垂直的裙邊,每個地形塊的紋理不變,裙邊只影響本塊,該方法可以有效地消除裂縫。
圖5 地形效果圖
圖6 裙邊法
3.2 地形數(shù)據(jù)動態(tài)調(diào)度
在渲染地形時,不管是視錐體裁剪技術(shù)還是通過LOD算法構(gòu)建金字塔模型與四叉樹索引,都是減少傳入渲染管道中的頂點數(shù)量,以此提高渲染效率。但是這并不能完全解決在內(nèi)存中載入海量數(shù)據(jù)的問題,因此,地形數(shù)據(jù)的分頁機制尤為重要。本文中,借助OSG的分頁數(shù)據(jù)庫(DatabasePager)與分頁細節(jié)層次節(jié)點技術(shù)(PagedLOD)實現(xiàn)了地形的動態(tài)調(diào)度。
DatabasePager的核心思想是在內(nèi)存中加載需要的數(shù)據(jù),卸載不需要的數(shù)據(jù),確保內(nèi)存中始終維持有限的數(shù)據(jù)額度。其主要工作可以分為刪除對象、加載對象、預(yù)編譯對象及將對象合并到場景四部分,其中分頁和節(jié)點管理工作由DatabasePager內(nèi)置的數(shù)據(jù)線程DatabaseThread負責(zé)。PagedLOD用于實現(xiàn)動態(tài)分頁加載,它的每個節(jié)點都是磁盤中的文件,可以根據(jù)需要加載這些文件,加載過程中有單獨的線程負責(zé)實時調(diào)度及加載。PagedLOD技術(shù)需要用到DatabasePager,它在場景中會篩選不同細節(jié)層次的模型,選擇出需要的,并通知DatabasePager進行加載和卸載操作。因此,PagedLOD技術(shù)整合了LOD技術(shù)和DatabasePager技術(shù),既能提高渲染效率,又能提高內(nèi)存效率[19]。地形的渲染流程如圖7所示。
圖7 地形渲染流程圖
圖8 三維可視化效果圖
本文實驗數(shù)據(jù)為場景模型數(shù)據(jù)、南海局部海底地形格網(wǎng)數(shù)據(jù)、GPS導(dǎo)航定位數(shù)據(jù)及OBS數(shù)據(jù)等,實驗所采用的計算機硬件配置為:CPU Intel Core i5-2410M,6.0 GB RAM,NVIDIA GeoForce GT540顯卡,顯存為1 GB;軟件環(huán)境為:Windows 7 64 bit操作系統(tǒng),Visual Studio 2010,渲染引擎采用OpenSceneGraph,編程語言為C++。場景效果圖如圖8所示,(a)為海洋表面效果圖;(b)為OBS投放作業(yè)場景,此時洋面自動隱藏以顯示海底地形,船只拖著OBS沿測線行進,并繪制出OBS軌跡線。該系統(tǒng)相比于國內(nèi)其他專業(yè)水上測量導(dǎo)航系統(tǒng)而言,采用三維可視化的表達方式更加直觀,可以充分考慮海底地形地貌對OBS工作狀態(tài)的影響,多角度實時觀測OBS從海面投放點到設(shè)計目標點的投放過程中實時移動狀態(tài)和相對位置關(guān)系,從而提高OBS定位精度。系統(tǒng)經(jīng)過模擬測試與海上測試,在作業(yè)時場景渲染流暢,地形渲染效果達到預(yù)期,系統(tǒng)運行穩(wěn)定,操作方便,可以很好地輔助工作人員實施作業(yè),實際的布設(shè)效果理想。
OBS導(dǎo)航定位系統(tǒng)是以VS2010集成開發(fā)環(huán)境為平臺, OSG為三維渲染引擎實現(xiàn)的?;贛FC框架,結(jié)合OSG海洋模塊osgOcean,運用三維可視化技術(shù)搭建OBS投放場景,直觀反映海底地形地貌及OBS投放過程。通過Chunked LOD算法處理地形格網(wǎng)數(shù)據(jù)構(gòu)建地形LOD模型,采用OSG數(shù)據(jù)庫分頁管理和分頁細節(jié)層次節(jié)點技術(shù)實現(xiàn)了OBS投放場景地形的動態(tài)調(diào)度。通過視點跟隨的方法輔助多角度監(jiān)控OBS投放,實現(xiàn)虛擬場景管理及漫游,完成良好的交互式三維可視化。但系統(tǒng)還存在很多不足,例如,Chunked LOD算法無法實時更新或者增強細節(jié),突跳現(xiàn)象明顯,系統(tǒng)的運行速度有待提高等問題。隨著GPU可編程管線渲染技術(shù)不斷成熟,采用一種更加有效的地形網(wǎng)格渲染方法也是下一步研究的重點。此外,隨著OSG的地景渲染工具osgEarth不斷發(fā)展和完善,使用osgEarth對OBS投放場景進行構(gòu)建必將取得更好的效果。
[1] 吳志強, 陳建文. OBS在我國海洋深部地質(zhì)調(diào)查中的應(yīng)用現(xiàn)狀和前景[J]. 海洋地質(zhì)動態(tài), 2008, 24(9): 35-42.
[2] 王德剛, 韓富江, 來向華, 等. 超短基線定位原理及校正方法研究[J]. 海洋科學(xué), 2011, 35(2): 77-81.
[3] 李勃. 虛擬海洋與三維可視化仿真引擎的研究與開發(fā)[D]. 中國海洋大學(xué), 2013.
[4] 王想紅. 基于三維虛擬地球的海洋環(huán)境數(shù)據(jù)動態(tài)可視化研究[D]. 遼寧工程技術(shù)大學(xué), 2013.
[5] 李新放, 劉海行, 周林, 等. 基于 OpenSceneGraph 的海洋環(huán)境三維可視化系統(tǒng)研究[J]. 海洋科學(xué), 2012, 36(1): 54-58.
[6] 張莉, 趙明輝, 王建, 等. 南海中央次海盆 OBS 位置校正及三維地震探測新進展[J]. 地球科學(xué): 中國地質(zhì)大學(xué)學(xué)報, 2013, 8(1): 33-42.
[7] 胡家賦, 晉俊嶺, 任東宇, 等. 海底地震儀布設(shè)導(dǎo)航定位系統(tǒng)的設(shè)計與實現(xiàn)[J]. 測繪科學(xué), 2014, 39(4): 68-73.
[8] 王銳, 錢學(xué)雷. OpenSceneGraph三維渲染引擎設(shè)計與實現(xiàn)[M]. 北京: 清華大學(xué)出版社, 2009.
[9] 袁國斌, 裴承艷, 尚建嘎, 等. 面向 OBS 導(dǎo)航定位的實時通信模塊設(shè)計與實現(xiàn)[J]. 電子技術(shù)應(yīng)用, 2013, 39(6):136-138.
[10] 陳寧, 聶壘鑫, 劉煒, 等. 基于 OSG 的海洋漫游場景開發(fā)[J]. 江蘇科技大學(xué)學(xué)報(自然科學(xué)版), 2013, 27(4): 386-390.
[11] Hu J, Wan W, Wang R, et al. Virtual reality platform for smart city based on sensor network and OSG engine[C]// Audio, Language and Image Processing (ICALIP). Washington DC: IEEE Computer Society Press, 2012: 1167-1171.
[12] 明芳, 李峻林. 基于 OSG 的虛擬場景漫游技術(shù)研究[J]. 計算機與數(shù)字工程, 2011, 39(3): 133-137.
[13] 葉偉. 基于 OSG 的虛擬校園漫游系統(tǒng)研究與實現(xiàn)[D]. 南昌航空大學(xué), 2013.
[14] Ulrich T. Rendering massive terrains using chunked level of detail control[C]// Proc.of SIGGRAPH’02. San Antonio, Texas,USA: ACM Press, 2002.
[15] 宋省身, 全吉成, 趙秀影, 等. 基于 Chunked LOD 的實時細節(jié)增強地形算法[J]. 計算機工程與設(shè)計, 2014, 35(2): 578-582.
[16] 萬明, 梁霞, 張鳳鳴. 一種四叉樹地形渲染裂縫的改進消除算法[J]. 系統(tǒng)仿真學(xué)報, 2015 (7): 1520-1525,1531.
[17] 侯紹洋, 趙學(xué)勝, 官亞勤. 基于多分辨率半邊的分塊 LOD 模型無縫表達[J]. 地理與地理信息科學(xué), 2015, 31(4): 18-21.
[18] Suárez J P, Trujillo A, Santana J M, et al. An efficient terrain Level of Detail implementation for mobile devices and performance study[J]. Computers, Environment and Urban Systems, 2015, 52: 21-33.
[19] 李雷. 基于OGRE的海量三維模型動態(tài)調(diào)度技術(shù)的研究與實現(xiàn)[D]. 廣西大學(xué), 2012.
IMPLEMENTATIONOF3DVISUALIZATIONSCENEFOROBSNAVIGATIONANDPOSITIONINGSYSTEMBASEDONOSG
Wang Yue Zheng Guizhou*
(CollegeofInformationEngineering,ChinaUniversityofGeosciences(Wuhan),Wuhan430074,Hubei,China)
In marine seismic exploration, OBS navigation and positioning system can improve the OBS delivery precision. In order to organize and manage scene nodes efficiently and display movements of ship and OBS dynamically, the system uses 3D visualization technology to build OBS delivery scene based on MFC framework under the visual development environment of VS2010 and OSG 3.0.0. We use bathymetric grid data to generate terrain LOD model based on Chunked LOD, and use DatabasePager and PagedLOD technology to realize dynamic scheduling of terrain. The system achieves 3D visualization and multi-angle surveillance of OBS delivery process through roaming. It shows the seabed topography and operation process directly, and improves the OBS delivery precision and data quality.
OBS Three dimensional visualization OpenSceneGraph Thread conflict Dynamic scheduling of terrain
2016-07-04。國家高技術(shù)研究發(fā)展計劃項目(GZH201200508)。王躍,碩士生,主研領(lǐng)域:虛擬現(xiàn)實,三維可視化。鄭貴洲,教授。
TP391.41
A
10.3969/j.issn.1000-386x.2017.08.017