标定

    xiaoxiao2021-03-25  109

    参考论文:Plane-based calibration of a projector-camera system. GabrielFalcao, Natalia Hurtos, Joan Massich. VIBOT Master 2008.

     

    简介:在3D计算机视觉中,系统标定的准确性和精度是关键问题。摄像机标定经过多年研究已经有成熟的方法,Bouguet’s Calibration Toolbox让我们更方便地使用平面棋盘格进行标定。而投影仪的标定比摄像机更复杂:第一投影仪不能对它投影到的平面成像,只能利用摄像机获得2D点和3D被照明点的对应关系;第二恢复3D点的坐标很难,因为棋盘格是投影出来的,不是固定在世界坐标系下的。本文的方法是将投影仪看成反向的摄像机,把2D点映射到空间中3D点,然后按照摄像机标定的方法标定投影仪。

     

    第一部分:主要步骤

    1、用张正友标定法标定摄像机(即Bouguet的标定包),得到摄像机内参;2、根据标定得到的外参,获得在摄像机坐标系下的标定平面;3、投影棋盘格到标定板上,检测角点,获得摄像机坐标系下的光线;4、通过求线面交点恢复投影棋盘格的空间3D坐标(摄像机坐标系下);5、用棋盘格的2D点和以上3D点之间的对应性标定投影仪(与标定摄像机相同)。

    2,3,4 解决投影棋盘格的3D坐标

    第二部分:用Matlab标定包标定摄像机-投影仪系统

    0 准备标定用的图片。准备输入投影仪的棋盘格;准备一个较大的平板,上面要有打印的棋盘格,还要足够投影一个棋盘格到上面。将摄像机和投影仪固定好位置后,改变平板的方向,拍摄多个方向(10-20左右)的图片。

    可以分别拍两组图片:没有投影棋盘格的和有投影棋盘格的,前者用于摄像机标定,结果会更准确。

    2.1 运行cam_proj_gui程序,得到用户界面。

    2.2 第一步(红色)是标定摄像机,进入CameraCalibration GUI或者直接载入摄像机标定结果。此时载入了摄像机内参和各个平面的外参。

    2.3 第二步(黄色)是生成标定用的数据,这个数据包含线面的交点。

    前一个按钮可以选择标定用的图片,图片既包含打印的棋盘格,又包含投影的棋盘格。如果选择了与摄像机标定不同的图片,则需要提取打印棋盘格的角点(为了确定平面)。

    第二个按钮则是计算线面交点。这时需要提取投影棋盘格的角点(为了确定光线)。

    之后要提供输入投影仪中的图片,并且提取角点(为了提供对应的2D点)。

    2.4 蓝色按钮完成标定,得到投影仪内参。(结果并不理想,需要进一步优化)

    2.5 绿色按钮分析标定结果,类似摄像机标定,再进一步优化。

    2.6  “Add/Suppressimages” 按钮可以增加或减少标定用的图片。

    2.7 白色框中的按钮可以保存、载入系统标定结果以及推出GUI。

    转载请注明原文地址: https://ju.6miu.com/read-11909.html

    最新回复(0)