ROS 相机校准找不到 set_camera_info 服务

问题描述

我是 ROS 的新手,正在尝试运行相机校准程序。我得到了 cv_camera 模块来发布 /cv_camera/camera_info,/cv_camera/image_raw 我跑了 rosservice list 这表明 /cv_camera/set_camera_info 正在运行。然而,当我运行 calibrator.py 脚本时,它却说:

[WARN] [1612648019.937615]: wait_for_service(/cv_camera_node/set_camera_info): Failed to contact,will keep trying
Service not found
qmutex: destroying locked mutex
qmutex: destroying locked mutex
Segmentation fault (core dumped)

这是 rostopic list 的节目:

/cv_camera/camera_info
/cv_camera/image_raw
/cv_camera_node/camera_info
/cv_camera_node/image_raw
/rosout
/rosout_agg

这是 rosservice list 的节目:

/cv_camera/get_loggers
/cv_camera/set_camera_info
/cv_camera/set_logger_level
/cv_camera_node/get_loggers
/cv_camera_node/set_camera_info
/cv_camera_node/set_logger_level
/rosout/get_loggers
/rosout/set_logger_level

我使用的是 ROS Noetic,我的服务器在 Ubuntu 20.04 虚拟机上运行。我的相机安装在 RaspBerry Pi 3B+ 上,并且使用的是 Picamera V2。任何帮助都非常感谢。

解决方法

您还必须添加 image_common 模块!