概览#
Camera模块将深度图处理为策略观测。接口采用C++与ROS 2;暂不提供Python camera SDK。
C++入口#
C++
DepthProvider(rclcpp::Node& node, Ort::Env& env,
std::size_t expected_output_size);
bool process_latest(std::vector<float>& output);
void reset();DepthProvider 禁止拷贝。按策略要求共同配置输入裁剪、历史采样、编码器模型与输出维度。
ROS 2入口#
depth_node 发布 std_msgs/msg/Float32MultiArray,并注册 clear_depth_history Trigger服务。仓库 parkour相机配置为:
| 配置项 | 源文件值 |
|---|---|
depth_topic |
/camera/camera/depth/image_rect_raw |
depth_obs_topic |
/depth_obs |
depth_process_hz |
50.0 |
use_depth_encoder |
true |
depth_encoder_model_name |
encoder.onnx |
depth_encoder_output_dim |
128 |
depth_process_hz=50.0 是处理频率配置。该流程对应RPO parkour;RP1集成需要匹配的感知策略与配置。
集成前核对#
确认相机launch中的设备/话题、深度图尺寸、裁剪参数、距离处理、历史taps、encoder输入输出与策略观测一致。仓库提供D435i相关launch;其他相机需要自己的配置与验证。
感知输入长度不足时,推理接口会警告并处理输入。排查时核对实际输出尺寸与策略观测要求。