12

相机参数估计值如何计算?

 3 years ago
source link: https://mp.weixin.qq.com/s/wXPQo6N8Oni3L8p21-9v-Q
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

相机参数估计值如何计算?

书涵 3D视觉工坊 1/18

点击上方“3D视觉工坊”,选择“星标”

干货第一时间送达

640?wx_fmt=jpeg

在三维重建中,标定是很重要的一环,而在所有标定中,单目相机标定是最基础的,对于新手而言,跑通了一个相机标定代码,得到了一堆参数结果,如何判断自己的标定的是对的呢?RMS(重投影误差)小标定就一定准确吗? 在这篇文章中,笔者将简单聊聊如何在标定之前估算你要标定的相机内参值。以下方法仅针对普通工业相机镜头,鱼眼相机和全景相机不考虑在内。

首先要知道的是,相机标定时,需要优化的参数有,相机内参 – 其中包括 相机“焦距“”(f/dx f/dy)相机图片中心(u0,v0), 相机畸变系数(k1 k2 k3 p1 p2)。由于参与优化的系数较多,在有些情况下,会优化到一个局部最优解上,导致你的RMS看着挺不错的,甚至比较小,但是在实际使用中如去畸变的时候,发现图片变得畸形。或者在双目极线矫正的时候,对应点没有到同一条直线上,这都是因为优化时落入了一个局部最优解。在开始估计参数之前,我们需要知道以下两点,

1 )对普通工业相机镜头来说,畸变系数通常不会很大;

2 )相机内参标定结果应该在理论的线性系统附近(即不考虑畸变下的计算值)

相机图片中心很好理解,它即指的是你图像的中心点,通常是相机分辨率的一半,即如果你的图像像素大小是 800*600,那么你的图像中心应该是(400,300),在接下来的内容中,笔者要重点介绍如何估计相机“焦距”,这个焦距的表达式是 f/dx. 代表着理想焦距/相机像元大小,是一个无单位的值(f 和 dx单位要统一后比值计算)。 由于f是一个理想焦距,它并不是我们拿到的工业镜头的焦距大小,所以不可以拿工业镜头焦距直接代替。 接下来笔者带大家探究下这个理想焦距的实际意义,以及在相机透镜成像系统中,如何估计这个理想焦距f的大小。

640?wx_fmt=png

640?wx_fmt=png

在相机标定时我们用的是小孔成像模型,如下图1所示,光透过小孔在成像平面形成物像,在大部分讲相机标定的书中,我们为了使坐标系方便,会把这个模型稍稍做个变形,如图2,把像平面和物平面放到同一侧(虽然违背物理意义,但是很方便建立模型),于是图1中的小孔就是我们通常所说的光心位置,这个位置是一个虚拟位置,不具备实际测量的可能。小孔到像平面的距离就是我们的理想焦距f。

640?wx_fmt=jpeg

在实际使用时,我们通常会使用如图3所示的透镜系统,此时,图1中的小孔,即是透镜的中心,我们要标定的理想焦距f,则是像平面到透镜中心的距离。

现在我们知道了f的意义,但是不可能实际去量像平面到透镜中心的距离,那如何估计这个值呢?实际上非常简单,使用简单的初中物理知识我们就可以很好的估计了。

在透镜系统中有如下公式:

640?wx_fmt=png

其中d代表像距,D代表物距,f代表透镜焦距。d即为我们要求得的理想焦距。

f 是我们工业镜头所标示的焦距。D可以通过测量物体对焦时到镜头的距离测得,这样理想焦距d就可以顺利求得啦。 如果觉得用测量的方式求D不是很准,或者不方便测量D,也可以通过测量D/d 的值,并结合上述公式和f求D的大小。

D/d 的求法如下: 找到一个已知长度的物体(标定板即可),拍摄其在对焦时在相机图片中的像素长度(为了更精确要竟可能使物体的长度和图像边长平行),则D/d = 物体的实际长度/(像素长度*像元大小)  注意统一像元大小和实际长度之间的单位。

通过以上计算,我们就可以很快的得到相机的参数估计值,有了这个值,就可以去对比标定的结果,如果相机内参和实际估计值的差别过大的话,即使是RMS看起来很小,也有可能出现较大误差。 这种情况下,可能是标定输入的参数,比如棋盘格的格点长度出错,也可能是畸变陷入了一个奇怪的局部优化点。

以上图片来自网络。如有侵权,联系作者删除!

备注:作者也是我们「3D视觉从入门到精通」特邀嘉宾:一个超干货的3D视觉学习社区本文仅做学术分享,如有侵权,请联系删文。下载1在「3D视觉工坊」公众号后台回复:3D视觉即可下载 3D视觉相关资料干货,涉及相机标定、三维重建、立体视觉、SLAM、深度学习、点云后处理、多视图几何等方向。下载2在「3D视觉工坊」公众号后台回复:3D视觉github资源汇总即可下载包括结构光、标定源码、缺陷检测源码、深度估计与深度补全源码、点云处理相关源码、立体匹配源码、单目、双目3D检测、基于点云的3D检测、6D姿态估计源码汇总等。下载3在「3D视觉工坊」公众号后台回复:相机标定即可下载独家相机标定学习课件与视频网址;后台回复:立体匹配即可下载独家立体匹配学习课件与视频网址。

重磅!3DCVer-学术论文写作投稿 交流群已成立

扫码添加小助手微信,可申请加入3D视觉工坊-学术论文写作与投稿 微信交流群,旨在交流顶会、顶刊、SCI、EI等写作与投稿事宜。

同时也可申请加入我们的细分方向交流群,目前主要有3D视觉CV&深度学习SLAM三维重建点云后处理自动驾驶、多传感器融合、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等微信群。

一定要备注:研究方向+学校/公司+昵称,例如:”3D视觉 + 上海交大 + 静静“。请按照格式备注,可快速被通过且邀请进群。原创投稿也请联系。

640?wx_fmt=png▲长按加微信群或投稿

640?wx_fmt=jpeg

▲长按关注公众号

3D视觉从入门到精通知识星球:针对3D视觉领域的知识点汇总、入门进阶学习路线、最新paper分享、疑问解答四个方面进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业为一体的铁杆粉丝聚集区,近2000星球成员为创造更好的AI世界共同进步,知识星球入口:

学习3D视觉核心技术,扫描查看介绍,3天内无条件退款640?wx_fmt=jpeg 圈里有高质量教程资料、可答疑解惑、助你高效解决问题觉得有用,麻烦给个赞和在看~640?wx_fmt=gif


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK