投影光图案的系统、方法和计算机程序产品与流程

文档序号:12513126阅读:374来源:国知局
投影光图案的系统、方法和计算机程序产品与流程

本公开涉及投影光图案的系统、方法和计算机程序产品。

背景

标题为“3D geometric modeling and motion capture using both single and dual imaging”的美国专利序列号8,090.194公开了用于得到图像以使用具有多个不同的可识别特征类型的二维编码光图案来确定静止或运动物体的三维形状的方法和装置。编码光图案被投影在物体上,使得每个可识别特征类型出现在可区别的对极线的预定节段上至多一次。物体的图像被捕获,且反射特征类型连同它们在所捕获的图像中的已知对极线一起被提取。反射特征类型沿着它们的对极线从其上的参考坐标起的位移确定在空间中的相应的三维坐标,且因此物体的形状的3D映射或模型可被得到。

标题为“3D geometric modeling and motion capture using both single and dual imaging”的美国专利序列号8,208,719公开了用于得到图像以使用具有多个不同的可识别特征类型的二维编码光图案来确定静止或运动物体的三维形状的方法和装置。编码光图案被投影在物体上,使得每个可识别特征类型出现在可区别的对极线的预定节段上至多一次。物体的图像被捕获,且反射特征类型连同它们在所捕获的图像中的已知对极线一起被提取。反射特征类型沿着它们的对极线从其上的参考坐标起的位移确定在空间中的相应的三维坐标,且因此物体的形状的3D映射或模型可被得到。

标题为“3D geometric modeling and 3D video content creation”的美国专利序列号8,538,166公开了从2D图像得到数据以便确定出现在2D图像中的物体的3D形状的系统、装置和方法,2D图像具有可区别对极线,该方法包括:(a)提供预先确定的一组类型的特征,产生特征类型,每个特征类型根据独特的二维形式是可区别的;(b)提供包括特征类型的多次出现的编码光图案;(c)将编码光图案投影在物体上,使得在与实质上相同的特征相关的对极线之间的距离小于在两个相邻特征的相应位置之间的距离;(d)捕获具有投影在其上的所投影的编码光图案的物体的2D图像,2D图像包括反射特征类型;以及(e)提取:(i)根据独特的二维形式的反射特征类型;以及(ii)在2D图像中的相应的对极线上的反射特征类型的位置。

在P.Vuylsteke和A.Oosterlinck的文章“Range image acquisition with a single binary-encoded light pattern”(IEEE Transactions on Pattern Analysis and Machine Intelligence(PAMI),第12卷,2月号,148-164页,1990年2月)中,讨论了在基于具有周期性结构化照明的三角测量的范围图像获取系统中的走向识别的问题。基于包含识别在摄像机图像中可见的单独走向所需的所有信息的单个固定二进制编码照明图案来提出编码方案。由光图案指示的每个采样点借助于二进制签名而变得可识别,二进制签名在它的最近邻居当中在本地被共享。所应用的代码从伪噪声序列得到,且它被优化,使得它可在最大程度上是识别容错的。提出基于这个编码原理的原型测量系统。也提出使用测量系统得到的实验结果。

在J.Batlle、E.Mouaddib和J.Salvi的文章“Recent progress in coded structured light as a technique to solve the correspondence problem:a survey”(Pattern Recognition,第31卷,7月号,963-982页,1998年7月31日)中,作者提出在该文章出版之前的几年中使用的涉及用于得到3D信息的编码结构光方法的重要技术的调查。

在J.Salvi、J.Pages和J.Batile的文章“Pattern codification strategies in structured light systems”(Pattern Recognition,第37卷,4月号,827-849页,2004年4月)中,有用于恢复物体的表面的编码结构光的使用的讨论。这种技术基于投影光图案和从一个或多个观察点观看所照亮的场景。因为图案被编码,在图像点和所投影的图案的点之间的相应性可容易被找到。编码点可以成三角形且3D信息被得到。作者提出现有技术的概述以及结构光传感器的图案的新的和确定的分类。作者实现了在这个领域中的一组代表性技术并提出一些比较结果。还讨论了不同图案的优点和约束。

在J.Salvi、S.Fernandez、T.Pribanic和X.Llado的文章“A state of the art in structured light patterns for surface profilometry”(Pattern Recognition,第43卷,8月号,2666-2680页,2010年8月)中,讨论了使用编码结构光的形状重构。在校准投影仪-摄像机对之后,光图案被投影到场景上并由摄像机成像。在所投影和恢复的图案之间的相应性被找到并用于提取3D表面信息。这个论文提出现有技术的概述和分类。这些技术中的一些被实现并比较,得到定性和定量结果。讨论了不同图案及其可能性的优点和缺点。

标题为“3d geometric modeling and 3d video content creation”的国际专利申请序列号WO2008/062407公开了用于得到图像以使用具有多个不同的可识别特征类型的二维编码光图案来确定静止或运动物体的三维形状的方法和装置。编码光图案被投影在物体上,使得每个可识别特征类型出现在可区别的对极线的预定节段上至多一次。物体的图像被捕获,且反射特征类型连同它们在所捕获的图像中的已知对极线一起被提取。在2D图像中的所识别的特征类型的位置根据三角测量映射相应于在空间中的3D坐标。因此,得到所成像的物体的3D映射或模型。

概述

根据本发明的方面,公开了一种系统,其包括可操作来投影二维编码图案以提供二维编码图案的第一投影和二维编码图案的第二投影的投影仪,其中第一投影和第二投影相对于彼此刚性地移动或以另外方式偏移,使得来自物体的与第一投影相关的第一反射和来自物体的与第二投影相关的第二反射被提供,以及其中相应于第一反射的信号和相应于第二反射的信号被共同处理。应理解,术语“刚性移动”或类似术语指偏移,且因此这些术语可在这个申请中被考虑为等效的。

下面公开的本发明的另外的可选方面与系统的另外的可选特征有关。

根据本发明的另一方面,第一投影和第二投影中的每个可包括多个特征类型,其中每个特征类型由特征元素的不同构型形成,其中投影仪可操作来投影第一投影和第二投影,使得成对的重叠的特征类型被接收,其中每对中的一个特征类型是来自所述第一投影的特征类型,以及该对中的另一特征类型是来自所述第二投影的特征类型。

根据本发明的另一方面,在一对重叠的特征类型中,来自所述第一投影的特征类型的特征元素可具有与来自所述第二投影的特征类型的相应特征元素的预定关系。

根据本发明的另一方面,来自所述第一投影的特征类型的特征元素可具有与来自所述第二投影的特征类型的相应特征元素的编码状态不同的编码状态。

根据本发明的另一方面,来自所述第一投影的特征类型的特征元素和来自所述第二投影的特征类型的相应特征元素可具有相反的编码状态。

根据本发明的另一方面,投影仪可包括透明度掩模以提供二维编码光图案。

根据本发明的另一方面,系统还可包括可操作来在至少包括第一位置和第二位置的多个位置之间移动透明度掩模的透明度掩模移动模块,其中投影仪配置成当透明度掩模在第一位置上时在物体上投影二维编码光图案的第一投影,并当透明度掩模在第二位置上时在物体上投影二维编码光图案的第二投影。

根据本发明的另一方面,投影仪可包括可操作来使入射光衍射以形成二维编码光图案的衍射光学元件。

根据本发明的另一方面,二维编码光图案可使用离散编码来被编码。

根据本发明的另一方面,投影仪可包括:包括激光阵列的光源,激光阵列包括多个单独的发射器,每个单独的发射器能够产生激光束;其中系统包括投影仪控制单元,其配置成控制激光阵列的发射器的不同子组的启动,从而在发射器的第一子组被启动时导致第一投影的投影,并在发射器的第二子组被启动时导致第二投影的投影。

根据本发明的另一方面,投影仪可包括:(a)可操作来使一个或多个入射激光束衍射以提供结构光的衍射光学元件;以及(b)布置在光源和衍射光学元件之间的光学组件,光学组件可操作来转换激光束以提供多个经转换的光束并将多个经转换的光束引导到衍射光学元件上。

根据本发明的另一方面,二维编码光图案可以是强度编码光图案,其包括:载波位置集合,其中亮和暗强度产生载波信号;以及有效载荷位置集合,其中亮和暗强度产生空间编码信号;其中第一投影和第二投影相对于彼此刚性地移动,使得第一投影的载波位置至少部分地与第二投影的载波位置重叠,以及使得第一投影的有效载荷位置至少部分地与第二投影的有效载荷位置重叠;其中亮和暗强度在载波位置和有效载荷位置中的至少一个上在第一投影和第二投影的重叠位置上反转。

根据本发明的另一方面,系统还可包括适合于捕获第一图像和第二图像的成像感测单元;以及配置成处理第一图像和第二图像以确定测距参数的处理单元。

根据本发明的另一方面,处理单元可配置成:从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及基于多个结果值来确定物体的测距参数。

根据本发明的另一方面,预定数学运算选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

根据本发明的另一方面,处理单元可配置成:(i)基于多个结果值来计算下列项中的至少一个的信息:(a)第一投影的载波元素集合,以及(b)第一投影的有效载荷元素集合,其中所计算的信息具有选自由位置信息和颜色信息组成的一组数据类型的数据类型;以及(ii)基于所计算的信息来确定物体的测距参数。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动不平行于二维编码光图案的任何编码方向。

根据本发明的另一方面,第一投影和第二投影中的每个包括多个特征类型,其中每个特征类型由来自特征元素第一集合和来自特征元素第二集合的特征元素的独特构型形成;以及其中在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

根据本发明的另一方面,每个特征类型由来自特征元素第一集合、来自特征元素第二集合以及来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的独特构型形成。

根据本发明的另一方面,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。

根据本发明的另一方面,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,特征元素的反转被包括在第二投影的特征类型中。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动可提供在多对的每对中的特征类型中的特征元素当中的期望关系。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动使来自特征元素第一集合的特征元素作为在第二投影中的反转的特征元素而出现。

根据本发明的方面,公开了用于计算物体的测距信息的方法,该方法包括:(a)提供二维编码光图案;(b)在物体上投影二维编码光图案的第一投影和二维编码光图案的第二投影,其中第一投影和第二投影相对于彼此刚性地移动;(c)收集从物体反射的光以提供:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像;以及(d)处理第一图像和第二图像以确定物体的测距参数。

下面公开与该方法有关的本发明的另外的可选方面。

根据本发明的另一方面,二维编码光图案可使用离散编码来被编码。

根据本发明的另一方面,处理可包括:从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及基于多个结果值来确定物体的测距参数。

根据本发明的另一方面,预定数学运算选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

根据本发明的另一方面,处理可包括:基于多个结果值来计算下列项中的至少一个的高精度信息:(a)第一投影的载波元素集合,以及(b)第一投影的有效载荷元素集合,其中高精度信息具有选自由高精度位置信息和高精度颜色信息组成的一组数据类型的数据类型;以及基于高精度信息来确定物体的测距参数。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动不平行于二维编码光图案的任何编码方向。

根据本发明的另一方面,第一投影和第二投影中的每个包括多个特征类型,其中每个特征类型由来自特征元素第一集合和来自特征元素第二集合的特征元素的不同构型形成;以及其中在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

根据本发明的另一方面,每个特征类型由来自特征元素第一集合、来自特征元素第二集合以及来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的不同构型形成。

根据本发明的另一方面,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。

根据本发明的另一方面,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,该特征元素的反转被包括在第二投影的特征类型中。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动提供在多对的每对中的特征类型中的特征元素当中的期望关系。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动使来自特征元素第一集合的特征元素作为在第二投影中的反转的特征元素而出现。

根据本发明的方面,公开了配置成得到包括至少一个物体的场景的距离数据的装置,所述装置包括:通信接口,其可操作来接收:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像,其中第一投影和第二投影相对于彼此刚性地移动;以及处理单元,其配置成处理第一图像和第二图像以确定物体的测距参数。

下面公开与该装置有关的本发明的另外的可选方面。

根据本发明的另一方面,装置还可包括可配置成捕获第一图像和第二图像的成像感测单元。

根据本发明的另一方面,二维编码光图案使用离散编码来被编码。

根据本发明的另一方面,二维编码光图案可以是强度编码光图案,其包括:载波位置集合,其中亮和暗强度产生载波信号;以及有效载荷位置集合,其中亮和暗强度产生空间编码信号;其中第一投影和第二投影相对于彼此刚性地移动,使得第一投影的载波位置至少部分地与第二投影的载波位置重叠,以及使得第一投影的有效载荷位置至少部分地与第二投影的有效载荷位置重叠;其中亮和暗强度在载波位置和有效载荷位置中的至少一个上在第一投影和第二投影的重叠位置上反转。

根据本发明的另一方面,处理单元可配置成:从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及基于多个结果值来确定物体的测距参数。

根据本发明的另一方面,预定数学运算选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

根据本发明的另一方面,处理单元可配置成:(i)基于多个结果值来计算下列项中的至少一个的高精度信息:(a)第一投影的载波元素集合,以及(b)第一投影的有效载荷元素集合,其中高精度信息具有选自由高精度位置信息和高精度颜色信息组成的一组数据类型的数据类型;以及基于高精度信息来确定物体的测距参数。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动不平行于二维编码光图案的任何编码方向。

根据本发明的另一方面,第一投影和第二投影中的每个包括多个特征类型,其中每个特征类型由来自特征元素第一集合和来自特征元素第二集合的特征元素的不同构型形成;以及其中在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

根据本发明的另一方面,每个特征类型由来自特征元素第一集合、来自特征元素第二集合以及来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的不同构型形成。

根据本发明的另一方面,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。

根据本发明的另一方面,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,该特征元素的反转被包括在第二投影的特征类型中。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动可提供在多对的每对中的特征类型中的特征元素当中的期望关系。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动使来自特征元素第一集合的特征元素作为在第二投影中的反转的特征元素而出现。

根据本发明的方面,公开了用于计算物体的测距信息的方法,该方法包括:收集从物体反射的光以提供:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像,其中第一投影和第二投影相对于彼此刚性地移动;以及处理第一图像和第二图像以确定物体的测距参数。

下面公开与该方法有关的本发明的另外的可选方面。

根据本发明的另一方面,二维编码光图案可使用离散编码来被编码。

根据本发明的另一方面,处理可包括:从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及基于多个结果值来确定物体的测距参数。

根据本发明的另一方面,预定数学运算选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

根据本发明的另一方面,处理可包括:(i)基于多个结果值来计算下列项中的至少一个的高精度信息:(a)第一投影的载波元素集合,以及(b)第一投影的有效载荷元素集合,其中高精度信息具有选自由高精度位置信息和高精度颜色信息组成的一组数据类型的数据类型;以及(ii)基于高精度信息来确定物体的测距参数。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动不平行于二维编码光图案的任何编码方向。

根据本发明的另一方面,第一投影和第二投影中的每个包括多个特征类型,其中每个特征类型由来自特征元素第一集合和来自特征元素第二集合的特征元素的不同构型形成;以及其中在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

根据本发明的另一方面,每个特征类型由来自特征元素第一集合、来自特征元素第二集合以及来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的不同构型形成。

根据本发明的另一方面,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。

根据本发明的另一方面,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,该特征元素的反转被包括在第二投影的特征类型中。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动提供在多对的每对中的特征类型中的特征元素当中的期望关系。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动使来自特征元素第一集合的特征元素作为在第二投影中的反转的特征元素而出现。

根据本发明的方面,公开了由机器可读的程序存储设备,其有形地体现由机器可执行的指令的程序以执行用于计算物体的测距信息的方法,该方法包括步骤:(a)收集从物体反射的光以提供:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像;以及(b)处理第一图像和第二图像以确定物体的测距参数。

下面公开与该程序存储设备有关的本发明的另外的可选方面。

根据本发明的另一方面,二维编码光图案可使用离散编码来被编码。

根据本发明的另一方面,处理可包括:从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及基于多个结果值来确定物体的测距参数。

根据本发明的另一方面,预定数学运算选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

根据本发明的另一方面,处理包括:基于多个结果值来计算下列项中的至少一个的高精度信息:(a)第一投影的载波元素集合,以及(b)第一投影的有效载荷元素集合,其中高精度信息具有选自由高精度位置信息和高精度颜色信息组成的一组数据类型的数据类型;以及基于高精度信息来确定物体的测距参数。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动不平行于二维编码光图案的任何编码方向。

根据本发明的另一方面,第一投影和第二投影中的每个包括多个特征类型,其中每个特征类型由来自特征元素第一集合和来自特征元素第二集合的特征元素的不同构型形成;以及其中在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

根据本发明的另一方面,每个特征类型由来自特征元素第一集合、来自特征元素第二集合以及来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的不同构型形成。

根据本发明的另一方面,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。

根据本发明的另一方面,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,该特征元素的反转被包括在第二投影的特征类型中。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动提供在多对的每对中的特征类型中的特征元素当中的期望关系。

根据本发明的另一方面,在第一投影和第二投影之间的刚性移动使来自特征元素第一集合的特征元素作为在第二投影中的反转的特征元素而出现。

根据本发明的另一方面,指令的程序还包括由机器可执行的指令以执行:控制二维编码光图案的第一投影和二维编码光图案的第二投影到物体上的投影。

根据本发明的另一方面,指令的程序还包括由机器可执行的指令以执行:控制从物体反射的光的收集以提供第一图像和第二图像。

各种技术、组件和工艺可用于根据本发明的实施方式来实现刚性移动或偏移。美国专利申请号62/036,158(本申请从其要求优先权)教导这样的偏移方法和技术,且特此通过引用被全部并入。

附图的简要描述

为了理解本发明并看到它可实际上如何被执行,现在将参考附图仅作为非限制性例子描述实施方式,其中:

图1A、1B和1C是示出根据当前公开的主题的例子的系统的例子的功能方框图;

图2是示出根据当前公开的主题的例子的系统的例子的功能方框图;

图3和4示出根据当前公开的主题的例子的在包括系统和物体的环境内的系统的例子;

图5-38是在本文公开和主张的系统和方法中的可用于刚性地移动的投影的二维编码光图案的例子;

图39示出根据当前公开的主题的例子的被投影到物体(在这个实例中是未表示的魔方)上的图32的二维编码光图案的几个投影;

图40A到40H例示根据当前公开的主题的例子的可基于从图39获取的细节和上采样对相同图案的两个投影使用的一些过程;

图41A到41D例示根据当前公开的主题的例子的可基于从图39获取的细节和上采样对图案的投影之一以及另一非图案化照明使用的一些过程;

图42是示出根据当前公开的主题的例子的系统的例子的功能方框图;

图43是示出根据当前公开的主题的例子的系统的例子的功能方框图;

图44是示出根据当前公开的主题的例子的用于计算物体的测距信息的方法的例子的流程图;

图45示出根据当前公开的主题的例子的在物体上投影二维编码光图案的第一投影和第二投影的阶段的子阶段;

图46示出根据当前公开的主题的例子的在物体上投影二维编码光图案的第一投影和第二投影的阶段的子阶段;

图47示出根据当前公开的主题的例子的收集从物体反射的光以提供第一图像和第二图像的阶段的子阶段;

图48示出根据当前公开的主题的例子的处理第一图像和第二图像以确定物体的测距参数的阶段的可选子阶段;

图49示出根据当前公开的主题的例子的处理第一图像和第二图像以确定物体的测距参数的阶段的可选子阶段;

图50是示出根据当前公开的主题的例子的处理第一图像和第二图像以确定物体的测距参数的阶段的可选子阶段的例子的流程图;

图51是示出根据当前公开的主题的例子的光学系统的例子的功能方框图;

图52是示出根据当前公开的主题的例子的包括对3D捕获应用特征的远程模式的支持的根据当前公开的主题的例子的系统的方框图图示;

图53提供根据当前公开的主题的例子的可被投影到物体上的示例性空间周期性2D二维编码光图案;

图54包括根据当前公开的主题的例子的在根据对极分离原理投影之后的反射图案的示意性表示;

图55包括示出根据当前公开的主题的例子的包括优选的编码图案P1的示例性特征类型的图示;

图56A、56B和56C是示出根据当前公开的主题的例子的配置成得到包括至少一个物体的场景的距离数据的装置3000的例子的功能方框图;

图57A和57B是示出根据当前公开的主题的例子的用于计算物体的测距信息的方法的例子的流程图;

图58示出根据当前公开的主题的例子的第一投影和第二投影的重叠;以及

图59示出根据当前公开的主题的例子的特征类型的例子。

将认识到,为了说明的简单和清楚,在附图中示出的元件并不一定按比例绘制。例如,为了清楚,一些元件的尺寸可相对于其它元件放大。此外,在被考虑为适当的场合,参考数字可在附图当中重复以指示相应或相似的元件。

实施方式的详细描述

在下面的详细描述中,阐述了很多特定的细节,以便提供对本发明的彻底理解。然而本领域中的技术人员将理解,本发明可在没有这些特定细节的情况下被实施。在其它例子中,没有详细描述公知的方法、过程和部件以便不使本发明模糊。

在所阐述的附图和描述中,相同的参考数字指示不同的实施方式或配置所共有的那些部件。

除非另有规定,在本文使用的所有技术和科学术语具有与本发明所属的领域中的普通技术人员通常理解的相同的含义。在本文提供的材料、方法和例子仅仅是例证性的且并没有被规定为限制性的。除了在过程本身中必要或固有的程度上以外,没有在本公开中描述的方法和过程的步骤或阶段的特定顺序被预期或暗示。在很多情况下,过程步骤的顺序可改变,而不改变所述方法的目的或效果。

