Skip to content

r2_perception: ROS 2 declarations

Direct rclpy publisher/subscriber arguments use type, name, callback/QoS ordering. Compatibility wrapper calls include the node as their first argument. Service arguments identify the service type and name. Namespace/remapping and computed names must be resolved from the active launch configuration.

launch/perception_launch.py

Source: head-perception/ros2_ws/src/r2_perception/launch/perception_launch.py

Kind Arguments in source order Line
Launch argument 'realsense_color_topic', default_value='/hr/perception/jetson/realsense/camera/color/image_raw', description='RealSense color image topic' 13
Launch argument 'realsense_depth_topic', default_value='/hr/perception/jetson/realsense/camera/aligned_depth_to_color/image_raw', description='RealSense aligned depth topic' 18
Launch argument 'realsense_camera_info_topic', default_value='/hr/perception/jetson/realsense/camera/color/camera_info', description='RealSense color camera info topic' 23
Launch argument 'use_realsense', default_value='true', description='Launch RealSense camera driver' 28
Launch argument 'qos_reliability', default_value='best_effort', description='QoS reliability: best_effort or reliable' 33
Launch argument 'yolo_model', default_value='yolov8s-worldv2.pt', description='YOLO object model' 38
Launch argument 'world_classes', default_value='person, chair, table, desk, computer monitor, laptop, keyboard, mouse, cup, mug, bottle, phone, cellphone, book, lamp, plant, window, door, wall, floor, ceiling, screen, tv, remote control, camera', description='Semantic classes for YOLO-World, comma-separated' 43
Launch argument 'yolo_process_rate', default_value='0.0', description='Object detection process rate in Hz; 0.0 processes every frame' 48
Launch argument 'enable_object_detection', default_value='false', description='Launch YOLO object detection' 53
Launch argument 'pose_process_rate', default_value='0.0', description='Pose detection process rate in Hz; 0.0 processes every frame' 58
Launch argument 'enable_face_recognition', default_value='true', description='Launch quality-gated InsightFace embedding producer' 63
Launch argument 'face_process_rate', default_value='5.0', description='Face embedding process rate in Hz' 68
Launch argument 'face_model', default_value='buffalo_m', description='InsightFace model pack' 73
Launch argument 'face_min_eye_distance_px', default_value='28.0', description='Minimum pose eye distance in pixels before face recognition runs' 78
Launch argument 'face_min_blur_laplacian_var', default_value='80.0', description='Minimum Laplacian variance for face crop sharpness' 83
Launch argument 'face_unrecognized_retry_sec', default_value='1.0', description='Seconds before retrying a tracker that WebUI did not recognize' 88
Launch argument 'face_identity_response_timeout_sec', default_value='1.0', description='Seconds to wait for WebUI identity feedback before retry scheduling' 93
Launch argument 'face_tracker_state_ttl_sec', default_value='3.0', description='Seconds to keep face recognition state after a tracker disappears' 98
Launch argument 'camera_frame_id', default_value='realsense', description='Frame ID used in fused perception messages' 103
Launch argument 'debug_overlay_enabled', default_value='true', description='Enable calibration diagnostics on /hr/perception/ui_image' 108
Launch argument 'debug_overlay_stale_sec', default_value='1.5', description='Seconds before optional debug overlay ROS state is treated as stale' 113
Launch argument 'debug_overlay_show_all_distances', default_value='true', description='Show depth-derived range labels on all detections' 118

src/r2_perception/camera.py

Source: head-perception/ros2_ws/src/r2_perception/src/r2_perception/camera.py

Kind Arguments in source order Line
Subscription Image, self.image_topic, self.handle_frame, SENSOR_QOS 43
Subscription CameraInfo, info_topic, self._camera_info_callback, SENSOR_QOS 93

src/r2_perception/face_embedding_node.py

Source: head-perception/ros2_ws/src/r2_perception/src/r2_perception/face_embedding_node.py

Kind Arguments in source order Line
Publisher String, '/hr/perception/face_embeddings', 10 79
Publisher String, '/hr/perception/face_embedding_status', 10 84
Subscription Image, self.image_topic, self._image_callback, sensor_qos 89
Subscription String, '/hr/perception/sources/yolo_pose/results', self._pose_callback, 10 95
Subscription String, '/hr/perception/face_identities', self._identity_callback, identity_qos 101
Service server ExtractFaceEmbedding, '/hr/perception/extract_face_embedding', self._extract_service_callback 107
ROS parameter 'image_topic', '/hr/perception/jetson/realsense/camera/color/image_raw' 117
ROS parameter 'qos_reliability', 'best_effort' 121
ROS parameter 'model_name', 'buffalo_m' 122
ROS parameter 'use_gpu', True 123
ROS parameter 'det_size', 640 124
ROS parameter 'process_rate', 5.0 125
ROS parameter 'buffer_length', 30 126
ROS parameter 'max_frame_delta_sec', 0.05 127
ROS parameter 'unrecognized_retry_sec', 1.0 128
ROS parameter 'identity_response_timeout_sec', 1.0 129
ROS parameter 'tracker_state_ttl_sec', 3.0 130
ROS parameter 'eye_confidence_threshold', 0.3 131
ROS parameter 'min_eye_distance_px', 28.0 132
ROS parameter 'min_crop_width_px', 80 133
ROS parameter 'min_crop_height_px', 80 134
ROS parameter 'min_blur_laplacian_var', 80.0 135
ROS parameter 'min_brightness', 35.0 136
ROS parameter 'max_brightness', 230.0 137
ROS parameter 'min_face_det_score', 0.5 138

