具有相邻视场的多相机阵列的制作方法

文档序号:11142121阅读:364来源:国知局
具有相邻视场的多相机阵列的制造方法与工艺

本申请要求于2014年4月1日提交的美国临时申请号61/973,788、于2014年4月14日提交的美国临时申请号61/979,386、于2014年4月28日提交的美国临时申请号61/985,256、于2014年6月18日提交的美国实用申请号14/308,495、于2014年6月18日提交的美国实用申请号14/308,507以及于2014年6月18日提交的美国实用申请号14/308,501的权益,其全部内容通过引用并入本文。



背景技术:

技术领域

本公开涉及一种相机阵列,并且更具体地,涉及使用相机阵列捕获图像的方法。

相关技术的描述

数字相机越来越多地用于户外和运动环境中。然而,如果相机笨重或者不能捕获所需的视场,则使用相机捕获户外和运动环境可能是困难的。用户对相机的体验会由相机笨重和有限的相机功能而减小。

附图说明

当结合附图时,所公开的实施例具有将从本发明的以下具体实施方式和所附的权利要求更容易明白的其它优点和特征,其中:

图(或“图”)1A图示了根据一个实施例的常规多相机系统。

图1B图示了根据本文中所描述的配置的一个实施例布置的2×1相机阵列。

图2图示了根据一个实施例的相机阵列中的相机的滚动、俯仰和偏航旋转。

图3图示了根据本文中所描述的配置的一个实施例布置的2×2相机阵列。

图4A图示了根据一个实施例的常规多部分相机框架。

图4B图示了根据一个实施例的单体相机框架。

图5图示了根据一个实施例的多相机阵列的框图。

图6图示了根据一个实施例的用于多相机阵列的同步接口的框图。

图7A图示了根据一个实施例的用于容限补偿的多相机阵列中的每个图像传感器的读取窗口调整。

图7B图示了根据一个实施例的多相机阵列的图像传感器捕获窗口内的未对准的读取窗口。

图7C图示了根据一个实施例的多相机阵列的图像传感器捕获窗口内的对准的读取窗口。

图7D图示了多相机阵列的图像传感器之间的最佳相关距离。

图8A至图8C图示了根据一个实施例的用于会聚点调整的多相机阵列中的每个图像传感器的读取窗口调整。

图9A图示了根据一个实施例的由2×2相机阵列中的相机捕获的一组图像。

图9B图示了根据一个实施例的基于重叠部分对准的图9A的图像。

图9C图示了根据一个实施例的被裁剪以移除不与对应的相邻图像水平或垂直对准的多余部分的图9B的对准图像。

图9D图示了根据一个实施例的被扭曲以基于对准来校正失真的图9C的裁剪图像。

图9E图示了根据一个实施例的被裁剪以移除多余部分和重叠部分的图9D的校正图像。

图10A图示了根据一个实施例的多相机阵列中的两个透镜模块之间的距离。

图10B图示了根据一个实施例的用于多相机阵列中的球形透镜。

图11A图示了根据一个实施例的被配置成以多个配置接收多相机阵列的相机本体。

图11B图示了根据一个实施例的用于以多个配置插入相机本体内的多相机阵列模块。

图12A图示了根据一个实施例的包括电池系统和相关联的电性接口的相机索带(strap)。

图12B图示了根据一个实施例的包括电池接口系统的相机索带。

图12C图示了根据一个实施例的图12A的相机索带。

图13图示了根据一个实施例的用于相机系统的抓握系统。

图14A图示了根据一个实施例的多相机阵列中的相邻透镜堆叠。

图14B图示了根据一个实施例的包括多相机阵列中的锥形透镜的相邻透镜堆叠。

具体实施方式

附图和以下描述仅通过说明涉及优选实施例。应当指出,从以下讨论中,本文中所公开的结构和方法的备选实施例将容易地被认为是可以在不背离所要求保护的原理的情况下采用的可行的备选方案。

现在将详细参照若干实施例,其示例在附图中图示。应当指出,在可行的情况下,在附图中可以使用类似或相似的附图标记,并且可以指示类似或相似的功能性。附图仅出于说明的目的描绘了所公开的系统(或方法)的实施例。本领域技术人员将从以下描述容易地认识到,在不背离本文中所描述的原理的情况下,可以采用本文中所图示的结构和方法的备选实施例。

示例2×1和2×2相机阵列配置

相机阵列配置包括多个相机,每个相机具有不同的视场。例如,相机阵列可以包括2×1相机阵列、2×2相机阵列、或相机的任何其它合适布置。每个相机可以具有被构造成至少部分地围合相机的相机外壳。可替代地,相机阵列可以包括被构造成围合多个相机的相机外壳。每个相机可以包括具有构造在相机本体的前表面上的相机透镜的相机本体、相机本体的表面前方的各种指示器(诸如LED、显示器等)、各种输入机构(诸如按钮、开关和触摸屏机构)、以及相机本体内部用于经由相机透镜捕获图像和/或执行其它功能的电子装置(例如,成像电子装置、功率电子装置等)。在另一实施例中,相机阵列包括各种指示器、各种输入机构和电子装置中的一些或全部,并且包括多个相机。相机外壳可以包括:透镜窗口,该透镜窗口被构造在相机外壳的前表面上并且被配置成基本上与多个相机的相机透镜对准;和一个或多个指示窗口,该指示窗口被构造在相机外壳的前表面上并且被配置成基本上与相机指示器对准。

图1A图示了根据一个实施例的常规多相机环境100。在本实施例中,常规相机环境100包括两个相机105A和105B。在该环境100中,相机105A用于捕获共享视图115的左侧(例如,视场108A)作为图像110A,并且相机105B用于捕获共享视图115的右侧(视场108B)作为图像110B。如共享视图115的阴影部分所图示的,左相机105A的视场108A的一部分和右相机105B的视场108B的一部分代表公共视场。公共视场包括立方体和球体。基于图像110A和110B的共享部分,图像110A和110B可以被拼接在一起以形成共享视图115的单个平面图像。

