Matlab相机标定方法及主要参数含义,坐标变换过程

Matlab相机标定方法及主要参数含义,坐标变换过程,第1张

网上有很多关于matlab相机标定的资料,但找了很久没有相应的参数说明:怎样利用获得参数从世界坐标系变换到图像坐标系,所以这里为了记录一下,也方便新人理解。

首先由图像到参数的获取部分在网上有很多资料,也很容易,在这就不再赘述,我利用的标定板的格子大小为0.3mm×0.3mm,其示意图如下:

得到的相机参数如下:

这里关注的几个参数如划线所示,分别为:世界坐标(0.3mm),平移矩阵,相机内参,图像坐标,旋转矩阵。
其中相机内参只有一个,平移矩阵和旋转矩阵针对每幅图像各有一个。
由坐标变换原理可得(参考网址:https://zhuanlan.zhihu.com/p/94244568)

这里将文章中感光板的横边和纵边之间的角度认为为90°。
这里有一个需要注意的地方,matlab中得到的相机内参需要进行一次转置
取第一幅图像的平移、旋转矩阵为例,得到变换矩阵参数如下:



然后取世界坐标系中两个点:(0,0),(0,0.3mm).
然后对获取参数进行计算图像坐标系中位置:


得到结果为:


这里有第二个注意点:图像坐标前面有个尺度因子s,所以需要三个元素同时除以s,使所得结果的第三个元素为1,得到实际图像坐标

matlab中通过角点检测获取的对应点坐标为:

可以看出相差不大。

最后可以由上计算出,一个像素点代表的实际尺寸为4.2811μm

若有错误,谢谢指出

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/939605.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-17
下一篇 2022-05-17

发表评论

登录后才能评论

评论列表(0条)

保存