用于高效深度图像变换的方法和设备与流程

文档序号:12513306阅读:276来源:国知局
用于高效深度图像变换的方法和设备与流程

本申请主张2015年9月3日递交的标题为“用于高效深度图像变换的方法和设备”的第14/845,203号美国申请以及2014年9月5日递交的标题为“用于高效深度图像变换的方法和设备”的第62/046,860号美国临时申请的权益,所述申请以引用的方式并入本文中。

技术领域

本文中所揭示的标的物大体上涉及深度相机输出图像处理。



背景技术:

移动或便携式装置通常包含广泛的特征集合以满足各种各样的使用需求。这些装置可以包括多种多样的用于记录环境数据的传感器,例如彩色图像相机传感器。另外,一些装置还包括深度相机传感器以俘获用于场景的对象距离信息。对于一些应用(例如,扩增实境),深度图像信息可以用于映射环境中的3D对象。深度相机通常是放置在与彩色相机相比不同的但是附近的位置中的独立相机。

因此,当深度相机和彩色相机在大致相同的时间触发时,深度相机和相机传感器通常从略微不同的视点俘获图像。在视点和其它因素(例如焦距、分辨率)中的细微的差异或在相机/传感器特性中的其它差异意味着可能发生一些类别的转变以便适当地将深度信息应用在彩色相机坐标系中。将深度信息应用于彩色相机坐标系是所期望的,这是因为扩增实境应用的输出通常利用场景的彩色相机图像作为用于扩增的基础。

深度图像可以由2D坐标系中的像素组成,其中每个像素表示深度值或距离值。可以将来自深度相机的深度信息映射到彩色相机以辅助扩增实境应用。

然而,扩增实境系统通常包括与彩色相机物理地隔开且不同于彩色相机的深度相机。因此,用于深度相机和彩色相机的相机视点将不是相同的匹配。举例来说,深度相机可以放置在相对于彩色相机(例如,集成到移动电话或其它装置中的)的左侧、右侧或某个方向。

由于视差效应,深度相机的深度图可以具有用于在两个不同深度处的两个点的深度值,其中从彩色相机的角度,两个点中较近的点遮挡较远的点,并且因此彩色相机的图像仅俘获两个点中较近的点。当尝试将来自深度图的数据集成到通过彩色相机拍摄的彩色图像时,忽略此上文所描述的遮挡可产生输出错误并且影响用户体验。



技术实现要素:

本文中所揭示的实施例可涉及一种用于深度相机图像变换的方法。所述方法可以包括接收来自深度相机的深度相机图像,并且根据深度相机相对于另一个物理位置的物理位置确定处理顺序,所述处理顺序用于将深度相机图像的点变换到在与另一个物理位置相关联的另一个坐标系中的深度图像中。所述方法还可以包括在不测试深度的情况下根据所确定的处理顺序将深度相机图像变换到另一个坐标系的坐标系中。

本文中所揭示的实施例还可以涉及具有执行深度相机图像变换的指令的机器可读取非暂时性存储媒体。所述媒体可以包括接收来自深度相机的深度相机图像并且根据深度相机相对于另一个物理位置的物理位置确定处理顺序的指令,所述处理顺序用于将深度相机图像的点变换到在与另一个物理位置相关联的另一个坐标系中的深度图像中。所述媒体还可以包括在不测试深度的情况下根据所确定的处理顺序将深度相机图像变换到另一个坐标系的坐标系中的指令。

本文中所揭示的实施例还可以涉及一种包括用于深度相机图像变换的装置的设备。所述设备可以包括用于接收来自深度相机的深度相机图像的装置以及用于根据深度相机相对于另一个物理位置的物理位置来确定处理顺序的装置,所述处理顺序用于将深度相机图像的点变换到在与另一个物理位置相关联的另一个坐标系中的深度图像中。所述设备还可以包括用于在不测试深度的情况下根据所确定的处理顺序将深度相机图像变换到另一个坐标系的坐标系中的装置。

本文中所揭示的实施例可能进一步涉及移动装置,其包括处理器以及可配置以存储执行深度相机图像变换的指令的存储装置。所述装置可以包括接收来自深度相机的深度相机图像并且根据深度相机相对于另一个物理位置的物理位置确定处理顺序的指令,所述处理顺序用于将深度相机图像的点变换到在与另一个物理位置相关联的另一个坐标系中的深度图像中。所述装置还可以包括在不测试深度的情况下根据所确定的处理顺序将深度相机图像变换到另一个坐标系的坐标系中的指令。

其它特征及优点将从附图及具体实施方式中显而易见。

附图说明

图1是一个实施例中的系统的框图,在所述系统中可以实践高效深度图像变换(Efficient Depth Image Transformation,EDIT)的方面;