即使相机105A和105B具有部分公共视场,但是公共视场中的任何对象可能不在由左相机105A和右相机105B捕获的图像中对准。因此,如在左图像110A中所见,球体的一部分出现在立方体的左侧,并且在右图像110B中,球体的一部分出现在立方体的右侧。立方体和球体的这种偏移120是由于视差误差。视差误差是常规相机环境100固有的,因为相机之间的距离使得基于相机之间的距离,公共视场中的对象的位置相对于每个相机都不同。视差误差可以基于每个相机内的图像传感器的图像传感器窗口140的读取窗口130的位置而进一步加剧。例如,读取窗口130不一定以图像传感器窗口140为中心,因此可以导致相机105A和105B的有效距离更大。如图7和图8中进一步所描述的,读取窗口130在图像传感器窗口140内的位置是在图像传感器的制造期间可能出现的问题,并且可以针对各种目的而进行调节。

图1B图示了根据本文中所描述的配置的一个实施例布置的2×1相机阵列。在本实施例中,2×1相机阵列150包括两个相机105C和105D。在另一实施例中,如结合图3进一步所图示和描述的,两个2×1相机阵列150被组合以形成包括四个相机的2×2相机阵列150。在该阵列150中,相机105C捕获共享视图115的左侧(例如,视场108C),并且相机105D捕获共享视图115的右侧(例如,视场108D)。然而,左相机105C捕获共享视图115的右侧的图像110C,并且右相机105D捕获共享视图的左侧的图像110D。如阵列150的阴影部分所图示的,左相机105C和右相机105D具有部分公共视场。然而,图1B中的部分公共视场具有与图1A中的部分公共视场不同的形状。由相机105C和105D共享的部分公共视场包括立方体和球体。基于图像110C和110D的共享部分,图像110C和110D可以被拼接在一起以形成共享视图115的单个成角度的图像。

通过将图像110C和110D拼接在一起而形成的成角度的图像不同于在图1A中通过将图像110A和110B拼接在一起而形成的平面图像。2×1相机阵列150在不平行的视场捕获图像(如同图1A中的阵列100的情况),但是相反在相对于彼此成角度的视场捕获图像。成角度的图像是如结合图2和图3进一步描述的2×1相机阵列150中的相机的配置的结果。结合图9进一步描述对共享视图115的成角度的图像的校正以模拟利用平行视场捕获的图像。

与图1A中的环境100不同,相机在图1B的阵列150内的定位允许两个相机105C和105D共享另一相机的视场的一部分,同时最小化由相机105C和105D捕获的共享部分中的任何对象的视差误差。比如,左图像110C包括小于左图像110A的出现在立方体左侧上的球体的部分,并且右图像110D包括小于右图像110B的出现在立方体右侧上的球体的部分。例如,当捕获在2×1相机阵列150的3米内的对象时,左图像110C的偏移160可以是1-3个像素。2×1相机阵列150最小化相机105A和105B之间的距离,从而最小化视差误差。例如,相机105C和105D之间的距离(从每个相机透镜的中心测量的)可以在1mm和60mm之间。

应当指出,相机105C和105D的定向使得与相机105C和105D的每个相机透镜垂直的矢量在部分公共视场内相交。相反,尽管相机105A和105B具有部分公共视场,但是与相机105A和105B的每个相机透镜垂直的矢量在部分公共视场内不相交。在具有2×2相机阵列的实施例中,与阵列中的每个相机透镜垂直的矢量可以在所有相机公共的视场内相交。例如,对于任何两个相机,与两个相机的相机透镜垂直的矢量可以在所有四个相机公共的视场内相交。

图2图示了根据一个实施例的相机阵列中的相机的滚动、俯仰和偏航旋转。例如,当最小化相机阵列中的相机之间的距离时,相机可以在三个维度上旋转:滚动210、俯仰220和偏航230。通过在这三个维度上旋转相机以最小化相机的透镜与另一相机之间的距离,可以在倾斜、成角度或旋转的视场捕获由多个相机中的每个相机捕获的共享视图115。具有倾斜、成角度和旋转的视场的共享视图115的所捕获的图像可以使用如结合图9进一步所描述的图像处理来校正。

图2中所图示的相机105具有30°至50°范围内的滚动210旋转、60°至80°范围内的偏航230旋转、以及60°至80°范围内的俯仰220旋转。相机105的每次旋转的方向(即,滚动210、偏航230、俯仰220)取决于相机105在阵列中的位置。例如,如果相机105在相机阵列的左上方,则如图2所图示的,相机105可能具有负滚动旋转、负偏航旋转和负俯仰旋转,其中,方向分别对应于图2中所图示的箭头。如果相机105在相机阵列的右上方,则相机105可能具有正滚动旋转、正偏航旋转和负俯仰旋转。如果相机105在相机阵列的左下方,则相机105将具有正滚动旋转、负偏航旋转和正俯仰旋转。如果相机105在相机阵列的右下方,则相机105可能具有正滚动旋转、正偏航旋转和正俯仰旋转。如结合图4所进一步描述的,旋转210,220和230的方向也可以基于相机105的形状。然而,一般来说,如结合图3进一步所描述的,确定旋转210,220和230的方向以使阵列的透镜之间的距离最小化到例如1mm至5mm的范围。应当指出,在其它实施例中,每个相机105可以以与本文中所描述的不同的滚动、偏航和俯仰来定向。

图3图示了根据本文中所描述的配置的一个实施例布置的2×2相机阵列。2×2相机阵列300包括四个相机105A,105B,105C和105D。每个相机具有滚动旋转、俯仰旋转和偏航旋转,旋转使透镜的中心之间的距离310(如虚线320所指示的)最小化到例如1mm至10mm的范围内。所图示的2×2相机阵列300中的相机105A-D各自都捕获2×2相机阵列300的共享视图的成角度的图像。换句话说,每个相机捕获对应视场的图像,并且相机的对应的视场重叠但不平行。相机105A捕获共享视图的左下部分,相机105B捕获共享视图的右下部分,相机105C捕获共享视图的左上部分,相机105D捕获共享视图的右上部分。如本文中所使用的,“共享视图”是指2×2相机阵列300的相机105A-D的对应视场中的每个视场。

