相机 2
某汽车行业客户为此项对比测试提供了一台带有已知参考数据的黄金样机。
下文所列数据涉及该相机以及所使用的硬件和软件。
相机:Leopard Imaging
视角:约 120°
传感器 Resolution:3840 像素 * 2160 像素
使用的 GEOCAL:GEOCAL-XL
GEOCAL软件版本:V1.4.0
应用的Distortion模型:自定义
变体系数数量:4
结果
我们拍摄了四张图像,并使用 GEOCAL 软件对其进行分析,发现焦距和焦点的偏差也很小。同样,不同方法之间的偏差是基于所有四次 GEOCAL 测量的平均值得出的。

在焦距和主点均得到正确校正后,我们便获得了计算相机内参矩阵所需的所有数据,而该矩阵对于有效的Distortion校正至关重要。在开发阶段的该阶段,Distortion系数尚无法进行比较。
相机 1
PhaseOne 为从事地理空间成像等领域的客户提供相机几何校准服务,这些客户对所采集数据的高精度有严格要求。该公司非常慷慨地为我们提供了一台 PhaseOne 相机,并附上了当前校准的结果供我们进行对比。
以下数据为相机及所使用的软硬件信息。
相机:PhaseOne iXM-RS150F-RS
焦距:50 mm
像素间距:3.76 µm
传感器分辨率:14204 像素 × 10652 像素
使用的 GEOCAL 软件:GEOCAL-XL
GEOCAL 软件:V1.4.0
应用的Distortion模型:Even_Brown_Model
尽管GEOCAL仅需一张图像即可完成几何校准,但我们仍使用GEOCAL软件对三张图像进行了分析,以确保结果的可重复性。焦距以pixel为单位给出,并通过应用像素间距转换为毫米。各方法之间的偏差基于三次测量的平均值计算得出。
结果
由于Phase One给出了去畸变函数的系数,我们无法直接比较GEOCAL软件计算出的畸变系数。不过,我们可以比较所得的焦距和主点。以下是两种方法的对比结果。

可以看出,两种方法在焦距和主点方面的差异很小。此外,均方根误差(RMSE)值仅为一个pixel的分数,这表明重投影后的网格与实际检测到的网格非常接近。 均方根误差(RMSE)表示从检测点到重投影点的平均偏移量(以pixel为单位),是衡量几何表征质量最重要的指标。
与当前已确立的几何校准方法的比较
简介
GEOCAL 是一款相机校准工具,它利用激光技术投射光点网格,无需传统 Test Charts 即可实现精确的几何校准。几何校准可提高相机在汽车和安防等行业的精度。
在 GEOCAL 的产品开发阶段,我们已邀请了那些在产品开发或服务中采用其他标准几何校准方法的客户参与其中。这些方法已十分成熟,且经实践验证行之有效。 在本论文/技术说明中,我们将这些方法的校准结果与使用 GEOCAL V1.4 软件进行的几何校准结果进行对比。1.4 版本在提高灵活性、可靠性和精度方面迈出了重要一步。
相机 3 - 棋盘格与 GEOCAL 对比
我们还基于对 TE251 畸变测试图的分析,将 GEOCAL 校准与广为人知的 OpenCV 棋盘格校准进行了对比,以便更好地了解其性能表现。
下文列出了所使用的相机以及相关软硬件配置。
相机:佳能 Powershot G5 X
焦距:9 毫米
传感器分辨率:5536像素 × 3693像素
使用的 GEOCAL:GEOCAL-XL(序列号:GC-10004)
GEOCAL 软件版本:V1.4.1
应用的Distortion模型:Even_Brown_Model
验证用Test Chart:TE251
分析软件:iQ-Analyzer-X 1.9
第一步是拍摄 GEOCAL-XL 的照片。为确保光点清晰可见,我们尽可能缩短了曝光时间,将 ISO 调至最低档,并将光圈设为 f/11。 随后,我们通过将第0阶(最亮的点)保持在图像中心,并使用水平仪将相机保持水平,确保旋转误差尽可能小。

图像看起来似乎曝光不足,但这是由于光点尺寸较小所致,属于预期现象。我们使用 GEOCAL 软件 1.4.1 对其进行了分析,并采用了以下配置。
Distortion model: Even_Brown_Model
径向系数数量:3
切向系数数:0(这些系数更适用于镜头偏心或对齐不当的情况)
下一步是执行 OpenCV 棋盘格校准。
要开始棋盘格校准,我们需要至少十张来自具有规定方格数量的正方形棋盘格图案的图像。以下是我们使用的图像:

我们使用了 OpenCV 文档中提供的棋盘格校准示例脚本。
OpenCV 正确检测到了所有点。在同一台电脑上,使用 GEOCAL 软件进行校准耗时约 5 秒,而使用 OpenCV 代码则耗时 95 秒。
完成两次校准后,内参和Distortion系数如下所示:

这些参数就是我们对TE251图像进行畸变校正所需的全部信息。我们使用Python中的OpenCV undistort()函数,结合GEOCAL和棋盘格校准参数完成了畸变校正。以下是我们的输入图像:

应用畸变校正后的图像。


从视觉上看,图像四角存在细微差异。通过使用 iQ-Analyzer-X 测量这些去畸变后图像中残留的 Distortion,我们可以更直观地了解其性能表现。

两种方法在视野的70%范围内,其局部几何Distortion(LGD)均接近于零;超过70%时,GEOCAL的表现更佳。上图中的线条代表特定半径/视野下的平均LGD值。 设想这是 TE251 测试图中所有半径相同的检测到十字图案的 LGD 值。如需进一步了解作为 ISO17850 标准组成部分的 LGD 计算方法,请访问我们网站上的资料库——Distortion 部分。
该二维图清晰地展示了整个图像视场内的Distortion分布情况。然而,相机与测试图之间的对齐情况是影响这两幅图显示效果的关键因素。


请注意,我们在GEOCAL校准中未使用切向系数,而棋盘格校准则应用了这些系数。我们发现,在这种情况下省略切向系数,无论从视觉还是客观角度来看,都能获得更好的结果。
总结
在前两个示例中,GEOCAL 校准在确定焦距和主点方面表现出了相当高的精度,而这两者正是相机内参矩阵的关键参数。棋盘格与 GEOCAL 的对比结果表明,当使用 OpenCV 的畸变校正算法时,其效果与 OpenCV 棋盘格校准相似。 在易用性方面,GEOCAL 表现更佳,因为它不需要拍摄大量图像。一张曝光适当且对齐正确的图像就足够了。此外,其设置所需的空间也少得多。但是,要使用 GEOCAL 校准,相机必须能够对焦到无限远或至少接近无限远,以提供清晰的点。 此外,还应能够调整曝光,以避免点位过曝。GEOCAL 的校准所需时间大大缩短,这使其对于需要速度、高吞吐量和精度的应用极具吸引力。
如需了解有关 GEOCAL 的更多信息,请联系我们