首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >再谈「相机标定」

再谈「相机标定」

作者头像
3D视觉工坊
发布2020-12-11 16:06:47
发布2020-12-11 16:06:47
8230
举报

前言

计算机视觉中,相机标定的重要性不言而喻,前面在公众号【视觉IMAX】中写过有多篇文章是关于相机标定的,包括一分钟详解OpenCV之相机标定函数calibrateCamera()从零开始学习「张氏相机标定法」,但是,今天还想再次聊一聊相机标定,进一步加深对其基本方法与概念的理解。

一 基本问题

相机内外参数标定步骤主要包括如下:

  1. 考虑相机线性模型:
  1. 解算mij项;
  2. 分解内、外参数;
  3. 考虑非线性项。

Zhang方法:由张正友提出,OpenCV等广泛使用。在Zhang方法之前,一般都是使用立体靶标,对于立体靶标,很难计算其特征点的三维坐标。

Zhang方法特点:使用平面靶标摆多个pose(可未知)。

Zhang方法标定步骤

(1)对一个pose,计算单应性矩阵;

(2)有三个以上pose,根据各单应矩阵计算线性相机参数;

(3)使用非线性优化方法计算非线性参数。

二 Zhang方法

  • 第一步:求解单应矩阵——基本方程 Zhang方法的特点:使用平面靶标摆多个pose。

由于特征点在平面上,我们此处令Z=0,则有上图中的表达式,也可看出:单应矩阵H为3x3的矩阵。

那么如何求解单应矩阵,建立内参数方程呢?

注:由于Z=0,故而上图中r3一项没有,也即为0。

对应每一个pose,可得到上述两个方程。

  • 第二步:求解内参数——建立方程

注:具体的详细步骤,可参考《Learning OpenCV3》。

  • 第三步:求解外参数

第四步(最后一步):非线性畸变参数求解

注:Zhang方法呢,只考虑了径向畸变,对于OpenCV等工具包里,考虑了其他畸变。简单来说,计算畸变参数,主要是利用了重投影方法。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 3D视觉工坊 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档