相机阵列300可以适于至少部分地由保护性相机外壳(图3的实施例中未示出)围合。在一个实施例中,相机阵列300和/或阵列300的外壳具有小的形状因数(例如,高度大约为1厘米至6厘米、宽度大约为1厘米至6厘米,以及深度大约为1厘米至2厘米),并且重量轻(例如,大约50克至150克)。外壳和/或相机本体可以是刚性的(或基本上是刚性的)(例如,塑料、金属、玻璃纤维等)或柔韧的(或基本上是柔韧的)(例如,皮革、乙烯基、氯丁橡胶等)。在一个实施例中,外壳和/或阵列可以被适当地配置成用于各种元件。例如,外壳可以包括防水围合件,其在例如冲浪或水肺潜水(scuba diving)时使用时保护相机阵列300免受水的影响。在一些实施例中,诸如下文所描述的那些实施例,相机阵列300可以紧固在保护性多相机阵列模块内,该保护性多相机阵列模块又可以以一个或多个方位而紧固在相机本体内。

外壳和/或阵列的部分可以包括暴露区域,以允许用户操纵与相机阵列300功能性相关联的按钮。可替代地,这些区域可以用柔韧材料覆盖,以允许用户通过外壳操纵按钮。例如,在一个实施例中,外壳的顶面包括外部快门按钮,该外部快门按钮被构造成以使当相机阵列300被紧固在外壳内时,相机阵列300的快门按钮基本上与外部快门按钮对准。相机阵列300的快门按钮可操作地联接至外部快门按钮,以使按下外部快门按钮会允许用户操作相机快门按钮。

在一个实施例中,外壳的前面包括一个或多个透镜窗口,其被构造成以使当相机阵列300被紧固在外壳内时,相机阵列300中的相机的透镜基本上与透镜窗口对准。透镜窗口可以适于与常规透镜、广角透镜、平面透镜、或任何其它专用相机透镜一起使用。在该实施例中,透镜窗口包括防水密封件,以便维持外壳的防水方面。

在一个实施例中,外壳和/或阵列包括一个或多个紧固结构,用于将外壳和/或阵列紧固到多种安装设备中的一个上。例如,各种安装件包括夹式安装件、或经由不同类型的联接机构的不同类型的安装结构。

在一个实施例中,外壳包括指示器窗口,其被构造成以使当相机阵列300被紧固在外壳内时,一个或多个相机阵列指示器基本上与指示器窗口对准。指示器窗口可以是任何形状或尺寸,并且可以由与外壳的其余部分相同的材料制成,或者可以由任何其它材料制成,比如透明或半透明材料和/或非反射材料。

根据一个示例性实施例,外壳可以包括第一外壳部分和第二外壳部分。第二外壳部分与第一外壳部分可拆卸地联接,与第一外壳部分的前表面相对。第一外壳部分和第二外壳部分共同被构造成在第二外壳部分在闭合位置中紧固到第一外壳部分时形成的腔室内围合相机阵列300。

相机阵列300被配置成捕获图像和视频,并且存储所捕获的图像和视频以用于后续显示或回放。相机阵列300适于安装在外壳内(诸如上文所讨论的外壳或任何其它合适的外壳)。阵列300中的每个相机105A-D可以是可互换的相机模块。如所图示的,相机阵列300包括多个透镜,其被配置成接收入射在透镜上的光并且将接收到的光引导到透镜内部的图像传感器上。

相机阵列300可以包括各种指示器,包括LED灯和LED显示器。相机阵列300还可以包括按钮,其被配置成允许相机阵列300的用户与相机阵列300交互、打开相机阵列300、并且以其它方式配置相机阵列300的操作模式。相机阵列300还可以包括麦克风,其被配置成结合记录视频来接收和记录音频信号。相机阵列300可以包括I/O接口。I/O接口可以由保护门来围合、和/或可以包括任何类型或数目的I/O端口或机构,诸如USC端口、HDMI端口、存储卡插槽等。

相机阵列300还可以包括覆盖可移除电池和电池接口的门。相机阵列300还可以包括被配置成接收可移除扩展包的扩展包接口,诸如显示模块、额外的电池模块、无线模块等。可移除扩展包当联接至相机阵列300时经由扩展包接口而向相机阵列300提供附加功能性。

图4A和图4B分别图示了根据一个实施例的常规多部分相机框架405A和单体相机框架405B。常规多部分相机框架405A包括多个透镜410、图像传感器415和自动聚焦线圈420。为了围合所有的部件410、415和420,框架405A具有如图4A所图示的正方形轮廓。常规多部分相机框架405A限制两个相邻的多部分相机框架405A的透镜中心的接近度。

单体相机框架405B可以用于改善相邻相机框架的透镜中心的接近度。单体相机框架405B(在本文中还被称为“透镜堆叠”)包括多个透镜410和图像传感器415,但是不包括自动聚焦线圈420。另外,单体相机框架405B是单个模具,其将框架405B内的部件410和415保持在由模具设定的固定位置,并且使框架405B内的多余空间最小化。框架405B的横截面是梯形形状,从而允许相邻相机被配置成使得相机的透镜的中心之间的接近度减少。在一些实施例中,对于直径大约为1mm的透镜,相邻相机的透镜的中心之间的距离为1mm或更小。

相机阵列框图

图5图示了根据一个实施例的多相机阵列的框图。阵列300包括例如图3的相机105A,105B,105C和105D的四个相机500A,500B,500C和500D,并且每个相机包括图像传感器510、传感器控制器515、处理器520和存储器525。在另一实施例中,四个相机500A,500B,500C和500D可以具有共享公共处理器520和存储器525的图像传感器。同步接口505使四个相机500A,500B,500C和500D同步以同步捕获图像。在各种实施例中,相机500A,500B,500C和500D可以包括用于各种应用的附加的、更少的或不同的组件。如本文中所使用的,图像的同步捕获是指在基本上相同的时间时或在阈值时间段内由两个或更多个相机来捕获图像。