图2是在一个实施例中用于执行EDIT的方法;

图3说明了在一个实施例中俘获包括目标对象的场景的装置;

图4说明了在一个实施例中来自图3的深度相机图像;

图5说明了在一个实施例中通过EDIT执行的可能的处理方向的样本;

图6说明了在一个实施例中的运行环境,其中EDIT可以执行从右到左的深度相机图像处理;以及

图7说明了在一个实施例中的一个运行环境,其中EDIT可以执行从下到上的深度相机图像处理。

具体实施方式

词语“示例性”或“实例”在本文中用于表示“充当实例、例子或说明”。本文中描述为“示例性”或描述为“实例”的任何方面或实施例未必应被解释为比其它方面或实施例优选或有利。

如上文所介绍,如果不恰当地操纵,那么结合彩色/RGB(红色、绿色和蓝色)相机传感器使用深度相机传感器可以产生遮挡。校正两个相机遮挡的一种方法是将来自深度相机视点的深度数据映射到彩色相机视点。映射深度数据可以包括解除投影深度图数据、将深度图数据变换到新的视点以及再次投影深度图数据。作为典型的映射过程的一部分,当仅应当存储最近距离表项时,多个深度图样本可能落在同一像素处。确定应当存储哪一个像素的一个解决方法是测试表项是否已经存在于新的图中以及确定所述之前所存储的表项是否是更靠近的(确定遮挡)。本文中所介绍的确定遮挡也可被称为深度测试,这需要处理时间以完成对可能被遮挡的每个像素的处理。

在一个实施例中,高效深度图变换(本文中简单地描述为“EDIT”)将深度图变换(例如,作为集成到例如下文描述的装置100的装置中的过程、模块、引擎或方法)为彩色相机坐标系同时考虑遮挡且没有清楚的像素存在和距离测试。在一个实施例中,EDIT俘获深度相机图像和彩色相机图像并且通过确定深度相机相对于另一个物理位置(例如,彩色相机的位置)的物理位置有效地处理深度相机图像。深度相机图像可以按照通过相对物理位置所确定的顺序被变换到彩色相机的坐标系中。举例来说,如果深度相机安装在彩色相机的右侧,那么EDIT可以按照从右到左的处理顺序变换来自深度相机图像的点,这种处理顺序在本文中也被描述为扫描顺序。其它物理位置也是可能的并且在下文进行更详细地描述。与先前技术相比点的变换可以快很多,因为不存在针对深度或遮挡的清楚的测试,或者在使用本文中描述的EDIT的技术的同时不需要此类测试。

图1是说明其中可实践本发明的实施例的装置的框图。所述系统可以是装置100,其可以包括通用处理器161、EDIT模块170和存储器164。为了清晰起见EDIT模块170是与处理器161和/或硬件162分开示出的,但是EDIT模块170可以基于软件165和固件163中的指令组合在处理器161和/或硬件162中和/或在处理器161和/或硬件162中实施。控制单元160可经配置以实施执行如本文所述的EDIT的方法。举例来说,装置100和控制单元160可经配置以实施在下文的图2中所描述的过程。

装置100可以是移动装置、无线装置、蜂窝电话、扩增实境装置(AR)、个人数字助理、可穿戴式装置(例如,眼镜、手表、头饰或类似身体附接装置)、移动计算机、平板计算机、个人计算机、膝上型计算机、数据处理装置/系统,服务器,或具有处理和/或显示能力的任何类型的装置。

装置100可以包括能够呈现彩色图像(包括3D图像)的屏幕或显示器112。在一些实施例中,显示器112可用于显示由彩色相机114俘获的实况图像、扩增实境(AR)图像、图形用户接口(GUI)、程序输出等。在一些实施例中,显示器112可以包括和/或容纳有触摸屏,以准许用户经由虚拟键盘、图标、菜单或其它图形用户接口(GUI)、用户手势和/或输入装置(例如触控笔及其它写入工具)的某一组合输入数据。在一些实施例中,可使用液晶显示(LCD)显示器或发光二极管(LED)显示器(例如有机LED(OLED)显示器)实施显示器112。在其它实施例中,显示器112可为可穿戴显示器,其可操作地耦合到装置100中的其它功能单元但与其分开容纳。在一些实施例中,装置100可以包括端口以允许3D经重构图像通过隔开的监视器(例如,显示器112)显示,所述监视器通过有线和/或无线接口耦合到装置100。

