0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PnP几何结构和算法原理详解

3D视觉工坊 来源:3D视觉工坊 2022-12-22 09:25 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

PnP(Perspective-n-Point)问题的几何结构如图1所示,给定3D点的坐标、对应2D点坐标以及内参矩阵,求解相机的位姿。

数学语言描述如下:

96fe07e6-8184-11ed-8abf-dac502259ad0.png

971505f4-8184-11ed-8abf-dac502259ad0.png

图1.PnP几何结构

1.直接线性变换法(Direct Linear Transform,DLT)

假设:摄像机已经校准过了。 已知:

973d066c-8184-11ed-8abf-dac502259ad0.png

求解相机的外参:R、t 透视投影模型为:

974a0d26-8184-11ed-8abf-dac502259ad0.png

每组3D-2D匹配点对应两个方程,一共有12个未知数,至少需要6组匹配点。 设有N组匹配点,则:

97761d6c-8184-11ed-8abf-dac502259ad0.png

上式写成矩阵形式: AF=0 当N=6时,可以直接求解线性方程组。

978c75b2-8184-11ed-8abf-dac502259ad0.png

因此, 旋转矩阵, 平移矩阵求得:

97a39972-8184-11ed-8abf-dac502259ad0.png

2.P3P

P3P问题是已知三个3D目标点与其2D投影之间的对应关系,来确定标定相机的位姿问题。

97b3aa9c-8184-11ed-8abf-dac502259ad0.png

97d3e15e-8184-11ed-8abf-dac502259ad0.png

图2.两点约束

97e9b40c-8184-11ed-8abf-dac502259ad0.png

97ff1bc6-8184-11ed-8abf-dac502259ad0.png

注:直接线性变换法,只考虑了线性意义下的最优解,没有考虑几何约束。而P3P考虑了三角约束,给出三角约束意义下的最优解

2.1 Zero Structure for the P3P Equation System

文章[1]:Complete Solution Classification for the Perspective-Three-Point Problem

981c18e8-8184-11ed-8abf-dac502259ad0.png

图3.三点约束 对于公式(16)的变量有一些真实的约束:

983d3b54-8184-11ed-8abf-dac502259ad0.png

985a44a6-8184-11ed-8abf-dac502259ad0.png

图4.三点约束--重定义边长 公式(17)消去C、v,得ES:

9872c990-8184-11ed-8abf-dac502259ad0.png

2.2 PST

文章[2]:A Stable Direct Solution of Perspective-Three-Point Problem 使用相似三角形,利用几何约束来减少未知参数的个数,把P3P方程组转化为四次方程,该称为透视相似三角形方法(Perspective Similar Triangle ,PST)。

(1)P3P问题转为PST问题

988dae36-8184-11ed-8abf-dac502259ad0.png

98a74238-8184-11ed-8abf-dac502259ad0.png

图5.P3P几何结构

(2)PST的求解

98d7b7d8-8184-11ed-8abf-dac502259ad0.png

98f1835c-8184-11ed-8abf-dac502259ad0.png

图6.PST几何结构 约束1:相似三角形对应边成比例

9910c0c8-8184-11ed-8abf-dac502259ad0.png

所以:

992b6144-8184-11ed-8abf-dac502259ad0.png

99509c84-8184-11ed-8abf-dac502259ad0.png

996f9b48-8184-11ed-8abf-dac502259ad0.png

9987af9e-8184-11ed-8abf-dac502259ad0.png

(3)PST多解和缺解问题

由PST(perspective similar Triangle)求解,可得方程组等效转换为四次多项式

99b5fdea-8184-11ed-8abf-dac502259ad0.png

多解问题: 由于存在多组解,相机位姿不能从3点集唯一确定的。解的个数直接对应于四次多项式实根的个数。要得到唯一的解,至少还应引入一点,构建2个三角形,进行求解。另一种方法是RANSAC算法,该算法将点集划分为3个点子集,检查这些子集的一致性。 RANSAC算法参考文献:Random Sample Consensus: A Paradigm for Model Fitting with Apphcatlons to Image Analysis and Automated Cartography 缺解问题:

99ce46a2-8184-11ed-8abf-dac502259ad0.png

缺解问题是由P3P的固有结构决定的,其他P3P方法,如迭代解法、几何解法和分类法,也有同样的问题。

99eda6a0-8184-11ed-8abf-dac502259ad0.png

9a0e8af0-8184-11ed-8abf-dac502259ad0.png

3.RPnP

文章[3]:A Robust O(n) Solution to the Perspective-n-Point Problem

9a2136b4-8184-11ed-8abf-dac502259ad0.png

下面来看一下,如何建立新的正交坐标系,以及如何求解正交坐标系到相机坐标系之间[R T]。

3.1确定旋转轴

9a490f72-8184-11ed-8abf-dac502259ad0.png

9a6d1462-8184-11ed-8abf-dac502259ad0.png

当确定旋转轴时,只需求解剩余的旋转和三个平移参数,减少了未知变量的数量,来提高方程组的数值精度。

3.2求解旋转角和平移矢量的方程

相机坐标系与新坐标系绕之间的旋转矩阵:

9a8b3d34-8184-11ed-8abf-dac502259ad0.png

9ab752a2-8184-11ed-8abf-dac502259ad0.png

其中,

9acebf00-8184-11ed-8abf-dac502259ad0.png

3.3获取相机的位姿

9afb3db4-8184-11ed-8abf-dac502259ad0.png

再获取到相机坐标系与新坐标系绕之间的旋转和平移矩阵,进而可直接相机坐标系与世界坐标系绕之间旋转和平移矩阵,即相机的位姿。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相机
    +关注

    关注

    5

    文章

    1605

    浏览量

    56017
  • pnp
    pnp
    +关注

    关注

    11

    文章

    337

    浏览量

    54447