图像传感器510是能够电子捕获入射在图像传感器510上的光的设备。在一个实施例中,使用CMOS传感器,包括晶体管、光电二极管、放大器、模数转换器和电源。在一个实施例中,图像传感器510具有滚动快门功能性,并且可以在稍微不同的时间时捕获入射到图像传感器的不同部分上的光。可替代地,图像传感器510可以是被配置成基本上同时捕获图像的部分的CCD传感器。在一个实施例中,图像传感器510具有可调整的读取窗口130。可调整的读取窗口130可以修改图像传感器的暴露于光并且被读取以捕获图像的部分,或者可以修改被读出以捕获图像的图像传感器的完全暴露于光的部分。通过调整读取窗口130,相机500A可以相对于图像捕获开始的时间修改捕获图像的一部分的时间。例如,通过沿滚动快门方向来移位读取窗口130,图像传感器比如果读取窗口130没有在滚动快门方向上移位更早地捕获读取窗口130中的图像的部分。附加地,如结合图7和图8进一步所描述的,调整读取窗口130可以用于解决相机500A的固有容限问题,并且调整相机阵列的会聚点。

处理器520是执行存储在存储器525中的计算机可读指令的一个或多个硬件设备(例如,中央处理单元(CPU)、图形处理单元(GPU)、数字信号处理器(DSP)等)。处理器520基于所执行的指令来控制相机的其它部件。例如,处理器520可以向图像传感器510发送电子控制信号、或者使用同步接口505将数据发送到相机500B,500C和500D。

存储器525是可以由处理器520读取的非暂态存储介质。存储器525可以包含易失性存储器(例如,随机存取存储器(RAM))、非易失性存储器(例如,闪存、硬盘等)或其组合。存储器525可以存储由图像传感器510捕获的图像数据和要由处理器520执行的计算机可读指令。

传感器控制器515控制图像传感器510的操作和相机500A的其它功能。传感器控制器515可以包括物理和/或电子输入设备,诸如开始记录视频和/或捕获静止图像的外部按钮、具有点击对焦能力的触摸屏、以及用于导航相机500A的菜单层次的拨号/按钮组合。另外,传感器控制器15可以包括远程用户输入设备,诸如与相机500A-D无线通信的远程控件。图像传感器510可以独立于传感器控制器515而起作用。例如,主从配对中的从相机可以从主相机接收信号,以通过同步接口505来捕获图像。

同步接口505向相机500A,500B,500C和500D或外部计算系统发送数据,并且从相机500A,500B,500C和500D或外部计算系统接收数据。特别地,同步接口505可以向相机500A,500B,500C和500D发送命令或从相机500A,500B,500C和500D接收命令,以用于同时捕获图像和/或校准与相机500A,500B,500C和500D的同步(例如,发送或接收同步脉冲)。在图5的所图示的实施例中,存在控制相机500A,500B,500C和500D的一个同步接口505。在另一实施例中,可以有控制相机500A-D的多个同步接口505,比如每个相机一个同步接口505。

图6图示了根据一个实施例的用于多相机阵列的同步接口的框图。同步接口505包括图像存储装置605、同步存储装置610、捕获控制器615、像素移位确定模块620、时滞确定模块625和图像捕获模块630。备选实施例可以具有被配置成执行类似功能性的一个或多个附加的、省略的或备选的模块。应当指出,在其它实施例中,本文中所描述的模块可以以硬件,固件,或硬件、固件和软件的组合来实现。另外,在一些实施例中,多个相机中的第一相机包括图6中所图示的部件,而多个相机中的其它相机不一定包括图6的部件,而是仅响应于来自第一相机的信号而同步地捕获图像。如本文中所使用的,“多个图像”是指由多个相机同步捕获的多个图像,每个相机捕获与两个相邻相机共享的视场的一部分。可替代地或附加地,外部计算设备处理由相机阵列捕获的图像数据。

图像存储装置605被配置成存储由多个相机中的每个相机(诸如图5的相机500A-D)同步捕获的多个图像。同步存储装置610被配置成存储所接收的相机同步数据。同步数据的示例包括由于网络滞后或内部部件滞后(例如,来自同步接口505、处理器520、传感器控制器515等的滞后)的相机之间的时滞。同步存储装置610被配置成存储校准设置,诸如读取窗口移位信息和用于启动图像捕获的校准时间滞后,以用于基于例如相机同步数据来校准相机阵列中的相机。

捕获控制器615控制图像传感器510的图像捕获。在一个实施例中,捕获控制器615应用校准校正以使图像捕获与一个或多个附加相机同步,比如基于存储在同步存储装置610中的同步或校准数据。校准校正可以包括由像素移位确定模块620确定的读取窗口移位确定数目个像素。可替代地或附加地,校准校正可以包括如由时滞确定模块625确定的阵列中的相机中的一个相机在开始图像捕获之前相对于阵列的其它相机延迟的时滞。

像素移位确定模块620标识由第一相机500A捕获的图像、由第二相机500B捕获的图像、由第三相机500C捕获的图像、以及由第四相机500D捕获的图像之间的像素移位。该像素移位指示相机500的图像传感器之间的空间未对准度。在一个实施例中,像素移位确定模块620确定由于沿着滚动快门方向的图像传感器之间的未对准而导致的滚动快门方向上的像素移位。捕获控制器615可以使用所确定的像素移位来校正图像传感器之间的未对准度。

时滞确定模块625确定捕获第一相机500A的图像行、第二相机500B的对应的图像行、第三相机500C的对应的图像行、以及第四相机500D的对应的图像行之间的时滞。时滞确定模块625可以基于从像素移位确定模块620接收的像素移位来确定时滞。使用所确定的时滞tlag,捕获控制器615通过相对于多个相机中的第二,第三和第四相机延迟多个相机中的第一相机的图像捕获该时滞来同步多个相机。在一个实施例中,图像传感器具有相关联的行时间trow,其代表在暴露第一像素行和第二后续像素行之间经过的时间。如果确定由多个相机拍摄的图像具有n个像素的像素移位,则可以使用以下等式来确定校正像素移位所需的时滞tlag

tlag=trow×n

在一个实施例中,校准多个相机中的相机之间的图像捕获涉及利用多个相机同步捕获图像,确定所捕获的图像之间的像素移位,以及迭代地应用所确定的校正,直到所确定的像素移位小于预先确定的像素移位阈值。当相机通电或配对时、当制造相机时、当组装相机阵列时、或响应于相机阵列的用户手动启动校准过程时,可以启动校准过程。主相机系统可以在自先前校准以来经过大于或等于预先确定的阈值的时间量之后启动校准过程。在具有附加相机的实施例中,响应于主相机的校准,可以在其它相机之间执行附加校准。

