CN102520574A - 飞行时间深度成像 - Google Patents

飞行时间深度成像 Download PDF

Info

Publication number
CN102520574A
CN102520574A CN2011103157896A CN201110315789A CN102520574A CN 102520574 A CN102520574 A CN 102520574A CN 2011103157896 A CN2011103157896 A CN 2011103157896A CN 201110315789 A CN201110315789 A CN 201110315789A CN 102520574 A CN102520574 A CN 102520574A
Authority
CN
China
Prior art keywords
light intensity
intensity map
map picture
depth image
pixel
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
CN2011103157896A
Other languages
English (en)
Other versions
CN102520574B (zh
Inventor
S·卡茨
A·阿德莱尔
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN102520574A publication Critical patent/CN102520574A/zh
Application granted granted Critical
Publication of CN102520574B publication Critical patent/CN102520574B/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/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • G01S17/10Systems determining position data of a target for measuring distance only using transmission of interrupted, pulse-modulated waves
    • G01S17/18Systems determining position data of a target for measuring distance only using transmission of interrupted, pulse-modulated waves wherein range gates are used
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/06Systems determining position data of a target
    • G01S17/08Systems determining position data of a target for measuring distance only
    • G01S17/32Systems determining position data of a target for measuring distance only using transmission of continuous waves, whether amplitude-, frequency-, or phase-modulated, or unmodulated
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/02Systems using the reflection of electromagnetic waves other than radio waves
    • G01S17/50Systems of measurement based on relative movement of target
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • G01S17/8943D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Measurement Of Optical Distance (AREA)
  • Image Processing (AREA)
  • Studio Devices (AREA)

Abstract

本发明涉及飞行时间深度成像。提供了用于确定到对象的深度的技术。可基于两个光强度图像来确定深度图像。这一技术可以补偿视野中的对象的反射率的差异。然而,这两个光强度图像中的像素之间可能存在某种未对准。可以使用迭代过程来减轻对光强度图像之间的精确匹配的需求。该迭代过程可涉及基于从这两个光强度图像生成的深度图像的经平滑的版本来修改光强度图像之一。随后,基于经修改的图像和另一光强度图像来确定深度图像的新值。从而,两个光强度图像之间的像素未对准可得到补偿。

Description

飞行时间深度成像
技术领域
本发明涉及深度成像,尤其涉及飞行时间深度成像。
背景技术
深度相机系统获得关于人或其他对象在物理空间内的位置的数据。该相机具有一个或多个传感器,这些传感器具有收集光强度的像素。深度值可以根据光强度来确定。例如,来自两个传感器的光强度数据可被相关并且可确定每一像素的深度值。深度值可被输入到计算系统内的应用来用于各种各样的应用。可以有许多应用,例如用于军事、娱乐、体育和医学目的。例如,关于人的深度值可被映射到三维(3-D)人类骨架模型并用于创建动画人物或化身。
为了确定深度值,深度相机可以将光投射到该相机的视野中的对象上。光从该对象反射并且反射回该相机中的收集光强度的一个或多个图像传感器。这些传感器可以是例如CCD或CMOS传感器。这些传感器可包括像素阵列,使得每一像素基于有多少光子到达该像素来随时间累计光强度。各像素处的光强度可被处理以确定深度值。一种用于确定到对象的距离的技术基于光的往返飞行时间。
然而,对象的反射率的差异可能导致问题。例如,处于同一距离处但具有不同反射率的两个对象将造成传感器处的不同光强度读数。为了克服这一问题以及其他问题,一些技术执行两种不同的深度测量并对结果进行组合。这两种不同的深度测量可以使用同一传感器,但在不同的时间进行测量。因此,在传感器捕捉测量结果的时间之间可能存在对象(或相机)运动。或者,使用两个传感器允许同时进行深度测量。然而,这两个传感器需要被置于不同的物理位置,这会导致视差差数。从这两个测量收集的数据需要被相关(或匹配)以创建单个深度值。然而,两个深度测量中的上述差数可能使得难以将深度测量进行相关或导致不准确性。
另外,深度相机可能受到噪声深度测量的损害。例如,可存在可与从对象反射的光一起被收集的一些背景光。噪声可能以多种其他方式而产生。
因此,需要进一步的改进以允许对深度相机的视野内对象的深度进行更准确的确定。该技术应与现有的深度检测相机兼容。
发明内容
提供了用于确定到电子设备的视野内的对象的深度或距离的技术。基于在不同的位置或时间收集的两个光强度图像来确定深度图像。基于两个光强度图像生成深度图像可以补偿视野中的对象的反射率的差异。可以使用迭代过程来减轻对光强度图像之间的精确匹配的需求。从而,两个光强度图像之间的像素未对准可得到补偿。同样,该迭代过程可以补偿光强度图像中的噪声。因此,可以使用来自多个传感器或来自同一传感器的不同的时间的光强度信息来生成高质量深度图像(例如,最终深度值)。
一个实施例包括确定深度图像的方法,该方法包括以下步骤。基于第一光强度图像和第二光强度图像来计算深度图像。第一和第二光强度图像包含同一场景的像素值。对深度图像进行平滑,并且基于经平滑的输出深度图像和第二光强度图像来修改第一光强度图像。基于经修改的第一光强度图像和第二光强度图像来计算深度图像的新值。重复平滑深度图像、修改第一光强度图像(在预定义边界内)、以及计算深度图像的新值,直至确定对深度图像的处理完成为止。此时,将这两个光强度图像中的像素对准并且细化的深度图像完成。
一个实施例包括一种包括处理器和耦合到该处理器的计算机可读存储介质的装置。计算机可读存储介质其上存储有指令,当该指令在处理器上执行时使得该处理器执行以下步骤。处理器访问包含同一场景的像素值的第一光强度图像和第二光强度图像。处理器基于第一光强度图像中的一个或多个邻居像素来确定第一光强度图像中的像素的边界值。处理器基于第一光强度图像和第二光强度图像来计算深度图像并平滑该深度图像。处理器基于平滑深度图像的结果来确定是否要修改第一光强度图像。在确定第一光强度图像应当被修改时,处理器基于经平滑的深度图像和第二光强度图像来修改第一光强度图像。修改可包括使第一光强度图像中的像素的值保持在边界值内。而且,如果第一光强度图像被修改,则处理器基于经修改的第一光强度图像和第二光强度图像来计算深度图像的新值。处理器继续修改第一光强度图像并计算深度图像的新值,直至确定不修改第一光强度图像为止。此时,将这两个强度图像对准并且经平滑的深度图像提取完成。
一个实施例包括确定深度图像的方法,该方法包括以下步骤。访问具有带同一视野的光强度值的像素的第一光强度图像和第二光强度图像。基于第一光强度图像和第二光强度图像之间的可能的像素未对准来确定第一光强度图像中的像素的边界值。基于第一光强度图像和第二光强度图像来确定深度图像。平滑深度图像并基于平滑该深度图像的结果来作出是否要修改第一光强度图像的判断。可基于经平滑的深度图像和第二光强度图像来修改第一光强度图像,这可包括执行计算深度图像的逆运算。同样,修改第一光强度图像包括使第一光强度图像中的像素值保持在边界值内。基于经修改的第一光强度图像和第二光强度图像来计算深度图像的新值。重复平滑、修改第一光强度图像、以及计算深度图像的新值,直至确定不修改第一光强度图像为止。
提供本发明内容以便以简化形式介绍将在以下的具体实施方式中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。
附图说明
图1描绘了运动捕捉系统的示例实施例。
图2A描绘了图1的运动捕捉系统的示例框图。
图2B描绘了图2A中描绘的图像相机组件的一个可能的配置。
图2C描绘了图2A中描绘的图像相机组件的另一个可能的配置。
图3是确定深度图像的过程的一个实施例的流程图。
图4A和图4B描绘了生成第一和第二光强度图像的过程的实施例的流程图。
图5A和图5B描绘了基于门控传感器和非门控传感器来生成第一和第二光强度图像的过程的实施例的流程图。
图5C描绘了生成第一和第二光强度图像的过程的一个实施例的流程图,其中图像之间具有相差。
图6A、6B和6C描绘了光脉冲的定时以及门控传感器和非门控传感器的激活的一个示例。
图7A和7B是描绘基于门控传感器和非门控传感器来处理深度图像的实施例的流程图。
图8A和8B是描绘基于具有相差的输入图像来处理深度图像的实施例的流程图。
图9是在确定深度图像时确定边界值的过程的一个实施例的流程图。
图10是在确定深度图像时使用边界值的过程的一个实施例的流程图。
图11描绘了可以在图1的运动捕捉系统中使用的计算环境的示例框图。
图12描绘了可以在图1的运动捕捉系统中使用的计算环境的另一示例框图。
图13A、13B和13C描绘了用于图5C的实施例的已调制光束和传感器激活的一个示例。
具体实施方式
提供了用于确定到对象的深度的技术。基于在不同的位置或时间收集的两个光强度图像来确定深度图像。例如,光束被发射到一视野中,在该视野中在稍微不同的位置处的两个图像传感器被用来收集两个输入光强度图像。作为替换,可以从同一传感器但在不同的时间收集光强度图像。可基于这两个光强度图像来生成深度图像。这一技术可以补偿视野中的对象的反射率的差异。然而,这两个光强度图像中的像素之间可能存在某种未对准。可以使用迭代过程来减轻对光强度图像之间的精确匹配的需求。该迭代过程可涉及基于从这两个光强度图像生成的深度图像的经平滑的版本来修改光强度图像之一。随后,基于经修改的光强度图像和另一光强度图像来确定深度图像的新值。在一些实施例中,基于这两个光强度图像之间的可能的像素未对准来确定要被修改的光强度图像中的像素的边界值。在处理期间,被修改的光强度图像中的像素可被保持在它们相应的边界值内。该迭代过程可以补偿这两个光强度图像之间的像素未对准。换言之,该迭代过程可以减轻对这两个输入光强度图像之间的严格像素对准的需求。此外,该迭代过程可以补偿光强度图像中的噪声。因此,可以使用来自多个传感器或来自同一传感器的不同的时间的深度信息来生成高质量的深度图像。
在某些实施例中,对深度图像进行确定被用于运动捕捉系统中。因此,将描述示例运动捕捉系统。然而,可以理解,本文所描述的技术不限于运动捕捉系统。图1描绘了其中个人与应用交互的运动捕捉系统10的示例。运动捕捉系统10包括显示器196、深度相机系统20、以及计算环境或装置12。深度相机系统20可包括图像相机组件22,其具有光发射器24、光接收器25和红-绿-蓝(RGB)相机28。在一个实施例中,光发射器24发射准直光束。准直光束的示例可包括但不限于,红外(IR)和激光。在一个实施例中,光发射器24是LED。从视野内的对象8反射离开的光由光接收器25检测。
也称为个人或玩家的用户站在深度相机系统20的视野6中。线2和4表示视野6的边界。在该示例中,深度相机系统20和计算环境12提供了其中显示器196上的化身197追随对象8(例如,用户)的移动的应用。例如,当用户举起手臂时,化身197可举起手臂。化身197站在3-D虚拟世界的公路198上。可以定义笛卡儿世界坐标系,其包括沿着深度相机系统20的焦距延伸(例如,水平地)的z轴、垂直地延伸的y轴、以及横向地并且水平地延伸的x轴。注意,附图的透视被修改成简化表示,显示器196在y轴方向上垂直延伸,z轴垂直于y轴和x轴且与用户所站立的地平面平行地从深度相机系统20延伸出来。
一般而言,运动捕捉系统10用于识别、分析和/或跟踪对象。计算环境12可包括计算机、游戏系统或控制台等等,以及执行应用的硬件组件和/或软件组件。
深度相机系统20可以包括相机,相机用于在视觉上监视诸如用户等的一个或多个对象8,从而可以捕捉、分析并跟踪用户所作出的姿势和/或移动,来执行应用中的一个或多个控制或动作,如使化身或屏幕上人物活动起来或选择用户界面(UI)中的一菜单项。
运动捕捉系统10可以连接到诸如显示器196等向用户提供视觉和音频输出的视听设备,如电视机、监视器、高清电视机(HDTV)等,或甚至是墙或其他表面上的投影。还可以经由单独的设备来提供音频输出。为驱动显示器,计算环境12可包括提供与应用相关联的视听信号的诸如图形卡之类的视频适配器和/或诸如声卡之类的音频适配器。显示器196可以通过例如S-视频电缆、同轴电缆、HDMI电缆、DVI电缆、VGA电缆等等连接到计算环境12。
可使用深度相机系统20来跟踪对象8,使得用户的姿势和/或移动被捕捉并用于使化身或屏幕上人物活动起来,和/或被解释为对计算机环境12所执行的应用的输入控制。
对象8的某些移动可被解释为可以和除控制化身之外的动作相对应的控制。例如,在一个实施方式中,玩家可以使用运动来结束、暂停或保存游戏,选择级别,查看高分,与朋友进行交流等等。玩家可以使用移动来从主用户界面中选择游戏或其他应用,或以别的方式导航选项菜单。由此,对象8的全范围运动可以用任何合适的方式来获得、使用并分析以与应用进行交互。
个人可在与应用交互时抓握诸如道具等物体。在此类实施例中,个人和物体的移动可用于控制应用。例如,可以跟踪并利用手持球拍的玩家的运动来控制模拟网球游戏的应用中的屏幕上的球拍。在另一示例实施例中,可以跟踪并利用玩家手持诸如塑料剑等玩具武器的运动来控制提供海盗船的应用的虚拟世界中对应的武器。
运动捕捉系统10还可以用于将目标移动解释成处于游戏或旨在娱乐和休闲的其他应用的领域之外的操作系统和/或应用控制。例如,操作系统和/或应用的基本上任何可控方面可由对象8的移动来控制。
图2A描绘了图1的运动捕捉系统10的示例框图。深度相机系统20可被配置成捕捉具有深度信息的视频,深度信息包括可包括深度值的深度图像。此处描述了用于确定深度图像的技术。深度相机系统20可将深度信息组织为“Z层”,即可与从深度相机系统20沿其视线延伸的Z轴垂直的层。
深度相机系统20可包括图像相机组件22,如捕捉物理空间中的场景的深度图像的深度相机。深度图像可包括所捕捉的场景的二维(2-D)像素区域,其中该2-D像素区域中的每一像素具有代表距离图像相机组件22的线性距离(径向距离)的或由像素观察的3D位置的Z分量(垂直距离)的相关联的深度值。
图像相机组件22可包括光发射器24和一个或多个光传感器25来捕捉深度信息。例如,深度相机系统20可使用光发射器24将光发射到物理空间上并使用光传感器25来检测从物理空间内一个或多个对象的表面所反射的光。
在一些实施例中,光发射器24发射脉冲红外光。光脉冲从视野中的对象反射离开,并且在传感器处被收集,传感器可随时间累计光子。例如,每一像素包含基于在收集时间段内到达该像素的光子的数量的光强度值。深度值可以基于光强度来确定。这样的技术有时被称为“飞行时间”测量,因为像素处的光强度与光的往返飞行时间之间有关系。
在一些实施例中,所发射的光被调制成所需频率。经调制的光从视野中的对象反射离开,并且在一个或多个传感器处被收集,传感器可随时间累计光子。在一个实施例中,在所发射的光(在源处)具有第一相位(或相位范围)时,一个传感器收集光,并且在所发射的光具有第二相位(或第二相位范围)时,第二传感器收集光。这一技术也被称为“飞行时间”测量,因为像素处的光强度与光的往返飞行时间之间有关系。
深度相机系统20可以捕捉同一场景的两个或更多个光强度图像并且处理它们以生成单个深度图像。在一个实施例中,两个光强度图像在同时,但用两个不同的传感器来捕捉。图2B描绘了图像相机组件22的一个可能的配置,其中光发射器24处于两个光传感器25a、25b之间的中点。在该示例中,一个光传感器25a处于光源24上方,并且另一个光传感器25b处于光源24下方。可以使用其他配置。例如,一个光传感器25c可以处于光源24左侧,并且另一光传感器25d可以处于光源24右侧,如图2C所示。在图2B中,传感器25a、25b沿y轴排列。在图2C中,传感器25c、25d沿x轴对准。在一些实施例中,可以通过使用马达等来使图像相机组件22倾斜。因此,可以明白,传感器25的定向不需要沿x轴或y轴。在处理两个捕捉到的光强度图像以生成最终的单个深度图像时,可以使用与光传感器25相对于光发射器24的物理配置有关的信息。在一些实施例中,两个光强度图像用同一光传感器25,但在不同的时间来捕捉。
红-绿-蓝(RGB)相机28可用于捕捉可见光图像。深度相机系统20还可以包括话筒30,其包括例如接收声波并将其转换成电信号的换能器或传感器。另外,话筒30可用于接收由人提供的诸如声音之类的音频信号,以控制由计算环境12运行的应用。音频信号可包括人声,如说的话、口哨声、喊声及其他发声,以及非人声,如掌声或跺脚。在一些实施例中,话筒30是话筒阵列,它可具有一起运行的任何数量的话筒。
深度相机系统20可包括与图像相机组件22进行通信的处理器32。处理器32可包括可执行包括例如用于接收深度图像和对深度图像去混叠的指令等指令的标准化处理器、专用处理器、微处理器等等。
深度相机系统20还可包括存储器组件34,存储器组件34可存储由处理器32执行的指令、以及存储RGB相机所捕捉的图像或图像帧、或任何其他合适的信息、图像等等。根据一个示例实施方式,存储器组件34可包括随机存取存储器(RAM)、只读存储器(ROM)、高速缓存、闪存、硬盘或任何其他合适的有形计算机可读存储组件。存储器组件34可以是经由总线21与图像捕捉组件22和处理器32通信的单独的组件。根据另一实施例,存储器组件34可被集成到处理器32和/或图像捕捉组件22中。
深度相机系统20可以通过通信链路36与计算环境12进行通信。通信链路36可以是有线和/或无线连接。根据一个实施方式,计算环境12可以经由通信链路36向深度相机系统20提供时钟信号,该时钟信号指出何时从位于深度相机系统20的视野中的物理空间捕捉图像数据。
此外,深度相机系统20可通过通信链路36向计算环境12提供深度信息和由RGB相机28捕捉的图像。计算环境12然后可使用深度值和所捕捉的图像来控制应用。例如,如图2A所示,计算环境12可包括诸如姿势过滤器集合等姿势库190,每一姿势过滤器具有关于(在用户移动时)可作出的姿势的信息。例如,可为各种手势(如手的猛击或投掷)提供姿势过滤器。通过将检测到的运动与每一个过滤器进行比较,可以标识由人执行的指定的姿势或移动。还可以确定执行移动的程度。
计算环境还可包括用于执行存储在存储器194中的指令以向显示设备196提供音频-视频输出信号并实现其他功能的处理器192。
图3是确定深度图像的过程300的一个实施例的流程图。过程300可在诸如图1的示例系统10等运动捕捉系统10中使用。例如,过程300可由深度相机系统20或计算环境12来执行。在步骤302,生成同一场景或视野的第一和第二光强度图像。在一个实施例中,第一和第二光强度图像在同时,但用不同的传感器25来生成。两个传感器25之间的物理分隔可保持很小,以便可减少视差伪像。在一个实施例中,第一和第二光强度图像用同一传感器,但在不同的时间生成。通常,生成这两个图像之间的时间间隔保持很小,以便可减少运动伪像。因而,这两个光强度图像之间一开始可能存在像素的某种未对准。过程300可减少或消除这一像素未对准。
在一个实施例中,这两个光强度图像之一是门控深度图像而另一个是非门控深度图像。生成门控和非门控光强度图像的进一步细节在下文讨论。简言之,门控光强度图像可以是其中传感器25在某时间段期间不活动的图像,而非门控深度图像可以是其中传感器25比门控图像传感器活动了更长时间段的图像第一和第二光强度图像不限于是门控图像和非门控图像。在一个实施例中,这两个光强度图像在已调制发射光束的相位方面是不同的。例如,可以在与已调制发射光束中的90度相差相对应的时刻收集这两个光强度图像。
在步骤304,生成第一光强度图像中的像素的边界值。边界值可以是在第一光强度图像的处理期间所准许的每一像素的上限值和下限值。边界值可以基于第一和第二光强度图像之间的可能的像素未对准。注意,第一图像可以是任一光强度图像。例如,第一光强度图像可以是门控光强度图像或非门控光强度图像。作为一个示例,确定门控光强度图像的边界值。然而,相反,可以确定非门控光强度图像的边界值。另一示例,可以确定相位不同的两个光强度图像中的任一个的边界值。如下所述,在过程300期间,可以更改第一光强度图像的值。在一个实施例中,边界值基于一个或多个邻居像素的值。下文中结合图9和10讨论确定并使用边界值的进一步细节。
在步骤306,基于第一和第二光强度图像来计算深度图像。使用两个收集的光强度图像来形成深度图像的一个原因是这可补偿这两个收集的光强度图像中的对象的反射率的差异。
作为一个示例,基于等式1中的以下近似来确定深度图像:
等式1:深度图像≈门控光强度图像/非门控光强度图像
在以上计算中,可以执行逐像素相除。例如,门控光强度图像中的像素的光强度值可以除以非门控光强度图像中的对应像素的光强度值,这可产生深度值。可基于诸如发射光的特性和传感器的操作等各种参数从深度值中确定距离。注意,以上等式是近似;所使用的实际等式可能更加复杂。
在步骤308,对来自步骤306的深度图像进行平滑。平滑可包括但不限于对深度图像应用高斯滤波器或中值滤波器。因此,平滑可造成对在步骤306确定的深度值的改变。
在步骤310,作出深度图像的处理是否完成的判断。如果是,则过程300以经平滑的深度图像是最终深度图像而结束。在一个实施例中,步骤310包括将经平滑的深度图像与这一平滑步骤之前的版本进行比较以确定平滑具有多少效果。如果平滑没有影响深度图像超过某预定量,则过程300完成。在一个实施例中,步骤310还包括确定过程300迭代了多少次。如果过程300迭代了超过预定次数,则步骤310可确定深度图像的处理完成。
如果步骤310确定处理应当继续,则执行步骤312。在步骤312,基于经平滑的深度图像和第二光强度图像来修改第一光强度图像。步骤312可涉及执行其中计算深度图像的步骤306的计算的逆运算。作为一个示例,步骤312的修改可基于等式1中的以下近似:
等式2:经修改的门控光强度图像≈经平滑的深度图像*非门控光强度图像
在一个实施例中,经修改的门控光强度图像的值不允许超出在步骤304确定的边界值之外。在一个实施例中,如果第一光强度图像中的对应像素将要超出边界值之外,则可以调整第二光强度图像中的像素的值。下文结合图10讨论进一步细节。
在步骤314,基于经修改的第一光强度图像(来自步骤312)和第二光强度图像来确定深度图像的新值。可以使用在步骤306中使用的相同等式。例如,可以使用等式3中的以下近似:
等式3:深度图像≈经修改的门控光强度图像/非门控光强度图像
过程300随后从步骤314返回到步骤308以对深度图像进行平滑。可以再次使用先前使用的相同平滑算法。然而,可以使用不同的平滑算法。随后,步骤310再次判断深度图像的处理是否完成。过程300重复步骤308-314,直至步骤310确定处理完成。此时,可以确立深度图像的最后的深度值为最终深度值。此时,这两个光强度图像中的像素的对准可以完成。注意,不需要这两个光强度图像中的像素的完美对准。即,一些未对准是可容忍的。
如上所述,输入到过程300的第一和第二光强度图像可以用两个传感器来同时生成或用一个传感器在不同的时间生成。图4A和4B提供生成第一和第二光强度图像的两个示例实施例。图4A和4B描绘过程300的步骤302的不同实施例。在图4A的过程400的步骤402和404,使用不同的图像传感器来同时收集第一和第二光强度图像。在该示例中,设备具有两个传感器,如在图2B或2C中描绘的实施例中一样。这两个传感器的物理位置的差异会导致视差误差。换言之,第一和第二光强度图像中的像素之间会存在失配。像素之间的失配可被如下解释。每一传感器可以是n×m个像素的阵列。理想地,第一光强度图像的像素(i,j)与第二光强度图像的像素(i,j)应当表示视野中的同一个点。然而,因为这两个传感器处于不同的位置,所以情况并非如此。注意,原始像素未对准可能非常小。例如,原始像素未对准可能小于一个像素:(i+Di,j+Dj),其中Di和Dj小于1。然而,甚至很小的像素未对准也会对深度计算产生负面影响。图3的迭代过程300能够减少或消除像素未对准。因而,即使在输入的光强度图像的像素未对准的情况下,过程300也可以产生高质量的深度图像。
图4B描绘生成第一和第二光强度图像的过程450的一个实施例,在该实施例中使用单个传感器。在步骤452,使用光传感器25来收集第一光强度图像。在步骤454,使用同一传感器25在不同的时间收集基本上同一场景(或视野)的第二光强度图像。在该示例中,设备具有至少一个传感器25,如在图2A的实施例中一样。实际上,传感器25在这两个读数之间可被保持在同一物理位置。然而,在收集第一和第二光强度图像的时间之间,可能存在场景中的对象的某种运动。因此,这些运动伪像可导致第一和第二光强度图像之间的像素失配。即使在存在这些运动伪像的情况下,图3的迭代过程300也能够产生高质量的输出深度图像。作为像素对准过程的一部分,过程300能够减少或消除这些运动伪像。
在一些实施例中,第一和第二光强度图像是基于脉冲光束的反射生成的。图5A和5B描绘两个这样的实施例的过程,它们使用门控传感器和非门控传感器来收集光。图5A和5B是过程300的步骤302的实施例。图5A也是图4A的一个实施例。图6A-6C描绘光脉冲的定时、以及门控传感器和非门控传感器的激活的一个示例,它可用于图5A的过程。
在步骤502,发射脉冲光束。在一个实施例中,该光束是红外线(IR)。注意,该光束可以是可见光或另一波长。图6A示出其中光束被脉冲式地打开和关闭的示例。注意,在传感器处收集光期间可有许多脉冲。例如,在单个收集时间段期间可有数百、数千、或更多个光脉冲。因而,可以理解,通过仅示出两个光脉冲来简化了图6A。
在步骤504,在对光束进行脉冲式发射时,操作门控传感器和非门控传感器两者。图6C示出其中在光脉冲从活动变得不活动之后,非门控传感器在时间段“T”期间活动的示例。注意,非门控传感器可在光脉冲变得不活动之前活动。门控传感器(图6B)在比非门控传感器短的时间段期间操作。在该示例中,门控传感器在时间段“T”的大约后一半期间活动。因而,在该示例中,门控传感器在非门控传感器的活动时间段的子集期间活动。光脉冲的特性(例如,脉冲持续时间、频率)以及传感器的操作可以基于图像传感器的所需范围来选择。
在步骤506,当门控传感器和非门控传感器在操作时,在它们两者处捕捉光。如上所述,在收集时间段期间可能有许多发射光脉冲。门控传感器和非门控传感器的像素可以对每一光脉冲收集少量光,而所收集的光的量随时间累积。在一些实施例中,在给定传感器像素处收集的光的强度可被用来确定该像素到对象的距离。如上所述,一种用于确定深度值的技术涉及使门控传感器的光强度除以非门控传感器的光强度。
过程500继续,直至光收集阶段结束,如步骤508所确定的。在一个实施例中,光收集阶段是预定数量的光脉冲。随后,在步骤510,基于传感器所收集的光来存储第一和第二光强度图像。作为一个示例,来自CCD或CMOS的最终像素值可以存储在存储器中,以便存储光强度图像。
图5B描绘基于脉冲光束生成第一和第二光强度图像的过程550的一个实施例的流程图,该脉冲光束在对象上的反射被作为门控传感器并且稍后作为非门控传感器的单个传感器来检测。过程550是过程300的步骤302的一个实施例。过程550也是图4B的一个实施例。在步骤552,发射脉冲光束。在一个实施例中,该光束是IR。该脉冲可以类似于在图5A的过程中使用的脉冲。在步骤554,在光束被脉冲式地发射时,操作门控传感器。在步骤556,在传感器25处捕捉光,该传感器当前作为门控传感器来操作。过程550继续,直至光收集阶段结束,如步骤558所确定的。在一个实施例中,光收集阶段是预定数量的光脉冲。随后,在步骤559,基于传感器所检测到的光来存储第一光强度图像。
接着,在步骤560再次脉冲式地发射光束,使得可以用作为非门控传感器来操作的该传感器来收集数据。在步骤562,在光束被脉冲式地发射时,传感器作为非门控传感器来操作。在步骤564,当传感器作为非门控传感器来操作时,在该传感器处收集光。过程550继续,直至光收集阶段结束,如步骤566所确定的。随后,在步骤568,基于传感器在步骤564所检测到的光来存储第二光强度。
如上所述,基于脉冲光的门控传感和非门控传感来生成这两个光强度图像不是必需的。在一个实施例中,通过对已调制光束在视野中的对象上的反射进行传感来生成第一和第二光强度图像。可基于在不同的时间点的采样来生成第一和第二光强度图像,使得这两个光强度图像之间有90度(或某一其它量)的相移。相移可以是根据所发射的光束的。
图5C描绘了生成第一和第二光强度图像的过程580的一个实施例的流程图,其中图像之间具有相差。过程580是过程300的步骤302的一个实施例。过程580也是图4A的一个实施例。在步骤582,发射已调制光束。例如,IR光束是使用幅度调制来调制的。图13A-13C描绘了经幅度调制的光束的示例波形以及过程580期间传感器的操作。注意,只描绘了已调制光束的很小一部分。
在步骤584,第一和第二传感器在彼此有90度相差的情况下操作。图13B和13C描绘了第一和第二传感器的定时的一个示例。在该示例中,在已调制光束(在它发射处)处于或接近0度时,一个传感器是活动的。活动时间段的宽度可以比所示出的时间段更长或更短。在已调制光束(在它发射处)处于或接近90度时,第二传感器是活动的。同样,活动时间段的宽度可以比所示出的时间段更长或更短。对于所发射的已调制光束的每一周期,这一收集模式可以重复。
在步骤586,在第一和第二传感器处检测光。过程580在收集时间段期间继续,该收集时间段可以是任何所需长度的时间。在收集时间段结束之后(如步骤588所确定的),在步骤590基于检测到的光来存储第一和第二光强度图像。结果是已经基于来自这两个传感器的数据生成了两个光强度图像。一个光强度图像可被称为ImagePhase0(相位0图像),而另一个可被称为ImagePhase90(相位90图像)。注意,可以使用其他相差。
图7A是描绘处理深度图像的过程700的一个实施例的流程图。在这一实施例中,所输入的光强度图像的门控和非门控的深度光强度图像。因此,过程700可以与图5A或5B的过程一起使用,但不限于此。过程700覆盖了在图3的过程300期间在使用门控和非门控光强度图像时如何执行处理的附加细节。具体而言,过程700提供图3的步骤306、312、以及314的附加细节。
在步骤702,深度图像被计算成门控光强度图像除以非门控光强度图像。每一光强度图像可具有相同数量的像素。例如,每一光强度图像中可以有360x240个像素(或某一其他数量的像素)。在一个实施例中,步骤702包括将门控光强度图像中的每一像素的值除以非门控光强度图像中的对应像素的值。然而,可以使用其他技术来将门控图像除以非门控深度图像。以下是可在步骤702中使用的若干示例等式。
步骤702是图3的步骤306的一个实施例。所输出的深度图像随后被平滑,如在图3的步骤306中讨论的。
等式4:深度=门控/非门控
等式5:深度=A+B*(门控/非门控)
等式6:深度=A*X3+B*X2+C*X+D,其中X=log(G/U)或X=G/U。
在以上等式中,深度是深度图像中的深度值,门控是门控传感器所收集的强度图像的强度值,并且非门控是非门控传感器所收集的强度图像的强度值。参数“A”和“B”可以是取决于相机设置的常数,如所发射的光脉冲的数量以及传感器的定时(例如,传感器活动/不活动的时间)。常数“X”指的是“门控/非门控”。注意,对于等式5和6,深度值可以是距离单位,如距相机的厘米数。对于等式4,深度值可以是某一范围中的值(例如,0和1之间的值)。
在步骤704,经修改的门控光强度图像被计算成经平滑的深度图像乘以非门控光强度图像。步骤704是图3的步骤312的一个实施例。步骤704可涉及使用用于步骤702中的函数的反函数来执行计算。例如,如果在步骤702中使用了等式5,则可在步骤704中使用等式7。
等式7:门控=非门控*(深度-A)/B
例如,可从深度图像中的深度值中减去常数A来执行(深度-A)。乘以“非门控”指的是将所输入的非门控光强度图像中的像素的强度值乘以对应的深度值。在此,可基于各自是nxm个值的阵列的深度图像和强度图像来确定对应的深度值。
注意,步骤704的另外的变型是可能的。图10描绘其中经修改的门控光强度图像的值可被保持在边界值内的一个实施例。
在步骤706,深度图像被重新计算成经修改的门控光强度图像除以(原始)非门控光强度图像。步骤706是图3的步骤314的一个实施例。过程700的步骤704和706可被重复(参见图3被重复的步骤312、314)。
当门控和非门控光强度图像被处理时,这两个光强度图像的相对角色可以反转。图7B是描绘类似于图7A的过程但角色转换了的用于处理深度图像的过程750的一个实施例的流程图。过程750提供图3的步骤306、312、以及314的附加细节。在步骤702,深度图像被计算成门控光强度图像除以非门控光强度图像。这是步骤306的一个实施例。原始深度图像随后可被平滑,如在图3的步骤306中讨论的。注意,这一步骤可类似于图7A的过程700。
在步骤754,经修改的非门控光强度图像被计算成门控光强度图像除以经平滑的深度图像。注意,步骤754与图7A的对应步骤(步骤704)不同。步骤754是图3的步骤312的一个实施例。注意,步骤754的另外的变型是可能的。图10描绘其中经修改的非门控光强度图像的值可被保持在非门控光强度图像中的像素的边界值内的一个实施例。
在步骤756,深度图像被重新计算成(原始)门控光强度图像除以来自步骤754的经修改的非门控光强度图像。步骤756是图3的步骤314的一个实施例。过程700的步骤704和706可被重复(参见图3被重复的步骤312、314)。
如上所述,第一和第二光强度图像可以不同于门控和非门控图像。图8A和8B描绘过程800、850的实施例,其中第一和第二光强度图像是基于相差的。生成这样的深度图像的一个示例结合图5C和6B来讨论。例如,第一和第二光强度图像是通过在其间存在90度相差处收集的数据来生成的。出于讨论的目的,这些光强度图像将被称为ImagePhase0和ImagePhase90。然而,将注意到,可以使用其他相差。图8A和8B的过程之间的差异是哪一所收集的光强度图像在该过程期间被修改。注意,在提供图3的步骤306、312、以及314的附加细节方面,图8A和图8B类似于图7A和7B。
在图8A的步骤802中,深度图像被计算成ImagePhase0和ImagePhase90的函数。一般形式可如以下等式7所示:
等式8:深度图像A*atan2(ImagePhase0,ImagePhase90)+B
换言之,深度图像可以是这两个光强度图像的反正切的函数。步骤802是步骤306的一个实施例。原始深度图像随后被平滑,如在图3的步骤306中讨论的。
在步骤804,基于经平滑的深度图像和ImagePhase90来计算经修改的ImagePhase0。在一些实施例中,在步骤804中使用的函数是在步骤802上使用的函数的反函数。步骤804是图3的步骤312的一个实施例。注意,步骤804的另外的变型是可能的。图10描绘其中经修改的ImagePhase0图像的值可被保持在ImagePhase0深度图像中的像素的边界值内的一个实施例。
在步骤806,深度图像被重新计算成经修改的ImagePhase0和(原始)ImagePhase90。步骤806可涉及使用与步骤802相同或相似的等式。步骤806是图3的步骤314的一个实施例。过程800的步骤804和806可被重复(参见图3被重复的步骤312、314)。
在图8A的实施例中,在步骤804中修改ImagePhase0光强度图像。在另一实施例中,以类似的方式修改ImagePhase90深度图像。图8B是描绘处理深度图像的过程850的一个实施例的流程图。过程850提供图3的步骤306、312、以及314的附加细节。在步骤852中,原始深度图像被计算成ImagePhase0和ImagePhase90的函数。这是步骤306的一个实施例。原始深度图像随后被平滑,如在图3的步骤306中讨论的。注意,这一步骤可类似于图8A的步骤802。
在步骤854,基于经平滑的深度图像和ImagePhase0来计算经修改的ImagePhase90。在一些实施例中,在步骤854中使用的函数是在步骤802上使用的函数的反函数。例如,如果在步骤802使用反正切函数,则可在步骤854中使用正切函数。步骤804是图3的步骤312的一个实施例。
在步骤856,深度图像被重新计算成经修改的ImagePhase90和(原始)ImagePhase0。步骤856可涉及使用与步骤802相同或相似的等式。步骤856是图3的步骤314的一个实施例。过程850的步骤854和856可被重复(参见图3被重复的步骤312、314)。这结束了图8B的讨论。
在一些实施例中,确定第一光强度图像(其在过程300中被修改)中的像素的边界值。在修改第一光强度图像时,将像素值保持在边界值内。图9是在处理第一光强度图像时确定边界值的过程900的一个实施例的流程图。过程900提供图3的步骤304的进一步细节。
可以影响对光强度图像的处理的一个因素是第一和第二光强度图像之间的预期的像素误差量。像素误差指的是由于光强度图像是从不同物理位置处的传感器收集的或从同一传感器但却在不同的时间收集而存在某种像素未对准的事实。在步骤902,估计像素误差。对于使用两个不同的传感器同时收集的光强度图像,可至少部分地基于这两个传感器的物理位置来确定预期的误差量。预期误差也可基于其他因素,如深度相机系统10的视野的范围和角度以及传感器25的特性(例如,像素数目)。例如,参考图2C,深度传感器25a和25b处于光发射器24的左侧和右侧的已知位置处。作为示例,传感器25c可被用来收集第一光强度图像且传感器25d可被用来收集第二光强度图像。在这种情况下,在特定方向上(例如,向左侧或向右侧)可存在小于1个像素的预期平移误差。由于几何学,将预期误差限制在一个方向上是可能的。对于诸如图2B中所示的传感器配置,预期误差可以在与图2C的示例不同的方向上。注意,在一些情况下,预期误差可能超过1个像素。
在步骤904,作出预期像素误差(或失配)是否小于1个像素的判断。如果是,则在步骤906-912执行对第一光强度图像中的像素的处理。注意,第一光强度图像可以是这两个所收集的光强度图像中的任一个。例如,它可以是门控或非门控光强度图像。或者,它可以是ImagePhase0或ImagePhase90光强度图像。在步骤906,访问第一光强度图像中的第一像素的值。
在步骤908,访问第一像素的邻居的值。可以基于预期的像素未对准的方向来选择邻居。作为示例,对于图2C的配置,可以选择右侧或左侧的邻居。
在步骤910,基于第一像素的值和邻居的值来确定第一像素的边界值。在一个实施例中,这涉及将下边界值设置成这两个像素值中的较低值,以及将上边界值设置成这两个像素值中的较高值。实际上,这在第一像素的值与所选邻居的值之间确立了第一像素的边界。这可涉及假定第一像素与它的所选邻居之间的线性内插,但这不是必需的。换言之,边界值可以扩展至这两个像素值中的较低值以下或较高值以上。
在步骤912,作出第一光强度图像中是否还存在要处理的像素的判断。如果是,则处理对下一像素重复步骤906-910。一旦确立了第一光强度图像中的所有像素的边界值,则处理完成。
如上所述,在一些情况下,预期的像素误差(或未对准)可能大于1个像素。在这种情况下,可执行步骤914(在步骤904之后)。步骤914是对第一光强度图像进行降采样。注意,第二图像也可被降采样以用于稍后处理。对图像进行降采样(也被称为重新采样)可涉及减少光强度图像中的像素的数量。例如,360x 120像素图像可被降采样成180x 60像素图像。对图像进行降采样在本领域中很好理解并且不再赘述。
对光强度图像进行降采样可减少第一和第二光强度图像中的误差(未对准)像素。因此,在降采样之后,在步骤904,作出第一和第二光强度图像之间是否存在小于1个像素误差的重新判断。可以使用先前使用并且在上文中描述的类似技术。如果降采样达到了小于1个像素的未对准,则处理可如先前在步骤906-912中描述的那样继续。否则,在步骤904,第一光强度图像(以及可能第二光强度图像)可被进一步降采样。
图10是在处理第一光强度图像时使用边界值的过程1000的一个实施例的流程图。过程1000提供图3的步骤312的进一步细节。过程1000还讨论了在第一图像的像素否则会超出其边界值时对第二光强度图像的可能修改。
在步骤1002,基于经平滑的深度图像和第二光强度图像来确定第一光强度图像的新值。作为一个示例,将经平滑的深度图像中的像素乘以非门控光强度图像中的对应像素。注意,这可被认为是将深度图像计算成门控光强度图像除以非门控光强度图像的逆运算。
步骤1002的结果可以是第一光强度图像(例如,门控图像)中的像素中的一些超出了边界值。在步骤1004,作出(经修改的)第一光强度图像中是否还存在要针对边界值违反进行检查的像素的判断。如果否,则过程1000结束。否则,在步骤1004,访问下一像素的值及其边界值。这些边界值可以通过图9的过程900来确定。
在步骤1008,作出(经修改的)第一光强度图像中的第一像素是否超出其边界值的判断。如果否,则该过程返回步骤1004以确定第一光强度图像中是否还存在要被检查来确定与边界值的遵从性的像素。
如果第一像素超出其边界值,则在步骤1010调整像素值以使它保持在边界内。此外,作为可任选步骤,在步骤1012,可调整第二光强度图像中的对应像素的值。例如,如果像素是8位值,则该值可被递增(或递减)1。当然,像素可以是除8位值以外的值。此外,该值可被修改超过1。该值被递增还是递减可取决于第一光强度图像中的像素的值是高于还是低于边界。在步骤1012之后,过程1000返回步骤1004以判断是否还有要确定其与边界值的遵从性的像素。
图11描绘了可以在图1的运动捕捉系统中使用的计算环境的示例框图。深度相机系统20可向控制台100提供输入。在一个实施例中,深度相机系统20确定深度值并将它们提供给控制台100。在一个实施例中,深度相机系统20收集图像数据(例如,光强度图像),它将该图像数据提供给控制台以确定深度图像。
上文所描述的诸如计算环境12等的计算环境可包括诸如游戏控制台等的多媒体控制台100。多媒体控制台100包括具有一级高速缓存102、二级高速缓存104和闪存ROM(只读存储器)106的中央处理单元(CPU)101。一级高速缓存102和二级高速缓存104临时存储数据并因此减少存储器访问周期数,由此改进处理速度和吞吐量。CPU 101可以设置成具有一个以上的内核,以及由此的附加的一级和二级高速缓存102和104。诸如闪存ROM之类的存储器106可存储当多媒体控制台100通电时在引导过程的初始阶段期间加载的可执行代码。
图形处理单元(GPU)108和视频编码器/视频编解码器(编码器/解码器)114形成用于高速、高分辨率图形处理的视频处理流水线。数据经由总线从图形处理单元108输送到视频编码器/视频编解码器114。视频处理流水线向A/V(音频/视频)端口140输出数据,以便传输到电视机或其他显示器。存储器控制器110连接到GPU 108,以便于处理器对各种类型的存储器112,比如RAM(随机存取存储器)的访问。
多媒体控制台100包括可在模块118上实现的I/O控制器120、系统管理控制器122、音频处理单元123、网络接口124、第一USB主控制器126、第二USB控制器128和前面板I/O子部件130。USB控制器126和128用作外围控制器142(1)-142(2)、无线适配器148、和外置存储器设备146(例如闪存、外置CD/DVD ROM驱动器、可移动介质等)的主机。网络接口(NW IF)124和/或无线适配器148提供对网络(例如,因特网、家庭网络等)的访问并且可以是包括以太网卡、调制解调器、蓝牙模块、电缆调制解调器等的各种不同的有线或无线适配器组件中任何一种。
提供系统存储器143来存储在引导过程期间加载的应用数据。提供了媒体驱动器144,其可以包括DVD/CD驱动器、硬盘驱动器、或其他可移动媒体驱动器。媒体驱动器144可以是多媒体控制台100内部或外部的。应用数据可经由媒体驱动器144访问,以由多媒体控制台100执行、回放等。媒体驱动器144经由诸如串行ATA总线或其他高速连接等总线连接到I/O控制器120。
系统管理控制器122提供涉及确保多媒体控制台100的可用性的各种服务功能。音频处理单元123和音频编解码器132形成具有高保真度和立体声处理的对应的音频处理流水线。音频数据经由通信链路在音频处理单元123与音频编解码器132之间传输。音频处理流水线将数据输出到A/V端口140以供外置音频播放器或具有音频能力的设备再现。
前面板I/O子部件130支持暴露在多媒体控制台100的外表面上的电源按钮150和弹出按钮152以及任何LED(发光二极管)或其他指示器的功能。系统供电模块136向多媒体控制台100的组件供电。风扇138冷却多媒体控制台100内的电路。
CPU 101、GPU 108、存储器控制器110、和多媒体控制台100内的各个其他组件经由一条或多条总线互连,包括串行和并行总线、存储器总线、外围总线、和使用各种总线架构中任一种的处理器或局部总线。
当多媒体控制台100通电时,应用数据可从系统存储器143加载到存储器112和/或高速缓存102、104中并在CPU 101上执行。应用可呈现在导航到多媒体控制台100上可用的不同媒体类型时提供一致的用户体验的图形用户界面。在操作中,媒体驱动器144中包含的应用和/或其他媒体可从媒体驱动器144启动或播放,以向多媒体控制台100提供附加功能。
多媒体控制台100可通过将该系统连接到电视机或其他显示器而作为独立系统来操作。在该独立模式中,多媒体控制台100允许一个或多个用户与该系统交互、看电影、或听音乐。然而,随着通过网络接口124或无线适配器148可用的宽带连接的集成,多媒体控制台100还可作为较大网络社区中的参与者来操作。
当多媒体控制台100通电时,可以保留指定量的硬件资源以供多媒体控制台操作系统作系统使用。这些资源可包括预留存储器(例如,16MB)、CPU和GPU周期(例如,5%)、网络带宽(例如,8kbs)等等。因为这些资源是在系统引导时保留的,所以所保留的资源对应用而言是不存在的。
具体地,存储器保留可以是足够大以包含启动内核、并发系统应用和驱动程序。CPU保留可以是恒定的,使得若所保留的CPU使用不被系统应用使用,则空闲线程将消耗任何未使用的周期。
对于GPU保留,通过使用GPU中断来显示由系统应用生成的轻量消息(例如,弹出窗口),以调度代码来将弹出窗口呈现为覆盖图。覆盖图所需的存储器量取决于覆盖区域大小,并且覆盖图可与屏幕分辨率成比例缩放。在并发系统应用使用完整用户界面的情况下,优选使用独立于应用分辨率的分辨率。定标器可用于设置该分辨率,从而无需改变频率并无需引起TV重新同步。
在多媒体控制台100引导且系统资源被保留之后,就执行并发系统应用来提供系统功能。系统功能被封装在上述所保留的系统资源中执行的一组系统应用中。操作系统内核标识是系统应用线程而非游戏应用线程的线程。系统应用可被调度为在预定时间并以预定时间间隔在CPU 101上运行,来为应用提供一致的系统资源视图。进行调度是为了把由在控制台上运行的游戏应用所引起的高速缓存中断最小化。
当并发系统应用需要音频时,则由于时间敏感性而将音频处理异步地调度给游戏应用。多媒体控制台应用管理器(如下所述)在系统应用活动时控制游戏应用的音频水平(例如,静音、衰减)。
输入设备(例如,控制器142(1)和142(2))由游戏应用和系统应用共享。输入设备不是所保留的资源,但却在系统应用和游戏应用之间切换以使其各自具有设备的焦点。应用管理器可控制输入流的切换,而无需知晓游戏应用的知识,并且驱动程序维持有关焦点切换的状态信息。控制台100可从包括相机28的图2的深度相机系统20接收附加输入。
图12描绘可被用来确定深度图像的计算环境的另一示例框图。在一个实施例中,深度相机系统20向计算环境提供图像数据(例如,两个光强度图像)以确定深度图像。在一个实施例中,深度相机系统20提供深度值以供计算环境220使用。
计算环境220包括通常包括各种有形计算机可读存储介质的计算机241。这可以是能由计算机241访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。系统存储器222包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)223和随机存取存储器(RAM)260。基本输入/输出系统224(BIOS)包含诸如在启动期间帮助在计算机241内的元件之间传输信息的基本例程,它通常储存储在ROM 223中。RAM 260通常包含处理单元259可立即访问和/或目前正在操作的数据和/或程序模块。图形接口231与GPU 229进行通信。作为示例而非局限,图12描绘了操作系统225、应用226、其他程序模块227和程序数据228。
计算机241也可以包括其他可移动/不可移动、易失性/非易失性计算机存储介质,例如,读写不可移动、非易失性磁性介质的硬盘驱动器238,读写可移动、非易失性磁盘254的磁盘驱动器239,以及读写诸如CD ROM或其他光学介质之类的可移动、非易失性光盘253的光盘驱动器240。可以在该示例性操作环境中使用的其他可移动/不可移动、易失性/非易失性有形计算机可读存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等等。硬盘驱动器238通常由例如接口234等不可移动存储器接口连接至系统总线221,而磁盘驱动器239和光盘驱动器240通常由例如接口235等可移动存储器接口连接至系统总线221。
以上讨论并在图12中描绘的驱动器及其相关联的计算机存储介质为计算机241提供了对计算机可读指令、数据结构、程序模块和其他数据的存储。例如,硬盘驱动器238被描绘为存储了操作系统258、应用257、其他程序模块256、以及程序数据255。注意,这些组件可与操作系统225、应用226、其他程序模块227和程序数据228相同,也可与它们不同。在此给操作系统258、应用257、其他程序模块256、以及程序数据255提供了不同的编号,以说明至少它们是不同的副本。用户可以通过输入设备,例如键盘251和定点设备252——通常是指鼠标、跟踪球或触摸垫——向计算机241输入命令和信息。其他输入设备(未示出)可包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些和其他输入设备通常通过耦合至系统总线的用户输入接口236连接至处理单元259,但也可以由其他接口和总线结构,例如并行端口、游戏端口或通用串行总线(USB)来连接。包括相机28的图2的深度相机系统20可为控制台100定义附加输入设备。监视器242或其他类型的显示器也通过接口,诸如视频接口232,连接至系统总线221。除监视器之外,计算机还可以包括可以通过输出外围接口233连接的诸如扬声器244和打印机243之类的其他外围输出设备。
计算机241可以使用到一个或多个远程计算机(如远程计算机246)的逻辑连接,以在联网环境中操作。远程计算机246可以是个人计算机、服务器、路由器、网络PC、对等设备或其他常见的网络节点,且通常包括许多或所有以上相对于计算机241描述的元件,但是在图12中仅示出了存储器存储设备247。逻辑连接包括局域网(LAN)245和广域网(WAN)249,但也可以包括其他网络。这些联网环境在办公室、企业范围计算机网络、内联网和因特网中是常见的。
当用于LAN网络环境中时,计算机241通过网络接口或适配器237连接到LAN 245。当在WAN联网环境中使用时,计算机241通常包括调制解调器250或用于通过例如因特网等WAN 249建立通信的其他手段。调制解调器250,可以是内置的或外置的,可以经由用户输入接口236或其他适当的机制,连接到系统总线221。在联网环境中,参考计算机241所描述的程序模块,或其某些部分,可以存储在远程存储器存储设备中。作为示例而非限制,图12描绘了远程应用248驻留在存储器设备247上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其他手段。
前面的对本技术的详细描述只是为了说明和描述。它不是为了详尽的解释或将本技术限制在所公开的准确的形式。鉴于上述教导,许多修改和变型都是可能的。所描述的实施例只是为了最好地说明本技术的原理以及其实际应用,从而使精通本技术的其他人在各种实施例中最佳地利用本技术,适合于特定用途的各种修改也是可以的。本技术的范围由所附的权利要求进行定义。

