Search code examples
rospoint-cloudsrosbagzed-sdk

How to generate ".svo" file from rosbag for ZED SDK


I would like to generate a point cloud from stereo videos using the ZED SDK from Stereolabs.

What I have now is some rosbags with left and right images (and other data from different sensors).

My problem comes when I extract the images and I create the videos from them, what I get are the videos in some format (e.g. .mp4) using ffmpeg, but the ZED SDK needs a .svo format, and I don't know how to generate it.

Does it exist some way to obtain ".svo" videos from rosbags?

Also, I would like to ask, (once I get the .svo files) how could I get the point cloud using the SDK if I am not able to use a graphic interface? I am working from a DGX workstation by using ROS (Melodic and Ubuntu 18.04) in Docker and I am not able to make rviz and any graphic tool to work inside the Docker image, so I think I should do the point cloud generation "automated", but I don't know how.

I have to say that this is my first project using ROS, ZED SDK and Docker, so that's why I am asking this (maybe) basics questions.

Thank you in advance.


Solution

  • You can't. The .svo file format is a propriety file format that can only be recorded to by using a ZED and their SDK (or wrapper), can only be read by their SDK/wrapper, and only be exported by their SDK/wrapper.

    To provide some helpful direction, I suggest that all functionality & processing you would like to get out of the images, by processing with or making use of the SDK features, can be done with open source 3rd party trusted community software projects. Examples include OpenCV (which bundles many other AI/DNN object detection or position estimation or 3D world reconstruction algorithms), PCL, or their wrappers in ROS, or other excellent algorithms whose chief API and reference is their ROS node.