用户接口150还可以包括用户可经由其将信息输入到装置100中的键盘、小键盘152,或其它输入装置。如果需要,通过触摸屏/传感器将虚拟小键盘集成到显示器112中可免除键盘或小键盘152。用户接口150还可以包括麦克风154和扬声器156,例如,如果移动装置100是例如蜂窝式电话的移动平台。装置100可以包括与本发明无关的其它元件,例如,卫星定位系统接收器、电力装置(例如,电池),以及通常与便携式和非便携式电子装置相关联的其它组件。

装置100可充当移动/便携式平台或无线装置并且可经由一或多个无线通信链路通过基于或支持任何合适的无线通信技术的无线网络来通信。举例来说,在一些方面中,装置100可为客户端或服务器并且可与无线网络相关联。在一些方面中,网络可以包括人体局域网络或个人局域网络(例如,超宽带网络)。在一些方面中,网络可以包括局域网或广域网。无线装置可以支持或使用多种无线通信技术、协议或标准中的一或多个,举例来说,例如,3G、LTE、高级LTE、4G、CDMA、TDMA、OFDM、OFDMA、WiMAX和Wi-Fi。类似地,无线装置可以支持或使用多种对应的调制或多路复用方案中的一或多个。移动无线装置可以无线方式与其它移动装置、蜂窝电话、其它有线及和无线计算机、互联网网站等通信。

装置100可以实施用于多种环境中(例如,商场、街道、办公室、家庭,或用户可携带他们的便携式装置的任何地方)的AR系统。用户可以在多种情况中与他们的装置100的多个特征介接。在AR情境中,用户可使用他们的装置来通过他们的装置的显示器观察现实世界的表示。用户可通过使用他们的装置的相机与他们的具备AR功能的装置交互以接收现实世界图像/视频且以将额外或替代信息叠加到装置上的所显示的现实世界图像/视频上的方式来处理图像。当用户在他们的装置上观察AR实施时,可在装置显示器上实时替换或更改现实世界对象或场景。虚拟对象(例如,文本、图像、视频)可插入到装置显示器上描绘的场景的表示中。

在一些实施例中,装置100可以包括例如CCD或互补金属氧化物半导体(CMOS)传感器的图像传感器和/或红色绿色和蓝色(RGB)相机114,所述相机在下文中被称为“彩色相机114”。彩色相机114可以将光学图像转换为电子或数字图像且可将所俘获图像发送到处理器161。

一般而言,彩色相机114可以是提供“彩色信息”的彩色或灰度相机,而“深度信息”可以由深度传感器(例如,深度相机115)提供。虽然说明为装置100的一部分,但是应理解彩色相机114和深度相机115中的一个或两个可能未集成到装置100中,而实际上是装置100从单独的彩色相机114和/或深度相机115中接收数据输入。如本文所使用的术语“彩色信息”是指彩色和/或灰度信息。一般而言,如本文所使用,彩色图像或彩色信息可以被视为包括1到N个通道,其中N是取决于用于存储图像的色彩空间的某个整数。举例来说,RGB图像包括三个通道,红色、蓝色和绿色信息各一个通道。

深度信息可以通过多种方式使用深度传感器(例如,深度相机115)俘获。术语“深度传感器”用于指代可用于从彩色相机114独立地获得深度信息的功能单元。作为另一个实例,深度传感器可以采取耦合到装置100的光源的形式。在一个实施例中,光源可将结构化或纹理化光图案投影到场景中的对象上,所述光图案可以由光的一或多个窄带组成。随后可通过利用由对象的表面形状引起的经投影图案的几何失真来获得深度信息。深度相机115可以物理地安装在与彩色相机114相同的一般位置中,然而深度相机115可以物理地偏移到彩色相机114的一侧。举例来说,深度相机115可以安装在装置中使得深度相机是在彩色相机的顶部、底部、左侧或右侧的一或多个组合。因此,因为深度相机115和彩色相机114不是恰好与相同视点重叠的,所以虽然在近似相等时间处被触发但是每个相机可俘获不同的场景。此外,深度相机115和彩色相机114可以具有不同坐标系,使得来自深度相机的输出图像被变换到用于扩增实境系统或输出中的彩色相机114的坐标系。

在一些实施例中,装置100可以包括多个相机,例如,双重正面相机和/或正向和背向相机,所述相机还可以并入各种传感器。在一些实施例中,相机可能能够俘获静态图像与视频图像两者。在一些实施例中,相机可以是能够以每秒30帧(fps)俘获图像的立体摄像机。在一个实施例中,由相机俘获的图像可以是原始的未经压缩格式且可在得到处理及/或存储在存储器164中之前压缩。在一些实施例中,可由处理器161使用无损或有损压缩技术来执行图像压缩。

深度相机115和彩色相机114优选地以大致相同的对准集成到装置100中,使得横滚角度(而非必须地平移或其它旋转角度)小于两个相机传感器的位置之间的偏移差异的+/-0.1度。

在一些实施例中,处理器161还可接收来自运动传感器111的输入。传感器111可以包括3轴加速计、3轴陀螺仪和/或磁力计。传感器111可将速度、取向和/或其它位置相关信息提供给处理器161。在一些实施例中,传感器111可以通过彩色相机114和深度相机115输出与每个图像帧的俘获相关联的测量信息。在一些实施例中,传感器111的输出可以部分由处理器161使用以确定彩色相机114和深度相机115和/或装置100的位姿。

彩色相机114的位姿是指相对于参考系的彩色相机114的位置和取向。在一些实施例中,可针对6个自由度(6DOF)确定相机位姿,所述6个自由度是指三个平移分量(其可由参考系的X、Y、Z坐标给定)及三个角度分量(例如,相对于相同参考系的横滚、俯仰及横偏)。

在一些实施例中,彩色相机114和/或装置100的位姿可以基于由彩色相机114俘获的图像通过处理器161使用视觉追踪解决方案来确定和/或追踪。举例来说,在处理器161上运行的同时定位与映射(SLAM)模块175可实施和执行基于计算机视觉的追踪、基于模型的追踪和/或SLAM方法。SLAM指一类技术,其中在形成环境的图(例如,由装置100建模的环境的图)的同时追踪相对于所述图的相机的位姿。在一些实施例中,通过SLAM模块175实施的方法可以基于由彩色相机114俘获的彩色或灰度图像数据并且可用于产生相机的6DOF位姿测量的估计。在一些实施例中,传感器111的输出可用于估计、校正和/或调节所估计的位姿。另外,在一些实施例中,由彩色相机114和深度相机115俘获的图像可用于为传感器111重新校准或执行偏置调节。

图2是在一个实施例中用于执行EDIT的方法。在框205处,所述实施例(例如,EDIT)从深度相机接收深度相机图像。

在框210处,实施例根据深度相机相对于另一个物理位置的物理位置确定处理顺序,所述处理顺序用于将深度相机图像的点变换到在与另一个物理位置相关联的另一个坐标系中的深度图像中。举例来说,另一个物理位置可以是彩色相机的物理位置。在一些实施方案中,在确定处理顺序之前,实施例接收深度相机的相对于另一个物理位置的物理位置的指示。替代地,举例来说,深度相机与彩色相机的物理位置的相对物理位置可以是已知的,并且实施例可未接收到深度相机的相对物理位置的指示。在一些实施例中,在深度相机图像的点的变换之前是来自深度相机图像的2D像素到3D点中的解除投影。换句话说,从深度相机的视点来看,解除投影需要深度值的2D阵列并且形成3D点的阵列。在其它实施例中,来自深度相机图像的2D像素的解除投影集成到框210的变换中而不是作为单独的过程或计算来执行。在一个实施例中,EDIT执行变换的3D点回到像素/点中的投影以用于分配到彩色相机的坐标系中。投影可以在框210的变换之后发生或作为框210的变换的一部分发生。

在一个实施例中,深度相机具有例如焦距、主点和失真值的内部特性。当将深度相机图像像素/点变换到彩色相机的坐标系时EDIT可充分利用两个相机的内部特性。

在框215处,根据所确定的处理顺序在不测试深度的情况下实施例将深度相机图像变换到另一个坐标系的坐标系中。在下文中关于图6到9描述了关于各种处理顺序的进一步说明的论述。

图3说明了在一个实施例中的目标对象的装置场景俘获。举例来说,装置100可俘获彩色相机114和深度相机115上的场景305(例如,参见图1、6和7)。场景310的表示可以显示在装置100上。

图4说明了在一个实施例中在图3中说明的场景的深度相机图像俘获。深度相机图像(例如,包含目标对象的深度表示460的深度相机图像405)可以由在深度图像中的每个2D坐标处的深度像素(例如,深度像素430)组成。每个深度像素表示深度值(例如,从深度相机传感器到目标对象上的空间中的物理点的距离)。深度相机图像中的较暗(即,较大强度)像素指示目标对象(例如,目标对象300的正面)上的点是物理上更靠近(即,在附近)装置和深度相机传感器的。成远离深度相机115的角度的目标对象300的侧面可以在深度图像中通过具有与对象的最近表面相比更低/较小的强度然而与更远的深度像素相比具有更高/较大强度的深度像素表示。举例来说,目标对象300的侧面可以在深度相机图像中通过中等深度值415表示。目标对象300在没有背景的情况下或在并不搁置在对象表面上的情况下说明,并且可以被视为有效地悬置于空气中。因此,目标对象300周围的像素可以具有如从深度相机115图像中确定的无强度或无限距离的等效物。

如上文所介绍,深度传感器与彩色传感器之间的横滚角度可能影响通过EDIT处理的遮挡的准确性。举例来说,目标图像中的每条线可以独立地处理且不具有特定的遮挡测试。因此,如果(例如,由于旋转)在行N处的线溢出到已经写入的N-1,那么可能引入伪声。这在旋转足够大以形成大于0.5像素的竖直偏移时可能发生。

图5说明了在一个实施例中通过EDIT执行的可能的处理方向的样本。图5说明了作为2D坐标的栅格的深度相机图像,其中每个坐标表示从深度相机传感器到相应的对象点的深度。举例来说,EDIT可根据从深度相机相对于另一个物理位置/定位(例如,彩色相机的位置)的相对物理定位中所确定的方向来处理图像中的线。因此,EDIT以一定顺序或方向处理深度相机图像中的像素使得在变换到2D彩色相机的坐标系期间随后的深度像素(遮挡像素)可自动覆盖或替换先前的深度像素(被遮挡像素)。在图5中说明的实例处理方向起源于深度相机图像的一个边缘,并且在深度相机图像的相对边缘处结束当两个或大于两个深度像素被分配到相同彩色像素时自动替换先前深度像素。

在一个实施例中,EDIT可处理来自图像的转角或边缘中的一个的深度相机图像405并且前进到在由彩色相机和深度相机的相对物理安置限定的方向上处理深度相机图像。

举例来说,EDIT可从深度相机图像的左上处理深度相机图像并且前进到跨越深度相机图像从左到右处理像素。如图5中所说明,EDIT可在深度相机图像的边缘处开始处理并且行进跨越到相对边缘(例如,边缘可以是在深度相机图像的左侧或右侧处的最远的像素)。

在一些实施例中,处理顺序包括在垂直方向(例如,相对于图像顶部/向上或底部/向下的垂直方向515)上前进之前用于第一行(例如,行505)的水平深度相机像素处理以选择用于额外的水平深度相机像素处理的第二行。EDIT可通过一次一个地处理单个行前进同时在垂直方向上前进选择下一个未经处理的行。举例来说,如在图5中所说明EDIT可处理像素(0,0)随后是像素(1,0),随后是像素(2,0)等等,直至像素(7,0),在这之后前进到以像素(1,0)开始的下一行,随后继续到下一个像素(1,1)等。如果在图5中说明的像素(0,7)处开始,那么EDIT可前进到像素(1,7)并且继续直至完成所述行并且随后处理以像素(0,6)开始的下一个行(例如,刚处理的行上方的下一个行)。替代地,处理可以在像素(7,7)处开始并且前进到左侧到达下一个像素(6,7)并且继续直至完成所述行且随后处理下一个行,例如,上文所述的以像素(7,6)开始的行。如在本文中的其它地方所描述可以确定水平处理是从左到右前进还是从右到左前进。类似地,如在本文中的其它地方所描述可以确定垂直处理是从上到下前进还是从下到上前进。通过这种水平和/或垂直处理技术,EDIT可以完全处理图像。

图5是在变换期间深度相机图像处理的若干可能开始位置的说明性实例,然而未特定地说明的其它处理开始位置也是可能的。

图6到7说明根据物理相机相对安置的处理方向的各种实例。举例来说,考虑图6到7,装置100被说明为包括以相对并排配置(例如,从左到右)物理地放置的彩色相机114和深度相机115。彩色相机114可紧邻深度相机115,或者可以通过其它组件或空间分离。举例来说,装置100可以包括距离深度相机115以厘米、英寸或某个其它距离量度放置的彩色相机114。因此,彩色相机114和深度相机115可以具有相同场景的略微不同或歪斜的视点(例如,目标对象300的不同视图)。

目标对象300可根据装置100内的实际物理设施被彩色相机114和深度相机115从略微不同的视点看到。举例来说,彩色像素670和770具有相应地来自图6到7的相应的彩色投影线698和798。彩色投影线相应地绘制到较近对象点635和735的直达线路。如果不是为了较近的对象点635和735,那么相应地阻挡/遮挡较远的对象点630和730,较远的对象点630和730应是对彩色相机114可见的。在一个实施例中,EDIT能够将深度值变换到较近对象点而不是较远(被遮挡)对象点为彩色相机图像提供更适当的深度值。

与彩色相机114的视图相比,深度相机115相应地对于较近对象点635和735以及相应地对于较远对象点630和730这两者都具有清楚的不受阻的视图(如通过深度投影线699和799所指示)。因此,深度相机115可对于初始/先前处理的深度像素660和随后处理的深度像素665在单独的深度像素中记录单独的深度值。

