用于iPhoneX face-ID的结构光3D传感器是基于参考图匹配的,它的“前身”是Kinect1,最近几年非常火爆,它把3D技术带入了普通大众的生活,使得3D感知成为许多人每天生活的一部分。支付宝也在用类似原理的技术(奥比中光提供的3D传感器技术)做线下刷脸支付,在普通的小超市都能看到刷脸支付的机器。
而单投影仪-单相机的条纹结构光三维成像是一个古老的研究课题了,解相(相位展开)是其中的一个核心问题。
这两个技术之间有什么关联呢?
针对单投影仪-单相机的结构光系统,我们提出了一种新的实时的全场解相框架。在这个框架中,只需要投影4张图案(包括3张正弦条纹图和1张二值散斑图)就可以测量目标的绝对三维形貌。
在开始测量之前,我们用结构光系统捕捉近似平面目标(如墙壁)的4幅图像,其中散斑图像作为参考图像,并计算并存储相应的绝对相位图。因此,参考图像中的每个像素都可以映射到一个绝对相位值。这样,如果我们能在测量过程中用匹配算法生成当前散斑图像和参考散斑图像之间的点对应关系,就可以直接映射当前图像像素的绝对相位值了。
映射的绝对相位值可用于确定相对相位的周期。实验结果验证了该框架的有效性和有效性。在消费级GPU(Nvidia GTx1060)上,我们的方法可以达到187 fps的帧率。
本项目在github上公开了源码(论文中有源码链接)。
https://github.com/YuhuaXu/PhaseUnwrapping
Bao W, Xiao X, Xu Y, et al. Reference image based phase unwrapping framework for a structured light system[J]. Optics express, 2018, 26(22): 29588-29599.
论文地址:https://www.osapublishing.org/oe/abstract.cfm?uri=oe-26-22-29588
如图1所示,解相时,只需要建立当前散斑图(大卫散斑图)和参考散斑图(Fig1左下图)之间的对应关系,就可以为当前散斑图映射到一个绝对相位值(不是很精确,但足以用来解相)。测试结果如下。