【Datawhale组队学习202509】AI硬件与机器人大模型 task02 视觉感知与手眼协调
系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- 系列文章目录
- 前言
- 3.1 机器视觉
- 3.1.1 机器视觉的基本组成
- 3.1.1.1 图像采集设备
- 3.1.1.2 图像处理和分析软件
- 3.1.1.3 **算法和计算平台**
- 3.1.1.4 **交互和控制系统**
- 3.1.1.5 **数据库和知识库**
- 3.1.1.6 **网络和通信系统**
- 3.2 图像
- 3.2.1 灰度图像
- 3.2.2 彩色图像
- 3.2.3 图像坐标
- 3.3 相机模型
- 3.3.1 针孔相机模型
- 3.4 点云
- 3.4.1 获取方法
- 3.4.1.1 三维激光扫描
- 3.4.1.2 二维影响三维重建
- 3.4.1.3 三维模型逆向点云
- 3.5 手眼系统与手眼协调
- 3.6 手眼标定
- 3.6.1 形式定义
- 3.6.2 数学模型
前言
提示:这里可以添加本文要记录的大概内容:
- 参考教程:
- 03.视觉感知与手眼标定
- # 机器人学——(六)机器人视觉和处理
- 机器人视觉传感器行业深度
3.1 机器视觉
机器人视觉,是机器人学的一个重要领域,它使机器人能够通过摄像头或其他视觉传感器感知周围环境。
- 由计算机或图像处理器以及相关设备来模拟人的视觉行为,视觉感知到的数据,随后通过图像处理和分析技术转化为机器人能理解的信息。
- 机器视觉技术是一个跨学科的领域,它融合了图像处理、机械工程、光源照明、光学、传感技术、算法开发以及计算机科学等多方面的技术和知识。
3.1.1 机器视觉的基本组成
3.1.1.1 图像采集设备
- 摄像头和相机,是机器人视觉系统的基础,直接影响到视觉系统的性能,包括分辨率、帧率、视场等参数。
- 光源:影响图像的质量。
3.1.1.2 图像处理和分析软件
- 图像预处理:包括图像滤波、去噪、增强等基本的图像处理技术;
- 图像分割:通过图像分割,可以将图像分成不同的区域,以便于识别和分析;
- 特征提取和匹配:从图像中提取特征并进行匹配,是识别和分类的基础;
- 图像识别和分类:通过分析图像,识别出图像中的对象,按照不同的类别进行分类;
3.1.1.3 算法和计算平台
- 图像处理和机器视觉算法:包括传统的图像处理算法、机器学习算法以及深度学习算法;
- 硬件平台:包括CPU、GPU、FPGA等,用于运行图像处理和机器视觉的算法;
3.1.1.4 交互和控制系统
- 实时反馈和控制:机器人视觉系统通常需要与机器人的控制系统紧密结合,实时反馈图像处理结果,以指导机器人的动作。
3.1.1.5 数据库和知识库
- 用于存储和管理图像数据、模型以及算法的知识库和数据库;
3.1.1.6 网络和通信系统
- 用于机器人视觉系统与其他系统或云平台的通信,实现数据的传输和共享。
3.2 图像
图像,是可视化的二维或三维表示,以图形的方式表达了视觉信息。
- 图像可以是静态的,如照片、绘画;也可以是动态的,如视频、电影。
- 通常由像素组成,每个像素都有其特定的位置和灰度值,灰度值用来表示该像素的亮度,数值在
0 ~ 255
之间。 - 一般在计算机视觉任务中,图像分为灰度图和彩色图。
3.2.1 灰度图像
灰度图像为单通道图像。
-
只包含亮度信息,是最简单的数字图像类型之一。
-
在灰度图像中,每个像素都有一个灰度值。
-
灰度图像可以表示为一个二维矩阵,其中每个元素表示相应位置的像素灰度值,每个元素是
0~255
的整数0
- 黑色255
- 白色- 中间的值 - 不同亮度级别的灰色
-
通常用于 简化图像处理任务,如图像分割、边缘检测 和 目标识别。
3.2.2 彩色图像
彩色图像为多通道图像。
-
通常使用
RGB
通道来表示,每个像素具有 red、green、blue 三个通道的颜色值,每个通道的值都在0~255
0
- 该通道的强度最低;255
- 该通道的强度最高;
-
彩色图像表示为一个三维矩阵,其中每个维度对应于一个颜色通道。
-
广泛应用于包括摄影、电视、电影、计算机游戏和计算机视觉,提供了更丰富的视觉信息,但也增加了图像处理的复杂性。
![[Pasted image 20250922141311.png]]
3.2.3 图像坐标
- 像素坐标点原点在图像的左上角,
X轴
向右,Y轴
向下,如果还有Z轴
,根据右手定律,Z轴
向前。
当设定三个相互垂直的向量时,可以有两种不同的选择:右手定律或左手定律。因此,假若遇到这类问题时,必需明确地指出是采用哪一种系统。
假设执行有序运算于两个向量 a\mathbf {a}a、 b\mathbf {b}b的结果是向量 ,其中,垂直于
、
,则可使用弗莱明右手定则或右手开掌定则来决定向量
的方向。最常见的例子是向量叉积
3.3 相机模型
3.3.1 针孔相机模型
3.4 点云
Point Cloud,是某个坐标系下的点的数据集。
-
点云包含了丰富的信息,包括三维坐标 X、Y、Z、颜色、分类值、强度值、时间等等。
-
点云可用于三维重建,广泛应用于测绘、自动驾驶、农业、规划设计、考古与文物保护、医疗等行业。
3.4.1 获取方法
- 主要是通过三维激光扫描仪进行数据采集获取点云数据;
- 其次通过二维影像进行三维重建,在重建过程中获取点云数据;
- 另外还有一些,通过三维模型来计算获取点云。
3.4.1.1 三维激光扫描
- LiDAR,Light Detection And Ranging,激光探测与测量,获取的数据就是点云数据,同时也对点云数据进行处理加工以及应用。
LiDAR
获取数据的三种方式:
- 星载;
- 机载;
- 地面;
3.4.1.2 二维影响三维重建
- 常见的摄影测量,就是将二维影像通过一系列计算可以获取高精度的三维模型,在这一过程中我们同样可以获取点云数据。
3.4.1.3 三维模型逆向点云
- 之所以叫逆向点云,就是本来三维模型通过行、列扫描的形式同样可以获取到三维点云数据。
3.5 手眼系统与手眼协调
手眼系统,是手(机械臂) 和眼(相机) 的关系。
- 当眼(相机)看到一个物体的时候,需要告诉手(机械臂)物体的位置在哪里,物体在眼(相机)的位置确定了,如果此时有了眼(相机)和手(机械臂)的关系,我们就能得到物体在手(机械臂)的位置了。
手眼协调,是机器人视觉与控制结合的关键技术。
指机器人通过视觉系统(眼)感知外部环境,并指导其机械臂(手)进行相应操作的过程。
- 通过建立机器人末端执行器与相机之间的空间关系,实现基于视觉的精确操作。
- 典型应用:视觉引导抓取、装配操作、视觉检测与质量控制、自动化生产线。
- 常用工具和库
3.6 手眼标定
Hand-Eye Calibration,是机器人视觉应用中的一个基础且关键的问题,主要用于统一视觉系统与机器人的坐标系。
- 具体来说,将机械手和摄像机的坐标系统一起来,解决相机与机械手之间的坐标转换关系,让机械手能精确抓取到相机定位的目标。
- 手眼标定之后,除非相机和机械臂的相对位置发生变动,则不需要重新标定。
3.6.1 形式定义
- 当我们希望使用视觉引导机器人去抓取物体时,需要知道三个相对位置关系,即
- 末端执行器与机器人底座之间相对位置关系;
- 摄像头与末端执行器之间相对位置关系 ,手眼标定主要解决这个问题;
- 物体与摄像头之间的相对位置和方向;
-
手眼标定主要解决其中第二个问题,即确定“手”与安装在其上“眼”之间的空间变换关系,即求解相机坐标系和机器人坐标系之间的变换矩阵。
-
这里的机器人末端执行器称为手,摄像头称为眼。
-
根据摄像头安装方式的不同,手眼标定分为两种形式:
- 摄像头安装在机械手末端,称之为眼在手上(Eye in hand) ;
- 摄像头安装在机械臂外的机器人底座上,则称之为眼在手外(Eye to hand);