• 
    

    
    

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

      機載三維激光掃描儀軟件系統(tǒng)構(gòu)建

      2017-01-21 15:27:30王呂梁郭唐永李世鵬朱威王磊
      軟件導(dǎo)刊 2016年12期
      關(guān)鍵詞:點云

      王呂梁+郭唐永+李世鵬+朱威+王磊

      摘 要:三維激光測繪已廣泛應(yīng)用于城市測繪中,機載三維激光掃描儀是當(dāng)前測繪領(lǐng)域的一個新標(biāo)桿,但大部分技術(shù)仍由國外壟斷,研發(fā)機載三維激光掃描儀和相配套的軟件尤為必要。機載三維激光掃描儀研制需要從硬件和軟件兩個部分著手,從掃描儀得到原始點云數(shù)據(jù)后,通過相應(yīng)軟件對數(shù)據(jù)作后期處理,設(shè)計出友好的交互界面,展現(xiàn)場景,實現(xiàn)三維重構(gòu)。

      關(guān)鍵詞:機載激光掃描儀; 點云; 三維重構(gòu)

      DOIDOI:10.11907/rjdk.162060

      中圖分類號:TP319

      文獻標(biāo)識碼:A文章編號:1672-7800(2016)012-0087-02

      0 引言

      機載三維激光測量技術(shù)是一項前沿性研究課題[1]。機載三維激光掃描儀具有很多傳統(tǒng)測繪儀器無法比擬的優(yōu)越性,有著廣泛的應(yīng)用領(lǐng)域[2],如地形測繪、災(zāi)害調(diào)查與環(huán)境監(jiān)測、森林?jǐn)?shù)字高程圖獲取、城市三維建模等,還應(yīng)用于工程建設(shè)、逆向工程、電線管道布局、3D打印等領(lǐng)域。我國大部分激光掃描儀主要靠國外公司提供相關(guān)技術(shù)支持。研制出擁有自主知識產(chǎn)權(quán)的機載三維激光掃描儀具有重要意義。本文以掃描儀系統(tǒng)硬件為出發(fā)點,介紹硬件系統(tǒng)架構(gòu)及其技術(shù)難點,針對硬件特點分析軟件功能需求,最后利用點云庫完成軟件系統(tǒng)開發(fā)。

      1 系統(tǒng)硬件架構(gòu)

      1.1 硬件架構(gòu)分析

      本系統(tǒng)分為儀器和軟件兩個部分。儀器設(shè)計需滿足測量要求,實現(xiàn)高速精準(zhǔn)掃描、全波段數(shù)據(jù)采集,具有效率高、可靠性好、便于維護等特點。儀器系統(tǒng)主要由6個部分組成,即激光發(fā)射系統(tǒng)、光學(xué)掃描鏡與收發(fā)光路系統(tǒng)、高精度時間測量系統(tǒng)、高精度頻率源系統(tǒng)、數(shù)據(jù)采集與處理系統(tǒng)、圖像處理系統(tǒng),如圖1所示。

      1.2 儀器功能實現(xiàn)

      硬件系統(tǒng)的核心為掃描鏡收發(fā)光路系統(tǒng)、高精度時間測量與控制系統(tǒng)和數(shù)據(jù)采集系統(tǒng)[4]。收發(fā)光路系統(tǒng)主要包括卡塞格林望遠鏡、變焦擴束準(zhǔn)直系統(tǒng)、窄帶光濾波等。由于激光的單色性較好,主要對藍綠光波進行接收,采用可變增益的PMT光電倍增管,實現(xiàn)100dB的動態(tài)接收范圍,確保能夠接收到微弱的回波信號。

      掃描儀測距由一個高精度時間測量系統(tǒng)實現(xiàn),采用FPGA搭建控制電路來控制時間脈沖觸發(fā),采用先進的時間頻率測控技術(shù)馴服高穩(wěn)定度的銣原子鐘,將高穩(wěn)定度、低相噪雙槽恒溫晶振鎖定在銣原子鐘上,將GPS衛(wèi)星的長期穩(wěn)定性原子頻標(biāo)的中期穩(wěn)定性與高穩(wěn)晶振的短期穩(wěn)定性完美結(jié)合,使采樣頻率同步在GPS原子鐘信號上,保證激光掃描儀的探測精度。

      數(shù)據(jù)采集系統(tǒng)由高速數(shù)字采集卡和磁盤陣列存儲服務(wù)器構(gòu)成。高速數(shù)字采集卡將光電轉(zhuǎn)換系統(tǒng)輸出的回波模擬信號轉(zhuǎn)換為數(shù)字信號。機載三維激光掃描儀的探測發(fā)射脈沖寬度小于5ns,保證回波脈沖數(shù)據(jù)采集時不失真,系統(tǒng)設(shè)計的回波采樣率達到1GHz,采樣位數(shù)為12位。

      2 系統(tǒng)需求分析

      機載三維激光掃描儀主要用在測繪領(lǐng)域,分為近距離和遠距離兩種,其中遠距離激光主要是激光雷達系統(tǒng),近距離掃描儀主要為微軟的Kinect[3-4]。

      機載三維激光掃描儀軟件系統(tǒng)關(guān)鍵為點云數(shù)據(jù)讀取、數(shù)據(jù)分析處理及場景重建。所設(shè)計的軟件要能夠處理掃描儀的原始數(shù)據(jù),包括數(shù)據(jù)分析處理、濾波精簡、三維重建等。

      軟件系統(tǒng)主要由4個部分組成,包括數(shù)據(jù)讀寫、點云顯示、濾波、網(wǎng)格重建[5]。實現(xiàn)激光掃描儀數(shù)據(jù)處理和使用,與掃描儀器構(gòu)成一套完備的測繪系統(tǒng),軟件系統(tǒng)功能模塊如圖2所示。

      3 系統(tǒng)軟件實現(xiàn)

      軟件系統(tǒng)的關(guān)鍵技術(shù)在于點云讀寫存儲、濾波和網(wǎng)格重建。基于QT平臺和PCL(Point Cloud Library),通過CMake編譯VTK(Visualization Toolkit)QT插件,實現(xiàn)可視化與點云庫協(xié)同操作,由QT提供交互界面。

      點云讀寫存儲由PCL提供的IO類繼承而來,主要針對PCD格式的點云數(shù)據(jù)和PLY格式的網(wǎng)格數(shù)據(jù)[6],格式統(tǒng)一,便于數(shù)據(jù)處理。讀取點云數(shù)據(jù)時先根據(jù)文件后綴判斷格式,是否以.pcd或者.ply格式結(jié)尾,是則讀取,否則返回。讀取后對數(shù)據(jù)進行稀疏判斷,若為密集數(shù)據(jù),則從數(shù)據(jù)中剔除NAN字符,完成數(shù)據(jù)讀取。同理,完成點云的存儲操作,作下一步處理,讀取點云數(shù)據(jù)的程序代碼如下:

      QString filename = QFileDialog::getOpenFileName(this, tr("Open Point Cloud"),"D:",tr("Point Cloud Data(*.pcd *.ply )"));

      PCL_INFO("File chose: %s\\n", filename.toStdString().c_str());

      pcl::PointCloud:Ptr cloud_tmp(new pcl::PointCloud);

      if (filename.isEmpty())

      return;

      int return_status;

      if (filename.endsWith(".pcd", Qt::CaseInsensitive))

      return_status = pcl::io::loadPCDFile(filename.toStdString(), *cloud_tmp);

      else

      return_status = pcl::io::loadPLYFile(filename.toStdString(), *cloud_tmp);

      if (return_status != 0)

      {

      PCL_ERROR("Error reading point cloud %s\\n", filename.toStdString().c_str());

      return;

      }

      //To determine whether the point cloud is dense or not

      if (cloud_tmp->is_dense)

      {

      pcl::copyPointCloud(*cloud_tmp, *cloud);

      }

      else

      {

      PCL_WARN("Cloud is not dense! Non finite points will be removed\\n");

      std::vector vec;

      pcl::removeNaNFromPointCloud(*cloud_tmp, *cloud, vec);

      }

      點云的視圖切換操作通過設(shè)置相機的位置矩陣函數(shù)setCameraPosition()實現(xiàn),通過給定不同的矩陣參數(shù),用戶可以快速切換點云視角,選擇出最好的視角場景效果。由編譯后的VTK庫生成的QVTKWidget控件提供視圖操作,用戶可以實現(xiàn)平移旋轉(zhuǎn)與縮放等基本三維可視化操作。

      點云濾波分為直通濾波、體素柵格濾波和統(tǒng)計學(xué)外點移除濾波3個部分。這些濾波方法主要目的是精簡數(shù)據(jù),去除飛點等噪聲點,減小數(shù)據(jù)體積,優(yōu)化點云數(shù)據(jù)結(jié)構(gòu),方便可視化操作和下一步數(shù)據(jù)處理,提高點云質(zhì)量和計算速度。其中統(tǒng)計學(xué)外點移除濾波部分代碼如下:

      PointCloudT_XYZ::Ptr cloud_filtered(new PointCloudT_XYZ);

      pcl::StatisticalOutlierRemoval outlierRemoval;

      outlierRemoval.setInputCloud(cloud);

      outlierRemoval.setMeanK(ui->lineEditMeanK->text().toInt());

      outlierRemoval.setStddevMulThresh(ui->lineEdit_StddevMulThresh->text().toDouble());

      outlierRemoval.filter(*cloud_filtered);

      pcl::copyPointCloud(*cloud_filtered, *cloud);

      點云的網(wǎng)格生成由貪婪投影三角網(wǎng)格化、柵格投影網(wǎng)格化和移動最小二乘法3個部分組成。貪婪投影三角網(wǎng)格化實現(xiàn)無序點云的快速重構(gòu),性能良好。柵格投影網(wǎng)格化計算速度稍慢,但可以實現(xiàn)破面、孔洞等的修復(fù),柵格大小由用戶界面設(shè)置。移動最小二乘法采用的是多項式插值方法,設(shè)置鄰域點的個數(shù)和多項式階數(shù),在該范圍內(nèi)多項式擬合,擬合后的曲面進行估計法線,使法向量有序化,再對設(shè)置半徑范圍內(nèi)的點采樣處理,讓點云分布均勻,完成這些操作后再進行存儲,進一步網(wǎng)格化重建模型,得到的網(wǎng)格更加致密光滑。移動最小二乘法的實現(xiàn)代碼如下:

      pcl::search::KdTree::Ptr tree(new pcl::search::KdTree);

      mls.setInputCloud(cloud);

      mls.setSearchMethod(tree);

      mls.setPolynomialFit(true);

      mls.setPolynomialOrder(ui->lineEdit_MLS_setPolynomialOrder->text().toInt());

      mls.setComputeNormals(false);

      mls.setSearchRadius(ui->lineEdit_MLS_setSearchRadius->text().toDouble());

      mls.setUpsamplingMethod(mls.SAMPLE_LOCAL_PLANE);

      mls.setUpsamplingRadius(ui->lineEdit_MLS_setUpsamplingRadius->text().toDouble());

      mls.setUpsamplingStepSize(ui->lineEdit_MLS_setUpsamplingStepSize->text().toDouble()

      mls.process(*outputCloud);

      4 結(jié)語

      通過機載三維激光掃描儀系統(tǒng)構(gòu)建,探討了機載三維激光掃描儀技術(shù),實現(xiàn)了儀器高速數(shù)據(jù)測量、采集和數(shù)據(jù)處理。配合編寫的機載三維激光掃描儀軟件系統(tǒng),實現(xiàn)了點云數(shù)據(jù)的讀寫、精簡濾波與三維重建,完成了設(shè)計要求和精度要求,具有一定的應(yīng)用推廣價值。后期研究中,將在儀器方面提高數(shù)據(jù)高采樣頻率、改進掃描點的算法、提高數(shù)據(jù)傳輸實時性及增大極限掃描距離等,在軟件方面提高軟件的穩(wěn)定性、增加線程操作、優(yōu)化算法、支持更多點云格式文件的操作、改善用戶體驗等,為三維激光掃描儀提供更多的技術(shù)支持。

      參考文獻:

      [1] 黨夢林,裴海龍. 基于QT的機載三維激光地形測繪軟件構(gòu)建[J]. 計算機測量與控制,2013(4):1084-1086+1089.

      [2] 張小紅. 機載激光雷達測量技術(shù)理論與方法[M]. 武漢:武漢大學(xué)出版社,2007.

      [3] 李世鵬,郭唐永,羅青山,等.海陸一體機載激光掃描儀的設(shè)計[J]. 大地測量與地球動力學(xué),2013(S2):58-60,70.

      [4] 鐘棉卿. 機載激光雷達系統(tǒng)初步方案研究[D].西安:西安科技大學(xué),2012.

      [5] 陳鑌. 機載激光測量系統(tǒng)設(shè)計與實現(xiàn)[D].廣州:華南理工大學(xué),2010.

      [6] 朱德海.點云庫PCL學(xué)習(xí)教程[M].北京:北京航空航天大學(xué)出版社,2012.

      (責(zé)任編輯:陳福時)

      猜你喜歡
      點云
      基于三角形相似性的點云配準(zhǔn)算法
      軟件工程(2024年7期)2024-12-31 00:00:00
      三維激光掃描技術(shù)在公路軟弱圍巖隧道變形監(jiān)測中的應(yīng)用
      基于DNSS與點到平面的ICP結(jié)合的點云配準(zhǔn)算法
      基于Geomagic的汽車內(nèi)門把手逆向設(shè)計
      基于KD樹的點云索引技術(shù)研究
      科技視界(2015年30期)2015-10-22 11:47:10
      利用LiDAR點云快速進行等高線制作
      科技資訊(2015年20期)2015-10-15 19:23:03
      基于實測數(shù)據(jù)的果樹三維數(shù)字模型構(gòu)建
      基于三維激光掃描點云的樹冠面積快速精準(zhǔn)計算方法
      綠色科技(2015年6期)2015-08-05 18:25:42
      機載三維激光點云數(shù)據(jù)處理技術(shù)研究
      科技資訊(2015年14期)2015-06-29 17:23:17
      基于點云數(shù)據(jù)建模在三維數(shù)字工廠建設(shè)中的應(yīng)用研究
      價值工程(2015年12期)2015-05-05 05:54:45
      太仆寺旗| 长垣县| 石台县| 长子县| 凌云县| 建宁县| 东安县| 行唐县| 井冈山市| 乐亭县| 揭东县| 五寨县| 东明县| 桐梓县| 临朐县| 深水埗区| 江津市| 三穗县| 饶河县| 华蓥市| 蕲春县| 奎屯市| 拜泉县| 广宗县| 神池县| 两当县| 磐安县| 定日县| 桃园县| 霍城县| 泰来县| 和林格尔县| 牟定县| 子长县| 秦安县| 滨州市| 石泉县| 东乌| 阿瓦提县| 河间市| 通州市|