Claims (15)

1.一种用于确定深度的方法,包括:
基于第一光强度图像和第二光强度图像来计算深度图像,所述第一和第二光强度图像包含同一场景的像素值(306);
对所述深度图像进行平滑(308);
基于经平滑的深度图像和所述第二光强度图像来修改所述第一光强度图像(312);
基于经修改的第一光强度图像和所述第二光强度图像来计算所述深度图像的新值(314);
重复平滑所述深度图像、修改所述第一光强度图像、以及计算所述深度图像的新值,直至确定对所述深度图像的处理完成为止。
2.如权利要求1所述的方法,其特征在于,基于经平滑的深度图像和所述第二光强度图像修改所述第一光强度图像包括执行基于所述第一光强度图像和所述第二光强度图像来计算所述深度图像的逆运算。
3.如权利要求2所述的方法,其特征在于,基于所述第一光强度图像和所述第二光强度图像来计算深度图像包括在逐像素的基础上将所述第一光强度图像除以所述第二光强度图像,
其中基于经平滑的深度图像和所述第二光强度图像来修改所述第一光强度图像包括在逐像素的基础上将经平滑的深度图像乘以所述第二光强度图像。
4.如权利要求2所述的方法,其特征在于,还包括基于所述第一光强度图像中的一个或多个邻居像素以及所述第一和第二光强度图像之间的可能的像素未对准来确定所述第一光强度图像中的像素的边界值,其中基于经平滑的深度图像和所述第二光强度图像来修改所述第一光强度图像包括使所述第一光强度图像中的像素值保持在所述边界值内。
5.如权利要求4所述的方法,其特征在于,修改所述第一光强度图像包括在作为执行计算所述深度图像的逆运算的结果所述第一光强度图像中的像素的值否则会超出其边界值的情况下修改所述第二光强度图像中的对应像素的值。
6.如权利要求1至5中任一项所述的方法,其特征在于,还包括使用第一传感器来确定所述第一光强度图像以及同时使用第二传感器来确定所述第二光强度图像。
7.如权利要求1至5中任一项所述的方法,其特征在于,还包括使用同一传感器但在不同的时间确定所述第一光强度图像和所述第二光强度图像。
8.如权利要求1至6中任一项所述的方法,其特征在于,还包括:
通过对第一传感器进行门控来确定所述第一光强度图像;以及
在不对第二传感器进行门控的情况下确定所述第二光强度图像。
9.如权利要求1至6中任一项所述的方法,其特征在于,还包括:
发射已调制光束;
当所述已调制光束处于第一相位范围内时在第一传感器处收集数据以生成所述第一光强度图像;以及
当所述已调制光束处于第二相位范围内时在第二传感器处收集数据以生成所述第二光强度图像,所述第一和第二相位范围不重叠。
10.一种装置,包括:
处理器;以及
耦合到所述处理器的计算机可读存储介质,所述计算机可读存储介质上存储有指令,所述指令在被所述处理器执行时使得所述处理器:访问第一光强度图像和第二光强度图像,所述第一光强度图像和第二光强度图像包含同一场景的像素值;基于所述第一光强度图像中的一个或多个邻居像素来确定所述第一光强度图像中的像素的边界值;基于所述第一光强度图像和所述第二光强度图像来计算深度图像;对所述深度图像进行平滑;基于对所述深度图像进行平滑的结果来确定是否要修改所述第一光强度图像;如果确定要修改所述第一光强度图像,则基于经平滑的深度图像和所述第二光强度图像来修改所述第一光强度图像,所述修改包括使所述第一光强度图像中的像素的值保持在所述边界值内;如果所述第一光强度图像被修改,则基于经修改的第一光强度图像和所述第二光强度图像来计算所述深度图像的新值;以及继续修改所述第一光强度图像并计算所述深度图像的新值,直至确定不再修改所述第一光强度图像为止。
11.如权利要求10所述的装置,其特征在于,使得所述处理器基于经平滑的深度图像和所述第二光强度图像修改所述第一光强度图像的指令包括使得所述处理器执行基于所述第一光强度图像和所述第二光强度图像来计算所述深度图像的逆运算的指令。
12.如权利要求10或11所述的装置,其特征在于,使得所述处理器基于所述第一光强度图像和所述第二光强度图像来计算深度图像的指令包括使得所述处理器将所述第一光强度图像除以所述第二光强度图像的指令,
其中使得所述处理器基于经平滑的深度图像和所述第二光强度图像来修改所述第一光强度图像的指令包括使得所述处理器将经平滑的深度图像乘以所述第二光强度图像的指令。
13.如权利要求10至12中任一项所述的装置,其特征在于,所述第一和第二光强度图像中的一个是门控光强度图像且另一个是非门控光强度图像。
14.如权利要求10至12中任一项所述的装置,其特征在于,所述第一和第二光强度图像是基于在发射光束的相位方面不同的数据的。
15.如权利要求10至14中任一项所述的装置,其特征在于,使得所述处理器基于所述第一光强度图像中的一个或多个邻居像素来确定所述第一光强度图像中的每一像素的边界值的指令包括使得所述处理器基于所述第一光强度图像中的第一像素的值和所述第一像素的邻居的值来确定上边界和下边界的指令,其中所述邻居是基于用于收集所述第一光强度图像的第一传感器的几何学和用于收集所述第二光强度图像的第二传感器的几何学来确定的。
CN201110315789.6A 2010-10-04 2011-10-08 飞行时间深度成像 Active CN102520574B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/897,145 2010-10-04
US12/897,145 US8548270B2 (en) 2010-10-04 2010-10-04 Time-of-flight depth imaging

