lidar_camera_calibration (используя ROS) зависает
Я использую следующую библиотеку, чтобы попытаться откалибровать Velodyne LiDAR для RGB-камеры PiCam: https://github.com/ankitdhall/lidar_camera_calibration. Мне потребовалось некоторое время, чтобы настроить, но теперь все строит и работает; Однако программа зависает. Вот распечатки, которые я получаю при запуске.
user@computer$ roslaunch lidar_camera_calibration find_transform.launch
... logging to /home/manny/.ros/log/703a468e-d0dc-11e5-9811-b827eb0c153d/roslaunch-manny-13746.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://manny:33471/
SUMMARY
========
PARAMETERS
* /aruco_mapping/calibration_file: /home/manny/Code/...
* /aruco_mapping/marker_size: 0.1016
* /aruco_mapping/num_of_markers: 1
* /aruco_mapping/roi_allowed: False
* /aruco_mapping/space_type: plane
* /lidar_camera_calibration/camera_frame_topic: /raspicam_node/im...
* /lidar_camera_calibration/camera_info_topic: /raspicam_node/ca...
* /lidar_camera_calibration/velodyne_topic: /velodyne_points
* /rosdistro: melodic
* /rosversion: 1.14.3
NODES
/
aruco_mapping (aruco_mapping/aruco_mapping)
find_transform (lidar_camera_calibration/find_transform)
ROS_MASTER_URI=http://stick:11311
process[aruco_mapping-1]: started with pid [13756]
process[find_transform-2]: started with pid [13757]
Size of the frame: 1280 x 960
Limits: -2.5 to 2.5
Limits: -4 to 4
Limits: 0 to 1.7
Number of markers: 1
Intensity threshold (between 0.0 and 1.0): 0.0004
useCameraInfo: 0
Projection matrix:
[981.17163, 0, 640, 0;
0, 981.17163, 480, 0;
0, 0, 1, 0]
MAX_ITERS: 100
[ INFO] [1547151515.113124565]: Reading CameraInfo from configuration file
[ INFO] [1547151515.790099973]: Calibration file path: /home/manny/Code/catkin_ws/src/aruco_mapping/data/picam_calibration.ini
[ INFO] [1547151515.848735811]: Number of markers: 1
[ INFO] [1547151515.848845526]: Marker Size: 0.1016
[ INFO] [1547151515.848888023]: Type of space: plane
[ INFO] [1547151515.848919640]: ROI allowed: 0
[ INFO] [1547151515.848945892]: ROI x-coor: 0
[ INFO] [1547151515.848975687]: ROI y-coor: 0
[ INFO] [1547151515.849009739]: ROI width: 0
[ INFO] [1547151515.849052101]: ROI height: 8096
[ INFO] [1547151515.881308433]: Calibration data loaded successfully
Мне кажется, что файлы конфигурации калибровки загружаются правильно, но программа lidar_camera_calibration не может "привязаться" к темам ROS (я имею в виду, подключаться и получать данные из тем ROS, которые передают данные с живых устройств, LiDAR и RGB камера). Это всего лишь предположение. Другая возможность состоит в том, что программа больше не дает обратной связи, пока не найдет калибровочную плату. Если это так, то это немного прискорбно, потому что было бы неплохо узнать, сможет ли он даже считывать данные с устройств. На данный момент устройства не могут даже увидеть плату калибровки, но они могли, когда попробовали несколько дней назад.
Когда я перечисляю темы ROS, я получаю три, которые, как мне кажется, нужны, /raspicam_node/camera_info
, /raspicam_node/image/compressed
, а также /velodyne_points
,
user@computer$ rostopic list
/aruco_markers
/aruco_poses
/clicked_point
/diagnostics
/initialpose
/lidar_camera_calibration_rt
/move_base_simple/goal
/raspicam_node/camera_info
/raspicam_node/image/compressed
/raspicam_node/parameter_descriptions
/raspicam_node/parameter_updates
/rosout
/rosout_agg
/scan
/tf
/tf_static
/velodyne_nodelet_manager/bond
/velodyne_nodelet_manager_cloud/parameter_descriptions
/velodyne_nodelet_manager_cloud/parameter_updates
/velodyne_nodelet_manager_driver/parameter_descriptions
/velodyne_nodelet_manager_driver/parameter_updates
/velodyne_nodelet_manager_laserscan/parameter_descriptions
/velodyne_nodelet_manager_laserscan/parameter_updates
/velodyne_packets
/velodyne_points
lidar_camera_calibration
не падает Он просто "сидит там", курсор мигает.
Я полагаю, что моим следующим шагом в устранении неполадок будет более пристальный взгляд на их код на C++, чтобы увидеть, где он зависает, и, возможно, добавление к нему еще нескольких распечаток.
Любая помощь будет оценена. Спасибо.
1 ответ
Проверьте следующее, чтобы убедиться, что все работает так, как должно быть:
- Проверьте, есть ли у вас данные по этим темам
- Проверьте, подключены ли узлы, используя rosnode или rqt_graph
- Если это не так, проверьте, есть ли в других темах нужные вам данные
- переназначить темы, которые пусты для тех, которые не являются
если ничего не помогло, измените уровень журнала на отладочный (в плагине RQT Logger или каким-либо другим способом), чтобы увидеть, есть ли там какое-либо сообщение, которое может помочь