CN117321632A - 利用立体视觉和相位检测自动对焦(pdaf)的不同深度确定 - Google Patents
利用立体视觉和相位检测自动对焦(pdaf)的不同深度确定 Download PDFInfo
- Publication number
- CN117321632A CN117321632A CN202280035574.5A CN202280035574A CN117321632A CN 117321632 A CN117321632 A CN 117321632A CN 202280035574 A CN202280035574 A CN 202280035574A CN 117321632 A CN117321632 A CN 117321632A
- Authority
- CN
- China
- Prior art keywords
- pdaf
- depth value
- depth
- optical sensor
- feature
- 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.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 12
- 230000003287 optical effect Effects 0.000 claims abstract description 131
- 238000000034 method Methods 0.000 claims abstract description 37
- 230000004044 response Effects 0.000 claims description 15
- 230000008901 benefit Effects 0.000 abstract description 4
- 238000004891 communication Methods 0.000 description 38
- 238000012545 processing Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- CDBYLPFSWZWCQE-UHFFFAOYSA-L Sodium Carbonate Chemical compound [Na+].[Na+].[O-]C([O-])=O CDBYLPFSWZWCQE-UHFFFAOYSA-L 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 230000036760 body temperature Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 239000000356 contaminant Substances 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- GVVPGTZRZFNKDS-JXMROGBWSA-N geranyl diphosphate Chemical compound CC(C)=CCC\C(C)=C\CO[P@](O)(=O)OP(O)(O)=O GVVPGTZRZFNKDS-JXMROGBWSA-N 0.000 description 1
- 229910000078 germane Inorganic materials 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 231100001261 hazardous Toxicity 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000008261 resistance mechanism Effects 0.000 description 1
- 230000004266 retinal recognition Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/222—Studio circuitry; Studio devices; Studio equipment
- H04N5/2224—Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
- H04N5/2226—Determination of depth image, e.g. for foreground/background separation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/571—Depth or shape recovery from multiple images from focus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/45—Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/67—Focus control based on electronic image sensor signals
- H04N23/672—Focus control based on electronic image sensor signals based on the phase difference signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20004—Adaptive image processing
- G06T2207/20008—Globally adaptive
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
公开了用于使用立体视觉和相位检测自动对焦(PDAF)的不同深度确定的系统、方法以及非暂态计算机可读介质。计算机立体视觉(立体视觉)用于从数字图像中提取三维信息。为了利用立体视觉,两个光学传感器彼此水平移位,并且用于从两个不同的观察点捕获描绘现实世界环境的两个不同视图的图像。通过比较两个图像中的对象的相对位置,使用三角测量确定图像中捕获的对象的相对深度。例如,使用在捕获的图像中识别的匹配对象(如特征)的相对位置以及光学传感器的已知取向(如光学传感器之间的距离、光学传感器的观察点)来估计对象的深度。
Description
相关申请
本申请要求2021年5月18日提交的美国临时专利申请序列第63/190,126号的优先权的权益。
技术领域
本主题的实施方式总体涉及确定深度数据,并且更具体地,涉及使用立体视觉和PDAF的不同深度确定。
背景技术
计算机立体视觉允许从数字图像中提取三维信息。使用彼此水平移位的两个摄像装置来捕获图像,以从两个不同的观察点描绘场景的两个不同视图。通过比较对象在两个图像中的相对位置来确定图像中捕获的对象的相对深度。例如,可以使用摄像装置的已知距离和观察点与对象的相对位置一起来估计对象的深度。
附图说明
在附图(其不一定按比例绘制)中,相同的附图标记可以在不同的视图中描述类似的部件。具有不同字母后缀的相同附图标记可以表示类似部件的不同实例。在附图的各个图中以示例而非限制的方式示出了一些实施方式,在附图中:
图1示出了根据一些示例实施方式的用于使用立体视觉和PDAF的不同深度确定的系统的框图。
图2是根据一些示例实施方式的不同深度确定系统的框图。
图3是根据一些示例实施方式的用于使用立体视觉和PDAF的不同深度确定的方法的流程图。
图4是示出根据一些示例实施方式的能够从机器可读介质(例如,机器可读存储介质)读取指令并且执行本文中讨论的方法中的任何一种或更多种方法的机器的部件的框图。
图5是示出根据一些示例实施方式的能够从机器可读介质(例如,机器可读存储介质)读取指令并且执行本文中讨论的方法中的任何一种或更多种方法的机器的部件的框图。
具体实施方式
在以下描述中,出于说明的目的,阐述了各种细节以便提供对一些示例实施方式的透彻理解。然而,对于本领域技术人员将明显的是,可以在没有这些具体细节的情况下或者在具有微小改变的情况下实践本主题。
在说明书中对“一个实施方式”或“实施方式”的引用意指结合该实施方式描述的特定特征、结构,或特性被包括在本主题的至少一个实施方式中。因此,在整个说明书的各个地方出现的短语“在一个实施方式中”或“在实施方式中”的出现不一定都指代同一实施方式。
出于说明的目的,阐述了具体配置和细节以提供对本主题的透彻理解。然而,对于本领域普通技术人员将明显的是,可以在没有本文呈现的具体细节的情况下或者以如本文中所描述的各种组合的方式来实践所描述的主题的实施方式。此外,可以省略或简化公知的特征以免使所描述的实施方式模糊。在整个说明书中可以给出各种示例。这些示例仅是对特定实施方式的描述。权利要求的范围或含义不限于所给出的示例。
本文中使用术语“增强现实”(AR)以指代现实世界环境中的交互体验,其中存在于现实世界中的物理对象被计算机生成的数字内容(也称为虚拟内容或合成内容)“增强”或加强。AR也可以指能够将现实和虚拟世界、实时交互以及虚拟和现实对象的三维配准结合的系统。AR系统的用户感知好似与现实世界中的物理对象附接或互连的虚拟内容。
所公开的是用于使用立体视觉和PDAF的不同深度确定的系统、方法和非暂态计算机可读介质。计算机立体视觉(立体视觉)用于从数字图像中提取三维信息。为了利用立体视觉,两个光学传感器彼此水平移位,并且被用于从两个不同的观察点捕获描绘现实世界环境的两个不同视图的图像。通过比较两个图像中对象的相对位置,使用三角测量确定图像中捕获的对象的相对深度。例如,使用在捕获的图像中识别的匹配对象(如特征)的相对位置以及光学传感器的已知取向(如光学传感器之间的距离、光学传感器的观察点)来估计对象的深度。
然而,计算机立体视觉在某些情况下例如当对象与光学传感器非常接近时存在技术限制。在这种情况下,用于识别每个图像中的对象的搜索范围会扩大,导致计算资源使用量增加以及与确定对象深度相关联的延迟。在某些情况下,距离较近的对象的特征可能无法简单地被两个摄像装置可见,这种情况被称为遮挡。由于摄像装置的变化的观察点,计算机立体视觉在检测对象的某些形状时也会表现不佳。例如,由于每个摄像装置的变化的观察点,圆柱体的边缘可能通过每个摄像装置看上去在不同的位置处。因此,需要进行改进。
为了减轻立体视觉的缺点,深度确定系统可以使用立体视觉和PDAF二者的结合来确定深度数据。PDAF在某些情况下例如与对象距离较近时提供比立体视觉更好的性能。因此,深度确定系统通常可以使用立体视觉来确定深度数据,而在PDAF性能更好的情况下,则转而使用PDAF来确定深度数据。例如,在对象与光学传感器距离较近时以及/或者使用立体视觉时对象的形状可能导致特征被检测处于在不同位置时,可以使用PDAF。
深度确定系统基于使用PDAF确定的深度值(PDAF深度值)和阈值来确定使用立体视觉还是PDAF。PDAF深度值指示光学传感器检测到的对象的深度。深度确定系统将PDAF深度值与阈值进行比较,以确定使用PDAF深度值确定对象的深度,还是替选地使用立体视觉确定对象的深度。如果PDAF深度值小于阈值(例如,对象距离较近),深度确定系统输出PDAF深度值作为对象的深度。替选地,如果PDAF深度值达到或超过阈值(例如,对象不是距离较近),深度确定系统使用立体视觉来确定指示对象深度的立体深度值。
在一些实施方式中,深度确定系统确定立体深度值是否正确地识别对象的深度。例如,深度确定系统基于光学传感器的已知观察点确定对象(例如,对象的特征)在每个图像中的位置是否出现在预期位置处。对象没有出现在图像中的预期位置处的确定指示对象的形状可能导致特征被检测到处于基于光学传感器的观察点的不同位置处。在这种类型的实施方式中,当对象在每个图像中的位置出现在预期位置处时,深度确定系统输出立体深度值作为对象的深度。替选地,当对象在每个图像中的位置未出现在预期位置处时,深度确定系统输出PDAF深度值作为对象的深度。
图1示出了根据一些示例实施方式的使用立体视觉和PDAF进行不同深度确定的AR装置100的框图。AR装置100提供了增强用户的现实世界环境的功能。例如,AR装置100允许用户与虚拟内容一起观察用户物理环境中的现实世界对象,以增强用户的环境。虚拟内容可以为用户提供描述用户周围物理环境的数据,例如呈现描述附近商业、提供方向、显示天气信息等的数据。
虚拟内容可以基于物理对象在用户现实世界环境中的距离和取向被呈现给用户。例如,虚拟内容可以被呈现为看上去被叠加在相邻于有关虚拟内容的现实世界对象上。作为示例,描述商业的虚拟内容可以被呈现为看上去叠加至其所描述的商业或与其所描述的商业相邻。作为另一个示例,提供至目的地的方向的虚拟内容可以被呈现为看上去与用户到达目的地要遵循的路径(例如,街道、地面)叠加。
在一些实施方式中,AR装置100可以是与虚拟内容一起呈现用户物理环境的实时图像的移动装置,例如智能手机或平板电脑。替选地,AR装置100可以是允许在用户视线范围内呈现虚拟内容,从而允许用户同时观察虚拟内容和现实世界环境二者的可穿戴装置例如头盔或眼镜。例如,AR装置100可以包括一个或更多个透明或半透明显示透镜,其向用户显示由AR装置100生成的虚拟内容虚拟内容,同时还允许用户通过显示透镜观察现实世界环境。
如图所示,AR装置100包括左光学传感器102、右光学传感器104和显示器106,左光学传感器102、右光学传感器104和显示器106经由通信链路110连接至AR处理系统108并被配置成与AR处理系统108通信。通信链路110可以是实体的或无线的。例如,通信链路110可以包括将左光学传感器102、右光学传感器104和显示器106连接至AR系统108的实体布线或线缆。替选地,通信链路110可以是通过使用无线通信协议如蓝牙而促成的无线链路。
左光学传感器102、右光学传感器104、显示器106以及AR系统108中的每一个可以包括能够与其他装置进行网络通信的一种或更多种装置。例如,每个装置可以包括图5中示出的机器500的特征、部件和外围装置中的一些或全部。
为了利于与其他装置的通信,每个装置包括通信接口,该通信接口被配置成从与该装置进行通信的另一装置接收诸如请求、数据等的通信并且将该通信传递至在该装置上运行的适当的模块或部件。通信接口还向与装置进行通信的另一装置发送通信。
左光学传感器102和右光学传感器104可以是能够捕获图像数据的任何类型的传感器。例如,左光学传感器102和右光学传感器104可以是配置成捕获图像和/或视频的摄像装置、检测辐射的红外(IR)传感器等。左光学传感器102和/或右光学传感器104还可以包括用于捕获深度数据的PDAF感测部件。替选地,在某些实施方式中,AR装置100可以包括单独的PDAF传感器。左光学传感器102和右光学传感器104捕获的数据(例如图像、深度数据)经由通信链路108被提供至AR处理系统108。
为了允许立体视觉的使用,左光学传感器102和右光学传感器104彼此水平移位,以从两个不同的观察点捕获描绘现实世界环境的两个不同视图的图像。AR装置100内的光学传感器102和104的取向被校准,以提供两个光学传感器102和104之间的已知图像转换。图像转换是将像素在一个图像中的位置映射到像素在相应图像中的相应位置的函数。
为了使图像转换能够适当地在图像之间映射像素的位置,光学传感器102和104被定位在彼此相距预定的距离处,并且被对准以捕获特定的观察点。每个光学传感器102、104的观察点指示光学传感器102、104所捕获的视场和焦点。光学传感器102、104之间的已知距离和每个光学传感器102、104的已知观察点可以被用于计算光学传感器102、104中的每一个所捕获的图像之间的转换。
显示器106可以是能够呈现虚拟内容的各种类型显示器中的任何一种。例如,显示器106可以是可以在其上将虚拟内容与用户物理环境的图像同时呈现的监视器或屏幕。替选地,显示器106可以是允许用户通过显示器106观察显示器106呈现的虚拟内容以及用户视线范围内呈现的现实世界对象的透明显示器。
AR处理系统108被配置成提供AR功能,以增强用户的现实世界环境。AR处理系统108使用由光学传感器102、104捕获的图像来识别和确定周围现实世界环境中现实对象的位置(例如深度、方向)。AR处理系统108基于周围现实世界对象的物理位置生成虚拟内容并且使该虚拟内容在显示器106上呈现,以增强用户的现实世界环境。
AR处理系统108使用由光学传感器102、104捕获的传感器数据(例如,图像、深度数据)来确定图像中描绘的物理对象相对于AR装置100的深度。AR处理系统108使用所确定的对象的深度来生成虚拟内容。例如,可以使用对象的深度来确定虚拟内容的适当大小,以提供虚拟内容被适当地叠加在物理对象上的错觉。
如前所述,立体视觉在某些情况下表现不佳,例如当对象与光学传感器102、104距离较近以及/或者对象的形状可能导致特征基于光学传感器102、104的观察点被检测到在不同位置处时。为了减轻立体视觉的缺点,AR处理系统108使用深度确定系统112的功能,深度确定系统112允许使用立体视觉和PDAF二者的结合来确定深度数据。在某些情况下,如对象距离较近时,PDAF比立体视觉具有更好的性能。因此,深度确定系统112一般可以使用立体视觉来确定深度数据,而在PDAF性能更好的情况下,则转而使用PDAF来确定深度数据。例如,当对象与光学传感器102、104距离较近以及/或者对象的形状可能导致特征在使用立体视觉时被检测到在不同位置处时,可以使用PDAF。
深度确定系统112基于使用PDAF确定的深度值(PDAF深度值)和阈值确定使用立体视觉还是PDAF。PDAF深度值指示光学传感器102、104检测到的对象的深度。深度确定系统112将PDAF深度值与阈值进行比较,以确定是否使用PDAF深度值确定对象的深度,或者替选地,使用立体视觉确定对象的深度。如果PDAF深度值小于阈值(例如,对象距离较近),深度确定系统112输出PDAF深度值作为对象的深度。替选地,如果PDAF深度值达到或超过阈值(例如,对象不是距离较近),深度确定系统112使用立体视觉确定指示对象深度的立体深度值。
在一些实施方式中,深度确定系统112确定立体深度值是否正确地识别对象的深度。例如,深度确定系统112基于光学传感器的已知观察点确定对象(例如,对象的特征)在每个图像中的位置是否看上去在预期位置处。对象没有看上去在图像中的预期位置处的确定指示对象的形状可能导致特征基于光学传感器的观察点被检测到在不同位置处。在这种类型的实施方式中,如果确定对象在每个图像中的位置位于预期位置处,深度确定系统112输出立体深度值作为对象的深度。替选地,如果对象在每个图像中的位置不在预期位置处,深度确定系统输出PDAF深度值作为对象的深度。
图2是根据一些示例实施方式的深度确定系统112的框图。为了避免不必要的细节模糊本发明主题,图2中省略了与传达对发明性主题的理解没有密切关系的各种功能部件(例如,模块)。然而,技术人员将容易认识到,深度确定系统112可以支持各种附加功能部件,以促进本文未具体描述的附加功能。此外,图2中描绘的各种功能模块可以驻留在单个计算装置上,或者可以以各种布置(例如,在基于云的架构中使用的布置)跨若干计算装置分布。
如所示出的,深度确定系统112包括传感器数据访问部件202、PDAF深度值确定部件204、深度阈值比较部件206、立体视觉深度值确定部件208、置信度得分确定部件210、置信度阈值比较部件212以及输出部件214。
传感器数据访问部件202从左光学传感器102和右光学传感器104访问传感器数据。传感器数据可以包括由左光学传感器102和右光学传感器104捕获的PDAF深度数据以及图像。PDAF深度数据指示光学传感器102和104检测到的对象的深度。光学传感器102、104可以包括允许使用PDAF确定深度数据的内部PDAF感测部件。替选地,光学传感器102、104可以包括用于捕获PDAF数据的单独的PDAF传感器。
图像包括由左光学传感器102和右光学传感器104捕获到的对应图像。对应图像是由两个光学传感器102、104在大致相同的时间捕获的两个图像的对。光学传感器102和104捕获到的对应图像可以被用于使用计算机立体视觉确定深度数据。为了利用计算机立体视觉,两个光学传感器102、104彼此水平移位,并且被用于捕获从两个不同观察点描绘现实世界环境的两个不同视图的图像。因此,由图像访问部件202访问的对应图像从捕获相应图像的光学传感器102、104的观察点描绘AR装置100的物理环境。例如,来自由左光学传感器102捕获的对应图像中的图像从左光学传感器102的观察点描绘物理环境,并且来自由右光学传感器104捕获的图像从左光学传感器104的观察点描绘物理环境。
传感器访问部件202可以直接或经由AP处理系统108访问来自左光学传感器102和右光学传感器104的传感器数据(例如,图像、PDAF深度数据)。例如,左光学传感器102和右光学传感器104可以使用通信链路110直接向传感器数据访问部件202提供传感器数据。作为另一个示例,左光学传感器102和右光学传感器104可以将传感器数据提供至AR处理系统108,然后AR处理系统108将传感器数据提供至传感器数据访问部件202,或将传感器数据存储在存储器中,传感器数据访问部件202可以从存储器中访问传感器数据。传感器数据访问部件202将访问的传感器数据提供至深度确定系统112的其他部件。
PDAF深度值确定部件204基于从光学传感器102、104接收到的深度数据确定PDAF深度值。PDAF深度值指示使用PDAF确定的由光学传感器102、104检测到的对象的深度。PDAF深度值确定部件204可以以多种方式确定PDAF深度值。例如,在某些实施方式中,PDAF深度值确定部件204可以简单地使用从光学传感器102、104之一接收到的PDAF深度数据作为PDAF深度值。作为另一个示例,PDAF深度值确定部件204可以通过对从每个光学传感器102、104接收到的PDAF深度数据进行平均来确定PDAF深度值。例如,PDAF深度值确定部件204可以基于从其中一个光学传感器102接收到的PDAF深度数据确定PDAF深度值,并基于从另一个光学传感器104接收到的PDAF深度数据确定另一个PDAF深度值。然后,PDAF深度值确定部件204可以通过对使用从每个光学传感器接收的PDAF深度数据确定的两个PDAF深度值进行平均来确定PDAF深度值。在任何情况下,PDAF深度值确定部件204将得到的PDAF深度值提供至深度阈值比较部件206。
深度阈值比较部件206将PDAF深度值与阈值深度值进行比较。阈值深度值可以是表示被认为与AR装置100距离较近的对象所处的深度的预定值。如前所述,当对象距离较近时,立体视觉的表现并不好。深度阈值比较部件206将PDAF深度值与阈值深度值进行比较,以确定检测到的对象是否与AR装置100距离较近。如果PDAF深度值小于阈值深度值,则认为该对象与AR装置100距离较近,而如果PDAF深度值达到(例如,大于或等于)阈值深度值,则认为该对象没有与AR装置100距离较近。
深度阈值比较部件206基于比较结果更新深度确定系统112的其他部件。例如,如果确定PDAF深度值小于阈值深度值,深度阈值比较部件206通知输出部件214。在这种情况下,PDAF深度值被用作对象的深度,因为对象被确定为与AR装置100距离较近。替选地,如果PDAF深度值达到阈值深度值,则深度阈值比较部件206通知立体视觉深度值确定部件208。
立体视觉深度值确定部件208使用立体视觉确定立体视觉深度值。立体视觉深度值指示对象的深度。在使用立体视觉时,两个光学传感器102、104彼此水平移位,并且被用于捕获从两个不同观察点描绘现实世界环境的两个不同视图的图像。通过比较两个图像中的对象的相对位置,使用三角测量确定图像中捕获的对象的相对深度。例如,使用在捕获的图像中识别的匹配对象(如特征)的相对位置以及光学传感器的已知取向(如光学传感器之间的距离、光学传感器的观察点)来估计对象的深度。
因此,立体视觉深度值确定部件208使用光学传感器102、104捕获的对应图像来确定检测到的对象的立体视觉深度值。例如,立体视觉深度值确定部件208使用特征检测来检测图像中的每一个中的对象(例如,对象的特征),然后使用三角测量来确定对象的深度。基于匹配特征在各个图像中的位置和光学传感器102、104的已知取向来确定三角测量。
在某些情况下,即使对象不与AR装置100距离较近,立体视觉也可能表现不佳。例如,某些对象的形状可能会导致特征通过两个光学传感器102、104被检测到在不同的位置处。作为具体的示例,圆柱形对象(如汽水罐)的边缘可能被光学传感器102、104中的每一个基于各自不同的观察点检测到在两个不同的位置处。在这种情况下,立体视觉深度值可能不如PDAF深度值准确。
为确保立体深度值提供深度的更准确的表示,置信度得分确定部件210确定指示立体深度值比PDAF深度值更准确的置信度水平的置信度得分。置信度得分确定部件210基于匹配特征在用于确定立体深度值的两个图像中的位置确定置信度得分。例如,置信度得分确定部件210使用特征在一个或两个图像中的已知位置来确定特征在另一个图像中的预期位置。
特征的真实位置指示图像中描绘特征的位置。例如,真实位置可以被表示为描述图像中描绘特征的像素的位置的坐标。特征的预期位置指示基于特征在匹配图像中的已知位置和两个光学传感器102、104的已知取向(例如,两个光学传感器102、104的观察点和两个光学传感器102、104之间的距离),在图像中特征应被描绘的位置。
置信度得分确定部件210基于诸如左右一致匹配的方法确定像素的置信度得分。该方法通过使用左右视差图计算像素重新投影的位置的差来确定置信度。原始像素与重新投影的特征之间的小的距离指示高的置信度,并且大的距离指示低的置信度。
置信度得分确定部件210将置信度得分提供至置信度阈值比较部件212。置信度阈值比较部件212将置信度得分与阈值置信度得分进行比较。阈值置信度得分可以是指示在其处与立体视觉深度值相比PDAF深度值可以提供更高的准确度的点的预定值。例如,低于阈值置信度得分的置信度得分指示与立体视觉深度值相比PDAF深度值提供更高的准确度,而达到(例如,大于或等于)阈值置信度得分的置信度得分指示与PDAF深度值相比立体视觉深度值提供更高的准确度。
置信度阈值比较部件212基于比较向输出部件214提供通知。例如,通知指示置信度得分是达到阈值置信度得分还是小于阈值置信度得分。
输出部件214向AR处理系统108提供指示对象的深度的输出。输出部件214可以基于深度确定系统的其他部件的确定,输出PDAF深度值或立体深度值作为对象的深度。例如,如果确定PDAF深度值小于阈值深度值或确定置信度得分小于阈值置信度得分,则输出部件214输出PDAF深度值。相反,如果确定PDAF深度值达到阈值深度值,并且确定置信度得分达到阈值置信度得分,则输出部件214输出立体视觉深度值。
图3是根据一些示例实施方式的用于使用立体视觉和PDAF进行不同深度确定的方法300的流程图。方法300可以在计算机可读指令中实现,计算机可读指令由一个或更多个计算机处理器执行,使得方法300的操作可以由深度确定系统112部分地或整体地执行;因此,下面参考深度确定系统112以示例的方式对方法300进行描述。然而,应当理解,方法300的至少一些操作可以被部署在各种其他硬件和/或配置上,并且方法300不旨在限于深度确定系统112。
在操作302处,PDAF深度值确定部件204确定指示对象的深度的PDAF深度值。PDAF深度值确定部件204根据从光学传感器102、104接收到的深度数据确定PDAF深度值。PDAF深度值指示如使用PDAF所确定的由光学传感器102、104检测到的对象的深度。PDAF深度值确定部件204可以以多种方式确定PDAF深度值。例如,在某些实施方式中,PDAF深度值确定部件204可以简单地使用从光学传感器102、104之一接收到的DPAF深度数据作为PDAF深度值。作为另一个示例,PDAF深度值确定部件204可以通过对从每个光学传感器102、104接收到的PDAF深度数据进行平均来确定PDAF深度值。在任何情况下,PDAF深度值确定部件204将得到的PDAF深度值提供至深度阈值比较部件206。
在操作304处,深度阈值比较部件206确定PDAF深度值是否达到阈值深度值。阈值深度值可以是表示对象被认为与AR装置100距离较近的深度的预定值。如前所述,当对象距离较近时,立体视觉的表现并不好。深度阈值比较部件206将PDAF深度值与阈值深度值进行比较,以确定检测到的对象是否与AR装置100距离较近。如果PDAF深度值小于阈值深度值,则认为该对象与AR装置100距离较近,而如果PDAF深度值达到(例如,大于或等于)阈值深度值,则认为该对象没有AR装置100距离较近。
如果深度确定系统112确定PDAF深度值小于阈值深度值,则在操作314处,输出部件214输出PDAF深度值。例如,输出部件214将PDAF深度值提供至AR处理系统108,以指示对象的深度。
替选地,如果深度确定系统112确定PDAF深度值达到(例如,大于或等于)阈值深度值,则在操作306处,立体视觉深度值确定部件208确定立体视觉深度值。立体视觉深度值确定部件208使用立体视觉确定立体视觉深度值。立体视觉深度值指示对象的深度。使用立体视觉时,彼此水平移位的两个光学传感器102、104被用于捕获从两个不同的观察点描绘现实世界环境的两个不同视图的图像。通过比较对象在两个图像中的相对位置,使用三角测量确定图像中捕获的对象的相对深度。例如,结合光学传感器的已知取向(如光学传感器之间的距离、光学传感器的观察点)使用捕获的图像中识别的匹配对象(如特征)的相对位置以及来估计对象的深度。
因此,立体视觉深度值确定部件208使用光学传感器102、104捕获的对应图像来确定所检测的对象的立体视觉深度值。例如,立体视觉深度值确定部件208使用特征检测来检测图像中的每一个中的对象(例如,对象的特征),然后使用三角测量来确定对象的深度。基于匹配特征在图像中的每一个中的位置和光学传感器102、104的已知取向来确定三角测量。
在操作308处,置信度得分确定部件210确定置信度得分。置信度得分指示与PDAF深度值相比立体深度值更准确的置信度水平。置信度得分确定部件210基于诸如左右一致匹配的方法确定像素的置信度得分。该方法通过使用左右视差图计算像素的重新投影的位置的差来确定置信度。原始像素与重新投影的特征之间的小的距离指示高的置信度,并且大的距离指示低的置信度。
特征的真实位置指示图像中特征被描绘的位置。例如,真实位置可以被表示为描述图像中描绘特征的像素的位置的坐标。特征的预期位置指示基于特征在匹配图像中的已知位置和两个光学传感器102、104的已知取向(例如,两个光学传感器102、104的观察点和两个光学传感器102、104的之间的距离),在图像中特征应被描绘的位置。
置信度得分确定部件210基于诸如左右一致匹配的方法确定像素的置信度得分。该方法通过使用左右视差图计算像素的重新投影的位置的差来确定置信度。原始像素与重新投影的特征之间的小的距离指示高的置信度,并且大的距离指示低的置信度。
在操作310处,置信度阈值比较部件212确定置信度得分是否达到阈值置信度得分。阈值置信度得分可以是指示在其处与立体视觉深度值相比PDAF深度值可以提供更高的准确度的点的预定值。例如,低于阈值置信度得分的置信度得分指示与立体视觉深度值相比PDAF深度值提供更高的准确度,而达到(例如,大于或等于)阈值置信度得分的置信度得分指示与PDAF深度值相比立体视觉深度值提供更高的准确度。
如果置信度得分被确定小于阈值置信度得分,则在操作314处,输出部件214输出PDAF深度值。例如,输出部件214将PDAF深度值提供至AR处理系统108,以指示对象的深度。
替选地,如果置信度得分被确定达到阈值置信度得分,则在操作312处,输出部件214输出立体视觉深度值。例如,输出部件214将立体视觉深度值提供至AR处理系统108,以指示对象的深度。
软件架构
图4是示出示例软件架构406的框图,示例软件架构406可以与本文中描述的各种硬件架构结合使用。图4是软件架构406的非限制性示例并且应当理解,可以实现许多其他架构以促进本文中描述的功能。软件架构406可以在硬件例如图5中的机器500上执行,机器500除了别的以外还包括处理器504、存储器514和(输入/输出)I/O部件518等。代表性硬件层452被示出并且可以表示例如图5中的机器500。代表性硬件层452包括具有相关联的可执行指令404的处理单元454。可执行指令404表示软件架构406的可执行指令,包括本文中描述的方法、部件等的实现。硬件层452还包括存储器和/或存储模块456,存储器和/或存储模块456也具有可执行指令404。硬件层452还可以包括其他硬件458。
在图4的示例架构中,软件架构406可以被概念化为其中每个层提供特定功能的层的堆叠。例如,软件架构406可以包括诸如操作系统402、库420、框架/中间件418、应用416和表示层414的层。在操作上,层内的应用416和/或其他部件可以通过软件堆栈来激活应用编程接口(API)调用408以及响应于API调用408来接收响应例如消息412。所示出的层本质上是表示性的,并且并非所有软件架构都具有所有层。例如,一些移动操作系统或专用操作系统可能不提供框架/中间件418,而其他操作系统可能提供这样的层。其他软件架构可以包括附加层或不同层。
操作系统402可以管理硬件资源并提供公共服务。操作系统402可以包括例如核422、服务424和驱动器426。核422可以充当硬件层与其他软件层之间的抽象层。例如,核422可以负责存储器管理、处理器管理(例如,调度)、部件管理、联网、安全设置等。服务424可以向其他软件层提供其他公共服务。驱动器426负责控制底层硬件或与底层硬件对接。例如,取决于硬件配置,驱动器426包括显示驱动器、摄像装置驱动器、 驱动器、闪存驱动器、串行通信驱动器(例如,通用串行总线(USB)驱动器)、/>驱动器、音频驱动器、电源管理驱动器等。
库420提供由应用416和/或其他部件和/或层使用的公共基础设施。库420提供如下功能,该功能允许其他软件部件以比与底层操作系统402的功能(例如,核422、服务424,和/或驱动器426)直接接口的方式更容易的方式来执行任务。库420可以包括系统库444(例如,C标准库),系统库444可以提供函数例如存储器分配函数、串操纵函数、数学函数等。另外,库420可以包括API库446例如媒体库(例如,支持各种媒体格式例如MPEG4、H.264、MP3、AAC、AMR、JPG、PNG的呈现和操纵的库)、图形库(例如,可以用于在显示器上呈现2D和3D图形内容的OpenGL框架)、数据库库(例如,可以提供各种关系数据库功能的SQLite)、web库(例如,可以提供web浏览功能的WebKit)等。库420还可以包括各种其他库448,以向应用416和其他软件部件/模块提供许多其他API。
框架/中间件418(有时也称为中间件)提供可以由应用416和/或其他软件部件/模块使用的较高级别的公共基础设施。例如,框架/中间件418可以提供各种图形用户界面(GUI)功能、高级资源管理、高级位置服务等。框架/中间件418可以提供可以由应用416和/或其他软件部件/模块使用的广泛的其他API,其中一些API可以专用于特定的操作系统402或平台。
应用416包括内置应用438和/或第三方应用440。代表性内置应用438的示例可以包括但不限于:联系人应用、浏览器应用、书籍阅读器应用、位置应用、媒体应用、消息收发应用和/或游戏应用。第三方应用440可以包括由除特定平台的供应商之外的实体使用ANDROIDTM或IOSTM软件开发工具包(SDK)开发的应用,并且可以是在诸如IOSTM、ANDROIDTM、Phone的移动操作系统或其他移动操作系统上运行的移动软件。第三方应用440可以调用由移动操作系统(例如,操作系统402)提供的API调用408,以促进本文中描述的功能。
应用416可以使用内置操作系统功能(例如,核422、服务424和/或驱动器426)、库420以及框架/中间件418来创建UI以与系统的用户交互。可替选地或另外地,在一些系统中,可以通过表示层例如表示层414发生与用户的交互。在这些系统中,应用/部件“逻辑”可以与应用/部件的与用户交互的方面分开。
图5是示出根据一些示例实施方式的机器500的部件的框图,机器500能够从机器可读介质(例如,机器可读存储介质)中读取指令404并且执行本文中讨论的方法中的任何一种或更多种方法。具体地,图5示出了呈计算机系统的示例形式的机器500的图形表示,在机器500内可以执行用于使机器500执行本文中讨论的方法中的任何一种或更多种方法的指令510(例如,软件、程序、应用、小程序、app或其他可执行代码)。因此,可以使用指令510来实现本文中描述的模块或部件。指令510将通用的未经编程的机器500转换成被编程为以所描述的方式执行所描述和示出的功能的特定机器500。在替选实施方式中,机器500作为独立装置操作或者可以与其他机器耦接(例如,联网)。在联网部署中,机器500可以在服务器客户端网络环境中以服务器机器或客户端机器的身份(capacity)操作,或者在对等(或分布式)网络环境中作为对等机器操作。机器500可以包括但不限于服务器计算机、客户端计算机、PC、平板计算机、膝上型计算机、上网本、机顶盒(STB)、个人数字助理(PDA)、娱乐媒体系统、蜂窝电话、智能电话、移动装置、可穿戴装置(例如,智能手表)、智能家居装置(例如,智能家用电器)、其他智能装置、web家用电器、网络路由器、网络交换机、网络桥接器或能够顺序地或其他方式执行指定要由机器500采取的动作的指令510的任何机器500。此外,虽然仅示出了单个机器500,但是术语“机器”还应被认为包括单独地或联合地执行指令510以执行本文中讨论的方法中的任何一种或更多种方法的机器的集合。
机器500可以包括可以被配置成例如经由总线502彼此通信的处理器504、存储器/存储装置506和I/O部件518。存储器/存储装置506可以包括存储器514例如主存储器或其他存储装置以及存储单元516,处理器504能够例如经由总线502访问存储器514和存储单元516两者。存储单元516和存储器514存储实现本文中描述的方法或功能中的任何一个或更多个方法或功能的指令510。指令510还可以在其被机器500执行期间完全地或部分地驻留在存储器514内、存储单元516内、处理器504中的至少一个处理器内(例如,处理器的高速缓冲存储器内)或其任何合适的组合内。因此,存储器514、存储单元516以及处理器504的存储器是机器可读介质的示例。
I/O部件518可以包括用于接收输入、提供输出、产生输出、传送信息、交换信息、捕获测量结果等的各种部件。包括在特定机器500中的具体I/O部件518将取决于机器的类型。例如,诸如移动电话的便携式机器将很可能包括触摸输入装置或其他这样的输入机构,而无头服务器机器将很可能不包括这样的触摸输入装置。将理解的是,I/O部件518可以包括图5中未示出的许多其他部件。仅出于简化以下讨论的目的,根据功能对I/O部件518进行分组并且分组决不是限制性的。在各种示例实施方式中,I/O部件518可以包括输出部件526和输入部件528。输出部件526可以包括视觉部件(例如,诸如等离子显示面板(PDP)的显示器、发光二极管(LED)显示器、液晶显示器(LCD)、投影仪或阴极射线管(CRT))、声学部件(例如,扬声器)、触觉部件(例如,振动马达、阻力机构)、其他信号发生器等。输入部件528可以包括字母数字输入部件(例如,被配置成接收字母数字输入的键盘、触摸屏;光电键盘(photo-optical keyboard)或其他字母数字输入部件)、基于点的输入部件(例如,鼠标、触摸板、跟踪球、操纵杆、运动传感器或其他指向仪器)、触觉输入部件(例如,物理按钮、提供触摸或触摸手势的位置和/或力的触摸屏或其他触觉输入部件)、音频输入部件(例如,麦克风)等。
在其他示例实施方式中,I/O部件518可以包括生物计量部件530、运动部件534、环境部件536或定位部件538以及各种其他部件。例如,生物计量部件530可以包括用于检测表达(例如,手表达、面部表达、声音表达、身体姿势或眼睛跟踪)、测量生物信号(例如,血压、心率、体温、出汗或脑电波)、识别人(例如,语音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的部件。运动部件534可以包括加速度传感器部件(例如,加速度计)、重力传感器部件、旋转传感器部件(例如,陀螺仪)等。环境部件536可以包括例如照明传感器部件(例如,光度计)、温度传感器部件(例如,检测环境温度的一个或更多个温度计)、湿度传感器部件、压力传感器部件(例如,气压计)、声音传感器部件(例如,检测背景噪声的一个或更多个麦克风)、接近度传感器部件(例如,检测附近对象的红外传感器)、气体传感器(例如,用于检测危险气体的浓度以确保安全或者用于测量大气中的污染物的气体检测传感器)或可以提供与周围物理环境相对应的指示、测量结果或信号的其他部件。定位部件538可以包括位置传感器部件(例如,GPS接收器部件)、海拔传感器部件(例如,检测可以根据其得到海拔的气压的高度计或气压计)、取向传感器部件(例如,磁力计)等。
可以使用各种技术来实现通信。I/O部件518可以包括通信部件540,通信部件540能够进行操作以分别经由耦接524和耦接522将机器500耦接至网络532或装置520。例如,通信部件540可以包括网络接口部件或其他合适的装置以与网络532接口。在其他示例中,通信部件540可以包括有线通信部件、无线通信部件、蜂窝通信部件、近场通信(NFC)部件、部件(例如,/>低能耗)、/>部件以及经由其他形式提供通信的其他通信部件。装置520可以是另一机器或各种外围装置中的任何外围装置(例如,经由USB耦接的外围装置)。
此外,通信部件540可以检测标识符或者可以包括可操作以检测标识符的部件。例如,通信部件540可以包括射频识别(RFID)标签阅读器部件、NFC智能标签检测部件、光学阅读器部件(例如,用于检测诸如通用产品码(UPC)条形码的一维条形码、诸如快速响应(QR)码的多维条形码、Aztec码、数据矩阵(Data Matrix)、数据符号(Dataglyph)、最大码(MaxiCode)、PDF417、超码(Ultra Code)、UCC RSS-2D条形码以及其他光学码的光学传感器)或声学检测部件(例如,用于识别经标记的音频信号的麦克风)。另外,可以经由通信部件540得到各种信息,例如,经由因特网协议(IP)地理位置得到位置、经由信号三角测量得到位置、经由检测可以指示特定位置的NFC信标信号得到位置等。
术语表
该上下文中的“载波信号”是指能够存储、编码或携载由机器500执行的指令510的任何无形介质,并且包括数字或模拟通信信号或其他无形介质以促进这些指令510的通信。可以经由网络接口装置使用传输介质并且利用多个公知的传输协议中的任何一种传输协议来通过网络532发送或接收指令510。
该上下文中的“客户端装置”是指与通信网络532接口以从一个或更多个服务器系统或其他客户端装置获得资源的任何机器500。客户端装置可以是但不限于移动电话、台式计算机、膝上型计算机、PDA、智能电话、平板计算机、超级本、上网本、膝上型计算机、多处理器系统、基于微处理器或可编程的消费电子产品、游戏控制台、STB或用户可以用于访问网络532的任何其他通信装置。
该上下文中的“通信网络”是指网络532的一个或更多个部分,网络532可以是自组织网络、内联网、外联网、虚拟专用网络(VPN)、LAN、无线LAN(WLAN)、WAN、无线WAN(WWAN)、城域网(MAN)、因特网、因特网的一部分、公共交换电话网(PSTN)的一部分、普通老式电话服务(POTS)网络、蜂窝电话网络、无线网络、网络、其他类型的网络或者两个或更多个这样的网络的组合。例如,网络532或网络532的一部分可以包括无线网络或蜂窝网络,并且耦接可以是码分多址(CDMA)连接、全球移动通信系统(GSM)连接或其他类型的蜂窝或无线耦接。在该示例中,耦接可以实现各种类型的数据传输技术中的任何一种,例如单载波无线电传输技术(1xRTT)、演进数据优化(EVDO)技术、通用分组无线电业务(GPRS)技术、增强型数据速率GSM演进(EDGE)技术、包括3G的第三代合作伙伴计划(3GPP)、第四代无线(4G)网络、通用移动电信系统(UMTS)、高速分组接入(HSPA)、全球微波接入互操作性(WiMAX)、长期演进(LTE)标准、由各种标准设置组织定义的其他标准、其他远程协议或其他数据传输技术。
该上下文中的“机器可读介质”是指能够临时或永久地存储指令510和数据的部件、装置或其他有形介质,并且可以包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、缓冲存储器、闪速存储器、光学介质、磁介质、高速缓冲存储器、其他类型的存储装置(例如,可擦除可编程只读存储器(EEPROM))和/或其任何合适的组合。术语“机器可读介质”应当被认为包括能够存储指令510的单个介质或多个介质(例如,集中式或分布式数据库或者相关联的高速缓冲存储器和服务器)。术语“机器可读介质”还应被认为包括能够存储由机器500执行的指令510(例如,代码)的任何介质或多个介质的组合,使得指令510在由机器500的一个或更多个计算机处理器504执行时使机器500执行本文中所描述的方法中的任何一种或更多种方法。相应地,“机器可读介质”是指单个存储装置或装置,以及包括多个存储装置或装置的“基于云”的存储系统或存储网络。术语“机器可读介质”不包括信号本身。
该上下文中的“部件”是指具有由功能或子例程调用、分支点、API或者对特定处理或控制功能提供分区或模块化的其他技术定义的边界的装置、物理实体或逻辑。部件可以经由其接口与其他部件组合以执行机器处理。部件可以是被设计用于与其他部件一起使用的经封装的功能硬件单元并且可以是通常执行相关功能中的特定功能的程序的一部分。部件可以构成软件部件(例如,在机器可读介质上实现的代码)或硬件部件。“硬件部件”是能够执行某些操作的有形单元,并且可以以某种物理方式来配置或布置。在各种示例实施方式中,可以通过软件(例如,应用416或应用部分)将一个或更多个计算机系统(例如,独立计算机系统、客户端计算机系统或服务器计算机系统)或计算机系统的一个或更多个硬件部件(例如,处理器或处理器组504)配置为进行操作以执行如本文中所描述的某些操作的硬件部件。也可以机械地、电子地或其任何合适的组合来实现硬件部件。例如,硬件部件可以包括被永久地配置成执行某些操作的专用电路或逻辑。硬件部件可以是专用处理器,例如现场可编程门阵列(FPGA)或专用集成电路(ASIC)。硬件部件还可以包括通过软件临时配置成执行某些操作的可编程逻辑或电路。例如,硬件部件可以包括由通用处理器504或其他可编程处理器504执行的软件。一旦通过这样的软件进行配置,则硬件部件变成被唯一地定制成执行所配置的功能并且不再是通用处理器504的特定机器500(或机器500的特定部件)。将理解的是,可以出于成本和时间考虑来推动在专用且永久配置的电路中或在临时配置(例如,通过软件配置)的电路中机械地实现硬件部件的决策。相应地,短语“硬件部件”(或者“硬件实现的部件”)应当被理解成包含有形实体,即为被物理构造、永久配置(例如,硬连线)或临时配置(例如,编程)成以某种方式操作或者执行本文中描述的某些操作的实体。考虑硬件部件被临时配置(例如,被编程)的实施方式,无需在任一时刻对硬件部件中的每个硬件部件进行配置或实例化。例如,在硬件部件包括通过软件配置而成为专用处理器的通用处理器504的情况下,可以在不同时间将通用处理器504配置成各自不同的专用处理器(例如,包括不同的硬件部件)。因此,软件对特定一个处理器或多个处理器504进行配置以例如在一个时刻构成特定硬件部件并且在不同时刻构成不同的硬件部件。硬件部件可以向其他硬件部件提供信息以及从其他硬件部件接收信息。因此,所描述的硬件部件可以被认为通信地耦接。在同时存在多个硬件部件的情况下,可以通过(例如,通过适当的电路和总线502)在两个或更多个硬件部件之间进行信号传输来实现通信。在在不同时间对多个硬件部件进行配置或实例化的实施方式中,可以例如通过将信息存储在多个硬件部件可以访问的存储器结构中以及在该存储器结构中检索信息来实现这样的硬件部件之间的通信。例如,一个硬件部件可以执行操作并且将该操作的输出存储在与其通信地耦接的存储器装置中。然后,其他硬件部件可以在随后的时间访问存储器装置以检索所存储的输出并对其进行处理。硬件部件还可以发起与输入装置或输出装置的通信,并且可以对资源进行操作(例如,信息的收集)。本文中描述的示例方法的各种操作可以至少部分地由被(例如,通过软件)临时配置或永久配置成执行相关操作的一个或更多个计算机处理器504执行。无论是临时配置还是永久配置,这样的处理器504可以构成进行操作以执行本文中描述的一个或更多个操作或功能的处理器实现的部件。如本文中所使用的,“处理器实现的部件”是指使用一个或更多个计算机处理器504实现的硬件部件。类似地,本文中描述的方法可以至少部分地由处理器实现,其中特定的一个处理器504或多个处理器504是硬件的示例。例如,方法的至少一些操作可以由一个或更多个计算机处理器504或者处理器实现的部件执行。此外,一个或更多个计算机处理器504还可以进行操作以支持“云计算”环境中的相关操作的执行或者作为“软件即服务”(SaaS)操作。例如,至少一些操作可以由一组计算机(作为包括处理器504的机器500的示例)执行,这些操作可由经由网络532(例如,因特网)并且经由一个或更多个适当的接口(例如,API)访问。某些操作的执行可以分布在处理器504之间,不仅可以驻留在单个机器500内,而且可以被部署在多个机器500上。在一些示例实施方式中,处理器504或处理器实现的部件可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其他示例实施方式中,处理器504或处理器实现的部件可以在多个地理位置上分布。
该上下文中的“处理器”是指根据控制信号(例如,“命令”、“操作码”、“机器码”等)操纵数据值并且产生被用于操作机器500的对应输出信号的任何电路或虚拟电路(通过在实际处理器504上执行的逻辑模拟的物理电路)。处理器504可以是例如中央处理单元(CPU)、简化指令集计算(RISC)处理器、复杂指令集计算(CISC)处理器、图形处理单元(GPU)、数字信号处理器(DSP)、ASIC、射频集成电路(RFIC)或其任何组合。处理器504还可以是具有两个或更多个可以同时执行指令510的独立处理器504(有时称为“核”)的多核处理器。
Claims (20)
1.一种方法,包括:
检测由第一光学传感器和第二光学传感器捕获的场景的一对对应图像中的第一特征;
基于所述一对对应图像中的至少一个图像确定所述第一特征的相位检测自动对焦(PDAF)深度值;
将所述PDAF深度值与阈值进行比较;以及
响应于确定所述PDAF深度值超过所述阈值,基于所述一对对应图像确定所述第一特征的立体视觉深度值。
2.根据权利要求1所述的方法,还包括:
检测由所述第一光学传感器和所述第二光学传感器捕获的第二场景的第二对对应图像中的第二特征;
基于所述第二对对应图像中的至少一个图像确定所述第二特征的第二PDAF深度值;
将所述第二PDAF深度值与所述阈值进行比较;以及
响应于确定所述第二PDAF深度值不超过所述阈值,输出所述第二PDAF深度值。
3.根据权利要求1所述的方法,还包括:
基于所述立体视觉深度值计算置信度得分;
将所述置信度得分与第二阈值进行比较;以及
响应于确定所述置信度得分超过所述第二阈值,输出所述立体视觉深度值。
4.根据权利要求1所述的方法,还包括:
基于所述立体视觉深度值计算置信度得分;
将所述置信度得分与第二阈值进行比较;以及
响应于确定所述置信度得分不超过所述第二阈值,输出所述PDAF深度值。
5.根据权利要求4所述的方法,其中,基于所述立体视觉深度值计算所述置信度得分还包括:
确定所述第一特征在所述场景的所述一对对应图像中的由所述第一光学传感器生成的第一图像内的第一位置;
确定所述第一特征在所述场景的所述一对对应图像中的由所述第二光学传感器生成的第二图像内的第二位置;以及
基于所述第一特征在所述第一图像内的所述第一位置和所述第一特征在所述第二图像内的所述第二位置确定所述置信度得分。
6.根据权利要求1所述的方法,其中,所述第一光学传感器和所述第二光学传感器彼此水平移位并且相距已知距离,并且以已知观察点定位。
7.根据权利要求1所述的方法,其中,确定所述第一特征的所述PDAF深度值包括:
基于从所述第一光学传感器接收到的PDAF深度数据确定第一PDAF深度值;
基于从所述第二光学传感器接收到的PDAF深度数据确定第二PDAF深度值;以及
基于所述第一PDAF深度值和所述第二PDAF深度值计算平均值。
8.一种系统,包括:
一个或更多个计算机处理器;以及
存储指令的一种或更多种计算机可读介质,所述指令当被所述一个或更多个计算机处理器执行时使所述系统执行操作,所述操作包括:
检测由第一光学传感器和第二光学传感器捕获的场景的一对对应图像中的第一特征;
基于所述一对对应图像中的至少一个图像确定所述第一特征的相位检测自动对焦(PDAF)深度值;
将所述PDAF深度值与阈值进行比较;以及
响应于确定所述PDAF深度值超过所述阈值,基于所述一对对应图像确定所述第一特征的立体视觉深度值。
9.根据权利要求8所述的系统,所述操作还包括:
检测由所述第一光学传感器和所述第二光学传感器捕获的第二场景的第二对对应图像中的第二特征;
基于所述第二对对应图像中的至少一个图像确定所述第二特征的第二PDAF深度值;
将所述第二PDAF深度值与所述阈值进行比较;以及
响应于确定所述第二PDAF深度值不超过所述阈值,输出所述第二PDAF深度值。
10.根据权利要求8所述的系统,所述操作还包括:
基于所述立体视觉深度值计算置信度得分;
将所述置信度得分与第二阈值进行比较;以及
响应于确定所述置信度得分超过所述第二阈值,输出所述立体视觉深度值。
11.根据权利要求8所述的系统,所述操作还包括:
基于所述立体视觉深度值计算置信度得分;
将所述置信度得分与第二阈值进行比较;以及
响应于确定所述置信度得分不超过所述第二阈值,输出所述PDAF深度值。
12.根据权利要求11所述的系统,其中,基于所述立体视觉深度值计算所述置信度得分还包括:
确定所述第一特征在所述场景的所述一对对应图像中的由所述第一光学传感器生成的第一图像内的第一位置;
确定所述第一特征在所述场景的所述一对对应图像中的由所述第二光学传感器生成的第二图像内的第二位置;以及
基于所述第一特征在所述第一图像内的所述第一位置和所述第一特征在所述第二图像内的所述第二位置确定所述置信度得分。
13.根据权利要求8所述的系统,其中,所述第一光学传感器和所述第二光学传感器彼此水平移位并且相距已知距离,并且以已知观察点定位。
14.根据权利要求8所述的系统,其中,确定所述第一特征的所述PDAF深度值包括:
基于从所述第一光学传感器接收到的PDAF深度数据确定第一PDAF深度值;
基于从所述第二光学传感器接收到的PDAF深度数据确定第二PDAF深度值;以及
基于所述第一PDAF深度值和所述第二PDAF深度值计算平均值。
15.一种包括指令的非暂态机器可读存储介质,所述指令当被机器的一个或更多个处理器执行时使所述机器执行操作,所述操作包括:
检测由第一光学传感器和第二光学传感器捕获的场景的一对对应图像中的第一特征;
基于所述一对对应图像中的至少一个图像,确定所述第一特征的相位检测自动对焦(PDAF)深度值;
将所述PDAF深度值与阈值进行比较;以及
响应于确定所述PDAF深度值超过所述阈值,基于所述一对对应图像确定所述第一特征的立体视觉深度值。
16.根据权利要求15所述的非暂态机器可读存储介质,所述操作还包括:
检测由所述第一光学传感器和所述第二光学传感器捕获的第二场景的第二对对应图像中的第二特征;
基于所述第二对对应图像中的至少一个图像确定所述第二特征的第二PDAF深度值;
将所述第二PDAF深度值与所述阈值进行比较;以及
响应于确定所述第二PDAF深度值不超过所述阈值,输出所述第二PDAF深度值。
17.根据权利要求15所述的非暂态机器可读存储介质,所述操作还包括:
基于所述立体视觉深度值计算置信度得分;
将所述置信度得分与第二阈值进行比较;以及
响应于确定所述置信度得分超过所述第二阈值,输出所述立体视觉深度值。
18.根据权利要求15所述的非暂态机器可读存储介质,所述操作还包括:
基于所述立体视觉深度值计算置信度得分;
将所述置信度得分与所述第二阈值进行比较;以及
响应于确定所述置信度得分不超过所述第二阈值,输出所述PDAF深度值。
19.根据权利要求18所述的非暂态机器可读存储介质,其中,基于所述立体视觉深度值计算所述置信度得分还包括:
确定所述第一特征在所述场景的所述一对对应图像中的由所述第一光学传感器生成的第一图像内的第一位置;
确定所述第一特征在所述场景的所述一对对应图像中的由所述第二光学传感器生成的第二图像内的第二位置;以及
基于所述第一特征在所述第一图像内的所述第一位置和所述第一特征在所述第二图像内的所述第二位置确定所述置信度得分。
20.根据权利要求15所述的非暂态机器可读存储介质,其中,所述第一光学传感器和所述第二光学传感器彼此水平移位并且相距已知距离处,并且以已知观察点定位。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163190126P | 2021-05-18 | 2021-05-18 | |
US63/190,126 | 2021-05-18 | ||
PCT/US2022/029673 WO2022245855A1 (en) | 2021-05-18 | 2022-05-17 | Varied depth determination using stereo vision and phase detection auto focus (pdaf) |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117321632A true CN117321632A (zh) | 2023-12-29 |
Family
ID=82319755
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280035574.5A Pending CN117321632A (zh) | 2021-05-18 | 2022-05-17 | 利用立体视觉和相位检测自动对焦(pdaf)的不同深度确定 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11722630B2 (zh) |
EP (1) | EP4341899A1 (zh) |
KR (1) | KR20240007277A (zh) |
CN (1) | CN117321632A (zh) |
WO (1) | WO2022245855A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11722630B2 (en) | 2021-05-18 | 2023-08-08 | Snap Inc. | Varied depth determination using stereo vision and phase detection auto focus (PDAF) |
CN117714859A (zh) * | 2023-08-01 | 2024-03-15 | 上海荣耀智慧科技开发有限公司 | 离焦量获取方法、装置、电子设备及可读存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007301003A (ja) * | 2006-05-09 | 2007-11-22 | Hitachi Ltd | 運動機能検査装置および運動波形間の位相比較方法 |
US10044925B2 (en) * | 2016-08-18 | 2018-08-07 | Microsoft Technology Licensing, Llc | Techniques for setting focus in mixed reality applications |
US10070042B2 (en) | 2016-12-19 | 2018-09-04 | Intel Corporation | Method and system of self-calibration for phase detection autofocus |
US10715718B2 (en) * | 2018-03-15 | 2020-07-14 | Taiwan Semiconductor Manufacturing Company, Ltd. | Phase detect auto-focus three dimensional image capture system |
US10410368B1 (en) * | 2018-09-27 | 2019-09-10 | Qualcomm Incorporated | Hybrid depth processing |
EP3674973A1 (en) * | 2018-12-28 | 2020-07-01 | Samsung Electronics Co., Ltd. | Method and apparatus with liveness detection and object recognition |
US11257272B2 (en) * | 2019-04-25 | 2022-02-22 | Lucid VR, Inc. | Generating synthetic image data for machine learning |
US11818462B2 (en) * | 2019-08-30 | 2023-11-14 | Qualcomm Incorporated | Phase detection autofocus sensor apparatus and method for depth sensing |
WO2021076757A1 (en) * | 2019-10-15 | 2021-04-22 | Magic Leap, Inc. | Cross reality system supporting multiple device types |
US11659135B2 (en) * | 2019-10-30 | 2023-05-23 | Corephotonics Ltd. | Slow or fast motion video using depth information |
CN114868037A (zh) * | 2019-12-17 | 2022-08-05 | 富士胶片株式会社 | 信息处理装置、摄像装置、信息处理方法及程序 |
US11722630B2 (en) | 2021-05-18 | 2023-08-08 | Snap Inc. | Varied depth determination using stereo vision and phase detection auto focus (PDAF) |
-
2022
- 2022-05-17 US US17/746,292 patent/US11722630B2/en active Active
- 2022-05-17 EP EP22735253.1A patent/EP4341899A1/en active Pending
- 2022-05-17 KR KR1020237043104A patent/KR20240007277A/ko unknown
- 2022-05-17 CN CN202280035574.5A patent/CN117321632A/zh active Pending
- 2022-05-17 WO PCT/US2022/029673 patent/WO2022245855A1/en active Application Filing
-
2023
- 2023-03-30 US US18/129,009 patent/US11974060B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20230239423A1 (en) | 2023-07-27 |
KR20240007277A (ko) | 2024-01-16 |
US11722630B2 (en) | 2023-08-08 |
WO2022245855A1 (en) | 2022-11-24 |
US20220377209A1 (en) | 2022-11-24 |
US11974060B2 (en) | 2024-04-30 |
EP4341899A1 (en) | 2024-03-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180053352A1 (en) | Occluding augmented reality content or thermal imagery for simultaneous display | |
US11974060B2 (en) | Varied depth determination using stereo vision and phase detection auto focus (PDAF) | |
US20200143773A1 (en) | Augmented reality immersive reader | |
US20230388632A1 (en) | Dynamic adjustment of exposure and iso to limit motion blur | |
US20230300464A1 (en) | Direct scale level selection for multilevel feature tracking under motion blur | |
CN115113399B (zh) | 用于黄斑变性的增强现实显示 | |
US20220377239A1 (en) | Dynamic adjustment of exposure and iso to limit motion blur | |
KR20240008915A (ko) | 모션 블러 완화를 위한 선택적 이미지 피라미드 계산 | |
US20220377306A1 (en) | Misaligned vantage point mitigation for computer stereo vision | |
US11983897B2 (en) | Camera intrinsic re-calibration in mono visual tracking system | |
US11683585B2 (en) | Direct scale level selection for multilevel feature tracking under motion blur | |
KR20240006669A (ko) | 늦은-워핑에서의 동적 오버-렌더링 | |
KR20240005953A (ko) | 증강 현실 경험의 시동 시간 감소 | |
US11961251B2 (en) | Continuous surface and depth estimation | |
US11295172B1 (en) | Object detection in non-perspective images | |
US20230410461A1 (en) | Efficient multi-scale orb without image resizing | |
EP4100918B1 (en) | Method and system for aligning a digital model of a structure with a video stream | |
KR20240008370A (ko) | 움직이는 객체들의 레이턴시를 최소화하기 위한 늦은 워핑 | |
CN117425869A (zh) | 后期扭曲中的动态过度渲染 | |
CN117321472A (zh) | 进行后期扭曲以最小化移动对象的延迟 | |
KR20240008892A (ko) | 생체인식 신호로서의 굽힘 추정 | |
CN117441343A (zh) | 曝光和iso的动态调整的相关应用 | |
CN117337575A (zh) | 用于运动模糊减轻的选择性图像金字塔计算 | |
CN117501208A (zh) | 利用步态印迹模仿的ar数据模拟 |
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 |