3. 标定板设计与选型:棋盘格、圆点阵、ChArUco板的规格与精度要求。

说到标定板,很多新手第一反应就是「随便找个棋盘格打印出来不就行了?」。嗯,我以前也这么干过,结果标出来的相机参数,偏差大到离谱。后来才明白,标定板的设计和选型,直接决定了你的标定精度上限。

说白了,标定板就是给相机看的「尺子」。尺子不准,后面算出来的所有参数都是错的。今天我就把三种主流标定板的选型要点和精度要求,掰开了讲清楚。

3.1 棋盘格标定板

棋盘格是最经典的选择。为什么?因为它角点检测算法成熟,OpenCV里直接一个 findChessboardCorners 就搞定了。

规格要求

  • 格子数量:我建议用 9×6 或 11×8(内角点)。别用太少的,比如 4×3,角点太少,解算不稳定。
  • 格子尺寸:每个格子边长 10mm~30mm 比较常见。具体选多大?看你的视场和物距。我在项目中遇到过,有人用 5mm 的格子标 1米外的相机,结果角点模糊得根本找不准。
  • 黑白对比:一定要高对比度。白色反光率 > 90%,黑色 < 5%。别用灰色打印纸,否则边缘检测会飘。
  • 平整度:贴在刚性背板上,比如 3mm 铝板或亚克力板。别贴纸板上,弯了角点位置就偏了。
核心精度指标:棋盘格的角点定位精度,理论上可以达到 0.1 像素。但实际受打印精度和光照影响,能做到 0.3 像素就算不错了。
我的习惯:打印棋盘格时,我会用 1200dpi 以上的激光打印机。喷墨打印的墨点扩散,会让角点位置偏移 0.1~0.2mm,这对高精度标定来说是致命的。

3.2 圆点阵标定板

圆点阵在某些场景下比棋盘格更优。为什么?因为圆的中心定位,对透视畸变和镜头畸变的鲁棒性更好。

规格要求

  • 圆点数量:常见 7×7 或 11×11。圆点数量越多,拟合圆心时统计误差越小。
  • 圆点直径:一般取 10mm~20mm。直径太小,成像后像素覆盖少,圆心定位不准;太大,边缘畸变影响大。
  • 间距与直径比:间距 = 2~3 倍直径。太密了,圆点之间互相干扰;太疏了,视场内能拍到的点太少。
  • 背景色:白色背景 + 黑色圆点。反过来也行,但黑色背景容易吸光,造成边缘模糊。
避坑指南:我曾经用圆点阵标定深度相机,发现标定结果总是偏大。查了半天,原来是圆点打印出来边缘有毛刺,圆心拟合时引入了系统误差。后来改用光刻工艺制作的陶瓷标定板,问题才解决。

圆点阵的另一个优势是:它支持亚像素级圆心定位。用灰度重心法或椭圆拟合,圆心定位精度可以做到 0.05 像素。你想想看,这比棋盘格的角点检测还要准一个量级。

3.3 ChArUco 板

ChArUco 板是棋盘格和 ArUco 码的结合体。它既有棋盘格的角点,又有 ArUco 码的 ID 信息。说白了,就是给每个角点贴了个「身份证」。

为什么需要它?

普通棋盘格有个痛点:必须完整拍到所有角点才能检测。如果标定板被部分遮挡,或者视角太偏,角点检测就失败了。ChArUco 板解决了这个问题——每个 ArUco 码独立编码,即使只拍到一部分,也能通过 ID 知道每个角点的世界坐标。

规格要求

  • ArUco 码尺寸:每个码的边长 = 棋盘格格子边长的 0.8~1.0 倍。太大,挤占棋盘格空间;太小,码的识别率下降。
  • 码的字典:我常用 DICT_4X4_50 或 DICT_5X5_100。字典越大,码的区分度越高,但计算量也大。
  • 棋盘格内角点:建议 7×5 以上。角点太少,解算时约束不足。
  • 边框:ChArUco 板外围留 1~2 个格子的白色边框,防止边缘码被裁切。
精度对比:ChArUco 板的角点定位精度,理论上和棋盘格相当(0.1~0.3 像素)。但它的鲁棒性更好,尤其适合大视场、多视角的标定场景。

3.4 三种标定板的对比与选型建议

我把三种标定板的核心参数整理成了表格,方便你对照选型。

类型 角点/圆心精度 遮挡鲁棒性 适用场景 制作难度
棋盘格 0.1~0.3 像素 低(需完整可见) 标准单目/双目标定 低(打印即可)
圆点阵 0.05~0.15 像素 中(部分遮挡可拟合) 高精度标定、畸变校正 中(需高精度打印)
ChArUco 板 0.1~0.3 像素 高(部分遮挡可识别) 大视场、多视角、在线标定 高(需编码生成)
我的选型原则:如果只是实验室环境、固定视角,用棋盘格就够了,省事。如果是产线标定,标定板经常被遮挡或移动,我建议用 ChArUco 板。至于圆点阵,我一般只在需要亚像素级精度的场合才用,比如结构光相机的投影仪标定。

3.5 标定板的精度要求总结

不管选哪种标定板,有几个精度指标是通用的:

  1. 特征点位置精度:所有角点或圆心的世界坐标,误差应 < 0.01mm。这要求标定板本身制作精度高,或者经过高精度测量仪标定。
  2. 平面度:标定板表面的平面度应 < 0.05mm。贴在弯曲的表面上,标定出来的内参全是歪的。
  3. 特征点数量:至少 20 个以上。太少,解算时自由度不够,容易过拟合。
  4. 对比度:黑白区域的灰度差 > 150(8位图像)。光照不均匀时,这个值会下降,需要补光。
我曾经踩过的坑:有一次用亚克力板做背板,结果温度变化导致标定板热胀冷缩,特征点位置偏移了 0.03mm。后来换成微晶玻璃(零膨胀系数),问题才解决。所以,如果你在温度变化大的环境(比如产线)做标定,一定要考虑材料的热稳定性。

3.6 知识体系总览

下面这张图,把标定板选型的核心逻辑串起来了。你可以对照着看,选型时就不会漏掉关键点。

标定板选型决策树 标定板选型 棋盘格 圆点阵 ChArUco板 格子数:9×6 或 11×8 格子尺寸:10~30mm 精度:0.1~0.3 像素 圆点数量:7×7 或 11×11 直径:10~20mm,间距2~3倍 精度:0.05~0.15 像素 ArUco码尺寸:0.8~1.0倍格子 字典:DICT_4X4_50 等 精度:0.1~0.3 像素 选型核心:精度需求 × 遮挡鲁棒性 × 制作成本

嗯,标定板这块的内容就这些了。记住一句话:标定板的精度,决定了你整个标定流程的天花板。选型时多花点心思,后面能省很多调试时间。

专注资料整理