2017年11月13日学习记录:机器视觉(1)——摄像机标定概括
刚开始学机器视觉,我研究的方向主要是双目视觉测距。做机器视觉的肯定对摄像机标定并不陌生。我入坑一个月,开始就是看看书、论文,了解了大概流程和研究主要方法,无特别明确目的和压力。然后发现没什么进展,不能再这样了,得动手做。就开始动手做标定,才发现自己还是云里雾里的(张正友的书看了一半多,看了不少论文),不知道标定是在干嘛,出来的数据怎么用。感觉一直在原地绕,看起来每个讲标定的文章都是那样。今天终于弄明白了些,记录下来,以防以后自己又忘了。
1、为什么标定:用双目摄像机拍照,从照片里得到一些空间信息(比如距离,尺寸等),是要利用二维图像得到三维信息。我们拍照的时候把空间物体信息通过摄像机变成了二维图像,这个过程本来是不可逆的。但如果我们可以找到一个摄像机的数学模型,就可以 :从二维图像+模型逆推得到原来三维信息。标定就是在找这个模型。标定板就是训练样本,它的一每个格子长宽固定,至于为什么用这样的标定板,参考一篇文章https://zhuanlan.zhihu.com/p/30813733。现在很多人在学机器学习,深度学习之类的,我觉得和那些过程有点像,就是用训练样本(标定物:如棋盘格标定板或圆点标定板或三维靶标),来找到模型(不过要注意相机是实物,它的参数是真实存在并且固定的,这一点和神经网络不太一样),然后再利用模型+数据(图片)得到结果。
2、标定原理:张正友,Tassi等,可以自己去查,几乎每个关于标定的资料都讲的很清楚。主要是那几个矩阵自己推一下,对于学过线性代数和矩阵论的,不难。
3、标定哪些参数:包括摄像机内参:焦距、主点等摄像机固有的物理参数,外参:标定板坐标系到相机坐标系的变换矩阵。(关于内参外参,每个资料都会讲,此处不再赘述)
4、如何标定:首先你得有相机吧,然后有一个标准标定板。相机放到工作环境,标定板要尽可能平,倾斜角度不要太大,分别拍摄标定板每个位置时左右相机单独成的图像。然后可以开始标定了,刚开始学的话(估计看这篇文章的都是刚开始学的。。。),可以先用MATLAB(matlab calibration toolbox-Matlab标定工具箱使用(单目标定和双目标定) - CSDN博客 http://blog.csdn.net/kaspar1992/article/details/54344965)工具箱和opencv现成的代码,做出来个结果,清楚了流程,自己再去改进。
5、标定后干什么:可以进行三维重建、测距等(目前我主要接触的是这两个,,,)。
还有一些细节,如优化等我没学到呢,刚开始跑了几次MATLAB工具箱的程序,标定结果很不理想。
写的比较笼统,一到码字,自己就懒,,,
---------------------
作者:liminxia20160101
来源:CSDN
原文:https://blog.csdn.net/liminxia20160101/article/details/78522444