深度学习 相机标定_相机标定

深度学习 相机标定_相机标定术语内参矩阵:IntrinsicMatrix焦距:FocalLength主点:PrincipalPoint径向畸变:RadialDistortion切向畸变:TangentialDistortion旋转矩阵:RotationMatrices平移向量:TranslationVectors平均重投影误差:MeanReprojectionError重投影误差:Repr…

大家好,又见面了,我是你们的朋友全栈君。

术语

内参矩阵: Intrinsic Matrix

焦距: Focal Length

主点: Principal Point

径向畸变: Radial Distortion

切向畸变: Tangential Distortion

旋转矩阵: Rotation Matrices

平移向量: Translation Vectors

平均重投影误差: Mean Reprojection Error

重投影误差: Reprojection Errors

重投影点: Reprojected Points

四个坐标系

世界坐标系

相机坐标系

z轴为光轴.原点为光心.

图像坐标系

像素坐标系

前三个坐标系的单位是米或者毫米,最后一个是像素.

世界转相机

79a943aab7b783b794bb84d2b3d5f3e7.png

R为3 x 3 旋转矩阵, t为3 x 1平移向量.

相机转图像

d36ff66104b8dd884ff286bddee23320.png

如图,空间任意一点P与其图像点p之间的关系,P与相机光心o的连线为oP,oP与像面的交点p即为空间点P在图像平面上的投影。

该过程为透视投影,如下矩阵表示:

197fb08359ac10a97b08cae803f27404.png

其中,s为比例因子(s不为0),f为有效焦距(光心到图像平面的距离). (x,y,z)为相机坐标系内的点,(X,Y)为图像坐标系内的点.

图像转像素

6481b37d4c67295f75efa59d1aa3ef2e.png

图像坐标系

图中的XOY.原点为光轴与相面交点. 单位通常为毫米.

像素坐标系

图像左上角为原点. 图中的uov

aeace0a00b4e92c91d74192cb68d179d.png

dx,dy代表在x,y方向,每个像素代表多少毫米. u0,v0代表图像XOY的原点在uov的像素坐标。

世界转像素

有了上面的讨论,可得:

c809f1e579ad7711ecdb4fcdb3656c96.png

M1的参数是由相机本身决定的.所以叫内参.

相机标定

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/140339.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • hibernate二级缓存配置[通俗易懂]

    hibernate二级缓存配置[通俗易懂] 二级缓存配置:    1、首先要打开二级缓存,在hibernate.cfg.xml中添加如下配置:  property name=”hibernate.cache.use_second_level_cache”>trueproperty>    2、Hibernate的二级缓存使用第三方的缓存工具来实现,所以我们需要指定Hibernate使用哪个     缓存工

    2022年5月10日
    42
  • tk mapper和mybatis plus_dozermapper

    tk mapper和mybatis plus_dozermapperTKmapper(通用Mapper)和MPmapepr(MyBatis-Plus)是mybatis两大插件,功能相同,都提供了常规的增删改查操作,增强mybatis的功能,篇幅有限,文章仅说下两者的区别!PageHelper是一个分页插件目录TKmapper1.SpringBoot集成2.Example用法3.Mapper接口4.MybatisGeneat…

    2022年9月27日
    4
  • 验证码的原理及作用「建议收藏」

    验证码的原理及作用「建议收藏」验证码被广泛用于用户登录以及注册的校验,那么验证码的作用仅仅是进行校验吗?,或者说为什么会有验证码校验这一环节?验证码是目前大多网站所支持并使用于注册登录的。就在于其作用能有效防止恶意登录注册,验证码每次都不同,这就可以排除,用其他病毒或者软件自动申请用户及自动登陆.有效防止这种问题。这就是验证码的真正作用,能够防止别人进行恶意攻击,而且大家也会注意到一点,如果频繁发送验证码,用户请求注册…

    2022年7月14日
    13
  • L3-008 喊山(堆优化dijsktra+队列bfs)「建议收藏」

    L3-008 喊山(堆优化dijsktra+队列bfs)「建议收藏」原题链接喊山,是人双手围在嘴边成喇叭状,对着远方高山发出“喂—喂喂—喂喂喂……”的呼唤。呼唤声通过空气的传递,回荡于深谷之间,传送到人们耳中,发出约定俗成的“讯号”,达到声讯传递交流的目的。原来它是彝族先民用来求援呼救的“讯号”,慢慢地人们在生活实践中发现了它的实用价值,便把它作为一种交流工具世代传袭使用。(图文摘自:http://news.xrxxw.com/newsshow-8018.html)一个山头呼喊的声音可以被临近的山头同时听到。题目假设每个山头最多有两个能听到它的临近山头。给定任意一个发

    2022年8月9日
    6
  • 怎么安装pycharm及环境变量配置_pycharm配置python环境

    怎么安装pycharm及环境变量配置_pycharm配置python环境pycharm安装以及其环境的配置说明此次我们使用win10系统安装pycharm的64位社区版,并且对Anaconda3中自带的Python3进行环境的配置,如果您没有Anaconda3甚至是没有Python3环境,可以参考Anaconda3安装教程及说明,如果您的pip源未更改,这里推荐您改为使用国内的pip源,这样可以更快的下载组件,方法见修改pip源至国内镜像网站。教程从开始菜单中找到你的AnacondaPrompt并打开…

    2022年8月26日
    7
  • java过滤器Filter「建议收藏」

    java过滤器Filter「建议收藏」一、简介Servlet中的过滤器Filter是实现了javax.servlet.Filter接口的服务器端程序,主要的用途是过滤字符编码、做一些业务逻辑判断如是否有权限访问页面等。其工作原理是,只要你在web.xml文件配置好要拦截的客户端请求,它都会帮你拦截到请求,此时你就可以对请求或响应(Request、Response)统一设置编码,简化操作;同时还可进行逻辑判断,如用户是否已经登陆、…

    2022年6月9日
    34

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号