除非另外特别规定,如从下面的讨论中明显的,应认识到,在整个说明书中,利用术语例如“处理”、“计算(calculating)”、“计算(computing)”、“确定”、“选择”、“定义”等的讨论包括将数据操纵和/或转换成其它数据的计算机的行动和/或过程,所述数据被表示为物理量例如电子量的和/或所述数据表示物理对象。术语“计算机”、“处理器”和“控制器”应被广泛地解释为涵盖具有数据处理能力的任何类型的电子设备、部件或单元,作为非限制性例子包括个人计算机、服务器、计算系统、通信设备、处理器(例如数字信号处理器(DSP)和可能具有嵌入式存储器)、微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)、任何其它电子计算设备和/或其任何组合。

根据本文的教导的操作可由为了期望目的而特别构造的计算机或由为了期望目的由存储在计算机可读存储介质中的计算机程序特别配置的通用计算机执行。

如在本文使用的,短语“例如(for example)”、“例如(such as)”、“例如(for instance)”及其变形描述当前公开的主题的非限制性实施方式。在说明书中对“一种情况”、“一些情况”、“其它情况”或其变形的提及意味着结合实施方式所述的特定特征、结构或特性被包括在当前公开的主题的至少一个实施方式中。因此,短语“一种情况”、“一些情况”、“其它情况”或其变形的出现并不一定指相同的实施方式。

应认识到,为了清楚起见在单独的实施方式的上下文中描述的当前公开的主题的某些特征也可在单个实施方式中组合地被提供。相反,为了简洁起见在单个实施方式的上下文中描述的当前公开的主题的各种特征也可单独地或以任何适当的子组合地被提供。

在当前公开的主题的实施方式中,在附图中示出的一个或多个阶段可以按不同的顺序被执行和/或一组或多组阶段可同时被执行,反之亦然。附图示出根据当前公开的主题的实施方式的系统架构的一般示意图。在附图中的每个模块可由执行如在本文定义和解释的功能的软件、硬件和/或固件的任何组合构成。在附图中的模块可集中在一个位置上或分散在多于一个位置上。

应注意,当前公开的主题的一些例子在应用中不限于在下面的描述中阐述或在附图中示出的结构的细节和部件的布置。本发明可能能够有其它实施方式或以各种方式被实施或实现。此外应理解,在本文使用的短语和术语是为了描述的目的且不应被视为限制性的。

在这个文档中,未在附图的范围内描述的且用在前面的附图中描述的数字标记的附图的元件具有与在前面的附图中相同的使用和描述。类似地,在正文中由未在正文所描述的附图中出现的数字识别的元件具有与在它被描述的前面的附图中相同的使用和描述。

在本文档中的附图可以不按任何比例。不同的附图可使用不同的比例,且不同的比例甚至在同一附图中也可被使用,例如同一物体的不同视图的不同比例或两个相邻物体的不同比例。

图1A、1B和1C是示出根据当前公开的主题的例子的系统200的例子的功能方框图。系统200可以是电光的,但这并不一定是如此。系统200可用于确定由系统200成像的至少一个物体300的测距参数。下面讨论系统200的关键部件和操作模式的描述。

通常,作为介绍,系统200包括可操作来投影编码图案以提供编码图案的第一投影和编码图案的第二投影的投影仪210,其中第一投影和第二投影相对于彼此刚性地移动。

投影仪210可操作来投影第一投影和第二投影,使得来自物体的与第一投影相关的第一反射和来自物体的与第二投影相关的第二反射被提供,以及其中相应于第一反射的信号和相应于第二反射的信号可被共同处理。

第一反射是从物体(例如物体300)的第一投影的光的反射。第一反射可以只包括第一投影的一些光,例如因为第一投影的一些光可以根本不到达物体,以及射到物体的一些光可被物体吸收或穿过物体被透射,且因此不反射回。注意,不是第一反射的所有光都必须到达系统200(且特别是成像感测单元230)。因此,当第一反射的利用被讨论时,系统200可能只利用第一反射的光的部分。术语“第二反射”以术语“第一反射”类的方式被使用,但指第二投影的反射。

相应于第一反射的信号是由系统200的成像感测单元230捕获的信号,其作为第一反射的光的结果。相应于第二反射的信号是由成像感测单元230捕获的信号,其作为第二反射的光的结果。注意,由成像感测单元230在任何时间捕获的总信号可以是这些信号中的一个或多个的且可能也与其它信号(例如环境光)的组合。

相应于第一反射的信号和相应于第二反射的信号的共同处理与包括这两个信号(同时或在不同的时间)的由成像感测单元收集的信号的处理有关,以提供有用的信息。注意,共同处理可包括单独地处理每个信号(例如用于减小噪声)以及仅仅以后一起处理结果,但也可包括同时处理这两个信号(信号是否同时被收集)。

相应于第一反射的信号和相应于第二反射的信号可被共同处理以确定测距参数(例如物体300的测距参数),如下面更详细讨论的。也可在共同处理中确定其它参数。

投影仪210可以因此可选地使成像感测单元(系统200的外部单元1230和/或内部部件、单元230例如摄像机)能够捕获第一图像,其中物体300以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像;使处理单元(例如外部单元1240和/或系统200的内部部件、单元240)能够处理第一图像和第二图像以确定测距参数(例如物体300的测距参数)。对物体确定的测距参数可以例如是所成像的物体的不同部分的深度值(例如离摄像机的距离)。

如下面更详细讨论的,二维编码光图案可用作编码光图案。

物体300的测距参数的确定因此由投影仪210实现,投影仪210在一个或多个物体300上投影单个编码光图案的两个或多个非重合投影。可选地,投影仪210可由投影仪控制单元220控制来在一个或多个物体300上投影单个编码光图案的这样的两个或多个非重合投影。

注意,将光图案投影到物体上、捕获所照亮的物体的图像并处理所捕获的图像以确定测距信息的系统是在本领域中已知的,例如在被转让给本申请的受让人的前面的专利和专利申请中讨论的系统。

此外,被转让给本申请的受让人的标题为“3D geometric modeling and 3D video content creation”的美国专利序列号8,538,166公开了第一光图案和第二光图案的利用,每个光图案被投影到一个或多个物体上,当第一和第二光图案中的每个投影到这些一个或多个物体上时捕获图像数据,并利用从这两个不同的光图案的投影获取的图像数据用于确定物体的测距参数。

在本公开中公开和主张的系统和方法使用单个编码光图案到一个或多个物体上的两个或多个投影。两个或多个投影相对于彼此刚性地移动。当单个光图案在相对于彼此移动的不同投影中投影到物体(或更一般地,场景)上时,物体被不同地照亮。在光编码是投影光的不同色调的结果(例如双色调投影)的一些例子中,由图案的刚性移动的投影从物体(或场景)的不同照明产生的在物体上的不同投影的反射部分可包括在投影之一的反射中与在另一投影的反射中的相同区域的外观比较看起来更暗的区域,且一些点/区域可以在这个投影中比在另一投影中更亮。

如下面更详细讨论的,利用在刚性移动的投影中的单个光图案相对于利用单个光图案的单个投影或利用不同光图案的几个投影在某些情况或条件下具有一些优点或益处。

术语“编码光图案”(有时也被称为“结构光图案”和“编码结构光图案”)在本领域中被完全接受,且应以非限制性方式被解释以包括被设计成使得码字被分配到图案的位置集合(例如像素邻居)的图案。每个编码位置(例如每个编码像素邻居)具有它自己的码字,所以有从码字到在图案中的位置的相应坐标(例如像素邻居)的直接映射。使用下列项中的一个或多个的任何组合将码字嵌在编码图案中:灰度级、颜色、颜色水平、极化和几何形状。

如前面提到的,在下面讨论的一些例子中,使用二维编码光图案。然而注意,在这些例子的各种变形中,可在可适用的任何场合替代地使用其它编码光图案。虽然这样的变形并不总是全部被讨论,为了易读性和简洁的原因,这样的变形在当前公开的主题的范围内。例如,可使用多维编码光图案,其中可通过使用多种颜色、不同的极化等来实现额外的编码维度。

可选地,第一投影和第二投影(都由投影仪210投影)中的每个包括多个特征类型,其中每个特征类型由特征元素的不同构型形成。在图59中提供特征类型的几个非限制性例子。

可选地,投影仪210可操作来投影第一投影和第二投影,使得成对的重叠特征类型被接收到,所以每对中的一个特征类型是来自所述第一投影的特征类型,而该对中的另一特征类型是来自所述第二投影的特征类型。这可被展示在图58的重叠图像33中,如果投影11和22是完全的特征类型例如在图59中例示的特征类型95和96的投影。

可选地,在一对重叠的特征类型中,来自第一投影的特征类型的特征元素具有与来自第二投影的特征类型的相应特征元素的预定关系。例如,来自第一投影的特征类型的特征元素可具有与来自所述第二投影的特征类型的相应特征元素的编码状态不同的编码状态。例如,来自所述第一投影的特征类型的特征元素和来自所述第二投影的特征类型的相应特征元素具有反转的编码状态。下面在本文提供编码状态的例子。

可使用各种技术以很多不同的方式实现投影仪210,下面提供其中一些技术的例子。作为例子,如图2所示的投影仪210包括:(a)光源212,其能够产生传播到图案化光学器件214的至少一个光束,以及(b)图案化光学器件24,其能够图案化至少一个光束以提供编码光图案(例如二维编码光图案)。例如,光源212可以是能够产生传播到图案化光学器件214的多个激光束的激光阵列(包括多个单独的激光发射器的阵列)。下面更详细讨论不同类型的图案化光学器件(例如透明度掩模、衍射光学元件等)的例子。

系统200还可包括(例如作为投影仪210的部分)二维编码光图案的图案源。图案源可以是例如图案化光学器件214的部分。例如,图案源可被包括在系统200中作为在透明度掩模(也被称为“光掩模”)上刻的图案或作为集成到衍射光学元件(DOE)内的图案,衍射光学元件使入射光衍射以提供二维编码光图案。可选地,投影仪210可包括透明度掩模以提供二维编码光图案。可选地,投影仪210可包括可操作来使入射光衍射以形成二维编码光图案的衍射光学元件。

例如,图案源可在透明度掩模上实现(例如作为转换入射光以提供二维编码光图案的刻划的透明图案)。例如,系统200可包括可操作来使入射光衍射以形成二维编码光图案的衍射光学元件。

如在图1C中例示的,系统200还可包括投影仪控制单元220,其配置成控制投影仪210用于在物体300上投影二维编码光图案的第一投影和二维编码光图案的第二投影,其中第一投影和第二投影相对于彼此刚性地移动。

注意,可以用不同的方式实现投影仪控制单元220,包括仅硬件实现或硬件、软件和固件中的一个或多个的任何组合。可选的投影仪控制单元220可集成到投影仪210内(例如作为在投影仪210的外壳内的芯片)或在它外部。在投影控制单元220和投影仪210之间的连接可以是有线连接、无线连接或在本领域中使用的任何其它连接。

图3和4示出根据当前公开的主题的例子的在包括系统200和物体300"(其测距参数将由系统200确定)的环境内的系统200的例子。在所示例子中,投影仪210在物体300"上(以及在本例中在包括由399标识的墙壁的背景场景上)投影二维编码光图案的第一投影(在图3中被标示为“第一投影11”)和二维编码光图案的第二投影(在图4中被标示为“第一投影22”)。

第一投影11和第二投影22可在不同的时间投影到场景上(例如图3示出在时间T1的环境,以及图4示出在比T1迟的时间T2的环境)。如可看到的,二维编码光图案(其在这种情况下是包括交替的兽形语义图的二维编码光图案)的第一投影和第二投影相对于彼此刚性地移动。如也在图3和4中展示的,所投影的编码光图案的不同部分按不同的比例因子被缩放,取决于所照亮的物体的距离,图案的不同部分从系统200落在该物体上。此外,一个物体(或物体的某个区域)可将阴影投射在另一物体上(或在同一物体的另一区域上),从而从系统200隐藏另一物体的一部分(或全部)。

术语“刚性移动”指各种刚性几何变换,其包括旋转、平移、镜像反射及其组合。

二维编码光图案的第二投影相对于二维编码光图案的第一投影刚性地移动。相应地,当这些投影被投影到垂直投影平面——其为垂直于第一投影的投影方向的平面——上时,在垂直投影平面上的第二投影中的二维编码光图案的任两个特征之间的距离实际上等于在垂直投影平面上的第一投影中的这两个特征之间的距离。

虽然在理论上在二维编码光图案的任两个特征之间的距离在这两个投影之间将保持相同,在本领域中具有普通技能的人将认识到,在当前讨论的范围内,在某些实际限制内的一些变化可被容忍而不明显影响所公开的系统和方法的功能。

例如,二维编码光图案可具有在构成码字的不同特征之间的最小解释距离DMI。例如,这样的最小解释距离可以是在二维编码光图案的任何相邻载波位置之间的距离和/或在二维编码光图案的任何相邻有效载荷位置之间的距离(下面讨论的术语)。注意,载波位置可周期性被分布,但这不一定是如此。同样,有效载荷位置可周期性被分布,但这不一定是如此。

例如,这样的最小解释距离可以是在二维编码光图案的任何相邻第一特征元素之间的距离和/或在二维编码光图案的任何相邻第二特征元素之间的距离(下面讨论的术语)。

在前面提到的垂直投影平面上的二维编码光图案的两个不同投影中的任两个特征F1和F2的位置之间的距离之间的差异可因此对第一投影被写为而对第二投影被写为在这两个投影之间的刚性移动的可接受的容限可以是例如,如果对于二维编码光图案的所有(或几乎所有)对的任两个特征F1和F2,在这两个投影中的这些特征的距离之间的差异将满足的条件。因此,二维编码光图案的两个投影可被考虑为相对于彼此刚性地移动,如果例如对于在图案中的所有(或几乎所有)特征对如果对于在图案中的所有(或几乎所有)特征m<0.1。

如前面提到的,术语“刚性移动”可与各种几何变换——包括旋转、平移、镜像反射及其组合——有关。下面讨论对只由平移组成的刚性移动相关的专用情况。

二维编码光图案的第二投影可相对于二维编码光图案的第一投影平移地移动,使得当这些投影被投影到垂直投影平面上时,在第二投影中的二维编码光图案的每个特征位于垂直投影平面上相对于在二维编码光图案的第一投影中的同一特征的投影平面上的位置远离一段移动距离的位置处(以及在移动方向上)。

虽然在理论上,在二维编码光图案中的所有特征的移动距离将是相同的,不同特征的移动方向也相同,在本领域中具有普通技能的人将认识到,在当前讨论的范围内,二维编码光图案的不同特征的移动距离和移动方向可在某些实际限制内改变而不明显影响所公开的系统和方法的运行。

例如,在前面提到的垂直投影平面中的平均移动矢量可被定义在第一投影和第二投影之间。在前面提到的垂直投影平面上的二维编码光图案的任何给定特征F的两个不同投影中的位置之间的距离可因此被写为其中是离在特征F的两个投影之间的距离的平均值的偏差。因此,二维编码光图案的两个投影的移动可被设计成使得例如对于在图案中的所有特征(或所有特征的大部分或n%等),此外作为例子,图案的移动可被设计成使得对于在图案的所有特征(或所有特征的大部分或n%等),m<0.1。

注意,虽然可使用有效载荷元素的位置(如上面讨论的,与“有效载荷位置”有关),更一般地,可使用“有效载荷元素”或“有效载荷特征元素”。在下面的讨论中,每当“有效载荷位置”被提到时,应注意,相同的讨论也涉及扩展的变形,其中“有效载荷元素”或“有效载荷特征元素”替代地被提到。

注意,虽然可使用载波元素的位置(如上面讨论的,与“载波位置”有关),更一般地,可使用“载波元素”或“载波特征元素”。在下面的讨论中,每当“载波位置”被提到时,应注意,相同的讨论也涉及扩展的变形,其中“载波元素”或“载波特征元素”替代地被提到。

返回到系统200本身,如前面讨论的,投影仪210配置成在物体300上投影二维编码光图案的至少两个投影——第一投影和第二投影,其相对于彼此移动。注意,在系统200的一些可能实现中,这两个投影可同时被投影(例如使用由投影仪210的不同波长照明,其中第一投影的光在一个或多个波长中投影,所述波长不同于第二投影的光被投影的一个或多个波长),但这不一定是如此。在系统200的一些可能实现中,两个投影仪在时间上不重合,但更确切地在不同的时间被投影。

在投影之间的时间差可以是最小的。在一个例子中,第二投影在紧接着在用于投影第一投影的脉冲之后的脉冲处被发射。在另外的例子中,每个脉冲出现在不同的帧处。可在用于提供第一投影的脉冲的时间和用于提供第二投影的脉冲的时间之间执行移动操作。在又一些另外的例子中,用于提供第一投影的脉冲被定时到第一帧的末尾,以及用于提供第二投影的脉冲被定时到紧接着在第一帧后面的第二帧的开头。某个时间间隙可被保持在第一和第二脉冲之间以使移动操作能够发生。将认识到,在后一情形中,图案的(第一和第二)投影的限制因素可以是例如所投影的图案的图像的读出或处理。在另一例子中,限制因素可以是移动操作的持续时间。其它因素也可影响两个(或多个)投影的定时。在当前公开的主题的某些例子中也设想更复杂的投影方案,例如可以在每第n个第一投影时提供第二投影。因此例如,每第五次提供第一投影时可提供第二投影。可为多于两个投影设计类似和各种其它投影方案。

由投影仪210的投影可包括例如控制光源212和/或控制图案化光学器件214用于投影二维编码光图案的两个不同投影。下面更详细讨论这两个选项的不同例子。如果投影仪控制单元被实现,则由投影仪控制单元220的投影的控制可包括例如控制光源212和/或控制图案化光学器件214。

系统200还可包括成像感测单元230,其适合于提供第一图像,其中物体300以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体300以投影在其上的二维编码光图案的第二投影被成像。第一和第二图像包括从二维编码光图案被投影于的物体的反射。注意,如果外部成像感测单元1230被使用(除了或代替内部成像感测单元230),则成像感测单元230的所有可选的特征、能力、结构和变形也可适用于成像感测单元1230,加以必要的变动。进一步注意到,术语“第一和第二图像”在本文分别参考第一和第二投影作为例证被使用,以及每个投影的任何数量的图像可被使用且第一投影和第二投影的图像的序列可具有任何顺序。

注意,如果成像感测单元230产生多于一个图像,其中物体300以投影在其上的二维编码光图案的第一投影被成像(例如在第一投影的照明下拍摄物体的视频),则这组图像可被处理为第一图像。同样,如果成像感测单元230产生多于一个图像,其中物体300以投影在其上的二维编码光图案的第二投影被成像(例如在第二投影的照明下拍摄物体的视频),则这组图像可被处理为第二图像。此外,来自第一图像和第二图像的每个图像的数据不一定被保存为图像文件,并可在任何其它形式中被产生、传输或处理(例如以逐像素顺序的强度信息的实时传输)。

成像感测单元230可包括一个或多个图像传感器,例如电荷耦合设备(CCD)图像检测器、互补金属氧化物半导体(CMOS)图像检测器等。可利用多于一个图像传感器,例如,如果两个投影被投影在不同的波长中。

第一图像和第二图像可与相同的图像(或多个图像)有关,但也可与不同的图像有关。例如,第一图像和第二图像可以是相同的图像(或多个图像),如果两个投影被同时投影,并一起被捕获。例如,第一图像和第二图像可以是不同的图像,如果第一投影和第二投影一个在另一个之后被投影,或如果第一图像和第二图像使用不同的成像传感器在不同的波长处被获取。通常,成像感测单元230可操作来并配置成以投影在其上的二维编码光图案的多个投影捕获物体的一个或多个图像。

系统200还可包括处理单元240,其配置成处理第一图像和第二图像以确定测距参数(例如物体的测距参数)。处理单元可实现用于对体现在图案中的代码进行解码的解码器,并可用于从所投影的图案的反射部分的图像提取深度信息。在一些情况下,解码器可被实现为专用硬件单元(例如VLSI),而不是在通用处理单元(例如CPU或GPU)上运行的计算机软件。

下面描述处理从在相对于彼此移动的投影中的相同二维编码光图案的投影产生的第一图像和第二图像的不同方式。注意,如果使用外部处理单元1240(除了或代替内部处理单元240),处理单元240的所有可选特征、能力、结构和变形也可适用于处理单元1240,加以必要的变动。

注意,可以用不同的方式实现处理单元240,包括仅硬件实现或硬件、软件和固件中的一个或多个的任何组合。处理单元240可以与成像感测单元230集成在一起(例如作为在成像感测单元230的外壳中的芯片)或在它外部。在处理单元240和成像感测单元230之间的连接可以是有线连接、无线连接或在本领域中使用的任何其它连接。

可选的处理单元240和可选的投影仪控制单元220可被集成为单个处理单元或为不同的单元。还注意到,可选地,处理单元240可将命令或信息发送到投影仪控制单元220(如在图2中被示为选项),命令或信息可进一步由投影仪控制单元220使用来确定投影仪210的工作参数。下面讨论关于方法500的几个例子。

处理单元240可使用测距参数本身(例如用于进一步计算,例如使它能够采取行动,例如磁性地锁住连接到系统200的门,如果任何物体比预定的最小范围更接近系统200)。可选地,处理单元240可配置成向外部系统提供基于由它确定的测距参数的信息(包括测距参数本身和/或基于测距参数而选择和/或产生的信息)。这可由在图2中示出的硬件和/或软件接口250促进。

下面提供在当前公开的系统和方法的框架内的二维编码光图案的各种例子和它们的一些可能的使用连同由处理单元240(或1240)处理图像数据的可能方式的讨论。然而,为了给读者提供可被使用的用于数据处理的一些上下文,将在例示一些二维编码光图案变形之前提供几个例子。

下面例示通过由投影仪210的第一投影和第二投影的投影实现的处理。注意,关于可选的处理单元240讨论的所有处理、过程和计算是由投影仪210在它的一个或多个可能的实现中实现的处理、过程和计算。

例如,处理单元240可配置成对第一图像和第二图像执行下列的操作序列:

a.从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值(例如在不同的照明中从物体300上的同一点到达的光的采样强度值);

b.对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值(例如应用加法、减法、除法或找到在每个集合的强度值之间的相减的绝对值);以及

c.基于多个结果值来确定物体(或物体的区域)的测距参数。

注意且将对本领域中的普通技术人员清楚的,从第一和第二图像获取的强度值并不一定是特定像素的强度值,而是可以从几个或一组像素的强度值被计算。例如,可通过对相应像素的强度值与相邻(或否则邻近像素)的强度值加权来计算相应于在给定图像中的给定像素的强度值。在另一例子中,可基于相应像素的一个或多个相邻像素(但不是相应像素本身)的强度值来计算相应于在给定图像中的给定像素的强度值,例如在相应像素周围的像素的3x3邻近区域中的最小和/或最大强度值。

强度值可基于第一图像(或第二图像)来直接地确定,但也可基于中间图像来确定,中间图像通过将本地滤波器(例如有限脉冲响应滤波器FIR)应用于相应的第一或第二图像来产生。

此外,可在结果值用于进一步处理(例如用于确定测距参数)之前进一步处理数学运算的结果(例如通过将另一运算应用于结果)。例如,基于相应的第一或第二图像的局部增益的校正运算可应用于结果值。

为了各种原因,可使用这样的复杂数学运算(其基于比在第一和第二图像的每个中的单个像素的强度值更多的信息)。例如,它可被使用,以便减小噪声、在任一个图像中的高频、相对于传感器的动态范围的不同照明水平、在照明源中的非均匀性等的影响。

虽然不一定是这样,预定数学运算可选自由加法、减法、除法和减法的绝对值组成的一组数学运算。注意,所使用的数学运算可以是除了上面提到的数学运算以外的其它数据运算,可包括多于一个运算,且可能也取决于其它参数(例如图像的平均强度)。在根据当前公开的主题的例子在图5-38中介绍了可被使用的二维编码光图案的几个例子之后,下面例如关于图40A到40H提供可在二维编码光图案的两个投影之间执行的数学运算的例子。

作为整体参考系统200,可选地,二维编码光模式可包括第一特征元素和第二特征元素。第一特征元素是属于特征元素第一集合的特征元素,而第二特征元素是属于特征元素第二集合的特征元素。

在第一特征元素和第二特征元素当中的空间关系可以使得在二维编码光图案的预定刚性移动之下(例如在两个投影之间),在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

可选地,对于在二维编码光图案中的多组相邻第一特征元素中的每组第一特征元素,这组第一特征元素是可解码的以提供指示在二维编码光图案中的第一特征元素的子组的位置的信息。这样的可解码的这组特征元素可属于单个“特征类型”。

“特征类型”是在二维编码光图案中的“码字”的一个或多个视觉表示中的一个。例如,码字可由符号或字符的阵列(例如二进制阵列)或特征元素组成,而特征类型可以是变化的颜色强度的矩形(例如在图7-34中的矩形123),其相应于字符的阵列。

特征类型在二维编码光图案中是可识别的,并可在二维编码光图案的投影中及其反射中被识别出。二维编码光图案的每个特征类型由第一特征元素(来自特征元素第一集合的特征元素)和第二特征元素(来自特征元素第二集合的特征元素)的不同构型形成。例如,每个特征元素可由载波元素和有效载荷元素的不同构型组成。

注意,特征类型可由多于两组的特征元素形成。也就是说,可选地,二维编码光图案的一些或所有特征类型可由来自特征元素第一集合的特征元素、来自特征元素第二集合的特征元素和来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的不同构型组成。

可选地,第一特征元素的多个子组可被处理以检测一个或多个第二特征元素。例如,可容易识别的第一特征元素(例如黑色和白色圆圈)的每个子组可包括布置在正方形(或矩形、平行四边形等,例如,如在图5-34中所示的)的顶点上的四个第一特征元素,且第二特征元素可通过计算相应四边形的中心来找到。

可选地,在第二投影中的每个第一特征元素至少部分地与在第一投影中的相应第一特征元素重叠。图58示出根据当前公开的主题的例子的第一投影11和第二投影22的重叠。在图58的例子中,为了使重叠的图示变得更清楚,第一特征元素181和182的类型在第一投影11和第二投影22之间是不同的。由于相同的原因,使用不同类型的图案化示出第二特征元素191。然而,在实际投影中清楚地,没有这样的差异,作为来自单个图案的两个步骤。如可看到的,在完全重叠33中,第一投影11的第一特征元素181与第二投影22的第一特征元素182完全重叠,反之亦然。同样,第二投影的第二特征元素191也彼此完全重叠。在部分重叠44中,在比较中,第一投影11的第一特征元素181和182与第二投影22的第一特征元素181和182部分重叠,且这两个投影11和22的第二特征元素191也彼此部分重叠。然而,也在部分重叠44中,有在图案的两个投影之间的充分重叠,以便识别重叠的特征元素并共同处理这两个投影。

注意,在第一投影的特征和第二投影的特征之间的部分重叠可以或可以不是故意的。例如,部分重叠可从在光掩模的制造中的不准确性产生。在另一例子中,可在不同的时间获取这两个图像,且在两个获取时间之间的物体300的运动可导致在特征类型之间的偏移并因此部分重叠。

可选地,处理单元240可配置成:

a.从第一图像和从第二图像得到编码状态;

b.产生多个编码状态集合,每个编码状态集合包括来自第一图像的第一特征元素的编码状态和来自第二图像的空间上相应的(即重叠或部分重叠的)第一特征元素的编码状态(注意,参考附图中的例子,术语“第一特征元素”可与特征元素181和182或特征元素191有关,取决于实现);

c.处理每个编码状态集合的编码状态,以提供每个编码状态集合的结果值;以及

d.基于多个结果值来确定物体的测距参数。关于参考图50所述的过程的提供另外的细节,图50可由处理单元实现。

将认识到,可在图像像素上或在一个或多个图像的某些区上执行本文所述的操作,其中图像基于所投影的结构光图案的反射部分。在这个方面中,从第一投影的反射产生的第一图像和从第二投影的反射产生的第二图像可受到本文所述的运算(例如加法、减法等),且结果值可用于提高第一和/或第二图像的解码(或第一或第二投影的反射部分的任何其它图像)。

可选地,处理单元240可配置成应用选自由加法、减法、除法和除法的绝对值组成的一组数学运算的预定数学运算。

可选地,处理单元240可配置成产生结果图像,其中每个像素的颜色基于相应的编码状态集合的结果值;以及基于结果图像来确定物体的测距参数;其中结果图像特征在于下列性质中的至少一个:

a.第一特征元素的位置是在子像素准确度中可分辨的;

b.第二特征元素的位置是在子像素准确度中可分辨的;

c.在二维编码光图案中的边缘是在子像素准确度中可分辨的(边缘是在图案的不同着色部分之间的边界线);

d.在特征元素之间的边界是在子像素准确度中可分辨的;

e.多个像素与正结果值相关,而多个像素与负结果值相关。这可被实现为携带二进制值的双色调着色。

将认识到,根据当前公开的主题的例子,可提供配置成对第一投影和第二投影中的每个的反射部分的图像解码并可适合于将如下所述的各种数学运算应用于所解码的图像的解码器。可选地,解码器可与投影仪同步,或可以其他方式被通知哪个投影在给定图像中被描述。

图5-38是在本文公开和主张的系统和方法中的可用于刚性地移动并进一步提供各种刚性移动的例子的二维编码光图案的例子。虽然本发明决不限于这样的例子(如例如在图3中所例示的),用于投影的二维编码光图案可以是周期性二维编码图案,例如在图5-38中所例示的图案。此外,所使用的二维编码光图案可由以2x3局部独特性二进制码字为特征的循环伪随机二进制阵列编码,例如在图5-38中例示的二维编码光图案。

注意,在图5-38中示出编码光图案的不同特征类型以及特征类型的不同组合(例如单个图案的不同种类的对称性)。很清楚,在这些图案的任一个中例示的这些图案特征类型中的任一个和图案特征类型的组合也可在可使用不同类型的编码的完全不同的图案中利用。

可选地,由系统200使用的(且也在下面讨论的方法500中的)二维编码光图案可以是强度编码光图案,其包括第一特征元素的至少一个集合(可选地周期性地分布在图案上,但不一定这样)和第二特征元素的至少一个集合(可选地周期性地分布在图案上,但不一定这样)。例如,由系统200使用的(且也在下面讨论的方法500中的)二维编码光图案可以是强度编码光图案,其包括载波位置的至少一个集合和有效载荷位置的至少一个集合。

例如,在图5-38的例子中,第一特征元素(即第一集合的特征元素)是载波位置(在这些所示例子中周期性地分布),其为暗或亮圆圈(分别被标示为181和182),其中每个暗圆圈181相邻于沿着两个主轴(在所示例子中的垂直y轴和水平x轴)定位的四个亮圆圈182,反之亦然。在区域112中,相应于载波位置181和182的位置分别被标示为181A和182A。在区域113中,相应于载波位置181和182的位置分别被标示为181B和182B。

在图5-38的例子中的第二特征元素(即第二集合的特征元素)是有效载荷位置,其为在每个四个相邻圆圈181和182(在这些所示例子中周期性地分布)之间的菱形区域191。在其它变形中,在图5-38的例子中的第一特征元素可以是有效载荷位置191,而在这些例子中的第二特征元素可以是载波位置(被标示为181和182)。在区域112中,相应于有效载荷位置191的位置被标示为191A。在区域113中,相应于有效载荷位置191的位置被标示为191B。

注意,二维编码光图案可包括一种类型的特征元素、两种类型的特征元素(被称为第一特征元素和第二特征元素)或多于两种类型的特征元素。在特征元素的类型之间的差异取决于编码光模式的特定实现,并可包括(例如)下面的列表(连同其它可能的差异一道)中的一个或多个:不同形状的特征元素、强度、颜色、极化、在彼此之间的相对距离等(空间关系)。

第一特征元素可产生载波数据或有效载荷数据或另一类型的显著特征类型(例如几种类型的编码符号中的一种)。同样,第二特征元素可产生载波数据或有效载荷数据或另一类型的显著特征类型(例如几种类型的编码符号中的一种)。注意,二维编码光图案不一定具有载波/有效载荷分离,以及这仅仅是可选的实现。在通过引用被全部并入本文的H.Hoshino、K.Yano、S.Kiyasu和S.Fujimura的“Measurement of the 3-D shape of specular polyhedrons using an M-array coded light source”(Proceedings of the IEEE Instrumentation and Measurement Technology Conference(I MTC),pp.1329-1332,Hamamatsu,日本,1994年5月10-12日)中提供了不以载波/有效载荷行为为特征的二维编码光图案的例子。

在载波信号和有效载荷信号之间的差别在本领域中是已知的,并可以用各种方式实现。例如,载波信号可以是较简单的信号、周期性信号、以较大的特征形状(其更容易在图像中检测到)为特征的信号等。例如,在图5-34中的载波位置181和182相对于在这些例子中的有效载荷信号(有效载荷位置191)是大的,周期性重复地被布置(暗-亮棋盘格形交替布置),且与有效载荷位置不同地被成形(凹形相对于凸形,例如圆形相对于菱形)。在这些例子中,载波特征元素更容易检测,且因而有效载荷特征元素的位置可更容易或以更大的确定性被检测到。如在图5-38的编码光图案中例示的,虽然大部分编码信息由有效载荷特征元素携带,一些编码信息仍然可通过载波特征元素可得到,例如,如在下面关于2x3位码字讨论的。

图59示出根据当前公开的主题的特征类型91到96的例子。特征类型91到94包括六个载波特征元素(三个暗载波特征元素181和三个亮载波特征元素182)以及两个全有效载荷特征元素191。此外,特征类型91到94中的每个包括六个一半的有效载荷特征元素191和四个四分之一的有效载荷特征元素191。部分有效载荷特征元素可以或可以不在相应的特征类型的解码中使用。特征类型95和96包括12个载波特征元素(六个暗载波特征181和六个亮载波特征182)以及六个全有效载荷特征元素191。此外,特征类型95和96的每个包括十个一半的有效载荷特征元素191和四个四分之一的有效载荷特征元素191。部分有效载荷特征元素可以或可以不在相应的特征类型的解码中使用。如可看到的,除了存储在有效载荷元素191中的信息以外,每个特征类型还具有由亮和暗载波元素的布置规定的“极性”。

在其它例子中,通过识别特征元素来得到深度信息,其中每个特征元素与有效载荷元素和载波特征元素的独特组合相关。识别为很多特征元素(两种类型的)增加将图像中的相应区域分类为与特定的特征类型(和相应的码字)相关的确定性。将图像中的给定区域分类为与特定的特征类型相关也可与围绕特征类型的特征元素的分类相关,且所分类的特征类型的特征元素也可在相邻特征类型的分类中被使用。

在一些例子中,在特征类型水平处得到深度信息。在另外的例子中,至少对于所投影的图案(第一投影、第n投影(n=1,2,3,…)或对于所述投影中的一些或全部)的图像的一些区域,在特征类型水平处得到深度信息。在又一些其它例子中,在特征元素水平处,对仅仅一种特征元素(例如有效载荷)或对于一些类型(但不一定是全部类型)得到深度信息。

例如,一组特征元素(例如第一集合第一特征元素或第二集合第一特征元素)可以是载波元素。例如可选地,第一特征元素(例如载波特征元素)的多个子组可被处理以检测第二特征元素中的一个或多个(例如载波特征元素)。

例如,一组特征元素(例如第一集合第一特征元素或第二集合第二特征元素)可以是有效载荷元素。例如可选地,对于在二维编码光图案中的多组相邻第一特征元素(例如成组的2x3有效载荷特征元素,如下面讨论的)中的每组第一特征元素(例如有效载荷特征元素),这组第一特征元素是可解码的以提供深度信息。例如,对于在二维编码光图案中的多组相邻第一特征元素中的每组第一特征元素(例如有效载荷特征元素),这组第一特征元素是可解码的以提供指示第一特征元素的那个子组在二维编码光图案中的位置的信息。注意,为了这组第一特征元素的信息的解码可能需要额外的信息,例如从另一组特征类型到来的信息(例如指示在这组第一特征元素周围的载波特征元素的布局的二进制值,如下面讨论的),或关于对极线的信息,当二维编码光图案被成像时,这组第一特征元素位于该对极线上(例如,如在下面和在通过引用被全部并入本文的背景文档中关于对极间隔信息的利用讨论的)。

每个这样的菱形区域191(也被称为“鞍点”或“格点”,即使它们指区域而不是点)的颜色指示2x3局部独特性二进制码字的单个位,该码字是6位码字。例如,暗鞍点191可代表二进制“0”值,而亮鞍点191可代表二进制“1”值。应注意,2x3位的给定集合可出现在两个不同的形式中,取决于载波圆圈181和182的顺序,例如左上载波圆圈可以是暗圆圈或黑圆圈,使可能的码字的数量加倍。还注意,可使用多于两个不同的强度水平(而不是在上面的例子中使用的亮/暗的二进制差别)。

描述在图5-38中所示的例子的图案的另一方式可以如下:每个格点191是亮的或暗的,其中之一表示二进制“1”而另一个表示二进制“0”,以及额外的棋盘格形载波图案还为每个格点191提供两个可能的外观,其中相邻于这样的格点的两个暗载波位置181可位于在本文被任意表示为“+”方向的NE-SW对角线上(使用罗盘主风表示法)或被类似地表示为“-”方向的NW-SE对角线上。因此,每个有效载荷位置191可被识别为四个基元“0+”、“0-”、“1+”和“1-”之一。根据这个表示法的每个码字由这四个基元的预定尺寸(例如2x3)的阵列构建。

注意,可选地(如在图5到38中所示的例子中的情况),周期性二维编码图案可包括代码栅格,其中可识别的子图案(即码字)重叠。也就是说,在编码光图案的任意位置上的某个最小尺寸的任何窗口将返回唯一可识别的码字。例如,参考在图5-38的例子中使用的2x3二进制码字,每组2x3个区域191代表码字。换句话说,在图5-38的例子中的任何区域191(除位于图案的边缘中的这些区域外)是多个码字的一部分,并位于在这些不同码字中的任一个中的2x3码字内的不同位置中。这意味着,如果码字的所有位在检查图像中被正确地识别出,则2x3的标识窗口尺寸提供足够的独特标识。

可选地,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。可选地,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的载波元素是第二投影的相应特征类型的相应载波元素的反转。

可选地,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,该特征元素的反转被包括在第二投影的特征类型中。

可选地,可提供根据当前公开的主题的例子的图案,其中特征元素的布局使得在第一投影和第二投影之间的刚性移动提供在多对的每对中的特征类型中的特征元素当中的期望关系。这样的关系可以是例如在这两个投影的第一特征元素之间的空间重叠(或部分重叠)、在这两个投影的第二特征元素之间的空间重叠(或部分重叠)、在第一投影的第一特征元素到第二投影的第二特征元素之间的空间重叠(或部分重叠)等。

可选地,可提供根据当前公开的主题的例子的图案,其中特征元素的布局使得在第一投影和第二投影之间的刚性移动提供来自特征元素第一集合的特征元素,其作为在第二投影中的反转的特征元素而出现(例如图5-34的图案,例如在如在图58中例示的完全重叠中)。

可选地,对于在二维编码光图案中的第一集合的多组相邻特征元素中的第一集合的每组特征元素,这组第一特征元素是可解码的以提供指示在二维编码光图案中的这组特征元素的位置的信息。例如,可确定这组特征元素位于相对于整个图案的坐标(Xgroup(i),Ygroup(i))中。每个这样的组的特征元素可例如由被包括在单个特征类型中的所有第一特征元素组成。被包括在这样的组中的特征元素可以例如是有效载荷元素,且码字本身可指示(可能连同其它数据一起,如关于下面的对极性指示的)特征类型相对于二维编码光图案的位置。知道特征类型相对于二维编码光图案的位置可例如用于确定三维物体的深度参数。这可通过知道特定的特征类型的光源点的位置(通过对它的位置解码,如上面解释的)并通过使它与在3D物体上的反射位置匹配以评估在反射的地方中的物体的三维形状来实现。

可选地,第一集合的特征元素的多个子组可被处理以检测第二集合的一个或多个特征元素。例如,这样的特征元素可以是载波特征元素,其处理可产生多个有效载荷特征元素。

如前面提到的,各种其它图案可用作编码光图案,例如取决于系统200用于的特定利用。叠加在每个鞍点191处的亮或暗斑的调制的利用具有可能在至少一些可能的用途中有用的几个优点,系统200可被设计用于这些用途。现在简要描述这样的优点的非限制性和非约束例子。

首先,判断斑点在摄像机图像中是亮或暗的通过下面的事实变得容易:亮和暗参考在本地在任何格点191处由在它周围的相邻载波位置181和182提供。基于这些参考强度(例如通过比较它们的平均值)来评估格点位置191的亮度(和因此它的相应代码位值)减小反射变化和周围环境光的效应,只要这些参数在参考邻近区域内非常平稳地改变。

其次,代码位基元(即格点191)必须被评估的实际图像位置被清楚地指示,因为后者与棋盘格形栅格顶点重合。

第三论点涉及在用于定位格点的载波位置181和182的基本调制分量和用于用代码位标记它们的格点191的额外分量之间的干扰。很清楚,在格点191的邻近区域中的所观察到的灰度级分布将取决于相应代码位的实际值。然而,格点191本身的强度水平(亮的或暗的)将不使栅格位置的估计偏向一方,因为灰度级函数在任一情况下相对于格点局部地点对称(呈现合理地平滑的区域,代码位及其周围载波位置投影在该区域上)。

参考全部的图5到38,在图5到38中所示的每个二维编码光图案在二维中在空间上重复,使得在这些编码光图案的每个中,预定尺寸的每个矩形(为这些图案中的每个选择)本身再三重复,每个拷贝紧邻邻近的拷贝。重复图案部分意味着图案部分(例如前面提到的矩形)的复制物出现在图案中的不同位置上,可选地紧邻彼此。注意,将重复规定尺寸的任何矩形。在图5到34的每个中,为了说明,一个这样的矩形被标示为123。注意,基本形状不一定是矩形的,以及其它形状可用于基本重复的单元,例如平行四边形、六边形和不规则形状例如分别在图35和37中的形状3501和3701。仅为了简单起见且没有排除其它形状的重复基本单元的意图,重复单元在下面的讨论中被称为矩形123。

