ROS 建立 發布和顯示PCL點雲

2021-09-20 07:33:28 字數 819 閱讀 1964

//定義點雲型別

pcl::pointcloudcloud;

// 新增點雲資料

cloud.width = 50000;

cloud.height = 2;   //點集總共2*50000 = 10 0000個點

cloud.points.resize(cloud.width * cloud.height);

for (size_t i = 0; i < cloud.points.size (); ++i)

(1) 對於無組織或者說無結構的點雲來說,height=1,width就是指點雲中點的個數。

(2) 對於有結構的點雲來說,width是指點雲資料集一行上點的個數。有結構的點雲可以理解成這個點雲像image(或者說是乙個矩陣)一樣進行組織,資料被分為行和列,如立體相機或者tof相機獲得的點雲資料就屬於這一類。對於有結構點雲的一大好處就是能知道點雲中點的相鄰關係,最近鄰操作效率就非常高,可以大大提高pcl中相應演算法的效率。

ros::publisher pcl_pub = nh.advertise("pcl_output", 1);

//定義發布的訊息

sensor_msgs::pointcloud2 output;

//把點雲轉化為ros訊息

pcl::torosmsg(cloud, output);

output.header.frame_id = "point_cloud";

ros::rate loop_rate(1);

while (ros::ok())

PCL點雲的基本讀取和顯示

廢話不多說,直接上 這是最基本的讀取與顯示,皆是利用pcl庫 include 標準輸入輸出流 include pcl的pcd格式檔案的輸入輸出標頭檔案 include pcl對各種格式的點的支援標頭檔案 include int main int argc,char argv std cout loa...

PCL 學習筆記 使用 PCL 來顯示點雲

pcl 裡面使用的一些小技巧,可惜我現在才知道。記下來 方便以後檢視吧。當你得到了一些點雲之後怎麼去快速直觀的看到 點雲的效果呢?有一些比較好的小的技巧。1.顯示乙個點雲的方法 pcl viewer cloud cluster 0.pcd 2.多個點雲在一起顯示的方法 pcl viewer mult...

ROS建立點雲資料並在rviz中顯示

實驗環境ros kinetic 1.新建工程 mkdir p catkin ws src cd catkin ws src catkin create pkg chapter6 tutorials pcl ros roscpp rospy sensor msgs std msgs cd catkin...