一、结构光三维视觉概述

大家好,我是老张。搞了十几年光学测量,今天跟大伙聊聊结构光。

先问个问题:你手机的人脸解锁,是怎么知道你长啥样的?

答案就是结构光。说白了,就是往你脸上打一束特殊的光,然后看光怎么变形,就能算出你的脸是凸是凹。

1.1 什么是结构光

结构光,不是普通的光。普通手电筒照过去,一片亮,啥信息也拿不到。

结构光不一样。它是有「结构」的光——比如一条条纹、一堆散斑点、或者网格线。

我习惯这么理解:结构光就是给物体表面打上一把「光尺子」。光打上去,尺子就变形了。变形多少,深度就多少。

核心定义:结构光三维视觉,就是通过投射已知图案的光,分析图案变形,来获取物体三维信息的技术。

1.2 应用场景——这东西能干啥?

你想想看,生活中哪些地方用到了?

  • 人脸识别——iPhone 的 Face ID,就是典型的散斑结构光。我在2017年拆过一台iPhone X,里面那个点阵投影器,做工是真讲究。
  • 工业检测——比如检测手机屏幕有没有划痕、汽车钣金件有没有凹陷。我去年帮一个工厂做过产线检测方案,用结构光扫一个零件只要0.3秒,精度0.02mm。
  • 文物扫描——博物馆里那些青铜器、佛像,不能上手摸,用结构光一扫,三维模型就出来了。我曾经帮朋友扫过一个汉代陶罐,连上面的指纹都扫出来了。
  • 医疗整形——面部建模、假肢定制,现在也用结构光。
应用领域 典型场景 精度要求 常用光型
人脸识别 手机解锁、支付验证 0.1~0.5mm 散斑结构光
工业检测 缺陷检测、尺寸测量 0.01~0.1mm 条纹结构光
文物扫描 三维建模、数字存档 0.05~0.2mm 多频条纹
医疗整形 面部建模、假体设计 0.1~0.3mm 散斑/条纹

1.3 基本原理——三角测量法

结构光的核心原理,其实就四个字:三角测量

什么意思?

你拿一支激光笔,斜着照到墙上。激光笔的位置固定,墙上的光点位置会随着墙的远近而移动。你只要知道激光笔和相机的夹角,再测出光点在图像上的偏移量,就能算出墙的距离。

这就是三角测量。

我的经验:刚开始做结构光的时候,我总纠结于公式推导。后来发现,你只要记住一个核心关系就行——偏移量越大,深度越大。剩下的,交给标定去解决。

具体来说,结构光系统有三个关键角色:

  1. 投影器——负责把结构光图案打到物体上
  2. 相机——负责拍下变形的图案
  3. 处理器——负责分析变形,算出三维坐标

这三者构成一个三角形。投影器和相机之间的距离,叫「基线」。基线越长,精度越高,但遮挡也越严重。这是个取舍问题。

注意:我曾经在项目里吃过亏——基线拉得太长,结果物体侧面全被挡住了,扫出来全是洞。后来老老实实按物体尺寸重新算了一遍基线。

下面这张图,是我画的结构光系统核心逻辑。你看一眼就明白了:

结构光三维视觉核心原理图 投影器 投射结构光 相机 拍摄变形图案 被测物体 基线(Baseline) 投影光线 反射光线 三角测量:已知基线长度 + 角度 → 计算深度 处理器 → 三维点云

嗯,这张图其实已经把整个流程说清楚了。投影器打光,相机拍照,处理器算深度。就这么简单。

1.4 为什么选结构光?

你可能要问:测三维的方法那么多,为什么选结构光?

我列几个理由:

  • 精度高——实验室条件下,做到0.01mm没问题
  • 速度快——一帧图像就能出深度,适合动态场景
  • 成本低——一个投影仪加一个工业相机,几千块就能搭起来
  • 不受纹理影响——纯白物体、反光物体都能扫

一句话总结:结构光就是「便宜、好用、精度够」。这也是为什么我选择它作为这套课程的核心技术。

好了,这一章就到这里。下一章我们开始动手——我会教你如何用几百块钱的成本,自己搭一套结构光投影装置。


专注资料整理