根据相应的图像在图6到7中从顶部/下方视点(例如,6902和7902)相应地说明深度相机图像690和790。在图6到7中相应地说明如从上方/下方所观察的处理方向(例如,处理方向6501和7501)。在一个实施例中,处理方向650和750相应地在物理空间中对应的方向上前进到来自/远离深度相机115朝向彩色相机114的方向。

处理方向可以相对于深度相机图像内的坐标实施。举例来说,EDIT可执行跨越从最小x值(例如,x-y坐标0,0)递增直至达到最大x值(例如,x-y坐标640,0可指示2D深度相机坐标系中具有640X 480的像素分辨率的最后x值)的水平或x坐标行的像素的从左到右的处理。EDIT可执行沿着从最小y值(例如,x-y坐标0,0)递增直至达到最大y值(例如,x-y坐标0,480可指示2D深度相机坐标系中具有640X 480的像素分辨率的最后/最顶部y值)的垂直或y坐标列的从上到下的像素处理。

图6到7中的栅格视图6901和7901相应地说明深度相机的2D坐标系中的目标对象。栅格视图说明从深度相机传感器的视点来看的深度相机图像的2D坐标系(例如,x-y轴系)。栅格中的每个框可表示具有定义的深度值/强度的单独像素(例如,图4的深度像素430)。

如本文所使用,左侧、右侧、顶部和底部是相对于装置100中的每个相应的相机传感器的视点的。举例来说,彩色相机114和深度相机115视点包括目标对象300。目标对象300可以是在场景(例如,俘获的场景305)中对装置100的一或多个相机可见的许多对象中的一个。

如在图6到7中所说明,每个相机可以具有相应的坐标系。举例来说,彩色相机114具有包括2D坐标的彩色相机坐标系,其中2D坐标系内的每个像素或点表示色彩值(例如,RGB赋值/值)。深度相机115具有包括2D坐标的深度相机坐标系,其中2D坐标系内的每个像素或点表示深度值/强度(例如,从传感器到空间中的点的距离,例如,到目标对象300的对象点的距离)。

图6说明了在一个实施例中EDIT可在其中执行从右到左的深度相机图像处理的运行环境。特定地考虑图6,彩色相机114被说明为具有在深度相机115的左侧的物理位置(例如,“左侧”和“右侧”可以是相对于握持装置以拍摄包括目标对象300的场景的照片的用户的视点)。因此,EDIT可设置/确定深度图像处理方向(例如,在俯视图处理方向6501和栅格视图处理方向6502中表示的处理方向)。以替代方式描述,当从深度相机115到彩色相机114物理地遍历时处理方向6501-2在行进的方向上。举例来说,对于图6,处理方向是从装置右侧6101到装置左侧6051。处理方向用于将深度相机图像像素值变换到彩色相机图像680中。当执行图像的从右到左处理时,EDIT将处理初始深度像素660然后处理随后的深度像素665。当变换到彩色相机114的彩色相机图像680时,随后处理的深度像素665可被分配到(即,覆盖)与先前(第一或初始)深度像素660相同的彩色像素670。通常,当两个深度像素被分配到彩色相机坐标系内的相同彩色点时,验证检查确定两个深度冲突深度值中的哪个是较小强度/较小值以便将最准确的深度值分配到在彩色像素670处彩色相机114“看到”的彩色点。举例来说,遮挡深度像素(例如,较近对象点635)应当被存储为彩色像素670的深度值而不是遮挡深度像素(例如,较远对象点630)。

在一个实施例中,EDIT设置处理顺序以用于根据深度相机相对于彩色相机的物理位置变换深度相机图像(例如,如本文中至少在上述图2中所描述)。因此,在一个实施例中EDIT自动覆盖/覆写分配到特定彩色像素(像素670)的先前(不当/遮挡)深度像素值。

用于确定“左侧”、“右侧”、“上”或“下”的参考点并不必须总是相对于用户视图或装置视图,而是可以相对于任何所定义的开始点或取向并且EDIT可以将相同的相对处理方向应用于深度相机图像。在一个实施例中,当确定用于深度相机图像的处理方向时用于确定方向的替代开始点或取向在EDIT的范围内,并且EDIT将应用相同相对定位。举例来说,在确定相对于装置100的定位传感器的“左”、“右”、“上”或“下”(例如,左6051、右6101、顶部6151和底部6201)的相对方向设置之后,EDIT将相同相对方向设置应用于深度相机图像的处理方向的基础(例如,左6053、右6103、顶部6153和底部6203)。换句话说,如果“顶部”是任意应用于参考点的,那么EDIT可以验证处理方向是不断地应用的使得在深度相机图像的处理期间应用“顶部”的相同相对方向。