Publications (2)

Publication Number Publication Date
CN102520574A true CN102520574A (zh) 2012-06-27
CN102520574B CN102520574B (zh) 2014-10-29

Family

ID=45889874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110315789.6A Active CN102520574B (zh) 2010-10-04 2011-10-08 飞行时间深度成像

Country Status (2)

Country Link
US (2) US8548270B2 (zh)
CN (1) CN102520574B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104024789A (zh) * 2012-10-23 2014-09-03 Lsi公司 用于深度成像器的光源驱动器电路
CN104603676A (zh) * 2012-08-14 2015-05-06 微软公司 深度相机的照明光整形
CN104811682A (zh) * 2014-01-23 2015-07-29 钰创科技股份有限公司 产生深度信息的装置、产生深度信息的方法和立体摄像机
CN105026955A (zh) * 2012-12-28 2015-11-04 诺基亚技术有限公司 用于对来自距离感应相机的数据进行降噪的方法和装置
CN105723238A (zh) * 2013-10-17 2016-06-29 微软技术许可有限责任公司 概率飞行时间成像
CN107278272A (zh) * 2015-03-27 2017-10-20 英特尔公司 时空压缩飞行时间成像技术
CN110415287A (zh) * 2019-07-11 2019-11-05 Oppo广东移动通信有限公司 深度图的滤波方法、装置、电子设备和可读存储介质
CN110749902A (zh) * 2019-10-09 2020-02-04 深圳奥锐达科技有限公司 一种基于时间分段的3d成像系统及成像方法
CN110807811A (zh) * 2019-09-20 2020-02-18 炬佑智能科技(苏州)有限公司 对不同反射率物体的深度补偿方法及tof相机

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8548270B2 (en) 2010-10-04 2013-10-01 Microsoft Corporation Time-of-flight depth imaging
KR20120079646A (ko) * 2011-01-05 2012-07-13 삼성전자주식회사 깊이 센서, 상기 깊이 센서의 결점 수정 방법, 및 상기 깊이 센서를 포함하는 신호 처리 시스템
US9628843B2 (en) * 2011-11-21 2017-04-18 Microsoft Technology Licensing, Llc Methods for controlling electronic devices using gestures
US9111352B2 (en) * 2011-12-27 2015-08-18 Avid Technology, Inc. Automated detection and correction of stereoscopic edge violations
KR101862199B1 (ko) * 2012-02-29 2018-05-29 삼성전자주식회사 원거리 획득이 가능한 tof카메라와 스테레오 카메라의 합성 시스템 및 방법
US9738223B2 (en) * 2012-05-31 2017-08-22 GM Global Technology Operations LLC Dynamic guideline overlay with image cropping
US9297889B2 (en) 2012-08-14 2016-03-29 Microsoft Technology Licensing, Llc Illumination light projection for a depth camera
US9851245B2 (en) 2012-11-06 2017-12-26 Microsoft Technology Licensing, Llc Accumulating charge from multiple imaging exposure periods
US20140139632A1 (en) * 2012-11-21 2014-05-22 Lsi Corporation Depth imaging method and apparatus with adaptive illumination of an object of interest
US10712529B2 (en) 2013-03-13 2020-07-14 Cognex Corporation Lens assembly with integrated feedback loop for focus adjustment
US11002854B2 (en) 2013-03-13 2021-05-11 Cognex Corporation Lens assembly with integrated feedback loop and time-of-flight sensor
US9442186B2 (en) 2013-05-13 2016-09-13 Microsoft Technology Licensing, Llc Interference reduction for TOF systems
CA2883029C (en) * 2015-02-26 2024-04-30 Kevin Johnston Method and system for securely updating a website
US9921298B2 (en) 2015-07-20 2018-03-20 Google Llc Method and apparatus for increasing the resolution of a time of flight pixel array
US10462452B2 (en) 2016-03-16 2019-10-29 Microsoft Technology Licensing, Llc Synchronizing active illumination cameras
CN107818554B (zh) * 2016-09-12 2023-04-21 索尼公司 信息处理设备和信息处理方法
US10706505B2 (en) * 2018-01-24 2020-07-07 GM Global Technology Operations LLC Method and system for generating a range image using sparse depth data
WO2020045770A1 (en) * 2018-08-31 2020-03-05 Samsung Electronics Co., Ltd. Method and device for obtaining 3d images
US10791282B2 (en) 2018-12-13 2020-09-29 Fenwick & West LLP High dynamic range camera assembly with augmented pixels
US10855896B1 (en) * 2018-12-13 2020-12-01 Facebook Technologies, Llc Depth determination using time-of-flight and camera assembly with augmented pixels
US10791286B2 (en) 2018-12-13 2020-09-29 Facebook Technologies, Llc Differentiated imaging using camera assembly with augmented pixels
US11194027B1 (en) * 2019-08-23 2021-12-07 Zoox, Inc. Reducing noise in sensor data
US11536836B2 (en) 2019-09-27 2022-12-27 Sensors Unlimited, Inc. Time-of-flight independent of object reflectivity
US20220395394A1 (en) * 2019-11-05 2022-12-15 The Regents Of The University Of Colorado, A Body Corporate Systems And Methods To Probe Ocular Structures
US10902623B1 (en) 2019-11-19 2021-01-26 Facebook Technologies, Llc Three-dimensional imaging with spatial and temporal coding for depth camera assembly
US11194160B1 (en) 2020-01-21 2021-12-07 Facebook Technologies, Llc High frame rate reconstruction with N-tap camera sensor
FR3119462B1 (fr) * 2021-02-01 2023-04-28 Keopsys Ind Procédé d’acquisition d’images 3D par balayage en ligne et détection à portes temporelles

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193124A (en) * 1989-06-29 1993-03-09 The Research Foundation Of State University Of New York Computational methods and electronic camera apparatus for determining distance of objects, rapid autofocusing, and obtaining improved focus images
US5764871A (en) * 1993-10-21 1998-06-09 Eastman Kodak Company Method and apparatus for constructing intermediate images for a depth image from stereo images using velocity vector fields
CN1196545A (zh) * 1995-02-28 1998-10-21 伊斯曼柯达公司 由立体图像构成深度图像的中间图像的方法和装置
JP2001209822A (ja) * 2000-01-28 2001-08-03 Square Co Ltd 3次元コンピュータ画像処理のプログラムを記録したコンピュータ読み取り可能な記録媒体およびぼかし描画処理方法およびビデオゲーム装置
US7031512B2 (en) * 2002-04-18 2006-04-18 Stmicroelectronics, Inc. Method and system for 3D smoothing within the bound of error regions of matching curves
US20070018977A1 (en) * 2005-07-25 2007-01-25 Wolfgang Niem Method and apparatus for generating a depth map
CN101556696A (zh) * 2009-05-14 2009-10-14 浙江大学 基于阵列摄像机的深度图实时获取算法

