1. 课程导论与预备知识
1.1 3D视觉概述
3D视觉技术通过获取物体表面的三维空间坐标(X, Y, Z),实现对物理世界的数字化感知。与2D视觉仅能获取平面灰度/彩色信息不同,3D视觉能够提供深度、轮廓、体积等关键几何信息,在工业自动化、机器人引导、质量检测等领域具有不可替代的优势。
核心3D视觉技术路线对比:
| 技术路线 | 原理 | 典型精度 | 适用场景 |
|---|---|---|---|
| 激光三角法 | 激光线投射+相机成像,利用三角几何计算高度 | 1~50 μm | PCB焊点、锂电池极片、3C精密件 |
| 结构光 | 投影编码图案,通过变形恢复深度 | 10~100 μm | 人脸识别、逆向工程、大尺寸工件 |
| 双目立体视觉 | 双相机视差匹配,三角测量 | 50~500 μm | 物流分拣、AGV避障、大范围场景 |
| 飞行时间法 | 发射光脉冲,测量往返时间 | mm~cm级 | 自动驾驶、人机交互、仓储测量 |
本课程聚焦于激光三角法中的线扫相机系统,这是当前工业精密检测领域精度最高、应用最广的3D成像方案。
1.2 线扫相机 vs 面阵相机
线扫相机与面阵相机在成像方式、数据维度、应用场景上存在本质差异。理解这些差异是正确选型与标定的前提。
| 对比维度 | 线扫相机 | 面阵相机 |
|---|---|---|
| 传感器结构 | 单行/多行像素(1×N 或 2×N) | 二维像素阵列(M×N) |
| 成像方式 | 逐行扫描,配合运动平台连续采集 | 单次曝光,整帧同时成像 |
| 输出数据 | 2D图像(行拼接)+ 高度轮廓(3D) | 2D灰度/彩色图像 |
| 视野范围 | 理论上无限长(沿运动方向) | 受限于传感器尺寸 |
| 分辨率 | 行方向可达16k像素,横向极高 | 通常500万~2000万像素 |
| 光照要求 | 需要线光源或激光线,光照集中 | 面光源或环形光,均匀照明 |
| 运动控制 | 必须精确编码器触发,行频与速度匹配 | 可静态拍摄,也可飞拍 |
| 典型应用 | 卷材、圆柱体、大幅面连续检测 | 单件、小尺寸、静态检测 |
选型建议:当检测对象为连续带状(如锂电池极片、PCB拼板、薄膜、钢材)或需要极高横向分辨率时,线扫相机是唯一选择。面阵相机更适合离散工件、小视野、静态或低速场景。
1.3 多相机标定的应用场景
在工业现场,单台线扫相机往往无法覆盖大宽度、多面或复杂曲面的检测需求,因此需要部署多台线扫相机协同工作。多相机标定的核心任务是将各相机独立坐标系下的测量数据统一到同一全局坐标系中。
场景一:PCB 拼板检测
- 需求:PCB拼板宽度可达500mm以上,单相机分辨率不足,需2~4台线扫相机并排覆盖。
- 标定目标:消除相机间重叠区的拼接误差,保证焊盘、线路的连续测量精度。
- 精度要求:拼接误差 < 10 μm,角度偏差 < 0.01°。
场景二:锂电池极片涂布检测
- 需求:极片宽度800~1200mm,涂布边缘、表面缺陷需全幅检测,通常部署3~6台线扫相机。
- 标定目标:统一各相机Z轴高度基准,消除因安装倾斜导致的厚度测量偏差。
- 精度要求:厚度重复性 < 2 μm,拼接区域无阶跃。
场景三:圆柱电池外观检测
- 需求:圆柱体表面360°展开检测,需4台线扫相机环绕布置。
- 标定目标:将4个相机数据映射到圆柱展开坐标系,实现连续表面重建。
- 精度要求:周向拼接误差 < 0.1 mm,直径测量误差 < 0.05 mm。
常见误区:多相机标定不是简单的图像拼接,而是3D空间坐标系的统一。忽略Z轴标定会导致高度测量不一致,在厚度检测中产生严重误判。
1.4 多相机标定系统架构
一个完整的3D线扫多相机标定系统包含硬件层、数据层、标定算法层和应用层。下图展示了各模块之间的协作关系。
1.5 课程目标与学习路径
本课程旨在帮助学员从零基础掌握3D线扫多相机标定的完整知识体系与工程实践能力。
课程核心目标
- 理解原理:掌握激光三角法成像模型、线扫相机成像几何、多坐标系变换理论。
- 掌握方法:熟练运用张正友标定法、多相机外参标定、光束法平差等核心算法。
- 动手实战:基于C++/Python实现标定数据采集、特征提取、参数求解与精度验证。
- 解决工程问题:处理温度漂移、振动干扰、标定块设计、现场部署等实际难题。
推荐学习路径
| 阶段 | 章节范围 | 学习重点 | 产出物 |
|---|---|---|---|
| 基础入门 | 第1~4章 | 3D视觉基础、相机模型、坐标系变换 | 理解标定数学基础 |
| 单相机标定 | 第5~9章 | 线扫相机内参标定、畸变校正 | 单相机标定程序 |
| 多相机标定 | 第10~16章 | 多相机外参标定、全局优化 | 多相机标定系统 |
| 工程实战 | 第17~24章 | 标定块设计、现场部署、精度验证 | 完整标定方案 |
| 进阶专题 | 第25~30章 | 温度补偿、在线标定、深度学习融合 | 高级标定技术 |
学习建议:建议学员在每章结束后完成配套练习,尤其是第5章开始的编程实践。标定精度与代码实现质量直接相关,切勿只读不练。
1.6 预备知识要求
为顺利学习本课程,建议学员具备以下基础:
- 数学基础:线性代数(矩阵运算、特征值)、三维几何(刚体变换、欧拉角/四元数)、最小二乘优化。
- 编程基础:Python(NumPy、Matplotlib)或 C++(OpenCV、Eigen),能读写文件、处理图像数据。
- 视觉基础:了解相机成像原理、图像坐标系、像素坐标系概念(非必须,课程会系统讲解)。
避坑提醒:不要跳过坐标系变换章节直接进入多相机标定。坐标系混乱是初学者最常见的错误根源,务必在前期打好基础。