实验手册
lab1-pixel-size
实验 1 · 像素当量标定
- 目标
- 标出相机的 mm/px,并用真值验证偏差在 0.05 mm 以内。
- 预计用时
- 30分钟
- 难度
- 入门
- 前置
- 无。这是第一个实验。
目标
在 demo-2axis-vision 上标出像素当量,并回答一个问题:你标出来的值,离真的差多远?
准备
- 机台:
demo-2axis-vision - 前置标定:先跑一次
C3 相机内参与畸变(这一步不能省,原因见步骤 5) - 预计用时:30 分钟
步骤
文件 → 打开机台 → demo-2axis-vision,等所有设备显示「已连接」。标定 → 相机内参与畸变,保持默认跑完。记下重投影误差(应 < 0.15 px)。标定 → 像素当量。在 prepare 里把采集跨度设为 50 mm,点数 9。- 跑完,记录三个数:
solved.mmPerPx、truth.mmPerPx、verify.deviationMm。 - 把采集跨度改成 5 mm,点数改成 25,再跑一次。点数变多了,偏差反而变大——记录下来。
- 跳过 C3(
标定 → 重置 → 仅内参),直接跑像素当量。看残差和偏差各自变了多少。
判据
| 项 | 判据 |
|---|---|
| 步骤 4 的偏差 | < 0.05 mm |
| 步骤 4 的残差 RMS | < 0.15 px |
| 步骤 5 的偏差 | 明显大于步骤 4(通常 3–5 倍) |
| 步骤 6 | 残差只略涨,偏差涨到步骤 4 的 5 倍以上 |
常见错误
- 把采集点全挤在视野中心:残差很好看,偏差很大。跨度比点数重要得多。
- 忘了先做畸变标定:这是步骤 6 要你亲自复现的。
- 单向采集:所有点都从同一方向走过去,反向间隙被藏起来了(实验 3 专门讲)。
- 改了标定板参数却没改配置:标称间距填错 0.1%,结果就直接差 0.1%。
思考题
- 步骤 5 里点数从 9 涨到 25,理论上精度应该提升多少倍?实际为什么反而更差?
- 残差 RMS 在步骤 6 里只涨了不到 3 倍,偏差却涨了 5 倍以上。这说明残差在什么情况下会骗人?
- 如果真机上没有真值,你怎么设计一个实验来估计自己的偏差?(提示:块规、已知距离的两次定位)
- 像素当量的相对误差 0.1% 在 200 mm 行程上意味着多少毫米?这个数能接受吗?