CN111295691A - 处理图像的方法和装置 - Google Patents

处理图像的方法和装置 Download PDF

Info

Publication number
CN111295691A
CN111295691A CN201880071216.3A CN201880071216A CN111295691A CN 111295691 A CN111295691 A CN 111295691A CN 201880071216 A CN201880071216 A CN 201880071216A CN 111295691 A CN111295691 A CN 111295691A
Authority
CN
China
Prior art keywords
pattern
cell
cells
image
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201880071216.3A
Other languages
English (en)
Other versions
CN111295691B (zh
Inventor
A.沃洛赫纽克
桂溶灿
李重基
金圣淳
金善京
A.布特
A.萨克哈列夫
D.瓦夫迪尤克
K.莫罗佐夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN111295691A publication Critical patent/CN111295691A/zh
Application granted granted Critical
Publication of CN111295691B publication Critical patent/CN111295691B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/521Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • G01B11/25Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object
    • G01B11/2513Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures by projecting a pattern, e.g. one or more lines, moiré fringes on the object with several lines being projected in more than one direction, e.g. grids, patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • G06V10/225Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on a marking or identifier characterising the area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10048Infrared image
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/20Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from infrared radiation only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/30Transforming light or analogous information into electric information
    • H04N5/33Transforming infrared radiation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Optics & Photonics (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • Image Analysis (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

一种计算三维(3D)图像的深度信息的方法,包括:基于二维(2D)图像中包括的至少一个元胞的值来生成图案;投射该图案;捕获该图案的反射图像;以及根据该图案的反射图像来计算深度信息。

Description

处理图像的方法和装置
技术领域
本公开涉及一种用于处理图像的方法和装置,并且更具体地,涉及一种用于处理二维(2D)和三维(3D)图像的方法和装置。
背景技术
本公开涉及一种用于处理图像的方法和装置,并且更具体地,涉及一种用于处理二维(2D)和三维(3D)图像的方法和装置。
随着增强现实(augmented reality,AR)或虚拟现实(virtual reality,VR)吸引越来越多的关注,已经开发了各种电子设备来实施AR(或VR)。
对于AR(或VR)实施方式,正在开发3D环境建模技术,包括例如被动立体镜和主动投射。
以上信息仅作为背景信息呈现,以帮助理解本公开。关于以上内容中的任何内容是否可以用作关于本公开的现有技术,没有做出确定,也没有做出断言。
发明内容
技术问题
为了对3D环境建模,需要关于图像的深度信息。已经开发了各种计算深度信息的方法,诸如投射预定编码并基于投射的编码计算深度信息的基于结构化光的解决方案。
技术方案
本公开的一方面在于至少解决上述问题和/或缺点,并至少提供下述优点。因此,本公开的一方面在于提供一种用于处理图像以进行三维(3D)环境建模的方法和装置。
根据本公开的一方面,提供了一种计算深度信息的方法。该方法包括:基于在2D图像中包括的至少一个元胞(cell)的值来生成图案;投射该图案;捕获该图案的反射图像;以及基于该图案的反射图像来计算深度信息。
根据本公开的另一方面,提供了一种终端。该终端包括投射器、捕获单元和处理器,该处理器被配置为:控制投射器基于2D图像中包括的至少一个元胞的值来生成图案并投射该图案;控制捕获单元捕获该图案的反射图像;并且基于该图案的反射图像来计算深度信息。
根据结合附图公开了本公开的实施例的下面的详细描述,本公开的其他方面、优点和显着特征对于本领域技术人员将变得显而易见。
在进行下面的详细描述之前,阐明贯穿本专利文件中使用的某些词语和短语的定义可能是有利的:术语“包括”和“包含”及其派生词意思是包括但不限于;术语“或”是包含性的,意思是和/或;短语“与……相关联”和“与之相关联”及其派生词可能意思是包括、包括在……内、与……互连、包含、包含在……内、连通(connect)到或与……连通、耦合到或与……耦合、可与……通信、与……协作、交织、并列、邻近、绑定到或与……绑定、具有、具有……的性质等;并且术语“控制器”意思是控制至少一个操作的任何设备、系统或其一部分,这样的设备可以用硬件、固件或软件或它们中至少两个的某种组合来实施。应当注意,与任何特定控制器相关联的功能可以是集中式或分布式的,不管在本地或在远程。
此外,以下描述的各种功能可以由一个或多个计算机程序实施或支持,每个计算机程序由计算机可读程序代码形成并体现在计算机可读介质中。术语“应用”和“程序”是指适于以合适的计算机可读程序代码实施的一个或多个计算机程序、软件组件、指令集、过程、功能、对象、类、实例、相关数据或其一部分。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够由计算机访问的任何类型的介质,诸如只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、硬盘驱动器、致密盘(compact disc,CD)、数字视频光盘(digital video disc,DVD)或任何其他类型的存储器。“非暂时性”计算机可读介质不包括传输暂时性电或其他信号的有线、无线、光学或其他通信链路。非暂时性计算机可读介质包括可以永久存储数据的介质和可以存储数据并随后覆写的介质,诸如可重写光盘或可擦除存储器设备。
贯穿本专利文件中提供了某些词语和短语的定义。本领域普通技术人员应当理解,在很多情况下(即使不是大多数情况下),这种定义适用于这种定义的词语和短语的先前以及将来的使用。
附图说明
从下面结合附图的描述中,本公开的某些实施例的上述和其他方面、特征和优点将变得更加显而易见,其中:
图1示出了根据本公开实施例的三维(3D)环境图重构系统;
图2示出了根据本公开实施例的终端;
图3示出了根据本公开的另一个实施例的终端;
图4示出了根据本公开实施例的终端的框图;
图5A和图5B示出了根据本公开的各种实施例的考虑用于二维(2D)元胞自动机(automata)的邻居结构;
图6是示出根据本公开的实施例的生成不同的元胞自动机图案的方法的流程图;
图7示出了根据本公开实施例的2D图像;
图8示出了根据本公开的实施例的用于生成不同的元胞自动机图案的规则;
图9示出了根据本公开的实施例的连续元胞;
图10示出了根据本公开的实施例的相邻元胞;
图11是描绘根据本公开的实施例的设置初始值的方法的视图;
图12示出了根据本公开的实施例的设置初始值的结果;
图13至图17示出了根据本公开的实施例的详细的元胞自动化过程;
图18是描绘根据本公开的实施例的确定电磁场滤波器的间距大小和用于生成元胞自动机的元胞大小的方法的视图;
图19示出了根据本公开实施例的2D图像;
图20示出了根据本公开的另一个实施例的2D图像;
图21示出了根据本公开的实施例的投射和捕获元胞自动机图案的过程;
图22示出了根据本公开的另一个实施例的投射和捕获元胞自动机图案的过程;
图23是示出根据本公开实施例的解码元胞自动机图案的方法的流程图;
图24A和图24B示出了根据本公开实施例的聚类方法;
图25A-图25E示出了根据本公开的实施例的聚类结果;
图26A-图26F示出了根据本公开的实施例的识别元胞自动机图案的方法;
图27示出了根据本公开实施例的元胞自动机图案中的索引;
图28示出了根据本公开的实施例的处理元胞自动机图案中的索引的方法;
图29A-图29H示出了根据本公开实施例的检测水平和垂直连通分量的方法;
图30A-图30H示出了根据本公开的实施例的估计垂直聚类的差异的方法;
图31A-图31D示出了根据本公开的实施例的估计水平聚类的差异的方法;
图32A和图32B示出了根据本公开的实施例的确定垂直聚类差和水平聚类差之和的方法;
图33A和图33B示出了根据本公开的实施例的确定移位表的方法;
图34A-图34G示出了根据本公开的另一个实施例的估计垂直聚类的差异的方法;
图35A和图35B示出了根据本公开的另一个实施例的确定移位表的方法;
图36A-图36C示出了根据本公开的另一个实施例的确定移位表的方法;
图37A-图37C示出了根据本公开的另一个实施例的确定移位表的方法;
图38A-图38E示出了根据本公开的实施例的处理边界元胞的方法;
图39A-图39E示出了根据本公开的另一个实施例的处理边界元胞的方法;
图40A-图40E示出了根据本公开的另一个实施例的处理边界元胞的方法;
图41A-图41E示出了根据本公开的另一个实施例的处理边界元胞的方法;
图42示出了根据本公开的实施例的对象分割;
图43是示出根据本公开实施例的对象分割方法的流程图;
图44A-图44H是描绘根据本公开实施例的对象分割方法的视图;
图45A-图45F是描绘根据本公开的另一个实施例的对象分割方法的视图;
图46A-图46C示出了根据本公开实施例的三角测量方法;
图47示出了根据本公开的各种实施例的元胞自动机网格(grid)的类型;
图48示出了根据本公开的各种实施例的矩形网格的元胞自动机规则的示例;
图49示出了根据本公开实施例的2D图案;
图50示出了根据本公开的另一个实施例的2D图案;
图51示出了根据本公开的实施例的元胞自动机演化;
图52示出了根据本公开的实施例的2D元胞自动机规则;
图53示出了根据本公开的实施例的元胞自动机;
图54A-图54D示出了根据本公开的另一个实施例的元胞自动机;
图55A-图55D示出了根据本公开的各种实施例的元胞自动机的自恢复;
图56示出了根据本公开的实施例的元胞自动机的初始状态的生成;
图57A和图57B示出了根据本公开的实施例的在初始阶段生成的图案;
图58示出了根据本公开的各种实施例的遗传图案;
图59A和图59B示出了根据本公开的各种实施例的匹配区域;
图60示出了根据本公开实施例的图案图像和元胞自动机网格之间的映射关系;
图61A和图61B示出了根据本公开的实施例的元胞自动机网格的物理网格和计算网格之间的映射;
图62示出了根据本公开的实施例的卷积;
图63A和图63B示出了根据本公开的实施例的核近似的概念;
图64示出了根据本公开的实施例的卷积计算;
图65示出了根据本公开的实施例的遗传图案的生成;
图66示出了根据本公开的实施例的2D元胞自动机的逐时期演化,以实现静态自组织状态;
图67示出了根据本公开的实施例的通过借助遗传算法(genetic algorithm,GA)演化2D元胞自动机的全局方面来简化或近似2D元胞自动机的执行;
图68示出了根据本公开的实施例的在近似为卷积核期间的转换规则内的连通分量;
图69示出了根据本公开的实施例的点云密度的减少;以及
图70是示出根据本公开实施例的计算三维(3D)图像的深度信息的方法的流程图。
贯穿附图中,相同的参考标号将被理解为指代相同的部分、组件和结构。
具体实施方式
下面讨论的图1至图70以及在本专利文件中用于描述本发明原理的各种实施例仅是说明性的,并且不应以任何限制本发明的范围的方式进行解释。本领域技术人员将理解,本公开的原理可以在任何合适布置的系统或设备中实施。
将参考附图详细描述本公开的实施例。要领会,将只描述理解根据本公开实施例的操作所需的部分,而将不描述剩余部分,以免模糊本公开的主题。尽管在本公开中使用的术语是考虑到本公开的实施例中的功能而定义的,但是这些术语可以根据用户或操作者的意图或惯常行为而改变。因此,本公开应当不仅通过所使用的实际术语来理解,还通过其内的每个术语的含义来理解。
可以对本公开进行许多修改,并且本公开可以具有各种实施例。参考附图描述了本公开的具体实施例。然而,实施例并不意图将本公开限制于特定实施例,并且要理解,本公开覆盖了在本公开的范围和精神内的实施例的各种修改、等同物和/或替代物。
除非在本公开的实施例中另有定义,否则在本公开中使用的包括技术或科学术语的术语可以具有与本领域技术人员通常理解的含义相同的含义。字典中通常定义的术语可以被解释为具有与相关技术的上下文含义相同或相似的含义。除非另有定义,否则这些术语不应被解释为理想或过度正式的含义。
现在,将参考附图给出对本公开的各种实施例的详细描述。
图1示出了根据本公开实施例的三维(3D)环境图重构系统。
3D环境图重构系统可以包括电磁波(或光)源22-1、电磁滤波器或掩模22和光接收单元21。
电磁波源22-1照射(或投射)电磁波束。
电磁场滤波器或掩模22基于透镜系统形成要照射到对象29(或3D空间)上的电磁场的空间分布的图案。
光接收单元21检测从对象29(或3D空间)反射的电磁场,并记录电磁场的空间分布。光接收单元21可以包括检测器21-1。
根据本公开的实施例,电磁波源22-1、电磁场滤波器或掩模22和光接收单元21可以包括在电子设备中。下面将详细描述作为电子设备的终端的配置。
图2示出了根据本公开的实施例的终端。
参考图2,终端10包括(一个或多个)光投射器11和12、红外(IR)摄像头13和14、以及红、绿、蓝(RGB)摄像头15。
光投射器11和12投射图案(或二维(2D)图案图像)。
IR摄像头13、14-1和14-2捕获从对象反射的投射图案的图像(例如,2D图像)。
RGB摄像头15捕获例如在可见光线区域中的空间或对象。
在图2中,光投射器11和12以及IR摄像头13、14-1和14-2可以如参考标号12和13所示(实施方法1)或如参考标号11和14所示(实施方式2)来提供。例如,光投射器11和12与IR摄像头13、14-1和14-2之间的距离b(基础)可以被设置为等于或小于100mm,如参考标号16和18所示。此外,可以将RGB摄像头15设置为与IR摄像头14-1和14-2分开10mm或更大的距离,如参考标号17所示。
图3示出了根据本公开的另一个实施例的终端。
图3示出了终端30的前表面30-1和后表面30-2。
终端30的前表面30-1包括IR摄像头31和光投射器32。终端30的后表面30-2包括IR摄像头33、光投射器34和RGB摄像头35。这里避免了与图1的描述重复的描述。
图4示出了根据本公开实施例的终端的框图。
这里避免了与图1和图2的描述冗余的描述。
终端400包括投射器410、捕获单元420和处理器430。
投射器410投射光。例如,投射器410可以投射预定的光图案。这里,图案可以由IR光投射。
捕获单元420可以捕获投射的光的图像。例如,捕获单元420可以捕获已经被反射的投射的光的图像。捕获单元420可以具有RGB捕获功能,或者终端400可以进一步包括具有RGB捕获功能的捕获单元。
处理器430向终端400提供总体控制。特别地,处理器430可以通过演化元胞自动机来生成图案。也就是说,处理器430可以基于在2D图像中包括的至少一个元胞的值来生成图案。生成图案的过程相当于为针对在2D图像中包括的多个元胞中的每一个元胞设置值。
至少两个值中的一个可以被分配给在2D图像中包括的多个元胞中的每个。元胞是形成2D图像和图案的单位。例如,至少两个值是“0”或“1”,并且“0”或“1”可以被分配给多个元胞中的每个。此外,自动机演化是指将至少两个值中的一个分配给多个元胞中的每个的过程。例如,处理器430可以重复将“0”或“1”分配给多个元胞之一并将“0”或“1”分配给多个元胞当中与该元胞相邻的一个元胞的操作。
例如,假设一维(1D)自动机(automation)演化,处理器430可以通过下面的[数学式1]来执行1D演化。
[数学式1]
Figure BDA0002475241530000081
在另一个示例中,假设2D自动机演化,处理器430可以通过下面的[数学式2]来执行2D演化。
[数学式2]
Figure BDA0002475241530000082
当生成图案时,处理器430可以使用在2D图像中包括的多个元胞的行或列中设置的初始值。例如,如果行或列包括五个元胞,则行或列的初始值可以被设置为10010。
在上面的示例中,1D演化可以用于2D演化。此外,很明显,本公开的各种实施例适用于2D或更高阶演化。
处理器430可以通过基于2D图像中一个元胞的值和与该一个元胞相邻的两个元胞的值之和来确定与该一个元胞相邻的另一个元胞的值,来生成图案。
处理器430可以控制投射器410投射所生成的图案。此外,处理器430可以控制捕获单元420捕获图案的反射图像。这里,处理器430可以基于图案和图案的反射图像来计算3D环境建模的深度信息。
处理器430可以基于图案的反射图像中包括的多个元胞的行或列中的元胞的值来生成图案。此外,处理器430可以基于元胞的值和与该元胞相邻的两个元胞的值来确定与该元胞相邻的另一个元胞的值。此外,处理器430可以将在图案的反射图像中包括的多个元胞的值与基于行或列中的元胞的值生成的图案中包括的多个元胞的值进行比较,并且可以基于比较结果来计算深度信息。
深度信息可以基于图案中包括的多个元胞的值和图案的反射图像中包括的多个元胞的值之间的匹配或不匹配来计算。
处理器430可以确定图案的反射图像中的丢失区域。在这种情况下,处理器430可以通过自动机演化来生成丢失区域的图案。
处理器430可以根据基于在图案的反射图像中包括的一行/列生成的第一行/列是否匹配与该一行/列相邻的第二行/列来确定是否执行自动机演化。匹配或不匹配可以基于第一行/列和第二行/列之间的汉明距离来确定。
在下文中,将描述与本公开和本公开的特定实施例相关的理论和数学公式。显然,每个理论、数学公式和具体实施例可以由处理器执行,即使没有明确指定。
前述图案可以称为遗传图案(genetic pattern)。这种遗传图案可以是由元胞自动机或元胞自动机演化生成的。
元胞自动机
根据本公开的实施例,提供了一种生成结构化光图案的方法。图案生成过程是2D网格中元胞自动机的演化,其分辨率与IR摄像头图像的分辨率相同。元胞自动机可以被定义为基于图像图案中的初始元胞(或点)的初始值或初始行或列中的元胞的初始值来确定相邻元胞的值的过程。这里,初始值可以被预先设定或从外部接收。
元胞自动机图案演化的结果可以是基于局部和全局相关性的恒定2D图案,并且可以根据图案演化来重新配置子像素差异图。元胞自动机是系统的数学模型,在该模型中许多简单的分量相互作用,以产生复杂的行为模式。许多方案可用于1D元胞自动机。
根据本公开的实施例,1D和2D元胞自动机可以使用更高阶自动机,而不限制一般性。1D元胞自动机到2D元胞自动机的扩展对于扩展本公开的意图生成更高阶图案的原理是重要的。
元胞自动机包括位点(或元胞)的规则晶格(lattice)。每个位点呈现k个可能的值(物种(species)),并根据取决于其周围某些邻区(neighborhood)中位点的值的规则,以离散的时间步长进行更新。1D元胞自动机A1中位置i处的位点的值
Figure BDA0002475241530000101
(数学式1)取决于最近的邻居,并且因此由根据以下数学式演化的规则来确定。
2D元胞自动机有几种可能的晶格和邻区结构。根据[数学式2],5邻居元胞自动机通过1D元胞自动机类似地演化。
此外,在特殊类别的总体性(totalistic)规则中,位点的值可以取决于邻区中的值之和。
[数学式3]
Figure BDA0002475241530000102
总体规则,其中位点的值单独地取决于其邻区中的位点的值之和以及位点本身的
图5A和图5B示出了根据本公开的各种实施例的考虑用于2D元胞自动机的邻区结构。
参考图5A和图5B,在元胞自动机演化中,根据取决于阴影元胞的值的规则来更新中心元胞41和42的值。图5A中所示的元胞自动机被称为“五邻居正方形”,并且图5B中所示的元胞自动机被称为“九邻居正方形”。这些邻区有时分别被称为冯·诺依曼(J.vonNeumann)邻区和摩尔邻区。总体元胞自动机规则采用中心位点的值,该值取决于邻区中的位点的值之和。利用外部总体规则,位点根据其以前的值以及邻区中其他位点的值之和进行更新。例如,三角形和六边形晶格也是可能的,但是它们没有在这里给出的示例中使用。五邻居正方形、三角形和六边形元胞自动机规则都可以被认为是一般邻居正方形规则的特殊情况。
图6是示出根据本公开的实施例的生成元胞自动机图案的方法的流程图。
首先,在操作S610中,处理器430确定元胞自动机图案的元胞大小。例如,元胞自动机图案的元胞大小可以以像素来确定。例如,元胞自动机图案的元胞大小可以被确定为1×1、2×2和3×3(像素×像素)。
然后,在操作S620中,处理器430确定用于生成元胞自动机图案的规则,这将在下面参考图8详细描述。
在操作S630中,处理器430选择要为其设置初始值的行或列。例如,处理器430可以将具有3×3像素的2D图像的最左边的列设置为要为其设置初始值的列。要为其设置初始值的行或列被确定为2D图像的行或列中的至少一个。
在操作S640中,处理器430可以设置初始值。例如,如果要为其设置初始值的所选择的列包括10个元胞,则初始值可以被设置为0110011100。这里,所确定的初始值的每个数字对应于一个元胞。
在操作S650中,处理器430基于所确定的初始值和所确定的图案生成规则来确定初始行或列旁边的行或列的值。初始行或列的下一行或列可以是最接近初始行或列的行或列。
可以重复上述操作S610至650,直到为2D图像的所有元胞都设置了值。
虽然操作S610至S650可以被顺序执行,但是操作S610至S650的所有操作不一定都被执行。例如,如果设置了初始值,则可以执行除了初始值设置操作S640之外的其他操作。将参考图7至图17描述生成元胞自动机图案的实施例。
图7示出了根据本公开实施例的2D图像。
处理器430可以确定元胞自动机图案的元胞大小。
参考图7,2D图像701的宽度和高度被分别设置为IMAGE_WIDTH和IMAGE_HEIGHT。另外,2D图像701包括多个元胞。例如,2D图像701可以包括相同大小的元胞。在这种情况下,2D图像701的一个元胞701-1的宽度和高度可以被设置为CELL_SIZE。如前所述,2D图像701中的一个元胞701-1的大小可以以像素来设置。
处理器430可以配置用于生成元胞自动机图案的规则。元胞自动机生成规则可以是基于三个连续元胞的值(或状态)来确定与三个连续元胞的中心元胞相邻的另一个元胞的值的方案。三个连续元胞被包括在一行或一列中。
图8示出了根据本公开的实施例的用于生成元胞自动机图案的规则。
为了便于描述本公开的实施例,图案生成规则被称为规则#25。然而,用于生成元胞自动机图案的规则也可以用任何其他名称来称呼。此外,各种规则可以可用于生成元胞自动机图案,并且不限于以下规则。
参考图8中所示的表801,s0和s1是从2D图像701中选择的三个连续元胞的中心处的元胞的值。k0、k1和k2是中心元胞两侧的两个元胞的值之和。由s0、s1、k0、k1和k2得到的值801-1是与中心元胞相邻的元胞的值。
可以根据[数学式4]通过归纳(generalize)S0和S1来定义S。
[数学式4]
s=Si
此外,通过[数学式5]将与具有所定义的值s的元胞相邻的两个元胞的值之和被定义为k。具有所定义的值s的元胞和两个相邻元胞可以在一行或一列中是连续的。在另一个示例中,距离具有所定义的值s的元胞达预定数量的元胞的两个元胞之和可以被定义为k。
[数学式5]
Figure BDA0002475241530000121
将所确定的值s和k应用于规则#25 801-1的结果可以通过[数学式6]来计算。
[数学式6]
Figure BDA0002475241530000122
例如,参考图9,处理器430可以在2D图像701的列中选择三个连续元胞:元胞(i-1)、元胞(i)和元胞(i+1)。参考图10,三个连续元胞即元胞(i-1)、元胞(i)和元胞(i+1)分别由参考标号10-2、10-1和10-3表示,并且可以分别具有值1、0和0。在这种情况下,s是0,并且K是1和0之和,即1。然后,根据[数学式7],将s和k应用于规则#25 801-1的结果
Figure BDA0002475241530000123
是0。
[数学式7]
Figure BDA0002475241530000124
结果0被设置为元胞10-4的值。
根据实施例,规则#25 801-1可以由[数学式8]来定义。
[数学式8]
Figure BDA0002475241530000125
参考图11至图18,将给出对基于元胞自动机生成来生成图案的方法的详细描述。
图11是描绘根据本公开的实施例的设置初始值的方法的视图。
根据本公开的实施例,假设2D平面包括9×9个元胞,即,水平方向上的9个元胞乘以垂直方向上的9个元胞。9×9可以根据检测从对象反射的图案的检测器的大小来确定。
参考图11,处理器430选择在2D平面中包括的元胞的列中的一个列,如参考数字111所示。处理器430可以将110101111设置为所选择的列中的每个元胞的初始值,如参考数字112所示。图12示出了根据本公开的实施例设置初始值的结果。
图13至图17示出了根据本公开实施例的详细的元胞自动机过程。
图13示出了根据本公开的实施例的2D图像中所选择的列的最上面的元胞132(规则#25中的s)的索引i被设置为0的情况。换句话说,处理器430将元胞132以及元胞132的相邻元胞131和133确定为将应用规则#25的初始目标。
在三个连续元胞131、132和133中间的元胞132的值(或状态)是1。此外,元胞132的相邻元胞131和133的值之和k是2。将s和k应用于规则#25得到为0的更新的值(或状态)135。
图14示出了在图13中的操作之后的为1的索引i的操作。根据本公开的实施例,在三个连续元胞141、142和143中间的元胞142的值是1。另外,与单元142相邻的元胞141和143的值之和k是1。将s和k应用于规则#25得到的更新的值145是1。
图15示出了在图14中的操作之后的为2的索引i的操作。根据本公开的实施例,在三个连续元胞151、152和153中间的元胞152的值是0。另外,与单元152相邻的元胞151和153的值之和k是2。将s和k应用于规则#25得到的更新的值154是1。
图16的(a)示出了基于已经为其设置初始值的列161更新的列162。更新的列162的连续元胞的值为011011000。此外,处理器430可以基于更新的列162中的连续元胞162-1、162-2和162-3的更新值,将列163中的元胞163-1的值更新为0。
图16的(b)示出了基于三个连续元胞162-4、162-5和162-6来更新单元163-2的值的结果。图16的(c)示出了基于三个连续元胞162-7、162-8和162-9来更新单元163-3的值的结果。图16的(d)示出了基于三个连续元胞162-10、162-11和162-12来更新单元163-3的值的结果。
图17示出了基于图13至图16的(d)中所示的操作来实施前述实施例的结果。参考图17,可以注意到包括在2D图像中的所有元胞的值已经被更新。
2D图像101是根据本公开的实施例的通过执行元胞自动机获得的图案。由于可以根据预定规则用元胞自动机来形成自图案(self-pattern),因此可以防止浪费存储器资源和通信资源。
图18是描绘根据本公开的实施例的确定电磁场滤波器的间距大小和用于生成元胞自动机的元胞大小的方法的视图。
假设表示2D图像大小的参数IMAGE_HEIGHT(图像高度)和IMAGE_WIDTH(图像宽度)被预设。
使用视角参数FOVc的检测器中透镜系统的每个角度分辨率ARESc 182由[数学式9]来确定。
[数学式9]
Figure BDA0002475241530000141
使用视角参数FOVp的滤波器的每个角度分辨率ARESp由[数学式10]来确定。
[数学式10]
Figure BDA0002475241530000142
如果ARESc和ARESp相等,则电磁场滤波器的间距大小181基于根据[数学式9]和[数学式10]的[数学式11]来确定。
[数学式11]
Figure BDA0002475241530000143
此外,元胞自动机的元胞大小由[数学式12]来确定。
[数学式12]
IMAGE_HEIGHT=CELL_SIZE/PITCH*FILTER_HEIGHT;
IMAGE_WIDTH=CELL_SIZE/PITCH*FILTER_WIDTH;
另外,处理器430可以根据滤波器间距大小来映射元胞自动机元胞的位置,使得滤波器阵列的特征(I,J)的中心等于(j*IMAGE_WIDTH/CELLsize+1)*FILTER_HIGHT/PITCH。
此外,处理器430可以根据对矩形拐角处的衍射图像的大小的修改来设计图案的形状,如参考数字183所示。在这种情况下,拐角的半径可以被设置为1.22*PITCH。
图19示出了根据本公开实施例的2D图像。
参考图19,2D图像191是已经考虑了像素配置的图像。例如,图17中左上角位置的第一个元胞具有值1,其可以包括4个像素(2×2个像素)。为了表示图17中左上角位置的第一个元胞的值1,2D图像191中的所有像素191-1至191-4可以是1。
图20示出了根据本公开的另一个实施例的2D图像。
参考图20,2D图像201包括18×18个像素。在2D图像201中,一个元胞可以由四个像素表示。例如,在2D图像201中包括的四个像素201-1可以表示图17中左上角位置中的第一元胞的值1。在另一个示例中,在2D图像201中包括的四个其他像素201-2可以表示位于图17中左上角位置中的第一个元胞左边的第二个元胞的值0。
图21示出了根据本公开的实施例的投射和捕获元胞自动机图案的过程。
图21示出了以下实施例:其中用元胞自动机生成的图案211(以下称为元胞自动机图案)被投射到整个区域上具有零深度差异的平面上。深度差异可以被定义为投射元胞自动机图案的光投射器和平面之间的距离。
参考图21,元胞自动机图案211包括用元胞自动机生成的图案。当由光投射器投射的光穿过滤波器或掩模时,可以生成元胞自动机图案211。
例如,处理器430可以借助光投射器和滤波器或掩模将元胞自动机图案211投射到整个区域上具有零深度差异的平面上。
在这种情况下,反射的元胞自动机图案212在其总区域上具有为0的深度差异,因此可以与元胞自动机图案211相同。
图22示出了根据本公开的另一个实施例的投射和捕获元胞自动机图案的过程。
在图22所示的情况下,元胞自动机图案被投射到具有非零深度差异的3D空间。
用于投射元胞自动机图案221的光投射器可以设置为与用于捕获从空间反射的图案的摄像头(检测器或光接收单元)分开预定距离。例如,光投射器和摄像头可以提供在终端的一个表面上,彼此分开预定间隙。因此,元胞自动机图案221从光投射器投射到3D空间中的对象上的角度不同于元胞自动机图案221从对象反射并在摄像头处被接收的角度。因此,从对象反射的元胞自动机图案221可以在预定方向上移位。
例如,处理器430可以将元胞自动机图案221投射到3D空间。这里,从对象反射的元胞自动机图案221的捕获图案222可以在预定方向上移位(图22中的视差移位)。这里,元胞自动机图案221已经从其移位的区域222-1的大小是摄像头和对象之间的深度信息。
图23是示出根据本公开实施例的解码元胞自动机图案的方法的流程图。
在操作S2310中,处理器430捕获已经被投射并随后被反射的元胞自动机图案。此外,在操作S2320和S2330中,处理器430通过对捕获的元胞自动机图案进行聚类来确定元胞自动机图案中包括的元胞的值,然后识别元胞自动机图案。例如,元胞自动机图案中每个元胞的值可以被确定为0或1。在另一个示例中,元胞自动机图案中每个元胞的值可以从0和正整数当中选择。在操作S2340中,处理器430检测聚类图案的水平和垂直连通分量。在操作S2350中,处理器430基于水平和垂直连通分量来估计深度差异。处理器430基于估计的深度差异来执行对象分割。在操作S2370中,处理器430生成3D图。
图24A和图24B示出了根据本公开实施例的聚类方法。
在图24A中,左边的图案是捕获的元胞自动机图案的示例。捕获的元胞自动机图案具有像素值(0至255或以上)。
处理器430可以基于预定大小的聚类窗口CLUSTER_WINDOW来执行聚类。参考图24A的左边的图案,处理器430基于4×4聚类窗口2*CELL_SIZE*2*CELL_SIZE来执行聚类。
参考图24B,处理器430可以通过聚类算法(例如,K均值算法)将聚类窗口内的每个像素的值聚类为0或1。
图24A中的右边的图案是聚类的结果。这里,聚类窗口内的值的一部分242可以不同于投射的元胞自动机图案的值。这个误差可能是由像素混合、数据丢失等造成的。
图25A至图25E示出了根据本公开的实施例的聚类的结果。
图25A示出了捕获元胞自动机图案,并且对捕获的元胞自动机图案进行聚类的结果,其中每个元胞被映射到2×2个像素。例如,四个像素值252至254可以被映射到一个元胞。
图25B示出了各自映射到四个像素的元胞的左上角像素的值,图25C示出了各自映射到四个像素的元胞的右上角像素的值,图25D示出了各自映射到四个像素的元胞的左下角像素的值,并且图25E示出了各自映射到四个像素的元胞的右下角像素的值。
图26A至图26F示出了根据本公开的实施例的识别元胞自动机图案的方法。
根据实施例,识别元胞自动机图案的方法使用前述生成元胞自动机图案的方法。
图26A示出了聚类的元胞自动机图案261。聚类的元胞自动机图案261可以包括由于对象引起的移位而产生的阴影区域263。
处理器430可以通过将聚类的元胞自动机图案261与基于初始值用元胞自动机生成的图案进行比较来识别聚类的元胞自动机图案261。
例如,处理器430可以通过使用元胞自动机图案261中的第一列261-1的聚类值110101111作为初始值来执行元胞自动机过程。这里,元胞自动机过程与前述元胞自动机图案生成的示例相同。处理器430可以通过将元胞自动机图案261中第一列261-1的为1的值261-2、261-3和261-4应用于规则#25来获得值0。处理器430可以将获得的值261-5(其为0)(它可以存储在存储器的临时阵列中)与为0的聚集值262-6进行比较。
然后,图26B中的处理器430可以通过将元胞自动机图案261中的第一列261-1的(在高亮区域中的)值1、1和0应用于规则#25来获得为1的值261-1。处理器430可以将获得的值261-10(其为1)与聚类值262-11(其为0)进行比较。
图26C示出了对元胞自动机图案261的第一列261-1重复上述操作的结果261-12。
图26D示出了将结果261-12与元胞自动机图案261的第二列261-13进行比较的方法。例如,由于结果261-12的第一值0等于第二列261-13的第一值0,所以处理器430将当前列261-14的第一元胞的值设置为0。
然后,如图26E中所示,由于结果261-12的第二值1等于第二列261-13的第二值0,所以处理器430将当前列261-14的第二元胞的值设置为0。
图26F示出了将参考图26A至图26E描述的操作应用于元胞自动机图案261的直到第八列261-15的结果。
图27示出了根据本公开实施例的元胞自动机图案的索引。具体地,图27示出了元胞自动机图案的元胞索引的垂直不相交集271和水平不相交集272。
图28示出了根据本公开的实施例的处理元胞自动机图案的索引的方法。具体地,图28示出了将元胞自动机图案273的第一列的索引顺序插入到存储器堆栈274中的过程。
图29A至图29H示出了根据本公开的实施例的检测水平和垂直连通分量的方法。
参考图29A,处理器430从堆栈274获取元胞271-1的序数(order)8。此外,处理器430可以通过[数学式13]获取元胞271-1的索引i,即72(=8×9)。
[数学式13]
Figure BDA0002475241530000181
(Ci是列索引,
Figure BDA0002475241530000182
)
处理器430分别从垂直不相交集271和水平不相交集272中检测具有索引72的元胞271-1和271-2。此外,处理器430将垂直不相交集271和水平不相交集272的父索引定义为72。处理器430将垂直不相交集271中具有索引72的元胞与直到具有父索引72的元胞合并。处理器430将水平不相交集272中具有索引72的元胞与直到具有索引73(=72+1)的元胞合并。
处理器430可以对下一个元胞重复参考图29A描述的操作。参考图29B,处理器430从堆栈274获取元胞271-1的序数7。另外,处理器430可以通过[数学式13]获取单元271-1的索引i,即63(=7×9)。处理器430分别从垂直不相交集271和水平不相交集272中检测具有索引63的元胞271-3和271-4。此外,处理器430将垂直不相交集271和水平不相交集272的父索引定义为72。处理器430将垂直不相交集271中具有索引63的元胞与直到具有父索引72的元胞合并。处理器430将水平不相交集272中具有索引63的元胞与直到具有索引64(=63+1)的元胞合并。图29C中示出了对垂直不相交集271和水平不相交集272的第一列完成上述操作的结果。
图29D示出了检测第二列(Ci=1)的第一至第三元胞中的水平和垂直连通分量的方法,并且图29E示出了检测第二列(Ci=1)的第一至第三元胞中的水平和垂直连通分量的结果。
图29F示出了对元胞自动机图案273的第8列(Ci=7)执行检测水平和垂直连通分量的方法的结果。
图29G示出了根据本公开的实施例的垂直不相交集271和水平不相交集272的边界。
图29H示出了根据本公开实施例的元胞自动机图案273的边界。
图30A至图30H示出了根据本公开的实施例的估计垂直聚类的差异的方法。
处理器430可以估计投射的元胞自动机图案(以下称为原始图案)和投射的元胞自动机图案的反射和捕获的元胞自动机图案(以下称为捕获图案)之间的差异。如下所述的差异估计可以对除了参考图29H描述的元胞自动机图案的边界元胞之外的所有剩余的识别出的元胞执行。
图30A示出了原始图案301和未移位的捕获图案302。参考图30A,处理器430可以计算原始图案301和捕获图案302的所有元胞之间的差。例如,处理器430可以记录(或存储)原始图案301的第一元胞301-1的值1和捕获图案302的第一元胞302-1的值1之间的差303-1为0。
参考图30B,处理器430可以基于计算差的结果303来确定连通的元胞的聚类304的差值。例如,如果差结果303的第一列303-1被连通,则处理器430可以将第一列303-1中的元胞的值之和设置为聚类304的第一列304-1中的元胞的差值。因此,聚类304的第一列304-1中的元胞的差被设置为0。
参考图30C,对于差结果303的第二列303-2,处理器430可以将除了边界元胞之外的剩余元胞的值之和确定为原始图案301和捕获图案302之间的聚类差。
参考图30D,对于差结果303的第三列303-3,处理器430可以将除了边界元胞之外的剩余元胞的值之和确定为原始图案301和捕获图案302之间的聚类差。
参考图30E,对于差结果303的第六列303-4,处理器430可以将除了边界元胞之外的剩余元胞的值之和确定为原始图案301和捕获图案302之间的聚类差。
参考图30F,对于差结果303的第七列303-5,处理器430可以将除了边界元胞之外的剩余元胞的值之和确定为原始图案301和捕获图案302之间的聚类差。
参考图30G,对于差结果303的第八列303-6,处理器430可以将除了边界元胞之外的剩余元胞的值之和确定为原始图案301和捕获图案302之间的聚类差。
图30H示出了原始图案301和捕获图案302之间的聚类差值。这里,连通的元胞具有相同的差值。
图31A至图31D示出了根据本公开的实施例的估计水平聚类的差异的方法。
图31A示出了原始图案301和未移位的捕获图案302。
参考图31A,处理器430可以基于差结果305来确定连通的元胞的聚类306的差值。例如,如果差结果305的第一行305-1被连通,则处理器430可以将第一行305-1中的元胞的值之和设置为聚类306的第一行305-1中的元胞的差值。因此,聚类304的第一行305-1中的元胞的差被设置为0。
参考图31B,对于差结果305的第一、第三、第五、第七和第九行,处理器430可以确定除了边界元胞之外的聚类内部的元胞的值之和,以确定原始图案301和捕获图案302之间的差和。因此,差结果305中所述行的聚类304内部的元胞的值之和被确定为0。参考图31C,针对差结果305的第一、第四、第六和第八行描绘了聚类的另一个示例,由于第四和第六行,处理器430在此可以将原始图案301和捕获图案302之间的差和确定为4。
图31D示出了原始图案301和捕获图案302之间的聚类差值307。这里,除了第四和第六行之外,连通的元胞具有相同的差值。
图32A和图32B示出了根据本公开的实施例的确定垂直聚类差和水平聚类差之和的方法。
参考图32A,处理器430可以通过将水平聚类差的结果307的所有行与垂直聚类差的结果304的所有行进行比较来确定差值之和。处理器430可以不确定连续元胞当中边界元胞的差值之和。例如,处理器430可以确定水平聚类差的结果307的第一行与垂直聚类差的结果304的第二列相交的元胞321-1的差值。重叠的元胞321-1的值可以是水平聚类差的结果307的第一行的差值0和垂直聚类差的结果304的第二列的差值0之和。
参考图32B,处理器430可以将水平聚类差的结果307的第六行的差值2和垂直聚类差的结果304的第六列的差值2之和4确定为水平聚类差的结果307的第六行与垂直聚类差的结果304的第六列相交的元胞321-1的差值。
图32C示出了表308,该表308由确定水平聚类差的结果307的每一行和垂直聚类差的结果304的每一列的差值之和的操作得出。
图33A和图33B示出了根据本公开的实施例的确定移位表的方法。
处理器430可以通过使用图32C中所示的结果表308来生成移位表。
例如,参考图33A,处理器430可以通过将结果表308的每个元胞的值与不确定性初始表309中的元胞的值进行比较来确定最小差值。在这种情况下,可以使用[数学式14]。
[数学式14]
Argmin移位(差水平+差垂直)*
这里,相互比较的元胞可以在相应的表中的相同位置处。此外,如果没有设置特定元胞的值,则处理器430可以将特定元胞的比较结果确定为0。
例如,处理器430可以将结果表308中的元胞308-1的值与初始表309中的元胞309-1的值进行比较。例如,由于初始表309中的元胞309-1的值没有被设置,针对结果表308中的元胞308-1的值4和初始表309中的元胞309-1的值4的min(4,-)可以被确定为4。同时,处理器430可以不对图29H中所示的边界元胞执行元胞值比较操作。
图33B中所示的最小元胞差表310基于图33A的元胞值比较方法列出了结果表310中的元胞的值和初始表311中的元胞的值之间的最小值。如果在最小元胞差表310中改变最小元胞差,则处理器430可以更新移位量。例如,如果处理器430确定最小元胞差表310的元胞310-1的值4已经改变,则处理器430可以更新为0的当前移位量311-1。
图34A至图34G示出了根据本公开的另一个实施例的估计垂直聚类的差异的方法。
本文中将不提供与图30A至图30H的描述冗余的描述。
图34A至图34G示出了原始图案341和通过将一个捕获图案移位一个元胞而获得的图案342。
参考图34A,处理器430可以确定原始图案341的第一列中的元胞的值和移位的图案342的第二列中的元胞的值之间的差值。在这种情况下,处理器430可以确定原始图案341的第一列的元胞和移位的图案342的第二列的元胞之中相同行中的元胞之间的差值。此外,处理器430可以在表343的第一列343-1的行中记录所确定的差值。
参考图34B,处理器430可以确定原始图案341的第二列中的元胞的值和移位的图案342的第三列中的元胞的值之间的差值。处理器430可以将所确定的差值记录在表343的第二列343-2中。
参考图34C,处理器430可以确定原始图案341的第二和第八列中的元胞的值与移位的图案342的第九列中的元胞的值之间的差值。处理器430可以将所确定的差值记录在表343的第八列343-2的行中。
可以通过将图34C中所示的表343的第九列的位置移位到第一列的位置而获得图34D中所示的表345。
图34E中所示的表346包括基于图34D的表345累加垂直聚类的差值的结果。这里,已经参考图30A至图30H详细描述了累加垂直聚类的差值的方法,因此这里将不进行描述。
图34F中所示的表347包括基于图34D的表345累加水平聚类的差值的结果。这里,已经参考图31A至图31D详细描述了累加水平聚类的差值的方法,因此这里将不进行描述。
处理器430可以通过将垂直聚类差值346的所有行与水平聚类差值347的所有行进行比较来对差值求和。已经参考图32A和图32B详细描述了差值之和,因此这里将不再描述。
例如,图34G示出了包括基于垂直聚类差值346和水平聚类差值347获得的差值总和的结果值的表348。
图35A和图35B示出了根据本公开的另一个实施例的确定移位表的方法。
处理器430可以通过使用图34G中所示的结果表348来生成移位表。
例如,参考图35A,处理器430可以通过将结果表348中的所有元胞的值与图33A中所示的最小元胞差表310中的所有元胞的值进行比较来确定最小差值。在这种情况下,可以使用[数学式14]。相互比较的元胞可以位于相应的表中的相同位置处。此外,如果没有设置特定元胞的值,则处理器430可以将特定元胞的比较结果确定为0。
例如,处理器430可以将针对结果表348中的元胞351-1的值2和最小元胞差表310中的元胞310-11的值4的min(2,4)确定为2。
此外,处理器430可以例如不对图29H中所示的边界元胞执行元胞值比较操作。
图35B中的最小元胞差表352是基于参考图35A描述的元胞值比较方法,将结果表348中的元胞的值与图33A中的最小元胞差表310中的元胞的值进行比较的结果。
如果在最小元胞差表352中改变元胞的最小差,则处理器430可以更新移位量。例如,如果处理器430确定最小元胞差表352的元胞352-1的值2已经改变,则处理器430可以更新为1的当前移位量353-1。
图36A、图36B和图36C示出了根据本公开的另一个实施例的确定移位表的方法。
图36A示出了表361,该表361包括当捕获图案偏移两个元胞时基于垂直聚类差结果和水平聚类差结果计算的差值总和的结果值。
参考图36B,处理器430可以通过将表361中所有元胞的值与图35B中所示的最小元胞差表352中所有元胞的值进行比较来确定最小差值。在这种情况下,可以使用[数学式14]。相互比较的元胞可以位于相应的表中的相同位置处。此外,如果没有设置特定元胞的值,则处理器430可以将特定元胞的比较结果确定为0。
例如,处理器430可以将针对表362中的元胞362-1的值3和最小元胞差表352中的元胞352-11的值2的min(3,2)确定为2。
此外,处理器430可以例如不对图29H中所示的边界元胞执行元胞值比较操作。
图36C中的最小元胞差表363是基于参考图36B描述的元胞值比较方法,将表362中的元胞的值与最小元胞差表352中的元胞的值进行比较的结果。
如果在最小元胞差表363中改变元胞的最小差,则处理器430可以更新移位量。例如,如果处理器430确定最小元胞差表363的元胞363-1的值2尚未被改变,则处理器430可以不另外更新元胞364-1的当前移位量。
图36C中的结果表363可以是基于参考图35A描述的元胞值比较方法将结果表361中的元胞的值与图35A的最小元胞差表310中的元胞的值进行比较的结果。
如果在最小元胞差表363中改变元胞的最小差,则处理器430可以更新移位量。例如,如果处理器430确定最小元胞差表363的元胞363-1的值2已经改变,则处理器430可以更新为2的当前移位量364-1。
图37A、图37B和图37C示出了根据本公开的另一个实施例的确定移位表的方法。
图37A示出了表371,该表371包括当捕获图案移位三个元胞时基于垂直聚类差结果和水平聚类差结果计算的差值总和的结果值。
参考图37B,处理器430可以通过将表361中所有元胞的值与图36C中所示的最小元胞差表363中所有元胞的值进行比较来确定最小差值。在这种情况下,可以使用[数学式14]。相互比较的元胞可以位于在相应的表中相同的位置处。此外,如果没有设置特定元胞的值,则处理器430可以将特定元胞的比较结果确定为0。
例如,处理器430可以将针对表372中的元胞372-1的值0和最小元胞差表363中的元胞363-1的值2的min(0,2)确定为0。
此外,处理器430可以例如不对图29H中所示的边界元胞执行元胞值比较操作。
图37C中的最小元胞差表373是基于参考图37B描述的元胞值比较方法,将表372中的元胞的值与最小元胞差表363中的元胞的值进行比较的结果。
如果在最小元胞差表373中改变元胞的最小差,则处理器430可以更新移位量。例如,如果处理器430确定最小元胞差表373的元胞373-1的值0已经改变,则处理器430可以针对元胞374-1更新达当前移位量3。
同时,处理器430可以处理边界元胞。
为了处理边界元胞,处理器430可以使用原始图案和移位的且聚类的图案之间的每分量差。此外,处理器430可以将每个元胞的累加差用于每个垂直聚类。此外,处理器430可以将每个元胞的累加差用于每个水平聚类。此外,处理器430可以将更新的移位用于除边界元胞之外的所有元胞。此外,处理器430可以单独地或一起处理类型1水平边界元胞、类型2水平边界元胞、类型1垂直边界元胞和类型2垂直边界元胞。
下面将参考图38A至图41E描述处理边界元胞的示例。
图38A至图38E示出了根据本公开的实施例的处理边界元胞的方法。
图38A至图38E示出了处理类型1水平边界元胞。类型1元胞可以被定义为具有水平和垂直连通、与水平聚类的索引相同的元胞索引、和/或类型1的至少一个元胞的垂直聚类中的元胞。
图38A至图38D分别示出了0-元胞移位、1-元胞移位、2-元胞移位和3-元胞移位情况下的类型1和/或类型2边界元胞。
根据示例,图38E可以通过索引具有其水平和垂直聚类。此外,当两个或更多个移位提供为0的差时,生成表381的元胞381-1。然而,可以应用最大的移位。
图39A至图39E示出了根据本公开的另一个实施例的处理边界元胞的方法。
这里将不提供与图38A至图38E的描述冗余的描述。
图39A至图39E示出了处理类型2水平边界元胞。
图39A至图39D分别示出了0-元胞移位、1-元胞移位、2-元胞移位和3-元胞移位情况下的类型1和/或类型2边界元胞。
例如,在图39E中,如果元胞通过索引连通到其水平聚类和左相邻元胞,则该元胞通过左相邻元胞的索引具有垂直聚类。
图40A至图40E示出了根据本公开的另一个实施例的处理边界元胞的方法。
这里将不提供与图38A至图39E的描述冗余的描述。
图40A至图40E示出了处理类型1垂直边界元胞。
图40A至图40D分别示出了0-元胞移位、1-元胞移位、2-元胞移位和3-元胞移位情况下的类型1和/或类型2边界元胞。这里,类型1元胞可以被定义为具有水平连通的元胞。
例如,在图40E中,一旦处理了水平边界元胞,就可以包括处理后的元胞。
如果元胞通过索引连通到其水平聚类和左相邻元胞,则该元胞通过左相邻元胞的索引具有垂直聚类。
图41A至图41E示出了根据本公开的另一个实施例的处理边界元胞的方法。
这里将不提供与图38A至图40E的描述冗余的描述。
图41A至图41E示出了处理类型2垂直边界元胞。
图41A至图41D分别示出了0-元胞移位、1-元胞移位、2-元胞移位和3-元胞移位情况下的类型1和/或类型2边界元胞。这里,类型2元胞可以被定义为不具有水平连通但具有一个或多个相邻垂直聚类的元胞。
参考图40E,处理器430可以检测最小化原始图案、聚类的图案和相邻聚类之间的差的最佳移位。
参考图41E,如果两个聚类提供为0的等效差,则元胞可以被设置为边界元胞。
图42示出了根据本公开的实施例的对象分割。
对象分割被用于表示对象中相同深度的连通部分。不相交集和估计的差异图被用于检测对象分割。当元胞自动机图案识别和连通分量过程被立即执行时,可以执行对象分割。
参考图42,人头形对象421的前额部分421-1可以对应于水平不相交集422的部分422-1。
图43是示出根据本公开实施例的对象分割方法的流程图。
处理器430确定垂直不相交集和水平不相交集的连通分量。此外,在操作S4310中,处理器430确定差异图。
在操作S4320中,处理器430可以使用来自水平不相交集的水平聚类和估计的差异图来修改垂直不相交集的垂直聚类。
修改如下地执行:从第一元胞算法开始,然后从左向右和从上向下移动。另外,如果当前元胞和/或元胞具有相等的移位,则垂直不相交集的当前元胞被修改为具有其左相邻元胞的索引。
在操作S4330中,处理器430在存储器中存储垂直不相交集。
在操作S4340中,处理器430根据差异图中的改变来修改不相交集。
图44A至图44H是描绘根据本公开实施例的对象分割方法的视图。
图44A示出了根据本公开实施例的差异图441。图44B示出了根据本公开的实施例的垂直不相交集442和水平不相交集443。
处理器430确定(或读取)关于差异图441、垂直不相交集442和水平不相交集443的信息。
例如,参考图44C和图44D,处理器430可以基于差异图441的至少第二列中的差异信息来修改垂直不相交集442的至少第二列的索引信息。
例如,参考图44E和图44F,处理器430可以基于差异图441的第六列中的差异信息来修改垂直不相交集442的第六列中的至少一个元胞(例如,442-1)的信息。此外,处理器430可以基于差异图441的第七列中的差异信息来修改垂直不相交集442的第七列中的至少一个元胞(例如,442-1)的信息。
图44G和图44H示出了初始不相交集444和从初始不相交集444生成的最终不相交集445。最终不相交集445可以包括对象的分割区域445-1和445-2、和边界元胞或非图案区域445-2。
显然,上面参考图44A至图44H描述的对象分割方法也适用于以2×2个像素为单位配置元胞的情况。
图45A至图45F是描绘根据本公开的另一个实施例的对象分割方法的视图。
图45A至图45D示出了根据本公开的实施例的不相交集451、452、453和454。
根据本公开的实施例,假设一个元胞的大小被设置为2×2个像素,不相交集451包括元胞的左上角像素的索引信息,不相交集452包括元胞的右上角像素的索引信息,不相交集453包括元胞的左下角像素的索引信息,并且不相交集454包括元胞的右下角像素的索引信息。
图45E和图45F示出了根据本公开的实施例的不相交集455和455’。
根据本公开的实施例,不相交集455可以基于不相交集451、452、453和454的索引信息来形成。不相交集455可以包括自修复元胞455-1和合并在同一区域中的元胞455-2。不相交集455’可以是完成对象分割的结果。
图46A、图46B和图46C示出了根据本公开实施例的三角测量方法。
参考图46A,处理器430可以重构3D图点。为此目的,处理器430可以使用估计的移位量、检测器(或摄像头和光接收单元)中的透镜系统的参数以及校准参数。
3D图点重构可以是通过三角测量数学式计算捕获的元胞自动机图案中每个像素的X、Y和Z值的过程。X、Y和Z值可以通过[数学式15]来计算。
[数学式15]
Z=b*DETECTOR_WIDTH/2/σd/tan(FOVch);
Figure BDA0002475241530000281
Figure BDA0002475241530000282
其中b表示光投射器和检测器之间的基线,σd表示原始图案和捕获的元胞自动机图案之间的移位量,并且FOVch和FOVcv表示与检测器角度相对应的视场或视角值,并且Xp和Yp表示捕获的元胞自动机图案中与投射器的显著(significant)点相关的元胞坐标。
图46B示出了为Xp和Yp设置的σd
图46C示出了包括根据通过[数学式15]计算的Z值的深度信息的表461。
上面已经参考各种附图详细描述了将元胞自动机图案投射到3D空间并通过使用从3D空间反射的捕获的元胞自动机图案来重构3D图点的过程。
现在,将给出对重构3D图点的过程的各种实施例的描述。3D图点的以下实施例和前述实施例可以独立地、组合地或补充地实施。
图47示出了根据本公开的各种实施例的元胞自动机晶格的类型。
图48示出了矩形晶格的元胞自动机规则的示例。
自组织特征
元胞自动机演化将在下面详细描述。元胞自动机是从无序的初始状态中实施的,这些初始状态是以这样的方式随机选择的:即每个位点的值为0或1(通常,概率为1/2)。无序初始状态可以是所有可能的配置的集合的一般部分。由元胞自动机生成的图案是以某种初始状态获得的。这些图案的结构可以是元胞自动机的自组织的表示。
元胞自动机可以以一般初始配置开始。此外,元胞自动机包括四种类型的自动机演化方面。
例如,元胞自动机类型1可以演化到同步的最终状态。元胞自动机类型2可以产生不相交的周期性的结构。元胞自动机类型3可能表现出混乱的方面,并产生非周期性的图案。初始状态的微小变化可能通常导致线性增加的改变的区域。元胞自动机类型4可能表现出复杂的局部传播结构。
由于本公开旨在通过编码的空间定位来生成2D图案,所以1D和2D自动机类型2在本公开中是所关心的。此外,这种类型的自动机(2D元胞自动机)在几小时后进入静止状态。
因此,可以通过使用1D元胞自动机演化的[数学式1]和2D元胞自动机演化的[数学式2]来生成预定的2D图案(见图49和图50)。在2D元胞自动机的情况下,[数学式2]可以应用于由[数学式1]生成的图案。
规则代码
元胞自动机演化可以基于规则数来执行。根据本公开的实施例,规则数的后2位数字可以确定元胞自动机演化。规则数的最后一比特可以指定当所有邻居都为关(off)并且对应的元胞也为关时该元胞的状态。最后一比特旁边的一比特可以指定当元胞的所有邻居都为关而对应的元胞为开(on)时该元胞的状态。
此外,每对先前比特可以指定当越来越多的邻居逐渐(总体性)变成黑色时会发生什么。例如,当四个相邻元胞都不为开时,可以应用比特20和21,当一个相邻元胞为开时,可以应用22和23,当两个相邻元胞为开时,可以应用24和25,当三个相邻元胞为开时,可以应用26和27,当四个相邻元胞为开时,可以应用28和29。例如,规则614可以对应于比特{1,0,0,1,1,0,0,1,1,0}。
如果考虑具有5个邻居的外部总体性自动元胞自动机,则元胞的后续状态可以由4个最近的邻居N、E、S和W以及该元胞本身来确定。在步骤0到步骤1中,应该确定9个元胞的新状态。由于第一个元胞(位于左上角)的初始状态为关,并且所有邻居都为关,因此应用比特20,从而指示新状态为关。第二个元胞(在最上面一行的中间)的初始状态为“关”,并且其邻居中的一个元胞(从步骤0为开的元胞)为“开”。由于一个邻居为开,所以应用比特22和23。由于初始状态为关,应用比特22,从而指示新状态为开。如果过程跳转到原点处的一个元胞,则没有一个邻居为开,并且初始状态为开。因此,应用比特21,从而指示新状态为开。可以描述规则614的更多细节。当5个元胞中的奇数个元胞为开时,元胞的状态被切换到或保持在开状态。
图51示出了根据本公开的实施例的元胞自动机演化。图51示出了由规则614生成的演化0到演化4中的最初五个步骤。
图52示出了根据本公开实施例的2D元胞自动机规则。根据一本名为“New Kind ofScience(新型科学)”的书中的沃尔夫拉姆术语,元胞自动机与规则集#736有关。
元胞自动机演化的异步更新
元胞自动机由约翰·冯·诺伊曼引入来对物理和生物现象进行建模,特别是用于冯·诺伊曼对自复制的开创性研究。元胞自动机是一种特殊种类的自动机,它包括大量相互连通的简单相同分量,这些分量是在图内的n阶元胞晶格上确定的,该晶格具有可能的值的有限集。元胞自动机在离散的时间步中演化,并根据图中称为元胞自动机的函数δ,特定元胞所取的值(局部状态)受其邻居在前一时间步长中的值的影响。
在元胞自动化期间,全局状态被定义为所有元胞自动机的局部状态向量。
元胞自动机A将由图形G引入,图形G是节点集合和边E集合。边e∈E是无序的节点对,{v,v'}∈V。节点的邻区是通过边在图形中与其直接连通的节点的集合。此外,v'=nbhd(v),并且如果{v,v'}被包括在V中,则这意味着v'是v的邻居。
这里,确定性有限元胞自动机A是状态Q的有限集、输入X的有限集和转移函数δ:QxX→Q。元胞自动机是相同的确定性有限状态自动机和图形结构的有限或无限网络,使得:
1.每个节点具有相同数量(有限数量)的邻居;
2.在每个节点处,我们有固定顺序的邻居节点;以及
3.节点v处的自动机的下一状态总是其当前状态和其邻居的当前状态的相同函数δ。因此,相邻节点处的状态的有序列表是节点v处的自动机的输入。
节点v的邻居的状态的有序列表由qwEnbhd(v)表示。假设本公开的元胞自动机被实施为2D IR图像中具有整数坐标的像素集合,该2D IR图像包括与例如某N维欧几里德空间中的冯·诺依曼或摩尔邻居相关的邻居。此外,如果节点v处的自动机处于状态q0,并且其所有邻居都处于状态q0,则自动机处于静止状态q0∈Q,使得节点v处的自动机在同步模式的下一时间步仍处于状态q0。自动机配置是局部状态值到为G的有限子图形中的节点处的自动机集合的任何分配。
通常,元胞自动机被用于同时(同步模式)且以离散步骤(演化时期)更新其所有节点处有限自动机的状态。因此,对于所有时期t>0,如果在时期t,每个节点v处于某状态qv(t),则节点v在下一个时期t+1处于其下一状态qv(t+1)。下一状态由下式给出:
[数学式16]
Figure BDA0002475241530000311
因此,节点v处的自动机的新状态由局部更新规则给出,作为节点v的当前状态qv(t)和节点v邻区的所有节点的所有当前状态的有限列表的函数。每个时期中的元胞自动机A的全局状态包括每个时期中其所有节点的状态qv(t)。也就是说,全局状态中的更新在同步模式下执行。这里,局部分量自动机的更新不要求同步发生。此外,如果随着(局部离散的)时间的推移,局部分量自动机的每一个更新都被无限次地更新到其下一个状态,则可以说是异步自动机网络。
遵循Nehaniv对图形G上每个同步元胞自动机A的一般方法和定理,在同一图形上构造了另一个元胞自动机A’。如果每个节点v都有3n2个状态,并且异步更新方法被应用于每个节点,这将是异步的。因此,根据该定理,A的全局状态完全由A’的行为的空时部分确定。这个数学定理表明可以在任何同步自动机网络上执行的所有计算都可以从异步自动机网络的计算中恢复,而对更新在以后如何实际发生没有约束。
异步元胞自动机A’的局部自动机可以从同步元胞自动机的局部自动机构造。假设A的局部自动机具有状态Q={q0,…,qn-1},其中q0是静止的,并且更新函数δ:QxX→Q。A’的局部自动机的状态是3n2个状态,QxQxr,其中r={0,1,2}。当没有邻居处于第三状态(0)时,所有邻居都准备就绪。假设节点v处于状态(q,q’,r),并且具有处于状态(qw,q’w,rw)的邻区。
然后,如果r=0,则节点的下一状态是:
[数学式17]
Figure BDA0002475241530000312
[数学式18]
Figure BDA0002475241530000313
如果r为{1,2},则节点的下一状态为:
[数学式19]
Figure BDA0002475241530000321
元胞自动机的自复制
一般地,元胞自动机的自复制性质是针对预定配置生成相同图案的副本的可能性。这种元胞自动机性质使得在识别操作中能够构造调度算法。在元胞自动机的同步更新和图像大小为M×N个像素的情况下,可以实施相同数量的元胞自动机,以便识别整个图案的一部分(或当前姿态)。在元胞自动机的异步更新的情况下,每个当前位置执行一次识别。
图53示出了根据本公开的实施例的元胞自动机。
在图53中,元胞自复制可以按照元胞自动机有限状态(空间码)531、元胞自动机演化532和几次演化之后的元胞自动机一般图案533的顺序进行。
根据前述异步模式,自复制是给定自动机的几个副本的演化。这种演化过程是同时发生的,而不是在同步模式下发生。因此,在具有反射图案的捕获图像的每个像素中,元胞自动机演化从初始空间码开始,其持续改变直到图像变化的数量变得最小。捕获的反射图案是图像,并且如果像素值不对应于图案的像素,则图像的改变随着局部自动机演化而发生。
图54A至图54D示出了根据本公开的另一个实施例的元胞自动机。
图54A至图54D示出了在晶格的不同位置的元胞自动机的几个副本的异步自复制。
具体地,图54A示出了元胞自动机的初始状态。不同的初始状态可以是关于元胞自动机晶格的编码空间信息。图54B示出了在N步元胞自动机演化之后的元胞自动机。图54C示出了在n步(n>N)的元胞自动机演化之后的元胞自动机。图54D示出了在n步(n>>N)的元胞自动机演化之后的元胞自动机。
元胞自动机的自恢复
投射图案的反射图像(反射图案)可能部分丢失地被捕获。因此,元胞自动机自恢复是从低反射(黑色且透明)表面恢复丢失图案的图像(条、斑点或点)。恢复算法的输入是具有丢失部分或带噪声部分的反射图案。这里,初始化的元胞自动机被改变,直到整个图案被恢复。自恢复步骤被应用于差异图增强的自复制结果。
图55A至图55D示出了根据本公开的各种实施例的元胞自动机的自恢复。
在图55A中,黑色部分表示图案的丢失部分。在图55B中,球的黑暗区域中丢失图案。图55C示出了在元胞自动机的N次演化之后的恢复。图55D示出了完全恢复的图案。
遗传图案的生成
由1D元胞自动机生成遗传图案包括从移动设备的存储器加载初始状态和规则。关于1D元胞自动机,初始状态可以表示为图像的行或列(或相同大小的晶格),包括针对所有物种的元胞自动机随机生成的值序列。
如图55A至图55D中所示,本公开提出了通过1D自动机演化从自动机的2D晶格上的一个点生成遗传图案。根据投射和捕获组件的光学限制,包括功耗限制,可以选择具有一个像素或更大宽度的晶格的基本元胞。遗传图案增长的演化过程通过[数学式1]持续到时期t0为止,该数学式描述了自动机规则。尽管时期t0可以被独立选择,但它是当每个状态下的每个物种的状态具有在垂直于对极线的方向上沿着全晶格大小缓慢分布的值时元胞自动机的状态。时期t0取决于IR摄像头和IR投射器之间的基线方位。
图56示出了根据本公开的实施例的元胞自动机的初始状态的生成。
在图56中,当图案的晶格旋转时,基线垂直定向。晶格的大小是640×480。对极线沿着图案的宽度即IR图像的行定向。
根据[数学式7],从时期t0演化到twidth的所有时期都与零差异ZM相关。
[数学式20]
Figure BDA0002475241530000331
其中,σz是测量精度,b/h是比例系数,并且σd是差异测量的精度。可以在IR摄像头和IR投射器的3D校正对(pair)内执行时期。此外,可以通过使用IR摄像头的原点(ZM=0)来调整时期。应当注意,每个时期相对于基线的方位被表示为在IR图像中的一列或Sf(见附图)个列。
图57A和图57B示出了根据本公开的实施例在初始阶段生成的图案。
具体地,图57A示出了由1D元胞自动机生成直到初始时期的图案。图57B示出了当对象位于场景内时IR图像中矩形区域的粗略移位。在图57B中,元胞自动机晶格包括640×480个图像像素的元胞。基线垂直定向。
通过2D元胞自动机生成遗传图案类似于应用1D自动机的情况。区别在于维数和初始状态生成方法。初始状态的生成包括从一个点基于1D元胞自动机生成2D图案,如参考图56所述。该方法通过[数学式20]通过使用具有Sf×Sf个矩形元胞的2D晶格上的2D(5或9)邻居来演化2D元胞自动机。如上所述,演化一直进行到检测到元胞自动机类型2的2D元胞自动机的静止状态为止。
图58示出了根据本公开的各种实施例的遗传图案。
在图58中,示出了通过对2D 640×480晶格应用2D元胞自动机,从由1D元胞自动机生成的遗传图案生成的遗传图案。
通过[数学式1]或[数学式2]生成的图案是参考图案,其被用于构造IR投射器的透明二元掩模,包括诸如振幅校正的改进手段。在2D元胞自动机的实施例中,初始状态图案由1D自动机生成,并且是零差异的支持图案。
使用传统匹配的遗传图案的实施例
本公开中描述的遗传图案不同于基于伪随机非相关半周期和基于上述描述的性质的传统图案。当由2D元胞自动机生成的遗传图案由于使用元胞自动机的自组织而满足微型图案的周期性网格条件时(US 8,090,194B2,“3D Geometric Modeling and MotionCapture Using Both Single and Dual Imaging(使用单和双成像的3D几何建模和运动捕获)”,E.Golrdon,Mantis Vision Ltd(2007年8月13日)),由1D元胞自动机生成的遗传图案满足非相关图案的强制性条件,并且可以通过US 8,090,194B2中公开的方法使用。
图59A和图59B示出了根据本公开的各种实施例的匹配区域。
图59A和图59B示出了用于检测参考图案和反射图案之间的偏移的匹配区域171和172。
在根据US 8,090,194B2的权利要求的方法中,捕获的图像被处理,在校正期间一次捕获的投射图案和从具有参考图案的图像捕获的多个区域(滑动窗口方案等)中的每个图案之间的偏移被检测,并且距每个区域的距离根据每个偏移确定。在这种情况下,生成的差异图可以类似于最初公开的差异图,除了使用的改进(诸如占空比格雷码和N元调制)之外。这里,匹配过程可以通过对来自反射的参考图案的区域进行卷积来执行。与遗传图案是在没有n元制调制的情况下生成的事实相反,空间码可以通过频域中的傅立叶变换解释来解码。因此,在遗传图案中自组织的几何图元具有可区分的频率峰值。
在另一方面中,元胞自动机类型2的2D元胞自动机具有在周期性网格上可区分的连续微型图案。因此,根据US 8,150,142B2(“Depth Mapping Using Projected Patterns(使用投射图案的深度映射)”,B.Freedman,Prime Sense Ltd(2012年4月3日))的权利要求的方法使用与参考图案的相关性将解调应用于图像网格中的点,如下所述。
[数学式21]
Figure BDA0002475241530000351
[数学式21]可以是针对反射图案的局部区域平均和相关性运算的组合。US 8,150,142B2中描述的相关性是由于调制二元背景的结果的特征而选择的,并且可以通过[数学式22]来计算,而不是IR图像中每个像素的卷积。
[数学式22]
点i,j的相关性=a-2,2+a2,-2-a2,2-a-2,-2
其中a-2,2a_(-2,2)是像素(i-2,j+2)周围的局部平均值。因此,该矩阵和图案之间的卷积将在网格的点处提供极限值。通过使用基于规则(例如,“规则#736”)的遗传图案、和基于相关性(数学式21)的推导,可以通过类似的相关性函数以及基于图案结构的调制来检测子像素网格点。
图60示出了根据本公开的实施例的图案图像和元胞自动机晶格之间的映射关系。
假设在矩形晶格上定义2D元胞自动机,元胞自动机的基本元胞是大小为Sf×Sf的区域,并且两个相邻元胞的对的大小为Sf×SL,满足以下条件。
[数学式23]
2Sf≥SL
因此,如果c=1/4(Sf+SL),则对于晶格上的自动机的每个元胞,给出如下。
[数学式24]
元胞i,j=a0,0+ac,0+a-c,0+a0,c+a0,-c-a-c,c-ac,-c-ac,c-a-c,-c
这里,在IR图像上该函数的极限点是所示网格上的点的子像素的位置。
图61A和图61B示出了根据本公开的实施例的元胞自动机晶格中的计算的网格和物理网格之间的映射。
参考图61A和图61B,在IR图像中的物理网格191上的子像素被定位之后,反射图案被映射到计算的平面的一般晶格192。参考图案与映射和反射图案之间的相关性的附加映射通过滑动窗口方案中的卷积来执行。
在本公开中,映射由元胞自动机演化执行,并且规则由[数学式24]检测。假设局部平均分量被用于建立规则的非加权和替换如下。
[数学式25]
a-c,-c a0,-c ac,-c
a-c,0 a0,0 ac,0
a-c,c a0,c ac,c
[数学式25]中的规则结构取决于遗传图案的全局方面。由于这个原因,规则的设计是在用于生成遗传图案的2D自动机的每个静止状态下单独进行的。
使用算法近似的遗传图案的实施例
根据本公开的实施例,可以使用捕获的IR图像的各个元胞中的像素值的多个和,以便将反射图案映射到子像素计算平面上。此外,元胞自动机规则可以用于演化过程。此外,可以执行卷积来改进匹配关系。因此,转置和表和近似算法降低了功耗。通过下面的“近似多媒体信号滤波算法的方法”,可以有效地预先计算IR图像的强度以用于元胞自动机中的子像素差异匹配。
同时,多媒体信号是保存在数字表示内的信息中的1D或更高维值阵列,并且值的位置对应于一条唯一信息。例如,图像是2D像素阵列,其中像素对应于第j行和第i列。声音是1D音素阵列,其中音素对应于第i个时间点。另外,多媒体信号的每个部分与其相邻部分具有空间关系。这些关系取决于作为该部分的邻区的多媒体信号网格。例如,在2D矩形网格上定义图像。由于节点位于像素处,每个像素有8个相邻像素。音素具有两个相邻的值和其自身。在计算机视觉的广泛领域中,许多多媒体信号处理算法根据邻居的值和当前部分的值来转换原始信号。例如,多媒体信号处理算法包括图像或声音滤波算法(梯度、图像模糊、声音调制、噪声消除和双边滤波)。列举的基本处理算法是更复杂的算法的一部分,诸如AR/VR内容生成、对象识别、分类和定位,这些算法可能伴随着重复执行几十亿次的基本算法。此外,基本算法的执行涉及大量邻居的值及其操纵(累加和乘法)的读/写(存储器访问)。卷积是前述对邻居的计算中最常用的数学运算符。通常,相邻关系表示为指示信号对当前部分的影响的测量值(估计值或系数)的值阵列。通常,阵列中的每个测量值被称为权重,并且权重阵列被称为核(见图62)。也就是说,卷积的数学概念被称为邻居的加权和。
[数学式26]
Figure BDA0002475241530000371
其中M和N是2D核的宽度和高度。例如,M×1是1D核的长度。
图62示出了根据本公开的实施例的卷积。
图62示出了3×3阵列(2D核)的权重1/9和2D多媒体信号(图像)的卷积。卷积的结果是新的输出图像,在该新的输出图像中每个像素值是原始图像中像素的领居的加权和,这提供了被称为微型图案的数字连通图片或照片,其通过相同值的连通性、密度或集中性利用权重形成。
核的权重是取决于从产生的信号和作业的预期的效果的变量。然而,如果考虑特定作业的精确核,则它在程序执行期间是恒定的。例如,图40中所示的核专用于模糊图像。一些核是由用户的先验知识构造的,而其他的核是迭代的或由卷积的神经网络和机器学习方案(诸如Ada-boost和SVM)检测。核内的所有权重可以构造称为微型图案的一些空间连通图片或照片。
“近似多媒体信号滤波算法的方法”公开了卷积的近似执行。该方法的基本思想是,通过使用核的空间结构作为核内的微型图案集合,将乘法分解为求和。通过空间连通配置(诸如微型图案)可以进行这种分解。此外,核中多个微型图案匹配K个近似元素,并且总和是以下近似于[数学式13]的形式的线性组合。
[数学式27]
Figure BDA0002475241530000372
由于微型图案由核M×N部分(权重)组成,对于一个核,K≤M×N。如果将大量核应用于同一多媒体信号,则这种基于将权重分组为微型图案的近似可能是有用的。这里,由于算法包括k个核,因此假设可以为每个核获取k个线性组合。
[数学式28]
Figure BDA0002475241530000381
这里,微型图案仅仅是多媒体信号的各部分之和,并且微型图案的形式可以取决于核。这意味着所有K×K形式的乘法器,mini_patternm approx是给定核k×M×N的所有可能的形式的组合。这里,如果微型图案的所有权重相等,则乘数αm,l=αl可以被引入到平方和([数学式29]),该平方和是原始信号中微型图案的所有部分之和。该和是整个核的一部分([数学式30]),是部分和。
[数学式29]
Figure BDA0002475241530000382
[数学式30]
Figure BDA0002475241530000383
假设所有可能的M形式的微型核表被构造,该表将具有M个备注(memo)。在表的每个备注中放置新图像,该新图像用针对多媒体信号Row×Col的部分的位置中的每一个的特定微型图案的部分和([数学式30])来构造。
[数学式31]
Figure BDA0002475241530000384
与上述描述相关的图像被称为部分和图像(partial sum image),并且与上述描述相关的表被称为部分和表。此外,部分和图像的微型图案和的形式可以包括核内(in-kernel)偏移。因此,微型图案(例如,位于具有不同偏移的两个不同核中的2×1)可以使用表中相同的部分和图像。然后,每第l个核将不同的αI相乘一次,而不是αm.l的m次乘法。
当使用越来越多的核时,并且因此K<<k×M×N,微型图案在几个核中重复,这带来了附加优势。大多数核上,更多的具有40%或更多的0。例如,如果用于分类的卷积神经网络为矩形2D图案带来了80%的功耗降低,则该网络可以具有1000亿个核,以及十倍的加速率。当可能的微型图案形式是已知的并且微型图案形式的数量是有限的且小的时,实现了独特的优势。当多媒体信号的二元值为0/1、-1/1、或1、2、4…9时,这种情况发生。这种实施例的示例是二值化后的遗传图案。这里,微型图案是已知的,自组织的遗传图元是有限的,并且它们的形式变化较小。
此外,如果多个核理想地与相同的多媒体信号(例如,一个图像)卷积,如前所述,则结果被累加成新的单个图像。核的集合被称为层。卷积发生在基于机器学习的算法中,以用于对象识别、语音识别、手写识别、分类或定位。卷积通常用于插值和位置跟踪的金字塔匹配算法。这种情况的创造性与核的卷积顺序无关。核可以随机选择。为此,公开了“近似多媒体信号滤波算法的方法”,用于将所有核组合到维数为D+1的另一个核中,其中D是核的维数。例如,2D核被组合成一个3D核,并且最佳的微型图案也是3D的,而不是如图21A和图21B中所示的2D。因此,微型图案由输入多媒体信号的部分的量(volume)形成。由于以这种方式可以获得少于K个的微型图案,所以微型图案在功率和计算数量方面可以具有显著的优势,如图22A和图22B中所示。在结构光摄像头的基因板(genetic panel)的情况下,使用二元表示,并且因此3D阵列将非常稀少。
基于卷积的方法近似
基于卷积的方法的基本思想是,遗传图案的每个部分被表示为多个2D二元核。因此,所公开的算法分解卷积的乘积和运算,以便在标准情况下将和与乘积彼此分开。此外,如果使用图案的二元表示,则在具有遗传图案的实施例中强调乘法。分解降低了3D环境重构的匹配过程中的功耗和计算复杂度。为了解决匹配问题,该方法执行近似、计算部分和表以及加权。
遗传图案的核近似通过使用窗口内每个实际值的核G2(x,y)的空间结构来处理定义的核大小的每个窗口,以便通过使用在核内具有近似相同值的2D区域内的部分和的相同线性组合([数学式27])来重新配置它(Rapprox=mini_patternm approx)。如果使用IR图像的强度,则应当引入标准化项。因此,由于实际值的图像(噪声、图案调制和强度对深度的依赖性),微型图案的部分和在它们内部具有半相等的值。如果O是核近似的精度,则输出信号由下式给出:
[数学式32]
Figure BDA0002475241530000401
例如,图63A提供了在实际值的情况下的近似的简要描述,并且图63B提供了在二元情况下的近似的简要描述。下面将描述图63A和图63B。
图63A和图63B示出了根据本公开的实施例的核近似的概念。
图63A示出了根据连通分量的空间密度图用三个近似区域和三个权重来近似的实际值的3×3核,并且图63B示出了给出参考遗传图案的二元表示的情况,其中将所有元胞移位1个元胞的窗口内的每个近似核用k个连通分量(k=2(左),并且k=3(右))来近似。
如果使用一组最佳区域(k<<M×N)和强度值,则遗传图案的相应的核的相同线性组合的重构相当于确定它们的权重。此外,如果使用二元值,则在窗口内连通的所有k个分量近似k个区域Rapprox。
在使用具有M和N(其中每个范围从2到13)的核的遗传图案的实施例中,使用穷举搜索或BFS算法,其最小化[数学式20]中两边的平均平方误差。因此,近似算法覆盖对于核大小可用的所有组合。当没有区域Rapprox来最小化与原始核的区别或达到近似精度时,搜索停止。为所有窗口的部分和的线性组合检测的集合被用于匹配算法的近似执行。匹配卷积A的原始执行由如所示的大量穷举的卷积计算组成,并且近似执行A’利用等于实际值α的每个区域Rapprox的重要值的两个偏移和部分和表
Figure BDA0002475241530000402
来执行光累加计算。使用已知的图像大小来预先计算所有k个区域的部分和图像的集合的偏移。这些图像累加在一个由
Figure BDA0002475241530000403
表示的部分和表中。
在转置计算之后,卷积在以下步骤中计算加权线性组合。
1.部分和计算(累加计算)。
2.加权(乘法)。
3.加权和的累加
图64示出了根据本公开的实施例的卷积。
这里,对于卷积,使用乘法-累加步骤(顶部)和单独的乘法和累加(底部)。
通常,部分和表
Figure BDA0002475241530000404
包括与遗传图案内窗口中的近似微型图案相对应的2D阵列的集合。这些阵列是用于根据连通分量配置每个区域(诸如1×1、1×2、…、M×M或更复杂的区域)的和的图像。如图26中所示,在这种图像的每个位置处的输入图像之和对应于微型图案。
加权可以是根据表
Figure BDA0002475241530000414
内图像的预先计算的偏移,将来自表的一个图像简单乘以常数α。可以累加对应于输出的加权部分和。在二元遗传图案中,所有的权重系数都是1。因此,结果是一次性累加。
自复制近似
根据由[数学式15]至[数学式17]引入的异步模式,自复制是根据给定规则从初始状态下的支持图案同时演化给定自动机的多个副本。
考虑多维元胞自动机以及2D元胞自动机,对于该多维元胞自动机,集合的每个规则可表示为具有3×3元胞或3Sf×2Sf个像素的捕获图像的大小的核。这里,通过使用Sf×2Sf中所有像素的累加强度来计算元胞值。因此,外部总体元胞自动机的更新状态函数([数学式13])可以通过对于图案的实际值([数学式27])的以下表示的连通分量的线性组合来近似。
[数学式33]
Figure BDA0002475241530000411
此外,如以下数学式所给出,二元表示中,近似误差为0(θ=0)。
[数学式34]
Figure BDA0002475241530000412
每个近似区域是元胞自动机晶格上位置(i,j)中的元胞Ci,j的邻区中的连通分量。
[数学式35]
Figure BDA0002475241530000413
根据本公开的实施例,首先将捕获的IR图像转换成部分和表
Figure BDA0002475241530000415
然后通过对与自动机规则的连通分量相对应的部分和图像使用[数学式34]和[数学式35]中描述的近似规则来演化元胞自动机。
基于这些规则([数学式26]),可以近似引入的2D元胞自动机,以便有效地将捕获图像中的物理子像素网格映射到如下计算的网格。
[数学式36]
Figure BDA0002475241530000421
因此,在本公开的实施例中,计算部分和表
Figure BDA0002475241530000422
然后近似网格映射,从而支持在自复制之前的子像素定位,以用于对应性匹配或逐像素卷积。
从遗传图案解读空间码
IR摄像头捕获反射的遗传图案,从捕获的遗传图案获得的2D图像被解释,然后由移动设备的处理器中的程序处理解释的图像。该程序可以使用从捕获的反射图案和生成的参考图案的匹配区域之间的对应性关系的差异图重构深度信息的三角测量方案。差异(失配)是由于差异效应而发生的,在差异效应中,被认为位于不同深度并且具有不同视图的相同对象沿着对极线方向移位。在通过深度测量校准3D摄像头之后,沿着垂直方向不存在移位。例如,移位是在逐行方向上执行的,而非沿着逐列方向存在。
因此,图案的相同部分需要沿着行方向匹配。通过解读空间码来确定匹配区域。解读过程包括获取捕获图案的一部分并从该部分执行元胞自动机演化的步骤,直到每个新的演化时期带来在反射的和演化的图案之间适当的匹配。沿着对极线方向,该部分可以是在1D情况下在垂直方向上获取的第j行和第i列中的区域或该区域的子部分,以及在2D或更高维情况下的任何形式的区域。适当匹配的度量是具有空间长度的两个二元码之间的汉明距离。汉明距离可以通过使用二元码的元胞自动机演化来生成,并且根据捕获图像的反射图案来计算。
1D元胞自动机的应用
根据本公开的实施例,多维元胞自动机自复制性质可以在更一般的背景下使用,而不是不可逆限制。可以捕获图58中所示的仅具有位于平面表上的一个矩形对象的环境的场景。然后,IR图像中对象的矩形区域沿着对极线移位。每个元胞位置中的空间码以2D图案被解读。在垂直于对极线方向的方向上,对反射图案的所有列执行元胞自动机演化。对于时期t0至tmax中的每一行,执行最小移位发现。因此,当对于第i列,第j行中的参考图案和反射图案之间的汉明差最小时,差异由移位=d-i给出,其中td是时期,并且i表示当前列。这里,使用每个时期的唯一性。在该示例中,与表的表面相关的每一行沿着对极线具有相同的移位(差异)ttablenoise,其中σnoise是表深度中的2D噪声。此外,该算法通过显示边缘和阴影元胞来去除后续步骤中的模糊。这种差异图可以包括深度不一致的区域和不匹配的区域,诸如孔洞和伪影。具有深度的区域可以被用于重构或分割(分解)具有像素级精度的场景。
为了检测更精确的差异估计,程序在每个区域中的列和行中形成最初估计的新图案形式。该构造过程包括根据差异估计将每个匹配区域移回零差异位置的操作,并且因此可以与参考遗传图案相关。检测到的新图案可以包括不匹配或模糊的元胞中的孔洞。在程序采用构造的图案之后,程序应用来自其的自恢复过程。自恢复涉及全局元胞自动机演化,这意味着从构造的图案演化。根据[数学式15]至[数学式17],可以在异步更新模式下执行增强和恢复过程。这里,图案生成和初始估计通过[数学式3]在异步模式下被应用。全局演化意图最小化参考图案和构造图案之间的差。因此,每个元胞中的演化异步地恢复不足或丢失的信息,诸如孔洞或伪影。由完整的参考遗传图案提供的全球限制使得这种增强成为可能。
在构造图案被恢复之后,匹配区域的差异值被分配给图案的恢复的元胞。然后,所有差异都被并入到一个差异图中,该差异图具有元胞自动机晶格的分辨率,即Sf×Sf个像素的元胞的分辨率或一像素的分辨率。子像素值是通过将网格反向映射到IR图像的物理平面而获得的。因此,获取上述包括前向映射误差或其他失真的子像素差异图。为了强调误差,误差优化问题可以通过如在本公开中已经使用的用于静态校正的Levenberg-Marquardt非线性优化来解决,以便根据非连续性的约束来调整所有子像素值(当在实施例中使用IR摄像头的IrW或IrW-RGB矩阵时的纹理或颜色)。
2D元胞自动机的应用
借助2D元胞自动机生成的遗传图案以与1D元胞自动机的情况非常相似的方式被解读。差别在于,前述参考图案生成和自复制是在一区域中执行的,而不是在行(列)中执行的。因此,在初始步骤中,程序通过1D元胞自动机(例如,如参考附图描述的相同的1D元胞自动机)的演化来生成支持2D图案。这种图案被用作对零差异的支持。以这种方式,程序使用该支持的各种移位,以便对每个元胞及其邻区初始化2D元胞自动机的自复制。因此,该程序检测初始差异估计。然后,程序针对每个区域生成与1D元胞自动机情况相关的新图案,并执行自恢复。在增强逐像素差异图的初始估计之后,该程序通过全局应用2D自动机的自复制来去除孔洞和伪影。随后,以类似于1D元胞自动机的情况的方式,应用反向映射和非线性优化来获得密集子像素差异图。
图65示出了根据本公开的实施例的遗传图案的生成。
具体地,图65示出了通过2D元胞自动机演化从由1D元胞自动机生成的遗传支持图案生成遗传图案的示例。
根据本公开的实施例,数量类型-状态更新函数的[数学式33]至[数学式35]可以被应用于已经近似了1D或更高维的元胞自动机的演化执行的部分和表。近似执行的实施例通过使用行(line)大小超过一个像素的遗传图案来提供密集深度重构。事实上,对于为Sf×Sf个像素的元胞大小,基于因子Sf,子像素差异图可以具有比原始IR摄像头图像更低的分辨率。此外,可以执行卷积近似来恢复元胞之间的中间值。在这种情况下,由于卷积计算的数量小于前述情况,因此可以使用初始估计来为每个位置选择核的集合。
遗传算法
通过遗传算法的元胞自动机演化
演化算法是演化计算领域的算法名称,演化计算领域是自然计算的较低领域。演化算法是解决在高阶组合或连续搜索空间中的搜索和优化问题的范例,其灵感来源于使用自然演化原理的思想。最广为人知的示例是遗传算法、遗传编程、演化策略和演化编程。
演化算法的所有情况的一般操作原则基于程序循环,该程序循环涉及对操作者修改、重组、选择和给定问题的候选解集合(通常称为个体种群)的简化实施方案的优化演化。在该一般配置中,修改对应于对一个候选解的修改,其通常偏好较少的修改而不是较多的修改。重组对应于两个或更多个候选解之间的分量交换。朝向种群增加平均合适度的演化过程是由偏好更好的候选解而不是更差的候选解来推动的,该更好的候选解将以更高的概率增长到下一代。合适度评估意图计算与候选解相关的卓越性度量。也就是说,合适度函数对应于优化问题的可用目标函数。
复杂算法的参数演化也许似乎是一个设计问题,尽管逆向设计问题即目标设计(要参数化的算法的行为)是已知的,但实施目标设计的方法是未知的。元胞自动机的逆向设计对应于这个问题。元胞自动机通过在许多领域中使用局部规则来生成全局状态。相对于现实世界中的问题,寻找显示预期方面的规则可能是一项困难的工作。
在下文中,考虑了根据同步更新([数学式1]和[数学式2])、异步更新([数学式15]至[数学式17])或近似执行([数学式33]和[数学式35])在时期t1到时期t1+x的元胞自动机的演化。
在2D晶格中,元胞自动机在时期ti中具有状态Ct i,并且在时期ti+x中具有状态Ct i +x。根据功耗的限制,转换规则的大小在可能时将变得更大。因此,根据本公开,遗传算法的合适性函数可以作为Ct i+x和基于转换规则的估计δT之间的差来引入。由于应用元胞自动机演化的执行的近似,所以在概率的背景下使用了预测的概念。因此,遗传算法(geneticalgorithm,GA)要求最优解或转换规则,其以概率μ提供元胞自动机正向演化
Figure BDA0002475241530000451
或反向(逆向)演化
Figure BDA0002475241530000452
的精确近似。
GA演化出用于检测什么满足概率μ或最佳执行的L个转换规则的种群(每个个体大小为大小9×9比特(=81比特))。假设GA使用竞争赛选择(tournament selection)来确定是否维持任何个体的生存。这涉及对种群执行“竞争赛”来确定下一代。在每个竞争赛中,从t代中随机选择q个个体,并为t+1代复制合适度最高的个体。重复这一过程,直到t+1代的个体数与t代相同。
在选择之后,重组被应用于t+1代。重组是通过借助对群体的子集的单点交叉(crossover)和概率比特翻转来修改所产生的个体来执行的。在交叉中使用的个体的相对数量由交叉率c表示。通过以概率m反转个体的所有比特来执行修改。例如,为了检测用于附加执行近似的最小微型图案的目的,可以选择小的交叉率。群体内的所有个体通过个体的比特码的1s的数量的归一化分布被随机初始化。这表明具有为1的特定数量的个体的数量大致等于具有为1s的不同数量的个体的数量。这防止算法在算法开始时专门化搜索空间的特定区域。在D代和最后一代的最佳个体是元胞自动机晶格中元胞(i,j)的特定位置的最佳解之后,该过程结束。这意味着算法中使用的合适度函数不需要是概率性的,并且所有这些问题可以组合成一个问题。因此,个体的数量L是根据9×9元胞晶格中的元胞数量来选择的,并且这里,元胞的大小为Sf×Sf
合适度函数通过基于应用于每个元胞的转换规则和元胞自动机规则的演化之间的平均平方误差来评估。这里,最佳解可以由元胞的所有最优解的softmax函数来确定。
图66示出了根据本公开的实施例的逐时期的2D元胞自动机演化,以便实现静态自组织状态。
图67示出了根据本公开实施例的2D元胞自动机以及通过GA的全局方面的演化的简化或近似执行。
GA为2D晶格中的所有元胞带来最佳转换规则集合,并且通过将该最佳转换规则集合直接应用于初始状态来生成最终静止状态遗传图案。也就是说,[数学式12]的元胞自动机规则可以用以下形式的转换规则代替。
[数学式37]
Figure BDA0002475241530000461
使用GA的遗传图案的实施例
根据本公开的实施例,可以应用转换规则,而不是元胞自动机的演化起源。
因此,自动机中每个元胞的同步更新([数学式1]和[数学式2])和异步更新([数学式1]至[数学式3])用[数学式37]来代替。根据上面的描述,该方法用元胞周围的转换规则对反射图案的捕获图像进行卷积。也就是说,转换规则矩阵的部分和分量α0,0([数学式37])集中在元胞自动机晶格中当前元胞的位置(i,j)上。沿着晶格的元胞,该方法应用对应于每个位置的转换规则
Figure BDA0002475241530000462
并重复该操作L次。L是作为元胞的数量和转换规则的数量引入的。为了从遗传图案解码空间码,使用GA的两种方法可用。一种方法是通过使用前向转换规则对空间码进行解码,以用于在以下同步和异步模式下的元胞自动机的自复制,
[数学式38]
Figure BDA0002475241530000463
或者,如果元胞自动机规则是可逆的,则解反向问题。
[数学式39]
Figure BDA0002475241530000464
遗传图案将转换规则近似为核,并以与如关于基于卷积的方法和元胞自动机演化([数学式34])所述的相同的方式执行卷积[数学式38]或[数学式39]的近似函数。因此,基于实际值的强度的元胞自动机演化的遗传图案给出如下。
[数学式40]
Figure BDA0002475241530000471
对于如图68中所示的二元遗传图案,
[数学式41]
Figure BDA0002475241530000472
Figure BDA0002475241530000473
图68示出了根据本公开的实施例的近似为卷积核期间的转换规则内的连通分量。
因此,根据“近似多媒体信号滤波算法的方法”的转换规则集合可以表示为一层中的核的集合。另外,由于转换规则是2D,它们可以组合成一个3D阵列。核在阵列中被重排(permute),从而能够检测基于强度的二元遗传图案和实际值的强度的最小数量的微型图案或连通的分量。以这种方式,本公开的方法可以执行近似函数,以用于对捕获图像中的遗传图案和转换规则进行卷积。
其他实施例
根据多视图捕获提高分辨率
前述使用1D和2D元胞自动机的加密提供了与具有子像素精度的IR图像分辨率相对应的深度点云密度。深度分辨率是深度的二阶函数。这意味着一个像素的差异覆盖了另一个深度范围,这增加了与摄像头的距离。
图69示出了根据本公开的点云密度的降低。
具体地,图69示出了如果密度总是307200点(=640×480),则点云密度根据距摄像头的距离的增加而减小。
为了消除这种依赖性,IR投射器或IR摄像头透镜可以通过施加磁场相对于光轴振动。因此,摄像头可以以各种角度的视角捕获各种图像。重要的是,角度应当是小的和已知的振动级。因此,程序(或处理器)可以处理几个帧,以在统计上提高深度精度,并将分辨率提高到沿着工作区域的最大距离。因此,该程序在每帧中执行加密和深度估计。这里,通过对应于已知透镜振动角度的旋转转换来应用所有重构点云的合并。
替代方案和附加实施例
面向AR/VR的移动设备
一种用于重构具有由移动设备断言的近似执行的3D环境的系统和方法(“近似多媒体信号滤波算法的方法”)可以执行用于3D内容生成的同时的局部区域映射,以及如在下面的“3D内容的生成”中所公开的摄像头的6自由度(degrees of freedom,DOF)位置跟踪和鲁棒的主体姿态估计(以下称为位置跟踪)。在这种关系中,本公开的实施例可以用于使用环境的额外图像,包括在IR图像中减去遗传图案,以及分割对象以及识别的阴影和3D环境图。根据生成6DOF用户体验(user experience,UX)(以下称为“3D内容的生成”)的方法,最后一种可以用于区域映射。此时,虚拟多面体的顶点处的关键帧可以存储在存储器中,该虚拟多面体具有与摄像头和投射器之间的基线相对应的边缘。此外,通过所公开的复杂视图合成(以下称为“位置跟踪”),可以重构多面体体积内的中间点云(地图),并且可以增强分辨率。“近似多媒体信号滤波算法的方法”用于近似来自“位置跟踪”的卷积神经网络。近似的执行可以在3D插值中用于在VR/AR中用于自然用户界面的鲁棒的主体姿态跟踪以及子像素位置跟踪。
图70是示出根据本公开实施例的计算3D图像的深度信息的方法的流程图。
根据本公开实施例的计算深度信息的方法可以包括,在操作3710中,基于在2D图像中包括的至少一个元胞的值生成图案,在操作3720中,投射该图案,在操作3730中,捕获该图案的反射图像,以及在操作3740中,基于该图案的反射图像来计算深度信息。
图案的生成可以包括为在2D图像中包括的多个元胞中的每个元胞设置值。例如,为多个元胞中的每个元胞设置的值可以是0或1。
此外,在2D图像中包括的至少一个元胞的值可以是为在2D图像中包括的多个元胞的行或列设置的初始值。
图案的生成可以包括基于在2D图像中包括的一个元胞的值和与该一个元胞相邻的两个元胞的值,确定与该一个元胞相邻的另一个元胞的值。
具体地,图案的生成可以包括基于2D图像中包括的一个元胞的值和与一个元胞相邻的两个元胞的值之和,确定与该一个元胞相邻的另一个元胞的值。
在这种情况下,深度信息的计算可以包括基于在图案的反射图像中包括的多个元胞的行或列中的元胞的值来生成图案。
此外,基于行或列中的元胞的值生成图案可以包括基于行或列中包括的一个元胞的值和与该一个元胞相邻的两个元胞的值,确定与该一个元胞相邻的另一个元胞的值。
这里,深度信息的计算可以包括将在图案的反射图像中包括的多个元胞的值与基于行或列中的元胞的值生成的图案中包括的多个元胞的值进行比较。例如,深度信息可以基于比较的结果来确定。
同时,根据本公开的各种实施例,计算深度信息的方法可以被实施为由计算机可执行的程序代码,并且被提供给每个服务器或设备,使得程序代码可以在其被存储在各种非暂时性计算机可读介质中的任何一种中的状态下由处理器执行。
例如,可以提供存储程序的非暂时性可读介质,该程序用于执行基于在2D图像中包括的至少一个元胞的值生成图案、投射图案、捕获图案的反射图像以及基于图案的反射图像计算深度信息的操作。
前述各种应用或程序可以存储和提供在非暂时性可读介质中,诸如致密盘(compact disk,CD)、数字多功能盘(digital versatile disk,DVD)、硬盘、蓝光盘、通用串行总线(universal serial bus,USB)、存储器卡和只读存储器(read only memory,ROM)。
从前面的描述中显而易见的是,根据本公开,3D环境可以通过计算深度信息来建模。
尽管已经参考本公开的某些实施例示出和描述了本公开,但是本领域技术人员将理解,在不脱离由所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以在形式和细节上进行各种改变。
虽然已经用各种实施例描述了本公开,但是可以向本领域技术人员建议各种改变和修改。本公开意图涵盖落入所附权利要求范围内的这些改变和修改。

Claims (14)

1.一种获得深度信息的方法,所述方法包括:
基于二维(2D)图像中包括的至少一个元胞的值来获得图案;
投射所述图案;
捕获所述图案的反射图像;以及
基于所述图案的反射图像来获得深度信息。
2.根据权利要求1所述的方法,其中,获得所述图案包括为所述2D图像中包括的多个元胞中的每个元胞设置值。
3.根据权利要求2所述的方法,其中,所述多个元胞中的每个元胞的值从等于或大于零的整数中选择。
4.根据权利要求1所述的方法,其中,在所述2D图像中包括的至少一个元胞的值是为在所述2D图像中包括的多个元胞的行或列设置的初始值。
5.根据权利要求1所述的方法,其中,获得所述图案包括基于在所述2D图像中包括的至少一个元胞的值和与所述一个元胞相邻的两个元胞的值,确定与所述一个元胞相邻的另一个元胞的值。
6.根据权利要求5所述的方法,其中,获得所述图案包括基于在所述2D图像中包括的至少一个元胞的值和与所述一个元胞相邻的两个元胞的值之和,确定与所述一个元胞相邻的另一个元胞的值。
7.根据权利要求1所述的方法,其中,获得深度信息包括基于在所述图案的反射图像中包括的多个元胞的行或列中的元胞的值来生成图案。
8.根据权利要求7所述的方法,其中,基于行或列中的元胞的值来获得所述图案包括基于所述行或所述列中包括的一个元胞的值和与所述一个元胞相邻的两个元胞的值,确定与所述一个元胞相邻的另一个元胞的值。
9.根据权利要求7所述的方法,其中,获得深度信息包括将在所述图案的反射图像中包括的多个元胞的值与基于所述行或所述列中的元胞的值生成的图案中包括的多个元胞的值进行比较。
10.根据权利要求9所述的方法,其中,所述深度信息基于所述比较的结果来确定。
11.一种终端,包括:
投射器;
捕获单元;以及
处理器,被配置为:
基于二维(2D)图像中包括的至少一个元胞的值来获得图案,
控制所述投射器投射所述图案,
控制所述捕获单元捕获所述图案的反射图像,并且
基于所述图案的反射图像来获得深度信息。
12.根据权利要求11所述的终端,其中,所述处理器被配置为通过为在所述2D图像中包括的多个元胞中的每个元胞设置值来获得所述图案。
13.根据权利要求12所述的终端,其中,所述多个元胞中的每个元胞的值从等于或大于零的整数中选择。
14.根据权利要求11所述的终端,其中,所述终端被配置为执行权利要求5至权利要求10中的方法之一。
CN201880071216.3A 2017-10-30 2018-10-30 处理图像的方法和装置 Active CN111295691B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020170142843A KR102457891B1 (ko) 2017-10-30 2017-10-30 이미치 처리 방법 및 장치
KR10-2017-0142843 2017-10-30
PCT/KR2018/013017 WO2019088659A1 (en) 2017-10-30 2018-10-30 Method and apparatus for processing image

Publications (2)

Publication Number Publication Date
CN111295691A true CN111295691A (zh) 2020-06-16
CN111295691B CN111295691B (zh) 2023-09-19

Family

ID=66244880

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880071216.3A Active CN111295691B (zh) 2017-10-30 2018-10-30 处理图像的方法和装置

Country Status (5)

Country Link
US (1) US11094073B2 (zh)
EP (1) EP3676800A4 (zh)
KR (1) KR102457891B1 (zh)
CN (1) CN111295691B (zh)
WO (1) WO2019088659A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114708224A (zh) * 2022-03-31 2022-07-05 南通金斯曼纺织有限公司 基于人工智能的纺织品织纹质量评估方法及系统

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017129609A1 (de) * 2017-12-12 2019-06-13 Sick Ag Erkennen von Veränderungen in einem Erfassungsbereich
US10909373B1 (en) 2018-08-24 2021-02-02 Snap Inc. Augmented reality system using structured light
US11556784B2 (en) 2019-11-22 2023-01-17 Samsung Electronics Co., Ltd. Multi-task fusion neural network architecture
CN111161355B (zh) * 2019-12-11 2023-05-09 上海交通大学 多视图相机位姿和场景的纯位姿解算方法及系统
CN112116602A (zh) * 2020-08-31 2020-12-22 北京的卢深视科技有限公司 深度图修复方法、装置和可读存储介质
US11892308B2 (en) * 2021-07-28 2024-02-06 GM Global Technology Operations LLC Uncertainty-based map visualizations for directing vehicles
CN116503585B (zh) * 2023-06-25 2023-09-05 广州视景医疗软件有限公司 一种基于细胞自动机的融合功能训练控制方法和装置

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020050988A1 (en) * 2000-03-28 2002-05-02 Michael Petrov System and method of three-dimensional image capture and modeling
US6503195B1 (en) * 1999-05-24 2003-01-07 University Of North Carolina At Chapel Hill Methods and systems for real-time structured light depth extraction and endoscope using real-time structured light depth extraction
CN101667303A (zh) * 2009-09-29 2010-03-10 浙江工业大学 一种基于编码结构光的三维重建方法
US20100074532A1 (en) * 2006-11-21 2010-03-25 Mantisvision Ltd. 3d geometric modeling and 3d video content creation
US20120162371A1 (en) * 2010-12-28 2012-06-28 Canon Kabushiki Kaisha Three-dimensional measurement apparatus, three-dimensional measurement method and storage medium
US20120207388A1 (en) * 2011-02-10 2012-08-16 Edge 3 Technologies, Inc. Method and apparatus for disparity computation in stereo images
US20130057654A1 (en) * 2005-02-08 2013-03-07 Microsoft Corporation Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US20140132725A1 (en) * 2012-11-13 2014-05-15 Institute For Information Industry Electronic device and method for determining depth of 3d object image in a 3d environment image
CN104050656A (zh) * 2013-03-12 2014-09-17 英特尔公司 用于确定图像中对象深度的设备和技术
CN104104941A (zh) * 2013-04-08 2014-10-15 三星电子株式会社 三维图像获取装置以及生成深度图像的方法
JP2015076023A (ja) * 2013-10-11 2015-04-20 カシオ計算機株式会社 画像処理装置、立体データ生成方法、及びプログラム
US20150371394A1 (en) * 2014-06-20 2015-12-24 Stmicroelectronics S.R.L. Method for generating a depth map, related system and computer program product
CN105787426A (zh) * 2015-01-08 2016-07-20 通用汽车环球科技运作有限责任公司 用于采用机器视觉检查物体的方法和设备
CN106796661A (zh) * 2014-08-12 2017-05-31 曼蒂斯影像有限公司 投影光图案的系统、方法和计算机程序产品
US20170237996A1 (en) * 2016-02-15 2017-08-17 King Abdullah University Of Science And Technology Real-time lossless compression of depth streams
JP6216842B1 (ja) * 2016-07-08 2017-10-18 Idein株式会社 画像処理装置、画像処理方法、プログラム及びシステム

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005082075A2 (en) * 2004-02-25 2005-09-09 The University Of North Carolina At Chapel Hill Systems and methods for imperceptibly embedding structured light patterns in projected color images
US7676114B2 (en) * 2004-12-17 2010-03-09 Asm Assembly Automation Ltd. Imaging system for three-dimensional reconstruction of surface profiles
US8150142B2 (en) * 2007-04-02 2012-04-03 Prime Sense Ltd. Depth mapping using projected patterns
US20110205227A1 (en) * 2008-10-31 2011-08-25 Mani Fischer Method Of Using A Storage Switch
US8054290B2 (en) * 2009-05-27 2011-11-08 Microsoft Corporation Image contrast enhancement in depth sensor
KR101259835B1 (ko) 2009-06-15 2013-05-02 한국전자통신연구원 깊이 정보를 생성하기 위한 장치 및 방법
US9582889B2 (en) * 2009-07-30 2017-02-28 Apple Inc. Depth mapping based on pattern matching and stereoscopic information
US20120176380A1 (en) * 2011-01-11 2012-07-12 Sen Wang Forming 3d models using periodic illumination patterns
US20120176478A1 (en) * 2011-01-11 2012-07-12 Sen Wang Forming range maps using periodic illumination patterns
US8760499B2 (en) * 2011-04-29 2014-06-24 Austin Russell Three-dimensional imager and projection device
KR101605224B1 (ko) * 2011-10-05 2016-03-22 한국전자통신연구원 패턴 광을 이용한 깊이 정보 획득 장치 및 방법
US8971985B2 (en) * 2012-06-01 2015-03-03 Xerox Corporation Minute ventilation estimation based on depth maps
KR101314101B1 (ko) 2012-09-24 2013-10-04 위프코 주식회사 3차원 계측 시스템 및 그 방법
KR101399274B1 (ko) 2012-09-27 2014-05-27 오승태 다중 패턴 빔을 이용하는 3차원 촬영 장치 및 방법
KR101970563B1 (ko) * 2012-11-23 2019-08-14 엘지디스플레이 주식회사 3차원 입체 영상용 깊이지도 보정장치 및 보정방법
US20150002734A1 (en) * 2013-07-01 2015-01-01 Motorola Mobility Llc Electronic Device with Modulated Light Flash Operation for Rolling Shutter Image Sensor
US9294758B2 (en) * 2013-04-18 2016-03-22 Microsoft Technology Licensing, Llc Determining depth data for a captured image
US9349174B2 (en) * 2013-05-31 2016-05-24 Microsoft Technology Licensing, Llc Absolute phase measurement with secondary pattern-embedded fringe
US10089739B2 (en) * 2013-06-28 2018-10-02 Texas Instruments Incorporated Structured light depth imaging under various lighting conditions
KR101578891B1 (ko) 2013-10-10 2015-12-18 재단법인대구경북과학기술원 패턴 인식을 이용한 영상 정보의 차원 일치 장치 및 방법
US9984508B2 (en) * 2015-05-20 2018-05-29 Micron Technology, Inc. Light-based radar system for augmented reality
US10645309B2 (en) * 2015-11-06 2020-05-05 Intel Corporation Systems, methods, and apparatuses for implementing maximum likelihood image binarization in a coded light range camera
US10818018B2 (en) * 2016-11-24 2020-10-27 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
US10282857B1 (en) * 2017-06-27 2019-05-07 Amazon Technologies, Inc. Self-validating structured light depth sensor system
US10410373B1 (en) * 2017-12-21 2019-09-10 Facebook Technologies, Llc Calibration of a phase interferometry depth camera assembly

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6503195B1 (en) * 1999-05-24 2003-01-07 University Of North Carolina At Chapel Hill Methods and systems for real-time structured light depth extraction and endoscope using real-time structured light depth extraction
US20020050988A1 (en) * 2000-03-28 2002-05-02 Michael Petrov System and method of three-dimensional image capture and modeling
US20130057654A1 (en) * 2005-02-08 2013-03-07 Microsoft Corporation Method and system to segment depth images and to detect shapes in three-dimensionally acquired data
US20100074532A1 (en) * 2006-11-21 2010-03-25 Mantisvision Ltd. 3d geometric modeling and 3d video content creation
CN101667303A (zh) * 2009-09-29 2010-03-10 浙江工业大学 一种基于编码结构光的三维重建方法
US20120162371A1 (en) * 2010-12-28 2012-06-28 Canon Kabushiki Kaisha Three-dimensional measurement apparatus, three-dimensional measurement method and storage medium
US20120207388A1 (en) * 2011-02-10 2012-08-16 Edge 3 Technologies, Inc. Method and apparatus for disparity computation in stereo images
US20140132725A1 (en) * 2012-11-13 2014-05-15 Institute For Information Industry Electronic device and method for determining depth of 3d object image in a 3d environment image
CN104050656A (zh) * 2013-03-12 2014-09-17 英特尔公司 用于确定图像中对象深度的设备和技术
CN104104941A (zh) * 2013-04-08 2014-10-15 三星电子株式会社 三维图像获取装置以及生成深度图像的方法
JP2015076023A (ja) * 2013-10-11 2015-04-20 カシオ計算機株式会社 画像処理装置、立体データ生成方法、及びプログラム
US20150371394A1 (en) * 2014-06-20 2015-12-24 Stmicroelectronics S.R.L. Method for generating a depth map, related system and computer program product
CN106796661A (zh) * 2014-08-12 2017-05-31 曼蒂斯影像有限公司 投影光图案的系统、方法和计算机程序产品
CN105787426A (zh) * 2015-01-08 2016-07-20 通用汽车环球科技运作有限责任公司 用于采用机器视觉检查物体的方法和设备
US20170237996A1 (en) * 2016-02-15 2017-08-17 King Abdullah University Of Science And Technology Real-time lossless compression of depth streams
JP6216842B1 (ja) * 2016-07-08 2017-10-18 Idein株式会社 画像処理装置、画像処理方法、プログラム及びシステム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
RAYMOND A. MORANO等: "Structured Light Using Pseudorandom Codes", vol. 20, no. 3, pages 322 - 327, XP000767921, DOI: 10.1109/34.667888 *
SHANTHI S.等: "Cellular Automata And Their Realiazations", pages 58 - 63 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114708224A (zh) * 2022-03-31 2022-07-05 南通金斯曼纺织有限公司 基于人工智能的纺织品织纹质量评估方法及系统
CN114708224B (zh) * 2022-03-31 2023-06-23 吴江市双泽纺织有限公司 基于人工智能的纺织品织纹质量评估方法及系统

Also Published As

Publication number Publication date
EP3676800A1 (en) 2020-07-08
US20190130590A1 (en) 2019-05-02
US11094073B2 (en) 2021-08-17
KR102457891B1 (ko) 2022-10-25
EP3676800A4 (en) 2020-09-02
CN111295691B (zh) 2023-09-19
KR20190048195A (ko) 2019-05-09
WO2019088659A1 (en) 2019-05-09

Similar Documents

Publication Publication Date Title
CN111295691B (zh) 处理图像的方法和装置
Schult et al. Dualconvmesh-net: Joint geodesic and euclidean convolutions on 3d meshes
Chakrabarti et al. Depth from a single image by harmonizing overcomplete local network predictions
Lenssen et al. Deep iterative surface normal estimation
Stier et al. Vortx: Volumetric 3d reconstruction with transformers for voxelwise view selection and fusion
CN111627065A (zh) 一种视觉定位方法及装置、存储介质
Wang et al. Fast Image Segmentation Using Two‐Dimensional Otsu Based on Estimation of Distribution Algorithm
Brand et al. Spectral solution of large-scale extrinsic camera calibration as a graph embedding problem
CN112634149B (zh) 一种基于图卷积网络的点云去噪方法
CA2925435A1 (en) Methods and systems for generating polycube segmentations from input meshes of objects
Qu et al. Finding the sparsest vectors in a subspace: Theory, algorithms, and applications
Tang et al. Lsm: Learning subspace minimization for low-level vision
Fua et al. Reconstructing surfaces from unstructured 3d points
Eckart Compact Generative Models of Point Cloud Data for 3D Perception.
Gong et al. Quadtree-based genetic algorithm and its applications to computer vision
Jung et al. Stereo reconstruction using high-order likelihoods
CN112926543A (zh) 图像生成、三维模型生成方法、装置、电子设备及介质
CN110147809B (zh) 图像处理方法及装置、存储介质及图像设备
Jia et al. One‐Shot M‐Array Pattern Based on Coded Structured Light for Three‐Dimensional Object Reconstruction
Ross Exploiting texture-motion duality in optical flow and image segmentation
Giraud et al. Generalization of the shortest path approach for superpixel segmentation of omnidirectional images
CN114842071B (zh) 一种图像视角自动转化方法
Chen et al. Processing of volumetric video
El Chakik et al. An invariant descriptor map for 3d objects matching
CN117372628B (zh) 单视图室内场景三维重建方法、系统及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant