[计算机视觉] 呕心沥血干完AprilTags2原理,全网最完整的AprilTags教程

AprilTag论文理解

AprilTag: A robust and flexible visual fiducial system(2011)
AprilTag 2: Efficient and robust fiducial detection(2016)

AprilTag相关

基于ros的usb相机实现apriltag位姿估计可参考我的这篇博客
方法1:通过openmv生成高清的Apriltag标签
方法2:利用官方文件生成高清Apriltag标签

前言

  • AprilTag是一个视觉基准系统,类似于二维码,但降低了复杂度以满足实时性需求,AprilTag具有很小的数据有效载荷(4到12位编码)。
  • 相对于二维码,AprilTag可以在更远的距离,非常低的分辨率,不均匀照明,奇怪的旋转或藏在另一个杂乱图像的角落时也可以被自动检测和定位。
  • 它们的设计具有很高的定位精度,我们可以计算相机相对于AprilTag的精确6自由度位姿信息。
  • 可以检测单个图中的多个标签。
  • 可用于多种任务,包括增强现实,机器人和相机校准。
  • 开源项目,官网有丰富的学习资料。

实现原理

  • 自适应阈值
    将输入图像(a)灰度化处理为灰度图(b)。采用自适应阈值方法,自适应阈值的主要思想就是在像素领域内寻找一个合理的阈值进行分割,选取灰度均值和中值都是常见的手法。作者先将图像划分为4x4像素的图块,求出每个图块的灰度最大值和最小值,然后对所有图块计算的最大最小灰度值进行一个3邻域最大最小滤波处理,将滤波后的最大最小均值(max+min)/2作为分块区域的阈值,为每个像素分配白色或黑色的值形成二值图。分块的目的主要是增加鲁棒性,区域的特征总比单一像素的更加稳定,减少随机噪声的干扰,同时提升计算效率。

  • 连续边界分割
    对黑白二值化图片,找到可能形成标签边界的边缘(c)。一种简单的方法是识别具有相反颜色邻居的边缘像素,然后形成边缘像素的连接组。但是,当标签边界之间的白色空间仅接近单个像素宽时,这种方法会失败。如果两个标签边界被错误地合并,则将不会检测到标签。需要根据产生的黑色和白色成分的身份对边缘进行分割。使用联合查找算法对亮像素和暗像素的相连成分进行分段,得到每个成分唯一的ID。

  • 拟合四边形
    将这些无序的边界点簇拟合成四边形(d)。四边形拟合步骤输出一组候选四边形进行解码。这其中最难的是找四边形的四个顶点,如果对于规则的正方形或者矩形来说,其实是相对比较好做的。但是存在tag存在变形。首先对无序的轮廓点按照对重心的角度进行排序。有了排序的轮廓点,然后就是按部就班的按照顺序选取距离中心点一定范围内的点进行直线拟合,不断迭代索引,计算每条直线的误差总和;对误差总和进行一个低通滤波,使系统更加鲁棒,然后选取误差总和最大的四条直线对应的角点索引作为四边形角点。然后取角点间的点拟合直线,求得四条直线的角点作为Tag的顶点。四边形检测器可以在环境中正确找到许多四边形结构,包括镜面反射,开关和单个标签像素。解码步骤将四边形的内容与已知代码字进行比较,过滤掉错误的候选四边形,输出有效的标签检测(e)。
    在这里插入图片描述

  • 单应变换
    什么是单应变换看这里
    找到的四边形一般都存在仿射变换,很难找到规则正方形,因此需要将图像投影成完全符合理论上的正方形,此处就涉及到单应变。一是为了解码的需要,二是为了求解姿态。
    在这里插入图片描述
    单应变换就是求解对应点之间的一个坐标变换。对于每一个对应的点对,都应该存在如下关系,理论点坐标等于变换矩阵乘以实际图像点坐标。
    在这里插入图片描述
    求解上述方程得到单应矩阵。

  • 快速解码
    解码标签的一种直接方法是将检测到的代码(在其四个可能的旋转中的每一个中)与标签系列中的每个代码进行异或。 判断是否为正确的标签。编解码方法是Apriltag团队研究出来的,属于特定的方法,我们可以改变的地方不大,因此不做具体解释。通过识别固定类型的码型,可进一步排除其他码型的干扰,得到最终的结果。

  • 精准定位
    阈值图像虽然对分割和四边形检测有用,但可能会将噪声引入阈值图像中。 当标签用于位姿估计时,边缘细化步骤提高了定位精度。通过坐标转换,得到位姿信息。标签位置和方向的计算需要其他信息:相机的焦距和标签的物理尺寸。
    坐标转换是指世界坐标系、相机坐标系、图像坐标系、像素坐标系之间的转换。
    我们需要通过相机标定,确定相机的一些参数的值。
    相机外参:与相机在世界坐标系内的安装角度和位置有关。包括旋转矩阵和平移向量。
    相机内参:与相机自身特性相关的参数。内参矩阵,包括焦距和像素大小等。
    关于相机标定、相机内参、相机外参部分有时间再另开专题仔细讨论。

参考

参考1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值