简 介:

关键词Apriltag生成

#mermaid-svg-gQ51lWibsz1erNha {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-gQ51lWibsz1erNha .error-icon{fill:#552222;}#mermaid-svg-gQ51lWibsz1erNha .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-gQ51lWibsz1erNha .edge-thickness-normal{stroke-width:2px;}#mermaid-svg-gQ51lWibsz1erNha .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-gQ51lWibsz1erNha .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-gQ51lWibsz1erNha .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-gQ51lWibsz1erNha .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-gQ51lWibsz1erNha .marker{fill:#333333;stroke:#333333;}#mermaid-svg-gQ51lWibsz1erNha .marker.cross{stroke:#333333;}#mermaid-svg-gQ51lWibsz1erNha svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-gQ51lWibsz1erNha .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-gQ51lWibsz1erNha .cluster-label text{fill:#333;}#mermaid-svg-gQ51lWibsz1erNha .cluster-label span{color:#333;}#mermaid-svg-gQ51lWibsz1erNha .label text,#mermaid-svg-gQ51lWibsz1erNha span{fill:#333;color:#333;}#mermaid-svg-gQ51lWibsz1erNha .node rect,#mermaid-svg-gQ51lWibsz1erNha .node circle,#mermaid-svg-gQ51lWibsz1erNha .node ellipse,#mermaid-svg-gQ51lWibsz1erNha .node polygon,#mermaid-svg-gQ51lWibsz1erNha .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-gQ51lWibsz1erNha .node .label{text-align:center;}#mermaid-svg-gQ51lWibsz1erNha .node.clickable{cursor:pointer;}#mermaid-svg-gQ51lWibsz1erNha .arrowheadPath{fill:#333333;}#mermaid-svg-gQ51lWibsz1erNha .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-gQ51lWibsz1erNha .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-gQ51lWibsz1erNha .edgeLabel{background-color:#e8e8e8;text-align:center;}#mermaid-svg-gQ51lWibsz1erNha .edgeLabel rect{opacity:0.5;background-color:#e8e8e8;fill:#e8e8e8;}#mermaid-svg-gQ51lWibsz1erNha .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-gQ51lWibsz1erNha .cluster text{fill:#333;}#mermaid-svg-gQ51lWibsz1erNha .cluster span{color:#333;}#mermaid-svg-gQ51lWibsz1erNha div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-gQ51lWibsz1erNha :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}

Apriltag简介
目 录
Contents
Apriltag图像生成
通过OpenMV生成
官网下载
网页图片
程序生成

§01 Apriltag简介


  AprilTag 是一个视觉基准系统,可用于多种任务,包括增强现实,机器人和相机校准。通过特定的标志(与二维码相似,但是降低了复杂度以满足实时性要求),可以快速地检测标志,并计算相对位置。它可以从普通打印机创建目标,AprilTag检测软件可以计算标签相对于相机的精确3D位置,方向和身份。AprilTag库在C中实现,没有任何外部依赖关系。它被设计为易于包含在其他应用程序中,并且可移植到嵌入式设备中。即使在手机级处理器上也可以实现实时性能。

  • 官网:https://april.eecs.umich.edu/software/apriltag.html
  • git仓库地址:https://github.com/AprilRobotics/apriltag

▲ 图1.1 不同系列的Apriltag码

  在 AprilTag with Python 中的最后一段 “Limitations and Frustrations”给出了生成Apriltag码的几种方法:

  • All possible AprilTags across all AprilTag families can be downloaded from the official AprilRobotics repo .
  • Additionally, the AprilTags repo contains Java source code that you can use to generate your own tags .
  • And if you really want to dive down the rabbit hole, the TagSLAM library contains a special Python script that can be used to generate tags — you can read more about this script here .

§02 Apriltag图像生成


2.1 通过OpenMV生成

  下载openmv软件

  • 中国官网地址:http://openmv.cc (点击 软件下载)
  • 美国官网下载地址:https://openmv.io/pages/download

  安装后打开,依次按照图示进行,选择相应文件夹生成即可

▲ 图2.1.1 利用OpenMV生成不同序列的Apriltag码
▲ 图2.1.2 对应的不同家族的Apriltag码

2.2 官网下载

  实际上,在网络上所有的Apriltag的图片已经被生成存储,可以直接下使用:

  • mirrors / AprilRobotics / apriltag-imgs

  请注意,所有序列的Apriiltag图片个数非常多,所以下载使用在解压缩的时候花费很多的时间和磁盘存储空间。

2.3 网页图片

  如果只是使用少量的Apriltag做实验,可以直接在一些网页上提取,鼠标右键存储。

  • TAG25H9
  • TAG36H11
  • TAG16H5

▲ 图2.3.1 带有Apriltag图片的网页

2.4 程序生成

  在 C. Making and Using AprilTags 给出了产生不同系列的Apriltag的方法。

▲ 图2.4.1 通过程序生成Apriltag

sudo apt install python-pyx
rosrun tagslam make_tag.py --nx 1 --ny 1 --marginx 0.00 --marginy 0.00 --tsize 0.16 --tspace 0.0 --startid 4 --tfam t36h11 --borderbits 1

