相机姿态估计(七)--UPnP
论文:Exhaustive Linearization for Robust Camera Pose and Focal Length Estimation
整体来看,UPnP跟EPnP差不多,只是同时估计了焦距,因此,适合未标定场合,Uncalibrated PnP.
问题定义:
p世界坐标系点参考点,C控制点,R,t姿态矩阵,u是p对应的2D投射点。建模为最小化P点的投影误差。
其中u表示为:
k是尺度因子。
跟EPnP类似,增加控制点约束:
注意,这里如上图所示,c是在世界坐标系下。同样,相机坐标系下,c的上标变为c。
3式带入2式,展开得:
到这里,跟EPnP的差别在于焦距, 本质 是一样的,也得到线性方程组:
M也是2n*12的矩阵,得到x:
上面的方程中,四个控制点总共12个未知变量,M为2n×12的矩阵。因此,x属于M的右零空间,vi为矩阵M的右奇异向量,可以通过求解MTM 的零空间特征值得到。
[说明]使用MTM比使用M计算量更少,因为MTM是求解是常数复杂度,而M是O(n3)的复杂度,但是计算MTM的复杂度是O(n)的。
上面求解的x中,需要确定βk,也就是确定合适的线性组合。根据参考点的位置不同,矩阵MTM的零空间维数可能为N=1→4维。求解β的策略是控制点在坐标系Fw和Fc中,两两之间的距离是相同,而x的3k+1−3k分量表示分别表示不同的控制点在相机坐标系中的坐标,总共有C24=6个约束。
同样,也是分类讨论。
N=1,线性化,此时只要求解β1和f,假定β11=β1^2,βff11=f^2β^2,根据控制点距离约束:
可以得到6个如下形式的方程:
其中b=[β11,βff11]T .
计算得到:
当N=2时,穷举线性化,我们需要求β1,β2,f. 则类似N=1的情况,此时b变为:
与N=1类似,只是在相同的相机内外参数约束下,不断穷举,例如:
当N=3时:穷举再线性化。
再线性化技术如下:
以定义线性系统开始:
其中,
具体算法伪代码如下:
后面,为了提高精度,增加迭代优化:
完整的对比结果:
不共面:
上图可以看出,在点数超过20时,其实UPnP与EPnP没有太大差距,但是,UPnP更适合大焦距图像的姿态估计。当f>4000时,差距就出现了,但一般常见的f在500~2000之间,也就是近似估计为480i~1080p范围。在这种情况下,EPnP与UPnP性能差不多。
共面:
共面情况下,结论也类似,2者差距不大。
顺便提一下时间:
作者在实测一个任务时,得到的结果如下:
另外:
其中颜色标注对应上面不共面情况下的算法类别。
可以看到,UPnP在时间上跟EPnP比,是没有优势的。
相机姿态估计(七)--UPnP相关推荐
- 基于单目视觉的平面目标定位和坐标测量 (下) - 相机姿态估计和目标测量
上回说到,我们回顾了机器视觉的基础知识,然后一顿操作之后得到了相机内参A和畸变系数dist. 现在我们开始定位目标的坐标. 这个过程包括几个子部分: 1. 标记检测 2. 指定世界坐标系, ...
- P3P相机姿态估计数学推导,求解及自定义实现
P3P相机姿态估计数学推导,求解及自定义实现 微信公众号:幼儿园的学霸 目录 文章目录 P3P相机姿态估计数学推导,求解及自定义实现 目录 前言 相机到空间点距离求解 角度θ的计算 相机坐标系下的坐标 ...
- 人体姿态估计 | 七篇你必须仔细阅读的论文
本文列举了如下七篇在人体姿态估计领域很有代表性的文章. 典型的single-stage网络: 2017 coco关键点冠军[CPN,1711.07319.pdf]. 2018CVPR alphapos ...
- 基于直线的最小非线性SLAM相机姿态估计方法
Minimal Non-linear Camera Pose Estimation Method Using Lines for SLAM Applications 1. 介绍 2. 非线性优化方法 ...
- 相机姿态估计(五)--DLS
论文:A Direct Least-Squares (DLS) Method for PnP 求解过程看着挺吃力的,看懂的还请多多指正. 本文针对PnP问题,采用非线性最小二乘直接计算,主要贡献如下: ...
- 相机姿态估计(四)--AP3P
AP3P 论文:An Efficient Algebraic Solution to the Perspective-Three-Point Problem 从数学的角度,提出了经典P3P算法的更快, ...
- 相机姿态估计(六)--EPnP
EnP算法,论文:EPnP: Efficient Perspective-n-Point Camera Pose Estimation 直接给过程: 相机坐标系用Fc,世界坐标系用Fw表示,任何一点可 ...
- 相机姿态估计(三)--P3P
P3P 论文:Complete Solution Classification for the Perspective-Three-Point Problem 我们首先需要知道的是P3P并不是直接根据 ...
- 点线联合优化估计相机姿态(IROS 2022)
点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨一杯红茶 编辑丨计算机视觉工坊 点击进入->3D视觉工坊学习交流群 标题:Pose Ref ...
最新文章
- 修改值类型的实例方法 mutating
- 设计模式复习-状态模式
- 使用 IIS Manager 对 Windows Azure 网站进行远程管理
- 数智化转型人才“大考”,综合人才成为企业“基础设施”
- WebRTC手记之初探
- SQL Server--用户自定义函数
- python获取软件窗口句柄_Python获取浏览器窗口句柄过程解析
- 「理解HTTP」之常见的状态码
- 非官方构建的 Windows 下的 Atom 编辑器
- Python Imaging Library: ImageGrab Module(图像采集模块)
- centos rpm安装mysql5.6_CentOS 7下使用RPM安装MySQL 5.6
- Qt拖拽实现绘制流程图
- stm32上云实战篇
- Android 9 (P)在user模式下无法使用fastboot烧录怎么破
- win10任务栏假死状态 无法操作
- Nexys2七段LED显示操作
- 华为交换机如何清除console口密码
- 01.04_计算机基础知识(键盘功能键和快捷键)
- HTTP/HTTPS与流量劫持/DNS劫持
- 关于 VScode 中使用 python 相对路径找不到的问题(解决)
热门文章
- Android.mk的一些FAQ
- Clojure 学习入门(1) - 学习资料
- RabbitMq之简单队列
- SpringBoot之项目实践一
- Gb28181-2016 相关标准文档参考
- springmvc05 传值
- mysql中的substring()截取字符函数
- 上岸后如何选择一个好的导师
- c语言中用递归求平方根,下列给定程序中,函数fun()的功能是:应用递归算法求某数a的平方根。求平方根的迭代公式如下: 例如 - 赏学吧...
- opencv双线程图片处理_打开正经图片,你可能会看到一张黄图,这种造假方法能同时骗过 AI 和人眼...