图像捕获模块630处理所捕获的图像。在本文中未进一步描述的备选实施例中,所捕获的图像在同步接口505外部处理,比如通过相机阵列外部的系统来处理。图像捕获模块630包括容限校正模块632、会聚调整模块634和图像处理模块636。备选实施例可以具有被配置成执行类似功能性的一个或多个附加的、省略的或备选的模块。

容限校正模块632移位多个相机500的读取窗口以校正多个相机中的每个相机中的容限。例如,由于相机的制造差异和产品容限,每个相机在读取窗口位置上可能具有微小差异。另外,多个相机的图像传感器可以具有变化的读取窗口位置。从相机到相机的这些变化可能是由于每个相机内的图像传感器的位置和定向之间的差异。例如,如果图像传感器是互补金属氧化物半导体(CMOS)传感器,则每个CMOS传感器的读取窗口的位置可以由于在每个CMOS传感器中使用的像素传感器的灵敏度而移位。如图7A中的相机阵列700中的相机的视场所示,相机阵列中的相机的CMOS传感器中的所移位的读取窗口位置可以移位相机的视场。这可以导致移位的共享视场(例如,阴影部分与相机阵列700中的相机的视场不对准)。例如,容限校正模块632可以基于读取窗口中的像素传感器的输出来识别读取窗口位置的移位。可以比较第一相机的第一区域和第二相机的第二区域中的图像传感器的输出,其中,第一区域和第二区域重叠,并且可以基于该比较来移位第一相机、第二相机或两者的图像传感器的读取窗口的位置。比如,在比较重叠的图像传感器区域时,如果确定区域中的第一区域从区域中的第二区域偏移了确定数目个像素,则第一区域或第二区域可以移位若干个像素(比如通过调整图像传感器上的读取窗口的位置若干个像素)来对准这些区域。下文结合图7进一步描述校正相机500的容限的过程。

会聚调整模块634可以基于由相机阵列捕获的图像数据来动态地调整图像传感器中的读取窗口。例如,如果相机阵列正在捕获前景中的对象的图像,则可以将相机阵列中的多个相机的会聚点调整得更接近相机阵列,并且如果在背景中捕获对象,则可以将相机阵列中的多个相机的会聚点调整得远离相机阵列。在另一示例中,如果相机阵列的视场中的对象的深度超过阈值距离,则仅通过会聚调整模块634来调整相机阵列的会聚点。会聚调整可以由相机阵列的用户手动完成,或者由会聚调整模块634基于图像处理算法自动完成,该图像处理算法测量相机阵列的视场中的对象的深度。结合图8进一步描述调整多个相机500的会聚的过程。

图像处理模块636调整由相机阵列捕获的图像以补偿相机阵列的相机的成角度的视场。使用例如扭曲、变换、裁剪或任何其它合适的图像增强、恢复和/或压缩技术来调整图像。可以单独地调整图像中的一个或多个图像,或者可以基本上同步地或顺序地调整所有图像。例如,在对图像进行拼接以产生模拟平面图像之前和期间,如下文结合图9进一步所描述的。

读取窗口调整

图7A图示了根据一个实施例的用于容限补偿的多相机阵列中的每个图像传感器的读取窗口调整。例如,图示了在与代表相机阵列700中的相机的公共视场的线未对准的阴影区域中图示的未完全对准的2×1相机阵列700。相机705A和705B的视场中的每个视场的一部分是两个视场共有的,并且包括立方体。然而,由相机705A和705B分别捕获的图像710A和710B图示了立方体未在相机705中的图像传感器的读取窗口的x轴或y轴上对准。

在所图示的示例中,图像710A和710B分别在(x,y)坐标(3,4)和(12,6)处显示立方体的角,其中,读取窗口的高度为12像素和20个像素,并且立方体的宽度为3个像素。因此,立方体在读取窗口内具有不同的高度,并且在读取窗口内沿着x轴具有不同的位置。多个相机705A和705B中的每个相机的图像传感器的读取窗口可以被调整以在y轴上的相同高度处显示立方体的中心,并且在x轴上显示距离相应的边缘的距离。图像710C和710D图示了分别示出了在(4,5)和(13,5)处显示的立方体的角的经调整的读取窗口(与图像边缘相同的高度和距离)。立方体的检测可以是基于对象检测算法的或由相机阵列700的用户和用户的输入辅助的自动过程。

图7B图示了根据另一实施例的多相机阵列的图像传感器窗口140内的未对准的读取窗口130。利用多相机阵列中的未对准的读取窗口130所捕获的图像在所捕获的图像的重叠部分内可以具有显着的解相关。如下文进一步所描述的,将多相机阵列的图像传感器捕获窗口140内的读取窗口130对准可以增加所捕获的图像的重叠部分之间的相关,从而有益地提高将相邻图像拼合在一起时的性能。

为了在多个相机阵列内对准读取窗口130,可以标识感兴趣对象。比如,如果多相机阵列用于捕获花园的一组图像(每个相机一个图像),则可以选择图像内的花园花朵。确定代表所捕获的图像组的重叠部分内的解相关量的一组相关系数。可以对该组相关系数进行加权,使得与所标识的感兴趣对象相关联的相关系数比其它相关系数被更重地加权。在一些实施例中,与代表图像组中的图像中的每个图像之间的重叠的中心区域相关联的相关系数被更重地加权。在一些实施例中,相关系数越远离感兴趣对象或中心区域,其加权越小。

读取窗口130(诸如图7B的读取窗口A,B,C和D)被调整(在图像传感器捕获窗口140内移动),使得加权的该组相关系数最低。换句话说,读取窗口130重新定位在图像传感器捕获窗口140内,针对使用多相机阵列的经调整的读取窗口130捕获的一组图像确定一组相关系数,并且如果所得加权的该组相关系数代表较少的解相关,则在先前读取窗口130上选择经调整的读取窗口130。在一些实施例中,可以使用描述相关系数和读取窗口位置/调整之间的关系的查找表或函数来调整读取窗口130。在一些实施例中,代替使用一组相关系数,可以使用重叠读取窗口部分内的其它相关表示,使得可以响应于如本文中所描述的读取窗口的迭代调整来确定最小熵或近最小熵。

