技术概述
结构光三维测量技术是一种基于主动光投射的非接触式三维测量方法。通过向被测物体投射特定的结构光图案,分析光图案在物体表面的变形来重建物体的三维形貌。
- 八步相移:φ = arctan2(分子, 分母)
- 三频解包裹:Φ₃ = φ₃ + 2πk₃
- 三维重建:z = dΦ₃/(2πf₃ + Φ₃tanθ)
八步相移法
基本原理
八步相移法通过投射8幅具有不同相移的正弦条纹图案,提取高精度的相位信息。相移步长为π/4,能够有效抑制谐波误差。
条纹强度表达式
其中:k = 0, 1, 2, ..., 7
相位计算公式
三角函数值计算
| k | 相位角 | sin(kπ/4) | cos(kπ/4) | 对应图像 |
|---|---|---|---|---|
| 0 | 0 | 0 | 1 | I₀ |
| 1 | π/4 | √2/2 | √2/2 | I₁ |
| 2 | π/2 | 1 | 0 | I₂ |
| 3 | 3π/4 | √2/2 | -√2/2 | I₃ |
| 4 | π | 0 | -1 | I₄ |
| 5 | 5π/4 | -√2/2 | -√2/2 | I₅ |
| 6 | 3π/2 | -1 | 0 | I₆ |
| 7 | 7π/4 | -√2/2 | √2/2 | I₇ |
展开计算
分子(正弦项)计算:
$$\text{分子} = \sum_{k=0}^{7} I_k \sin\left(\frac{k\pi}{4}\right)$$展开各项:
$$\begin{align} &= I_0 \cdot 0 + I_1 \cdot \frac{\sqrt{2}}{2} + I_2 \cdot 1 + I_3 \cdot \frac{\sqrt{2}}{2} \\ &\quad + I_4 \cdot 0 + I_5 \cdot \left(-\frac{\sqrt{2}}{2}\right) + I_6 \cdot (-1) + I_7 \cdot \left(-\frac{\sqrt{2}}{2}\right) \end{align}$$化简结果:
$$\boxed{\text{分子} = \frac{\sqrt{2}}{2}(I_1 + I_3 - I_5 - I_7) + I_2 - I_6}$$分母(余弦项)计算:
$$\text{分母} = \sum_{k=0}^{7} I_k \cos\left(\frac{k\pi}{4}\right)$$展开各项:
$$\begin{align} &= I_0 \cdot 1 + I_1 \cdot \frac{\sqrt{2}}{2} + I_2 \cdot 0 + I_3 \cdot \left(-\frac{\sqrt{2}}{2}\right) \\ &\quad + I_4 \cdot (-1) + I_5 \cdot \left(-\frac{\sqrt{2}}{2}\right) + I_6 \cdot 0 + I_7 \cdot \frac{\sqrt{2}}{2} \end{align}$$化简结果:
$$\boxed{\text{分母} = I_0 - I_4 + \frac{\sqrt{2}}{2}(I_1 - I_3 - I_5 + I_7)}$$最终相位公式:
$$\phi(x,y) = \arctan2\left(\frac{\sqrt{2}}{2}(I_1 + I_3 - I_5 - I_7) + I_2 - I_6, I_0 - I_4 + \frac{\sqrt{2}}{2}(I_1 - I_3 - I_5 + I_7)\right)$$测量步骤:
- 投射8幅相移图案:相移量分别为0, π/4, π/2, 3π/4, π, 5π/4, 3π/2, 7π/4
- 采集对应的8幅变形图像
- 应用八步相移算法计算包裹相位
- 相位范围:(-π, π]
三频法相位解包裹
频率设计
选择三种不同频率的条纹图案,频率比通常为简单整数比,如1:3:9或1:4:16。
| 频率类型 | 频率值 | 周期数 | 作用 |
|---|---|---|---|
| 低频 f₁ | 基准频率 | 1个周期 | 粗略测量,范围确定 |
| 中频 f₂ | 8f₁ | 8个周期 | 中等精度测量 |
| 高频 f₃ | 64f₁ | 64个周期 | 高精度测量 |
1:8:64频率比例的相位解包裹算法
频率关系:f₂ = 8f₁, f₃ = 64f₁ = 8f₂
算法流程:
步骤1:计算低频和中频的相位差
$$\Delta\phi_{12}(x,y) = \phi_2(x,y) - 8\phi_1(x,y)$$ $$\Delta\phi_{12}(x,y) = \text{wrap}(\Delta\phi_{12}(x,y)) \quad \text{归一化到}(-\pi, \pi]$$步骤2:确定中频相位的周期序号
$$k_2(x,y) = \text{round}\left(\frac{8\phi_1(x,y) - \phi_2(x,y) + \Delta\phi_{12}(x,y)}{2\pi}\right)$$步骤3:计算中频绝对相位
$$\boxed{\Phi_2(x,y) = \phi_2(x,y) + 2\pi k_2(x,y)}$$步骤4:计算中频和高频的相位差
$$\Delta\phi_{23}(x,y) = \phi_3(x,y) - 8\Phi_2(x,y)$$ $$\Delta\phi_{23}(x,y) = \text{wrap}(\Delta\phi_{23}(x,y)) \quad \text{归一化到}(-\pi, \pi]$$步骤5:确定高频相位的周期序号
$$k_3(x,y) = \text{round}\left(\frac{8\Phi_2(x,y) - \phi_3(x,y) + \Delta\phi_{23}(x,y)}{2\pi}\right)$$步骤6:计算高频绝对相位
$$\boxed{\Phi_3(x,y) = \phi_3(x,y) + 2\pi k_3(x,y)}$$- 理论测量范围扩大64倍
- 相位解包裹更加稳定可靠
- 适合大尺寸物体的高精度测量
- 8倍关系使得计算更加简洁
解包裹可靠性分析
相位差范围限制:
$$|\Delta\phi_{12}(x,y)| < \pi \quad \text{(低频-中频解包裹条件)}$$ $$|\Delta\phi_{23}(x,y)| < \pi \quad \text{(中频-高频解包裹条件)}$$这确保了相位解包裹的唯一性和可靠性
最大可解包裹梯度:
$$\left|\frac{d\phi_1}{dx}\right| < \frac{\pi}{8} \quad \text{(低频梯度限制)}$$ $$\left|\frac{d\Phi_2}{dx}\right| < \frac{\pi}{8} \quad \text{(中频梯度限制)}$$梯度限制确保在物体边缘和不连续区域的解包裹稳定性
三维重建
相位-高度转换
通过标定得到的参数,将绝对相位转换为三维坐标。
高度计算公式:
$$z(x,y) = \frac{d \cdot \Phi_3(x,y)}{2\pi f_3 + \Phi_3(x,y) \cdot \tan\theta}$$其中:d为投影仪与相机的基线距离,θ为投影角度,f₃为高频条纹频率
三维坐标计算
世界坐标系转换:
$$X(x,y) = \frac{(x - c_x) \cdot z(x,y)}{f_x}$$ $$Y(x,y) = \frac{(y - c_y) \cdot z(x,y)}{f_y}$$ $$Z(x,y) = z(x,y)$$其中:(cₓ, cᵧ)为相机主点坐标,fₓ, fᵧ为相机在x、y方向的焦距参数
完整的三维重建流程:
$$\begin{align} &\text{1. 相位计算:} \quad \phi_i(x,y) = \arctan2(\text{分子}, \text{分母}) \\ &\text{2. 相位解包裹:} \quad \Phi_3(x,y) = \phi_3(x,y) + 2\pi k_3(x,y) \\ &\text{3. 高度重建:} \quad z(x,y) = f(\Phi_3(x,y), \text{标定参数}) \\ &\text{4. 坐标转换:} \quad (X,Y,Z) = \text{相机坐标系到世界坐标系} \end{align}$$精度分析
相位测量精度
八步相移法精度公式:
$$\sigma_\phi = \frac{\sigma_I}{B} \cdot \frac{1}{\sqrt{N/2}}$$其中:σᵢ为图像噪声标准差,B为条纹调制度,N为相移步数(N=8)
对于八步相移:σ_φ = σᵢ/(B·√4) = σᵢ/(2B)
深度测量精度(1:8:64)
深度精度公式:
$$\sigma_z = \frac{d \cdot \sigma_\phi}{2\pi \cdot 64f_1 \cos^2\theta} = \frac{d \cdot \sigma_\phi}{128\pi f_1 \cos^2\theta}$$高频条纹(64倍基频)提供最高精度,精度与频率成反比
精度比较分析:
$$\begin{align} &\text{四步相移精度:} \quad \sigma_{\phi,4} = \frac{\sigma_I}{B\sqrt{2}} \\ &\text{八步相移精度:} \quad \sigma_{\phi,8} = \frac{\sigma_I}{2B} \\ &\text{精度提升比:} \quad \frac{\sigma_{\phi,4}}{\sigma_{\phi,8}} = \frac{2}{\sqrt{2}} = \sqrt{2} \approx 1.414 \end{align}$$与其他频率比例的比较:
| 频率比例 | 理论精度 | 测量范围 | 解包裹难度 |
|---|---|---|---|
| 1:3:9 | 基准 | 基准 | 容易 |
| 1:4:16 | 1.78倍 | 1.78倍 | 容易 |
| 1:8:64 | 7.11倍 | 7.11倍 | 中等 |
高精度
八步相移法相比四步相移法,相位精度提高约40%
大范围
三频法解决相位模糊,测量范围可达数米
高稳定性
多频率验证,对环境干扰具有良好的鲁棒性
实时性
算法优化后可实现25-30FPS的实时测量
误差分析与补偿
主要误差源
- 相移误差:投影器相移精度偏差
- 非线性误差:投影器和相机的非线性响应
- 标定误差:相机和投影器标定参数偏差
- 环境干扰:环境光和振动影响
误差补偿方法
误差补偿公式:
$$\phi_{\text{corrected}} = \phi_{\text{measured}} + \Delta\phi_{\text{nonlinear}} + \Delta\phi_{\text{calibration}}$$其中补偿项通过预标定获得,包括非线性误差和标定误差
非线性误差建模:
$$\Delta\phi_{\text{nonlinear}} = \sum_{n=2}^{N} a_n \sin(n\phi_{\text{measured}}) + b_n \cos(n\phi_{\text{measured}})$$使用傅里叶级数展开建模设备的非线性响应特性
快速公式参考
八步相移相位
φ = arctan2(分子, 分母)
分子: √2/2(I₁+I₃-I₅-I₇)+I₂-I₆
分母: I₀-I₄+√2/2(I₁-I₃-I₅+I₇)
相位解包裹
频率比 1:8:64
Φ₃ = φ₃ + 2πk₃
k₃ = round((8Φ₂-φ₃+Δφ₂₃)/2π)
三维重建
z = dΦ₃/(2πf₃+Φ₃tanθ)
X = (x-cₓ)z/fₓ
Y = (y-cᵧ)z/fᵧ
精度分析
σφ = σᵢ/(2B)
σz = dσφ/(128πf₁cos²θ)
八步比四步精度提升√2倍
技术参数速查
图像数量
3频率 × 8相移 = 24幅
相移步长
π/4 (45°)
频率比例
1:8:64 (高精度)
测量精度
0.01% - 0.05%