I was trying to calibrate my mavic2 pro camera with monocular calibration package.
I am currently running it on ROS noetic distro with Ubuntu 20.04. For some reasons, as I start the ROS MASTER and run rosservice list, I only get:
/image_publisher/get_loggers
/image_publisher/set_logger_level
/image_view/get_loggers
/image_view/list
/image_view/load_nodelet
/image_view/set_logger_level
/image_view/set_parameters
/image_view/unload_nodelet
/republish/compressed/set_parameters
/republish/get_loggers
/republish/set_logger_level
/rosout/get_loggers
/rosout/set_logger_level
For being able to run the calibration.py node, I launched a file, where the image topic got forwarded in a raw format, as
<launch>
<node name="republish" type="republish" pkg="image_transport" output="screen" args="compressed in:=/out/image_raw raw out:=/out/image_raw" />
<node pkg="image_view" type="image_view" respawn="true" name="image_view" args="image:=/out/image_raw"/>
</launch>
I correctly run the calibration package with:
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.025 image:=/out/image_raw output:=/out
and the GUI started fine.
Therefore, once i try to save the calibration data and correctly "commit" it for permanent storage, as reported in the guide the following issue gets raised:
Traceback (most recent call last):
File "/home/anna/catkin_ws/src/image_pipeline/camera_calibration/src/camera_calibration/camera_calibrator.py", line 276, in on_mouse
if self.do_upload():
File "/home/anna/catkin_ws/src/image_pipeline/camera_calibration/src/camera_calibration/camera_calibrator.py", line 230, in do_upload
response = self.set_camera_info_service(info)
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 442, in __call__
return self.call(*args, **kwds)
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 502, in call
service_uri = self._get_service_uri(request)
File "/opt/ros/noetic/lib/python3/dist-packages/rospy/impl/tcpros_service.py", line 470, in _get_service_uri
raise ServiceException("service [%s] unavailable"%self.resolved_name)
rospy.service.ServiceException: service [/camera/set_camera_info] unavailable
any clue? Thanks in advance :)
I have tried to see whether my issue was caused by a wrong rosrun command, but the error persist