Family Cites Families (165)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4695953A (en) 1983-08-25 1987-09-22 Blair Preston E TV animation interactively controlled by the viewer
US4630910A (en) 1984-02-16 1986-12-23 Robotic Vision Systems, Inc. Method of measuring in three-dimensions at high speed
US4627620A (en) 1984-12-26 1986-12-09 Yang John P Electronic athlete trainer for improving skills in reflex, speed and accuracy
US4645458A (en) 1985-04-15 1987-02-24 Harald Phillip Athletic evaluation and training apparatus
US4702475A (en) 1985-08-16 1987-10-27 Innovating Training Products, Inc. Sports technique and reaction training system
US4843568A (en) 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
US4711543A (en) 1986-04-14 1987-12-08 Blair Preston E TV animation interactively controlled by the viewer
US4796997A (en) 1986-05-27 1989-01-10 Synthetic Vision Systems, Inc. Method and system for high-speed, 3-D imaging of an object at a vision station
US5184295A (en) 1986-05-30 1993-02-02 Mann Ralph V System and method for teaching physical skills
US4751642A (en) 1986-08-29 1988-06-14 Silva John M Interactive sports simulation system with physiological sensing and psychological conditioning
US4809065A (en) 1986-12-01 1989-02-28 Kabushiki Kaisha Toshiba Interactive system and related method for displaying data to produce a three-dimensional image of an object
US4817950A (en) 1987-05-08 1989-04-04 Goo Paul E Video game control unit and attitude sensor
US5239463A (en) 1988-08-04 1993-08-24 Blair Preston E Method and apparatus for player interaction with animated characters and objects
US5239464A (en) 1988-08-04 1993-08-24 Blair Preston E Interactive video system providing repeated switching of multiple tracks of actions sequences
US4901362A (en) 1988-08-08 1990-02-13 Raytheon Company Method of recognizing patterns
US4893183A (en) 1988-08-11 1990-01-09 Carnegie-Mellon University Robotic vision system
JPH02199526A (ja) 1988-10-14 1990-08-07 David G Capper 制御インターフェース装置
US4925189A (en) 1989-01-13 1990-05-15 Braeunig Thomas F Body-mounted video game exercise device
US5229756A (en) 1989-02-07 1993-07-20 Yamaha Corporation Image control apparatus
US5469740A (en) 1989-07-14 1995-11-28 Impulse Technology, Inc. Interactive video testing and training system
JPH03103822U (zh) 1990-02-13 1991-10-29
US5101444A (en) 1990-05-18 1992-03-31 Panacea, Inc. Method and apparatus for high speed object location
US5148154A (en) 1990-12-04 1992-09-15 Sony Corporation Of America Multi-dimensional user interface
US5534917A (en) 1991-05-09 1996-07-09 Very Vivid, Inc. Video image based control system
US5417210A (en) 1992-05-27 1995-05-23 International Business Machines Corporation System and method for augmentation of endoscopic surgery
US5295491A (en) 1991-09-26 1994-03-22 Sam Technology, Inc. Non-invasive human neurocognitive performance capability testing method and system
US6054991A (en) 1991-12-02 2000-04-25 Texas Instruments Incorporated Method of modeling player position and movement in a virtual reality system
CA2101633A1 (en) 1991-12-03 1993-06-04 Barry J. French Interactive video testing and training system
US5875108A (en) 1991-12-23 1999-02-23 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
JPH07325934A (ja) 1992-07-10 1995-12-12 Walt Disney Co:The 仮想世界に向上したグラフィックスを提供する方法および装置
US5999908A (en) 1992-08-06 1999-12-07 Abelow; Daniel H. Customer-based product design module
US5320538A (en) 1992-09-23 1994-06-14 Hughes Training, Inc. Interactive aircraft training system and method
IT1257294B (it) 1992-11-20 1996-01-12 Dispositivo atto a rilevare la configurazione di un'unita' fisiologicadistale,da utilizzarsi in particolare come interfaccia avanzata per macchine e calcolatori.
US5495576A (en) 1993-01-11 1996-02-27 Ritchey; Kurtis J. Panoramic image based virtual reality/telepresence audio-visual system and method
US5690582A (en) 1993-02-02 1997-11-25 Tectrix Fitness Equipment, Inc. Interactive exercise apparatus
JP2799126B2 (ja) 1993-03-26 1998-09-17 株式会社ナムコ ビデオゲーム装置及びゲーム用入力装置
US5405152A (en) 1993-06-08 1995-04-11 The Walt Disney Company Method and apparatus for an interactive video game with physical feedback
US5454043A (en) 1993-07-30 1995-09-26 Mitsubishi Electric Research Laboratories, Inc. Dynamic and static hand gesture recognition through low-level image analysis
US5423554A (en) 1993-09-24 1995-06-13 Metamedia Ventures, Inc. Virtual reality game method and apparatus
US5980256A (en) 1993-10-29 1999-11-09 Carmein; David E. E. Virtual reality system with enhanced sensory apparatus
JP3419050B2 (ja) 1993-11-19 2003-06-23 株式会社日立製作所 入力装置
US5347306A (en) 1993-12-17 1994-09-13 Mitsubishi Electric Research Laboratories, Inc. Animated electronic meeting place
JP2552427B2 (ja) 1993-12-28 1996-11-13 コナミ株式会社 テレビ遊戯システム
US5577981A (en) 1994-01-19 1996-11-26 Jarvik; Robert Virtual reality exercise machine and computer controlled video system
US5580249A (en) 1994-02-14 1996-12-03 Sarcos Group Apparatus for simulating mobility of a human
US5597309A (en) 1994-03-28 1997-01-28 Riess; Thomas Method and apparatus for treatment of gait problems associated with parkinson's disease
US5385519A (en) 1994-04-19 1995-01-31 Hsu; Chi-Hsueh Running machine
US5524637A (en) 1994-06-29 1996-06-11 Erickson; Jon W. Interactive system for measuring physiological exertion
JPH0844490A (ja) 1994-07-28 1996-02-16 Matsushita Electric Ind Co Ltd インターフェイス装置
US5563988A (en) 1994-08-01 1996-10-08 Massachusetts Institute Of Technology Method and system for facilitating wireless, full-body, real-time user interaction with a digitally represented visual environment
US6714665B1 (en) 1994-09-02 2004-03-30 Sarnoff Corporation Fully automated iris recognition system utilizing wide and narrow fields of view
US5516105A (en) 1994-10-06 1996-05-14 Exergame, Inc. Acceleration activated joystick
US5638300A (en) 1994-12-05 1997-06-10 Johnson; Lee E. Golf swing analysis system
JPH08161292A (ja) 1994-12-09 1996-06-21 Matsushita Electric Ind Co Ltd 混雑度検知方法およびそのシステム
US5594469A (en) 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
US5682229A (en) 1995-04-14 1997-10-28 Schwartz Electro-Optics, Inc. Laser range camera
US5913727A (en) 1995-06-02 1999-06-22 Ahdoot; Ned Interactive movement and contact simulation game
JP3481631B2 (ja) 1995-06-07 2003-12-22 ザ トラスティース オブ コロンビア ユニヴァーシティー イン ザ シティー オブ ニューヨーク 能動型照明及びデフォーカスに起因する画像中の相対的なぼけを用いる物体の3次元形状を決定する装置及び方法
US5682196A (en) 1995-06-22 1997-10-28 Actv, Inc. Three-dimensional (3D) video presentation system providing interactive 3D presentation with personalized audio responses for multiple viewers
US5702323A (en) 1995-07-26 1997-12-30 Poulton; Craig K. Electronic exercise enhancer
US6308565B1 (en) 1995-11-06 2001-10-30 Impulse Technology Ltd. System and method for tracking and assessing movement skills in multidimensional space
US6430997B1 (en) 1995-11-06 2002-08-13 Trazer Technologies, Inc. System and method for tracking and assessing movement skills in multidimensional space
US6073489A (en) 1995-11-06 2000-06-13 French; Barry J. Testing and training system for assessing the ability of a player to complete a task
US6098458A (en) 1995-11-06 2000-08-08 Impulse Technology, Ltd. Testing and training system for assessing movement and agility skills without a confining field
US6176782B1 (en) 1997-12-22 2001-01-23 Philips Electronics North America Corp. Motion-based command generation technology
US5933125A (en) 1995-11-27 1999-08-03 Cae Electronics, Ltd. Method and apparatus for reducing instability in the display of a virtual environment
US5641288A (en) 1996-01-11 1997-06-24 Zaenglein, Jr.; William G. Shooting simulating process and training device using a virtual reality display screen
JP2000510013A (ja) 1996-05-08 2000-08-08 リアル ヴィジョン コーポレイション 位置検出を用いたリアルタイムシミュレーション
US6173066B1 (en) 1996-05-21 2001-01-09 Cybernet Systems Corporation Pose determination and tracking by matching 3D objects to a 2D sensor
US5989157A (en) 1996-08-06 1999-11-23 Walton; Charles A. Exercising system with electronic inertial game playing
EP0959444A4 (en) 1996-08-14 2005-12-07 Nurakhmed Nurislamovic Latypov METHOD FOR TRACKING AND REPRESENTING THE POSITION AND ORIENTATION OF A SUBJECT IN THE SPACE, METHOD FOR PRESENTING A VIRTUAL SPACE THEREON, AND SYSTEMS FOR CARRYING OUT SAID METHODS
JP3064928B2 (ja) 1996-09-20 2000-07-12 日本電気株式会社 被写体抽出方式
EP0849697B1 (en) 1996-12-20 2003-02-12 Hitachi Europe Limited A hand gesture recognition system and method
US6009210A (en) 1997-03-05 1999-12-28 Digital Equipment Corporation Hands-free interface to a virtual reality environment using head tracking
US6100896A (en) 1997-03-24 2000-08-08 Mitsubishi Electric Information Technology Center America, Inc. System for designing graphical multi-participant environments
US5877803A (en) 1997-04-07 1999-03-02 Tritech Mircoelectronics International, Ltd. 3-D image detector
US6215898B1 (en) 1997-04-15 2001-04-10 Interval Research Corporation Data processing system and method
JP3077745B2 (ja) 1997-07-31 2000-08-14 日本電気株式会社 データ処理方法および装置、情報記憶媒体
US6188777B1 (en) 1997-08-01 2001-02-13 Interval Research Corporation Method and apparatus for personnel detection and tracking
US6289112B1 (en) 1997-08-22 2001-09-11 International Business Machines Corporation System and method for determining block direction in fingerprint images
US6720949B1 (en) 1997-08-22 2004-04-13 Timothy R. Pryor Man machine interfaces and applications
AUPO894497A0 (en) 1997-09-02 1997-09-25 Xenotech Research Pty Ltd Image processing method and apparatus
EP0905644A3 (en) 1997-09-26 2004-02-25 Matsushita Electric Industrial Co., Ltd. Hand gesture recognizing device
US6141463A (en) 1997-10-10 2000-10-31 Electric Planet Interactive Method and system for estimating jointed-figure configurations
AU1099899A (en) 1997-10-15 1999-05-03 Electric Planet, Inc. Method and apparatus for performing a clean background subtraction
US6130677A (en) 1997-10-15 2000-10-10 Electric Planet, Inc. Interactive computer vision system
WO1999019840A1 (en) 1997-10-15 1999-04-22 Electric Planet, Inc. A system and method for generating an animatable character
US6101289A (en) 1997-10-15 2000-08-08 Electric Planet, Inc. Method and apparatus for unencumbered capture of an object
US6072494A (en) 1997-10-15 2000-06-06 Electric Planet, Inc. Method and apparatus for real-time gesture recognition
US6181343B1 (en) 1997-12-23 2001-01-30 Philips Electronics North America Corp. System and method for permitting three-dimensional navigation through a virtual reality environment using camera-based gesture inputs
EP1059970A2 (en) 1998-03-03 2000-12-20 Arena, Inc, System and method for tracking and assessing movement skills in multidimensional space
US6159100A (en) 1998-04-23 2000-12-12 Smith; Michael D. Virtual reality game
US6077201A (en) 1998-06-12 2000-06-20 Cheng; Chau-Yang Exercise bicycle
US6801637B2 (en) 1999-08-10 2004-10-05 Cybernet Systems Corporation Optical body tracker
US7121946B2 (en) 1998-08-10 2006-10-17 Cybernet Systems Corporation Real-time head tracking system for computer games and other applications
US6950534B2 (en) 1998-08-10 2005-09-27 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
US7036094B1 (en) 1998-08-10 2006-04-25 Cybernet Systems Corporation Behavior recognition system
US20010008561A1 (en) 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
US6681031B2 (en) 1998-08-10 2004-01-20 Cybernet Systems Corporation Gesture-controlled interfaces for self-service machines and other applications
IL126284A (en) 1998-09-17 2002-12-01 Netmor Ltd System and method for three dimensional positioning and tracking
EP0991011B1 (en) 1998-09-28 2007-07-25 Matsushita Electric Industrial Co., Ltd. Method and device for segmenting hand gestures
AU1930700A (en) 1998-12-04 2000-06-26 Interval Research Corporation Background estimation and segmentation based on range and color
US6147678A (en) 1998-12-09 2000-11-14 Lucent Technologies Inc. Video hand image-three-dimensional computer interface with multiple degrees of freedom
WO2000036372A1 (en) 1998-12-16 2000-06-22 3Dv Systems, Ltd. Self gating photosurface
US6570555B1 (en) 1998-12-30 2003-05-27 Fuji Xerox Co., Ltd. Method and apparatus for embodied conversational characters with multimodal input/output in an interface device
US6363160B1 (en) 1999-01-22 2002-03-26 Intel Corporation Interface using pattern recognition and tracking
US7003134B1 (en) 1999-03-08 2006-02-21 Vulcan Patents Llc Three dimensional object pose estimation which employs dense depth information
US6299308B1 (en) 1999-04-02 2001-10-09 Cybernet Systems Corporation Low-cost non-imaging eye tracker system for computer control
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
US6476834B1 (en) 1999-05-28 2002-11-05 International Business Machines Corporation Dynamic creation of selectable items on surfaces
US6873723B1 (en) 1999-06-30 2005-03-29 Intel Corporation Segmenting three-dimensional video images using stereo
US6738066B1 (en) 1999-07-30 2004-05-18 Electric Plant, Inc. System, method and article of manufacture for detecting collisions between video images generated by a camera and an object depicted on a display
US7113918B1 (en) 1999-08-01 2006-09-26 Electric Planet, Inc. Method for video enabled electronic commerce
US7050606B2 (en) 1999-08-10 2006-05-23 Cybernet Systems Corporation Tracking and gesture recognition system particularly suited to vehicular control applications
US6663491B2 (en) 2000-02-18 2003-12-16 Namco Ltd. Game apparatus, storage medium and computer program that adjust tempo of sound
US6633294B1 (en) 2000-03-09 2003-10-14 Seth Rosenthal Method and apparatus for using captured high density motion for animation
EP1152261A1 (en) 2000-04-28 2001-11-07 CSEM Centre Suisse d'Electronique et de Microtechnique SA Device and method for spatially resolved photodetection and demodulation of modulated electromagnetic waves
US6640202B1 (en) 2000-05-25 2003-10-28 International Business Machines Corporation Elastic sensor mesh system for 3-dimensional measurement, mapping and kinematics applications
US6731799B1 (en) 2000-06-01 2004-05-04 University Of Washington Object segmentation with background extraction and moving boundary techniques
US6788809B1 (en) 2000-06-30 2004-09-07 Intel Corporation System and method for gesture recognition in three dimensions using stereo imaging and color vision
US7227526B2 (en) 2000-07-24 2007-06-05 Gesturetek, Inc. Video-based image control system
US7058204B2 (en) 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
US7039676B1 (en) 2000-10-31 2006-05-02 International Business Machines Corporation Using video image analysis to automatically transmit gestures over a network in a chat or instant messaging session
US6539931B2 (en) 2001-04-16 2003-04-01 Koninklijke Philips Electronics N.V. Ball throwing assistant
US7259747B2 (en) 2001-06-05 2007-08-21 Reactrix Systems, Inc. Interactive video display system
US8035612B2 (en) 2002-05-28 2011-10-11 Intellectual Ventures Holding 67 Llc Self-contained interactive video display system
JP3420221B2 (ja) 2001-06-29 2003-06-23 株式会社コナミコンピュータエンタテインメント東京 ゲーム装置及びプログラム
US6937742B2 (en) 2001-09-28 2005-08-30 Bellsouth Intellectual Property Corporation Gesture activated home appliance
EP1497160B2 (de) 2002-04-19 2010-07-21 IEE INTERNATIONAL ELECTRONICS & ENGINEERING S.A. Sicherheitsvorrichtung für ein fahrzeug
US7710391B2 (en) 2002-05-28 2010-05-04 Matthew Bell Processing an image utilizing a spatially varying pattern
US7348963B2 (en) 2002-05-28 2008-03-25 Reactrix Systems, Inc. Interactive video display system
US7170492B2 (en) 2002-05-28 2007-01-30 Reactrix Systems, Inc. Interactive video display system
US7489812B2 (en) 2002-06-07 2009-02-10 Dynamic Digital Depth Research Pty Ltd. Conversion and encoding techniques
US7576727B2 (en) 2002-12-13 2009-08-18 Matthew Bell Interactive directed light/sound system
JP4235729B2 (ja) 2003-02-03 2009-03-11 国立大学法人静岡大学 距離画像センサ
DE602004006190T8 (de) 2003-03-31 2008-04-10 Honda Motor Co., Ltd. Vorrichtung, Verfahren und Programm zur Gestenerkennung
US8072470B2 (en) 2003-05-29 2011-12-06 Sony Computer Entertainment Inc. System and method for providing a real-time three-dimensional interactive environment
US7372977B2 (en) 2003-05-29 2008-05-13 Honda Motor Co., Ltd. Visual tracking using depth data
US7620202B2 (en) 2003-06-12 2009-11-17 Honda Motor Co., Ltd. Target orientation estimation using depth sensing
US7747067B2 (en) * 2003-10-08 2010-06-29 Purdue Research Foundation System and method for three dimensional modeling
US7536032B2 (en) 2003-10-24 2009-05-19 Reactrix Systems, Inc. Method and system for processing captured image information in an interactive video display system
CN100573548C (zh) 2004-04-15 2009-12-23 格斯图尔泰克股份有限公司 跟踪双手运动的方法和设备
US7308112B2 (en) 2004-05-14 2007-12-11 Honda Motor Co., Ltd. Sign based human-machine interaction
US7704135B2 (en) 2004-08-23 2010-04-27 Harrison Jr Shelton E Integrated game system, method, and device
KR20060070280A (ko) 2004-12-20 2006-06-23 한국전자통신연구원 손 제스처 인식을 이용한 사용자 인터페이스 장치 및 그방법
EP3693889A3 (en) 2005-01-07 2020-10-28 QUALCOMM Incorporated Detecting and tracking objects in images
JP2008537190A (ja) 2005-01-07 2008-09-11 ジェスチャー テック,インコーポレイテッド 赤外線パターンを照射することによる対象物の三次元像の生成
EP1849123A2 (en) 2005-01-07 2007-10-31 GestureTek, Inc. Optical flow based tilt sensor
JP5631535B2 (ja) 2005-02-08 2014-11-26 オブロング・インダストリーズ・インコーポレーテッド ジェスチャベースの制御システムのためのシステムおよび方法
US7317836B2 (en) 2005-03-17 2008-01-08 Honda Motor Co., Ltd. Pose estimation based on critical point analysis
KR101430761B1 (ko) 2005-05-17 2014-08-19 퀄컴 인코포레이티드 방위-감응 신호 출력
EP1752748B1 (en) 2005-08-12 2008-10-29 MESA Imaging AG Highly sensitive, fast pixel for use in an image sensor
US20080026838A1 (en) 2005-08-22 2008-01-31 Dunstan James E Multi-player non-role-playing virtual world games: method for two-way interaction between participants and multi-player virtual world games
US7450736B2 (en) 2005-10-28 2008-11-11 Honda Motor Co., Ltd. Monocular tracking of 3D human motion with a coordinated mixture of factor analyzers
US7701439B2 (en) 2006-07-13 2010-04-20 Northrop Grumman Corporation Gesture recognition simulation system and method
JP5395323B2 (ja) 2006-09-29 2014-01-22 ブレインビジョン株式会社 固体撮像素子
US7412077B2 (en) 2006-12-29 2008-08-12 Motorola, Inc. Apparatus and methods for head pose estimation and head gesture detection
US7729530B2 (en) 2007-03-03 2010-06-01 Sergey Antonov Method and apparatus for 3-D data input to a personal computer with a multimedia oriented operating system
US7852262B2 (en) 2007-08-16 2010-12-14 Cybernet Systems Corporation Wireless mobile indoor/outdoor tracking system
KR101327791B1 (ko) * 2007-09-11 2013-11-20 삼성전자주식회사 영상 매칭 장치 및 방법
EP2240798B1 (en) 2008-01-30 2016-08-17 Heptagon Micro Optics Pte. Ltd. Adaptive neighborhood filtering (anf) system and method for 3d time of flight cameras
CN101254344B (zh) 2008-04-18 2010-06-16 李刚 场地方位与显示屏点阵按比例相对应的游戏装置和方法
US8265425B2 (en) 2008-05-20 2012-09-11 Honda Motor Co., Ltd. Rectangular table detection using hybrid RGB and depth camera sensors
KR101467509B1 (ko) 2008-07-25 2014-12-01 삼성전자주식회사 이미지 센서 및 이미지 센서 동작 방법
US8548270B2 (en) 2010-10-04 2013-10-01 Microsoft Corporation Time-of-flight depth imaging

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5193124A (en) * 1989-06-29 1993-03-09 The Research Foundation Of State University Of New York Computational methods and electronic camera apparatus for determining distance of objects, rapid autofocusing, and obtaining improved focus images
US5764871A (en) * 1993-10-21 1998-06-09 Eastman Kodak Company Method and apparatus for constructing intermediate images for a depth image from stereo images using velocity vector fields
CN1196545A (zh) * 1995-02-28 1998-10-21 伊斯曼柯达公司 由立体图像构成深度图像的中间图像的方法和装置
JP2001209822A (ja) * 2000-01-28 2001-08-03 Square Co Ltd 3次元コンピュータ画像処理のプログラムを記録したコンピュータ読み取り可能な記録媒体およびぼかし描画処理方法およびビデオゲーム装置
US7031512B2 (en) * 2002-04-18 2006-04-18 Stmicroelectronics, Inc. Method and system for 3D smoothing within the bound of error regions of matching curves
US20070018977A1 (en) * 2005-07-25 2007-01-25 Wolfgang Niem Method and apparatus for generating a depth map
CN101556696A (zh) * 2009-05-14 2009-10-14 浙江大学 基于阵列摄像机的深度图实时获取算法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104603676B (zh) * 2012-08-14 2017-04-12 微软公司 飞行时间深度相机
CN104603676A (zh) * 2012-08-14 2015-05-06 微软公司 深度相机的照明光整形
CN104024789A (zh) * 2012-10-23 2014-09-03 Lsi公司 用于深度成像器的光源驱动器电路
CN105026955A (zh) * 2012-12-28 2015-11-04 诺基亚技术有限公司 用于对来自距离感应相机的数据进行降噪的方法和装置
US10003757B2 (en) 2012-12-28 2018-06-19 Nokia Technologies Oy Method and apparatus for de-noising data from a distance sensing camera
US10063844B2 (en) 2013-10-17 2018-08-28 Microsoft Technology Licensing, Llc. Determining distances by probabilistic time of flight imaging
CN105723238A (zh) * 2013-10-17 2016-06-29 微软技术许可有限责任公司 概率飞行时间成像
CN104811682B (zh) * 2014-01-23 2017-04-12 钰立微电子股份有限公司 产生深度信息的装置、产生深度信息的方法和立体摄像机
CN104811682A (zh) * 2014-01-23 2015-07-29 钰创科技股份有限公司 产生深度信息的装置、产生深度信息的方法和立体摄像机
CN107278272A (zh) * 2015-03-27 2017-10-20 英特尔公司 时空压缩飞行时间成像技术
CN110415287A (zh) * 2019-07-11 2019-11-05 Oppo广东移动通信有限公司 深度图的滤波方法、装置、电子设备和可读存储介质
CN110415287B (zh) * 2019-07-11 2021-08-13 Oppo广东移动通信有限公司 深度图的滤波方法、装置、电子设备和可读存储介质
CN110807811A (zh) * 2019-09-20 2020-02-18 炬佑智能科技(苏州)有限公司 对不同反射率物体的深度补偿方法及tof相机
CN110749902A (zh) * 2019-10-09 2020-02-04 深圳奥锐达科技有限公司 一种基于时间分段的3d成像系统及成像方法