原文标题:一文详解PnP算法原理

文章出处:【微信号:3D视觉工坊,微信公众号:3D视觉工坊】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【产品介绍】Altair SimSolid 无网格快速结构仿真软件

    AltairSimSolidAltairSimSolid是一款专为快速设计流程而开发的结构分析软件。与传统FEA相比,它消除了几何模型简化和网格划分这两个最耗时且专业知识要求较高的任务。它能够在
    的头像 发表于 01-28 14:26 333次阅读
    【产品介绍】Altair SimSolid 无网格快速<b class='flag-5'>结构</b>仿真软件

    FFT算法原理详解

    ]={1,1,1,1,1,1,1,1}; struct complex1{ //定义一个复数结构体 double real; //实部 double image; //虚部 }; //将input的实数结果
    发表于 01-22 06:36

    单片机的算法

    平滑滤波算法 设置一个数据缓存区,每新采集一个数据便存入暂存区中,同时去掉一个最老数据,保存这N个数据始终是最新更新的数据。采用环型队列结构可以方便地实现这种数据存放方式。 #define
    发表于 11-28 08:19

    SGS授予几何伙伴ASPICE V4.0 CL2认证

    近日,国际公认的测试、检验和认证机构SGS(以下简称为“SGS”)为上海几何伙伴智能驾驶有限公司(以下简称“几何伙伴”)颁发Automotive SPICE V4.0 CL2(以下简称ASPICE)认证证书。这一认证标志着几何
    的头像 发表于 11-18 10:01 759次阅读

    SM4算法实现分享(一)算法原理

    SM4分组加密算法采用的是非线性迭代结构,以字为单位进行加密、解密运算,每次迭代称为一轮变换,每轮变换包括S盒变换、非线性变换、线性变换、合成变换。加解密算法与密钥扩展都是采用32轮非线性迭代
    发表于 10-30 08:10

    SM4算法原理及分享1

    SM4算法是一种分组密码算法。其分组长度为128bit,密钥长度也为128bit。加密算法与密钥扩展算法均采用32轮非线性迭代结构,以字(
    发表于 10-30 06:54

    国密系列算法简介及SM4算法原理介绍

    一、 国密系列算法简介 国家商用密码算法(简称国密/商密算法),是由我国国家密码管理局制定并公布的密码算法标准。其分类1所示: 图1 国家商用密码
    发表于 10-24 08:25

    e203乘法运算结构算法原理

    e203乘法部件结构 E203的乘法操作由一个17周期的乘法器实现。为了提升性能,该乘法器采用了基4Booth编码,将乘数分解为17个Booth编码,与被乘数相乘后形成的部分和再在相加,从而实现
    发表于 10-22 06:43

    e203 ALU乘法运算结构算法原理

    e203乘法部件结构 E203的乘法操作由一个17周期的乘法器实现。为了提升性能,该乘法器采用了基4Booth编码,将乘数分解为17个Booth编码,与被乘数相乘后形成的部分和再在相加,从而实现
    发表于 10-22 06:12

    数据滤波算法的具体实现步骤是怎样的?

    (高频电磁、瞬时脉冲等),选择适配的滤波算法并落地。以下以电能质量监测中最常用的 IIR 低通滤波(抗高频干扰)、滑动平均滤波(抗瞬时脉冲)、卡尔曼滤波(抗动态波动) 为例,详解具体实现步骤: 一、前置准备:明确滤波目标与硬件基
    的头像 发表于 10-10 16:45 997次阅读

    多种类几何尺寸集成智能仪器定制 一站式解决产线多维度测量需求

    关键词:几何尺寸测量仪,智能仪器,定制仪器,测宽测厚仪,测宽测长仪,直线度外径测量仪 在现代化生产线上,几何尺寸测量是保障产品精度、控制生产质量的核心环节。传统模式下,企业需为长度、直径、圆度
    发表于 10-09 13:50

    三坐标检测船舶深水惯导系统零部件(四孔行星定位结构几何精度)

    轴线交点位置,各孔之间角度有着很高的检测精度要求。该核心部件采用四孔行星定位结构,其几何精度直接决定陀螺仪测量基准的可靠性。面对多层级空间关系测量,当前检测手段缺
    发表于 08-11 13:37 0次下载

    几何伙伴荣获ISO 26262:2018汽车功能安全ASIL D流程认证

    近日,国际公认的测试、检验和认证机构SGS(以下简称为“SGS”)为上海几何伙伴智能驾驶有限公司(以下简称“几何伙伴”)颁发ISO 26262:2018功能安全ASIL D流程认证证书。此项认证
    的头像 发表于 06-17 14:24 1147次阅读

    如何为电路选型?MDDNPN与PNP三极管的应用区别与选用要点

    在电子电路设计中,三极管是一种应用极其广泛的基础器件。根据结构和极性,MDD三极管主要分为NPN型和PNP型两类。虽然它们的功能本质相同——控制电流放大或开关——但在实际电路中,NPN与PNP三极管
    发表于 06-09 13:56

    如何为电路选型?MDDNPN与PNP三极管的应用区别与选用要点

    在电子电路设计中,三极管是一种应用极其广泛的基础器件。根据结构和极性,MDD三极管主要分为NPN型和PNP型两类。虽然它们的功能本质相同——控制电流放大或开关——但在实际电路中,NPN与PNP三极管
    的头像 发表于 06-03 11:06 1740次阅读
    如何为电路选型?MDDNPN与<b class='flag-5'>PNP</b>三极管的应用区别与选用要点