src/r2_perception/fusion_node.py

Source: head-perception/ros2_ws/src/r2_perception/src/r2_perception/fusion_node.py

Kind Arguments in source order Line
Publisher People2, '/hr/perception/people', output_qos 99
Publisher Objects2, '/hr/perception/objects', output_qos 100
Publisher Image, '/hr/perception/ui_image', ui_image_qos 101
Subscription String, '/hr/perception/sources/yolo_pose/results', self.update_poses, 10 105
Subscription String, '/hr/perception/sources/yolo/results', self.update_objects, 10 111
Subscription String, '/hr/perception/face_identities', self.update_face_identities, identity_qos 117
ROS parameter 'primary_image_topic', '/hr/perception/jetson/realsense/camera/color/image_raw' 131
ROS parameter 'primary_depth_topic', '/hr/perception/jetson/realsense/camera/aligned_depth_to_color/image_raw' 135
ROS parameter 'primary_camera_info_topic', '/hr/perception/jetson/realsense/camera/color/camera_info' 139
ROS parameter 'buffer_length', 30 143
ROS parameter 'qos_reliability', 'best_effort' 144
ROS parameter 'depth_debug', False 145
ROS parameter 'camera_frame_id', 'realsense' 146
ROS parameter 'debug_overlay_enabled', True 147
ROS parameter 'debug_overlay_stale_sec', 1.5 148
ROS parameter 'debug_overlay_show_all_distances', True 149
ROS parameter 'face_identity_ttl_sec', 1.0 150
Subscription String, '/hr/behavior/current_person', self._current_person_cb, self._latched_qos() 210
Subscription String, '/hr/behavior/current_face', self._current_face_cb, self._latched_qos() 216
Subscription Target, '/hr/animation/set_face_target', self._face_target_cb, self._debug_stream_qos() 222
Subscription Pau, '/hr/animation/current_state', self._current_state_cb, self._latched_qos() 228
Subscription Image, self.primary_rgb_topic, self._image_callback, sensor_qos 295
Subscription Image, self.primary_depth_topic, self._depth_debug_cb, sensor_qos 306
Subscription CameraInfo, self.primary_info_topic, self._info_debug_cb, sensor_qos 312

src/r2_perception/yolo_node.py

Source: head-perception/ros2_ws/src/r2_perception/src/r2_perception/yolo_node.py

Kind Arguments in source order Line
ROS parameter 'model_name', 'yolov8n.pt' 62
ROS parameter 'confidence_threshold', 0.5 63
ROS parameter 'image_topic', '/hr/perception/jetson/realsense/camera/color/image_raw' 64
ROS parameter 'obj_classes', '["person"]' 65
ROS parameter 'world_classes', 'person, car' 66
ROS parameter 'qos_reliability', 'best_effort' 67
ROS parameter 'process_rate', 0.0 68
Publisher String, '/hr/perception/sources/yolo/results', 10 92
Publisher Image, '/hr/perception/sources/yolo/debug', 10 97
Subscription Image, image_topic, self.image_callback, sensor_qos 105

src/r2_perception/yolo_pose_node.py

Source: head-perception/ros2_ws/src/r2_perception/src/r2_perception/yolo_pose_node.py

Kind Arguments in source order Line
ROS parameter 'model_name', 'yolov8n-pose.pt' 85
ROS parameter 'confidence_threshold', 0.5 86
ROS parameter 'image_topic', '/hr/perception/jetson/realsense/camera/color/image_raw' 87
ROS parameter 'max_lost', 5 88
ROS parameter 'distance_threshold', 0.2 89
ROS parameter 'qos_reliability', 'best_effort' 90
ROS parameter 'process_rate', 0.0 91
Publisher String, '/hr/perception/sources/yolo_pose/results', 10 119
Subscription Image, image_topic, self.image_callback, sensor_qos 133
Publisher Image, '/hr/perception/sources/yolo_pose/debug', 10 126