pcl點雲概述
點雲處理技術廣泛應用在逆向工程、cad/cam、機械人學、雷射遙感測量、機器視覺、虛擬實境、人機互動、立體3d影像等諸多領域。由於其涉及計算機學、圖形學、人工智慧、模式識別、幾何計算、感測器等諸多學科,但一直以來由於點雲獲取手段的昂貴,嚴重阻礙其在各個行業上的廣泛應用,也造成國內點雲處理的理論性和工具性書籍匱乏。在2023年,隨著消費級rgbd裝置(低成本點雲獲取)的大量上市,以微軟的kinect為前導,目前已有華碩、奧比中光等多家公司開始量產此類產品,正在形成基於rgbd的新一代機器視覺生態鏈 , pcl(point cloud library)應運而生。pcl是在吸收了前人點雲相關研究基礎上建立起來的跨平台開源庫,可在windows、linux、android、mac os x、部分嵌入式實時系統上執行,它實現了大量通用演算法和資料結構,涉及點雲獲取、濾波、分割、配準、檢索、特徵提取、識別、追蹤、曲面重建、視覺化等基礎模組以及人體骨骼識別提取、動作跟蹤識別等應用,並且新的其他應用正在大量增加。如果說opencv是2d資訊獲取與處理的結晶,那麼pcl就在3d資訊獲取與處理上具有同等地位。筆者深信隨著各大廠商對rgbd裝置的大力推出,基於此裝置的各種應用將會大量湧現,而pcl不僅是這類應用的核心關鍵技術,而且基於它進行擴充套件,將會極大地提高應用系統開發效率和穩定性。
三維資訊的獲取與處理是筆者所在研究團隊的重要方向之一,在農業物件的三維資訊獲取與重建、虛擬農業等領域不斷探索新的獲取技術和處理方法,在2023年7月發現了opencv的姐妹pcl及其**的rss更新,時刻關注pcl在3d資訊獲取和處理方面的新動向,並與pcl結緣。在跟蹤過程中發現,pcl對rgbd資料的獲取和處理提供了強大支援,並有大量的機械人、虛擬實境、人機互動、機器視覺等領域的應用案例,目前幾乎每半個月就有新的開發計畫,或者有新的資助者或開發者加入。加入pcl開發的團隊來自包括全球的aist,uc berkeley,university of bonn,university of british columbia,eth zurich等等。同時我們團隊已經把pcl作為開發出實際應用的基礎平台,用於跨平台支援嵌入式裝置的3d農業資訊獲取與處理的基礎庫。目前pcl正在快速成長階段,國內外尚無相關的中英文系統學習書籍,鑑於此,經過團隊討論,把我們學習和開發應用期間整理的資料與國內讀者一起分享,加快pcl在其他各行業中的應用,推動3d資訊快速獲取與處理的發展。
pcl的潛在讀者群:
機械人研究或應用開發者機器視覺的研究或應用開發者。人機互動研究或應用開發者。互動式體感遊戲開發者。虛擬實境研究或應用開發者。cad/cam和逆向工程工作者。工業自動化測量、檢測領域的研究或應用開發者。雷射雷達遙感的研究或應用開發者。
1.1 什麼是pcl
pcl是point cloud library的簡稱,是乙個開源的用c++語言開發的點雲庫,它實現了大量點雲相關的通用演算法和高效資料結構,涉及到點雲獲取、濾波、分割、配準、檢索、特徵提取、識別、追蹤、曲面重建、視覺化等。而且支援多種操作平台,可在windows、linux、android、mac os x、部分嵌入式實時系統上執行。如果說opencv是2d資訊獲取與處理的結晶,那麼pcl就是在3d資訊獲取與處理上的結晶,具有同等地位。pcl也是bsd授權方式,可以免費進行商業和學術應用。
1.2 pcl的發展與創景
隨著加入組織的增多,pcl官方目前的計畫是繼續加入很多新的功能模組和演算法的實現,包括當前最新的3d相關的處理演算法和相關裝置的支援,如基於primesensor 3d裝置,微軟kinect或者華碩的xtionpro智慧型互動應用等,詳細讀者可以參考官方**每期的新聞,而且也計畫進一步支援使用cuda和opencl等基於gpu的高效能計算的技術。筆者相信在近幾年內會有更多的人和組織加入到這個專案中來,共享開源pcl帶來的各自領域的成果。
1.3 pcl的潛在應用領域
1.3.2 cad/cam、逆向工程
大部分工業產品是根據二維或三維cad模型製造而成,但有時因為資料丟失、設計多次更改、實物引進等原因,產品的幾何模型無法獲得,因而常常需要根據現有產品實物生成物體幾何模型。逆向工程技術能夠對產品實物進行測繪,重構產品表面三維幾何模型,生成產品製造所需的數位化文件。在一些工業領域,如汽車製造業,許多零件的幾何模型都通過逆向工程由油泥模型或實物零件獲得,目前在cad/cam領域利用雷射點雲進行高精度測量與重建成為趨勢,同時引來了新的問題,通過獲取的海量點雲資料,來提取重建模型的幾何引數或者形狀模型,對模型進行智慧型檢索,從點雲資料獲取模型的曲面模型等,諸如此類的問題解決方案在pcl中都有涉及。例如kd-tree和oc-tree對海量點運進行高效壓縮儲存與管理,其中濾波、配準、特徵描述與提前基礎處理,可以應用於模型的智慧型檢索以及後期的曲面重建和視覺化都在pcl中有相應的模組。總之,三維點雲資料的處理是逆向工程中比較重要的一環,pcl中間所有的模組正是為此而生的。
1.3.3 雷射遙感測量
能夠直接獲取高精度三維地面點資料,是對傳統測量技術在高程資料獲取及自動化快速方面的重要技術補充。雷射遙感測量系統在地形測繪、環境檢測、三維城市建模、地球科學、行星科學等諸多領域具有廣泛的發展前景,是目前最先進的能實時獲取地形表面三維空間資訊和影像的遙感系統。目前,在各種提取地面點的演算法中,演算法結果與實際結果之間差別較大,違背了實際情況,pcl中強大的模組可以助力解決此問題。
1.3.4 虛擬實境、人機互動
虛擬實境技術(vr)又稱靈境技術,是以沉浸性、互動性和構想性為基本特徵的計算機高階人機介面。它綜合利用了計算機圖形學、**技術、多**技術、人工智慧技術、計算機網路技術、並行處理技術和多感測器技術,模擬人的視覺、聽覺、觸覺等感覺器官功能,使人能夠沉浸在計算機生成的虛擬境界中,並能夠通過語言、手勢等自然的方式與之進行實時互動,建立了一種適人化的多維資訊空間,具有廣闊的應用前景。目前各種互動式體感應用的推出,讓虛擬實境與人機互動發展非常迅速,以微軟、華碩、三星等為例,目前諸多公司推出的rgbd解決方案,勢必會讓虛擬實境走出實驗室,因為現在的rgbd裝置已經開始大量推向市場,只是缺少其他應用的跟進,這正是在為虛擬實境和人機互動應用鑄造生態鏈的底部,筆者認為這也正是pcl為何在此時才把自己與世人分享的重要原因所在,它將是基於rgbd裝置的虛擬實境和人機互動應用生態鏈中最重要的乙個環節。讓我們抓住這乙個節點,立足於互動式應用的一片小天地,但願本書來的不是太遲。
1.4 pcl在中國
pcl雖然在國際上有如此多的組織和公司參與,由於發展如此迅速,目前(2023年4月)在google中檢索出中文相關的pcl**,有且只有一條,當然這也是筆者出書原因之一了。事實上,如圖1-2所示,在全球範圍內,唯獨沒有中國參與組織,這裡希望廣大讀者可以為中國板塊上新增乙個小旗幟。當然,肯定有科研工作者在應用或者學習pcl了,筆者依託於中國農業大學農業部資訊獲取技術重點實驗室,在與創始人radu博士交流後,深感pcl在複雜的農業物件中有不可估量的作用,例如對動植物的重建測度、果蔬等分級檢測等應用領域,決定把pcl作為基礎研究平台來開展實際應用。同時用學習筆記撰寫了本書把pcl與國人分享,相信在不久的將來,與2d資訊處理庫opencv一樣,中國將是pcl最大的使用者和貢獻者基地。
1.5 pcl的結構和內容
PCL 1 PCL點雲庫安裝
2.傻瓜式安裝 下面的依賴項都整合進來了 中間安裝了boost vtk kinect驅動什麼的。反正是一路下一步,當然我的機器是win7系統,之前沒有安裝過pcl,比較純淨。之後又單獨安裝了qt4.8.2的sdk。3.測試 在安裝目錄下有share doc pcl 1.6 tutorials sou...
PCL點雲庫的安裝
pcl庫是點雲庫 point cloud library 4 pcl庫的安裝比較容易,輸入以下命令即可 也可以使用源 安裝 sudo add apt repository ppa v launchpad jochen sprickerhof de pcl sudo apt get update su...
PCL 點雲資料處理方法概述
目錄 三維點雲資料處理技術 1.點雲濾波 資料預處理 2.點雲關鍵點 3.特徵和特徵描述 4.點雲配準 5.點雲分割與分類 6.slam圖優化 7.目標識別檢索 8.變化檢測 9.三維重建 10.點雲資料管理 pcl庫簡介 回到課題上,接下來要面對的就是點雲資料的處理了。這篇部落格主要介紹三維計算機...