在这些附图的每个中,编码光图案由包括基本矩形123的几个拷贝的被标示为111的图案的碎片表示。例如,参考图5,被标示为111的图案碎片代表在二维编码光图案100的这个碎片中的不同位置的实际强度。两个其它矩形(其尺寸等于图案碎片111)——即矩形112和113——的尺寸示出在有效载荷位置(在矩形112中)和载波位置(在矩形113中)的实际代码之间划分的碎片111的图案。

在图5-34的例子中的二维编码光图案100由二进制有效载荷代码编码,其中亮鞍点(在区域191中)代表二进制“1”值,而暗鞍点191代表二进制“0”值。这在矩形123和被标示为100的相应的二进制2维(2D)代码之间的关系中以及在矩形124和被标示为101的相应的二进制2D代码之间的关系中示出。

如由图3、4、5-38、40A-40H和41A-41D的编码光图案所例示的,由系统200使用的编码光图案可以是二维编码光图案。术语“二维编码光图案”在本领域中被完全接受,且应以非限制性方式被解释以包括在二维中编码或具有沿着多于一维改变的强度或颜色的图案。虽然可能是这样,二维地编码并不一定是沿着正交或甚至固定的方向或轴的编码,如可例如在图35和37的编码光图案中看到的。

虽然不一定是这样,可使用离散编码(如在图3、4、5-38、40A-40H和41A-41D中所例示的)来对由系统200使用的编码光图案编码,其中在图案中使用强度的有限集合。区别的强度的数量可以是二(黑的和白的,透明的和不透明的,等等)或更大(例如可使用3、4、8或更区别的强度)。

图5-10是根据当前公开的主题的例子的由18x4阵列(如由相应的矩形123例示的)编码化的二维编码光图案100的例子。图5到10所示的所有二维编码光图案100是在由箭头125表示的预定刚性平移移动下本身的反转图像。刚性平移移动可以是在这些图的每个中由相应的箭头125(特别是由箭头的长度和方向)表示的垂直移动。

也就是说,对于每个18x4区域123(其尺寸使用在每两个相邻有效载荷位置之间的距离的图案本身的单位来表示),存在另一18x4移动的区域124。移动的区域124通过相应图案的预定刚性移动(由箭头125表示)相对于区域123而移动。

注意,对于每个所示的图案,可使用多于一个预定刚性移动来定义移动,因为任何区域123的箭头125可指向移动的区域124中的任一个。实际上,在二维编码光图案的第一投影和第二投影之间的移动可以在将提供类似结果的任一可能的刚性移动中移动。为了说明的目的,只示出单个箭头125。

通过投影二维编码光图案的两个投影,例如相对于彼此刚性地移动的图5到38的二维编码光图案(以及各种其它图案)中的任一个可以使执行如在整个本公开中所述的在第一图像和第二图像之间的各种过程变得可能,同时只使用单个图案掩模而不是两个。例如,可根据当前公开的主题的例子实现在美国专利序列号8,538,166(其通过引用被全部并入本文)中关于利用被表示为“l'-pl”(特别是参考那个专利的图15、16、19)讨论的过程。

图5所示的图案是在刚性水平移动下本身的反转图像。图6所示的图案是在刚性对角移动下本身的反转图像。用于图6中(和在下面的附图7-38中)的不同元素的编号与用于图5的相同。下面讨论在图5-38的图案之间的几个明显差异。

通常,在投影之间的刚性移动可以是不平行于编码光图案的任何编码方向(或编码轴,例如在图5-34中的x轴和y轴)的刚性平移。

图7-10所示的图案是在预定刚性移动下本身的反转图像,如所演示的。此外,这些二维编码光图案还展示绕着某些点例如由“X”标记(表示位131)表示的那些点的点反射对称性。注意,因为二维编码光图案的投影必须是在空间上有限的图案的投影,点反射对称性只在投影表面的有限区域中显现。对本领域的普通技术人员将清楚,也可使用展示点反射对称性的其它编码光图案。

注意,使用具有旋转对称性的编码光图案(如图7-10的示例图案有的)可提供几个优点。例如,如果通过传输穿过衍射光学元件(DOE)来产生编码光图案,则设计和/或制造这样的DOE可以比设计和/或制造用于产生不被旋转对称图案特征化的编码光图案的DOE更简单、便宜或以其他方式容易。

参考图7到10的例子,可看到,除了上面讨论的点反射对称性以外,这些二维编码光图案还展示在绕着某些点例如由“+”标记(表示位132)的那些点的“阴阳对称性(Ying-Yang symmetries)”。

术语“阴阳对称性”在它由绕着某个点的180°旋转变换组成的意义上与已知的点反射对称性类似地被定义。然而,与点反射对称性不同,其中这个变换产生相同的图像,在“阴阳对称性”中,这个180°旋转变换相对于强度级产生反转图像(也就是说,在一个投影下明亮地照亮的位置在同一图案的180°旋转投影下被暗地照亮,反之亦然)。

在这些例子中,“阴阳对称性”的存在是具有自反转、周期性和点反射对称性一起的结果。注意,由系统200投影的编码光图案可以是展示这样的“阴阳对称性”的任何其它图案。对有限区域考虑“阴阳对称性”,如关于点反射对称性讨论的。

注意,由系统200使用的编码光图案可以是在预定刚性移动下本身的反转图像,即使它不包括载波数据。

图11-22是根据当前公开的主题的例子的由20x4阵列(如由相应的矩形123例示的)编码化的二维编码光图案100的例子。如由图11到22的例子展示的,由系统200投影的二维编码光图案(或作为方法500的部分)可以是在预定刚性平移移动下本身的反转图像。在图11-22的例子中,预定刚性移动是在这些图的每个中由相应的箭头125表示的预定平移。可在这些图案的每个中使用不同的平移以实现反转代码效应,如上面关于图5-10讨论的。

如前面提到的,可根据当前公开的系统和方法使用的一些编码光图案是包括载波位置的至少一个集合(不管是否是周期性分布的)和有效载荷位置的至少一个集合(不管是否是周期性分布的)的强度编码光图案。在当前讨论的范围内的给定图像的术语“反转代码图像”与这样的图像(包括载波位置和有效载荷位置)有关,其中载波数据(例如在载波位置中的强度值)保持与在给定图像中的相同,但编码数据(例如在有效载荷位置中的强度值)反转。

注意,强度值的反转是提供在不同图像中的两个(或多个)不同的调制的一个选项。术语“调制”在本领域中被广泛使用,且应被解释为包括信号(例如图像、图案)的变化的一个或多个特性,该信号包括载波信号(例如载波图像或具有用作载波位置的位置的图像),使得信号将以编码方式携带信息。如上面提到的,调制可使用二进制编码(例如在有效载荷位置中的亮和暗强度),但也可使用其它类型的调制。

在这样的例子中,图案的每个特征类型的至少一个特征元素的一个编码状态(例如暗,“0”二进制值)反转成另一编码状态(例如亮,“1”二进制值)。对本领域中的技术人员将清楚,可使用实现在各种可能的调制中的编码状态之间的切换的其它形式。例如,可通过在光的相应(不同的)偏振态之间的切换(例如从水平偏振到垂直偏振,反之亦然)来得到不同的调制。

因此注意,每当在该描述中使用关于强度的术语“代码反转”、“有效载荷反转”、“载波反转”和类似术语时,本公开扩展为包括其它变形,其中使用其它形式的反转,加以必要的变动(例如代码反转的图像,其中有效载荷的极性相对于另一图像反转)。

此外,可使用多于两个编码状态(即非二进制调制),且在这样的情况下,在图像之间的反转可扩展为包括在调制状态之间的切换来代替简单的反转。例如,载波反转的图像可涉及一种图像,其中载波元素的编码状态相对于在参考图像中的这些特征元素的编码状态而改变(例如,具有第一编码状态的载波元素用具有第三编码状态的载波元素代替,以及具有第三编码状态的载波元素用具有第二编码状态的载波元素代替)。因此注意,每当在该描述中使用术语“代码反转”、“有效载荷反转”、“载波反转”和类似的术语时,本公开扩展为包括其它变形,其中使用在任何编码调制中的编码状态的切换的其它形式。

图案P2被考虑为图案P1的反转代码,如果它由铺块式单元(例如阵列)编码化,其是编码化P1的铺块式单元(例如阵列)的反转,同时保持P1的相同载波。注意,可选地,反转代码图案的小部分(例如小于它的面积的10%,小于它的面积的5%,等等)可以不符合这个规则,例如,如果重现的单元具有复杂的形状(例如,如在图36和38中所示的)。

在二进制编码光图案(其中每个有效载荷包括被确切地解码为两个可能状态之一的信息)中,在反转代码图像中的编码数据改变在每个有效载荷位置中的二进制状态(例如从“0”到“1”和从“1”到“0”,取决于在给定图像中的原始值)。例如,如果在有效载荷位置处的暗格点代表二进制“0”而在有效载荷位置处的亮格点代表二进制“1”值,则在包括亮格点的给定图像的有效载荷位置上,暗格点将出现在反转代码图像中的相应位置处,反之亦然。

例如在图11中,在区域123中的所表示的暗鞍点192相应于在移动的区域124中的所表示的亮鞍点194,且在区域123中的所表示的亮鞍点193相应于在移动的区域124中的所表示的暗鞍点195(虽然载波位置183和184的颜色在这两个区域中保持相同,相应地被标示为185和186)。如可看到的,这个修改规则适用于在这个图中以及在图12到22中所示的例子中的相应区域123和124中的每个有效载荷位置191。

图11是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在水平刚性移动下本身的反转代码图像。图12是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在对角刚性移动下本身的反转代码图像。图13是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在垂直刚性移动下本身的反转代码图像。

图14-16是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在预定刚性移动下本身的反转代码图像,此外还展示绕着某些点例如由“X”标记(被标示为131)表示的那些点的点反射对称性。上面例如关于某些DOE设计和制造过程讨论了提供点反射对称性的一些益处和优点。

图17-22是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在预定刚性移动下本身的反转代码图像,此外还展示绕着某些点例如由“+”标记(被标示为132)表示的那些点的“阴阳对称性”(上面介绍的术语)。

此外,图17的图案还展示沿着某些轴例如由虚线(被标示为133)表示的那些轴的线反射对称性。

还值得注意的是,图19还展示沿着某些轴例如由虚线(被标示为134)表示的那些轴的滑移反射对称性。

还值得注意的是,图22还展示沿着某些轴例如由虚线135表示的那些轴的“反转滑移反射对称性”。在本公开的范围内使用术语“反转滑移反射对称性”,其在它由组合反射和沿着某些轴的平移的变换组成的意义上具有与已知的反转滑移反射对称性相似的定义,但与滑移反射对称性不同,在滑移反射对称性中这个转换产生相同的图像,在“反转滑移反射对称性”中这个变化产生反转的图像。

图23-30是根据当前公开的主题的例子的由18x4阵列(如由相应的矩形123例示的)编码化的二维编码光图案100的例子的图示。如由图23到30的例子展示的,所投影的二维编码光图案可以是在预定刚性移动下本身的“反转载波”。在图23-30的例子中,预定刚性移动是由在这些图的每个中的相应箭头125表示的预定平移。很清楚,可在这些图案的每个中使用不同的平移以实现反转载波效应,如上面关于图5-10讨论的。

如前面提到的,可根据当前公开的系统和方法使用的一些二维编码光图案是强度编码光图案,其包括载波位置的至少一个集合和有效载荷位置的至少一个集合。在当前讨论的范围内的给定图像的术语“反转载波图像”属于这样的图像(包括载波位置和有效载荷位置),其中编码数据(即在有效载荷位置上的强度值)保持与在给定图像中的相同,但载波数据(即在载波位置上的强度值)被修改(例如从暗到亮,反之亦然)。

图案P2被考虑为图案P1的反转载波,如果它由编码化P1的相同阵列编码化,但在P1的反转载波之上(所以P1和P2具有相同或几乎相同的有效载荷元素和反转载波元素)。

将认识到,在编码光图案中,其中每个载波位置包括从两个可能的状态(例如暗或亮)被编码为确切地一个状态的信息,反转在反转载波图像中的载波数据涉及与原始图像比较改变在每个载波位置处的二进制状态(例如从暗到亮和从亮到暗,取决于在原始图像中的值)。术语“原始图像”在这里用于指第一投影的反射部分的图像,而反转载波图像指第二投影的反射部分的图像。

例如在图23中,在区域123中的所表示的暗载波点183相应于在移动的区域124中的所表示的亮载波点185,且在区域123中的所表示的亮载波点184相应于在移动的区域124中的所表示的暗载波点186(同时,有效载荷位置192的颜色在区域之间保持相同,被标示为194)。如可看到的,这适用于在这个图中以及在图24到30的其余部分中的相应区域123和124中的每个载波位置。

图23是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在水平刚性移动下本身的反转载波图像。图24是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在对角移动下本身的反转载波图像。

图25-28是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在预定刚性移动下本身的反转载波图像,且此外还展示绕着某些点例如由“X”标记(被标示为131)表示的那些点的点反射对称性。上面讨论了提供展示点反射对称性的图案的一些优点。

图29-30是根据当前公开的主题的例子的二维编码光图案的图示,该二维编码光图案是在预定刚性移动下本身的反转载波图像,此外还展示绕着某些点例如由“+”标记(被标示为132)表示的那些点的“阴阳对称性”。

图31-34是根据当前公开的主题的例子的由18x4阵列(如由相应的矩形123例示的)编码化的二维编码光图案100的例子的图示。如由图31-34的例子展示的,所投影的编码光图案可以是在预定刚性移动下本身的“反转”、“反转代码”和“反转载波”图像。

在图31-34的例子中,单个矩形123相应于三个不同的移动区域:区域124、126和127。为了保持附图简单,在这些附图中没有绘出相应于预定平移的箭头。很清楚,可在这些图案的每个中使用不同的平移以实现“反转”、“反转代码”和“反转载波”效应,如上面关于图5-30讨论的。

通过在每个所投影的图案之上执行那些移动,可能执行上面所述的“双图案”过程,同时只使用单个图案掩模而不是四个(在这些例子中)单独的掩模。

图31是根据当前公开的主题的例子的二维编码光图案的图示。图31的图案展示下列情况:

a.它是在水平刚性移动下本身的反转图像。

b.它还是在垂直刚性移动下本身的反转代码图像。

c.它还是在对角刚性移动下本身的反转载波图像。

图32是根据当前公开的主题的例子的二维编码光图案的图示。图32的图案展示下列情况:

a.它是在对角刚性移动下本身的反转图像。

b.它还是在垂直刚性移动下本身的反转代码图像。

c.它还是在水平刚性移动下本身的反转载波图像。

图33是根据当前公开的主题的例子的二维编码光图案的图示。图33的图案展示下列情况:

a.它是在水平刚性移动下本身的反转图像。

b.它还是在垂直刚性移动下本身的反转代码图像。

c.它还是在对角刚性移动下本身的反转载波图像。

d.此外,它还展示绕着某些点例如由“X”标记(被标示为131)表示的那些点的点反射对称性。

e.此外,它还展示绕着某些点例如由“+”标记(被标示为132)表示的那些点的“阴阳对称性”。

图34是根据当前公开的主题的例子的二维编码光图案的图示。图34的图案展示下列情况:

a.它是在对角移动下本身的反转图像。

b.它还是在垂直移动下本身的反转代码图像。

c.它还是在水平移动下本身的反转载波图像。

d.此外,它还展示绕着某些点例如由“X”标记(被标示为131)表示的那些点的点反射对称性。

e.此外,它还展示绕着某些点例如由“+”标记(被标示为132)表示的那些点的“阴阳对称性”。

如在图31-34的图案中例示的,由系统200和/或在方法500中使用的二维编码光图案可以实现两个或多个投影的几个组合。注意,除了实现编码光图案的两个不同投影的利用以外,利用显现多于一个上面讨论的行为的图案(例如是在不同的刚性移动例如旋转或平移下本身的“反转”、“反转代码”和/或“反转载波”)可能能够利用由系统200和/或在方法500中使用的单个二维编码光图案的三个或多个投影。

也就是说,可选地,系统200的部件可被实现如下:

a.投影仪控制单元220可配置成控制投影仪210用于在物体上投影二维编码光图案的至少三个投影,三个投影相对于彼此刚性地移动(同时或在不同的时间,在同一波长中或在不同波长中,等等)。

b.成像感测单元230可适合于提供至少一个图像的图像数据,其中物体以投影在其上的二维编码光图案的至少三个投影中的每个被成像,其中图像数据可被处理以便区分开从不同的三个或多个投影产生的信息。

c.处理单元240可配置成处理相应于二维编码光图案的至少三个投影的图像数据,以便确定测距参数(例如物体的测距参数)。

二维编码光图案的这样的三个或多个投影——每个相对于另外两个刚性地移动——可以用不同的方式实现。在整个这个公开中例如关于作为在不同的刚性移动下本身的“反转”、“反转代码”和/或“反转载波”的图案讨论利用相对于另一个移动的两个投影的各种组合的各种选项(下面在本文中也被称为双投影过程)。使用三个或多个投影可包括对几个这样的双投影过程执行一系列计算(例如从第二投影的强度值减去第一投影的强度值,由于刚性移动,第二投影是第一投影的负量,以便得到在子像素分辨率中的位置信息,以及用第三投影的强度值减去第一投影的强度值,由于刚性移动,第三投影是第一投影的“反转代码”图像,以便丢弃载波信息并隔离有效载荷信息作为有符号代码信息)。

然而,系统200还可被实现以应用基于来自三个或多个投影(n个投影,其中n≥3)的信息的计算过程。例如,处理单元240可配置成对第一图像和第二图像执行下列序列的操作:

a.从(例如第一图像和第二图像等的,如果多于两个图像被使用)图像数据得到多个强度值集合,每个强度值集合包括强度值的n元组(n≥3),其中n元组的每个强度值相应于从投影之一得到的图像数据,以及其中n元组的所有强度值在空间上相应于彼此(例如在不同的照明中从物体300上的同一斑点到达的光的采样强度值);

b.对每个n元组的n个值应用预定的数学运算,以为每个n元组提供结果值(例如应用求和、取平均、找到最小或最大值等);以及

c.基于多个结果值来确定物体300的测距参数。

图35-38是根据当前公开的主题的例子的由非笛卡尔阵列编码化的二维编码光图案的例子的图示。如由图35到38的二维编码光图案的例子展示的,二维编码光图案可以是非笛卡尔光图案,其为在预定刚性移动下本身的反转图像。图35-38的图案进一步例示图案,其除了是在相应刚性移动下本身的反转图像以外,它们还是在预定刚性移动下本身的“部分反转代码”和“部分反转载波”图像(如在下面更详细讨论的)。注意,也可实现只显现这些特性中的一些的二维编码光图案。

通过对每个所投影的二维编码光图案执行那些刚性移动,可能执行上面所述的各种过程,同时只使用单个图案掩模而不是多个图案掩模(两个或四个单独的掩模,取决于应用)。

此外,图35-38的图案还展示绕着某些点例如由“X”标记表示的那些点的点反射对称性,且也绕着某些点例如由“+”标记表示的那些点的“阴阳对称性”。

图35示出根据当前公开的主题的例子的二维编码光图案3500的图示。通过在载波图像3540上叠加有效载荷图像3520(也被称为“编码图像”3520)来组成图35的二维编码光图案3500。

图案3500是在各种移动例如移动3505下本身的反转图像。相应地,铺块式单元3502是铺块式单元3501的反转图像。

此外,它也是在各种移动例如移动3507下本身的部分反转代码图像。相应地,铺块式单元3504是铺块式单元3501的部分反转代码图像。它仅仅是本身的部分反转代码图像,因为在任一铺块式单元中包含的总共212个鞍点中的24个例如鞍点3534通过不在移动3507下反转来违背反转代码图像的特性。

此外,它也是在各种移动例如移动3506下本身的部分反转载波图像。相应地,铺块式单元3503是铺块式单元3501的部分反转载波图像。它仅仅是本身的部分反转载波图像,因为在任一铺块式单元中包含的总共212个鞍点中的24个例如鞍点3534通过不在移动3506下反转来违背反转载波图像的特性。因此,根据当前公开的主题的例子,相对于第一投影刚性地移动的第二投影具有相对于在第一投影中的相同位置处的特征元素修改的至少一个特征元素。在一个例子中,该修改是特征元素的编码值的反转。反转载波、反转代码情况和上面提到的其它情况是这个一般变换情况的特定例子。

根据被已知用于单个图案的方法,在图案3500中的特征类型或码字例如特征类型3510、3511、3512和3513维持在任何铺块式单元内的本地唯一性,允许不含糊的识别。特别是,在任何铺块式单元内的每个特征类型的本地唯一性由它的鞍点的嵌入式码字(即有效载荷数据)、它的载波值和它的特征元素的对极矢量特征化。例如,特征类型3510和3512(或分别特征类型3511和3513)按照它们的鞍点的嵌入式码字和它们的载波值而不同,但共享相同的对极矢量,因为它们共享相同的定向。另一方面,例如特征类型3510和3511(或分别特征类型3512和3513)共享相同的鞍点的嵌入式码字和载波值,但在它们的对极矢量方面不同,因为它们被不同地定向。

图36示出几个双投影过程(也被称为“双图案”过程,虽然在本公开中,“双图案”过程通过单个图案的两个(或多个)投影得到,其中两个(或多个)投影中的每个相对于彼此刚性地移动)的结果的图示。为了说明且作为非限制性例子,根据当前公开的主题的例子对图35的编码光图案3500(在图36中被标示为图案3600)执行双投影过程。

