美文网首页
结构光三维表面成像:一个教程1

结构光三维表面成像:一个教程1

作者: 陌上尘离 | 来源:发表于2018-06-19 19:05 被阅读0次

    Structured-light 3D surface imaging:a tutorial

    我们对最近3D表面成像技术的进展进行了回顾。特别关注基于结构照明的非接触式三维表面测量技术。高速和高分辨率的数字光投影技术,加上最近成像传感器技术的发展,可以为新一代三维表面测量系统的应用提供更好的功能和性能,比现有的速度、精度、分辨率、模块化,更易于使用。摘要讨论了三维成像系统的性能指标,并对各种三维表面成像方案进行了分类、说明和比较。

    还讨论了校准技术,因为它们在实现所需的精度方面发挥着关键作用。
    通过几个实例,讨论了三维表面成像技术的大量应用。


    1.介绍

    我们周围的物质世界是三维的(3D的);然而,传统相机和成像传感器只能获得二维(2D)图像,这些图像缺乏深度信息。这个基本的限制极大地限制了我们感知和理解现实世界对象的复杂性的能力。

    在过去的几十年里,3D表面成像技术的研究、开发和商业化都取得了巨大的进步,在各种细分市场的应用需求、高分辨率和高速电子成像传感器的进步以及不断增长的计算能力的推动下,3D表面成像技术的发展取得了巨大的进步。

    摘要:本文概述了利用结构光技术在表面成像技术方面的最新进展。“3D成像”一词指的是能够获得真正的3D数据的技术。一个三维物体的一些性质的值,比如密度的分布,作为一个函数的三维坐标(x,y,z)。医学成像领域的例子是计算机断层扫描(CT)和磁共振成像(MRI),它获取测量目标的体积像素(或voxels),包括其内部结构。

    相比之下,表面成像处理的是物体表面点(x,y,z)坐标的测量。因为表面一般来说是非平面的,它是在三维空间中描述的,而成像问题被称为3D表面成像。测量的结果可以被看作是一个深度(或范围)z的映射,作为位置(x,y)在笛卡尔坐标系下的一个函数,它可以用数字矩阵形式表示${z_ij=(x_i,y_j),i=1,2···,L;j=1,2···,M }$。这一过程也被称为三维表面测量、范围探测、范围传感、深度映射、表面扫描等。这些术语在不同的应用领域中使用,通常指的是大致相同的基本表面成像功能,只在系统设计、实现或数据格式的细节上有所不同。

    一个更一般的3D表面成像系统能够获得一个标量值,例如表面反射系数,与非平面表面的每个点相关联。结果是一个点云${P_i=(x_i,y_i,z_i,f_i),i=1,2,···,N}$,其中fi代表数据集中第i个表面点。相似的,一个彩色图的表面点被表示为${P_i=(x_i,y_i,z_i,r_i,g_i,b_i),i=1,2,···,N}$光谱表面性质也可以由更大维度的向量来描述。

    三维表面成像的一种主要方法是基于“结构光”的使用。利用特别设计的二维空间强度变化图案,对场景进行主动照明。作为图一的解释,一个空间变化的二维结构照明是由一个特殊的投影仪或一个由空间光调制器调制的光源产生的。在结构光图案上的每个像素的强度都表示为数字信号${I_ij=(i,j),i=1,2,···,I;j=1,2,···,J}$,其中(i,j)代表投影图案(x,y)坐标(这句可能翻译错了)。这里讨论的结构光投射图案是二维图案。

    一个成像传感器(例如一个摄像机)被用来在结构光照明下获得一个场景的二维图像。如果这个场景是一个平面的表面,没有任何三维表面变化,那么在获得的图像中显示的图案与投射的结构光图案相似。然而,当场景中的表面是非平面的,表面的几何形状扭曲了从摄像机中看到的投射的结构光图案。摘要提到的结构光三维表面成像技术的原理是基于投影结构光图案失真的信息提取三维曲面的形状。通过使用各种结构光原理和算法,可以计算出场景中物体的精确三维表面轮廓。

    如图一所示,成像传感器、结构光投射器和物体表面点之间的几何关系可以用三角测量原理来表示: Fig.1 结构光示意图
    公式

    基于三角形的3D成像技术的关键是在二维投影图案下,将单个投影的光斑与所获得的图像区分开来的技术。为此目的提出了各种方案,本教程将提供基于结构光照明的各种方法的概述。

    从更一般的意义上说,主动照明的结构光图案可能包括所有(x,y,z)方向的空间变化,从而成为一个真正的3D结构光投射系统。举例来说,由于相干光干涉,投射光的光程可能变化。然而,大多数结构光的3D表面成像系统都使用2D投影图案。因此,本文仅将“结构光”的讨论限制在二维结构光图案的使用上。

    图2(Meid1)表明了一种结构光三维成像系统。一个任意的目标三维表面被一个结构光投射图像所照亮。在这个特殊的例子中,结构光图案是一个空间变化的多周期色谱。彩色成像传感器在结构光照明下获得目标三维表面的图像。在动画中,我们动态地改变了3D表面的几何形状。 成像传感器捕捉到的图像也有相应的变化。根据图像中所看到的结构光图案的变形,与未变形投影图案相比较,可以准确地计算出目标表面的三维几何形状。

    Fig.2
    目前有许多通过结构光进行表面成像的技术。在这篇综述中,我们首先将所有的技术分类为连续的(多镜头)或单镜头类别,如图3所示,这可以被看作是这项技术的road map。如果目标3D对象是静态的,并且应用程序不会对获取时间施加严格的限制,那么可以使用multiple-shot techniques,可能会导致更可靠和更准确的结果。然而,如果目标在移动,必须使用单镜头技术来获得特定时间实例的3D对象的快照3D表面图像。

    我们进一步将单镜头技术分为三大类:使用连续变化的结构光图案的技术,使用1D编码方案的技术(条带索引),以及使用2D编码方案(网格索引)的技术。每种技术都有它自己的优点和缺点,这取决于具体的应用程序。有可能联合某些技术得到更好的结果,这些细节将在2-5节提供。

    第6节讨论了与3D表面成像系统性能评估相关的问题。

    第7节回顾了相机和投影仪的校准技术,这些技术对任何结构-光三维表面成像系统的成功运行都是至关重要的。

    第8节提供了一些应用程序示例。
    在这篇论文中,要涵盖所有可能的3D表面成像技术是不可能的。

    我们选择了代表性的技术,并以一种教程的方式呈现它们,帮助读者了解整个领域,并理解基本的技术原理和典型的系统特征。


    Fig.3 分类

    2. 顺序投影技术(投影图案序列,非实时)

    2.1 二进制图像和灰度编码

    二进制编码[1-4]使用黑白条纹形成一个投影图案序列,这样,物体表面上的每一点都有一个独特的二进制编码,它与其他不同点的代码不同。一般来说,N个图案可以编码2N条纹(不懂)。图4显示了一个简化的5位投影图案。一旦这个图案被投射到一个静态的场景中,就会有32(2的5次方)个独特的区域,用独特的条纹编码。三维坐标(x,y,z)可以根据每条水平线的32个点计算(基于三角测量原理),从而形成一个完整的3D图像框架。
    二进制编码技术非常可靠,对表面特征不那么敏感,因为只有二进制值存在于所有像素中。然而,为了实现高空间分辨率,需要对大量的顺序图案进行投影。场景中的所有物体都必须保持静态。3D图像采集的整个过程可能比实际的3D应用程序所允许的时间更长。

    Fig. 4 序列二进制编码投影图.png
    2.2 灰度图案(比二进制效率更高)

    为了有效地减少获得高分辨率3D图像所需的图案数量,可以开发灰色级别的图案。例如,一个人可以使用M不同的强度级别(而不是二进制代码中的两个)来产生投影图案的唯一编码。在这种情况下,N个图案可以编码MN个条纹。每条条纹代码都可以被可视化为一个基于N的空间中的一个点,每个维度都有M个不同的值[4,5]。例如,如果N 为3和M是4,那么唯一的代码条纹的总数是64(4的三次方)。对于64条带有二进制代码的条纹,需要6个图案。在设计二进制和灰色编码图案时,有一个优化。
    我们的目标是在所有唯一的码字6中最大化某种类型的距离度量(???)。对于实际的3D成像应用来说,能够区分相邻条纹是很重要的。图5(下)显示了一个示例的灰度编码模式优化的希尔伯特空间[7]。

    Fig. 5 Top,gray_level coding for 3D imaging: N=3,M=3 Bottom, optimized gray-level coding pattern[7].
    2.3 相移
    相移是一种众所周知的三维表面成像的边缘投影方法。将一组正弦图案投射到物体表面(图6),将三个投射的边缘图案的每个像素(x,y)的强度描述为 光强

    其中,I1,I2,I3是三种边缘图案的强度,I0是直流分量(背景),Imod(x,y)是调制信号振幅,φ(x,y)是相位,θ是恒定的相移角。

    相位展开是将包装(相对?)相位转换为绝对相位的过程。相位信息φ(x,y)可以从三种边缘图案的强度中检索: 相位信息
    在φ'(x,y)值(图7)上增加或减去2π的倍数,可以消除arctan函数在2π处的不连续点(图7): 公式

    k是一个表示投影周期的整数。注意,展开只提供相对的展开,并且不能解决绝对相位。三维坐标(x,y,z)可以根据测量的相位φ(x,y)和参考平面的相值的差来计算[9]。图8展示了一个简单的例子.


    Fig. 6 Fig. 7 Fig.8
    2.4 混合方法:相移+灰色编码(解决相对相位的问题)

    正如我们在第2部分中讨论的,相移技术有两个主要问题:展开方法只提供相对的展开,并且不能解决绝对相位。如果两个表面的不连续点大于2 π,那么没有任何基于展开的方法可以正确地解开这两个表面之间的关系。这些问题通常被称为“歧义”,可以通过使用灰色代码投影和相移技术来解决。

    图9显示了在32条纹编码序列中将灰度码投影与相移组合的例子。 格雷码确定相位的绝对范围而没有任何模糊性,而相移提供的子像素分辨率超过了格雷码[10,12]提供的条纹数量。 然而,混合方法需要更多的投影,并且不适合动态物体的3D成像。 Fig. 9
    2.5 光度(Photometrics,须知道3D表面一个点的坐标)

    由Woodham开创的光度测量立体法[13]是一种从阴影变形的变体方法。 它通过使用从同一视点拍摄的同一表面的一系列图像,但是在不同方向的照明下估计局部表面方位[14-16](图10)。 它因此通过使用多个图像来解决由阴影造成的不良形状问题。 光度立体法需要所有光源都是点光源,并且只能估计局部表面方向(梯度p; q)。 它假定3D表面具有连续性,并且需要一个“起点”(它的3D坐标已知的物体表面上的一个点)用于其三维重建算法。


    Fig. 10

    第三节 全框架空间变化颜色图案(请点击)

    相关文章

      网友评论

          本文标题:结构光三维表面成像:一个教程1

          本文链接:https://www.haomeiwen.com/subject/jylzeftx.html