手眼标定函数(eye -to-hand)
相机跟随机械手移动
- 1、读相机初始内参
- 2、创建标定模型
- 3、设置相机初始参数
- 4、设置描述文件
- 5、设置优化方法
- 6、找标定板
- 7、获得标定板边缘轮廓
- 8、获得标定板mark点
- 9、读取机械手工具坐标系位姿
- 10、设置标定数据
- 11、进行手眼标定
- 12、获取标定结果
- 13、保存相机标定参数
- 14、保存位姿矩阵
- 15、位姿关系反转
- 16、位姿转换
1、读相机初始内参
read_cam_par (DataNameStart + 'start_campar.dat', StartCamParam)
2、创建标定模型
create_calib_data ('hand_eye_stationary_cam', 1, 1, CalibDataID)
3、设置相机初始参数
set_calib_data_cam_param (CalibDataID, 0, [], StartCamParam)
4、设置描述文件
set_calib_data_calib_object (CalibDataID, 0, CalTabFile)
5、设置优化方法
set_calib_data (CalibDataID, 'model', 'general', 'optimization_method', 'nonlinear')
6、找标定板
find_calib_object (Image, CalibDataID, 0, 0, I, [], [])
7、获得标定板边缘轮廓
get_calib_data_observ_contours (Caltab, CalibDataID, 'caltab', 0, 0, I)
8、获得标定板mark点
get_calib_data_observ_points (CalibDataID, 0, 0, I, RCoord, CCoord, Index, CalObjInCamPose)
9、读取机械手工具坐标系位姿
read_pose (DataNameStart + 'robot_pose_' + I$'02d' + '.dat', ToolInBasePose)
10、设置标定数据
set_calib_data (CalibDataID, 'tool', I, 'tool_in_base_pose', ToolInBasePose)
11、进行手眼标定
calibrate_hand_eye (CalibDataID, Errors)
12、获取标定结果
get_calib_data (CalibDataID, 'model', 'general', 'camera_calib_error', CamCalibError)
get_calib_data (CalibDataID, 'camera', 0, 'params', CamParam)
get_calib_data (CalibDataID, 'camera', 0, 'base_in_cam_pose', BaseInCamPose)
get_calib_data (CalibDataID, 'calib_obj', 0, 'obj_in_tool_pose', ObjInToolPose)
13、保存相机标定参数
write_cam_par (CamParam, DataNameStart + 'final_campar.dat')
14、保存位姿矩阵
write_pose (BaseInCamPose, DataNameStart + 'final_pose_cam_base.dat')
write_pose (ObjInToolPose, DataNameStart + 'final_pose_tool_calplate.dat')
15、位姿关系反转
pose_invert (BaseInCamPose, CamInBasePose)
16、位姿转换
pose_compose (CamInBasePose, ObjInCamPose, ObjInBasePose)
手眼标定函数(eye -to-hand)相关推荐
- 机器人抓取(五)—— 手眼标定 hand eye calibration
1. 原理篇 参考:机器人手眼标定的基础理论分析 3D视觉之手眼标定 胡春旭:"手眼"结合完成物体抓取应用 在实际应用中,我们通常需要将相机观察到的外界环境中物体的姿态从相机坐标系 ...
- Ubuntu18.04 + kinova joca2机械臂 + RealSense D435i深度相机进行eye to hand手眼标定
文章目录 前言 一.前期准备 1. RealSense D435i安装 2. Kinova-ROS安装 二.手眼标定环境配置 1. visip 2. aruco_ros 3. easy_handeye ...
- 物体位姿估计精度验证实验(涉及位姿估计,手眼标定,机械臂运动)
物体位姿估计精度验证实验(涉及位姿估计,手眼标定,机械臂运动) 1.位姿估计 2.手眼标定 Opencv 手眼标定函数calibrateHandEye() (1)Eye in Hand (1)Eye ...
- 机械臂手眼标定C++ opencv(眼在手上)
目录 一.介绍 二.准备 三.源码介绍 四.源码运行 1.修改对应的源码 2.运行代码 五.运行结果 1. 拍的图片 2.标定结果 一.介绍 手眼标定是指求解出工业机器人的末端法兰坐标系与相机坐标系之 ...
- 手眼标定(眼在手外,眼在手上代码)
分享一种可以快速求解眼在手上跟眼在手外的C++代码,直接就可以计算出手眼矩阵的. 眼在手外(C++) #include <iostream> #include <string> ...
- python 手眼标定OpenCV手眼标定(calibrateHandeye())二
这一章我们来根据上一章的分析,为手眼标定函数calibrateHandEye 准备他那些麻烦的参数 更详细的参数参考链接 R,T=cv2.calibrateHandEye(R_all_end_to_b ...
- scare机器人如何手眼标定_标定系列一 | 机器人手眼标定的基础理论分析
旷视MegMaster机器人系列是旷视自主研发的一系列AI智能机器人硬件设备,基于旷视全球领先的人工智能算法及机器人技术,可实现搬运.分拣.托举.存储等功能,被广泛应用于物流仓储.工厂制造等场景.旷视 ...
- 【机器人手眼标定AX=XB(eye to hand和eye in hand)及平面九点法标定】
一.背景 Calibration是机器人开发者永远的痛.虽然说方法说起来几十年前就有,但每一个要用摄像头的人都还是要经过一番痛苦的踩坑,没有轻轻松松拿来就效果好的包.其实人类不就是个手眼协调的先进&q ...
- 经典手眼标定算法之Navy的OpenCV实现
经典手眼标定算法之Navy的OpenCV实现 在我的上一篇博客中已经介绍了Tsai的手眼标定算法,下面主要介绍Frank C. Park and Bryan J. Martin在文献Robot sen ...
最新文章
- Spark基础知识解答
- FATCAT桌面计算器即将出炉!
- -ms-,-moz-,-webkit-,-o-含义及各浏览器内核整理
- 2017年含金量最高的机器学习技能或知识有哪些? 翻译 2017年10月20日 14:22:44 标签: 机器学习 / quora 7504 原文:As of 2017, what set of
- 数学建模题目及论文_数学与运用数学专业论文题目帮助
- Minimum Array
- python线性回归分析看相关性_机器学习入门-相关分析之简单线性回归
- 机器学习必备宝典-《统计学习方法》的python代码实现、电子书及课件
- android 获取当前时间_js如何获取当前时间并显示
- linux多线程冗余,Linux 下的路径冗余
- Mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围
- ctp系统配套服务器,CTP系统
- php memcache技术,Memcache操作类如何在PHP中使用
- 特斯拉两高管被爆离职,股价狂跌超过10%,马斯克宣布高层大换血
- Fade out transition effect using CSS3
- arraylist java 排序_java的arraylist排序示例(arraylist用法)
- java面试——多线程与并发
- 通过Visio软件的宏编写Java代码
- QCalendarWidget 日历控件
- matConvNet学习-使用GPU
热门文章
- 实验室信息系统的主要功能及作用
- android studio 驼峰,android studio 高级设置--驼峰选择,命名前缀,快速导包,Log 颜色等等-Go语言中文社区...
- FastCopy包含和排除文件夹处理
- php基础教程读后感,读后感 · PHP开发笔记解决方案 · 看云
- RK3399的Ubuntu计算机安装使用
- PDF解除密码怎么操作?教你一键解除密码
- matlab二维单方向平移螺旋线轨迹
- 用Open Flipper对三角形mesh进行remesh
- jquery 的mmgrid 加载数据时的传参数的方式
- TC COM插件接入百宝云注册码系统示例