图像3620是将在移动3507下本身的所移动的实例添加到图案3600的结果。可看到,图像3620类似于载波图像3540,因为大部分鞍点的亮和暗值被抵消(即被均衡),同时它们的位置被强调。然而,在任何铺块式单元中包含的总共212个鞍点中的24个例如鞍点3634不经历这个值抵消和位置强调。

图像3620也是从图案3600减去在移动3506下本身的所移动的实例的结果的正(即无符号)表示。事实上,实际相减结果是带符号的,包含正值和负值,所以为了可视化目的,它在图像3620中被标准化。

图像3640是将在移动3506下本身的所移动的实例添加到图案3600的结果。可看到,图像3640类似于有效载荷图像3520,因为极大值点和极小值点的强度被均衡,导致载波的抑制以及亮和暗斑点的出现来代替图案3600的大部分相应的亮和暗鞍点。然而,在任何铺块式单元中包含的总共212个鞍点中的24个例如鞍点3614不显现为鞍点,但替代地,它们也像载波一样灰掉,例如出现在位置3654上。相应地,包含这样的鞍点的某些特征类型或码字例如特征类型3611与遗失的斑点一起出现在它们相应的因而产生的区域上,例如在区域3651中。因此,对这样的鞍点的值解码不能利用这个额外的过程,且可依赖于例如分析它们的局部导数,如已知用于对单个图案解码的。此外应注意,根据已知用于单个图案的方法,图案3600设计成使得特征类型例如特征类型3611维持它们在任何铺块式单元内的本地唯一性,允许不含糊的识别。

图像3640也是从图案3600减去在移动3507下本身的所移动的实例的结果的正(即无符号)表示。事实上,实际相减结果是带符号的,包含正值和负值,所以为了可视化目的,它在图像3640中被标准化。

图像3660是将图案3600和在移动3506下本身的所移动的实例的相减的绝对值的结果。可看到,图像3660类似于暗边界线的栅格,暗边界线使它们的交叉点出现来代替图案3600的大部分鞍点。然而,在任何铺块式单元中包含的总共212个鞍点中的24个例如鞍点3614不显现为栅格交叉点,但替代地,它们显现为图案轮廓,例如出现在位置3674上。

图像3680是将图案3600和在移动3505下本身的所移动的实例的相减的绝对值的结果。可看到,图像3680包含高度可识别的曲线,其为图案3600的轮廓。

图像3600也是从图案3600减去在移动3505下本身的所移动的实例的结果的正(即无符号)表示。事实上,实际相减结果是带符号的,包含正值和负值,所以为了可视化目的,它在图像3600中被标准化。

图37示出根据当前公开的主题的编码光图案3700的图示。通过在载波图像3740上叠加有效载荷图像3720来得到图37的二维编码光图案3700。注意,图35的编码光图案3500的讨论也与图37的编码光图案3700有关,加以必要的变动。图37中的参考数字相应于图35的参考数字,其中最后两个数字指示相应性(例如参考数字3713相应于参考数字3513,依此类推)。

图38示出根据当前公开的主题的例子的对图37的二维编码光图案3700(在图38中被标示为图案3800)执行的几个双投影过程(也被称为“双图案”过程)的结果的图示。注意,图36的编码光图案3600的讨论也与图38的编码光图案3800有关,加以必要的变动。图38中的参考数字相应于图36的参考数字,其中最后两个数字指示相应性(例如参考数字3813相应于参考数字3613,依此类推)。

现在参考图53,其提供根据当前公开的主题的例子的可由系统200投影到物体300上的示例性二维编码光图案P1。图53将被用作图案投影的例子,其使用对极分离或对极约束来提供具有相对小的覆盖区或较大(不含糊的)图案(与不使用对极约束的投影比较,如下面解释的)的图案投影的例子。可在根据当前公开的主题的例子的系统200的图案中使用在图53中示出的对极分离的原理连同在本文所述的第一和第二投影的原理。

编码图案P1包括在各种位置处出现在图案P1中的多个不同的特征类型20。为了清楚,在当前的附图中,每个唯一的特征类型被任意分配字母符号。如将在下面关于图55更详细解释的,每个特征类型由特征元素的唯一形式特征化,或换句话说,特征元素可布置在产生多个不同的特征类型(每个用作码字)的形式中。在一个例子中,可根据现在将讨论的对极分离原理来布置任何这样的特征类型。

在本公开中示出和描述的图案的情况下,特征元素由局部光强度分布特征化(图案是双色调的或由暗和亮区域组成)。应认识到,其它光学变化(极性、颜色、形状等)可用于创建不同的特征元素和这样的特征元素。不同种类的特征元素可具有两种或多种状态(例如蓝色、黄色和红色编码可用于提供具有三种不同状态的特征元素)。

形成特征类型的特征元素可具有单个集合(集合在这里用于区分开已经在这个段落中使用的术语特征元素种类)或特征元素的两个或多个(三个、四个等)集合可根据当前公开的主题的例子在图案中使用。例如,在图53中所示的编码图案P1中的每个特征元素可与两个不同的集合之一相关,第一集合是鞍元素(或鞍点)以及元素的第二集合包括点(或元素),其为极大值或极小值。美国专利号8,090,194、8,208,719和8,538,166以及美国专利申请公布号2013/0329018提供关于特征元素的这些集合的更多细节。在其它例子中,可在图案中使用其它种类的特征元素集合,例如在本描述中提到的有效载荷和载波特征元素。将注意到,在一些情况中,特征元素的集合可具有不同的特性,且多于一个定义或特性可用于定义该集合。例如,特征元素的极大值或极小值集合在一些情况中也可被定义为载波集合,且鞍点集合可被定义为有效载荷集合,如对图53中的图案P1的情况的。事实上在一些情况下,载波相对于极大值/极小值和有效载荷相对于鞍点的差别仅仅是对编码特征元素(载波和有效载荷)的参考或对出现在图像中的所投影的图案或特征元素(鞍点和极大值/极小值)的反射部分的问题。在一些类型的代码中,只有一个集合且甚至仅仅某个种类的特征元素在(图案的反射部分的)图像中是引起兴趣的。例如,(其中只有亮区域或斑点(和它们周围的区域/斑点))被观察到(例如被识别和在解码处理中被处理)的代码,可被视为这样一种代码,其中特征类型由特征元素的单个集合或甚至由一个特征元素(亮斑点/区域)形成。

由32个不同的特征类型形成的图案可布置在2x16铺块式单元(在第一方向上的2行特征类型和在正交于第一方向的第二方向上的16列特征类型)中。

为了说明,IP1是相应于所投影的图案P1的区域48的所投影的图案P1的反射部分的图像的表示。示出对极线52、54和56。因此图像IP1是如由成像装置捕获的所投影的图案的反射部分的简化图示。为了简单,只示出反射图案,且没有任何所反射的成像物体也出现在IP1中。在这个特定的例子中,投影仪210和成像装置(例如成像感测单元250)一个位于另一个之上,因此在所捕获的图像中的对极线在实质上垂直的方向上。在另一可能的实施方式中,投影仪和成像装置可以从彼此水平地定位,在这种情况下在所捕获的图像中的对极线将实质上是水平的。也可选择在投影仪和成像单元之间的其它空间关系,加以必要的变动。

如所看到,同一类型的特征反射到在图像IP1中的单独对极线上。例如,类型(A)的特征58和60反射到两个相邻但可区分地分离的对极线52和54上。相同的图像特征类型到所捕获的图像中的单独对极线上的分离——在本文被称为对极分离——实现特征类型的不含糊的识别。注意,根据对极线分离原理可允许相同的特征类型沿着给定对极线重复,只要重复不在(深度感测系统的)给定景深内产生含糊。

参考图54。附图的右下侧示出图53的图像IP1,其为如由图像传感器捕获的投影图案P1的反射部分的图像。图54示出在根据上面讨论的对极分离原理被投影之后在图像IP1中的投影图案的反射部分的示意性表示1500。也就是说,二维编码光图案P1被构造和投影,使得任何给定特征类型在所捕获的图像IP1中的任何给定对极线上至多出现一次。

将认识到,根据当前公开的主题的例子,所投影的结构光图案由多个独特的特征类型的重复结构组成,且任何特征类型沿着多个可区别的对极线中的任一个出现至多一次,其中在可区别的对极线之间的距离小于在图像中的重复结构的最短尺寸。可选地,多个特征类型的重复结构可体现编码矩阵。可选地,重复结构是铺块。可选地,重复结构是周期性重复结构。更进一步作为例子,多个特征类型中的每个可由空间形式的唯一组合特征化。

更进一步作为例子,可提供配置成投影编码图案的投影仪,使得当投影仪投影光时,结构光图案被投影,且传感器配置成捕获所投影的结构光图案的反射部分的数字图像,使得在传感器的平面上的可区别的对极线的位置与在投影仪和传感器之间的空间关系相关,其中投影仪相对于传感器被定向,使得当投影仪投影时,所投影的结构光图案在相对于与在投影仪和传感器之间的空间关系相关的对极场的角度下,且其中在可区别的对极线之间的距离与所投影的结构光图案相对于对极场的定向相关。

可选地,投影仪可配置成使得当投影仪投影结构光图案时,结构光图案相对于对极场的定向由限制对极分离因子限制。

可选地,设备可具有预定的操作范围,以及在图像中,特征类型的两次或多次重复出现在可区别的对极线上,但在对极线的相应于设备的操作范围的任何给定区段内,任何特征出现至多一次。

可选地,处理器可配置成基于在可区别的对极线上的给定特征类型的可区别的对极线的给定区段中的位置来提取深度信息。

图像相对于立体基线的定向角使得在可区别的对极线之间的距离P小于NC,其中C是在图像中的重复结构的最短尺寸中的特征类型的尺寸,以及N是在图像中的重复结构的最短尺寸中的特征类型的数量。应理解,其它对极线在理论上存在于对极线102A和102B之间以及在102B和102C之间,然而它们不是可区别的对极线。在可区别的对极线之间的已知水平(在这种情况下)距离是各种因子的函数,这些因子包括成像装置(例如传感器)和/或投影仪和/或操作条件(实际或预期)的光学和任何其它相关规范。在可区别的对极线之间的已知水平距离有助于在图像中的反射特征类型的识别和验证。例如,反射特征类型(A)98在所捕获的图像中在沿着对极线102B的某个y坐标处被检测到。因此,最近特征类型(A)如果在所得到的图像中实际上被捕获则可只在对极线102B的右边和左边的最近的可区别的对极线、即102A和102C上在被找到。虽然为了说明目的,所有对极线在附图中是精确地垂直的,在其它例子中,其它配置是可能的,包括对极线是弯曲的、对角的或不平行于彼此的配置。

图案相对于立体基线的定向角由对极线分离因子限制,对极线分离因子是区分开在(投影图案的反射部分的)所捕获的图像中的单独对极线所必需的最小水平距离被实现时的角度。作为例子,确定区分开在单独对极线上的特征的能力的因子可包括:特征类型的形状和在从所成像的物体反射之后坐标位置确定的特征类型可检测性和可靠性(例如正确的识别和定位的可能性)。物体表面类型也可具有效应,因为来自金属表面、玻璃和其它透明或非常暗的表面的特征例如以较小的精密度被反射,且因此使识别并定位在投影图案的反射部分的图像中的特征类型变得更难。投影仪的SNR和成像设备的光学或电气特性是可对在可区别的对极线之间的(选定)距离有影响的因素的另外的例子。

根据当前公开的主题的例子,在给定系统或系统配置中并考虑上面提到的或将对本领域中的技术人员明显的各种其它成像或深度感测因子,可确定区分开单独对极线所必需的水平(在这种情况下)距离。区分开单独对极线所必需的这个距离可根据经验来确定,或它可基于考虑到与成像装置和图像处理设备有关的各种参考的模型以及可能还有图案的各种特性来被计算,如上面提到或暗示的。还将注意到,区分开单独对极线所必需的距离可用于确定图案相对于立体基线的定向角。

现在参考图55,其根据当前公开的主题的例子包括在编码图案P1中使用的示例性特征类型的图示。特征A-J是二进制空间编码特征类型的例子。每个特征类型由五个黑点和白点的空间组合形成,由黑(局部最小值)或白(局部最大值)中心点181和182以及四个黑或白鞍点191构成。五个黑和白点的组合导致32个独特的符号或特征类型的字母表。作为例子在图55中示出的特征类型被任意命名为A-J,每个相应于中心点和四个鞍点的不同组合。具有白中心点的特征类型相应于在投影图案中的局部最大照明强度,而具有黑中心点的特征类型相应于在投影图案中的局部最小照明强度。每个字母的外围点相应于既不是最大值也不是最小值的照明强度,其中白外围点比最小强度更接近最大强度,而黑外围点比最大强度更接近最小强度。注意,在当前公开的主题的其它例子中,可使用具有更多或更少鞍点的组合的特征类型。例如,如果每个特征类型包括六个鞍点,则可提供128个独特的符号或特征类型的字母表并可得到较大的图案周期。这样的编码特征类型可例如适合于受益于具有更多采样点的较大图案的应用。

图39、40A-40H和41A-41D示出根据当前公开的主题的例子的编码光图案的两个投影可由系统200和/或在方法500中使用的一些方式。

图39示出根据当前公开的主题的例子的被投影到物体(在这个实例中是未表示的魔方)上的图32的二维编码光图案(E28)的几个投影,以及投影到物体上的额外光。特别地,虽然在图39的例子中的二维编码光图案展示下面的属性:(a)它是在对角移动下本身的反转图像;(b)它也是在垂直移动下本身的反转载波图像;以及(c)它也是在水平移动下本身的反转载波图像,关于图39、40A-40H和41A-41D讨论的编码光图案的两个投影的处理也可用于只展示这些属性中的一个或两个的编码光图案。

在图39中,二维编码光图案的投影21被任意选择为基本投影,其它投影可与该基本投影比较。

相对于投影21对角地刚性移动的相同光图案的投影22导致用是投影21的光照的负量(即反转图像)的光照使物体图案化。

相对于投影21水平地刚性移动的相同光图案的投影23导致用是投影21的光照的反转载波图像的光照使物体图案化。

相对于投影21竖直地刚性移动的相同光图案的投影24导致用是投影21的光照的反转代码图像的光照使物体图案化。

此外,光照25例示环境光,其为不从编码光图案的投影产生的非均匀光(例如太阳光或环境光),且光照26例示均匀光(其可由系统200投影或从另一光源产生)。

细节31到36是从相应的照明图21到26的同一位置(右下角)获取的细节。上采样41到46是使用双三次插值而上采样的相应细节31-36。注意,双三次插值仅作为例子被选择,以及在本领域中已知的其它插值方法(例如双线性、B样条、Lanczos等)也可以被使用。

在所有图39、40A到40H和41A到41D中,所成像的局部高强度点(即最大值点)是投影和其后在所成像的物体(未表示的魔方)的那个表面位置上的编码光图案的白斑点的反射的结果。同样,所成像的局部低强度点(即最小值点)是投影和其后在所成像的物体的那个表面位置上的编码光图案的黑斑点的反射的结果。

如可看到的,在投影22中示出的例子中,二维编码光图案的第二投影导致所成像的物体(及其背景)相对于投影21的反转照明。也就是说,如果在投影21中在所成像的物体上的特定表面位置处看到所反射的白斑点,则在同一二维编码光图案的投影22中,在所成像的物体上的同一表面位置处观察到所反射的黑斑点,反之亦然。例如,在编码光图案的投影21下的亮最大值点被成像为在编码光图案的投影22下的暗最小值点。同样,在投影21下的亮鞍点由在投影22下的暗鞍点代替。

在投影23中,只有在载波位置上的强度反转,而在投影24中,只有在有效载荷位置上的强度反转。

魔方被选择为图像物体的演示例子,因为它包含变化颜色的正方形和相对于摄像机布置在不同的角度中的平坦平面。在所选择的物体中,反射图案当从亮颜色的正方形反射时显示高对比度,而当从较暗颜色的正方形反射时显示较小的对比度。这是下面的事实的结果:在所提供的图像中使用的由系统发射的照明能量通常在比能量从(其中很多能量被吸收的)暗表面的反射更大的程度上从亮表面反射。

图40A到40H示出根据当前公开的主题的例子的可基于从图39获取的细节和上采样对相同图案的两个投影使用的一些过程的例子。系统200可配置成使用关于图40A到40H公开的一个或多个过程的任何组合。同样,方法500的阶段510可包括实现关于图40A到40H公开的一个或多个过程的任何组合。通过在从相应的第一图像和第二图像获取的强度值集合的值上应用关于相应的图之一讨论的预定数学运算来执行图40A-40H的所有操作。在图40A-40H的描述中,第一图像数据是第一图像的图像数据,而第二图像数据是第二图像的图像数据。

图40A显示将(a)捕获参考图案到物体上的投影(投影21)的第一图像和(b)捕获在物体上的图案的刚性对角地移动的投影(其导致参考图案的反转图像,即投影22)的第二图像求和的过程。这个过程的结果被示为过程结果51,且它给物体的纹理的图像提供从图案产生的减少的(和可能甚至没有)信息,好像它由均匀光照亮一样。

图40B显示从(b)使产生参考图案的反转图像(即投影22)的图案的刚性对角地移动的投影成像的第二图像数据减去(a)使参考图案到物体上的投影(投影21)成像的第一图像数据的过程。这个过程的结果被示为过程结果52,且它提供带符号的信号(例如由在图中的黑色示出的过程结果52的部分实际上由在计算的结果中的负数表示,而图的亮部分实际上由正数表示),且环境光的效应被抵消。

图40C显示将(a)捕获参考图案到物体上的投影(投影21)的第一图像数据和(b)使产生参考图案的反转代码图像(即投影24)的、图案的刚性垂直地移动的投影成像的第二图像数据求和的过程。这个过程的结果被示为过程结果53,且它提供图像,其中只有载波而不是编码被表示。这可例如用于以较高的准确度定位编码的格点,从而提高代码的解码。

图40D显示从(b)使产生参考图案的反转载波图像(即投影23)的、图案的刚性水平地移动的投影成像的第二图像数据减去(a)使参考图案到物体上的投影(投影21)成像的第一图像数据的过程。这个过程的结果被示为过程结果54,且它提供图像,其中只有载波而不是有效载荷被表示为带符号的信号(即使用正数和负数)。这可例如用于以较高的准确度定位编码的格点,从而提高代码的解码。

注意,图40D的过程可进一步被使用,以便实现下面的结果中的一个或多个:(a)抵消(或至少减少)环境光的效应,以及(b)简化载波的检测并使它变得更鲁棒,因为它现在是带符号的。

图40E显示将(a)使参考图案到物体上的投影(投影21)成像的第一图像数据和(b)使产生参考图案的反转载波图像(即投影23)的图案的刚性水平地移动的投影成像的第二图像数据求和的过程。这个过程的结果被示为过程结果55,且它提供图像,其中只有代码(即有效载荷数据)而不是载波被表示。

图40F显示从(b)使产生参考图案的反转代码图像(即投影24)的图案的刚性垂直地移动的投影成像的第二图像数据减去(a)使参考图案到物体上的投影(投影21)成像的第一图像数据的过程。这个过程的结果被示为过程结果56,且它提供图像,其中只有代码而不是载波被表示为带符号的信号(即使用正数和负数)。

注意,图40F的过程可进一步被使用,以便实现下面的结果中的一个或多个:(a)抵消(或至少减少)环境光的效应,以及(b)简化代码(有效载荷)的检测并使它变得更鲁棒,因为它现在是带符号的。

图40G显示取(a)使参考图案到物体上的投影(投影21)成像的第一图像数据和(b)使产生参考图案的反转图像(即投影22)的图案的刚性对角地移动的投影成像的第二图像数据的相减的绝对值的过程。这个过程的结果被示为过程结果57,且它提供包含参考图案的轮廓(例如在不同颜色的区域之间的边缘)的图像。这些轮廓是相对细和明显的,因为它们位于在相减结果内的零交叉区域处,所以可能在子像素准确度下检测它们的位置,提供提高的三角测量准确度。

图40H显示取(a)使参考图案到物体上的投影(投影21)成像的第一图像数据和(b)使产生参考图案的反转载波图像(即投影23)的图案的刚性水平地移动的投影成像的第二图像数据的相减的绝对值的过程。这个过程的结果被示为过程结果58,且它提供包含边界线的网{栅格}的图像,使它们的交叉出现来代替参考图案的鞍点。这些边界线和它们的交叉是相对细和明显的,因为它们位于在相减结果内的零交叉区域处,所以可能在子像素准确度下检测它们的位置,提供提高的三角测量准确度。

图41A到41D例示根据当前公开的主题的例子的可基于从图39获取的细节和上采样对图案的投影之一以及另一非图案化照明使用的一些过程。系统200可配置成使用关于图41公开的一个或多个过程的任何组合。同样,方法500的阶段530可包括实现关于图41公开的一个或多个过程的任何组合。通过在从相应的第一图像和第二图像获取的强度值集合的值上应用关于相应的图之一讨论的预定数学运算来执行图41的所有运算。在图41A-41D的描述中,第一图像数据是第一图像的图像数据,而第二图像数据是第二图像的图像数据。

图41A显示从(b)使参考图案到物体上的投影(投影21)成像的第二图像数据减去(a)使用环境光使物体成像而没有被投影到其上的第一图像数据的过程。这个过程的结果被示为过程结果61,且它提供图像,其中只有编码图案的反射出现而没有来自环境光的干扰。

