0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

3D结构光的技术原理与应用场景

新机器视觉 来源:芯视tof ,3Dtof 作者:芯视tof ,3Dtof 2022-11-16 14:29 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

目前主流的深度探测技术是结构光,TOF,和双目。具体的百度就有很详细的信息。

而结构光也有双目结构光和散斑结构光等,没错,Iphone X 的3D深度相机就用 散斑结构光。

我用结构光模块做过实验,主要考虑有效工作距离,精度和视场角是否满足需求。

本文对结构光(Structured Light)技术做一个比较全面的简介。

结构光三维成像的硬件主要由相机和投射器组成,结构光就是通过投射器投射到被测物体表面的主动结构信息,如激光条纹、格雷码、正弦条纹等;然后,通过单个或多个相机拍摄被测表面即得结构光图像;最后,基于三角测量原理经过图像三维解析计算从而实现三维重建。

利用红外相机像素点信息求解被测物体深度信息需要经过:机构光解码、像素、空间坐标转换;为了满足获取深度信息的实时性,结构光模块内部一般会有一枚专用的处理芯片,用于计算并输出实时信息。

3D结构光目前的使用场景为:

第一,物体信息分割与识别,3D人脸识别,用于安全验证、金融支付等场景;

第二,体感手势识别,为智能终端提供新的交互方式;

第三,三维场景重建,利用深度相机生成的深度信息(点云数据),结合RGB彩色图像信息,可完成对三维场景的还原,可用于测距,虚拟装修等场景。

基于结构光的三维成像,实际上是三维参数的测量与重现,主要是区别于纯粹的像双目立体视觉之类的被动三维测量技术,因而被称为主动三维测量。因为他需要主动去投射结构光到被测物体上,通过结构光的变形(或者飞行时间等)来确定被测物的尺寸参数,因此才叫做主动三维测量,嗯,相当主动。

首先,结构光的类型就分为很多种,既然是结构光,当然是将光结构化,简单的结构化包括点结构光,线结构光以及简单的面结构光等。复杂一点的结构化就上升到光学图案的编码了。结构光投射到待测物表面后被待测物的高度调制,被调制的结构光经摄像系统采集,传送至计算机内分析计算后可得出被测物的三维面形数据。其中调制方式可分为时间调制与空间调制两大类。时间调制方法中最常用的是飞行时间法,该方法记录了光脉冲在空间的飞行时间,通过飞行时间解算待测物的面形信息;空间调制方法为结构光场的相位、光强等性质被待测物的高度调制后都会产生变化,根据读取这些性质的变化就可得出待测物的面形信息。

下面以一种应用广泛的光栅投影技术(条纹投影技术)为例来阐述其具体原理。条纹投影技术实际上属于广义上的面结构光。其主要原理如下图所示, 即通过计算机编程产生正弦条纹,将该正弦条纹通过投影设备投影至被测物,利用CCD相机拍摄条纹受物体调制的弯曲程度,解调该弯曲条纹得到相位,再将相位转化为全场的高度。当然其中至关重要的一点就是系统的标定,包括系统几何参数的标定和CCD相机以及投影设备的内部参数标定,否则很可能产生误差或者误差耦合。因为系统外部参数不标定则不可能由相位计算出正确的高度信息。

总体而言,结构光主要可以分为两类

1. 线扫描结构光;

2. 面阵结构光。

一般说结构光的时候都指代第二类,这里也主要关注面阵结构光。

1. 线扫描结构光

线扫描结构光较之面阵结构光较为简单,精度也比较高,在工业中广泛用于物体体积测量、三维成像等领域。

1.1 数学基础

先来看一个简单的二维下的情况:

通过上图可以看到线扫描结构光装置的一个基本结构。主动光源L缓慢扫过待测物体,在此过程中,相机记录对应的扫描过程,最后,依据相机和光源在该过程中的相对位姿和相机内参等参数,就可以重建出待测物体的三维结构。

由上图可知:

可得

其中, α 为投影装置的朝向。 β 则需要通过对应像素的像素坐标 μ和焦距f来确定。最终可知P点的三维坐标为:

将之推广至三维空间中:

由小孔成像模型有

由三角测量原理又有

两式联立则有

最后可得

可以看到,三维空间中的情形和之前的二维空间类似,作为俯仰角的 γ并没有出现在公式中。