Also Published As

Publication number Publication date
CN102520574B (zh) 2014-10-29
US20140002611A1 (en) 2014-01-02
US20120082346A1 (en) 2012-04-05
US8983233B2 (en) 2015-03-17
US8548270B2 (en) 2013-10-01

Similar Documents

Publication Publication Date Title
CN102520574B (zh) 飞行时间深度成像
CN102163324B (zh) 深度图像的去混叠
US9972137B2 (en) Systems and methods for augmented reality preparation, processing, and application
CN102306051B (zh) 复合姿势-语音命令
EP3603055B1 (en) Depth sensing techniques for virtual, augmented, and mixed reality systems
CN102681293B (zh) 具有折射光学元件的照明器
US8279418B2 (en) Raster scanning for depth detection
US8553934B2 (en) Orienting the position of a sensor
KR101881620B1 (ko) 게임플레이에서의 3차원 환경 모델 사용
US8602887B2 (en) Synthesis of information from multiple audiovisual sources
CN107851178A (zh) 基于多个表面模型的混合三维场景重构
CN102184531A (zh) 深度图置信过滤
US20110234481A1 (en) Enhancing presentations using depth sensing cameras
US20110109617A1 (en) Visualizing Depth
US20110221755A1 (en) Bionic motion
US20130129224A1 (en) Combined depth filtering and super resolution
TW201246088A (en) Theme-based augmentation of photorepresentative view
CN102681657A (zh) 交互式内容创建
CN105705964A (zh) 发射结构化光的照射模块
CN102222347A (zh) 使用波阵面编码来创建深度图像
CN102622774A (zh) 起居室电影创建
CN109255749A (zh) 自主和非自主平台中的地图构建优化
Marton et al. Natural exploration of 3D massive models on large-scale light field displays using the FOX proximal navigation technique

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150428

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150428

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.