手眼标定工具操作文档

1.手眼标定原理介绍

术语介绍

手眼标定:为了获取相机与机器人坐标系之间得位姿转换关系,需要对相机和机器人坐标系进行标定,该标定过程成为手眼标定,用于存储这一组转换关系的文件称为手眼标定文件。

ETH:即Eye To Hand(相机固定架设),指相机(Eye)独立于机器人(Hand),固定在支架上的安装方式。

EIH:即Eye In Hand(相机安装在机械手上),相机(Eye)固定于机器人(Hand)末端上的安装方式。

基坐标系:以机器人安装基座为基准的坐标系,即世界坐标系、法兰坐标系。

手动标定:用户通过示教器或其他PLC等方式移动机器人,到达指定位姿停稳后,通过手动录入或TCP数据通信的方式触发拍照、记录位姿。

自动标定:以软件端主控机器人,按预定规则生成标定路径,并自动移动机器人沿路径采集图像及位姿。根据脚本能力丰富度差异,提供全托管和单任务两种移动控制方式可选。

相机内参:相机内部的基本参数,包括镜头焦距、畸变参数。

相机外参:同一个相机内部多个Sensor的相对位置关系。

1.1 原理简介

目的:获取机器人坐标系与相机坐标系之间的转换关系,将视觉系统下的物体位姿转换成机器人坐标下的位姿。

两种安装方式:

相机安装在机器人以外的固定支架上,标定得到相机到机器人基座坐标系的转换关系。

相机安装在机器人法兰末端(不能是中间某一个关节)跟随机器人运动,标定得到相机到机器人法兰坐标系的转换关系。 

2 标定前期准备

2.1 安装要求

2.2 欧拉角类型汇总

2.3 环境架设

3 手眼标定流程介绍

什么情况下需要进行手眼标定?

当完成视觉系统搭建后,需要进行手眼标定。

当出现以下情况时也需要重新进行手眼标定:

*相机相对于机器人基座(相机Eye to Hand 安装方式)或者法兰(相机Eye in Hand 安装方式)发生位置变化;

*更换相机

*更换机器人

3.1 标定工具配置

3.1.1 新建配置文件

3.1.2 选择安装方式

3.1.3 连接相机

3.1.4 连接机器人

3.1.5 确认标定规格

3.2 相机参数检查

3.2.1 成像质量检查

3.2.2 相机内参检查

3.3 添加标定图像及位姿

3.3.1 标定采图操作方式

3.3.2 补充功能介绍——多位姿标定(即多标定板标定)步骤(仅EIH模式下)

3.3.2 补充功能介绍——零位偏移检测

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/492974.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AlipayHK支付宝HK接入-商户收款(PHP)

一打开支付宝国际版 二、点开商户服务 三、下载源码

基于Arduino的平衡车机械臂

两轮驱动机器人车与机械臂的DIY指南 视频: 基于Arduino的平衡车机械臂 资料下载链接 引言 在这篇文章中,我们将一起探索如何构建一个两轮驱动的机器人车,并配备有一个机器人臂,这个项目适合初学者,并且可以在动态环…

【练习Day20】字符串变形

链接:字符串变形_牛客题霸_牛客网 方法一:双逆转(推荐使用) 思路: 将单词位置的反转,那肯定前后都是逆序,不如我们先将整个字符串反转,这样是不是单词的位置也就随之反转了。但是单…

ip地址和网络号关系是什么

在浩瀚的网络世界中,每一个连接互联网的设备都需要一个独特的标识来确保数据的准确传输。这个标识就是IP地址。然而,在深入探索IP地址的同时,我们不得不提及一个与之紧密相关的概念——网络号。网络号与IP地址之间存在着怎样的联系与区别&…

android 登录界面编写

1、登录页面实现内容 1.实现使用两个EditText输入框输入用户名和密码。 2.使用CheckBox控件记住密码功能。 3.登录时候,验证用户名和密码是否为空。 4.当前CheckBox控件记住密码勾上时,使用SharedPreferences存储用户名和密码。 5.登录时候使用Prog…

run postinstall error, please remove node_modules before retry!

下载 node_modules 报错:run postinstall error, please remove node_modules before retry! 原因:node 版本出现错误,我的项目之前是在 12 下运行的。解决方法: 先卸载node_modules清除缓存将node版本切换到12重新下载即可

Docker 安装 禅道-21.2版本-外部数据库模式