注意,在应用图40A到40H的任一过程之前且特别是在应用包括对来自两个图像的数据求和的过程之前,也可从刚性地移动的投影的图像数据减去环境光。

图41B显示将从(a)使参考图案到物体上的投影(投影21)成像的第一图像数据和(b)使由均匀光照亮的物体成像而没有被投影到它上的任何图案(但可能同时有意地用均匀光照亮物体,如果需要)的第二图像数据获取的每个强度值对的强度相除的过程。这个过程的结果被示为过程结果62,且它提供标准化图像,其中物体的纹理的效应(即反照率)减小且反射的参考图案被增强。

关于作为强度编码光图案的二维编码光图案讨论了作为在刚性移动下本身的反转载波图像和/或反转代码图像的二维编码光图案的概念,强度编码光图案包括:(a)载波元素(例如载波位置)集合,其中亮和暗(或黑)强度产生载波信号,以及(b)有效载荷元素(例如有效载荷位置)集合,其中亮和暗强度产生空间编码信号。

在这样的编码光图案中,第一投影和第二投影相对于彼此刚性地移动,使得第一投影的载波位置与第二投影的载波位置至少部分地重叠,并使得第一投影的有效载荷位置与第二投影的有效载荷位置至少部分地重叠,且亮和暗强度在载波位置上或在有效载荷位置上在第一投影和第二投影的重叠位置上反转。注意,可选地,载波位置和有效载荷位置都可显示这样的强度反转,例如在“反转”图案的情况下,或部分地在“部分反转载波”和“部分反转代码”内的一些位置(可能大部分位置)上,如在图35-38中例示的。在这两个(或多个)投影的特征元素之间的重叠的程度可与投影和成像部件的各种光学特性相关。图像的处理和图案投影(或投影中的仅仅一个)的反射部分的解码和/或投影的交叉处理(有时在本文被称为预定数学运算)可通知关于在这两个(或多个)投影的特征元素之间的重叠的程度的某些要求。需要重叠使来自一个投影的每个特征元素与在另一投影(其它投影)中的特征元素相关,且以便能够使用通过上面讨论的数学运算得到的信息。因此,可用于确定在投影的特征元素之间的重叠的程度的算法考虑一些或所有上面的考虑因素。例如,优化算法可以与约束一起用于保证重叠的最低程度存在。

研究它的另一方式是,第一投影和第二投影相对于彼此刚性地移动,以便产生:载波重叠位置的至少一个集合,其中第一投影的载波位置和第二投影的载波位置至少部分地彼此重叠,以及有效载荷重叠位置的至少一个集合,其中第一投影的有效载荷位置和第二投影的有效载荷位置至少部分地彼此重叠;其中对于选自由下列项组成的组的至少一个位置集合(不管是否周期性地被分布),载波重叠位置的至少一个集合和有效载荷重叠位置的至少一个集合,在该集合的位置中的第一投影的强度值相对于在该集合的相应位置中的第二投影的强度值反转。

计算的输出可产生各种类型的有用信息,其原本是只使用单个二维编码光图案而不可得到的。上面提供这些输出中的一些和它们的可能利用中的几个。注意,处理单元240可配置成:

a.基于多个结果值来计算下列项中的至少一个的信息(例如高精度信息):(a)第一投影的载波元素(例如载波位置)集合,以及(b)第一投影的有效载荷元素(例如有效载荷位置)集合。高精度信息可具有选自由下列项组成的一组数据类型的数据类型:高精度位置信息(例如具有子像素准确度信息),以及高精度颜色信息(例如提供图案和/或载波和/或有效载荷的带符号表示,克服环境光问题或物体的反照率);以及

b.基于所计算的信息来确定物体的测距参数。

图42是示出根据当前公开的主题的例子的系统200的例子的功能方框图。如在图42中例示的,图案化光学器件214可包括:

a.光学掩模215,其能够图案化穿过光学掩模的至少一个光束。光学掩模可包括二维编码光图案的透明度掩模,使得由光源212发射并穿过光学掩模215的光将导致光由二维编码光图案编码。

b.光学掩模移动模块216,其可操作来在多个位置(至少包括第一位置和第二位置)之间移动光学掩模。可例如使用压电单元来实现光学掩模移动模块216。

当掩模位于(例如静止的)多个投影位置之一上时,可投影编码光图案的每个投影。在多个位置之间的移动可被限制到在垂直于投影仪的光轴的方向上的移动,但这并不一定是这样。光学掩模移动模块216的位置的数量可相应于投影的数量,但这并不一定是这样。注意,如果在两个投影之间需要的刚性移动包括二维编码光图案的旋转,则这可通过绕着平行于光轴的轴旋转光学掩模215来实现。如果在两个投影之间需要的刚性移动包括编码光图案的线反射,则这可通过绕着垂直于光轴的轴旋转光学掩模215来实现。

投影仪控制单元220在这样的情况下可配置成控制光学掩模在多个位置之间的移动,以便控制二维编码光图案的第一投影和第二投影的投影。投影仪控制单元220还可配置成控制光源212,以便控制二维编码光图案的第一投影和第二投影的投影(例如以便只在光学掩模215位于多个位置之一上而不是在中间位置上时才发射光)。

在(例如)图42的实现中,投影仪210配置成当光学掩模215在第一位置上时在物体300上投影二维编码光图案的第一投影,并当光学掩模215在第二位置上时在物体300上投影编码光图案的第二投影。

可选地,系统200可包括透明度掩模移动模块216,其可操作来在至少包括第一位置和第二位置的多个位置之间移动透明度掩模215,其中投影仪210配置成当透明度掩模215在第一位置上时在物体300上投影二维编码光图案的第一投影,并当透明度掩模215在第二位置上时在物体300上投影二维编码光图案的第二投影。光学掩模的移动的程度取决于所使用的图案和它被投影所用的标度。例如,在这两个位置之间的移动可以是大约10微米、大约100微米、大约1毫米、大约10毫米等。

关于图42和43,注意,如关于图1A、1B和1C讨论的,单元220、230和240是可选的。也就是说,系统200可以可选地包括这些单元(220、230和240)中的一个或多个的任何组合,但不一定是这样。

图43是示出根据当前公开的主题的例子的系统200的例子的功能方框图。可选地,投影仪210可包括光源,其包括激光阵列,激光阵列包括多个单独的发射器217,每个单独的发射器217能够产生激光束。系统200还可包括投影仪控制单元220,其配置成控制激光阵列的发射器217的不同子组的启动,从而在发射器217的第一子组被启动时导致第一投影的投影并在发射器217的第二子组被启动时导致第二投影的投影。

可选地,投影仪210可包括:(a)可操作来衍射一个或多个入射激光束以提供结构光的衍射光学元件219;以及(b)布置在光源和衍射光学元件219之间的光学组件218,光学组件218可操作来转换激光束以提供多个转换的光束并将多个转换的光束引导到衍射光学元件219上。

如在图43中例示的,光源212可包括激光阵列,其包括多个单独的发射器217,每个单独的发射器能够产生传播到图案化光学器件214的光学组件218的激光束。图案化光学器件214可包括:

a.衍射光学元件219(也被称为DOE 219),其可操作来衍射一个或多个入射激光束以提供结构光。

b.布置在光源212和衍射光学元件219之间的光学组件218(其可包括多个光学元件,例如透镜、反射镜等)。光学组件218可操作来转换激光束(从发射器217到达)以提供多个转换的光束并将多个转换的光束引导到衍射光学元件219上,导致由光学系统提供编码光图案。

例如,如果二维编码光图案包括基本重现单元的几个拷贝(例如在图5-34中的矩形123),则DOE 219可操作来衍射一个或多个入射激光束以提供构造成提供重现单元的结构光,且光学组件218以不同的角度将不同的光束引导到DOE 219,能够通过将重现的结构光倾斜几次来产生二维编码光图案。

如果系统200包括衍射光学元件和多个发射器(如在图43中例示的)则由系统200产生不同的投影可通过对不同的投影使用发射器的不同子组来实现。这样的发射器有时被称为可寻址的发射器阵列。光束将以不同的角度到达衍射光学元件(起源于发射器的不同子组),并从而投影二维编码光图案的刚性地移动的投影。注意,也可使用移动DOE 219本身(相对在图42的例子中的光学掩模215进行的一样),例如,如果在这两个投影之间的二维编码光图案的旋转是需要的。

投影仪控制单元220可因此配置成控制激光阵列212的发射器217的不同子组的启动,从而当发射器217的第一子组被启动时导致第一投影的投影以及当发射器217的第二子组被启动时导致第二投影的投影。

这样的配置也可用于同时投影二维编码光图案的两个刚性移动的投影,如果激光阵列212的发射器217的不同子组包括在不同波长中进行发射的激光器。

图44是示出根据当前公开的主题的例子的方法500的例子的流程图。方法500是用于计算物体的测距信息的方法。

参考在前面的附图中阐述的例子,方法500可由系统200执行。系统200的不同实施方式可实现方法500的各种所公开的变形,即使未明确详述。同样,方法500的不同实施方式可包括阶段,所述阶段的执行完成系统200的各种所公开的变形,即使描述的简明和清楚并不需要这样的重复。

方法500(以及系统200)可被实现来确定从非常微小规模(例如毫米物体)到较大物体例如建筑物的各种类型的所检查的物体的测距参数。

方法500的步骤505包括提供二维编码光图案。

方法500的阶段510包括在物体上投影二维编码光图案的第一投影和二维编码光图案的第二投影,其中第一投影和第二投影相对于彼此刚性地移动。如关于系统200所陈述的,二维编码光图案可在阶段510中被投影到多于一个物体上。

参考关于前面的附图阐述的例子,阶段510可能在投影仪控制单元例如投影仪控制单元220的控制下可由投影仪例如投影仪210执行。

在阶段510中投影的二维编码光图案可具有上面关于由系统200使用的二维编码光图案且特别是关于图3-41讨论的任一个或多个特性。

例如,在阶段510中投影的二维编码光图案可使用离散编码(与连续编码相反)而被编码。

方法500的阶段520包括收集从物体反射的光以提供:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像。第一图像和第二图像包括从物体反射的特征,图案被投影在该物体上。

注意,阶段520可包括产生图像文件,但这并不一定如此,且它还可包括提供未被保存为单个文件的图像数据,例如不同成像位置的强度值的实时流。

参考关于前面的附图阐述的例子,阶段520可由成像感测单元例如成像感测单元230(以及下面讨论的装置3000的成像感测单元3030)执行。

方法500的阶段530包括处理第一图像和第二图像以确定物体的测距参数。参考关于前面的附图阐述的例子,阶段530可由处理单元例如处理单元240(以及下面讨论的装置3000的处理单元2040)执行。关于上面的处理单元240和关于下面的图48-50讨论处理可利用第一图像和第二图像的各种方式。

阶段510、520和530可在循环中执行,在每个循环中,二维编码光图案的两个投影被投影到物体上,第一图像和第二图像被获取并被处理以便确定测距参数。例如,可以按相应于视频的视频帧速率的速率确定一个或多个物体的测距参数,在该视频中,物体被捕获(由执行方法500的系统例如系统200或由另一系统)。帧速率、处理速率、存储速率和总系统速率可与在投影图案的过程中涉及的一些或所有操作中使用的硬件和/或软件相关并取决于所述硬件和/或软件,在两个或多个投影和在投影的刚性移动中涉及的任何操作之间切换,投影图案的反射部分和在深度感测系统的操作中涉及的任何其它信号(例如可见光或RGB图像)的捕获或感测,所捕获的信号/图像的处理包括信号的解码以得到深度信息和如果可适用:深度信息的任何后处理,包括例如颜色投影、深度信息和任何相关数据的存储以及传递深度信息和任何相关数据。

图45示出根据当前公开的主题的例子的在物体上投影二维编码光图案的第一投影和第二投影的子阶段(阶段510)。

阶段510包括在物体上投影二维编码光图案的第一投影(阶段511)和在物体上投影相对于第一投影刚性地移动的二维编码光图案的第二投影(阶段512)。

注意,二维编码光图案的两个刚性地移动的投影的投影可以是连续的(例如对于很多帧,其中测距参数被确定),但也可以是间歇的或脉动的(例如在比每个帧的持续时间明显短的持续时间期间投影,以便减小运动模糊、节省能量或为了其它原因)。为了避免其它投影对一个投影的破坏,当一个投影可干扰另一投影时,投影可被定时为在任何时间仅仅一个投影被发射。

此外,如果使用二维编码光图案的多于两个刚性移动的投影(在阶段510中以及在接下来的阶段中),投影的额外子阶段被包括在阶段510中。

可选地,阶段511和阶段512可至少部分地同时被执行(即,使得二维编码光图案的多于两个刚性移动的投影至少部分地同时被投影到物体上)。这可例如被实现,如果这两个投影使用不同的波长被投影。

可选地,可在不同的时间(即在没有任何重叠的情况下)执行阶段511的投影和阶段512的投影。进一步在图46中探究这个可选方案,图46示出根据当前公开的主题的例子的在物体上投影二维编码光图案的第一投影和第二投影的阶段510的子阶段。

如果两个刚性地移动的投影未同时被投影,则可选的阶段513可在一个投影和另一投影之间被执行(以任何顺序,如果这两个投影是交替的),阶段513包括改变投影二维编码光图案的投影仪的状态。

例如,阶段513可包括将投影仪的可选掩模从一个位置移动到另一位置的可选阶段514,该可选掩模能够图案化穿过可选掩模的至少一个光束。例如,光学掩模可包括二维编码光图案的透明度掩模,使得由投影仪的光源发射并穿过光学掩模的光将导致由二维编码光图案编码的光。参考关于前面的附图阐述的例子,阶段514可由光学掩模移动模块216执行。

在另一例子中,如果衍射光学元件由从多个单独的发射器到达的光照亮(如所建议的,例如关于图43),则阶段513可包括使这样的单独的发射器的不同子组的启动交替的可选阶段515,从而导致在发射器的第一子组被启动时导致第一投影的投影,并在发射器的第二子组被启动时导致第二投影的投影。不同的子组可包括具有相似的光谱或在不同光谱中的发射器。

注意,阶段513如果被执行则包括改变二维编码光图案的投影仪的状态,使得在投影之间的预定刚性移动将被得到。

在投影之间的刚性移动(如果这样的移动需要在它们之间的投影仪的状态中的变化,或这样改变透明度掩模或DOE的位置,或否)可连同图案的设计一起被预先确定,以实现二维编码光图案关于本身的刚性移动版本的预期行为,例如关于图5-41讨论的。这样的行为可包括二维编码光图案相对于其移动拷贝是本身的反转图像、本身的反转代码图像和本身的反转载波图像等。关于图5-41讨论的所有变形都可对方法500以及对系统200实现。

可选地,二维编码光图案是强度编码光图案,其包括:载波特征元素(例如载波位置)集合,其中亮和暗强度产生载波信号;以及有效载荷特征元素(例如有效载荷位置)集合,其中亮和暗(或黑)强度产生空间编码信号。在这样的情况下,第一投影和第二投影可相对于彼此刚性地移动,使得第一投影的载波位置至少部分地与第二投影的载波位置重叠,以及使得第一投影的有效载荷位置至少部分地与第二投影的有效载荷位置重叠;以及使得亮和暗强度在载波位置上或在有效载荷位置中在第一投影和第二投影的重叠位置上反转。注意,可选地,载波位置和有效载荷位置都可显示这样的强度反转,例如在“反转”图案的情况下或部分地在“部分反转载波”和“部分反转代码”内的一些位置(可能大部分位置)上,如在图35-38中例示的。

可选地,二维编码光图案可以是强度编码光图案,其包括载波位置的至少一个集合(不管是否周期性地分布)和有效载荷位置的至少一个集合(不管是否周期性地分布),且第一投影和第二投影可相对于彼此刚性地移动(例如通过使第一投影的载波位置至少部分地与第二投影的载波位置重叠),以便产生:(a)载波重叠位置的至少一个集合,其中第一投影的载波位置和第二投影的载波位置至少部分地彼此重叠,以及(b)有效载荷重叠位置的至少一个集合,其中第一投影的有效载荷位置和第二投影的有效载荷位置至少部分地彼此重叠。

此外,第一投影和第二投影可相对于彼此刚性地移动(以及这样设计的二维编码光图案),使得对于选自由下列项组成的组的至少一个位置集合,载波重叠位置的至少一个集合和有效载荷重叠位置的至少一个集合,在该集合的位置中的第一投影的强度值相对于在该集合的相应位置中的第二投影的强度值反转。

如前面提到的,在第一投影和第二投影之间的刚性移动不一定平行于二维编码光图案的任何编码方向。

如前面提到的,在第一类型的特征元素和第二类型的特征元素之间的区别可出现在二维编码光图案中,并可在其分析中(例如在第一图像和第二图像的处理中)被使用。一个可能的区别是在有效载荷和载波特征类型之间的区别,但也可使用区别的其它选择,如上面提到的。

参考可提供二维编码光图案的阶段505(以及参考二维编码光图案被使用时的下面的阶段),提供二维编码光图案可包括提供包含第一特征元素和第二特征元素的二维编码光图案。第一特征元素是属于特征元素第一集合的特征元素,而第二特征元素是属于特征元素第二集合的特征元素。

如上面讨论的,在第一特征元素和第二特征元素当中的空间关系可以使得在二维编码光图案的预定刚性移动之下(例如在两个投影之间),在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自特征元素第二集合中的在第一投影中的特征类型的特征元素具有与来自特征元素第二集合中的在第二投影的相应特征类型的特征元素的编码状态不同的编码状态。

关于阶段510,在二维编码光图案的第二投影中的每个第一特征元素(例如,如在阶段520在第二图像中成像的)至少部分地与在二维编码光图案的第一投影中的相应第一特征元素重叠(例如,如在阶段520在第一图像中成像的)。可选地,在二维编码光图案的第二投影中的每个第二特征元素至少部分地与在二维编码光图案的第一投影中的相应第二特征元素重叠。关于图40A-40H进一步研究在两个投影中的相同类型的特征元素的重叠的利用的例子。

图47示出根据当前公开的主题的例子的收集从物体反射的光以提供第一图像和第二图像的子阶段(阶段520)。

阶段520包括收集从物体反射的光以提供第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像(阶段521),以及收集从物体反射的光以提供第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像(阶段522)。阶段521和522可同时、在部分地重叠的时期或在完全不同的时间被执行。

第一图像和第二图像可被实现为单个图像(例如,如果第一投影和第二投影使用不同的波长被投影到物体上)或是不同的图像(例如,如果第一投影和第二投影在不同的时间使用相同的波长被投影或如果单独的成像传感器专用于每个单独的波长)。

图48示出根据当前公开的主题的例子的处理第一图像和第二图像以确定物体的测距参数的可选子阶段(阶段530)。

阶段530可包括一系列可选的子阶段,其包括阶段541、542和543。可选的阶段541包括从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值。

可选的阶段542包括对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值。

例如,预定数学运算选自包括加法、减法、减法的绝对值和除法的一组数学运算。很清楚,可对不同强度值集合的值执行其它可能更复杂的数学过程。

可选的阶段543包括基于多个结果值来确定物体的测距参数。

注意,阶段530可包括将各种图像处理算法应用于例如第一图像或第二图像中的每个,这样的算法可包括噪声抑制算法、对比度增强算法等。阶段530还可包括将各种图像处理算法应用于可通过处理第一图像和第二图像(或这些图像之一与另一图像)例如使用下面所述的产生过程来产生的结果图像(也被称为中间图像)。例如,阶段530可包括将低通滤波器和/或带通滤波器应用于这些图像中的任一个,在它被处理之前或之后。在另一例子中,阶段530可包括将故意模糊应用于这些图像中的任一个,在它被处理之前或之后。也可使用很多其它图像处理算法。

图49示出根据当前公开的主题的例子的处理第一图像和第二图像以确定物体的测距参数的可选子阶段(阶段530)。阶段530可包括一系列可选的子阶段,其包括阶段551、552、553和554。

图49所示的阶段属于一个过程,其中第一图像被分析用于确定测距参数(如通过使用单个编码光图案的单个投影完成的,如在背景中提到的并包括美国专利序列号8,090,194、8,208,719和8,538,166和国际申请专利WO2008/062407的一些参考资料中完成的,这些专利都通过引用被并入本文),并结合第一图像来使用第二图像用于提高第一图像的分析,从而达到更好的结果(例如对原本例如由于环境光、所成像的物体的反照率、模糊等而不能被解码的信息解码)。

阶段552包括处理第一图像和第二图像用于计算在第一图像中的位置集合的信息(例如高精度信息)。

该位置集合——其信息被计算——可包括例如下列项中的至少一个:

a.第一投影的载波元素集合(例如载波位置)(不管是否周期性地分布);

b.第一投影的有效载荷元素集合(例如有效载荷位置)(不管是否周期性地分布);

c.编码位置集合(其中编码信息例如代码位存储在图像中,例如在没有有效载荷位置和载波位置的清楚区别的情况下)。

为该位置集合计算的信息(例如高精度信息)可具有不同的类型。例如,可在阶段552计算从处理例如关于图39、40A-40H、41A-41D讨论的过程产生的所有信息。

例如,信息(例如高精度信息)可具有从由高精度位置信息和高精度颜色信息组成的一组数据类型选择的数据类型;以及基于高精度信息来确定物体的测距参数。

注意,高精度信息可包括(或基于)在阶段541和542计算的结果值,但这不一定是如此。

