PCL已有點型別介紹和增加自定義的點型別

2022-06-10 08:24:09 字數 712 閱讀 1697

部落格**自:

本小節不僅解釋如何增加你自己的pointt點型別,也介紹了pcl中的模板point型別,以及它們的用處和定義。pcl從開始就伴隨著各種預定義的point型別,從用於xyz資料到更複雜的n維直方圖表示法,例如pfh(點特徵直方圖)。這些型別應該足夠支援在pcl中應用的演算法及方法,然而,也有情況下使用者希望定義新的型別。

pcl的pointt可以追溯到它在ros中作為開源庫被開發的時候,大家一致認為,點雲是複雜的n維結構,它需要能表示不同型別的資訊,然而使用者應該知道並理解需要傳送什麼樣的資訊,為了使**更易於除錯,考慮優化等等,下面給出乙個例子,是對xyz資料的簡單操作,對帶sse功能的處理器,最高效的方法是儲存3維座標為浮點型,緊跟著乙個浮點型資料作為填補位數以滿足儲存對齊要求:

struct

pointxyz

;

然而,例如當使用者在嵌入式平台上尋找編譯pcl的時候,增加額外的填補就是浪費儲存空間了,因此,可以用乙個簡單的不帶最後浮點數的pointxyz結構來替代。此外,如果你的應用程式需要乙個包含xyz三維資料、rgb資訊(顏色)和每個點的估計法線的pointxyzrgbnormal型別,定義包含以上所有內容的結構是很簡單的,由於pcl中所有的演算法都是模板化的,除了更改的自定義結構之外,不需要做其他的更改,增加了**的重用性和可讀性。

1.**海、郭浩、蘇偉.點雲庫pcl學習教程(isbn 978-7-5124-0954-5)北京航空航天出版社2012-10

PCL 如何自定義乙個點雲PointT型別

1,使用基礎點雲型別 include pcl point types.h include pcl impl instantiate.hpp include foo.h include impl foo.hpp template class foo 2,定義新的點雲型別 struct mypointt...

MFC程式新增自定義命名空間和自定義類的步驟

源專案 被新增的專案 目標專案 新增專案的原專案 假設目標專案要新增源專案的 類 一 自定義專案的自定義類 1 右擊mfc解決方案,選擇新增 現有專案 目標檔案 目標檔案.vcproj 2 設定目標專案的附加包含目錄 選擇專案屬性 配置屬性 c c 常規 附加包含目錄,在附加包含目錄上新增 solu...

關於自定義強型別實體類的一點困惑

不好意思,這個問題對我來說困惑了很久,問了很多人也沒解決,所以放到首頁請教一下大家,下午我就移走,謝謝了 新專案放棄了dataset而採用擴充套件conllectionbase類實現自定義實體類,專案中有如下困惑 1 表表關聯時候,那麼實體類的屬性就將是所有可能用到的字段的集合?那豈不是很多屬性?2...