如在图6中所说明,第一处理深度像素660表示到较远对象点630的深度并且是在时间T1处最初指派/存储到彩色像素670的。接下来,在时间T2处,EDIT以紧邻初始处理的深度像素660的左侧的2D坐标处理像素(如根据深度相机和彩色相机的相对相机安置所确定的)。如所说明,深度相机图像中的此邻近像素是随后处理的深度像素665。响应于将此点变换到彩色相机图像680,深度像素665也(在时间T2处)被分配/存储到彩色像素670、覆写来自初始处理的深度像素660的先前深度值。

图7说明了在一个实施例中EDIT可在其中执行从右到左的深度相机图像处理的运行环境。图7说明了其中深度相机115被放置到彩色相机114的左侧的环境。因此,如所说明,EDIT按照左侧到右侧的顺序处理深度相机图像。

举例来说,如在图7中所说明,第一处理深度像素760表示到较远对象点730的深度并且是在时间T1处最初指派/存储到彩色像素770的。接下来,在时间T2处EDIT通过2D坐标(经由方向755)将像素处理为紧邻(如早先根据深度相机和彩色相机的相对相机安置所确定的)第一(最初处理的)深度像素760的左侧。如所说明,深度相机图像中的此邻近像素是随后处理的深度像素765。响应于将此点变换到彩色相机图像780,随后处理的深度像素765也在时间T2处被分配/存储到彩色像素770所占据的位置、覆写来自深度像素760的先前深度值。

参考图6和7,应理解从右到左的处理顺序或从左到右的处理顺序可以都被视为水平深度相机像素处理顺序。在一些实施例中,处理顺序包括垂直深度相机像素处理顺序。当深度相机物理地放置在另一个物理位置下方(例如,在彩色相机下方)时垂直深度相机像素处理顺序可以包括从下到上的深度相机像素处理顺序。当深度相机物理地放置在另一个物理位置上方(例如,在彩色相机上方)时垂直深度相机像素处理顺序可以包括从上到下的深度相机像素处理顺序。

在一些实施例中,响应于如上文所述完成深度到彩色图像变换(例如,执行EDIT),所变换的深度图可能不是完全填充的。举例来说,扭曲可使得初始深度图的多个像素渲染到新深度图的单个像素中或初始深度图可能无法作为完全填充的而开始。当变换的深度图具有不带深度量度的像素时,可以实施孔填充过程。举例来说,孔填充可以包括分析相邻像素以确定它们是否是类似的并且以平均深度填充所述孔。如果相邻像素不是类似的,那么孔可能无法填充。孔填充过程可以是单独的且不同于与如上文所述的物理深度相机传感器位置相关联的变换过程。

如上文所述,装置100可以是便携式电子装置(例如,智能手机、专用扩增实境(AR)装置、游戏装置、例如眼镜的可穿戴式装置或具有AR处理和显示能力以用于显示扩增实境图像的其它装置)。实施本文所描述的AR系统的装置可用于多种环境中,例如,商场、街道、房间,或用户可携带便携式装置的任何地方。在AR情境中,用户可使用装置100来通过他们的装置的显示器观察现实世界的表示。用户可通过使用他们的装置的相机与他们的具备AR功能的装置交互以接收现实世界图像/视频并且以将额外或替代信息叠加或重叠到装置上的所显示的现实世界图像/视频上。当用户在他们的装置上观察AR实施时,可在装置显示器上实时替换或更改现实世界对象或场景。虚拟对象(例如,文本、图像、视频)可插入到装置显示器上描绘的场景的表示中。

装置100和彩色相机114的移动可以使得显示器实时更新SLAM图中的目标(例如,一或多个对象或场景)的扩增。通过装置远离初始参考图像位置的移动,装置可从替代视图中俘获额外图像。在提取特征及从额外的关键帧三角测量之后,可实现扩增的提高的准确性(例如,对象周围的边界可更精确地拟合、场景中的对象的表示将显得更真实,及目标放置相对于彩色相机114位姿可更准确)。

在一个实施例中,对象或图形可插入或集成到通过彩色相机114俘获的视频流(或图像)中并且显示在显示器112上。EDIT可任选地促使用户为了额外的信息而扩增目标。举例来说,用户可能够添加用户内容以扩增目标的表示。用户内容可为图像、3D对象、视频、文本,或可与目标的表示集成或重叠或替代目标的表示的其它内容类型。