该过程可以重复若干次,比如直到所捕获的图像代表低于阈值水平的解相关。图7C图示了根据一个实施例的多相机阵列的图像传感器捕获窗口140内的对准读取窗口130A',B',C'和D'。在一些实施例中,读取窗口130被调整,直到多相机阵列中的每个透镜的视线会聚在被确定成以产生所捕获的图像组之间的最佳相关水平的距离d处。图7D图示了多相机阵列700的图像传感器之间的最佳相关距离。

图8A至图8C图示了根据一个实施例的用于会聚点调整的多相机阵列中的每个图像传感器的读取窗口调整。图8A至图8C中图示了相机阵列800中的图像传感器窗口140的多个读取窗口130和基于读取窗口的移位的距离825的对应的会聚点820。如图8A所图示的,相机阵列800包括捕获共享视图115的右侧的图像810A和共享视图115的左侧的图像810B的左相机805A和右相机805B。如垂直虚线815所示,相机805之间的大致中心815产生所捕获的图像810A和810B的共享视场的一部分的大致中心。所捕获的图像810A和810B都捕获由两个相机805A和805B在共享视图115内看到的立方体。

当捕获共享视图115时,相机805A和805B的透镜的中心之间的距离影响相机805A和805B的透镜的会聚点820。如图8A至图8C所图示的,可以通过移位相机805A和805B内的图像传感器窗口140的读取窗口130来增加和减少透镜的中心之间的距离。因此,读取窗口130中的相机805A和805B之间的共享视场的部分的距离825A影响相机805A和805B的透镜的中心之间的距离,并且在820A处产生会聚点。

例如,当距离825增加时,如图8B中的距离825B所看到的,因为读取窗口之间的距离减小,所以相机805A和805B的透镜的中心之间的距离减小,并且在对象后面的820B处产生更远离相机阵列800的会聚点。因为读取窗口之间的距离增加,所以当距离825减小时,如图8C中的距离825C所看到的,相机805A和805B的透镜的中心之间的距离增加,并且在对象前面的820C处产生更接近相机阵列800的会聚点。

在各种实施例中,读取窗口之间的距离可以从移位相机805A和805B的图像传感器的读取窗口中的一个或两个读取窗口而增加或减少。读取窗口的移位可以使用相机阵列800基于对象检测算法或通过用户的手动输入来自动进行。例如,用户可以输入设置或模式(例如,风景、肖像、近摄、运动、夜晚、电影),并且基于输入,读取窗口被移位以更好地捕获该类型的模式的图像。

图像处理和拼接

图9A图示了根据一个实施例的由2×2相机阵列中的相机捕获的一组图像。例如,图3的相机阵列300共同捕获共享视图115,相机105A捕获图像910C,相机105B捕获图像910D,相机105C捕获图像910A,并且相机105D捕获图像910B。为了讨论的目的,将在由相机105C捕获的图像910A的情景中讨论本文中所讨论的图像处理步骤。然而,图像处理步骤也以与其它图像910B,910C和910D相同的顺序来执行。在另一实施例中,应用于图像的图像处理步骤可以不同于本文中所描述的图像处理步骤,或者可以以不同的顺序对其它图像910B,910C和910D执行。

由相机阵列捕获的图像可以基于相机阵列中的相机或相机阵列中的相机的位置(例如,滚动、俯仰、偏航等)在失真和扭曲方面变化。因此,如在图像910A中所看到的,如果相机是鱼眼相机,则所捕获的图像910A具有鱼眼失真。另外,因为每个图像在不同的成角度的视场被捕获,所以图像910A的共享视场的部分以与相邻图像910B和910C不同的定向成角度。由于图像910A,910B,910C和910D具有共享视图并且每个图像与相邻图像共享共享视场920的一部分,所以公共对象(诸如对象930)在共享视图920的部分中是可见的。例如,910A和910B之间的公共对象930AB位于共享视场920AB的部分中,910A和910C之间的公共对象930AC位于共享视场920AC的部分中,910B和910D之间的公共对象930BD位于共享视场920BD的部分中,并且910C和910D之间的公共对象930CD处于共享视场920CD的部分中。因此,每个图像具有代表与水平相邻图像的对应部分的重叠视场的第一部分、以及代表与垂直相邻图像的对应部分的重叠视场的第二部分。在所示的示例中,由于鱼眼失真,每个公共对象930在每个相邻图像中被不同地扭曲。

图9B图示了根据一个实施例的基于重叠部分而对准的图9A的所捕获的图像。根据之前的示例,公共对象930被假定为垂直直线和水平直线,但是由于鱼眼失真而被扭曲。因此,如图9B所图示的,由于公共对象930被假定为是直的,或者一般来说,由于公共对象930的形状是已知的,因此,可以处理图9A(图像910A周围的虚线所图示的)的所捕获的图像,以使公共对象930在相邻图像之间对准(换句话说,以使公共对象930在相邻图像之间具有正确的定向和形状)。可以通过以下来执行对准:扭曲函数、或以产生公共对象930在相邻图像之间的形状和定向上对准的方式来拉伸图像的任何其它合适图像处理算法。在一个实施例中,扭曲仅拉直公共对象930或校正公共对象930和公共对象930附近的区域的失真,同时使更远离共同对象的外边缘处于其失真状态。在这里所示的实施例中,不局部地执行扭曲而是在整个图像910上执行扭曲,从而产生公共对象930的校正和图像910的外边缘的扭曲。

图9C图示了根据一个实施例的被裁剪成不与对应的相邻图像水平或垂直对准的多余部分的图9B的对准图像。在四个图像910A,910B,910C和910D的外边缘处沿着图像的x轴和y轴裁剪(以图像910A周围的虚线图示的)对准图像(诸如图像910A),从而产生具有至少2个直边的裁剪图像(如图9C中的每个图像中所图示的)。换句话说,对于每个图像,裁剪与图像的代表与相邻图像共享的视场的图像的部分水平和垂直对准的图像的部分。

