相机标定,内参数

相机标定得到的内参仅仅是对相机物理特性的【近似】,这一点有些人可能一辈子都没办法意识到。传统相机标定假设相机是小孔成像模型,一般使用两种畸变来模拟镜片的物理畸变。但实际相机的物理特性很可能没办法通过上述假设来得到完全的拟合。所以需要意识到,每一次相机标定仅仅只是对物理相机模型的一次近似,再具体一点来说,每一次标定仅仅是对相机物理模型在采样空间范围内的一次近似。所以当你成像物体所在的空间跟相机标定时的采样空间不一样的时候,你可能永远都没办法得到足够的精度,当你大幅改变相机与成像物体的距离的时候,你最好重新标定相机。如果你想在一个空间里得到更高的精度,你可以在空间里分层多次标定,实际计算的时候通过其他方式得到成像距离,从而选择合适的标定参数。

相机标定的目的是确定相机的一些参数的值。通常,这些参数可以建立定标板确定的三维坐标系和相机图像坐标系的映射关系,换句话说,你可以用这些参数把一个三维空间中的点映射到图像空间,或者反过来。相机需要标定的参数通常分为内参和外参两部分。外参确定了相机在某个三维空间中的位置和朝向,至于内参,可以说是相机内部的参数(这好像是废话...笑),我觉得需要引入一点光学的东西来更好地解释一下。现有的相机都至少包含一个光学镜头和一个光电传感器(CCD或CMOS)。通过镜头,一个三维空间中的物体经常会被映射成一个倒立缩小的像(当然显微镜是放大的,不过常用的相机都是缩小的),被传感器感知到。理想情况下,镜头的光轴(就是通过镜头中心垂直于传感器平面的直线)应该是穿过图像的正中间的,但是,实际由于安装精度的问题,总是存在误差,这种误差需要用内参来描述;理想情况下,相机对x方向和y方向的尺寸的缩小比例是一样的,但实际上,镜头如果不是完美的圆,传感器上的像素如果不是完美的紧密排列的正方形,都可能会导致这两个方向的缩小比例不一致。内参中包含两个参数可以描述这两个方向的缩放比例,不仅可以将用像素数量来衡量的长度转换成三维空间中的用其它单位(比如米)来衡量的长度,也可以表示在x和y方向的尺度变换的不一致性;理想情况下,镜头会将一个三维空间中的直线也映射成直线(即射影变换),但实际上,镜头无法这么完美,通过镜头映射之后,直线会变弯,所以需要相机的畸变参数来描述这种变形效果。然后,说到为什么需要20张图片,这只是一个经验值,实际上太多也不好,太少也不好。单纯从统计上来看,可能越多会越好,但是,实际上图片太多可能会让参数优化的结果变差,因为棋盘格角点坐标的确定是存在误差的,而且这种误差很难说是符合高斯分布的,同时,标定过程所用的非线性迭代优化算法不能保证总是得到最优解,而更多的图片,可能会增加算法陷入局部最优的可能性。拍照时的标定板位置和朝向的多样性,会让内参的估计更为准确。准确的内参可以较好地把整个图像的畸变都进行矫正,但如果给定的标定板的位置过于单一,比如都是在图像的左上角,那么优化得到的内参也可能只会比较好地纠正图像左上角的畸变。推荐找个畸变较大的镜头做做实验,会更形象。

转载于:https://my.oschina.net/u/221120/blog/853555

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值