一、双目视觉概述

1.1 什么是双目视觉

双目视觉,说白了就是给机器装上两只「眼睛」。

人用两只眼睛看世界,大脑通过左右眼看到的微小差异——我们称之为「视差」——来判断物体的远近。双目视觉模仿的就是这个原理。两个摄像头同时拍摄同一场景,通过计算两幅图像中对应点的位置差异,就能推算出物体的三维坐标。

我刚开始接触这个领域时,总觉得这玩意儿很玄乎。后来自己搭了一套双目系统,看到点云图在屏幕上一点点浮现出来,才真正理解——这不就是给计算机装上了深度感知能力吗?

核心公式(视差与深度关系):

深度 Z = (焦距 f × 基线距离 B) / 视差 d

其中:

  • f:相机焦距(像素单位)
  • B:左右相机光心之间的距离
  • d:同一物点在左右图像中的像素差

嗯,这里要注意:基线距离越大,测距精度越高,但视野重叠区域会变小。这是个典型的工程权衡问题。

1.2 双目视觉的应用领域

双目视觉的应用场景,我归纳为三大块:

3D重建

把二维图像还原成三维模型。我在做文物数字化项目时用过这个技术。两个相机对着雕塑转一圈,回来就能生成高精度的三维网格模型。说白了,就是用像素换点云。

  • 工业检测:零件表面缺陷的三维检测
  • 医疗影像:内窥镜下的三维重建
  • AR/VR:真实场景的数字化映射

测距

这是双目视觉最直接的应用。为什么不用激光雷达?成本啊!一套工业级双目系统,几百块就能搞定,激光雷达动辄上万。

我曾经在AGV(自动导引车)项目里用双目做避障。说实话,精度不如激光雷达,但胜在便宜、功耗低、还能获取纹理信息。你想想看,激光雷达只能告诉你「前面有障碍物」,双目还能告诉你「那是个纸箱还是个人」。

方案 精度 成本 适用场景
双目视觉 厘米级 室内、中短距离
激光雷达 毫米级 室外、长距离
结构光 亚毫米级 近距离、静态场景

SLAM(同步定位与地图构建)

机器人一边移动,一边用双目相机给自己定位,同时构建周围环境的地图。这个领域我踩过不少坑。

我记得有一次,机器人在纹理稀疏的白色走廊里跑,双目匹配直接崩了——左右眼看到的全是白墙,根本找不到特征点。后来加了IMU做融合,才算稳住。

个人经验:双目SLAM在纹理丰富的环境中表现极佳,但在弱纹理、重复纹理场景下,一定要配合其他传感器(IMU、轮式里程计)做多传感器融合。

1.3 课程目标与学习路径

这门课的目标很明确:让你从零搭建一套可用的双目视觉同步触发系统

不是纸上谈兵,是真正能跑起来、能出点云、能测距的那种。

学习路径我建议这样走:

  1. 硬件基础:相机选型、镜头匹配、同步触发电路设计
  2. 标定技术:单目标定、双目标定、畸变校正
  3. 立体匹配:SGBM、BM算法、视差优化
  4. 深度计算:三角测量、点云生成
  5. 系统集成:FPGA/ARM实现、实时性优化

我个人习惯是:先跑通一个最小系统,再逐步优化。别一上来就想搞高精度、高帧率,先让两个相机能同步拍到同一帧再说。

避坑指南:我曾经因为忽略同步触发,导致左右图像存在毫秒级的时间差。移动物体拍出来全是重影,视差图一塌糊涂。同步触发,是双目系统的命门。

1.4 知识体系总览

下面这张图,是我梳理的双目视觉知识体系。你可以把它当作整个课程的地图:

双目视觉同步触发方案知识体系 硬件设计 相机选型 · 镜头匹配 同步触发 硬件触发 · 软件同步 算法处理 标定 · 匹配 · 深度计算 关键技术 • 传感器选型 • 电路设计 关键技术 • 硬件触发电路 • 时间戳对齐 关键技术 • 双目标定 • 立体匹配算法 系统集成与优化 FPGA实现 · ARM移植 · 实时性优化 · 多传感器融合 应用落地:3D重建 · 测距 · SLAM

这张图把整个课程串起来了。从硬件到算法,从同步到集成,最终落到实际应用。你跟着这个路径走,不会迷路。

好了,第一章就到这里。记住一句话:双目视觉的核心,不是算法有多炫,而是系统能不能稳定、同步地工作。后面的章节,我会带你一步步把每个环节吃透。


公众号:蓝海资料掘金营,微信deep3321