• 
    

    
    

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

      ?

      基于VTK的機(jī)載LiDAR點(diǎn)云數(shù)據(jù)的可視化

      2013-06-26 07:39:18張震張碩馬召恒
      城市勘測(cè) 2013年3期
      關(guān)鍵詞:類(lèi)庫(kù)激光測(cè)距數(shù)據(jù)格式

      張震 ,張碩,馬召恒

      (1.山東科技大學(xué)測(cè)繪科學(xué)與技術(shù)學(xué)院,山東 青島 266510; 2.河南省地礦局第二地質(zhì)勘察院,河南 許昌 461000)

      1 引 言

      進(jìn)入新世紀(jì)以來(lái),隨著“數(shù)字地球”、“數(shù)字城市”的不斷發(fā)展,傳統(tǒng)的攝影測(cè)量技術(shù)由于其生產(chǎn)周期長(zhǎng)、費(fèi)用高、效率低等缺點(diǎn),已經(jīng)不能滿足信息發(fā)展的需要。LiDAR 作為測(cè)繪領(lǐng)域一項(xiàng)具有革命性的成就之一,通過(guò)幾十年的發(fā)展,如今的LiDAR 技術(shù)日趨完善,它正廣泛應(yīng)用于測(cè)繪領(lǐng)域的各個(gè)方面。相對(duì)于歐美國(guó)家成熟的LiDAR 技術(shù)來(lái)說(shuō),我國(guó)目前在這方面的研究和應(yīng)用還處于剛剛起步的階段,相關(guān)的數(shù)據(jù)處理方法還處于技術(shù)探索和發(fā)展的階段。

      為了能有一個(gè)同一的標(biāo)準(zhǔn),2003年美國(guó)攝影測(cè)量與遙感(ASPRS)協(xié)會(huì)下的LiDAR 委員會(huì)發(fā)布了主要面向機(jī)載LiDAR 數(shù)據(jù)的標(biāo)準(zhǔn)格式LAS??梢暬ぞ甙?Visualization Toolkit,VTK)是一個(gè)面向?qū)ο蟮目梢暬?lèi)庫(kù),由于其功能強(qiáng)大、方便使用以及源代碼開(kāi)放等特點(diǎn),它被廣泛用于可視化工具的開(kāi)發(fā)領(lǐng)域中。本文以2009年發(fā)布的LAS 1.3 為基礎(chǔ),通過(guò)對(duì)其數(shù)據(jù)格式的解析與分析,在挪威TrollTech 公司開(kāi)發(fā)的Qt 平臺(tái)上,結(jié)合VTK 技術(shù),以C++為開(kāi)發(fā)工具,實(shí)現(xiàn)了對(duì)LAS文件中的點(diǎn)云數(shù)據(jù)的快速讀取顯示,為后期對(duì)LiDAR數(shù)據(jù)處理奠定了初步的基礎(chǔ)。

      2 機(jī)載LiDAR 技術(shù)概述

      2.1 機(jī)載LiDAR 系統(tǒng)組成

      機(jī)載LiDAR 系統(tǒng)是一個(gè)集多種電子設(shè)備于一身的集成系統(tǒng)。其主要組成包括:①激光測(cè)距儀,發(fā)生激光脈沖并接受回波;②動(dòng)態(tài)差分GPS,用于確定掃描中心的空間位置;③慣性測(cè)量單元IMU,確定掃描儀的姿態(tài);④高分辨率的數(shù)碼相機(jī),與激光掃描儀同步獲取航空影像。

      2.2 機(jī)載LiDAR 技術(shù)工作原理

      (1)激光測(cè)距原理

      激光測(cè)距的基本原理是利用光在空氣中的傳播速度已知這一特性,測(cè)定光波在被測(cè)距離上往返傳播的時(shí)間來(lái)求得距離值。它主要采用兩種測(cè)距原理,即脈沖激光測(cè)距和連續(xù)波激光測(cè)距。由于連續(xù)波激光測(cè)距雷達(dá)的平均發(fā)射功率較低,測(cè)距能力比相應(yīng)的脈沖激光雷達(dá)測(cè)距差很多,所以當(dāng)前大多數(shù)雷達(dá)系統(tǒng)都采用脈沖激光測(cè)距來(lái)測(cè)量距離。

      (2)機(jī)載LiDAR 技術(shù)對(duì)地定位原理

      假設(shè)地理空間中一點(diǎn)O 的三維坐標(biāo)(X0,Y0,Z0)已知,求出這一已知點(diǎn)到待定點(diǎn)A(XA,YA,ZA)的向量P(模,方向余弦),則A 點(diǎn)的坐標(biāo)可以根據(jù)O 點(diǎn)坐標(biāo)與向量P 求出,如圖1所示。

      圖1 機(jī)載LiDAR 技術(shù)對(duì)地定位原理

      XA=X0+△X

      YA=Y0+△Y

      ZA=Z0+△Z

      其中:

      △X=FX(Φ,ω,Κ,θ,S)

      △Y=FY(Φ,ω,Κ,θ,S)

      △Z=FZ(Φ,ω,Κ,θ,S)

      已知點(diǎn)O 的三維坐標(biāo)(X0,Y0,Z0)由GPS 提供;方向余弦由觀測(cè)平臺(tái)的法線的俯仰角Φ、側(cè)滾角ω、航偏角K 及觀測(cè)方向與法線間夾角θ 組成的矢量矩陣求出,觀測(cè)平臺(tái)法線的Φ,ω,K 由姿態(tài)裝置給出;矢量的模S 由激光測(cè)距儀給出,上述X0,Y0,Z0,Φ,ω,K,θ,S已知,那么任意測(cè)定點(diǎn)A 的三維坐標(biāo)(XA,YA,ZA)即可求出。

      3 機(jī)載LiDAR 數(shù)據(jù)格式及特點(diǎn)

      3.1 機(jī)載LiDAR 數(shù)據(jù)格式

      機(jī)載LiDAR 數(shù)據(jù)一般有兩種格式:一種是ASCII格式,這種格式的數(shù)據(jù)便于讀取,但是它沒(méi)有壓縮,Li-DAR 數(shù)據(jù)通常都是海量數(shù)據(jù),存儲(chǔ)和處理起來(lái)占用的內(nèi)存較大;另一種是目前國(guó)際上通用的機(jī)載LiDAR 數(shù)據(jù)的標(biāo)準(zhǔn)格式LAS,LAS 數(shù)據(jù)格式文件采用的是二進(jìn)制格式,包含更多的信息,占用的內(nèi)存空間相對(duì)較小,LAS 標(biāo)準(zhǔn)格式是由美國(guó)攝影測(cè)量與遙感協(xié)會(huì)2003年開(kāi)始發(fā)布的,經(jīng)過(guò)改進(jìn),目前已有5 種版本,分別是LAS1.0,1.1,1.2,1.3,2.0,其中LAS1.3 版本是最常見(jiàn)到的數(shù)據(jù)格式。

      3.2 LAS1.3 數(shù)據(jù)格式特點(diǎn)

      LAS1.3 數(shù)據(jù)格式由二進(jìn)制數(shù)據(jù)組成,包含一個(gè)頭文件區(qū),變長(zhǎng)記錄區(qū)和點(diǎn)記錄區(qū)。頭文件區(qū)包含一個(gè)公共區(qū),后面緊接著變長(zhǎng)記錄。公共區(qū)塊包含一些描述數(shù)據(jù)整體情況的記錄,比如點(diǎn)記錄數(shù),坐標(biāo)邊界。變長(zhǎng)記錄包含一些變長(zhǎng)類(lèi)型數(shù)據(jù),有投影信息,元數(shù)據(jù),波形數(shù)據(jù)包信息和用戶(hù)應(yīng)用數(shù)據(jù)。如果包含波形數(shù)據(jù)包的話,那么它位于所有點(diǎn)數(shù)據(jù)記錄的末尾。它被放置在該處以方便對(duì)它的分離或?qū)嶓w化。該記錄是一個(gè)擴(kuò)展變長(zhǎng)記錄(EVLR)。EVLR 的存儲(chǔ)格式為無(wú)符號(hào)超長(zhǎng)整型,允許存儲(chǔ)比一個(gè)變長(zhǎng)記錄更多的信息。

      4 可視化工具包VTK

      VTK 是一個(gè)用于3D 計(jì)算機(jī)圖形學(xué)、計(jì)算機(jī)圖像處理以及可視化應(yīng)用程序的設(shè)計(jì)與開(kāi)發(fā),同時(shí)可以免費(fèi)獲取,開(kāi)放源代碼的獨(dú)立類(lèi)庫(kù)。它包括兩個(gè)基本的子系統(tǒng):一個(gè)是已經(jīng)編譯好的C++類(lèi)庫(kù);另一個(gè)接口層,提供了支持Java,Tcl 和Python 等解釋性語(yǔ)言的接口。VTK 支持多線程,分布式運(yùn)算,可支持多種用戶(hù)交互方式,支持事件/觀察者(Command/Observer)用戶(hù)事件處理模式并提供包括點(diǎn)(Point),線(Lines)和三角網(wǎng)(Triangle Strips)等多種基本繪制圖元,它可以在Windows,Linux 和Unix 等平臺(tái)下的多種編程調(diào)用,所以它被廣泛用于可視化工具的開(kāi)發(fā)領(lǐng)域中。

      4.1 VTK 的功能分類(lèi)

      由于VTK 的類(lèi)庫(kù)特別龐大,所以根據(jù)各個(gè)類(lèi)在類(lèi)庫(kù)中的作用,將類(lèi)庫(kù)中的類(lèi)分成如下幾部分:公共部分(Common)、圖形處理部分(Graphics)、圖像處理部分(Imaging)、文件讀寫(xiě)部分(IO)、繪制部分(Rendering)、數(shù)據(jù)轉(zhuǎn)換部分(Filtering)等,每部分被編譯成相應(yīng)的動(dòng)態(tài)連接庫(kù)。各部分在類(lèi)庫(kù)中的層次如圖2所示。

      圖2 VTK 類(lèi)庫(kù)中的層次

      4.2 VTK 可視化管道

      VTK 是在OpenGL 函數(shù)庫(kù)的基礎(chǔ)之上,采用面向?qū)ο蟮姆椒òl(fā)展起來(lái)的,它有兩種不同的方式:圖形模型(Graphics Models)和可視化模型(Visualization Models)。圖形模型是三維圖形的抽象,側(cè)重于對(duì)圖像、圖形的操作和處理;可視化模型是可視化過(guò)程中數(shù)據(jù)流程的模型,側(cè)重于在可視化過(guò)程中的數(shù)據(jù)流。VTK 可視化管道圖如圖3所示。

      圖3 VTK 可視化管道圖

      5 機(jī)載LiDAR 點(diǎn)云數(shù)據(jù)的可視化

      Qt 是由奇趣科技開(kāi)發(fā)的跨平臺(tái)C++圖形用戶(hù)界面應(yīng)用程序開(kāi)發(fā)框架。它既可以開(kāi)發(fā)GUI 程式,也可用于開(kāi)發(fā)非GUI 程式。Qt 的良好封裝機(jī)制使得Qt 的模塊化程度非常高,可重用性較好,同時(shí)它支持2D/3D 圖形渲染和OpenGL,這對(duì)于用戶(hù)開(kāi)發(fā)來(lái)說(shuō)是非常方便的。現(xiàn)有2010年獲取的位于焦作市西北約30 km 處的太行山區(qū)部分機(jī)載LiDAR 點(diǎn)云數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù),其數(shù)據(jù)格式為L(zhǎng)AS 1.3。在Qt 平臺(tái)上,結(jié)合VTK 技術(shù),以C++為開(kāi)發(fā)工具,即可實(shí)現(xiàn)這片區(qū)域點(diǎn)云數(shù)據(jù)的可視化(如圖4所示)。其主要可視化程序設(shè)計(jì)過(guò)程如下:

      圖4 太行山區(qū)部分LiDAR 點(diǎn)云數(shù)據(jù)的可視化

      (1)獲取點(diǎn)云數(shù)據(jù)

      vtkPoints* pPoint=vtkPoints::New( ) ;

      vtkPolyData* pdata=vtkPolyData::New( ) ;

      pdata->SetPoints( pPoint) ;

      (2)設(shè)置顏色表中的顏色

      vtkLookupTable* pColorTable=vtkLookupTable::New( ) ;

      pColorTable->SetHueRange(0,1) ;

      pColorTable->SetNumberOfColors(225) ;

      pColorTable->Build( ) ;

      (3)創(chuàng)建映射器mapper 及演員actor

      vtkPolyDataMapper* mapper=vtkPolyDataMapper::New( ) ;

      vtkActor* actor=vtkActor::New( ) ;

      mapper->SetInput( pdata) ;

      actor->SetMapper( mapper) ;

      (4)創(chuàng)建渲染器ren 及顯示窗口renwin

      vtkRenderer* ren=vtkRenderer::New( ) ;

      vtkRenderWindow* renwin=vtkRenderWindow::New( ) ;

      ren->AddViewProp( actor) ;

      renwin->AddRenderer( ren) ;

      renwin->SetSize(800,800) ;

      (5)創(chuàng)建交互窗口inter 及點(diǎn)云數(shù)據(jù)可視化顯示

      vtkRenderWindowInteractor* inter = vtkRenderWindowInteractor::New( ) ;

      inter->SetRenderWindow( renwin) ;

      inter->Initialize( ) ;

      inter->Start( ) ;

      6 結(jié) 論

      機(jī)載LiDAR 作為一種新興的現(xiàn)代化測(cè)量技術(shù)手段,它可以快速獲取地面地物的三維數(shù)據(jù),得到點(diǎn)云數(shù)據(jù)。由于點(diǎn)云數(shù)據(jù)處理起來(lái)相對(duì)比較麻煩,筆者通過(guò)對(duì)機(jī)載LiDAR 點(diǎn)云數(shù)據(jù)標(biāo)準(zhǔn)格式的研究,基于VTK 技術(shù)編程實(shí)現(xiàn)了點(diǎn)云數(shù)據(jù)的快速讀取顯示,有助于后期生成DEM,三維建模等進(jìn)一步的研究。

      [1]楊洋,張永生.基于LiDAR 數(shù)據(jù)的建筑物輪廓提取[J].測(cè)繪科學(xué),2010,35(3) :203 ~205.

      [2]陳松堯,程新文.機(jī)載LiDAR 系統(tǒng)原理及應(yīng)用綜述[J].測(cè)繪工程,2007,16(2) :27 ~31.

      [3]張靖,高偉.LAS 格式解析及其擴(kuò)展域的應(yīng)用[J].測(cè)繪科學(xué),2008,33(3) :154 ~155.

      [4]常君明,邱磊,鄒早建.基于VTK 的CFD 可視化系統(tǒng)開(kāi)發(fā)和應(yīng)用[J].武漢理工大學(xué)學(xué)報(bào),2004,26(4) :83 ~85.

      [5]劉玉芳,王潤(rùn)懷,宋金星.基于VTK 的三維地層可視化探討[J].河南理工大學(xué)學(xué)報(bào),2009,28(3) :303 ~306.

      [6]李清泉,李必軍,陳靜.激光雷達(dá)測(cè)量技術(shù)及其應(yīng)用研究[J].武漢測(cè)繪科技大學(xué)學(xué)報(bào),2000,25(5) :387 ~392.

      猜你喜歡
      類(lèi)庫(kù)激光測(cè)距數(shù)據(jù)格式
      用Java編寫(xiě)客戶(hù)機(jī)/服務(wù)器端應(yīng)用程序
      Python在數(shù)據(jù)可視化中的應(yīng)用
      基于LabVIEW的偏振調(diào)制激光測(cè)距測(cè)量控制系統(tǒng)
      基于高壓架空線路激光測(cè)距的無(wú)人機(jī)鎖定導(dǎo)線巡航研究
      在智能交通系統(tǒng)中PLC數(shù)據(jù)格式轉(zhuǎn)換方法的研究
      數(shù)據(jù)結(jié)構(gòu)課程教學(xué)改革方案和應(yīng)用效果
      軟件工程(2017年12期)2018-01-29 17:35:55
      數(shù)據(jù)結(jié)構(gòu)可視化類(lèi)庫(kù)的設(shè)計(jì)與實(shí)現(xiàn)
      基于回波強(qiáng)度的激光測(cè)距誤差補(bǔ)償算法研究
      論子函數(shù)在C語(yǔ)言數(shù)據(jù)格式輸出中的應(yīng)用
      DWG與SHP數(shù)據(jù)格式互轉(zhuǎn)換方法研究——以龍巖規(guī)劃測(cè)繪數(shù)據(jù)為例
      东兰县| 衡阳县| 登封市| 宁强县| 石泉县| 涿鹿县| 涟水县| 呼和浩特市| 左贡县| 金湖县| 定兴县| 太和县| 仪征市| 宜城市| 越西县| 饶平县| 永宁县| 山西省| 翁源县| 马公市| 永靖县| 额济纳旗| 英德市| 南木林县| 阳春市| 江都市| 七台河市| 哈巴河县| 舟山市| 响水县| 城口县| 荣成市| 峨眉山市| 通渭县| 四子王旗| 西城区| 响水县| 海丰县| 大理市| 会泽县| 保靖县|