阶段552前面可以是处理第一图像用于计算在第一图像中的位置集合的预备信息的可选的阶段551。阶段551可包括例如确定格点集合的粗略位置,以及阶段552可在这样的例子中包括确定该格点集合的高精度位置信息。然而,这不一定是需要的,且阶段552可被执行而不基于只基于第一图像的预备阶段例如阶段551的预备结果。

阶段552后面是从第一图像的编码位置集合(其可以是有效载荷位置或其它编码位置,如果没有在有效载荷和载波信息之间的清楚区别)获取编码信息的阶段553。例如,阶段553可包括对每个编码位置得到“0”或“1”值,当二维编码光图案是二进制编码光图案时。

阶段554包括处理编码信息用于确定物体的测距参数。

虽然不限于现有技术算法,通过分析空间编码信息来确定测距参数的几种算法是本领域中已知的,并可在阶段554中使用。在背景中提到的一些参考资料中——包括在美国专利序列号8,090,194、8,208,719和8,538,166和国际申请专利WO2008/062407中——讨论了一些这样的算法,这些专利都通过引用被并入本文。

注意,虽然不一定是这样,在阶段554的处理也可基于第二图像或基于根据第一图像和第二图像计算的值(例如在阶段552计算的值,例如高精度位置信息)。

例如,阶段554可包括识别特征(特别是在编码位置中的代码位)沿着相应的对极线的位置,以及使沿着对极线的这些位置与在空间中的3D坐标相关,特征从该空间被反射。

通过三角测量技术来实现在沿着对极线的位置与3D坐标之间的相应性的这个过程。对于在2D图像中的每个所识别的特征,因此得到相应的3D坐标,指示在空间中的点,那个特征从该点从所成像的物体反射。通过所有这样的3D坐标的编译,得到3D点云,其给出所成像的物体的三维或深度图。

注意,点云的另一处理可产生3D网,其本质上将3D云的点熔合到3D表面。这个网也可以是纹理映射的,可能基于在场景中的物体的额外纹理捕获或基于由在图40.1中显示的过程提供的非图案化纹理图像。

图50是示出根据当前公开的主题的例子的处理第一图像和第二图像以确定物体的测距参数的阶段530的可选子阶段的例子的流程图。图50的流程可用于解调和解码照明编码图像(例如第一图像)。

图50所示的流程包括可选的阶段561、562和563。图50所示的流程属于编码光图案,其包括(第一类型的特征元素的)第一特征元素和(第二类型的特征元素的)第二特征元素,如上面讨论的。

阶段561包括从第一图像和从第二图像得到编码状态,以及产生多个编码状态集合,每个编码状态集合包括来自第一图像的第一特征元素的编码状态和来自第二图像的空间上相应的第一特征元素的编码状态。例如,每个编码集合可包括在这两个图像中的相应有效载荷元素的编码状态。例如,每个编码集合可包括在这两个图像中的相应载波元素的编码状态。例如,每个编码集合可包括在这两个图像中的相应特征元素的强度值。例如,每个编码集合可包括在这两个图像中的相应像素的强度值。例如,每个编码集合可包括在这两个图像中的相应特征元素(每个包括多个像素)的平均强度值。

注意,编码状态集合可被实现为编码状态的n元组(n≥2)。如果每个编码状态只包含来自第一图像的一个编码状态信息和来自第二图像的一个编码状态信息,则编码状态集合可被称为编码状态对。在例子中,每个编码状态集合可被实现为强度值集合,包括强度值的n元组,其中n元组的每个强度值相应于从投影之一得到的图像数据,以及其中n元组的所有强度值相应于彼此(例如在不同的照明中从物体300上的同一斑点到达的光的采样强度值)。

注意,除了或代替强度值,还可使用其它编码状态,例如特征元素的形状、光学极性、与环境的对比度、在一个或多个方向上的强度的n阶导数等。还注意,对于单个编码状态集合,多于一个编码状态可从每个图像获取。例如,可在与二维编码光图案的两个投影的信息有关的4元组编码状态集合中使用第一图像的单个位置(例如像素)的强度和极性和在第二图像中的相应位置的强度和极性。在另一例子中,可在每个位置上从每个图像获取多个强度值,其相应于在多频谱图像中的不同颜色(例如红色、绿色和蓝色(RGB)强度或不同的红外(IR)频率强度)。

阶段562包括处理每个编码状态集合的编码状态,以提供每个编码状态集合的结果值。例如,阶段562可包括对(编码状态集合的)每个n元组的n个值应用预定数学运算,以提供每个n元组的结果值(例如应用加法、取平均、找到最小值或最大值等)。

阶段563包括基于多个结果值来确定物体的测距参数。阶段563可作为例子包括在这样的两个或多个过程的任何组合中实现关于图40A-40H和41A-41D讨论的任一个或多个过程。

注意,方法500还可包括基于第一图像和/或第二图像的处理来确定阶段510、520和/或530的未来实例的参数的阶段。例如,基于从编码光图案到包括物体的场景上的一个或多个投影得到的图像数据的极性,该方法可包括确定使用编码光图案的两个或多个投影以及对结果的所需处理。特别地,如果编码光图案在不同的刚性移动(例如反转图像、反转载波和/或反转代码)下具有多于一个可能的行为,则图像数据的分析可用于确定要使用哪个处理,以及可能在阶段520中应用哪个刚性移动。

作为整体参考方法500(以及作为整体参考系统200),注意,在上面的描述中,关于编码光图案(和因此第一图像和第二图像)到相应于有效载荷信息和载波信息(例如有效载荷位置和载波位置)的特征元素类型的划分提供很多例子。

提供这些例子以给读者提出与很多类型的二维编码光图案有关的各种例子。然而注意,可使用在不同类型的特征元素之间的其它区别(如上面讨论的)。此外,不是可在本发明的范围内使用的所有编码光图案都包括在有效载荷和载波之间的区别,或区别可以不是鲜明的区别。

因此再次强调,可使用在特征集合的类型之间的任何区别,以及方法500的阶段可在不同种类的特征元素类型上实现。因此,方法500(以及系统200)进一步扩展为包括任何变化,其中使用第一特征元素的多个第一特征元素来代替上面讨论的有效载荷元素(例如有效载荷位置),以及其中使用第二特征元素的多个第二特征元素来代替上面讨论的载波元素(例如载波位置)(加以必要的变动)。

作为整体参考方法500(以及作为整体参考系统200)且包括如上面讨论的各种类型的编码状态集合的使用,注意,过程例如关于图40A-40H和图41A-41D讨论的过程的利用可包括作为中间阶段处理第一图像和第二图像(和可能其它图像,如果有的话)以产生至少一个结果图像(也被称为“中间图像”),以及接着处理一个或多个结果图像以便确定测距参数。结果图像的处理可以后面再次是基于通过处理一个或多个结果图像而得到的信息来处理第一和/或第二图像。

例如,可通过将数学运算应用于包括第一图像和第二图像的图像集合来产生中间图像。例如,第一图像和第二图像可被添加到彼此,从彼此减去、取平均、一个除以另一个等。也可使用更复杂的数学运算(例如相减的绝对值)。

更一般地,方法500可包括产生结果图像,其中每个像素的颜色基于相应编码状态集合的结果值。例如,可通过将在第一图像中和第二图像中的相应位置上的像素的强度值求和来确定在结果图像中的每个像素的颜色。阶段530的确定在这样的情况下可包括基于结果图像来确定对象的测距参数。系统200可相应地被配置和适应,加以必要的变动。

结果图像可在任何不同的性质例如一个或多个下面的性质的任何组合方面被特征化:

a.第一特征元素的位置在子像素准确度中是可分辨的;

b.第二特征元素的位置在子像素准确度中是可分辨的;

c.在编码光图案中的边缘在子像素准确度中是可分辨的;

d.在特征元素之间的边界在子像素准确度中是可分辨的;

e.多个像素与正结果值相关,以及多个像素与负结果值相关(例如正和负结果值与有效载荷特征元素相关,从而产生正和负有效载荷结果值)。

在图40A-40H和41A-41D的过程结果中提出这些性质的例子。

图51是示出根据当前公开的主题的例子的光学系统200的例子的功能方框图。在图51中,提出在系统200中的结构光图案150的投影的可能利用,以捕获三维(3D)图像。通过确定在图像的不同像素中成像的物体的测距参数来便于由系统200捕获3D图像。注意,这些可能的使用作为非限制性例子被提供,因为很多其它使用将对本领域中的普通技术人员呈现。此外,虽然利用系统200的投影的功能被讨论为由同一系统200的部件实现,将清楚,这样的功能也可由外部系统并使用用于利用投影的额外的、更少的或其它部件实现。

下面的讨论涉及用于管理3D捕获的系统。对本领域中的普通技术人员将清楚,下面的讨论也可适用于用于管理3D捕获的方法和计算机程序产品,加以必要的变动,以及为了简洁的原因将不讨论后者。

根据当前公开的主题的例子,管理3D捕获(有时也被称为深度感测)可包括根据预定的规则或标准来管理在移动计算设备——更具体地,例如智能电话、平板计算机和/或它们的类似物——中的资源的使用。在当前公开的主题的另外的例子中,管理3D捕获可包括管理在移动通信设备中的一个或多个3D捕获资源的使用。更进一步作为例子,管理3D捕获可包括管理下列项中的一个或多个:功率消耗、存储器和/或存储利用率、分配通信带宽消耗、处理资源(例如CPU循环)的分配等。在下面的描述中,作为移动计算设备的非限制性例子,一般参考移动通信设备。

在整个下面的描述中,参考术语“3D”捕获。术语“3D捕获”指涉及利用移动通信设备的多个资源来得到关于某个场景的深度或测距数据(3D数据)的技术过程。因此,根据当前公开的主题的例子,管理3D捕获可包括管理在3D捕获中涉及的至少一个资源的操作或管理3D捕获的至少一个软件特征的操作。将认识到,至少在一些方面中,在一些情况下,或在某些条件下,修改在3D捕获中涉及的资源的操作可影响3D捕获的至少一个软件特征的操作,反之亦然。

参考图51(和通常参考系统200),注意,系统200可被实现为移动通信设备,例如智能电话、膝上型计算机或另一手持设备。如可在图51中看到的且作为例子,系统200可包括能够提供3D深度或测距数据的各种部件。在图51的例子中,示出包括有源立体3D摄像机10的系统200的配置,但在当前公开的主题的另外的例子中,可使用其它已知的3D摄像机。在本领域中的技术人员可容易将在当前公开的主题的例子中提供的教导应用于其它3D摄像机配置和其它3D捕获技术。

作为例子,3D摄像机10可包括:3D捕获传感器12(其可以可选地是前面提到的成像感测单元230的部分或代替它)、驱动器14和3D捕获处理器16(其可以可选地是前面提到的处理单元230的部分或代替它)。系统200还包括投影模块18,其包括发射器阵列210、光学子单元220和DOE 230。可选地,投影模块18还可包括输出光学器件220。

在这个例子中,投影模块18配置成投影结构光图案,且3D捕获传感器12配置成捕获相应于所反射的图案的图像,如从环境反射的,图案被投影到该环境上。Gordon等人的美国专利号8,090,194描述了可在3D摄像机的投影模块部件中使用的示例结构光图案以及有源立体3D捕获技术的其它方面,并特此通过引用被全部并入本申请中。国际申请公布号WO2013/144952描述了可能的投影模块设计(也被称为“闪光设计”)的例子并特此通过引用被全部并入。

作为例子,被包括在投影模块18中的发射器阵列210可包括IR光源,使得它能够投影IR辐射或光,且3D捕获传感器12可以是对在IR频带中的辐射敏感的IR传感器,并使得它能够捕获从场景返回的IR辐射。投影模块18和3D捕获传感器12被校准。根据当前公开的主题的例子,驱动器14、3D捕获处理器16或系统200的任何其它适当的部件可配置成实现用于维持在投影模块18和3D捕获传感器12当中的校准的自校准。

3D捕获处理器16可配置成执行各种处理功能,并运行与3D摄像机的一个或多个部件的操作有关的计算机程序代码。3D捕获处理器16可包括能够存储被执行的或由处理器16执行的计算机程序指令的存储器17。

驱动器14可配置成实现计算机程序,其操作或控制3D摄像机10的部件能够执行的某些功能、特征或操作。

根据当前公开的主题的例子,系统200除了3D摄像机10以外还可包括硬件部件,包括例如电源9020、存储装置30、通信模块9040、设备处理器40和存储器9060、设备成像硬件9110、显示单元9120和其它用户接口9130。应注意,在当前公开的主题的一些例子中,系统200的一个或多个部件可被实现为分布式部件。在这样的例子中,某个部件可包括分布在两个或多个互连的节点当中的两个或多个单元。此外作为例子,可能由设备处理器40执行的计算机程序可能能够控制分布式部件并可能够操作在两个或多个互连的节点中的每个上的资源。

已知使用在移动通信设备中的各种类型的电源。电源9020可包括一个或多个电源单元,例如电池、短期高电流源(例如电容器)、涓流充电器等。

设备处理器9050可包括能够处理软件程序的一个或多个处理模块。处理模块每个可具有一个或多个处理器。在这个描述中,设备处理器9050、在系统200中实现的不同类型的处理器例如主处理器、应用处理器等。设备处理器9050或通常在本文被提到为被包括在设备处理器中的任何处理器可具有一个或多个核心、内部存储器或高速缓存存储器单元。

存储器单元30可配置成存储执行系统200和它的任何部件的操作或功能所必需的计算机程序代码。存储单元30也可配置成存储可在系统200上执行的一个或多个应用,包括3D应用80。在分布式配置中,一个或多个3D应用80可存储在远程计算机化设备上,并可作为服务由系统200使用。此外或作为对应用程序代码的可选方案,存储单元30可配置成存储数据,包括例如由3D摄像机10提供的3D数据。

通信模块9040可配置成实现来去移动通信设备的数据通信。作为例子,可由通信模块9040支持的通信协议的例子包括但不限于蜂窝通信(3G、4G等)、有线通信协议(例如局域网(LAN))和无线通信协议例如Wi-Fi、无线个人区域网(PAN)例如蓝牙等。

应注意,根据当前公开的主题的一些例子,3D摄像机10的一些部件可在移动通信硬件资源上实现。例如,不是具有专用3D捕获处理器16,而是可使用设备处理器9050。更进一步作为例子,系统200可包括多于一个处理器和多于一种类型的处理器,例如一个或多个数字信号处理器(DSP)、一个或多个图形处理单元(GPU)等和3D摄像机可配置成使用来自多个设备处理器的特定的一个(或一个特定组或类型的)处理器。

系统200可配置成在操作系统70上运行。移动设备操作系统的例子包括但不限于:例如华盛顿州雷德蒙的微软公司的Windows MobileTM和由加利福尼亚州芒廷维尤的谷歌有限公司开发的Android操作系统。注意,如果系统200不是移动系统,可使用其它操作系统(例如Windows、Linux等)。

3D应用80可以是使用3D数据的任何应用。3D应用的例子包括虚拟卷尺测量、3D视频、3D快照、3D建模等。将认识到,不同的3D应用可具有不同的要求和特征。3D应用80可被分配到3D应用组或可与3D应用组相关。在一些例子中,设备9100可能能够并行地运行多个3D应用80。

成像硬件9110可包括任何成像传感器,在特定的例子中,可使用能够捕获可见光图像的成像传感器。根据当前公开的主题的例子,成像硬件9110可包括传感器,一般是至少对可见光敏感的传感器和可能还有用于实现在低可见光条件中的图像捕获的光源(例如一个或多个LED)。根据当前公开的主题的例子,设备成像硬件9110或其一些部件可被校准到3D摄像机10,且特别是3D捕获传感器12和投影模块18。将认识到,这样的校准可实现3D图像的纹理化和如本领域中的技术人员将已知的各种其它协同处理操作。

在又一例子中,成像硬件9110可包括用于捕获可见光图像和用于捕获IR图像的RGB-IR传感器。更进一步作为例子,RGB-IR传感器可用作3D捕获传感器12和可见光摄像机。在这个配置中,3D摄像机的驱动器14和投影模块18和可能设备9100的其它部件配置成与成像硬件9110协作地操作,且在上面给出的例子中,与RGB-IR传感器一起来提供3D深度或测距数据。

显示单元9120可配置成提供图像和图形数据,包括由3D摄像机10捕获的3D数据的视觉再现,可能在使用3D应用80被处理之后。用户接口9130可包括使用户能够与系统200交互作用的各种部件,例如扬声器、按钮、麦克风等。显示单元9120可以是也用作用户接口的触敏显示器。

在设备成像硬件9110能够并配置成服务于3D摄像机10的情况下,3D捕获处理器16或设备处理器9050或这样的处理实体的任何子部件或CPU核心等可配置成处理从3D捕获传感器12或从设备成像硬件9110接收的信号。为了方便起见,在下面的描述中,核心3D捕获功能应以非限制性方式归功于3D捕获处理器16和3D捕获处理器16。然而将认识到,在系统200的各种部件和子部件之间的功能和任务分配常常是设计选择。

根据当前公开的主题的例子,3D捕获处理器16可配置成收集成像数据、处理成像数据、分析成像数据、产生成像结果、成像内容和/或成像显示器等。

根据当前公开的主题的例子,3D捕获处理器16可接收IR图像和校准信息作为输入。作为例子,校准信息可与IR传感器(作为3D捕获传感器的例子)和投影仪(例如投影模块18)有关。在当前公开的主题的一些例子中,3D捕获处理器16还可接收例如来自设备成像硬件9110的彩色图像和彩色摄像机-IR摄像机校准信息作为输入。

作为例子,由3D捕获处理器16执行的处理可包括预处理、光学字符识别(OCR)、错误校正和三角测量。预处理功能可包括用于除去传感器噪声和用于例如通过解决光学问题例如散斑来提高信号质量的操作。OCR功能将在图像中的区域转换成在由投影模块18投影的图案中使用的以及由3D捕获传感器12捕获的多个码字之一。错误校正操作可包括计算,其使用关于所投影的图案/代码的预先存在的知识来校正码字或码字的特征的错误标记(其可导致一个或多个码字的标签的改变)。三角测量功能考虑成像几何以提取深度信息。在Gordon等人的美国专利号8,090,194中提供参考主动三角测量方法来进行的三角测量过程的例子。

根据当前公开的主题的例子,3D捕获处理器16还可执行颜色投影功能,由此,来自颜色传感器(例如来自设备成像硬件9110)的颜色投影到3D数据上。将认识到,颜色投影功能(如在这里关于3D捕获处理器16所述的任何其它功能一样)可由设备处理器9050或其任何处理部件执行。

可涉及处理操作并可被实现为某些3D应用的3D数据处理管线的部分的额外过程可以(但不一定)包括下列项中的一些(例如一个、两个、三个…):直播系统控制(例如自动增益、自动曝光、主动电源的控制和脉冲持续时间等)、点云注册、降噪、特征分类、特征跟踪、各种3D视觉使用、被动摄像机处理(例如姿势估计、来自运动的形状等)、惯性测量单元(IMU)处理(例如卡尔曼滤波器)、时间戳记、ISP功能(去马赛克、伽马校正)、压缩、校准质量监控等。将认识到,可在3D捕获处理器16上、在设备处理器9050上或在这两者上执行上面的操作(处理任务可在各种处理资源当中提前或实时地划分)。

根据当前公开的主题的例子,3D摄像机10在来自传感器12和可能来自其它源的信号的处理之后可配置成提供下列项中的一个或多个作为输出:一般具有平均量(点云)的一组3D点,其中可使用相邻点来计算平均量;使用相邻点的织构化网—三角测量(产生多边形表面);具有色图(色投影)的深度图。本领域中的技术人员将认识到,额外的输出可由3D摄像机10提供。如上面提到的,在当前公开的主题的一些例子中归功于3D摄像机10和3D捕捉处理器16的一些处理可在3D摄像机10之外且特别是由设备处理器9050执行,且所以可在图15中所示的例子中被称为3D摄像机的东西之外和在本文提供的图15的描述中产生在这里归功于3D摄像机10的一些输出。

根据当前公开的主题的例子,可能与3D捕获处理器16协作的设备处理器9050配置成确定或接收关于移动通信系统9100的资源的状态的数据。可在任何适当形式中组织资源状态数据。例如,相关或可选的资源可被分组,通过一些折衷而链接的资源可被链接,其使用越过某个阈值的资源可被分组,等等。

根据当前公开的主题的例子,除了使用状态数据以外,设备处理器9050还可配置成例如从存储器9060得到或接收可能对确定系统200的一个或多个资源的使用状态有用的额外信息。例如,设备处理器9050可得到与预期资源使用有关的数据,例如作为所调度的任务的结果或基于从资源使用方面来说关于设备9100或它的资源行为的统计数据和/或基于从资源使用方面来说关于在设备上运行的应用的行为的统计数据。在另一例子中,预期资源使用可与被预期要执行的任务有关,作为已经在移动通信设备上运行的过程的结果或为了任何其它原因。

根据当前公开的主题的例子,术语“资源可用性配置文件”在该描述中和在权利要求中用于描述数据,其在移动通信设备中用于描述移动通信设备的一个或多个资源的当前或预期状态,特别是描述与3D应用的操作相关的或被预期由3D应用或其任何特征的操作影响的资源的状态。

根据当前公开的主题的例子,设备处理器9050可配置成连续地监控系统200的资源的状态,并可相应地更新到资源可用性配置文件。在当前公开的主题的另外的例子中,设备处理器9050可配置成例行地监控资源状态并更新资源可用性配置文件,其中更新的定时是根据预定间隔来确定,或基于在设备处理器处接收的某个输入来确定。在又一例子中,当某个事件例如影响移动通信设备的至少一个资源的可用性出现时,设备处理器9050更新到资源可用性配置文件。

在整个描述中和权利要求中,参考术语“3D应用”。如在本文使用的术语“3D应用”涉及可作为应用在移动通信平台上运行的计算机程序代码(不管是在本地被托管还是远程地被托管并作为服务在移动通信设备上被使用),且该计算机程序代码体现使用3D数据、特别是由3D摄像机提供或从3D摄像机得到的3D数据的至少一个特征。这样的特征在本描述中和在权利要求中被称为3D捕获特征。3D应用的很多例子存在于市场中,且下文是其的小样本:虚拟卷尺测量、房间建模环境、3D分段和模型创建、增强现实游戏等。

将认识到,3D应用或3D应用的3D捕获特征可具有某些属性特性和要求。此外,为了实现、支持和/或执行不同的3D捕获特征,不同的资源(硬件资源,但可能还有软件资源)分配要求可存在(包括不同级别的给定资源),或从另一观点看或根据不同的实现,不同的3D捕获特征可使用不同的资源(包括不同级别的给定资源)。

例如,假设3D会议应用具有全视图特征和仅脸部特征,其中全场景特征涉及捕获和处理来自传感器的整个视场的3D数据,以及仅脸部特征涉及仅仅利用得到在场景中的区域的3D数据所需的资源,其中面向3D捕获传感器的人被检测到。在这两个特征当中,与仅脸部特征比较,3D捕获应用的全视图特征将非常可能消耗较大的处理、存储器和功率资源。

根据当前公开的主题的例子,给定3D应用80的给定特征可与3D应用的软件程序代码的特定部分相关。可选地或此外,3D应用80的特征可与特定的资源例如特定的硬件部件或在3D应用80外部并在系统200上运行的特定的软件程序代码相关。例如3D应用的特征可与系统200的惯性测量单元(未示出)相关。

根据当前公开的主题的例子,对于每个特征,可以提供成本度量。如在本文和在权例要求中使用的术语“成本度量”涉及所估计的特征的度量、给定资源或资源组或来自资源组的一个资源的预期或实测消耗,或度量可以是特征的资源消耗的全局度量。在又一例子中,成本度量可涉及所估计的特征的度量、在相应的3D捕获应用的给定模式下一个或多个资源的预期或实测消耗。

作为例子,每个特征的成本度量可包括多个资源的多个度量。更进一步作为例子,成本度量可包括可选资源的度量,且这样的度量和它们相关于的资源可被指示为备用物。将注意,提供这样的可选度量可能能够执行各种折衷计算,包括关于给定特征的不同配置,且在另一例子中关于在不同的3D应用中或在给定的(同一)3D应用的不同操作模式中的不同特征的实现。

此外,将可能在系统200中执行在功能上连接到彼此的两个或多个3D应用,且可例如向设备处理器9050指示在3D应用之间的关系,以及设备处理器9050可配置成当处理有关3D应用之一的给定特征的成本度量时考虑其一些特征的有关3D应用的关系和交叉效应。

作为例子,给定3D应用特征的成本度量可被提供为显式数据,其作为特征程序代码的部分被存储或以其他方式与特征程序代码相关。在另一例子中,可基于特征或用于实现特征的一个或多个资源的以前行为来确定(例如计算)给定3D应用特征的成本度量。在又一些另外的例子中,可基于统计数据例如基于有关特征和可能有关3D应用的资源消耗且可能也在类似的操作条件下、在类似的移动通信设备上等确定给定3D应用特征的成本度量。

可以在各种形式中提供成本度量。例如,成本度量可包括与功率(电)消耗的数量或水平、容量消耗(例如处理功率的消耗、存储器的消耗、通信带宽的消耗等)有关的信息。在另一例子中,成本度量可提供用户体验的方面的度量,例如增加或减小的时延、帧速率、输出的准确度等。

根据当前公开的主题的例子,除了3D捕获应用的给定特征的成本度量以外,还可关于特征得到函数度量。如在本文使用的术语“函数度量”与关于3D捕获应用特征的函数值提供的指示有关,函数度量关于3D捕获应用特征的函数值被提供。作为例子,特征的函数值指示特征对用户体验的值、重要性或贡献。在另一例子中,特征的函数值指示用于实现3D捕获应用的额外特征的特征的值、重要性或贡献或用于实现其它应用的特征的特征的值、重要性或贡献。

更进一步作为例子,给定特征的函数度量可涉及与相应的3D捕获应用的特定操作模式,且函数度量涉及在3D捕获应用的相应模式中的相应特征的函数值。

根据当前公开的主题的例子,每个3D应用可具有至少一个操作模式。根据当前公开的主题的例子,3D应用可包括直播模式。如在本描述中和在权利要求中使用的术语“3D捕获应用的直播模式”(或简单地说,“直播模式”)涉及3D应用的模式,其中即时(实时或近实时,例如最多1秒的时延)反馈被提供(例如在显示器上显现)给3D应用的用户(人或程序)。更进一步作为例子,在3D应用的直播模式中提供的反馈可能连同直播模式的额外特征一起可便于对3D数据的正在进行的捕获过程的控制的某个措施。例如,在3D应用的直播模式中由移动通信设备提供的即时反馈可实现一个或多个配置的修改和/或移动通信设备的至少一个资源的特征或使用修改正在进行的3D捕获过程的结果。可由直播模式实现的修改的例子包括改变3D成像部件的定向,修改由投影仪提供的照明的水平、改变由投影仪使用的图案的类型以及对移动通信设备的软件资源的控制,例如修改应用于来自传感器的进入的信号的增益的水平、改变在解码过程中使用的错误校正的类型等。

根据当前公开的主题的例子,如在本文使用的移动通信设备的资源可涉及移动通信设备的部件或子部件、固件例程或软件程序运行。

如本领域中的技术人员将认识到的,在3D应用也在非直播模式下操作的情况下,在3D捕获直播模式中使用的硬件和/或软件配置可对3D应用的非直播模式的操作有影响,并可对在3D应用的非直播模式中使用的资源——包括使用的水平等——有影响。在另一例子中,在3D捕获的非直播模式上传递的、例如用于进一步处理的数据的流也可被相应的3D应用的直播模式的实际实现影响。

在本公开中和在权利要求中,术语“3D应用的非直播模式”(或简单地说,“非直播模式”)(例如高于1秒或高于2-3秒的时延)涉及除了直播模式以外的3D应用的操作模式。根据当前公开的主题的例子,3D应用的非直播模式是不与3D捕获操作同时发生的模式。更进一步作为例子,3D应用的非直播模式通常涉及资源的进一步利用,包括例如3D数据的进一步处理。更进一步作为例子,非直播模式还可包括通过系统200的设备处理器9050进行进一步处理,或在另一例子中通过外部(和远程)资源进行进一步处理。

将认识到,除了给定3D应用的直播模式以外,几个非直播模式也可存在,其中每个可具有不同的特征或具有不同配置的特征。作为例子,模式可在时延的量方面以及在其它特性方面不同于彼此。

根据当前公开的主题的例子,3D应用的给定模式可包括至少两个特征,其中这两个特征是彼此的备用特征,以及其中在应用的给定模式中,可能只使用这两个特征中的仅仅一个。进一步作为例子,这两个备用特征中的每个可具有不同的资源消耗。

根据当前公开的主题的例子,某个3D应用的两个不同模式可具有一个或多个公共3D应用特征。进一步作为例子,3D应用的给定特征在给定3D应用的不同模式中可具有不同的配置或不同的特性。将注意到可在特定的不同配置中具有不同的资源消耗特性的给定特征。在根据当前公开的主题的例子受制于资源管理过程的3D应用跨越两个操作模式具有在资源管理过程中使用的相同集合的特征的情况下,至少一个特征可在这两个操作模式的每个中具有不同的配置。

在其它例子中,某个3D应用的两个不同模式可具有完全不同的特征(没有一个特征是共同的)。

根据当前公开的主题的例子,3D应用或3D应用的给定特征可具有本地模式和远程模式。根据当前公开的主题的例子,在给定特征的本地模式中,由3D应用的特征消耗的大部分——包括全部——资源驻留在本地或大部分是移动通信设备的本地特征,而在特征的远程模式中,由特征消耗的大部分——包括全部——资源处于远程节点上(在移动通信设备的外部),例如大部分资源在云中。

在一个例子中,3D捕获处理器16或设备处理器9050可配置成基于涉及移动通信设备的一个或多个资源的可用性或状态的资源可用性信息例如电池功率、处理功率、存储器资源、通信带宽、远程处理的可用性等来确定在应用的给定模式中使用3D应用80的哪个特征或是否使用3D应用的第一模式的特征或3D应用的第二模式的特征。更进一步作为例子,关于在特定模式中使用哪个特征的决定可进一步基于与特征相关的一个或多个硬件成本参数。

图52是示出包括对3D捕获应用特征的远程模式的支持的根据当前公开的主题的例子的系统的方框图图示。如可在图51中看到的,系统900包括云平台910,其包括实现与3D捕获应用的给定特征相关的过程的一些或全部的远程实现的资源。

图56A、56B和56C是示出根据当前公开的主题的例子的配置成得到包括至少一个物体的场景的距离数据的装置3000的例子的功能方框图。

装置3000包括通信接口3010,其能够接收:第一图像,其中二维编码光图案的第一投影被投影在物体上,以及第二图像,其中二维编码光图案的第二投影被投影在物体上,其中第一投影和第二投影相对于彼此刚性地移动。

此外,通信模块3010可操作来从成像感测单元接收第一图像和第二图像。成像感测单元可以是装置3000的部分(即可选的成像感测单元3030)或在它外部(即成像单元2230)。

通信模块3010可操作来无线地和/或通过有线连接接收第一图像和第二图像。通信模块3010也配置成向处理单元3040提供第一图像和第二图像。可选地,通信模块3010还可配置成将信息发送到成像感测单元(例如用于请求待提供的图像数据)和/或到其它系统或实体(例如用于提供处理结果或处理单元3040的其它信息)。

第一图像和第二图像可涉及同一图像(或多个图像),例如,如果这两个投影被同时投影,但也可涉及不同的图像,例如,如果第一投影和第二投影一个接一个地被投影。

注意,上面所述的(通过明确可见的例子或通过它的特性的讨论)图案中的任一个可以是在由通信模块3010接收的第一图像和第二图像的获取期间被投影到物体300上的二维编码光图案。

装置3000还包括配置成处理第一图像和第二图像以确定物体的测距参数的处理单元3040。

注意,处理单元3040可实现处理单元240的每一个特征、能力、结构和变形,加以必要的变动。为了本公开的简洁和清楚的原因,注意,处理单元240的详述的公开也可适用于装置3000的处理单元3040,加以必要的变动。

参考在前面的附图中阐述的例子,注意,处理单元3040可配置成执行阶段530。处理单元3040的不同实施方式可实现阶段530的各种所公开的变形,即使没有明确地被详述。

可选地,装置3000还包括配置成捕获第一图像和第二图像的成像感测单元3030。

注意,成像感测单元3030可实现成像感测单元230的每一个特征、能力、结构和变形,加以必要的变动。为了本公开的简洁和清楚的原因,注意,成像感测理单元230的详述的公开也可适用于装置3000的成像感测单元3030,加以必要的变动。

参考在前面的附图中阐述的例子,注意,成像感测单元3030可配置成执行阶段520。成像感测单元3030的不同实施方式可实现阶段520的各种所公开的变形,即使没有明确地被详述。

通常,成像感测单元230可操作来并配置成使用在物体上投影的二维编码光图案的多个投影来捕获物体的一个或多个图像。

如前面提到的,上面关于系统200和/或系统500所述——显式地或隐式地——的任何图案也可用作图案,其图像由装置3000(且特别是由处理单元3040)处理。

此外,关于系统200、方法500和/或任一图案讨论的在二维编码光图案的第一投影和第二投影之间的任何关系也可用作在投影之间的关系,投影的图像由装置3000处理。这涉及空间关系、时间关系、颜色关系和可涉及这两个投影之间的任何其它关系。

参考处理单元3040,可选地,处理单元3040配置成:(a)从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;(b)对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及(c)基于多个结果值来确定物体的测距参数。

虽然不一定是这样,由处理单元3040使用的预定数学运算在上面的行动(b)中可选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

可选地,处理单元3040可配置成:(a)基于多个结果值来计算下列项中的至少一个的高精度信息:(i)第一投影的载波元素集合,以及(ii)第一投影的有效载荷元素集合,其中高精度信息具有选自由高精度位置信息和高精度颜色信息组成的一组数据类型的数据类型;以及(b)基于高精度信息来确定物体的测距参数。

可选地,处理单元3040可配置成:(a)从第一图像和从第二图像得到编码状态;(b)产生多个编码状态集合,每个编码状态集合包括来自第一图像的第一特征元素的编码状态和来自第二图像的空间上相应的第一特征元素的编码状态;(c)处理每个编码状态集合的编码状态,以提供每个编码状态集合的结果值;以及(d)基于多个结果值来确定物体的测距参数。

可选地,处理单元3040可配置成应用选自由加法、减法、减法的绝对值和除法组成的一组数学运算的预定数学运算作为前面段落的行动(c)的部分。

可选地,处理单元3040可配置成产生结果图像,其中每个像素的颜色基于相应的编码状态集合的结果值;以及基于结果图像来确定物体的测距参数;其中结果图像特征在于下列性质中的至少一个:(a)第一特征元素的位置是在子像素准确度中可分辨的;(b)第二特征元素的位置是在子像素准确度中可分辨的;(c)在二维编码光图案中的边缘是在子像素准确度中可分辨的;(d)在特征元素之间的边界是在子像素准确度中可分辨的;(e)多个像素与正结果值相关,而多个像素与负结果值相关。

注意,虽然装置3000被讨论为使用单个二维编码光图案的两个投影用于确定测距参数,可使用二维编码光图案的多于两个投影(类似于关于系统200和/或方法500讨论的内容)。

此外,虽然装置3000被讨论为使用单个二维编码光图案的两个投影用于确定测距参数,除了二维编码光图案的两个或多个投影以外还可使用二维光图案(例如均匀光等)(类似于关于系统200和/或方法500讨论的内容)。

参考图56C,注意,使用于在图51和52中使用的参考数字相同的参考数字来给除了单元3010、3030和3040以外的装置3000的部件编号。如前面提到的,相同的参考数字在附图当中重复以指示相应或相似的元件。图56C的部件(除了部件3010、3030和3040以外)具有与关于图51和52讨论的相应部件相应和相似的结果和功能。

图57A和57B是示出根据当前公开的主题的例子的方法4500的例子的流程图。方法4500是用于计算物体的测距信息的方法。

参考在前面的附图中阐述的例子,方法4500可由装置3000和/或由系统200执行。装置3000和/或系统200的不同实施方式可实现方法4500的各种所公开的变形,即使未明确详述。同样,方法4500的不同实施方式可包括阶段,其执行完成装置3000和/或系统200的各种所公开的变形,即使描述的简明和清楚并不需要这样的重复。

方法4500至少包括阶段525和阶段530(其关于方法500被详细讨论)。阶段525包括接收:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像。这些第一投影和第二投影相对于彼此刚性地移动。参考关于前面的附图阐述的例子,阶段525可由通信模块3010执行。注意,可选地,参考关于前面的附图阐述的例子,阶段525还可被考虑为由处理单元3040执行。

如前面提到的,阶段530包括处理第一图像和第二图像以确定物体的测距参数。在上面关于方法500提供的阶段530的各种变形和子阶段的整个讨论也可适用于方法4500。参考关于装置3000的前面的附图阐述的例子,阶段530可由处理单元3040执行。

可选地,方法4500还可包括在阶段525之前的收集从物体反射的光的阶段520以提供:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像。如前面提到的,这些第一投影和第二投影相对于彼此刚性地移动。

进一步公开了由机器可读的程序存储设备,程序存储设备有形地体现由机器可执行的指令的程序以执行用于计算物体的测距信息的方法。虽然不一定是这样,指令的程序可包括用于执行方法4500的指令。

程序存储设备由机器可读,且它有形地体现由机器可执行的指令以执行用于计算物体的测距信息的方法,其包括下列步骤:

a.收集从物体反射的光以提供:第一图像,其中物体以投影在其上的二维编码光图案的第一投影被成像,以及第二图像,其中物体以投影在其上的二维编码光图案的第二投影被成像,其中第一投影和第二投影相对于彼此刚性地移动;以及

b.处理第一图像和第二图像以确定物体的测距参数。

可选地,二维编码光图案可使用离散编码来被编码。

可选地,处理包括:

a.从第一图像和从第二图像得到多个强度值集合,每个强度值集合包括来自第一图像的强度值和来自第二图像的空间上相应的强度值;

b.对每个强度值集合的值应用预定数学运算,以提供每个集合的结果值;以及

c.基于多个结果值来确定物体的测距参数。

可选地,预定数学运算选自由加法、减法、减法的绝对值和除法组成的一组数学运算。

可选地,处理包括:

a.基于多个结果值来计算下列项中的至少一个的高精度信息:(a)第一投影的载波元素集合,以及(b)第一投影的有效载荷元素集合,其中高精度信息具有选自由高精度位置信息和高精度颜色信息组成的一组数据类型的数据类型;以及

b.基于高精度信息来确定物体的测距参数。

可选地,在第一投影和第二投影之间的刚性移动不平行于二维编码光图案的任何编码方向。

可选地,第一投影和第二投影中的每个包括多个特征类型,其中每个特征类型由来自特征元素第一集合和来自特征元素第二集合的特征元素的独特构型形成;以及其中在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素具有与来自第二投影的相应特征类型的特征元素第二集合的特征元素的编码状态不同的编码状态。

可选地,每个特征类型由来自特征元素第一集合、来自特征元素第二集合以及来自除了第一集合和第二集合以外的特征元素的至少一个额外集合的特征元素的独特构型形成。

可选地,在第一和第二投影中的多对空间上重叠的特征类型中的每对中,来自在第一投影中的特征类型的特征元素第二集合的特征元素是来自第二投影的相应特征类型的特征元素第二集合的对应特征元素的反转。

可选地,在多对中的每对中,对于来自特征元素第一集合的被包括在第一投影的特征类型中的每个特征元素,该特征元素的反转被包括在第二投影的特征类型中。

可选地,在第一投影和第二投影之间的刚性移动可提供在多对的每对中的特征类型中的特征元素当中的期望关系。

可选地,在第一投影和第二投影之间的刚性移动使来自特征元素第一集合的特征元素作为在第二投影中的反转的特征元素而出现。

可选地,对于在二维编码光图案中的第一集合的多组相邻第一特征元素中的每组第一特征元素,该组第一特征元素是可解码的以提供指示该组第一特征元素在二维编码光图案中的位置的信息。

可选地,第一集合的特征元素的多个子组可被处理以检测第二集合的一个或多个特征元素。

可选地,在第二投影中的每个第一特征元素至少部分地与在第一投影中的相应第一特征元素重叠。

可选地,处理包括:

a.从第一图像和从第二图像得到编码状态;

b.产生多个编码状态集合,每个编码状态集合包括来自第一图像的第一特征元素的编码状态和来自第二图像的空间上相应的第一特征元素的编码状态;

c.处理每个编码状态集合的编码状态,以提供每个编码状态集合的结果值;以及

d.基于多个结果值来确定物体的测距参数。

根据权利要求96的程序存储设备,其中处理包括应用选自由加法、减法、减法的绝对值和除法组成的一组数学运算的预定数学运算。

可选地,指令的程序还包括由机器可执行的指令以执行:产生结果图像,其中每个像素的颜色基于相应的编码状态集合的结果值;其中所述确定包括基于结果图像来确定物体的测距参数;其中结果图像特征在于下列性质中的至少一个:(a)第一特征元素的位置是在子像素准确度中可分辨的;(b)第二特征元素的位置是在子像素准确度中可分辨的;(c)在二维编码光图案中的边缘是在子像素准确度中可分辨的;(d)在特征元素之间的边界是在子像素准确度中可分辨的;(e)多个像素与正结果值相关,而多个像素与负结果值相关。

可选地,指令的程序还包括由机器可执行的指令以执行:控制二维编码光图案的第一投影和控制二维编码光图案的第二投影到物体上的投影。参考关于前面的附图阐述的例子,投影的控制可包括控制投影仪210和/或外部投影仪2210的操作。

可选地,指令的程序还包括由机器可执行的指令以执行:控制从物体反射的光的收集以提供第一图像和第二图像。参考关于前面的附图阐述的例子,收集的控制可包括控制成像感测单元230、1230和/或3030的操作。

指令的程序使计算机执行用于计算物体的测距信息的方法。虽然不一定是这样,指令的程序可以使计算机执行方法4500。

虽然在本文示出并描述了本发明的某些特征,本领域中的普通技术人员现在将想到很多修改、替换、变化和等效形式。因此应理解,所附权利要求意欲涵盖如落在本发明的真实精神内的所有这样的修改和变化。

将认识到,上面所述的实施方式作为例子被引用,且其各种特征和这些特征的组合可被改变和修改。

虽然示出和描述了各种实施方式,将理解,没有由这样的公开限制本发明的意图,更确切地,意图是涵盖落在本发明的范围内的所有修改和可选的结构,如在所附权利要求中定义的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1