microsoft / Azure_Kinect_ROS_Driver

A ROS sensor driver for the Azure Kinect Developer Kit.
MIT License
304 stars 226 forks source link

how to set trigger mode of Azure kinect DK in this rospackage via MCU #271

Open gyt290811 opened 1 year ago

gyt290811 commented 1 year ago

Hi, we were trouble in setting wired_sync_mode in kinect_rgb.launch to make sure Azure Kinect camera synchronization.

Do you know any method to solve this problem 2023-08-03 21-27-03屏幕截图

yc@yc-NUC11PHi7:~/Sensor_suit_ws$ roslaunch azure_kinect_ros_driver kinect_rgbd.launch ... logging to /home/yc/.ros/log/c3e91d08-3201-11ee-922d-292bbb9d97a8/roslaunch-yc-NUC11PHi7-36605.log Checking log directory for disk usage. This may take a while. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://yc-NUC11PHi7:42211/

SUMMARY

PARAMETERS

NODES / depth_metric (nodelet/nodelet) depth_metric_rect (nodelet/nodelet) depth_points (nodelet/nodelet) depth_rectify_depth (nodelet/nodelet) depth_to_rgb_hw_metric_rect (nodelet/nodelet) depth_to_rgb_metric (nodelet/nodelet) depth_to_rgb_rectify_depth (nodelet/nodelet) ir_rectify_ir (nodelet/nodelet) joint_state_publisher (joint_state_publisher/joint_state_publisher) k4a_nodelet_manager (nodelet/nodelet) k4a_ros_bridge (nodelet/nodelet) points_xyzrgb_hw_registered (nodelet/nodelet) rgb_rectify_color (nodelet/nodelet) robot_state_publisher (robot_state_publisher/robot_state_publisher)

auto-starting new master process[master]: started with pid [36615] ROS_MASTER_URI=http://localhost:11311