图9D图示了根据一个实施例的被扭曲成基于对准来校正失真的图9C的裁剪图像。例如,当对准的图像被扭曲以拉直公共对象930时,对准的图像的外边缘也被扭曲。这里,用于校正失真的扭曲的幅度基于该部分到图像的第一部分和图像的第二部分的距离,其中,代表与相邻图像共享的视场的图像的第一部分和代表与相邻图像共享的视场的图像的第二部分的第二扭曲的幅度基本上为0。在其中只有公共对象930附近的区域被扭曲的实施例中,不需要校正图9C的裁剪图像的失真。

一般来说,所校正的失真是由来自图9A至图9B的对准步骤引起的失真。因此,如果在对准之后没有校正失真,则不需要该步骤。然而,在所图示的示例之后,对准图像的外边缘在对准期间扭曲,因此,这里使用扭曲技术和其它变换来校正外边缘的失真。一般来说,这里可以执行用来执行失真校正的功能的任何图像处理算法。然而,这里执行的图像处理算法可以不影响公共对象930。在该示例中,公共对象930是线,因此,这里执行的用于校正失真的图像处理算法不会扭曲公共对象930,并且在对图像910进行失真校正之后,公共对象930在形状上仍然是线性的。

图9E图示了根据一个实施例的被裁剪以移除多余部分和重叠部分的图9D的校正图像。移除图像910的外边缘上的多余部分以及共享视场的重叠部分。然后,通过将每个裁剪图像拼接为水平相邻的裁剪图像和垂直相邻的裁剪图像来生成由相机阵列捕获的共享视图的最终图像。在其它实施例中,基本上减少图9D的校正图像的重叠部分,并且每个图像与每个对应的水平和垂直相邻的裁剪图像级联。附加实施例

图10A图示了根据一个实施例的多相机阵列中的两个透镜模块之间的距离。透镜模块1000A和1000B在透镜的中心之间具有一定距离D。透镜之间的距离产生视差误差,当将在多个相机阵列中捕获的图像拼接在一起时,必须校正该视差误差。即使当透镜模块非常接近地被放置,比如5mm或更小时,也引入视差误差。

为了帮助减少或消除视差误差,单个透镜可以用于多相机阵列中的多个相机。在一些实施例中,公共透镜是球形透镜。图10B图示了根据一个实施例的用于多相机阵列中的球形透镜。球形透镜1002用于透镜模块1000A和1000B两者。应当指出,尽管在图10B的实施例中仅图示了两个透镜,但是公共透镜(诸如球形透镜1002)可以用于多相机阵列中的任何或所有相机,诸如2×2相机阵列中的所有4个相机。

通过球形透镜1002的和到每个透镜模块1000上的光的光路在球形透镜1002内相交。因此,透镜中心之间的距离D减少到零,从而有效地消除视差误差。应当指出,在一些实施例中,球形透镜1002对使用球形透镜1002捕获的图像引入失真;在这样的实施例中,在将图像拼接在一起之前,可以将附加扭曲函数应用于使用球形透镜1002捕获的每个图像,以减少由球形透镜1002引入的失真的影响。

图11A图示了根据一个实施例的被配置成以多个配置接收并且紧固多相机阵列模块1110的相机本体1100。相机本体1100可以包括被配置成向相机本体1100的用户提供相机接口的相机电路、接口等(未示出)。相机本体1100包括腔室1105,比如在相机本体1100的前表面上,其被配置成以多个配置中的任何配置来接收多相机阵列模块1110。

图11B图示了根据一个实施例的用于以多种配置而插入相机本体1100内的多相机阵列模块1110。多相机阵列模块1110(例如,2×2相机阵列)包括联接在一起以形成基本上矩形形状的4个相机1115A-D,其中两个突起沿着多相机模块1110的两个相邻边的中点而延伸远离相机阵列模块1110。在其它实施例中,相机阵列模块1110可以是具有类似突起的大致圆形形状。相机本体1100的腔室1105可以包括被布置成以任何数目个配置来容纳多相机阵列模块1110的突起的相互腔室。在另一实施例中,相机阵列模块1110可以包括其中突起所在的柔性材料,并且相机本体的腔室1105可以包括突起而不是相互腔室。因此,腔室1105的突起可以卡扣到相机阵列模块1110中存在的柔性材料中。

在图11A的实施例中,相机机身1100的前面内的腔室1105可以在图11B中所图示的位置接收多相机模块1110,并且可以进一步在顺时针旋转90度的位置中接收多相机阵列模块1110。这种配置有利地允许用户在相机本体1100的第一定向上捕获图像,并且在第二定向上移除多相机阵列模块1110、旋转多相机阵列模块1110和将多相机阵列模块1110重新插入到相机本体1100中。在备选实施例中,相机本体1100可以在相机本体1100中的同时而被旋转。例如,腔室1105可以包括沿着腔室1105的边缘在相机本体1100的内部刻出的相互腔室路径。然后,当相机阵列模块1110插入腔室1105中时,可以当模块1110的突起与相机本体1100内部的相互腔室路径对准时而旋转相机阵列模块1110。尽管图11A和图11B图示了特定的实施例,但是在实践中,可以根据本文中所描述的原理使用相机本体1100的相互腔室1105和多相机阵列模块1110的任何配置。

图12A图示了根据一个实施例的包括电池系统和相关联的电性接口的相机索带1200。在图12A的实施例中,相机索带1200包括电性联接到并且被配置成向通过索带1200内的索带接线1205联接到索带的相机系统提供电力的一个或多个电池(例如,1210A,1210B,1210C和1210D)。例如,相机索带1200可以包括电池接口1215A,1215B和1215C,如图12B所示,每个电池接口1215A,1215B和1215C可以接收电池1210,并且通过接线1205将电池1210与其它电池1200电性联接。

图12B图示了根据一个实施例的图12A的相机索带1200。索带1200包括多个层:两个外部保护层1200A和1200D,被配置成向电池提供电力的电池层1200B,以及包括被配置成执行各种功能的一个或多个电路(未示出,诸如被配置成标识由电池存储的电量、相机可用的电量等的电路)的电路层1200C。相机索带1200可以通过与接线1205或与电池接口1215对准的连接接口而联接到相机阵列。换句话说,相机索带可以将相机或多相机阵列紧固到用户,并且电池1210可以经由接线1205向安全相机或多个相机阵列提供电力。

