I am trying to stream the images from my camera to a VM via ROS. Here is my setup:
- Raspberry Pi 3B+ with Picamera v2. It is running ROS Noetic with
cv_camera_node
- An Ubuntu 20.04.1 VM with ROS Noetic. I am reviewing the live stream using
rosrun rqt_image_view rqt_image_view
When I tried this, the stream is really laggy and slow. I am barely getting 10 fps. I was able to do camera calibration with it but mapping with it will be really challenging. Is there any way to speed it up. Can I decrease the quality of the camera capture? Any help is truly appreciated.
Here is my launch file:
<launch>
<node name="usb_cam" pkg="usb_cam" type="usb_cam_node" output="screen" >
<param name="video_device" value="/dev/video0" />
<param name="image_width" value="640" />
<param name="image_height" value="480" />
<param name="pixel_format" value="uyvy" />
<param name="camera_frame_id" value="camera" />
<param name="io_method" value="mmap"/>
<param name="framerate" value="30" />
<param name="autofocus" value="true" />
<param name="camera_name" value="camera" />
</node>
<node name="image_view" pkg="image_view" type="image_view" respawn="false" output="screen">
<remap from="image" to="/camera/image_raw"/>
<param name="autosize" value="true" />
</node>
</launch>
```