visual_localization_v3 定位数据流 (RK3588)

visual_localization_v3 定位数据流 (RK3588) A data-flow diagram generated by Archify. 01 / 传感输入 02 / 预处理 03 / 特征与地图 04 / 匹配与 PnP 05 / 优化与输出 局部地图选取 · VSMAP v2 · 共视图 n=10 · 03 / 特征与地图 · 冻结地图 局部地图选取 VSMAP v2 · 共视图 n=10 冻结地图 PnP RANSAC · EPnP→ITERATIVE · KB 切平面 · 04 / 匹配与 PnP PnP RANSAC EPnP→ITERATIVE · KB 切平面 Ceres 位姿优化 · SE(2) prior + 滑窗 N=4 · 05 / 优化与输出 Ceres 位姿优化 SE(2) prior + 滑窗 N=4 相机图像 · /camera/cam1/image_raw · 01 / 传感输入 · sensor_msgs/Image 相机图像 /camera/cam1/image_raw sensor_msgs/Image 图像预处理 · 时间戳 · ceiling mask · 02 / 预处理 图像预处理 时间戳 · ceiling mask XFeat+steerer · RKNN · top_k2048 · 03 / 特征与地图 · RK3588 NPU XFeat+steerer RKNN · top_k2048 RK3588 NPU 2D-3D 匹配 · 投影窗口 · odom 预测 · 04 / 匹配与 PnP 2D-3D 匹配 投影窗口 · odom 预测 map→odom 校正 · MapOdomCorrector · 05 / 优化与输出 map→odom 校正 MapOdomCorrector AprilTag 检测 · TagAsyncWorker · 休眠 · 02 / 预处理 · sidecar 激活 AprilTag 检测 TagAsyncWorker · 休眠 sidecar 激活 wheel odom · /odom · bag /jarvis/odom · 04 / 匹配与 PnP · nav_msgs/Odometry wheel odom /odom · bag /jarvis/odom nav_msgs/Odometry TF + Pose 输出 · map→odom · map→base_link · 05 / 优化与输出 TF + Pose 输出 map→odom · map→base_link 下游消费 · localization_pose / RViz · 05 / 优化与输出 下游消费 localization_pose / RViz sensor_msgs/Image 主视觉流 灰度 512×640 主视觉流 KeyPoint[] + Desc[64D] 主视觉流 MapPoint3D[] 主视觉流 2D-3D 对应 (top450) 主视觉流 T_map_cam + 内点 主视觉流 视觉 T_map_cam 主视觉流 T_map_odom 主视觉流 TF + Pose 主视觉流 Image 异步副本 AprilTag 流 角点 2D-3D (负 id) AprilTag 流 T_odom_base 预测 odom 流 SE(2) prior odom 流 odom 主链路 odom 流 Legend primary data async batch data flow

数据类型链 (真实)

  • • sensor_msgs/Image → KeyPoint[] + Desc[64D] (XFeat) → MapPoint3D[] (VSMAP medoid) → 2D-3D Correspondence (top-K 450)
  • • SE(3) T_map_cam (PnP 初值) → Ceres 精化 → T_map_odom (corrector 平滑) → TF map→odom
  • • odom 全程 T_odom_base: 投影预测 / SE(2) prior / 融合主链路

ROS 接口与 frame

  • • 订阅: /camera/cam1/image_raw (remap ~image) · ~camera_info · odom_topic (板 /odom, bag /jarvis/odom)
  • • 发布: localization_pose · _with_covariance · _path · map_cloud (latched) · used_map_points
  • • TF frame: map → odom (主输出) + map → base_link;无 service

Future / Planned (当前代码不存在)

  • • GTSAM factor graph: 未实现,全仓库 grep 零命中 — 不画入运行流
  • • 规划形态: Visual Pose Factor + Odom Factor + AprilTag Factor → GTSAM/ISAM2 → 优化 T_map_odom
  • • 当前等价物: Ceres SE(2) odom prior (≈odom factor) + N=4 滑窗 between + AprilTag 角点直接注入 PnP (非 factor)