Matlab单目相机+投影仪标定(cam_proj_calib)

1、procamcalib介绍及参考文献
Plane-based calibration of a projector-camera system. GabrielFalcao, Natalia Hurtos, Joan Massich. VIBOT Master 2008.

procamcalib工具箱是在matlab相机标定工具箱Bouguet’s Calibration Toolbox基础上进行二次开发,从而实现对投影仪的标定,所以在具体操作过程中也会和Bouguet’s Calibration Toolbox有重合的步骤,最终都是为了得到内参外参和畸变参数这些信息。

很大一部分使用者的需求是为了用在结构光三维重建领域中,其中很多人更喜欢用光栅相移条纹进行投影仪的标定,我们使用的工具箱不是这种方法,而是投影棋盘格和打印的棋盘格一起联合标定;当然还有另一部分的使用者只是用来矫正投影镜头的畸变,有一部分属于先对相机进行标定然后再进行投仪标定,本文就属于这种。

2、标定准备工作
需要两个工具箱
一个TOOLBOX_calib
在这里插入图片描述

一个Revised_ProCamCalib
在这里插入图片描述
把刚才两个工具箱的路径加载到里面,这样系统才能识别到
在这里插入图片描述
在命令窗口输入:
cam_proj_gui

打开投影仪标定工具箱GUI界面
在这里插入图片描述
3、接下来进行相机标定
GUI界面点击Camera Calibration GUI选项,选择图片
在这里插入图片描述
在这里插入图片描述
具体步骤参考:
线结构光传感器标定(相机标定+结构光标定)完整流程(一)

在这里插入图片描述
提取角点后,重复上述步骤
在这里插入图片描述
标定完成后
GUI界面点击保存后然后退出,此时相机标定结束
在这里插入图片描述
4、接下来进行投影仪标定
在这里插入图片描述加载刚才的相机标定结果,命令窗口显示:

Loading calibration results from Calib_Results.mat
done

使用之前标定相机的相同照片去做投影仪的标定
在这里插入图片描述
命令行窗口显示:

Do you want use the same images used for camera calibration to
calibrate the projector? ([]=yes, other=no)

回车默认选择(如果你单独对相机做了标定,此处应重新选择图片)

GUI界面继续选择下一项
在这里插入图片描述
命令窗口显示:

You may now run ‘Calibration’ to recalibrate based on this new set of images.
Window size for corner finder (wintx and winty):
wintx ([] = 5) = 20
winty ([] = 5) = 20
Window size = 41x41

此处先回车默认选择前面所有图片,wintx and winty值可以适当改大点,不然可能那捕捉不到角点位置

然后手动选择四个角点,如果识别到的话会自动提取所有角点(注意如果系统不能自动提取角点提醒需要你手动输入X和Y方向方格数量的话一般是你的前面输入的wintx and winty值不太合适;当然也有可能是你图片不够清晰)
在这里插入图片描述
依次重复上面的操作直到所有图片完成
注意完成后命令窗口会提示:

Projected image name:

此时要输入投影仪投影的模板图片名称,这张图片也应该放在相同文件夹中才能索引到,我的名称是 pattern.png 然后回车

命令窗口再次出现提示:

Window size for corner finder (wintx and winty):
wintx ([] = 5) =
winty ([] = 5) =
Window size = 11x11

回车选择四个角点,轻车熟路了已经

接下来要注意命令窗口出现:

Size dX of each square along the X direction ([]=30mm) =
Size dY of each square along the Y direction ([]=30mm) =

按理说投影出来的棋盘格没有固定尺寸的,因为每次都要更换不同的位置拍照 ,这里让输入棋盘格XY方向的实际尺寸岂不是很扯淡?
我找到了作者的官方回复,翻译过来意思就是说当时是在Bouguet’s Calibration Toolbox基础上进行二次开发的嘛,相机标定的时候确实需要输入实际尺寸的,他为了省事就没改。。。所以这里写不写尺寸都没影响的。。。

在这里插入图片描述
然后这里继续默认回车

If the guessed grid corners (red crosses on the image) are not close to the actual corners,
it is necessary to enter an initial guess for the radial distortion factor kc (useful for subpixel detection)
Need of an initial guess for distortion? ([]=no, other=yes)

回到GUI点击此处
在这里插入图片描述
激动人心的时候到了,命令窗口出现投影仪标定参数
在这里插入图片描述
标定之后投影仪相对相机的外参矩阵在右侧工作区找:
在这里插入图片描述

  • 4
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值