当前位置: 首页 > news >正文

【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}ab\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 获取数据的三种方式:
  1. 星载;
  2. 机载;
  3. 地面;
3.4.1.2 二维影响三维重建
  • 常见的摄影测量,就是将二维影像通过一系列计算可以获取高精度的三维模型,在这一过程中我们同样可以获取点云数据。
3.4.1.3 三维模型逆向点云
  • 之所以叫逆向点云,就是本来三维模型通过行、列扫描的形式同样可以获取到三维点云数据。

3.5 手眼系统与手眼协调

手眼系统,是手(机械臂)眼(相机) 的关系。

  • 当眼(相机)看到一个物体的时候,需要告诉手(机械臂)物体的位置在哪里,物体在眼(相机)的位置确定了,如果此时有了眼(相机)和手(机械臂)的关系,我们就能得到物体在手(机械臂)的位置了。

手眼协调,是机器人视觉与控制结合的关键技术。
指机器人通过视觉系统(眼)感知外部环境,并指导其机械臂(手)进行相应操作的过程。

  • 通过建立机器人末端执行器与相机之间的空间关系,实现基于视觉的精确操作。
  • 典型应用:视觉引导抓取装配操作视觉检测与质量控制自动化生产线
  • 常用工具和库

3.6 手眼标定

Hand-Eye Calibration,是机器人视觉应用中的一个基础且关键的问题,主要用于统一视觉系统与机器人的坐标系。

  • 具体来说,将机械手和摄像机的坐标系统一起来,解决相机与机械手之间的坐标转换关系,让机械手能精确抓取到相机定位的目标。
  • 手眼标定之后,除非相机和机械臂的相对位置发生变动,则不需要重新标定

3.6.1 形式定义

  • 当我们希望使用视觉引导机器人去抓取物体时,需要知道三个相对位置关系,即
  1. 末端执行器与机器人底座之间相对位置关系
  2. 摄像头与末端执行器之间相对位置关系 ,手眼标定主要解决这个问题;
  3. 物体与摄像头之间的相对位置和方向
  • 手眼标定主要解决其中第二个问题,即确定“手”与安装在其上“眼”之间的空间变换关系,即求解相机坐标系和机器人坐标系之间的变换矩阵

  • 这里的机器人末端执行器称为手,摄像头称为眼。

  • 根据摄像头安装方式的不同,手眼标定分为两种形式:

    1. 摄像头安装在机械手末端,称之为眼在手上(Eye in hand) ;
    2. 摄像头安装在机械臂外的机器人底座上,则称之为眼在手外(Eye to hand);

3.6.2 数学模型

http://www.dtcms.com/a/395685.html

相关文章:

  • 基础算法---【前缀和】
  • YOLO系统——yolov1工作原理
  • 第20讲 机器学习中的分类数据
  • 《前端学习总结:GitLab、状态管理、组件库与 Umi.js》
  • 【论文阅读】理解世界还是预测未来?—— 世界模型全面综述
  • AR眼镜:远程协作与精准操作的未来之眼
  • 【论文阅读】GR-2:用于机器人操作的生成式视频-语言-动作模型
  • maven GAVP 的含义
  • 【Android】录制视频
  • RK3576-Android15_Usb白名单功能实现篇二
  • Spring中使用Apache Http客户端调第三方系统接口临时查看请求体参数
  • Linux系统-debian系的软件包管理
  • PCB工艺中的深微孔
  • 关于Pycharm中在运行出现语法错误:Non-UTF-8 code starting with
  • 构建AI智能体:四十一、大模型思维链提示工程:技术原理与行业应用案例分析
  • 鸿蒙系统中音视频的采集与播放
  • HTTPS 双向认证抓包实战,原理、难点、工具与可操作的排查流程
  • 开源跨平台文件管理工具,告别杂乱无章的数据世界
  • Node.js事件循环机制
  • Linux---文件系统
  • 循环语句效率与规范的原理及示例解析
  • Three.js 开发实战教程(四):相机系统全解析与多视角控制
  • 介绍一下SQLite的基本语法和常用命令
  • 台式电脑如何恢复出厂设置?Win10 强制重置详细教程
  • 李宏毅2023机器学习作业 HW02实操
  • 【C++实战㉜】深入C++动态内存分配:从理论到实战的进阶之路
  • 小鼠抗新冠病毒N蛋白IgG亚型抗体ELISA检测试剂盒
  • 安防监控中常见的报警类型有哪些?国标GB28181平台EasyGBS的报警能力解析
  • C++ 中 size_t 的用(用于跨平台编译)
  • C++ 拷贝构造函数调用时机