Halcon应用:九点标定-手眼标定

提示:若没有查找的算子,可以评论区留言,会尽快更新

Halcon应用:九点标定-手眼标定

前言

本篇博文主要用于记录学习Halcon中算子的应用场景,及其使用代码和图像展示。只讲通俗易懂使用方法,不讲原理,不讲原理,不讲原理,重要的事情说三遍。

九点标定-手眼标定:想象一下,人眼睛看到一个东西的时候要让手去抓取,就会控制手到物体旁边,可是眼睛看到的位置和手的位置所处的不一样,这就需要知道眼镜和手的坐标关系。如果把大脑比作中间人,把眼睛比作A,把手比作C,如果A和中间人的关系知道,中间人和C的关系知道,那么C和A的关系就知道了,也就是手和眼的坐标关系也就清晰了。


提示:以下是本篇文章正文内容,下面案例可供参考,注意参数坐标的使用,能帮助你理解算子

一、Halcon应用?

Halcon 是一个强大的图像处理工具,该工具是为了解决机器视觉项目任务而创建的。

二、应用实战

1、图形理解eye-to-hand:

眼在手外:站在相机角度看到的三角形物体,与站在机械臂角度看到的物体可能会有所差异,比如:

复制代码
									视角差异图

大家看到这个脑海中是否会出现之前的一个应用:仿射变换,没错,就是用到仿射变换,将相机视角的图变化到机械臂视角,经过平移和放缩,旋转。

1.1、开始应用

我们可以采用九点标定板进行标定,在相机视角下,通过halcon将每一个点的图像坐标获取到,采用一一对应的方式,获得对应机械臂坐标下的各个点的机械坐标,这样就分别获得两组坐标,分别是相机视角下的坐标Qx, Qy,一个是机械视角下的坐标Rx, Ry。

c 复制代码
*假定已经获得图像坐标下的九点位置
column_img := [50,150,200,50,150,200,50,150,200]
row_img := [20,20,20,70,70,70,120,120,120]
*分别获得机械坐标下的九个点位置
column_robot :=[275,225,170,280,230,180,295,240,190]
row_robot := [55,50,45,5,0,-5,-50,-50,-50]

*利用该算子构建变换矩阵
vector_to_hom_mat2d (row_img, column_img, row_robot, column_robot, HomMat2D)
* 获得需要知道的图像坐标下的某点(Qx, Qy)的机械坐标(Rx, Ry)
affine_trans_point_2d (HomMat2D, Qx, Qy, Rx, Ry)
* 标定完成

2 图形理解eye-in-hand

眼在手中:相机固定在机械手上面,这种情况的标定过程实际上和相机和机械手分离的标定方法是一样的,随着机械臂带着相机移动,相机视野中的三角形区域会发生变化,某些情况下只能三角形的一个角区域。

相关推荐
AI的探索之旅3 天前
97 个 OpenCV 实例(三十):双目立体,从标定到点云
人工智能·opencv·计算机视觉
美狐美颜SDK开放平台3 天前
开发直播APP时如何接入视频美颜SDK?开发流程与注意事项
android·人工智能·计算机视觉·音视频·直播美颜sdk
词却3 天前
OpenCV学习:CNN 人脸检测
opencv
拉你进_教堂3 天前
小龙虾技能之【Parkinson‘s & Epileptic Behavior Recognition Skill | 帕金森癫痫行为识别技能】简介
人工智能·计算机视觉·多模态大模型·openclaw小龙虾技能
PascalXie3 天前
人形机器人的“眼睛“:多目视觉方案怎么选?
计算机视觉·机器人
普密斯科技3 天前
替代传统影像仪,摄像头磨切片测量新方案实测
计算机视觉·集成测试·测量
yyk333243 天前
OpenCV中的疲劳检测
opencv
宿州派大星3 天前
【Python实战】:基于 OpenCV + dlib 的传统换脸术原理与实战
opencv·python3.11·dlib
陈年老古董3 天前
MediaPipe 姿态检测与脸部关键点检测
笔记·python·opencv·学习·dlib
YOLO数据集集合3 天前
天空红外小目标检测数据集 | 红外小目标 天空目标检测 无人机检测 鸟类识别 低空安防9099期
人工智能·目标检测·计算机视觉·目标跟踪·无人机·无人机视角·直升机检测