Stereo Camera Calibration
I am using a realsense r200 camera on Ubuntu 16.04.2 LTS and Ros kinetic. running the camera node with:
roslaunch realsense_camera r200_nodelet_multiple_cameras.launch
the topics that I have in this state are as following:
/camera1/color/camera_info
/camera1/color/image_raw
/camera1/color/image_raw/compressed
/camera1/color/image_raw/compressed/parameter_descriptions
/camera1/color/image_raw/compressed/parameter_updates
/camera1/color/image_raw/compressedDepth
/camera1/color/image_raw/compressedDepth/parameter_descriptions
/camera1/color/image_raw/compressedDepth/parameter_updates
/camera1/color/image_raw/theora
/camera1/color/image_raw/theora/parameter_descriptions
/camera1/color/image_raw/theora/parameter_updates
/camera1/depth/camera_info
/camera1/depth/image_raw
/camera1/depth/image_raw/compressed
/camera1/depth/image_raw/compressed/parameter_descriptions
/camera1/depth/image_raw/compressed/parameter_updates
/camera1/depth/image_raw/compressedDepth
/camera1/depth/image_raw/compressedDepth/parameter_descriptions
/camera1/depth/image_raw/compressedDepth/parameter_updates
/camera1/depth/image_raw/theora
/camera1/depth/image_raw/theora/parameter_descriptions
/camera1/depth/image_raw/theora/parameter_updates
/camera1/depth/points
/camera1/driver/parameter_descriptions
/camera1/driver/parameter_updates
/camera1/ir/camera_info
/camera1/ir/image_raw
/camera1/ir/image_raw/compressed
/camera1/ir/image_raw/compressed/parameter_descriptions
/camera1/ir/image_raw/compressed/parameter_updates
/camera1/ir/image_raw/compressedDepth
/camera1/ir/image_raw/compressedDepth/parameter_descriptions
/camera1/ir/image_raw/compressedDepth/parameter_updates
/camera1/ir/image_raw/theora
/camera1/ir/image_raw/theora/parameter_descriptions
/camera1/ir/image_raw/theora/parameter_updates
/camera1/ir2/camera_info
/camera1/ir2/image_raw
/camera1/ir2/image_raw/compressed
/camera1/ir2/image_raw/compressed/parameter_descriptions
/camera1/ir2/image_raw/compressed/parameter_updates
/camera1/ir2/image_raw/compressedDepth
/camera1/ir2/image_raw/compressedDepth/parameter_descriptions
/camera1/ir2/image_raw/compressedDepth/parameter_updates
/camera1/ir2/image_raw/theora
/camera1/ir2/image_raw/theora/parameter_descriptions
/camera1/ir2/image_raw/theora/parameter_updates
/camera2/color/camera_info
/camera2/color/image_raw
...
the exact same topics for /camrea2. and then:
/camera_nodelet_manager/bond
/clicked_point
/image
/initialpose
/move_base_simple/goal
/rosout
/rosout_agg
/tf
/tf_static
then I try running the calibrator Using:
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 --no-service-check right:=/camera1/color/image_raw left:=/camera2/color/image_raw right_camera:=/camera1 left_camera:=/camera2
Which returns following error:
('Waiting for service', '/camera2/set_camera_info', '...')
Service not found
('Waiting for service', '/camera1/set_camera_info', '...')
Service not found
then I tried it again using no service check:
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 --no-service-check right:=/camera1/color/image_raw left:=/camera2/color/image_raw right_camera:=/camera1 left_camera:=/camera2
at this state the GUI window opens but it is not responding or showing any images from the camera. Am I missing something?
The problem can not be with the camera connection. Because when I try the calibration for one camera it works fine, using:
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 --no-service-check image:=/camera1/color/image_raw camera:=/camera1
or:
rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 --no-service-check image:=/camera2/color/image_raw camera:=/camera2
Update: I have made some changes in the launch file (changing topic names) and I startd to getting this error even after undoing the changes:
[ERROR] [1499336013.357536131]: /camera2/driver - Error calling rs_enable_stream_preset ( device:0x16e60d0, stream:COLOR, preset:BEST_QUALITY ):
streams cannot be reconfigured after having called rs_start_device()
[FATAL] [1499336013.519454825]: Failed to load nodelet '/camera2/driver` of type `realsense_camera/R200Nodelet` to manager `/camera_nodelet_manager'
[camera_nodelet_manager-1] process has died [pid 21334, exit code 1, cmd /opt/ros/kinetic/lib/nodelet/nodelet manager __name:=camera_nodelet_manager __log:=/home/faps/.ros/log/d4fca5ac-6227-11e7-aa65-240a6484183d/camera_nodelet_manager-1.log].
log file: /home/faps/.ros/log/d4fca5ac-6227-11e7-aa65-240a6484183d/camera_nodelet_manager-1*.log
[camera2/driver-3] process has died [pid 21336, exit code 255, cmd /opt/ros/kinetic/lib/nodelet/nodelet load realsense_camera/R200Nodelet /camera_nodelet_manager depth:=depth color:=color ir:=ir ir2:=ir2 fisheye:=fisheye imu:=imu __name:=driver __log:=/home/faps/.ros/log/d4fca5ac-6227-11e7-aa65-240a6484183d/camera2-driver-3.log].
log file: /home/faps/.ros/log/d4fca5ac-6227-11e7-aa65-240a6484183d/camera2-driver-3*.log
Ros Services available:
control_msgs/QueryCalibrationState
control_msgs/QueryTrajectoryState
control_toolbox/SetPidGains
controller_manager_msgs/ListControllerTypes
controller_manager_msgs/ListControllers
controller_manager_msgs/LoadController
controller_manager_msgs/ReloadControllerLibraries
controller_manager_msgs/SwitchController
controller_manager_msgs/UnloadController
diagnostic_msgs/AddDiagnostics
diagnostic_msgs/SelfTest
dynamic_reconfigure/Reconfigure
gazebo_msgs/ApplyBodyWrench
gazebo_msgs/ApplyJointEffort
gazebo_msgs/BodyRequest
gazebo_msgs/DeleteLight
gazebo_msgs/DeleteModel
gazebo_msgs/GetJointProperties
gazebo_msgs/GetLightProperties
gazebo_msgs/GetLinkProperties
gazebo_msgs/GetLinkState
gazebo_msgs/GetModelProperties
gazebo_msgs/GetModelState
gazebo_msgs/GetPhysicsProperties
gazebo_msgs/GetWorldProperties
gazebo_msgs/JointRequest
gazebo_msgs/SetJointProperties
gazebo_msgs/SetJointTrajectory
gazebo_msgs/SetLightProperties
gazebo_msgs/SetLinkProperties
gazebo_msgs/SetLinkState
gazebo_msgs/SetModelConfiguration
gazebo_msgs/SetModelState
gazebo_msgs/SetPhysicsProperties
gazebo_msgs/SpawnModel
laser_assembler/AssembleScans
laser_assembler/AssembleScans2
map_msgs/GetMapROI
map_msgs/GetPointMap
map_msgs/GetPointMapROI
map_msgs/ProjectedMapsInfo
map_msgs/SaveMap
map_msgs/SetMapProjections
moveit_msgs/ApplyPlanningScene
moveit_msgs/CheckIfRobotStateExistsInWarehouse
moveit_msgs/DeleteRobotStateFromWarehouse
moveit_msgs/ExecuteKnownTrajectory
moveit_msgs/GetCartesianPath
moveit_msgs/GetMotionPlan
moveit_msgs/GetPlannerParams
moveit_msgs/GetPlanningScene
moveit_msgs/GetPositionFK
moveit_msgs/GetPositionIK
moveit_msgs/GetRobotStateFromWarehouse
moveit_msgs/GetStateValidity
moveit_msgs/GraspPlanning
moveit_msgs/ListRobotStatesInWarehouse
moveit_msgs/LoadMap
moveit_msgs/QueryPlannerInterfaces
moveit_msgs/RenameRobotStateInWarehouse
moveit_msgs/SaveMap
moveit_msgs/SaveRobotStateToWarehouse
moveit_msgs/SetPlannerParams
nav_msgs/GetMap
nav_msgs/GetPlan
nav_msgs/SetMap
nodelet/NodeletList
nodelet/NodeletLoad
nodelet/NodeletUnload
object_recognition_msgs/GetObjectInformation
octomap_msgs/BoundingBoxQuery
octomap_msgs/GetOctomap
polled_camera/GetPolledImage
realsense_camera/CameraConfiguration
realsense_camera/ForcePower
realsense_camera/GetIMUInfo
realsense_camera/IsPowered
realsense_camera/SetPower
realsense_camera/cameraConfiguration
roscpp/Empty
roscpp/GetLoggers
roscpp/SetLoggerLevel
roscpp_tutorials/TwoInts
rospy_tutorials/AddTwoInts
rospy_tutorials/BadTwoInts
sensor_msgs/SetCameraInfo
std_srvs/Empty
std_srvs/SetBool
std_srvs/Trigger
tf/FrameGraph
tf2_msgs/FrameGraph
topic_tools/DemuxAdd
topic_tools/DemuxDelete
topic_tools/DemuxList
topic_tools/DemuxSelect
topic_tools/MuxAdd
topic_tools/MuxDelete
topic_tools/MuxList
topic_tools/MuxSelect
turtlesim/Kill
turtlesim/SetPen
turtlesim/Spawn
turtlesim/TeleportAbsolute
turtlesim/TeleportRelative
Asked by Mary on 2017-06-28 08:14:04 UTC
Comments
What are the services available (the result of
rossrv list
) ?Asked by jeanpolochon on 2017-07-06 06:13:11 UTC
I have updated it.
Asked by Mary on 2017-07-06 06:31:41 UTC
It looks like the service '/camera1/set_camera_info' is not available.
Asked by jeanpolochon on 2017-07-06 07:40:21 UTC
You should be able to add "--no-service-check" to camera calibration's parameters to skip the service checks. You'll have to then save the calibration data and manually add it to your launch file.
Asked by jeanpolochon on 2017-07-06 07:43:41 UTC
have you tried (without modifying your launch file):
Asked by jeanpolochon on 2017-07-06 07:44:41 UTC