双目相机原理
双目视觉,也称为立体视觉,是计算机视觉中模仿人类双眼感知深度的一种核心方法。其原理不依赖特殊的主动光源(如激光散斑),而是通过两个普通的摄像头来获取三维信息,因此属于被动式深度感知方案。
一、核心思想:三角测距
双目相机最根本的原理是三角测距。想象一下当你交替闭上一只眼睛看眼前的物体时,它的位置似乎在移动。你的大脑通过分析这两幅图像的差异来计算距离。双目相机做的正是这件事。
二、工作原理分步详解
1. 系统构成
一个最基本的双目系统只需要两个参数一致的相机(焦距相同),并将它们水平固定在同一个基线上,保证它们的光轴平行。
2. 成像与视差
-
同一个三维空间点 P,会在左相机和右相机的成像平面上分别形成两个像点 P_L 和 P_R。
-
由于两个相机的位置不同,这两个像点在各自图像中的水平坐标是不同的。这个水平坐标的差值就是视差。
-
关键规律:物体离相机越近,视差越大(像点位置差异越大);物体离相机越远,视差越小(像点位置越接近)。无限远处的物体视差为零。
3. 从视差计算深度
根据三角几何关系,可以推导出深度 Z 的计算公式:
Z=f⋅BdZ = \frac{f \cdot B}{d}