setting /run_id to c3e91d08-3201-11ee-922d-292bbb9d97a8 process[rosout-1]: started with pid [36625] started core service [/rosout] process[joint_state_publisher-2]: started with pid [36632] process[robot_state_publisher-3]: started with pid [36633] process[k4a_nodelet_manager-4]: started with pid [36634] process[k4a_ros_bridge-5]: started with pid [36635] process[rgb_rectify_color-6]: started with pid [36641] process[ir_rectify_ir-7]: started with pid [36648] process[depth_rectify_depth-8]: started with pid [36653] process[depth_metric_rect-9]: started with pid [36660] process[depth_metric-10]: started with pid [36661] [ INFO] [1691069366.508421413]: Initializing nodelet with 4 worker threads. process[depth_points-11]: started with pid [36662] process[depth_to_rgb_rectify_depth-12]: started with pid [36692] process[points_xyzrgb_hw_registered-13]: started with pid [36693] process[depth_to_rgb_hw_metric_rect-14]: started with pid [36697] process[depth_to_rgb_metric-15]: started with pid [36701] [ INFO] [1691069366.606879596]: K4A ROS Nodelet Start [ INFO] [1691069366.612769490]: K4A Parameters: [ INFO] [1691069366.612878757]: sensor_sn - std::string : [ INFO] [1691069366.612920604]: depth_enabled - bool : 1 [ INFO] [1691069366.612956133]: depth_unit - std::string : 16UC1 [ INFO] [1691069366.612991454]: depth_mode - std::string : NFOV_UNBINNED [ INFO] [1691069366.613032904]: color_enabled - bool : 1 [ INFO] [1691069366.613075743]: color_format - std::string : bgra [ INFO] [1691069366.613111188]: color_resolution - std::string : 1536P [ INFO] [1691069366.613147470]: fps - int : 30 [ INFO] [1691069366.613183827]: point_cloud - bool : 0 [ INFO] [1691069366.613219551]: rgb_point_cloud - bool : 0 [ INFO] [1691069366.613255220]: point_cloud_in_depth_frame - bool : 0 [ INFO] [1691069366.613290711]: calibration_url - std::string : [ INFO] [1691069366.613325711]: tf_prefix - std::string : [ INFO] [1691069366.613360657]: recording_file - std::string : [ INFO] [1691069366.613396090]: recording_loop_enabled - bool : 0 [ INFO] [1691069366.613431159]: body_tracking_enabled - bool : 0 [ INFO] [1691069366.613471122]: body_tracking_smoothing_factor - float : 0 [ INFO] [1691069366.613507325]: imu_rate_target - int : 0 [ INFO] [1691069366.613542514]: rescale_ir_to_mono8 - bool : 1 [ INFO] [1691069366.613578515]: ir_mono8_scaling_factor - float : 1 [ INFO] [1691069366.613614131]: wired_sync_mode - int : 2 [ INFO] [1691069366.613649919]: subordinate_delay_off_master_usec - int : 0 [ INFO] [1691069366.620029926]: Found 1 sensors [ INFO] [1691069366.620118021]: No serial number provided: picking first sensor [ INFO] [1691069367.007422380]: K4A[0] : 000863414212 [ INFO] [1691069367.057954811]: K4A Serial Number: 000863414212 [ INFO] [1691069367.063415286]: RGB Version: 1.6.110 [ INFO] [1691069367.063441673]: Depth Version: 1.6.80 [ INFO] [1691069367.063455242]: Audio Version: 1.6.14 [ INFO] [1691069367.063466156]: Depth Sensor Version: 6109.7.0 [ INFO] [1691069367.110626466]: Setting wired sync mode: 2 [ INFO] [1691069367.110653410]: Setting subordinate delay: 0 [ INFO] [1691069367.110663637]: Setting RGB Camera Format: bgra [ INFO] [1691069367.110682407]: Setting RGB Camera Resolution: 1536P [ INFO] [1691069367.110705446]: Setting Depth Camera Mode: NFOV_UNBINNED [ INFO] [1691069367.110725438]: Setting Camera FPS: 30 [ INFO] [1691069367.110747252]: Using default IMU rate. Setting to maximum: 1600 Hz. [ INFO] [1691069367.110761598]: Setting Target IMU rate to 1600 (desired: 1600) [ INFO] [1691069367.698924977]: K4A Calibration Blob:

[ INFO] [1691069367.699014047]: Translation: 0, 0, 0 [ INFO] [1691069367.699036220]: Rotation[0]: 1, 0, 0 [ INFO] [1691069367.699058614]: Rotation[1]: 0, 1, 0 [ INFO] [1691069367.699080225]: Rotation[2]: 0, 0, 1

[ INFO] [1691069367.699111524]: Width: 640 [ INFO] [1691069367.699129709]: Height: 576

[ INFO] [1691069367.699161273]: Model Type: 4 [ INFO] [1691069367.699179440]: Parameter Count: 14 [ INFO] [1691069367.699200396]: cx: 318.234 [ INFO] [1691069367.699218179]: cy: 338.754 [ INFO] [1691069367.699236841]: fx: 505.092 [ INFO] [1691069367.699254809]: fy: 505.217 [ INFO] [1691069367.699272007]: k1: 5.74709 [ INFO] [1691069367.699288738]: k2: 3.58925 [ INFO] [1691069367.699306405]: k3: 0.171233 [ INFO] [1691069367.699325488]: k4: 6.07283 [ INFO] [1691069367.699342147]: k5: 5.50689 [ INFO] [1691069367.699359777]: k6: 0.943202 [ INFO] [1691069367.699377793]: codx: 0 [ INFO] [1691069367.699394187]: cody: 0 [ INFO] [1691069367.699413694]: p2: 3.0025e-05 [ INFO] [1691069367.699433925]: p1: 5.27648e-05 [ INFO] [1691069367.699450695]: metric_radius: 0