■ 相关文献链接:

  • AprilTag
  • AprilTag with Python
  • official AprilRobotics repo
  • AprilTags repo contains Java source code that you can use to generate your own tags
  • TagSLAM library
  • here
  • mirrors / AprilRobotics / apriltag-imgs · GIT CODE
  • APRILTAG 标准图片:TAG25H9
  • Apriltag : 用于视觉系统标定图标tag36H11
  • Apriltag可用图片:TAG16H5
  • C. Making and Using AprilTags

● 相关图表链接:

  • 图1.1 不同系列的Apriltag码
  • 图2.1.1 利用OpenMV生成不同序列的Apriltag码
  • 图2.1.2 对应的不同家族的Apriltag码
  • 图2.3.1 带有Apriltag图片的网页
  • 图2.4.1 通过程序生成Apriltag

如何快速生成不同系列的Apriltag码?相关推荐

  1. android端快速生成二维码和进行二维码扫描

    最近由于公司需求,需要生成自己的二维码,并且进行二维码扫描,对内容进行快速识别.找了很多关于二维码生成的例子看了一下,讲的都很详细.但是二维码的生成和识别都是底层代码实现,对于我们移动开发者来说为什么 ...

  2. 个人用户永久免费,可自动升级版Excel插件,使用VSTO开发,Excel催化剂功能第12波-快速生成、读取、导出条形码二维码...

    根据指定的内容生成对应的条形码或二维码,在如今移动互联网时代,并不是一件什么新鲜事,随便百度一下,都能找到好多的软件或在线网站可以帮我们做到,但细想一下,如果很偶然地只是生成一个两这样的图形,百度一下 ...

  3. 码匠 × OpenAI :快速生成 SQL 语句,提升开发效率!

    目录 使用 OpenAI 生成 SQL 码匠连接与集成 OpenAI 总结 关于码匠 在码匠中,编写 SQL 语句,并结合码匠一系列开箱即用的组件实现复杂的业务逻辑,是很常见的应用开发场景.然而,不同 ...

  4. OpenMV生成AprilTag码

    OpenMV生成AprilTag码 打开OpenMV,直接按照图片点击 选择想要生成的数量 选择生成的地址 这就是标准AprilTag码

  5. 二维码图片如何快速生成

    1.今天跟大家介绍一下怎么快速生成二维码图片,首先我们打开Excel,新建工作簿. ​ 2.然后在任意一单元格录入二维码内容,比如本文这里录入二维码图片如何快速生成. 3.接着我们点击图片工具(Exc ...

  6. 2021年新微信小程序开发系统源码易客多小程序saas系统扫码点餐小程序支付宝小程序快速生成系统源码源代码

    2021年新微信小程序开发系统源码小程序saas系统扫码点餐小程序支付宝小程序快速生成系统 产品介绍:易客多多合一小程序快速生成系统是厦门四六开科技有限公司开发的快速开发微信百度支付宝小程序生成系统, ...

  7. 利用Python QRCode模块快速生成二维码

    利用Python QRCode模块快速生成二维码 安装qrcode相关模块: pip install qrcode pip install Image 生成二维码的Python实现: import q ...

  8. 小程序带参数二维码快速生成

    在小程序还没发布之前,我们公司就我在研究小程序.我们的小程序也算是很早一批审核通过的小程序吧. 后来在发布之后官方开发了生成带参数二维码的接口.当然一个小程序需要做适当的渠道分发统计. 然后我又非常开 ...

  9. 在web页面上快速生成二维码的三种实用方法

    转载自:在web页面上快速生成二维码的三种实用方法 二维码是桌面和移动端快速分享的高效手段之一,这里介绍两个不错的快速开发二维码的方法,和大家分享一下~~ 方法1:使用极客标签提供的二维码快速生成服务 ...

最新文章

  1. NAT技术和代理服务器
  2. php循环不出数据,在thinkphp模板中循环数组没有循环出所需要的数据
  3. C#全局键盘监听(Hook)的使用(转载)
  4. mybatis-spring 项目简介
  5. 为什么Map桶中个数超过8才转为红黑树
  6. boost::stl_interfaces模块实现过滤的整数迭代器的测试程序
  7. Duang,钉钉会议室预定系统已上线!
  8. c++ 使用nacos_Nacos配置的多环境管理
  9. PAT 乙级 1009
  10. import json java_JAVA的JSON数据包装-博客园老牛大讲
  11. flutter GridView 九宫格
  12. 搭建 ELK 问题排查
  13. Tip:在使用AjaxControlTookit的控件时响应事件
  14. 单片机软件开发心得体会
  15. 成功破解:世界杀软“金奖”得主BitDefender 2008(官方中文版 + 注册机下载)
  16. android socket 丢包,socket timeout exception和常见网络丢包情况
  17. 情态动词can与could的用法详解
  18. 本周总结:为图片标签<img>加上 alt属性的好处
  19. vue在移动端出现的问题以及解决方式
  20. 刘润年度演讲2022:进化的力量(演讲全文)

热门文章

  1. 转发:Docker —— 从入门到实践
  2. 第四天 用户管理和服务管理
  3. LAMP之二:LAMP的性能测试以及安装xcache,为php加速
  4. 4.12 《硬啃设计模式》 第29章 行为型设计模式小结
  5. 使用WINAPI获得磁盘空间信息
  6. 金山游戏研发改制新进展:计划本周发出正式公告
  7. 浅谈Android组件化
  8. SPFA算法O(kE)
  9. invalidate
  10. python新手之一环境安装