显示器可基于从原始场景的追踪实时更新。举例来说,标志上的文本可用替代文本替换,或3D对象可在战略上放入场景中且显示在装置100上。当用户改变彩色相机114的位置和取向,可调节或扩增图形或对象以匹配彩色相机114的相对移动。举例来说,如果虚拟对象插入到扩增实境显示器中,那么远离虚拟对象的相机移动可减小虚拟对象相对于彩色相机114所行进距离的大小。举例来说,与从虚拟对象退后半步相比,从虚拟对象退后四步应引起虚拟对象大小的更大减小,所有其它变量是相同的。运动图形或动画可在由EDIT表示的场景内制成动画。举例来说,动画对象可在扩增实境显示器中所描绘的场景内“移动”。所属领域的技术人员将认识到本文中描述的实施例可以除了AR之外的方式实施(例如,机器人定位)。

EDIT可实施为软件、固件、硬件、模块或引擎。在一个实施例中,先前的EDIT描述可以通过装置100的存储器164中的通用处理器161实施以实现先前所希望的功能(例如,实施图2的方法)。在一些实施例中,所描述的子组件中的一或多个的特征可组合或分割成不同的个体组件、模块或引擎。

所属领域的技术人员将理解,可使用多种不同技术和技艺中的任一者来表示信息和信号。举例来说,可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子或其任何组合来表示贯穿以上描述可能参考的数据、指令、命令、信息、信号、位、符号及码片。

所属领域的技术人员将进一步了解,结合本文所揭示的实施例描述的各种说明性逻辑块、模块、引擎、电路及算法步骤可实施为电子硬件、计算机软件或两者的组合。为清楚说明硬件与软件的此互换性,上文已大致关于其功能性而描述了各种说明性组件、块、模块、引擎、电路及步骤。此类功能性是实施为硬件还是软件取决于具体应用及施加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但这样的实施方案决策不应被解释为会导致脱离本发明的范围。

可使用经设计以执行本文所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑装置、离散门或晶体管逻辑、离散硬件组件或其任何组合来实施或执行结合本文中所揭示的实施例而描述的各种说明性逻辑块、模块和电路。通用处理器可为微处理器,但在替代方案中,处理器可为任何常规处理器、控制器、微控制器或状态机。处理器也可以实施为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一或多个微处理器结合DSP核心,或任何其它此类配置。

结合本文揭示的实施例而描述的方法或算法的步骤可直接体现在硬件、由处理器执行的软件模块或所述两者的组合中。软件模块可驻留在随机存取存储器(RAM)、快闪存储器、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、寄存器、硬盘、可移动的磁盘、CD-ROM或所属领域中已知的任何其它形式的存储媒体中。示例性存储媒体耦合到处理器,使得处理器可以从存储媒体读取信息并且将信息写入到存储媒体。在替代方案中,存储媒体可与处理器成一体式。处理器和存储媒体可驻留在ASIC中。ASIC可驻留在用户终端中。在替代方案中,处理器和存储媒体可作为离散组件驻留在用户终端中。

在一或多个示例性实施例中,所描述的功能或模块可以在硬件(例如,硬件162)、软件(例如,软件165)、固件(例如,固件163)或其任何组合中实施。如果在软件中作为计算机程序产品实施,那么功能或模块可作为一或多个可执行指令或代码存储在非暂时性计算机可读媒体上或在非暂时性计算机可读媒体上传输。计算机可读媒体可包括计算机存储媒体与通信媒体两者,通信媒体包括有助于将计算机程序从一处传送到另一处的任何媒体。存储媒体可以是可通过计算机或数据处理装置/系统存取的任何可供使用的媒体。借助于实例而非限制,此类非暂时性计算机可读媒体可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储装置、磁盘存储装置或其它磁性存储装置,或可用于携载或存储呈可执行指令或数据结构的形式的所要程序代码且可由计算机存取的任何其它媒体。并且,恰当地将任何连接称作计算机可读媒体。举例来说,如果使用同轴缆线、光纤缆线、双绞线、数字订户线(DSL)或诸如红外线、无线电及微波的无线技术从网站、服务器或其它远程源传输软件,那么同轴缆线、光纤缆线、双绞线、DSL或诸如红外线、无线电及微波的无线技术包含于媒体的定义中。本文中使用的磁盘和光盘包括压缩光盘(CD)、激光光盘、光学光盘、数字多功能光盘(DVD)、软盘及蓝光光盘,其中磁盘通常是以磁性方式再现数据,而光盘是用激光以光学方式再现数据。以上各者的组合还应包含在非暂时性计算机可读媒体的范围内。

提供所揭示的实施例的先前描述以使得所属领域的技术人员能够制作或使用本发明。所属领域的技术人员将容易了解对这些实施例的各种修改,且可在不脱离本发明的精神或范围的情况下将本文定义的一般原理应用于其它实施例。因此,本发明并不意图限于本文中所示出的实施例,而应被赋予与本文中所揭示的原理和新颖特征相一致的最广泛范围。

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