双目模型我试了出来点云效果不好,感觉深度估计数据有问题,进的远,远的近

:bullseye: 回答你的关键问题

:one: GDC 校准参数与左右目顺序的关系

是的,GDC 校准参数与左右目顺序直接相关!

如果左右目接反了,GDC 校正时会:

  • 用左目的内参去校正右目图像
  • 用右目的内参去校正左目图像
  • 导致 rectified 图像的内参与实际不匹配

这就是深度误差 10 倍的根本原因!


:two: 右边传感器 EEPROM 乱码是否正常

正常! 从社区案例 34255 确认:

i2c bus: 4, EEPROM FLAG: SC230AI  ✅ 正常识别
i2c bus: 6, EEPROM FLAG:   ⚠️ 乱码(不影响使用)

官方 SC230AI 模组的第二个通道 EEPROM 读取乱码是已知现象,不影响图像采集和深度计算。


:three: 为什么默认标定文件反而更好

这说明 stereo.yaml 中的默认参数可能恰好匹配了当前的 resize 比例

分析:

配置 内参来源 深度效果
MIPI calib_params.yaml 640x480 原始参数 :cross_mark: 深度误差 10 倍
stereo.yaml 默认值 可能是 640x352 参数 :white_check_mark: 效果好一些

:hammer_and_wrench: 解决方案

方案 1:确认 stereo.yaml 的默认参数(推荐)

# 查看当前 stereo.yaml 内容
cat /opt/tros/humble/share/hobot_stereonet/config/stereo.yaml

# 对比 MIPI 标定文件
cat /opt/tros/humble/lib/mipi_cam/config/calib_params.yaml

如果 stereo.yaml 默认值效果更好,说明它匹配了 640x352 的分辨率。

方案 2:让 GDC 输出匹配模型输入

# 使用 640x352 启动相机(无需 resize)
source /opt/tros/humble/setup.bash
ros2 launch mipi_cam mipi_cam_dual_channel.launch.py \
  mipi_image_width:=640 \
  mipi_image_height:=352 \
  device_mode:=dual \
  mipi_channel:=2 \
  mipi_channel2:=0

# 启动 StereoNet
ros2 launch hobot_stereonet stereonet_model_web_visual_v2.4_int16_usb_cam.launch.py

观察日志,应该不再出现:

input image size not match model input size, need resize

方案 3:手动计算正确的内参

如果必须用 640x480 输出,需要按比例缩放内参:

sudo vim /opt/tros/humble/share/hobot_stereonet/config/stereo.yaml

# 原始内参(640x480):
# fx=261, fy=255, cx=318, cy=225

# 缩放后内参(640x352):
# scale = 352/480 = 0.733
# fx = 261 * 0.733 = 191
# fy = 255 * 0.733 = 187
# cx = 318 (不变)
# cy = 225 * 0.733 = 165

intrinsics: [191.0, 187.0, 318.0, 165.0]

:clipboard: 验证步骤

# 1. 查看 stereo.yaml 默认值(效果好的那个)
cat /opt/tros/humble/share/hobot_stereonet/config/stereo.yaml

# 2. 记录内参值
# [fx, fy, cx, cy, baseline]

# 3. 实测深度
# 1m 处物体 → 应显示 0.9-1.1m
# 2m 处墙面 → 应显示 1.8-2.2m

:white_check_mark: 总结

问题 答案
GDC 校准与左右目顺序 直接相关,接反会导致内参错配
EEPROM 乱码 正常现象,不影响使用
默认标定更好 说明默认参数匹配了当前分辨率
深度误差 10 倍 内参与分辨率不匹配导致

建议: 既然默认标定文件效果更好,就用 stereo.yaml 的默认配置,配合 640x352 分辨率 启动相机,避免 resize。

stereo.yaml 的内容和实测结果补充到 原帖,这样官方技术支持能确认参数是否正确!:bullseye: