可分离失真视差确定的制作方法

文档序号:24986309发布日期:2021-05-07 23:04阅读:99来源:国知局
可分离失真视差确定的制作方法

相关申请的引用

本申请要求2018年9月27日在美国提交的名称为“可分离失真视差确定”的临时申请62/737,281号的权益,其内容通过引用全部结合到本申请中。

本主题涉及电子设备(例如眼戴设备)以及确定视差(例如,用于创建和呈现三维图像)的移动设备和技术。

背景

包括便携式眼戴设备(如智能眼镜、头饰和头戴设备)在内的可穿戴设备等电子设备、移动设备(如平板电脑、智能手机和笔记本电脑)以及目前市售的个人电脑都集成了图像显示器和摄像头。

可穿戴设备可包括用于从场景收集图像信息的多个摄像头。一个或多个摄像头的镜头可以导致图像失真。这种失真干扰了在显示器上准确再现场景的能力。需要用于准确呈现图像的方法和系统。

附图简述

附图仅以示例的方式而不是以限制的方式描绘了一个或多个实施例。在附图中,相同的附图标记表示相同或相似的元件。

图1a是在可分离失真视差确定系统中使用的眼戴设备的示例硬件配置的右视图;

图1b是图1a所示的眼戴设备右组块的横截面顶视图,示出了右侧可见光摄像头和电路板;

图1c是图1a所示的眼戴设备的示例硬件配置的左视图,示出了左侧可见光摄像头;

图1d是图1c所示的眼戴设备左组块的横截面顶视图,示出了左侧可见光摄像头以及电路板;

图2a和2b是在可分离失真视差确定系统中使用的眼戴设备的示例硬件配置的后视图,包括两种不同类型的图像显示器;

图3示出了由左侧可见光摄像头捕捉的、作为左侧原始图像的可见光示例,以及由右侧可见光摄像头捕捉的、作为右侧原始图像的可见光示例;

图4是包括经由各种网络连接的眼戴设备、移动设备和服务器系统的示例性可分离失真视差确定系统的功能块图;

图5示出了图4的可分离失真视差确定系统的移动设备的硬件配置的示例;

图6是用于具有校正图像的三维图像的可分离失真视差确定、生成和呈现的示例方法的流程图;

图7是用于确定图6的示例性方法中的视差匹配的示例性步骤的流程图;

图8a和8b是在图6的方法期间生成的场景原始图像对(图10a)和校正后的图像对(图10b)的代表性图示;

图9是在图6的方法期间确定原始图像对和可分离失真图像对之间的视差匹配的代表性图示;以及

图10a和10b分别描绘原始图像和对应的校正图像的示例。

详细说明

在以下详细描述中,为了对相关教导能够有透彻的理解,通过示例的方式阐述了许多具体细节。然而,对于本领域的技术人员来说显而易见的是,可以在没有这些细节的情况下实施本教导。在其它实例中,为了避免不必要地使本发明的各个方面难以理解,本文将以相对较高的水平来说明众所周知的方法、程序、组件和电路,而不阐述细节。

本文使用的术语“耦合”或“连接”是指任何逻辑、光学、物理或电连接等,通过这些连接,由一个系统元件产生或提供的电信号或磁信号被传递给另一个耦合或连接的元件。除非另有说明,否则耦合或连接的元件或设备不一定彼此直接连接,且可由可修改、操纵或携载电信号的中间组件、元件或传播介质分离。术语“在…上”是指由元件直接支撑,或通过集成到该元件中或由该元件支撑的另一元件由该元件间接支撑。

为了说明和讨论的目的,仅以示例的方式给出了如任何附图所示的眼戴设备、相关部件和结合三维摄像头的任何完整设备的方向。在用于图像中的可分离失真视差确定的操作中,眼戴设备可在适合于眼戴设备的特定应用的任何其它方向上定向,例如向上、向下、向侧面或任何其它方向。此外,在本文所使用的范围内,任何方向术语,例如前、后、向内、向外、朝向、左、右、横向、纵向、向上、向下、上、下、顶部、底部、侧面、水平、垂直和对角线仅作为示例使用,并且不限于任何三维摄像头或如本文另外描述所构造的三维摄像头部件的方向或取向。

示例的其它目的、优点和新特点将部分地在以下描述中阐述,并且部分地对本领域技术人员来说在阅读以下附图后将变得显而易见,或者可以通过示例的生产或操作而获知。本主题的目的和优点可以通过所附权利要求中特别指出的方法、手段和组合来实现和获得。

现在详细说明在附图中示出并在下面讨论的示例。

图1a是在可分离失真视差确定系统中使用的眼戴设备100的示例硬件配置的右视图,其示出了用于收集图像信息的右侧可见光摄像头114b。如下文进一步描述,在可分离失真视差确定系统中,两个摄像头从两个单独视点捕捉场景的图像信息。修改两个捕捉的图像以生成两个校正图像,在摄像头基线方向上确定两个校正图像之间的像素对,并且为每个像素对确定视差匹配。

眼戴设备100包括右侧光学组件180b,所述右侧光学组件180b具有图像显示器以呈现诸如深度图像的图像。如图1a-b所示,眼戴设备100包括右侧可见光摄像头114b。眼戴设备100可以包括多个可见光摄像头114a-b,其形成无源类型的三维摄像头,例如立体摄像头,其中右侧可见光摄像头114b位于右组块110b上。如图1c-d所示,眼戴设备100还包括左侧可见光摄像头114a。

左侧和右侧可见光摄像头114a-b对可见光范围波长敏感。可见光摄像头114a-b中的每一个具有不同的面向前的视场,其重叠以实现三维深度图像的产生,例如,右侧可见光摄像头114b描绘右侧视场111b。一般来说,“视场”是场景中通过摄像头在空间中特定位置和方向可见的部分。视场111a和111b具有重叠的视场813。当可见光摄像头捕捉图像时,视场111a-b外的对象或对象特征不被记录在原始图像(例如,照片或图片)中。视场描述了可见光摄像头114a-b的图像传感器在给定场景的捕捉图像中接收给定场景电磁辐射的角度范围。视场可以被表示为视锥的角度大小,即视角。视角可以水平、垂直或对角的方式测量。

在示例中,可见光摄像头114a-b的视场视角在15°到30°之间,例如24°,分辨率为480x480像素。“视场角”描述了可见光摄像头114a-b或红外摄像头220(见图2a)的镜头可以有效成像的角度范围。通常,摄像头镜头产生的图像圈足够大以完全覆盖摄像头的胶片或传感器,可能包括一些朝向边缘的渐晕。如果摄像头镜头的视场角没有充满传感器,则图像圈将是可见的,通常具有朝向边缘的强渐晕,并且有效视角将限于视场角。

这种可见光摄像头114a-b的示例包括高分辨率互补金属氧化物半导体(cmos)图像传感器和视频图形阵列(vga)摄像头,例如640p(例如,640×480像素,总共30万像素)、720p或1080p。本文使用的术语“重叠”在涉及视场时指的是在生成的原始图像中的像素矩阵重叠30%或更多。当涉及视场时,本文使用的术语“大幅重叠”是指所生成的场景原始图像或红外图像中的像素矩阵重叠50%或更多。

眼戴设备100可以捕捉由图像处理器数字化的来自可见光摄像头114a-b的图像传感器数据以及地理定位数据,以存储在存储器中。由相应的可见光摄像头114a-b捕捉的左侧和右侧原始图像在二维空间域中,包括二维坐标系上的像素矩阵,该二维坐标系包括针对水平位置的x轴和针对垂直位置的y轴。每个像素包括颜色属性(例如,红色像素光值、绿色像素光值和/或蓝色像素光值)和位置属性(例如,x位置坐标和y位置坐标)。

为了提供立体视觉,图像处理器(图4的元件912)可以耦合到可见光摄像头114a-b以接收用于数字处理的图像信息以及捕捉场景图像的时间戳。图像处理器912包括用于从可见光摄像头114a-b接收信号并将来自可见光摄像头114的那些信号处理成适于存储在存储器中的格式的电路。时间戳可以由控制可见光摄像头114a-b操作的图像处理器或其它处理器添加。可见光摄像头114a-b允许三维摄像头模拟人的双眼视觉。三维摄像头提供了基于来自具有相同时间戳的可见光摄像头114a-b的两个捕捉图像来再现三维图像的能力。这样的三维图像允许具有沉浸式的逼真体验,例如,用于虚拟现实或视频游戏。

对于立体视觉,在给定时刻及时捕捉场景的一对原始红、绿和蓝(rgb)图像(左侧和右侧可见光摄像头114a-b各有一个图像)。当(例如,通过图像处理器)处理从左侧和右侧可见光摄像头114a-b的面向前的左侧视场和右侧视场111a-b捕捉的原始图像对时,生成深度图像,用户可以在(例如移动设备的)光学组件180a-b或其他图像显示器上感知所生成的深度图像。所生成的深度图像在三维空间域中,可包括三维位置坐标系上的顶点矩阵,该三维位置坐标系包括针对水平位置(例如长度)的x轴、针对垂直位置(例如高度)的y轴以及针对深度(例如距离)的z轴。每个顶点包括颜色属性(例如,红色像素光值、绿色像素光值和/或蓝色像素光值)、位置属性(例如,x位置坐标、y位置坐标和z位置坐标)、纹理属性和/或反射率属性。纹理属性量化深度图像的感知纹理,例如深度图像的顶点区域中的颜色或亮度的空间排列。

通常,深度的感知来自于由可见光摄像头114a-b捕捉的左侧和右侧原始图像中的给定3d点的视差。视差是当在可见光摄像头114a-b的视角下被投影时同一3d点的图像定位的差异(d=x左-x右)。对于具有平行光轴、焦距f、基线b和对应图像点(x左,y左)和(x右,y右)的可见光摄像头114a-b,可以利用根据视差确定深度的三角测量来导出3d点的位置(z轴位置坐标)。通常,3d点的深度与视差成反比。也可以使用各种其他技术。下面将更详细地解释三维深度图像的生成。

在示例中,可分离视差失真确定系统包括眼戴设备100。眼戴设备100包括框架105、从框架105的左侧面170a延伸的左侧眼戴设备腿110a、以及从框架105的右侧面170b延伸的右侧眼戴设备腿110b。眼戴设备100还包括两个摄像头。这两个摄像头可以包括具有重叠视场的至少两个可见光摄像头。在一个示例中,两个摄像头包括左侧可见光摄像头114a,该左侧可见光摄像头114a具有左视场111a,连接到框架105或左侧眼戴设备腿110a,以捕捉场景的左侧图像。眼戴设备100还包括右侧可见光摄像头114b,该右侧可见光摄像头114b连接到框架105或右侧眼戴设备腿110b,具有右侧视场111b,以捕捉(例如,与左侧可见光摄像头114a同时)与左侧图像部分重叠的场景的右侧图像。

可分离视差失真确定系统还包括计算设备,例如通过网络耦合到眼戴设备100的主机(例如,图4的移动设备990)。可分离视差失真确定系统还包括图像显示器(眼戴设备的光学组件180a-b;图4的移动设备990的图像显示器180),用于呈现(例如显示)三维深度图像。可分离视差失真确定系统还包括图像显示驱动器(图4的眼戴设备100的元件942;图4的移动设备990的元件1090),耦合到图像显示器(眼戴设备的光学组件180a-b;图5的移动设备990的图像显示器1080),控制图像显示以呈现深度图像。

可分离视差失真确定系统还包括用于接收用户的二维输入选择的用户输入设备。用户输入设备的示例包括触摸传感器(图4的元件991,用于眼戴设备100)、触摸屏显示器(图5的元件1091,用于图5的移动设备990),以及用于个人电脑或笔记本电脑的计算机鼠标。可分离视差失真确定系统还包括处理器(图4的眼戴设备100的元件932;图5的移动设备990的元件1030),耦合到眼戴设备100和三维摄像头。可分离视差失真确定系统还包括处理器可访间的存储器(图4的眼戴设备100的元件934;图4的移动设备990的元件1040a-b),以及存储器中的可分离失真视差确定程序(图4的眼戴设备100的元件945;图4的移动设备990的元件945),例如在眼戴设备100本身、移动设备(图4的元件990)或可分离视差失真确定系统的另一部分(例如,图4的服务器系统998)中。由处理器(图4的元件932)执行程序(图4的元件945)将眼戴设备100配置为通过三维摄像头生成深度图像961。深度图像包括顶点矩阵。每个顶点代表三维场景中的像素。每个顶点都有位置属性。每个顶点的位置属性基于三维位置坐标系,包括针对水平位置的在x轴上的x位置坐标、针对垂直位置的在y轴上的y位置坐标以及针对深度的在z轴上的z位置坐标。

通过处理器(图5的元件1030)执行可分离的失真确定程序(图4的元件945)配置可分离失真确定系统的移动设备(图4的元件990),以执行本文所述功能。

图1b是图1a的眼戴设备100的右组块110b的横截面顶视图,示出了摄像头系统的右侧可见光摄像头114b和电路板。图1c是图1a的眼戴设备100的示例硬件配置的左视图,示出了摄像头系统的左侧可见光摄像头114a。图1d是图1c的眼戴设备的左组块110a的横截面顶视图,描绘了三维摄像头的左侧可见光摄像头114a和电路板。左侧可见光摄像头114a的结构和布局与右侧可见光摄像头114b基本相似,除了连接和耦合在左侧面170a上。如图1b的示例所示,眼戴设备100包括右侧可见光摄像头114b和电路板,该电路板可以是柔性印刷电路板(pcb)140b。右铰链226b将右组块110b连接至眼戴设备100的右侧眼戴设备腿125b。在一些示例中,右侧可见光摄像头114b、柔性pcb140b或其它电连接器或触点的组件可位于右侧眼戴设备腿125b或右铰链226b上。

右组块110b包括组块本体211和组块帽盖,在图1b的截面中省略了组块帽盖。布置在右组块110b内的是各种互连电路板,例如pcb或柔性pcb,其包括用于右侧可见光摄像头114b的控制器电路、麦克风、低功率无线电路(例如,用于经由bluetoothtm的无线短距离网络通信)、高速无线电路(例如,用于经由wifi的无线局域网通信)。

右侧可见光摄像头114b耦合到或设置在柔性pcb240上,并且被可见光摄像头镜头盖覆盖,可见光摄像头镜头盖穿过形成在框架105中的开口对准。例如,框架105的右边缘107b连接到右组块110b并且包括用于可见光摄像头镜头盖的开口。框架105包括面向前侧面,该面向前侧面被配置为背离用户的眼睛面向外。用于可见光摄像头镜头盖的开口形成在面向前侧面上并穿过面向前侧面。在该示例中,右侧可见光摄像头114b具有面向外的视场111b,其具有眼戴设备100的用户的右眼的视线或视角。可见光摄像头镜头盖也可以粘附到右组块110b的面向外表面,在该面向外表面中形成具有面向外的视场角但在不同的向外方向上的开口。该耦合也可以是经由中间部件的间接耦合。

左侧(第一)可见光摄像头114a连接到左侧光学组件180a的左侧图像显示器,以捕捉由眼戴设备100的佩戴者在左侧原始图像中观察到的左眼观看场景。右侧(第二)可见光摄像头114b连接到右侧光学组件180b的右侧图像显示器,以捕捉由眼戴设备100的佩戴者在右侧原始图像中观察到的右眼观看场景。左侧原始图像和右侧原始图像部分重叠以呈现所生成的深度图像的三维可观察空间。

柔性pcb140b布置在右组块110b内,并耦合到右组块110b中的一个或多个其它组件。尽管被示为形成在右组块110b的电路板上,但右侧可见光摄像头114b可以形成在左组块110a的电路板、眼戴设备腿125a-b或框架105上。

图2a-b是眼戴设备100的示例硬件配置的后视图,包括两种不同类型的图像显示器。眼戴设备100具有被配置为由用户佩戴的形式,其在该示例中是眼镜。眼戴设备100可以采取其他形式并且可以结合其他类型的框架,例如,头戴设备、耳机或头盔。

在眼镜示例中,眼戴设备100包括框架105,框架105包括左边缘107a,左边缘107a经由适于用户的鼻子的鼻梁架106连接到右边缘107b。左边缘和右边缘107a-b包括各自的孔175a-b,其保持各自的光学元件180a-b,例如镜头和显示设备。如本文所用,术语镜头是指具有导致光会聚/发散或导致很少或不引起会聚或发散的曲面和/或平面的透明或半透明的玻璃盖片或塑料盖片。

虽然显示为具有两个光学元件180a-b,但眼戴设备100可包括其它布置,例如单个光学元件或可不包括任何光学元件180a-b,这取决于眼戴设备100的应用或预期用户。如进一步示出的,眼戴设备100包括邻近框架105的左侧侧面170a的左组块110a和邻近框架105的右侧侧面170b的右组块110b。组块110a-b可以在相应侧面170a-b上集成到框架105中(如图所示),或者实现为在相应侧面170a-b上附接到框架105的单独组件。或者,组块110a-b可以集成到附接到框架105的眼戴设备腿(未示出)中。

在一个示例中,光学组件180a-b的图像显示器包括集成图像显示器。如图2a所示,光学组件180a-b包括合适的显示矩阵170,例如液晶显示器(lcd)、有机发光二极管(oled)显示器或任何其它此类显示器。光学组件180a-b还包括一个或多个光学层176,光学层176可以包括镜头、光学涂层、棱镜、反射镜、波导管、光条和任何组合的其它光学部件。光学层176a-n可以包括棱镜,该棱镜具有合适的尺寸和配置并且包括用于接收来自显示矩阵的光的第一表面和用于向用户的眼睛发射光的第二表面。光学层176a-n的棱镜在形成于左边缘和右边缘107a-b中的相应孔175a-b的全部或至少一部分上延伸,以允许用户在用户的眼睛通过对应的左边缘和右边缘107a-b观看时看到棱镜的第二表面。光学层176a-n的棱镜的第一表面从框架105面向上,并且显示矩阵置于棱镜上面,使得由显示矩阵发射的光子和光撞击第一表面。棱镜的尺寸和形状被确定为使得光在棱镜内被折射并且被光学层176a-176n的棱镜的第二表面指向用户的眼睛。在这点上,光学层176a-n的棱镜的第二表面可以是凸面,以将光指向眼睛的中心。棱镜的尺寸和形状可以可选地确定为放大由显示矩阵170投影的图像,并且光穿过棱镜,使得从第二表面观看的图像在一维或多维上大于从显示矩阵170发射的图像。

在另一示例中,光学组件180a-b的图像显示设备包括如图2b所示的投影图像显示器。光学组件180a-b包括激光投影仪150,其是使用扫描镜或振镜的三色激光投影仪。在操作期间,例如激光投影仪150的光源设置在眼戴设备100的眼戴设备腿125a-b之一中或眼戴设备腿125a-b之一上。光学组件180-b包括一个或一个以上光条155a-n,其跨越光学组件180a-b的镜头的宽度或跨越镜头的位于镜头的前表面与后表面之间的深度而间隔开。

当由激光投影仪150投射的光子穿越光学组件180a-b的镜头时,光子遇到光条155a-n。当特定光子遇到特定光条时,光子要么指向用户的眼睛,要么传到下一个光条。激光投影仪150调制和光条调制的组合可以控制特定的光子或光线。在实例中,处理器通过机械、声学或电磁起始信号来控制光条155a-n。虽然被示为具有两个光学组件180a-b,但眼戴设备100可以包括其他布置,例如单个或三个光学组件,或者光学组件180a-b可以根据眼戴设备100的应用或预期用户而采用不同的布置。

如图2a-b中进一步所示,眼戴设备100包括邻近框架105的左侧侧面170a的左组块110a和邻近框架105的右侧侧面170b的右组块110b。组块110a-b可以在相应的侧面170a-b上集成到框架105中(如图所示),或者实现为在相应的侧面170a-b上附接到框架105的单独组件。或者,组块110a-b可以集成到附接到框架105的眼戴设备腿125a-b中。

在一个示例中,图像显示器包括第一(左侧)图像显示器和第二(右侧)图像显示器。眼戴设备100包括保持相应的第一和第二光学组件180a-b的第一和第二孔175a-b。第一光学组件180a包括第一图像显示器(例如,图2a的显示矩阵170a,或图2b的光条155a-n’和投影仪150a)。第二光学组件180b包括第二图像显示器(例如,图2a的显示矩阵170b,或图2b的光条155a-n”和投影仪150b)。

图3描绘了用左侧可见光摄像头114a捕捉的可见光以及用右侧可见光摄像头114b捕捉的可见光示例。可见光由具有左侧可见光摄像头视场111a的左侧可见光摄像头114a捕捉为左侧原始图像858a(图4)。可见光由具有右侧可见光摄像头视场111b的右侧可见光摄像头114b捕捉为右侧原始图像858b(图4)。如以下更详细描述的,基于左侧原始图像858a(图4)和右侧原始图像858b(图4)的处理,生成了三维场景715的三维深度图像。

图4是示例性可分离失真视差确定系统900的高级功能块图,系统900包括经由各种网络连接的可穿戴设备(例如,眼戴设备100)、移动设备990和服务器系统998。眼戴设备100包括三维摄像头,例如可见光摄像头114a-b中的至少一个;以及深度传感器213,被示为红外发射器215和红外摄像头220。或者三维摄像头可包括至少两个可见光摄像头114a-b(一个与左侧侧面170a相关联,一个与右侧侧面170b相关联)。三维摄像头生成深度图像的初始深度图像(未示出),其是作为红色、绿色和蓝色(rgb)成像场景纹理映射图像的渲染三维(3d)模型。

移动设备990可以是智能电话、平板电脑、笔记本电脑、接入点或能够使用低功率无线连接925和高速无线连接937两者与眼戴设备100连接的任何其他此类设备。移动设备990连接到服务器系统998和网络995。网络995可以包括有线和无线连接的任何组合。

眼戴设备100还包括光学组件180a-b的两个图像显示器(一个与左侧侧面170a相关联,一个与右侧侧面170b相关联)。眼戴设备100还包括图像显示驱动器942、图像处理器912、低功率电路920和高速电路930。光学组件180-b的图像显示器用于呈现图像,例如深度图像961。图像显示驱动器942耦合到光学组件180a-b的图像显示器以控制光学组件180a-b的图像显示器来呈现图像,例如深度图像961。眼戴设备100还包括用于接收用户二维输入选择的用户输入设备991(例如触摸传感器)。

图4所示的眼戴设备100的部件位于一个或多个电路板上,例如位于边缘或眼戴设备腿中的pcb或柔性pcb上。或者或此外,所描绘的组件可以位于眼戴设备100的组块、框架、铰链或鼻梁架中。左侧和右侧可见光摄像头114a-b可包括数码摄像头元件,例如互补金属氧化物半导体(cmos)图像传感器、电荷耦合器件、镜头或可用于捕捉数据(包括具有未知对象的场景图像)的任何其它相应的可见光或光捕捉元件。

眼戴设备100包括存储器934,其包括执行本文所述功能子集或全部功能的可分离的失真视差确定程序945,用于确定两个可分离失真图像之间的视差匹配,在图6和7中示出了概述可在可分离失真视差确定程序945中执行的功能流程图。如图所示,存储器934还包括由左侧可见光摄像头114a捕捉的左侧原始图像858a和由右侧可见光摄像头114b捕捉的右侧原始图像、对应于左侧原始图像的左侧可分离失真校正图像808a、以及对应于右侧原始图像的右侧可分离失真校正图像808b。

如图4所示,高速电路930包括高速处理器932、存储器934和高速无线电路936。在该示例中,图像显示驱动器942耦合到高速电路930并由高速处理器932操作,以便驱动光学组件180a-b的左侧图像显示器和右侧图像显示器。高速处理器932可以是能够管理眼戴设备100所需的任何通用计算系统的高速通信和操作的任何处理器。高速处理器932包括使用高速无线电路936管理到无线局域网(wlan)的高速无线连接937上的高速数据传输所需的处理资源。在某些实施例中,高速处理器932执行操作系统,例如眼戴设备100的linux操作系统或其他这样的操作系统,并且该操作系统被存储在存储器934中用于执行。除了任何其他责任之外,执行眼戴设备100的软件架构的高速处理器932还用于管理对于高速无线电路936的数据传输。在某些实施例中,高速无线电路936被配置为实现电气和电子工程师协会(ieee)802.11通信标准,在本文中也被称为wi-fi。在其他实施例中,可以由高速无线电路936执行其他高速通信标准。

眼戴设备100的低功率无线电路924和高速无线电路936可包括短距离收发器(bluetoothtm)和无线广域、局域或广域网络收发器(例如,蜂窝式或wifi)。包括经由低功率无线连接925和高速无线连接937通信的收发器的移动设备990可以使用眼戴设备100的架构的细节来实现,网络995的其他元件也是如此。

存储器934包括能够存储各种数据和应用的任何存储设备,这些数据和应用尤其包括由左侧和右侧可见光摄像头114a-b、红外摄像头220和图像处理器912生成的摄像头数据,以及为了由图像显示驱动器942在光学组件180a-b的图像显示器上显示而生成的图像。虽然存储器934被示为与高速电路930集成,但是在其他实施例中,存储器934可以是眼戴设备100的独立元件。在某些此类实施例中,电的路由线可提供通过包含高速处理器932的芯片从图像处理器912或低功率处理器922到存储器934的连接。在其它实施例中,高速处理器932可管理存储器934的寻址,使得低功率处理器922将在需要涉及存储器934的读取或写入操作的任何时间引导高速处理器932。

如图4所示,眼戴设备100的处理器932可以耦合到摄像头系统(可见光摄像头114a-b)、图像显示驱动器942、用户输入设备991和存储器934。如图5所示,移动设备990的处理器1030可耦合到摄像头系统1070、图像显示驱动器1090、用户输入设备1091和存储器1040a。眼戴设备100通过由眼戴设备100的处理器932执行存储器934中的可分离失真视差确定程序945,能够执行以下说明的功能的全部或子集。作为移动设备990的处理器1030执行存储器1040a中的可分离失真视差确定程序945的结果,移动设备990可执行下文描述的任何以下功能的全部或子集。在可分离失真视差确定系统900中,可以划分各项功能,使得眼戴设备100捕捉图像,但是移动设备990执行图像处理的剩余部分。

服务器系统998可以是作为服务或网络计算系统的一部分的一个或多个计算设备,例如,其包括处理器、存储器和通过网络995与移动设备990和眼戴设备100通信的网络通信接口。眼戴设备100与主机连接。例如,眼戴设备100经由高速无线连接937与移动设备990配对,或者经由网络995与服务器系统998连接。

眼戴设备100的输出部件包括视觉部件,例如如图2a-b所示的光学组件180a-b的左侧和右侧图像显示器(例如,液晶显示器(lcd)、等离于体显示面板(pdp)、发光二极管(led)显示器、投影仪或波导管等显示器)。光学组件180a-b的图像显示器由图像显示驱动器942驱动。眼戴设备100的输出部件还包括声学部件(例如扬声器)、触觉部件(例如振动马达)、其它信号发生器等。眼戴设备100、移动设备990和服务器系统998的输入部件可以包括字母数字输入部件(例如键盘、被配置为接收字母数字输入的触摸屏、光键盘或其他字母数字输入部件)、基于点的输入部件(例如鼠标、触摸板、轨迹球、操纵杆、运动传感器或其他指向仪器)、触觉输入部件(例如物理按钮、提供触摸位置和触摸力或触摸手势的触摸屏,或其它触觉输入部件)、音频输入部件(例如麦克风)等。

眼戴设备100可以可选地包括附加的外围设备元件。这样的外围设备元件可包括生物计量传感器、附加传感器或与眼戴设备100集成的显示元件。举例来说,外围设备元件可包含任何i/o部件,包含输出部件、运动部件、位置部件或本文中所描述的任何其它此类元件。

例如,生物计量部件包括用于检测表情(例如手表情、面部表情、声音表情、身体姿势或眼睛跟踪)、测量生物信号(例如血压、心率、体温、排汗或脑电波)、识别人(例如声音识别、视网膜识别、面部识别、指纹识别或基于脑电图的识别)等的部件。运动部件包括加速度传感器部件(例如加速度计)、重力传感器部件、旋转传感器部件(例如陀螺仪)等。位置部件包括生成位置坐标的位置传感器部件(例如,全球定位系统(gps)接收器部件)、用于生成定位系统坐标的wifi或bluetoothtm收发器、高度传感器部件(例如高度计或气压计,气压计用于检测可从其导出海拔高度的气压)、方向传感器部件(例如磁力计)等。还可经由低功率无线电路924或高速无线电路936利用无线连接925和937从移动设备990接收此类定位系统坐标。

图5是经由图4的可分离视差失真确定系统900通信的移动设备990的示例的高级功能块图。移动设备990包括用于接收二维输入选择的用户输入设备1091。移动设备990还包括闪存1040a,闪存1040a包括可分离视差失真确定程序945以执行本文中所描述的功能的全部或子集。如图所示,存储器1040a还包括由左侧可见光摄像头114a捕捉的左侧原始图像858a和由右侧可见光摄像头114b捕捉的右侧原始图像,对应于左侧原始图像的左侧可分离失真校正图像808a,对应于右侧原始图像的右侧可分离失真图像1008b,对应于左侧可分离失真图像1008a的左侧校正图像1012a,以及与右侧分离失真图像1008b对应的右侧分离失真图像1012b。移动设备1090可以包括摄像头系统1070,该摄像头系统包括用于捕捉左侧原始图像858a和右侧原始图像858b的至少两个可见光摄像头(具有重叠视场的第一和第二可见光摄像头)。在移动设备990具有摄像头系统等眼戴设备100类似部件的情况下,能够经由移动设备990的摄像头系统1070来捕捉左侧原始图像858a以及右侧原始图像858b。

如图所示,移动设备990包括图像显示器1080、用于控制图像显示的图像显示驱动器1090以及与眼戴设备100类似的用户输入设备1091。在图5的示例中,图像显示器1080和用户输入设备1091被一起集成到触摸屏显示器中。

可使用的触摸屏型移动设备的示例包括(但不限于)智能电话、个人数字助理(pda)、平板电脑、笔记本电脑或其它便携式设备。然而,是通过示例的方式提供了触摸屏型设备的结构和操作,本文描述的主题技术并不希望仅限于此。出于这个讨论目的,图5提供了示例移动设备990的块图图示,该示例移动设备990具有用于显示内容并接收用户输入作为用户接口(或作为用户接口的一部分)的触摸屏显示器。

如图5所示,移动设备990包括至少一个数字收发器(xcvr)1010,其被示为wwanxcvr,用于经由广域无线移动通信网络进行数字无线通信。移动设备990还包括附加的数字或模拟收发器,例如用于经由nfc、vlc、dect、zigbee、bluetoothtm或wifi等短程网络通信的短程xcvr1020。例如,短程xcvr1020可以采用与在无线局域网中实现的一个或多个标准通信协议兼容的类型的任何可用的双向无线局域网(wlan)收发器的形式,所述标准通信协议例如ieee802.11和wimax下的wi-fi标准之一。

为了生成用于定位移动设备990的位置坐标,移动设备990可以包括全球定位系统(gps)接收器。或者或此外,移动设备990可以利用短程xcvr1020和wwanxcvr1010中的任一个或两者来生成用于定位的位置坐标。例如,基于蜂窝网络、wifi或bluetoothtm的定位系统可以生成非常精确的位置坐标,尤其是在组合使用时。这样的位置坐标可以经由xcvr1010、1020通过一个或多个网络连接被传输到眼戴设备。

收发器1010、1020(网络通信接口)符合现代移动网络所使用的各种数字无线通信标准中的一个或多个。wwan收发器1010的示例包括(但不限于)被配置为根据码分多址(cdma)和第三代合作伙伴计划(3gpp)网络技术(包括但不限于3gpp类型2(或3gpp2)和lte,有时被称为“4g”)进行操作的收发器。例如,收发器1010、1020提供信息的双向无线通信,该信息包括数字化音频信号、静止图像和视频信号、用于显示的网页信息和与网络相关的输入,以及用于可分离的失真视差确定的去往/来自移动设备990的各种类型的移动消息通信。

如上所述,通过收发器1010、1020和网络的若干这些类型的通信涉及支持与眼戴设备100或服务器系统998的通信协议和程序,以用于可分离的失真视差确定,例如传输左侧原始图像858a和右侧原始图像858b。例如,这样的通信可以通过无线连接925和937经由短程xcvr1020传输去往和来自眼戴设备100的分组数据,如图4所示。例如,这样的通信还可以通过图4所示的网络(例如互联网)995经由wwanxcvr1010利用ip分组数据传输来传输数据。wwanxcvr1010和短程xcvr1020两者都通过射频(rf)发送和接收放大器(未示出)连接到相关联的天线(未示出)。

移动设备990进一步包括微处理器,展示为cpu1030,其在本文中有时称为主机控制器。处理器是具有被构造和布置成执行一个或多个处理功能(通常是各种数据处理功能)的元件的电路。虽然可使用离散逻辑部件,但示例是利用形成可编程cpu的部件。例如,微处理器包括一个或多个集成电路(ic)芯片,结合有执行cpu的功能的电子元件。例如,处理器1030可以基于任何已知的或可用的微处理器架构,例如使用arm架构的精简指令集计算(risc),如当今在移动设备和其他便携式电子设备中普遍使用的那样。当然,其它处理器电路可用于形成cpu1030或智能电话、笔记本电脑和平板电脑中的处理器硬件。

微处理器1030通过配置移动设备990以(例如)根据可由处理器1030执行的指令或编程来执行各种操作而充当移动设备990的可编程主机控制器。例如,这样的操作可以包括移动设备的各种一般操作,以及与可分离失真视差确定程序945和与眼戴设备100和服务器系统998的通信有关的操作。虽然可以通过使用硬连线逻辑来配置处理器,但是移动设备中的典型处理器是通过执行编程来配置的通用处理电路。

移动设备990包括用于存储数据和编程的存储器或存储设备系统。在该示例中,存储器系统可以包括闪存1040a和随机存取存储器(ram)1040b。ram1040b用作处理器1030所处理的指令和数据的短期存储,例如用作工作数据处理存储器。闪存1040a通常提供较长期存储。

因此,在移动设备990的示例中,闪存1040a用于存储供处理器1030执行的编程或指令。取决于设备的类型,移动设备990存储并运行移动操作系统,通过该移动操作系统执行特定应用程序,包含可分离失真视差确定程序945。应用程序(例如,可分离失真视差确定程序945)可为本地应用程序、混合应用程序或网络应用程序(例如,由网络浏览器执行的动态网页),在移动设备990上运行以确定可分离失真视差。移动操作系统的示例包括谷歌安卓系统(googleandroid)、苹果ios系统(i-phone或ipad设备)、windowsmobile、amazonfireos、rim黑莓操作系统等。

应了解,移动设备990仅为可分离失真视差确定系统900中的一种类型的主机,且可利用其它布置。

图6是具有可在可分离失真视差确定系统中实施的步骤的方法流程图。为了便于描述和理解,参考本文描述的系统和设备来描述以下流程图的步骤。所属领域的技术人员将认识到用于执行本文中所描述的步骤的其它合适的系统和设备。另外,参考包括在水平方向上分离的两个摄像头的摄像头系统来描述该方法。在其它示例中,摄像头可具有彼此之间相对的另一方向(例如,在垂直方向上分离)。

在步骤602,获得场景的两个图像。处理器(例如,图4的眼戴设备100的元件932或图5的移动设备990的元件1030)获得由具有不同视点的相应摄像头捕捉的场景图像。在示例中,眼戴设备100的左侧可见光摄像头114a捕捉左侧原始图像(leftraw),眼戴设备100的右侧可见光图像114b捕捉右侧原始图像(rightraw)。摄像头在摄像头基线方向上(这里在水平方向上)被分离。图8a描绘了包括对象802(即,树)的三维场景715的左侧原始图像858a和右侧原始图像858b的说明性示例。

在步骤604,修改所获得的左侧原始图像和右侧原始图像以创建相应的左侧校正像素图像和右侧校正像素图像。处理器可通过应用分量分离的校正算法来修改左侧原始图像和右侧原始图像,以从左侧原始图像创建左侧可分离失真校正像素图像,并从右侧原始图像创建右侧可分离失真校正像素图像。在示例中,应用了单调函数f,其中f是1d变换函数(例如,f(x)=1+k_1*x^2+k_2*x^4;其中x是距失真中心的水平像素距离,k_1和k_2是参数)。单调函数防止所映射的图像自身折叠(例如,由于2个像素被映射到同一目标)。分量分离的校正算法的示例在等式1中示出:

(x可分离失真,y可分离失真)=rx*xraw,ry*yraw)(1.)

其中,rx=f(x2raw);以及

ry=f(y2raw);

其中x是水平方向上的像素位置,y是垂直方向上的像素位置。

如等式1所示,在分量可分离校正算法中,x分量仅受x方向上的方向分量影响(并且不受y方向上的方向分量影响)。同样,y分量仅受y方向上的方向分量影响(并且不受x方向上的方向分量影响)。这种x和y分量的分离产生了比通常使用传统技术可实现的更逼真的图像。另外,所得到的图像更好地将来自图像对的对应对象保持在同一光栅中,这便于在确定视差时检测对应对象。

图8b描绘了对应于左侧原始图像858a(图8a)的左侧可分离失真校正图像808a以及对应于右侧原始图像858b(图8a)的右侧可分离失真校正图像808b的说明性示例。在修改期间,原始图像858a和858b被变换为相应的可分离的失真校正图像808a和808b,其至少在水平方向上保持像素场景匹配。失真可由左侧可见光摄像头和右侧可见光摄像头的相应镜头引入。由镜头引起的失真可包括产生曲线/图像,其中真实世界的线/图像将由直线/图像更准确地表示。图10a中示出了具有由镜头引入的失真的原始图像的示例。图10b表示可分离的失真校正图像。如图所示,图10a中的失真图像包括与图10的可分离失真校正图像相比弯曲的方面(例如,建筑物的屋顶)。

在步骤606,从水平方向上的左侧和右侧可分离失真校正图像之间的对应图像像素确定像素对。处理器可通过将左侧可分离失真校正图像808a中的像素/对象与右侧可分离失真图像808b中的像素/对象相关来确定像素对。可以通过将左侧图像中的一个或多个像素(像素区域,50像素)的颜色和/或图像属性与右侧图像中的一个或多个像素进行比较来确定匹配性。如果所比较的一个或多个像素的颜色和/或图像属性相同或在阈值(例如,5%)内,则一个或多个像素可被识别为一对。

在步骤608,确定每个像素对的校正视差匹配。通过确定左侧和右侧可分离失真校正图像之间对应像素位置的差异并基于相应原始图像中的对应位置来修改差异,处理器可确定每一像素对的校正视差匹配。

处理器可首先确定左侧和右侧可分离失真校正图像之间的对应像素对之间的差异(步骤702;图7)。通过识别可分离失真校正图像808a和808b中的对应特征并确定右侧校正图像808b中像素810b的位置(对应于左侧图像808a中出现的对象像素810a)以及对应对象像素810c实际出现在右侧图像808b的位置之间的像素数(通常在水平方向上),处理器可确定可分离失真校正图像之间的视差。处理器可通过使经校正图像808a/b相关并确定右侧经校正图像808b中对应于左侧图像808a中对象像素801a出现的位置的像素810b的位置与对应的对象像素801c实际出现在右侧图像808b中的位置之间的像素数目(通常在水平方向上)来确定经校正图像之间的视差。例如,可以利用半整体块匹配(sgbm)来实现左像素和右像素的相关。这在图9中示出,其中像素810a在左侧可分离失真校正图像808a中以实线示出,并且相同像素位置810c的表示在右侧可分离失真校正图像808b中以虚线示出。可分离失真校正图像中的图像像素的视差是右侧图像808b中的所表示像素位置810c与右侧图像808b中的对应特征的实际像素位置810b之间的差异。如图所示,由于捕捉图像的摄像头之间的距离,可能存在最小的预期视差。