图13图示了根据一个实施例的用于相机系统的抓握系统。相机系统的后视图1300A图示了相机的后部。俯视图1300B图示了相机系统的顶部的一侧上的抓握图案。图13的实施例中图示的抓握图案包括在相机系统的用户预期的抓握滑动的方向上与本体成钝角关系的非对称的锯齿抓握/摩擦突起。在一些实施例中,抓握图案的深度可以小于0.5mm,并且相距在0.25mm之内。前视图1300C图示了相机的前部的一侧上的两个抓握区域。每个握持区域包括锯齿突起,该锯齿突起在不同方向上成角度的并且延伸各种长度越过相机系统的前部。锯齿突起的不同角度在预期抓握滑动中占据不同方向;比如,顶部抓握区域可以是成角度的以适应由食指的前部引起的抓握滑动,并且底部抓握区域可以是成角度的以适应由中指的侧面引起的抓握滑动。底视图1300D图示了相机系统的底部的一侧上的抓握图案,并且侧视图1300E图示了相机系统的侧部的一部分上的抓握图案。图13的实施例中图示的抓握系统13有利地增加了用户抓握相机的能力,比如在诸如在寒冷和潮湿条件下的相机操作之类的恶劣条件下。相机系统上的抓握图案的位置还有利地将用户的手引导到相机的不与相机按钮、接口等干扰并且不模糊相机透镜的部分。

图14A图示了根据一个实施例的多相机阵列中的相邻透镜堆叠。每个透镜堆叠(透镜堆叠1400A和透镜堆叠1400B)包括包含一个或多个透镜1404的堆叠外壳1402。每个堆叠外壳1402被成形成使得外壳的壁或外表面从每个透镜堆叠1400的后部会聚到前部。例如,堆叠外壳1402的外层可以距离包括透镜1404的内部部件小于5mm。因此,每个透镜堆叠1400中的透镜1404从每个透镜堆叠1400的后部到前部的直径逐渐变小。图14A的实施例中的每个透镜1404可以是圆盘透镜、平面透镜等。应当指出,尽管某些透镜在本文中被称为“圆盘透镜”或“平面透镜”,但是应当指出,在实践中,这些透镜可以具有弯曲的前面和/或后面,但是这些透镜的直径通常大于这些透镜的前后厚度。使用透镜堆叠1400A和1400B捕获的图像之间的视差误差取决于透镜堆叠1400A和1400B的每个最向前的透镜的中心之间的距离Δ。当距离Δ减小时,由透镜堆叠1400A和1400B捕获的图像中的视差误差会减小。

图14B图示了根据一个实施例的包括多相机阵列中的锥形透镜1414的相邻透镜堆叠1410。每个透镜堆叠1410A和1410B包括多个透镜:一个或多个圆盘透镜1412、以及一个最向前的锥形透镜1414。如本文中所使用的,锥形透镜1414是指具有圆形横截面和可变直径的透镜,使得锥形透镜1414的后部(面向透镜堆叠的后侧的边)的横截面的直径大于透镜的前部的横截面的直径(面向透镜堆叠的前侧的边)。应当指出,尽管图14B的锥形透镜1414被示出为具有弯曲的前面和后面,但是在实践中,这些面可以是平坦的,或者可以被弯曲到比如图14B所示的更小的程度。

在图14B的多相机阵列中的透镜堆叠1410中使用锥形透镜1414作为最向前的透镜会允许每个透镜堆叠1410的外壳1402与图14A的透镜堆叠1400相比更向前延伸。这又减少了最向前的透镜的中心之间的距离Δ,其又减少了由多相机阵列捕获的图像中的视差误差。应当指出,尽管在图14B的实施例中仅图示了两个透镜堆叠1410,但是在实践中,多相机阵列可以包括任何数目个透镜堆叠,每个透镜堆叠包括作为透镜堆叠内的最向前的透镜的锥形透镜。

应当指出,本文中所描述的多相机阵列可以被配置成联接到并且用作被配置成与多相机阵列设备进行无线通信的任何设备的遥控器。比如,多相机阵列可以被配置成用作另一相机、音乐/视频回放设备、存储设备、无线通信设备、遥测监控设备、日历控制或显示设备、幻灯片放映控制设备或任何其它无线设备的遥控器。

其它配置注意事项

在本说明书中,一些实施例已经使用表达“联接”及其派生词。如本文中所使用的术语“联接”不必限于直接物理或电接触的两个或更多个元件。相反,术语“联接”还可以涵盖两个或更多个元件彼此不直接接触,但是仍然彼此协作或相互作用,或者被构造成在元件之间提供热传导路径。

同样地,如本文中所使用的,术语“包括(comprises)”、“包括(comprising)”、“包含(includes)”、“包含(including)”、“具有(has)”、“具有(having)”或其任何其它变体旨在覆盖非排他性的包含。例如,包括元件列表的过程、方法、物品或装置不一定仅限于那些元件,而是可以包括未明确列出的或这些过程、方法、物品或装置所固有的其它元件。

另外,使用“一”或“一个”来描述本文中的实施例的元件和部件。这仅仅是为了方便和给出本发明的一般意义。该描述应该被理解为包括一个或至少一个,并且单数也包括复数,除非明显是其它意思。

最后,如本文中所使用的,对“一个实施例”或“实施例”的任何引用意味着结合该实施例所描述的特定元件、特征、结构或特点包括在至少一个实施例中。在说明书中各处出现的短语“在一个实施例中”不一定都是指相同的实施例。

在阅读本公开内容时,本领域技术人员应当理解如从本文的原理公开的附加的备选结构和功能设计。因此,尽管已经图示并且描述了特定实施例和应用,但是应当理解,所公开的实施例不限于本文中所公开的精确构造和部件。在不背离所附权利要求中限定的精神和范围的情况下,可以对本文中所公开的方法和装置的布置、操作和细节进行对于本领域技术人员来说明显的各种修改、改变和变化。

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