點雲定義 PCL資料型別和點雲處理方式

2021-10-11 18:55:37 字數 2642 閱讀 5187

目錄

1.點雲定義

2. pcl中點雲資料型別

3.點雲資料處理

(1)點雲濾波方法:

(2)關鍵點

(3)特徵和特徵描述

(4)點雲配準

(5)點雲分割與語義分類

(6)slam圖優化

(7)三維重建

(8)點雲資料管理

在獲取物體表面每個取樣點的空間座標後,得到的是乙個點的集合,稱之為「點雲」(point cloud)。

點雲儲存格式有很多:*.pts; *.asc ; *.dat; *.stl ; [1] *.imw;*.xyz;*.las

las格式檔案已成為lidar資料的工業標準格式,las檔案按每條掃瞄線排列方式存放資料,包括雷射點的三維座標、多次回波資訊、強度資訊、掃瞄角度、分類資訊、飛行航帶資訊、飛行姿態資訊、專案資訊、gps資訊、資料點顏色資訊等。

c--class(所屬類)

f一flight(航線號)

t一time(gps時間)

i一intensity(回波強度)

r一return(第幾次回波)

n一number of return(回波次數)

a一scan angle(掃瞄角)

rgb一red green blue(rgb顏色值)

(1)pcl::pointcloud

pointxyz 成員:float x,y,z;表示了xyz3d資訊,可以通過points[i].data[0]或points[i].x訪問點x的座標值

(2)pcl::pointcloud

pointxyzi成員:float x, y, z, intensity; 表示xyz資訊加上強度資訊的型別。

(3)pcl::pointcloud

pointxyzrgb 成員:float x,y,z,rgb; 表示xyz資訊加上rgb資訊,rgb儲存為乙個float。

(4)pcl::pointcloud

pointxyzrgba 成員:float x , y, z; uint32_t rgba; 表示xyz資訊加上rgba資訊,rgba用32bit的int型儲存的。

(5) pointxy 成員:float x,y;簡單的二維x-y點結構

(6)normal結構體:表示給定點所在樣本曲面上的法線方向,以及對應曲率的測量值,用第四個元素來佔位,相容sse和高效計算。使用者訪問法向量的第乙個座標,可以通過points[i].data_n[0]或者points[i].normal[0]或者points[i].normal_x,但曲率不能被儲存在同乙個結構體中,因為它會被普通的資料操作覆蓋掉。

eg:pointxyzrgbnormal - float x, y, z, rgb, normal[3], curvature; pointxyzrgbnormal儲存xyz資料和rgb顏色的point結構體,並且包括曲面法線和曲率。

雙邊濾波、高斯濾波、條件濾波、直通濾波、隨機取樣一致性濾波。

iss3d、harris3d、narf,sift3d

法線和曲率的計算、特徵值分析、shot

pfh、fpfh、3d shape context、spin image

點雲配準分為粗配準(coarse registration)和精配準(fine registration)兩個階段。

精配準的目的是在粗配準的基礎上讓點雲之間的空間位置差別最小化。應用最為廣泛的精配準演算法應該是icp以及icp的各種變種(穩健icp、point to plane icp、point to line icp、mbicp、gicp、nicp)。

粗配準是指在點雲相對位姿完全未知的情況下對點雲進行配準,可以為精配準提供良好的初始值。當前較為普遍的點雲自動粗配準演算法包括基於窮舉搜尋的配準演算法和基於特徵匹配的配準演算法。

基於窮舉搜尋的配準演算法:遍歷整個變換空間以選取使誤差函式最小化的變換關係或者列舉出使最多點對滿足的變換關係。

還有一種比較特殊的是基於概率的配準演算法,ndt 3d演算法是一種典型的基於統計學概率進行配準的演算法。(multil-layer ndt)

分割:區域生長、ransac線面提取、全域性優化平面提取

k-means、normalize cut(context based)

3d hough transform(線、面提取)、連通分析、

分類:基於點的分類,基於分割的分類,基於深度學習的分類(pointnet,octnet)……

ceres(google的最小二乘優化庫,很強大),g2o、lum、elch、toro、spa

slam方法:icp、mbicp、idc、likehood field、ndt

泊松重建、 delaunay triangulations

表面重建,人體重建,建築物重建,樹木重建。

結構化重建:不是簡單的構建乙個mesh網格,而是為場景進行分割,為場景結構賦予語義資訊。場景結構有層次之分,在幾何層次就是點線面。

實時重建:重建植被或者農作物的4d(3d+時間)生長態勢;人體姿勢識別;表情識別;

點雲壓縮,點雲索引(kd、octree),點雲lod(金字塔),海量點雲的渲染

PCL點雲型別詳解

有組織點 cloud.width 640 image like organized structure,with 480 rows and 640 columns,cloud.height 480 thus 640 480 307200 points total in the dataset 無組織...

點雲資料的型別主要分為 PCL點雲資料點型別介紹

point types.hpp中有完整點雲型別定義,這個列表很重要,由於採集裝置時擁有的各種輸入點雲資訊不同,比如有的只有法向,有的伴有顏色,強度等資訊。比要時,使用者需要自己定義自己的型別。不過先看看pcl庫中定義的點雲型別是否已經涵蓋。看以下列表pointxyz pointxyzi pointx...

PCL點雲索引

點雲索引其實就是將點雲中不同點加上標籤,方便後面的分類提取。有了點雲的索引值可以方便的對點雲進行不同操作 以下舉例說明 1.儲存一點雲中某些特定的點 pcl pointcloudcloud new pcl pointcloud 輸入點雲 pcl io loadpcdfile pcd cloud pc...