matlab解析Realsense D435录制的bag文件,获得RGB图和深度图

matlab解析Realsense D435录制的bag文件,获得RGB图和深度图

matlab版本2019a
获取RGB图片代码如下:

%bag路径
bag=rosbag('E:\D435\20191101_110656.bag');
mes=select(bag,'Topic','/device_0/sensor_1/Color_0/image/data');
data_rgb=readMessages(mes,'DataFormat', 'struct' );
%保存图片路径
save_path = strcat('E:/D435/picture/colors/');
for i=1:length(data_rgb)
    tmp=data_rgb{i,1};
    tmp2=tmp.Data;
    r=(reshape(tmp2(1:3:end,1),1280,720))';
    g=(reshape(tmp2(2:3:end,1),1280,720))';
    b=(reshape(tmp2(3:3:end,1),1280,720))';
    tmp2=cat(3,r,g,b);
    name = num2str(i);
    %显示图片
    imshow(tmp2);
    %保存图片
    imwrite(tmp2,strcat(save_path,name,'.png'))
end

topic

在这里插入图片描述
深度图

bag=rosbag('E:\D435\20191101_110656.bag');
mes=select(bag,'Topic','/device_0/sensor_0/Depth_0/image/data');
save_path = strcat('E:/D435/picture/depth/');
poseStructs = readMessages(mes, 'DataFormat', 'struct');
len = length(poseStructs);
for i=1:len
    depth_image = reshape(poseStructs{i}.Data, 1280, []).';  % 修改为适合你的数据的形状  
 	imshow(depth_image);
    name = num2str(i);
    imwrite(depth_image,strcat(save_path,name,'.png'));
end

在这里插入图片描述

  • 7
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值