[ INFO] [1691069367.699509175]: Translation: -32.0017, -2.01786, 4.17163 [ INFO] [1691069367.699528107]: Rotation[0]: 0.999996, 0.00274281, -0.000323156 [ INFO] [1691069367.699548788]: Rotation[1]: -0.00269436, 0.994581, 0.103934 [ INFO] [1691069367.699569686]: Rotation[2]: 0.000606476, -0.103933, 0.994584

[ INFO] [1691069367.699600570]: Width: 2048 [ INFO] [1691069367.699614658]: Height: 1536

[ INFO] [1691069367.699639627]: Model Type: 4 [ INFO] [1691069367.699657637]: Parameter Count: 14 [ INFO] [1691069367.699676712]: cx: 1029.39 [ INFO] [1691069367.699693278]: cy: 778.501 [ INFO] [1691069367.699708083]: fx: 971.424 [ INFO] [1691069367.699724400]: fy: 971.074 [ INFO] [1691069367.699741824]: k1: 0.200381 [ INFO] [1691069367.699759386]: k2: -2.56733 [ INFO] [1691069367.699776884]: k3: 1.68385 [ INFO] [1691069367.699794656]: k4: 0.0843403 [ INFO] [1691069367.699804918]: k5: -2.37713 [ INFO] [1691069367.699814643]: k6: 1.59502 [ INFO] [1691069367.699827783]: codx: 0 [ INFO] [1691069367.699839625]: cody: 0 [ INFO] [1691069367.699856011]: p2: -0.000358637 [ INFO] [1691069367.699873503]: p1: 0.00131086 [ INFO] [1691069367.699923992]: metric_radius: 0 [ INFO] [1691069367.699946334]: IMU (Depth to Color):

[ INFO] [1691069367.699990260]: Translation: -32.0017, -2.01786, 4.17163 [ INFO] [1691069367.700011218]: Rotation[0]: 0.999996, 0.00274281, -0.000323156 [ INFO] [1691069367.700032571]: Rotation[1]: -0.00269436, 0.994581, 0.103934 [ INFO] [1691069367.700051149]: Rotation[2]: 0.000606476, -0.103933, 0.994584 [ INFO] [1691069367.700068224]: IMU (Depth to IMU):

[ INFO] [1691069367.700103322]: Translation: -50.7762, 3.60261, 1.48771 [ INFO] [1691069367.700121673]: Rotation[0]: -0.0019652, 0.106479, -0.994313 [ INFO] [1691069367.700139974]: Rotation[1]: -0.999963, -0.0085889, 0.0010566 [ INFO] [1691069367.700158475]: Rotation[2]: -0.00842755, 0.994278, 0.106492 [ INFO] [1691069367.700174664]: IMU (IMU to Depth):

[ INFO] [1691069367.700209930]: Translation: 3.51523, 3.95833, -50.6497 [ INFO] [1691069367.700228187]: Rotation[0]: -0.0019652, -0.999963, -0.00842755 [ INFO] [1691069367.700246534]: Rotation[1]: 0.106479, -0.0085889, 0.994278 [ INFO] [1691069367.700265210]: Rotation[2]: -0.994313, 0.0010566, 0.106492 [ INFO] [1691069367.700278620]: IMU (Color to IMU):

[ INFO] [1691069367.700300883]: Translation: -46.6427, -28.4157, 3.31128 [ INFO] [1691069367.700314948]: Rotation[0]: -0.00135182, 0.00256389, -0.999996 [ INFO] [1691069367.700327500]: Rotation[1]: -0.999983, -0.00573827, 0.00133709 [ INFO] [1691069367.700340429]: Rotation[2]: -0.00573481, 0.99998, 0.0025716 [ INFO] [1691069367.700353794]: IMU (IMU to Color):