1.2 应用

如上图,相机与投影器等相对位姿都经过了精确的校正,并且选取了测量台上的一角作为原点建立物方坐标系。因此,激光投影器所投射的线激光在物方坐标系中可以通过一个平面方程来描述:

而相机光心的位姿通过几何校正也已知,可以通过找到线激光在图像中的对应像素重建出光心与像素的射线,射线和激光平面的交点即为待求的三维空间点。由小孔成像模型有

代入平面方程中,可得

2. 面阵结构光

面阵结构光大致可以分为两类:随机结构光和编码结构光。随机结构光较为简单,也更加常用。通过投影器向被测空间中投射亮度不均和随机分布的点状结构光,通过双目相机成像,所得的双目影像经过极线校正后再进行双目稠密匹配,即可重建出对应的深度图。如下图为某种面阵的红外结构光。

随机结构光这里就不再说了,因为和普通双目算法是很相似的。一些额外的考虑就是是否给相机加装滤光片、光斑的密度要到什么程度等硬件和光学的问题了。这里主要讨论编码结构光。编码结构光可以分为两类:

1. 时序编码;

2. 空间编码。

2.1 时序编码

如上图,时序编码结构光即为在一定时间范围内,通过投影器向被测空间投射一系列明暗不同的结构光,每次投影都通过相机进行成像。假设共有n张影像,并设被阴影覆盖的部分编码值为1,未被覆盖的部分编码值为0。此时,每个像素都对应唯一一个长度为n的二进制编码,双目影像搜索匹配像素的问题就变成了查找具有相同编码值的像素。如果双目图像已经进行了极线校正,那么所投影的结构光只需要在x方向上不具有重复性即可。

如上图中,红框内的像素的编码为0110,转化为十进制则为5。此时,只需要在右图相同行上检索编码值为5的像素即可。上图编码方式称为二进制码(binary code),每段区域不断的进行二分下去直至投影的编码宽度等于相机的像素宽度即可。对于宽度为1024的图像,最少需要10张影像来进行编码。

Binary Code 的一种改进为Gray Code. Gray Code比Binary Code具有更好的鲁棒性,它使得相邻两个像素相差1bit。Gray Code的详细介绍和其与Binary Code之间的转换可以参考wikipedia。

注意观察即可看到gray code和binary code在前几行像素上的不同

转换算法:

自然,除了使用二进制的0-1编码之外,还可以使用更多颜色层级的编码。假设使用了M种不同的灰度层级进行编码,则拍摄N张影像可以得到包含 个条带的影响。如下图中M = 3, N = 3时图中有27条条带。

由以上的介绍也可以得出时序编码结构光的优缺点:优点:

·高精度

缺点:

·只适用于静态场景;

·需要拍摄大量影像。

2.2 空间编码

为满足动态场景的需要,可以采用空间编码结构光。前面谈到了随机结构光,就是不带编码信息,投影随机纹理,而这里讨论的空间编码结构光特指向被测空间中投影经过数学编码的、一定范围内的光斑不具备重复性的结构光。由此,某个点的编码值可以通过其临域获得。其中,包含一个完整的空间编码的像素数量(窗口大小)就决定了重建的精度。

2.2.1 德布鲁因序列 (De Bruijn) 序列

德布鲁因序列(维基百科)B(k, n) 表示用k个符号(如二进制,k = 2)来表示长度为 的循环编码,n为一个编码值的长度。举例:最简单的,k = 2时,采用二进制符号(0, 1),编码值的长度n = 2,可以得到一个长度为 的循环序列:[0, 0, 1, 1]。此时,我们得到4个长度为2的不同的编码:[0, 0], [0, 1], [1, 1], [1, 0]。因此,某种结构光就可以按照该德布鲁因序列进行编码。而获得的结构光影像中,以上4个像素的编码为[0, 0, 1, 1],通过一个大小为2的滑动窗口(假定一个结构光光斑或光束的宽度是一个像素)即可获取每个像素的编码值。同样地,如果是经过极线校正的双目图像,只需要搜索对应的行即可,此时只要求编码在x轴上不具备重复性。此时的结构光就是竖直条带状的。当然,为了提高编码效率,也可以使用灰度图、彩色图像等比0-1编码具有更多可能编码值的投影方式。例如,对于RGB影像,采用二进制编码(即某种颜色只有 有、无 两种状态),则共有 k = 5, n = 3)的结构光序列:

2.2.2 二维空间编码

德布鲁因序列是一种一维编码,可以将之扩展到二维空间中,使得对于一个x * y大小的二维空间,其中一个w * h大小的子窗口所包含的编码值在这整个二维编码序列中只出现一次。

如上面中的4 * 6的M-arrays序列中,每个2 * 2大小的窗口所包含的编码值都是唯一的。同样也可以利用RGB信息来进行二维编码,有相关算法来产生一些伪随机二维编码。如在下图中,左边展示了一个6 * 6大小的二维矩阵,子窗口的大小为3 * 3。算法首先在左上角的3 * 3子窗口中随机填入各种颜色;然后一个3 * 1大小的滑动窗口移动到右端第一个空白处,并随机填入3中颜色;在填入生成的随机颜色前,算法会先验证子窗口的编码的唯一性能不能得到保证,若不能,则会重新生成3中随机颜色;如此循环,只是在竖直方向上滑动窗口的大小变为1 * 3,直至将整个6 * 6矩阵填满。右图则是该算法产生的某种伪随机二维编码的示例。

通过以上对空间编码的讨论,也可以看出空间编码结构光的一些优缺点:优点:

·无需多张照片,只需要一对影像即可进行三维重建。可以满足实时处理,用在动态环境中。

缺点

·易受噪声干扰:由于反光、照明等原因可能导致成像时部分区域等编码信息缺失;

·对于空间中的遮挡比较敏感;

·相较于时序编码结构光精度较低。

以上是对各种常用的结构光技术的一些介绍。其实,三维重建中最常用的还是随机面阵结构光。通过向空间中投影这样的随机结构光,再结合双目稠密重建,可以获得比单纯使用RGB影像进行三维重建更加可靠和精确的结果。最后,向对结构光和三维重建感兴趣的同学推荐一个项目:build your own 3D scanner。和名字一样,网站上提供了自己使用触手可及和低成本的设备来DIY一个3D扫描仪所需的一切,包括教程、ppt、代码、数据和其他人的作品展示,感兴趣的同学欢迎动手尝试。

审核编辑:郭婷


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54429

    浏览量

    469367
  • 人脸识别
    +关注

    关注

    77

    文章

    4132

    浏览量

    88761

