real time pointcloud streaming in simulink on ubuntu
4 次查看(过去 30 天)
显示 更早的评论
I have an intenrealsense camera and i am working on ubuntu 18.04. I want to stream live feeds of point cloud in simulink via ros(i was able to stream color feed) I realized point clouds cant just be treated as pixels. Also there are some functions 'pcfromkinect' that say it helps in streaming pointclouds live but on windows. Please guide me through. I want to publish pointclouds as ros messages in simulink.
0 个评论
采纳的回答
Cam Salzberger
2022-2-7
Hello Abirami,
If you are broadcasting the point cloud data over the ROS network already, then you can simply create a rossubscriber and a pcplayer, set up something like this:
rosinit(<masterURI>)
player = pcplayer(<map limits>);
pcSub = rossubscriber(<point cloud topic>, "sensor_msgs/PointCloud2", ...
"DataFormat", "struct", ...
"NewMessageFcn", @(~, msg) processLidarMsg(msg, player)
function processLidarMsg(msg, player)
xyz = rosReadXYZ(msg);
rgb = rosReadRGB(msg);
view(player, xyz, rgb)
end
This code makes several assumptions about the type of the point cloud message and the structure of its fields (as well as your release of MATLAB). But it can serve as a starting point for your code.
If you are working with velodyne_msgs/VelodyneScan instead of sensor_msgs/PointCloud2, check out this documentation.
-Cam
0 个评论
更多回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Specialized Messages 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!