week63 PnP位姿估计 基于ArUco Marker来估算camera的位姿

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了week63 PnP位姿估计 基于ArUco Marker来估算camera的位姿相关的知识,希望对你有一定的参考价值。

参考技术A 相机位姿估计是指给定若干图像,估计其中相机运动的问题。求解方法通常分特征点法和直接法两种,这也是视觉里程计的两类基本方法。这里主要讨论特征点法(间接法)中的3D-2D情况。

特征点法的思路,是先从图像当中提取许多特征,然后在图像间进行特征匹配,这样就得到许多匹配好的点,再根据这些点进行相机位姿的求解。相机位姿求解部分则和图像本身关系不大了。比方说下图是ORB特征匹配的结果。

特征匹配之后,我们得到了一组配对点,以及它们的像素坐标。剩下的问题是说,怎么用这组配对点去计算相机的运动。这里,根据传感器形式的不同,分成三种情况:

基于二进制的Maeker的主要便利之处在于一个Marker可以提供足够多的(四个角)来获取相机的信息。同时,其内部的二进制编码非常robust,允许错误检测和校正。
一个ArUco marker是一个二进制平方标记,它由一个宽的黑边和一个内部的二进制矩阵组成,内部的矩阵决定了它们的id。黑色的边界有利于快速检测到图像,二进制编码可以验证id,并且允许错误检测和矫正技术的应用。marker的大小决定了内部矩阵的大小。例如,一个4x4的marker由16bits组成。

应当注意到,我们需要检测到一个Marker在空间中发生了旋转,但是,检测的过程需要确定它的初始角度,所以每个角落需要是明确的,不能有歧义,保证上述这点也是靠二进制编码完成的。
整个ArUco库主要包含了两部分:src包含了库的本身(一些源码),utils里面则是包含了一些应用的实例

整体的思路是我们知道相机的内参K和H矩阵,对相机进行三维世界的位姿估计,也就是我们知道地上marker的三维坐标以及它们在图像平面的uv坐标,想要算出Rot和Trans即相机外参

https://www.zhihu.com/question/51510464
https://blog.csdn.net/gwplovekimi/article/details/115245558

以上是关于week63 PnP位姿估计 基于ArUco Marker来估算camera的位姿的主要内容,如果未能解决你的问题,请参考以下文章

相机位姿估计3:根据两幅图像的位姿估计结果求某点的世界坐标

相机姿态估计--PnP

如何链接两个 ArUco 标记的姿势?

相机位姿求解——P3P问题

3D-2D:PnP

物体的三维识别与6D位姿估计:PPF系列论文介绍