[ INFO] [1691069367.700374807]: Translation: -28.4592, -3.35468, -46.613 [ INFO] [1691069367.700389985]: Rotation[0]: -0.00135182, -0.999983, -0.00573481 [ INFO] [1691069367.700409015]: Rotation[1]: 0.00256389, -0.00573827, 0.99998 [ INFO] [1691069367.700428055]: Rotation[2]: -0.999996, 0.00133709, 0.0025716 [ INFO] [1691069367.700567455]: STARTING CAMERAS [ INFO] [1691069368.183221375]: Cameras started [ INFO] [1691069368.183271178]: STARTING IMU [ INFO] [1691069368.183296949]: using default calibration URL [ INFO] [1691069368.183337928]: camera calibration URL: file:///home/yc/.ros/camera_info/azure_kinect_rgb_000863414212_1536P.yaml [ INFO] [1691069368.183400781]: Unable to open camera calibration file [/home/yc/.ros/camera_info/azure_kinect_rgb_000863414212_1536P.yaml] [ WARN] [1691069368.183421662]: Camera calibration file /home/yc/.ros/camera_info/azure_kinect_rgb_000863414212_1536P.yaml not found. [ INFO] [1691069368.183456550]: using default calibration URL [ INFO] [1691069368.183473747]: camera calibration URL: file:///home/yc/.ros/camera_info/azure_kinect_ir_000863414212_NFOV_UNBINNED.yaml [ INFO] [1691069368.183495708]: Unable to open camera calibration file [/home/yc/.ros/camera_info/azure_kinect_ir_000863414212_NFOV_UNBINNED.yaml] [ WARN] [1691069368.183515008]: Camera calibration file /home/yc/.ros/camera_info/azure_kinect_ir_000863414212_NFOV_UNBINNED.yaml not found. [ INFO] [1691069368.183793842]: IMU started [FATAL] [1691069372.183638523]: Failed to poll cameras: node cannot continue. [k4a_nodelet_manager-4] process has finished cleanly log file: /home/yc/.ros/log/c3e91d08-3201-11ee-922d-292bbb9d97a8/k4a_nodelet_manager-4*.log ^C[depth_to_rgb_metric-15] killing on exit [depth_to_rgb_hw_metric_rect-14] killing on exit [points_xyzrgb_hw_registered-13] killing on exit [depth_to_rgb_rectify_depth-12] killing on exit [depth_points-11] killing on exit [ WARN] [1691069380.792582502]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [depth_metric-10] killing on exit [depth_metric_rect-9] killing on exit [depth_rectify_depth-8] killing on exit [ir_rectify_ir-7] killing on exit [ WARN] [1691069380.793098307]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [rgb_rectify_color-6] killing on exit [ WARN] [1691069380.793446253]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.793786401]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.794273389]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.794605852]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.794952134]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.803317539]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.803515252]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [ WARN] [1691069380.807286196]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [k4a_ros_bridge-5] killing on exit [robot_state_publisher-3] killing on exit [ WARN] [1691069380.996108689]: Couldn't find service k4a_nodelet_manager/unload_nodelet, perhaps the manager is already shut down [joint_state_publisher-2] killing on exit [rosout-1] killing on exit [master] killing on exit shutting down processing monitor... ... shutting down processing monitor complete done

ooeygui commented 1 year ago

Hello @gyt290811, Multiple camera support in the ROS node has been a long-standing request but has not been funded.

However, I do see that in the screenshot, the computer you are using appears to be a NUC. The computer is likely overwhelmed. The Kinect camera very specific requirements on hardware - Each Kinect should be on its own USB bus in order to prevent contention.

gyt290811 commented 1 year ago

Hi, @ooeygui I am using an MCU external hardware to trigger the Azure Kinect DK(only one camera) in the Sub external sync(slaver mode), and it can be successfully triggered in the SDK. When using the [official ROS package]wired_sync_mode=0(https://github.com/microsoft/Azure_Kinect_ROS_Driver) without modifying anything, it can run. However, after changing the wired_sync_mode=2 in kinect_rgb.launch, the ROS package cannot run properly and and I encounter the error shown in the screenshot.