Docker 安装系列 1、拉取最新版本(zentao 21.2) [rootTseng ~]# docker pull hub.zentao.net/app/zentao Using default tag: latest latest: Pulling from app/zentao 55ab1b300d4b: Pull complete 6b5749e5ef1d: Pull complete bdccb03403c1: Pul…

visual studio 2022 c++使用教程

介绍 c开发windows一般都是visual studio,linux一般是vscode,但vscode调试c不方便,所以很多情况都是2套代码,在windows上用vs开发方便,在转到linux。 安装 1、官网下载vs2022企业版–选择桌面开发–安装位置–安装–…

python学opencv|读取图像(十七)认识alpha通道

【1】引言 前序学习进程中,我们已经掌握了RGB和HSV图像的通道拆分和合并,获得了很多意想不到的效果,相关链接包括且不限于: python学opencv|读取图像(十二)BGR图像转HSV图像-CSDN博客 python学opencv|读…

设计模式--单例模式【创建型模式】

设计模式的分类 我们都知道有 23 种设计模式,这 23 种设计模式可分为如下三类: 创建型模式(5 种):单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式。结构型模式(7 种)&#xff1…

neo4j 图表数据导入到 TuGraph

neo4j 图表数据导入到 TuGraph 代码文件说明后文 前言:近期在引入阿里的 TuGraph 图数据库,需要将 原 neo4j 数据导入到新的 tugraph 数据库中。预期走csv文件导入导出,但因为格式和数据库设计问题,操作起来比较麻烦(可能是个人没…

模具生产过程中的标签使用流程图

①NFC芯片嵌入周转筐,通过读卡器读取CK_Label_v3的数据,并将这些信息上传至服务器进行存储; ②服务器随后与客户的WMS(仓库管理系统)进行交互,记录和同步注塑机的原始数据; ③当周转筐内的模具…

Linux线程同步

1 线程同步概念 假设有有三个线程A,B,C,当前一个线程A对内存中的共享资源进行访问时,其它线程B,C都不可以对这块内存进行操作,直到线程A对这块内存访问完毕为止,B,C中的一个才能访问这块内存,剩…

Vue与React:前端框架的巅峰对决

文章目录 一、引言(一)前端框架发展现状简述 二、Vue 与 React 框架概述(一)Vue.js 简介(二)React.js 简介 三、开发效率对比(一)Vue 开发效率分析(二)React …

项目管理工具Maven(一)

Maven的概念 什么是Maven 翻译为“专家”,“内行”Maven是跨平台的项目管理工具。主要服务于基于Java平台的项目构建,依赖管理和项目信息管理。什么是理想的项目构建? 高度自动化,跨平台,可重用的组件,标准…

【Prometheus 】【实战篇(五)】深入解析 Prometheus 监控指标类型:Counter、Gauge、Histogram 和 Summary

Prometheus 提供了四种核心的指标类型,分别是 Counter(计数器)、Gauge(仪表)、Histogram(直方图)和 Summary(摘要)。这些指标类型在客户端库中有具体的使用说明&#xff…

outlook smtp 发送邮件

前提条件 开通 app password 开通 smtp 服务 import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMETextdef send_html_email_smtp(sender_email, sender_password, recipient_email, subject, html_content):# Create the messag…

如何利用Python爬虫获得Lazada商品评论列表

在电商领域,用户评论是了解商品口碑和市场反馈的重要渠道。对于Lazada这样的东南亚电商平台,获取商品评论列表对于市场分析、产品改进和销售策略的制定至关重要。本文将详细介绍如何使用Python编写爬虫程序,以获取Lazada商品的评论列表。 一、…

穷举vs暴搜vs深搜vs回溯vs剪枝系列一>找出所有子集的异或总和再求和

题目&#xff1a; 解析&#xff1a; 代码&#xff1a; private int ret;//返回周结果private int path;//枚举一个元素就异或进去public int subsetXORSum(int[] nums) {dfs(nums, 0);return ret;} private void dfs(int[] nums, int pos){ret path;for(int i pos; i <…

如何设计一个秒杀系统

开局一张图 结局要说清 对于设计一个秒杀系统&#xff0c;结合图片分层结构&#xff0c;根据每一层从访问层&#xff0c;负载层&#xff0c;服务层&#xff0c;业务层&#xff0c;支撑层&#xff0c;数据层&#xff0c;详细说明每一层应该怎么设计。 应该注意那些事项。比如访…