Git4GenThinking/courses/embodied_ai/M2_industrial_vision_integr.../README.md

8.1 KiB
Raw Permalink Blame History

工业视觉集成与高级应用课程说明

所属课程:《具身智能机器人技术全景与应用》系列

具身智能   工业机器人   机器学习   ROS操作系统   智能体   License

1 课程简介

课程封面

本模块是课程的进阶核心模块,在 M1 感知与决策基础上,聚焦工业视觉集成技术。不同于离身视觉仅"看图识别"具身工业视觉的每一帧图像都直接驱动机器人物理动作——1 像素的感知误差可能放大为 5mm 的抓取偏差甚至碰撞事故。

模块以 "从像素到动作的闭环" 为主线覆盖工业相机选型、OpenCV 图像处理流水线、手眼标定与视觉伺服、缺陷检测与分拣协同、多机器人协同作业、工业通讯配置到无序抓取全流程集成的完整技术栈。

2 课程结构

本模块七讲分为四个单元,按"硬件基础→空间融合→感知协同→系统集成"递进组织。前三讲奠定工业视觉软硬件基础,中两讲深入空间标定与感知应用,后两讲提升系统通讯与全流程实战能力。

2.1 四单元七讲

单元 主题 讲次 核心技能
1 软硬件基础 L1-L2 相机选型、OpenCV 图像处理
2 空间融合与控制 L3 手眼标定、视觉伺服
3 感知与协同应用 L4-L5 缺陷检测、多机器人协同
4 通讯基础设施与项目实践 L6-L7 工业通讯、无序抓取全流程

2.2 每讲内容速览

每讲配有讲义、代码和训练任务指导书,课前阅读讲义理解原理,课后按指导书步骤完成实验并填写数据表。

讲次 标题 核心活动 训练指导
L0 导论:从像素到动作 理解工业视觉闭环与模块安排 环境部署与工具使用
L1 工业相机与镜头选型 运行选型计算器,计算分辨率/焦距 相机选型与参数验证
L2 OpenCV 图像处理流水线 搭建滤波→边缘→轮廓处理管线 图像处理流水线搭建
L3 手眼标定与视觉伺服 求解 AX=XB编写 IBVS 控制器 手眼标定与伺服控制
L4 缺陷检测与分拣协同 YOLO 推理,搭建检测→分拣流水线 缺陷检测与分拣实践
L5 多机器人协同作业 编队控制、RVO 避碰、任务分配 多机器人协同系统搭建
L6 工业机器人通讯配置 配置 DDS 节点,对比 QoS 延迟 工业通讯配置实践
L7 无序抓取全流程实战 运行全流程流水线,定位瓶颈并调优 无序抓取综合项目

2.3 技术栈全景

从底层成像硬件到上层系统集成,技术栈覆盖相机、图像处理、空间标定、检测、协同、通讯和集成七个层面。

层次 技术 用途 讲次
成像层 工业相机 / CCD-CMOS / 镜头 图像采集与光学成像 L1
处理层 OpenCV / 滤波 / 边缘检测 / 特征提取 图像预处理与特征分析 L2
空间层 手眼标定 (AX=XB) / 坐标变换链 / 视觉伺服 像素到机器人坐标映射 L3
检测层 YOLO / Mask R-CNN / PatchCore / TensorRT 缺陷检测与异常识别 L4
协同层 Leader-Follower / RVO / 匈牙利算法 多机器人编队与任务分配 L5
通讯层 Profinet IRT / DDS / OPC UA 工业设备互联互通 L6
集成层 无序抓取 / 分层控制 / 系统调优 全流程视觉抓取系统 L7

3 如何使用本仓库学习

3.1 目录结构

M2_industrial_vision_integration/
├── lectures/          ← 课程讲义Markdown每讲一个文件
├── labs/             ← 训练任务指导书,按步骤指导实验操作
├── code/              ← Python 实验代码,按讲次分目录
│   ├── M2-L1/         ← L1 代码(相机选型计算器等)
│   ├── M2-L2/         ← L2 代码OpenCV 流水线等)
│   └── ...            ← L3-L7 依次类推
├── images/            ← SVG 技术示意图
├── syllabus/          ← 课程大纲、教案、教学设计
├── survey/            ← 课程反馈问卷
└── assets/            ← 其他教学素材

3.2 推荐学习流程

每讲的标准节奏

  1. 课前预习30min阅读 lectures/M2_LX_*.md,理解核心概念
  2. 课堂学习90min教师讲解原理 + 演示代码 + 学员跟做
  3. 课后 Part 160min按照 labs/M2_LX_task_guide.md 的步骤运行脚本、填写数据表、完成自检
  4. 课后 Part 260min使用 OpenCode 完成拓展编程任务

开始前的准备

  1. 按照 labs/M2_L0_task_guide.md 完成环境配置Python 3.8+ / conda / Jupyter Lab / OpenCode
  2. 激活 embodied-ai 环境:conda activate embodied-ai
  3. 进入对应讲次的代码目录:cd code/M2_LX/

3.3 实验运行示例

# 激活环境
conda activate embodied-ai

# 进入 L1 代码目录
cd code/M2_L1/

# 运行相机选型计算器
python M2_L1_camera_selector.py --fov 600 --wd 500 --resolution 1920x1080

每份 labs/M2_LX_task_guide.md 中都有详细的参数说明、数据记录表格和自检清单,按步骤操作即可。

3.4 技能等级说明

每讲训练任务按三个等级设计:

等级 标识 目标 对应讲次
Lv.1 基础感知 🟢 能运行脚本、看懂输出、理解基本概念 L1-L2
Lv.2 核心应用 🔵 能理解原理、调整参数、分析结果 L3-L6
Lv.3 综合实战 🟤 能独立调试、系统优化、综合分析 L7

3.5 评价方式

  • 自检清单:每讲任务指导书末尾有 6.1 自检清单,逐项确认完成
  • 技能达成评估:教师逐项确认技能达成情况
  • 过程考核:随堂提问 + 实验报告 + 运行演示
  • 最终项目L7 无序抓取全流程作为模块综合考核

4 前置知识

  • Python 基础编程(数据类型、函数、类、文件操作)
  • Linux 基本操作(终端、文件系统、包管理)
  • M1 模块AI 感知、决策与具身智能基础

5 模块依赖

  • 前置模块M1AI 感知、决策与具身智能基础)
  • 后续模块M3智能感知进阶与机器人控制

6 常见问题

需要真实机器人硬件吗? 不需要。所有实验均基于 Python 仿真程序,可在普通笔记本电脑上完成。

需要 GPU 吗? 不需要。所有代码均可在 CPU 环境下运行。L4 的 YOLO 推理如需 GPU 可安装 PyTorch CUDA 版本,但非必需。

需要真实的工业相机吗? 不需要。代码提供模拟数据和仿真模式(--use_sim 参数)。

讲义和代码在哪里? 讲义在 lectures/,代码在 code/,训练任务指导书在 labs/——三者按讲次编号对应。


6 更新日志

本模块的更新记录详见 CHANGELOG.md,涵盖 README、讲义、实验指导书等变更。


许可声明

本文档采用 知识共享署名-相同方式共享 4.0 国际许可协议 (CC BY-SA 4.0) 进行许可,© 2025-2026 Gitconomy Research.