处理器接着使用对应于可分离失真经校正图像中的像素对的位置的相应原始像素对位置的差异来确定经校正失真视差(步骤704;图7)。然后,处理器通过用经校正的视差替换可分离的失真视差来修改视差匹配(步骤706;图7)。

在步骤610,使用校正后的失真视差创建场景的深度图。在一个示例中,深度图包括基于经校正的失真视差的多个顶点,并且每个顶点包括颜色属性或纹理属性中的一个或多个。处理器可使用经校正的失真视差来计算深度图的每一顶点的z位置坐标。

在步骤612,使用所确定的视差利经校正的图像来生成三维(3d)场景。为了创建3d场景,处理器根据左侧和右侧可分离分量校正图像以及深度图来渲染3d场景。处理器可以使用图像处理3d渲染程序来渲染3d场景。合适的3d渲染程序将被本领域技术人员根据本文的描述理解。

在步骤614,呈现3d图像。在示例中,处理器可以在眼镜的显示器或耦合到眼镜的移动设备上呈现3d场景。

在示例中,深度图可用于利用深度信息的计算机视觉算法中。例如,深度图可以使计算机视觉系统能够理解手部在3d坐标中的位置。

本文描述的用于眼戴设备100、移动设备990和服务器系统998的可分离的失真视差确定功能中的任何功能可以体现在一个或多个应用中,如前所述。根据一些实施例,“功能”、“应用”、“指令”或“编程”是执行在程序中所确定功能的程序。可以采用各种编程语言来创建以面向对象的编程语言(例如objective-c、java或c++)或程序编程语言(例如c语言或汇编语言)等各种方式构造的一个或多个应用程序。在具体示例中,第三方应用程序(例如,由特定平台供应商以外的实体使用androidtm或者iostm软件开发工具包(sdk)开发的应用程序)可能是运行在iostm、androidtmphone或其他移动操作系统等移动操作系统上的移动软件。在该示例中,第三方应用可以调用由操作系统提供的api调用以帮助本文描述的功能。

因此,机器可读介质可采取许多形式的有形存储介质。例如,非易失性存储介质包括光盘或磁盘,例如任何计算机中的任何存储设备等,例如可用于实现附图中所示的客户端设备、媒体网关、代码转换器等。易失性存储介质包括动态存储器,例如这种计算机平台的主存储器。有形传输介质包括同轴电缆、铜线和光纤,包括构成计算机系统内的总线的导线。载波传输介质可以采用电信号或电磁信号的形式,或者采用声波或光波的形式,例如在射频(rf)和红外(ir)数据通信期间产生的声波或光波。因此,例如计算机可读介质的常见形式包括:软盘、硬盘、磁带、任何其他磁介质、cd-rom、dvd或dvd-rom、任何其他光学介质、穿孔卡片纸带、任何其他具有孔图案的物理存储介质、ram、prom和eprom、快闪eprom、任何其他存储芯片或盒、传输数据或指令的载波、传输这种载波的电缆或链路,或者计算机可以从其读取编程代码和/或数据的任何其它介质。许多这些形式的计算机可读介质可涉及将一个或多个指令的一个或多个序列携带到处理器以供执行。

保护的范围仅由所附权利要求书限定。当根据本说明书和随后的申请过程进行解释时,该范围旨在并且应当被解释为与权利要求中所使用的语言的普通含义一样宽,并且应当被解释为包括所有等同结构和功能。然而,权利要求无意包含未能满足《专利法》的第101、102或103节要求的主题,也不应当以这种方式解释它们。特此放弃对该主题的任何非故意使用。

除上文所述之外,所陈述或说明的任何内容均无意或不应被解释为导致将任何部件、步骤、特征、目标、利益、优势等捐献于公众,而不管其是否在权利要求书中陈述。

应当理解,除了在本文中另外阐述的特定含义之外,本文使用的术语和表达具有与这些术语和表达相对广它们相应的各自研究领域一致的普通含义。例如第一和第二等关系术语可以仅用于区分一个实体或动作与另一个实体或动作,而不必要求或暗示这些实体或动作之间的任何实际的这种关系或顺序。术语“包括”、“包含”或其任何其它变型旨在涵盖非排他性包含,使得包括或包含元件或步骤的列表的过程、方法、制显或设备不仅包括那些元件或步骤,而且可以包括未明确列出或对这些过程、方法、制品或设备固有的其它元件或步骤。前面有“a”或“an”的元件,在没有进一步限制的情况下,不排除在包含该元件的过程、方法、制品或设备中存在附加的相同元件。

除非另有说明,在本说明书(包括所附权利要求书)中提出的任何和所有测量值、值、额定值、位置、大小、尺寸和其它规格都是近似的、不精确的。这样的量旨在具有合理的范围,该范围与它们所涉及的功能以及它们所涉及的本领域中的惯例一致。例如,除非另有明确说明,否则参数值等可能与规定的数量相差±10%。

另外,在前面的具体实施方式中,可以看出,为了简化本公开的目的,在各种示例中将各种特征组合在一起。该公开方法不应被解释为反映了要求保护的示例需要比每个权利要求中明确记载的特征更多的特征的意图。相反,如以下权利要求所反映的,要保护的主题在于少于任何单个公开的示例的所有特征。因此,以下权利要求在此结合到具体实施方式中,其中每个权利要求独立地作为单独要求保护的主题。

虽然上文已经描述了被认为是最佳方式和其它示例的内容,但是应当理解,可以在其中进行各种修改,并且可以以各种形式和示例来实现本文公开的主题,并且它们适用于许多应用场合,本文仅描述了其中的一些应用。以下权利要求旨在要求保护落入本概念真实范围内的任何和所有修订和变化。

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