原文标题:3D-camera结构光原理

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    英伦科技场裸眼3D笔记本重磅上新!解锁技术无“镜”3D新体验!

    期待已久的英伦科技场裸眼3D笔记本终于上新了! 这款集结多项黑科技的硬核产品,直接把3D显示体验拉到了天花板,不管是专业工作还是娱乐放松,都能给你带来前所未有的沉浸感。
    的头像 发表于 04-17 15:48 186次阅读
    英伦科技<b class='flag-5'>光</b>场裸眼<b class='flag-5'>3D</b>笔记本重磅上新!解锁<b class='flag-5'>光</b>场<b class='flag-5'>技术</b>无“镜”<b class='flag-5'>3D</b>新体验!

    深度解析3D眼镜电子电路设计难点与实践——YANTOK自主设计方案落地

    3D显示技术飞速迭代的当下,主动式快门3D眼镜凭借出色的成像效果,成为专业影音、工业检测、家用投影等场景的核心配件。不同于被动式3D眼镜的
    发表于 04-08 11:21

    英伦科技裸眼3D显示技术突破:攻克行业痛点,掌握技术话语权

    要生产出世界上最好的裸眼3D屏。经过多年潜心研发,英伦科技不仅完成了裸眼3D技术的弯道超车,还拿下了技术的国际话语权。如今,该公司彻底攻
    的头像 发表于 03-03 09:51 680次阅读
    英伦科技裸眼<b class='flag-5'>3D</b>显示<b class='flag-5'>技术</b>突破:攻克行业痛点,掌握<b class='flag-5'>光</b>场<b class='flag-5'>技术</b>话语权

    一文看懂3D打印材料构成与性能差异

    本文系统介绍3D打印常用材料类型,包括热塑性塑料、光敏树脂、金属、陶瓷及复合材料,分析其性能特点与适用场景,帮助读者理解不同打印技术对应的材料体系及选择依据。
    的头像 发表于 02-26 10:24 332次阅读
    一文看懂<b class='flag-5'>3D</b>打印材料构成与性能差异

    烧结银膏在硅技术和EML技术的应用

    互连,传统焊料的热膨胀与低可靠性难以满足需求。 烧结银膏的高可靠性与高密度互连能力,支持3D堆叠和HBM高带宽内存集成,支撑了硅芯片的3D异构集成: 在英伟达H100 GPU的硅
    发表于 02-23 09:58

    3D打印机散热风扇:热管理核心与选型优化指南

    腔体风扇,促进设备内部空气循环,避免积热。同时,优化风道设计也很重要,让气流能直接吹到发热的地方,减少风量浪费。如果是高端应用场景,比如工业级3D打印,对散热要求极高,可以用液冷散热技术代替传统的风冷
    发表于 01-19 15:05

    2D、2.5D3D封装技术的区别与应用解析

    半导体封装技术的发展始终遵循着摩尔定律的延伸与超越。当制程工艺逼近物理极限,先进封装技术成为延续芯片性能提升的关键路径。本文将从技术原理、典型结构和应
    的头像 发表于 01-15 07:40 1190次阅读
    2<b class='flag-5'>D</b>、2.5<b class='flag-5'>D</b>与<b class='flag-5'>3D</b>封装<b class='flag-5'>技术</b>的区别与应用解析

    3D雷达料位计应用行业有哪些

    锐达3D雷达料位计凭借其抗干扰能力强、测量精度高、适应恶劣工况的核心优势,搭配三维成像与智能数据管理功能,已广泛应用于各类需要对固体物料(或部分特殊液体)料位、体积进行精准监测的行业。其应用场景覆盖
    的头像 发表于 12-29 16:37 441次阅读

    常见3D打印材料介绍及应用场景分析

    3D打印材料种类丰富,不同材料性能差异明显。本文介绍PLA、ABS、PETG等常见3D打印材料的特点与应用场景,帮助读者了解3D打印用什么材料更合适,为选材提供基础参考。
    的头像 发表于 12-29 14:52 899次阅读
    常见<b class='flag-5'>3D</b>打印材料介绍及应<b class='flag-5'>用场景</b>分析

    简单认识3D SOI集成电路技术

    在半导体技术迈向“后摩尔时代”的进程中,3D集成电路(3D IC)凭借垂直堆叠架构突破平面缩放限制,成为提升性能与功能密度的核心路径。
    的头像 发表于 12-26 15:22 942次阅读
    简单认识<b class='flag-5'>3D</b> SOI集成电路<b class='flag-5'>技术</b>

    3D传感器到立体相机,解锁工业应用新可能

    3D传感器是实现深度感知的核心技术。这些传感器广泛应用于多种常见的3D视觉技术中,例如立体相机、激光雷达(LiDAR)、飞行时间(ToF)相机和激光三角测量。通常根据应
    的头像 发表于 11-28 17:03 2018次阅读
    从<b class='flag-5'>3D</b>传感器到立体相机,解锁工业应用新可能

    iTOF技术,多样化的3D视觉应用

    视觉传感器对于机器信息获取至关重要,正在从二维(2D)发展到三维(3D),在某些方面模仿并超越人类的视觉能力,从而推动创新应用。3D 视觉解决方案大致分为立体视觉、结构光和飞行时间 (
    发表于 09-05 07:24

    如何提高3D成像设备的部署和设计优势

    3D视觉技术正快速普及,其增长得益于成本下降和软件优化,应用场景从高端工业扩展到制造、物流等领域。该技术通过1-2台3D相机替代多台2
    的头像 发表于 08-06 15:49 933次阅读
    如何提高<b class='flag-5'>3D</b>成像设备的部署和设计优势

    庭信息Kustom3D引擎登陆2025上海车展

    随着智能座舱的演进,3D交互界面已成为车载体验的核心载体。从3D车模、感知地图到沉浸式桌面,3D技术正逐步渗透座舱的每个角落。传统3D交互模
    的头像 发表于 04-30 16:04 1038次阅读

    3D打印耗材种类有哪些?各有什么优缺点?

    这篇文章将为你详细介绍3D打印耗材的基础知识,帮助你了解这些材料的特性、优缺点以及它们适合的应用场景
    的头像 发表于 04-29 09:40 5.4w次阅读
    <b class='flag-5'>3D</b>打印耗材种类有哪些?各有什么优缺点?