相关动态
realsense实时点云python realsense生成点云
2024-12-21 06:53

摘要:在ROS kinetic下,利用realsense D435深度相机采集校准的RGBD图片,合成点云,在rviz中查看点云,最后保存成pcd文件。

 

一、 各种bug

代码编译成功后,打开rviz添加pointcloud2选项卡,当我订阅合成点云时,可视化失败,选项卡报错:

1)Data size (9394656 bytes) does not match width (640) times height (480) times point_step (32).  Dropping message.

解读:通过  rostopic echo /pointcloud_topic  读取相机节点发布的原始点云的相关数据,可以发现每一帧原始点云的点数量为307200。合成点云的点数量为  9394656 / 32

原因:我事先给定合成点云的大小为,height = 480,width = 640. 然而在合成点云的过程中,剔除了部分违法值(d=0),由此导致合成点云的点数量与指定的点数量不匹配,合成点云的数据因此被丢弃。

解决方法:采用如下方法给定点云大小, cloud->height = 1; cloud->width = cloud->points.size();

 

2)transform xxxxx;

解读:通过  rostopic echo /pointcloud_topic

由此推断,合成点云缺失参考坐标系header.frame_id。点云中点的XYZ属性是相对于某个坐标系来描述的,因此,需要指定点云的参考坐标系。

解决方法:添加点云的header信息, 

 

3)将合成的点云存储成pcd文件时遇到如下报错:

经过多方查找,摸索了一步trick,分享给大家。真实报错原因仍未查明,期待前辈的指点

高博的源代码如下所示,里面的cloud是pcl的数据类型,

pcl::io::savePCDFile( "https://blog.51cto.com/u_16213721/pointcloud.pcd", *cloud );  。

我的源代码如下面所示,先通过 pcl::toROSMsg() 将pcl的数据类型转换成ros的数据类型,再写入pcd中,即可跳过报错。

 

4)相机内参

由于在彩色图和深度图配准的过程中,选用的是彩色图的坐标系,因此在合成点云(像素坐标在变换到相机坐标)时应该选用彩色图的相机内参。

realsense官方提供了一个应用程序可以查看所有视频流的内参。

如下所示

84 : Color #0 (Video Stream: Y16 640x480@ 60Hz)
85 : Color #0 (Video Stream: BGRA8 640x480@ 60Hz)
86 : Color #0 (Video Stream: RGBA8 640x480@ 60Hz)
87 : Color #0 (Video Stream: BGR8 640x480@ 60Hz)
88 : Color #0 (Video Stream: RGB8 640x480@ 60Hz)
89 : Color #0 (Video Stream: YUYV 640x480@ 60Hz)
90 : Color #0 (Video Stream: Y16 640x480@ 30Hz)
91 : Color #0 (Video Stream: BGRA8 640x480@ 30Hz)
92 : Color #0 (Video Stream: RGBA8 640x480@ 30Hz)
93 : Color #0 (Video Stream: BGR8 640x480@ 30Hz)
94 : Color #0 (Video Stream: RGB8 640x480@ 30Hz)
95 : Color #0 (Video Stream: YUYV 640x480@ 30Hz)
96 : Color #0 (Video Stream: Y16 640x480@ 15Hz)
97 : Color #0 (Video Stream: BGRA8 640x480@ 15Hz)
98 : Color #0 (Video Stream: RGBA8 640x480@ 15Hz)
99 : Color #0 (Video Stream: BGR8 640x480@ 15Hz)
100: Color #0 (Video Stream: RGB8 640x480@ 15Hz)
101: Color #0 (Video Stream: YUYV 640x480@ 15Hz)
102: Color #0 (Video Stream: Y16 640x480@ 6Hz)
103: Color #0 (Video Stream: BGRA8 640x480@ 6Hz)
104: Color #0 (Video Stream: RGBA8 640x480@ 6Hz)
105: Color #0 (Video Stream: BGR8 640x480@ 6Hz)
106: Color #0 (Video Stream: RGB8 640x480@ 6Hz)
107: Color #0 (Video Stream: YUYV 640x480@ 6Hz)

 

二、程序代码

    以上就是本篇文章【realsense实时点云python realsense生成点云】的全部内容了,欢迎阅览 ! 文章地址:http://gzhdwind.xhstdz.com/news/11987.html 
     栏目首页      相关文章      动态      同类文章      热门文章      网站地图      返回首页 物流园资讯移动站 http://gzhdwind.xhstdz.com/mobile/ , 查看更多   
最新文章
Wordpress哪个主题对SEO和页面速度友好,谷歌排名高?
在我多年的网站建设与优化实践中,我发现选择一个合适的WordPress主题对于网站的SEO表现和页面速度至关重要。特别是在谷歌这样的
'智能AI文案助手:一键快速生成创意内容的软件工具'
随着人工智能技术的不断发展在各个领域的应用日益广泛。在内容创作领域一键生成文案的软件逐渐崭露头角成为众多创意工作者的得力
Rank Math新手教程指南:最佳Wordpress排名插件2024
Rank Math是一款功能强大的WordPress SEO插件,旨在帮助网站管理员和博主优化他们的网站以提高在搜索引擎中的排名。它提供了全面
数字艺术革命:3D虚拟展览,为艺术爱好者打开新世界
nbsp;nbsp;nbsp;nbsp;便利性:无界限的艺术探索,3D虚拟艺术展览通过高质量的3D扫描技术,将实体艺术品转化为
AI智能营销领域的卓越引领者
作为 AI 智能营销业务的先锋企业,专注于为客户打造智能化的营销解决方案,助力其在激烈的市场竞争中脱颖而出。我们的核心优势在
百度蜘蛛池收录:揭秘蜘蛛池做排名解析技巧,助力网站快速崛起
揭秘蜘蛛池收录技巧,解析如何利用蜘蛛池快速提升网站排名,助力网站快速崛起。本文目录导读:了解蜘蛛池蜘蛛池做排名解析技巧随
网站排名优化,专治周a斯受欢迎的秘诀
网站排名优化是提升网站在搜索引擎中排名的关键。针对周a斯受欢迎的秘诀,关键在于提供高质量、有价值的内容,同时注重网站结构
杭州SEO优化,助您网站飞跃,企业腾飞之道
杭州SEO网站优化,专业提升网站排名,助力企业快速提高网络曝光度,抢占市场份额,实现线上业绩腾飞。通过科学策略,精准关键词
#### 智能创作发布到抖音怎么不存在流量
在数字化时代的浪潮中人工智能()的应用已经渗透到各个领域其中智能创作更是以其高效、便捷的特性受到了广大创作者的青睐。它不
相关文章