Camera Compress Node
Camera compressed image forwarding node
Topic
| Topic |
Description |
| /camera/head_back_fisheye |
Head rear fisheye camera compressed image |
| /camera/head_left_fisheye |
Head left fisheye camera compressed image |
| /camera/head_right_fisheye |
Head right fisheye camera compressed image |
| /camera/head_stereo_left |
Head stereo left camera compressed image |
| /camera/head_stereo_right |
Head stereo right camera compressed image |
| /camera/hand_left_color |
Left wrist color camera compressed image |
| /camera/hand_right_color |
Right wrist color camera compressed image |
| /camera/head_color |
Head RGB camera compressed image |
| /camera/head_depth |
Head depth camera compressed image |
| /camera/hand_left_depth |
Left wrist depth camera compressed image |
| /camera/hand_right_depth |
Right wrist depth camera compressed image |
Message Type
sensor_msgs::msg::CompressedImage
| Field |
Type |
Description |
| header |
std_msgs/Header |
Message header, contains timestamp and coordinate frame information |
| format |
string |
Compression format string (e.g. "jpeg", "png") |
| data |
uint8[] |
Compressed image data |
| Format |
Description |
| jpeg |
JPEG compression format (default) |
| png |
PNG compression format |
Note: In the current implementation, all compressed images use the JPEG format (format = "jpeg").
Launch Method
1. Launch with Default Configuration
source ~/.cache/agibot/app/gdk/scripts/ros_env.sh gdk_camera_compress
ros2 launch gdk_camera_compress camera_compress.launch.py
This will launch all default Camera compressed image topics:
- /camera/head_back_fisheye
- /camera/head_left_fisheye
- /camera/head_right_fisheye
- /camera/head_stereo_left
- /camera/head_stereo_right
- /camera/hand_left_color
- /camera/hand_right_color
- /camera/head_color
- /camera/head_depth
- /camera/hand_left_depth
- /camera/hand_right_depth
2. Custom Camera Topics
source ~/.cache/agibot/app/gdk/scripts/ros_env.sh gdk_camera_compress
# Launch only specific Camera topics
#ros2 launch gdk_camera_compress camera_compress.launch.py camera_topics:="/camera/head_color,/camera/head_depth"
# Launch a single Camera topic
#ros2 launch gdk_camera_compress camera_compress.launch.py camera_topics:="/camera/head_color"
# Launch fisheye cameras
#ros2 launch gdk_camera_compress camera_compress.launch.py camera_topics:="/camera/head_back_fisheye,/camera/head_left_fisheye,/camera/head_right_fisheye"
# Launch hand cameras
#ros2 launch gdk_camera_compress camera_compress.launch.py camera_topics:="/camera/hand_left_color,/camera/hand_right_color"
# Launch hand depth cameras
#ros2 launch gdk_camera_compress camera_compress.launch.py camera_topics:="/camera/hand_left_depth,/camera/hand_right_depth"
Differences from Camera Node
| Feature |
Camera Node |
Camera Compress Node |
| Message Type |
sensor_msgs::msg::Image |
sensor_msgs::msg::CompressedImage |
| Data Format |
Uncompressed raw pixel data |
JPEG compressed data |
| Bandwidth Usage |
Higher |
Lower |
| Use Case |
Requires raw image data |
Requires reduced bandwidth usage |
Recommendation:
- When you need raw image data for analysis or processing, use camera_node
- When you need to transmit over a network or reduce bandwidth usage, use camera_compress_node