具有稳定功能的相机移动设备支架
[0001]
背景
[0002]
视场(fov)是由相机成像的场景的范围。fov内部的对象(object)将出现在相机捕获和/或输出的图像中。例如,fov可对应于相机镜头将输入到相机的光学传感器的光投射到其中的立体角。在使用手持式相机进行图像捕获期间,相机的移动经常会导致被捕获图像中对象位置的无意的变化。
[0003]
相机使用者的手持经常会导致图像或视频模糊或失焦。云台或稳定器用于在图像捕获过程中稳定相机设备。这样的解决方案需要两个或更多个运动传感器,例如陀螺仪,以及相关的电子电路,以获得用于计算控制信号的信息,以校正用户的手抖。运动传感器和相关的电子电路增加了制造成本和产品尺寸。
[0004]
概述
[0005]
总体上,在一个方面,本发明涉及一种稳定相机设备的方法。该方法包括:从安装在相机设备支架中的相机设备接收表示选自相机设备的方向(orientation)和运动(movement)的至少一个的传感器数据;使用预定算法,基于传感器数据生成控制信号,并使用所述控制信号调整相机设备支架的几何特征,其中所述几何特征对应于选自由相机设备支架的方向和运动组成的组中的至少一个。
[0006]
总体上,在一个方面,本发明涉及一种用于稳定相机设备的方向控制器。所述方向控制器包括计算机处理器和存储指令的存储器,在被执行时使计算机处理器从安装在相机设备支架中的相机设备接收代表选自相机设备的方向和运动中的至少一个的传感器数据,使用预定算法基于传感器数据生成控制信号,并使用所述控制信号调整相机设备支架的几何特征,其中所述几何特征对应于选自由相机设备支架的方向和运动组成的组中的至少一个。
[0007]
总体上,一方面,本发明涉及一种非暂时性计算机可读介质,其存储用于稳定相机设备的指令。指令由计算机处理器执行时,包括以下功能:从安装在相机设备支架中的相机设备接收表示选自由相机设备的方向和运动组成的组中的传感器数据,该传感器数据表示相机设备的方向和运动中的至少一个,使用预定算法生成基于传感器数据的控制信号,并使用所述控制信号调整相机设备支架支架的几何特征,其中,所述几何特征对应于选自方向和运动中的至少一个。
[0008]
通过以下描述和所附权利要求书,本发明的其他方面将变得显而易见。
附图说明
[0009]
图1.1和1.2示出了根据本发明的一个或多个实施方案的系统的示意性框图。
[0010]
图1.3示出了根据本发明的一个或多个实施方案的矢量图。
[0011]
图2.1和2.2示出了根据本发明的一个或多个实施方案的方法流程图。
[0012]
图3.1、3.2、3.3、4、5和6示出了根据本发明的一个或多个实施方案的各种示例。
[0013]
图7.1和7.2示出了根据本发明的一个或多个实施方案的计算系统。
[0014]
详述
[0015]
现在将参考附图详细描述本发明的特定实施方案。为了一致性,各个附图中的相同元件可以由相同的附图标记表示。
[0016]
在下面对本发明的实施方案的详细描述中,阐述了许多具体细节以便提供对本发明的更透彻的理解。然而,对于本领域的普通技术人员将显而易见的是,本发明可以在没有这些具体细节的情况下被实施。在其他情况下,没有详细描述众所周知的特征,以避免不必要地使描述变得复杂。
[0017]
在以下描述中,在本发明的各种实施方案中,附图描述的任何组件可以等同于任何其他附图描述的一个或多个相同名称的组件。为了简洁起见,基于各种图例隐式地标识了这些组件的至少一部分。此外,将不再重复每个附图中关于这些组件的描述。因此,每个附图的组件的每个和每一个实施方案通过引用的方式并入,并假定为可选地存在于具有一个或多个相同名称的组件的每个其他附图中。另外,根据本发明的各种实施方案,对附图的组件的任何描述都将被解释为可选的实施方案,该可选的实施方案可以附加地、结合于或代替与其他任何附图中对应的类似名称的组件相关的实施方案而实现。在附图中,黑色实线共线点表示可以可选地存在与实线共线点之前和/或之后的组件相似的附加组件。此外,连接附图的各组件的实线或虚线表示所连接的组件之间的关系。虚线表示该关系可能不包括任何物理连接或物理元件或不与之相关联。
[0018]
在整个申请中,序数(例如,第一、第二、第三等)可以用作元素(即,申请中的任何名词)的形容词。除非明确公开,例如通过使用术语“之前”,“之后”,“单个”和其他此类术语,否则序数的使用并不暗示或创建元素的任何特定顺序,也不意味着将任何元素限制为单个元素。相反,使用序数是为了区分元素。举例来说,第一元素不同于第二元素,并且第一元素可以包含一个以上的元素,并且可以按照元素的顺序在第二元素之后(或之前)。
[0019]
总体上,本发明的实施方案提供一种用于在图像捕获期间稳定相机设备的系统、方法和计算机可读介质。特别地,从安装在相机设备支架中的相机设备接收传感器数据。该传感器数据代表相机设备的方向和/或运动。然后至少基于传感器数据,使用预定算法来生成控制信号。使用该控制信号,调整相机设备支架的几何特征,其中该几何特征对应于相机设备支架的方向和/或运动。
[0020]
图1.1示出了根据一个或多个实施方案的系统100。在一个或多个实施方案中,图1.1中所示的一个或多个模块和元件可可以被省略、重复和/或替换。因此,本发明的实施方案不应被认为限于图1.1所示的模块的特定布置。
[0021]
如图1.1所示,系统100包括具有相机镜头111和传感器112的相机设备110、方向控制器120、相机设备支架130、场景140、相机镜头111的视场(fov)141,出现在fov 141内的对象(object)142和与该对象142相连的光源143。此外,相机设备110,方向控制器120和相机设备支架130彼此通信地耦合。特别地,将方向控制器120和相机设备支架130统称为稳定的相机设备支架125。在本发明的一个或多个实施方案中,相机设备110、方向控制器120和相机设备支架130中的两个或更多个被集成到单个设备中。例如,方向控制器120的至少一部分可以被包括在相机设备110中。在另一示例中,方向控制器120的至少一部分可以被包括在相机设备支架130中。在又一示例中,方向控制器120的一部分被包括在相机设备110中,而方向控制器120的另一部分被包括在相机设备支架130中。取决于示例中的哪一个,稳定的相机设备支架125可以是方向控制器120和相机设备支架130的逻辑组合或物理组合。
[0022]
在本发明的一个或多个实施方案中,光源143是任何发光的设备。在一个或多个实施方案中,光源143包括发光二极管(led)。在一个或多个实施方案中,光源143发出频闪光,其不时改变强度和/或颜色。例如,频闪灯可以根据特定的占空比(即,当光模式具有亮水平时的时间百分比)和重复率(即在一个单位时间内强度改变的时间)发射自由运行的光变化模式。如本文所使用的,光变化模式是光的强度和/或颜色变化的模式。在一个或多个实施方案中,与相机设备110的帧速率相比,光源143以低重复率(例如10赫兹、20赫兹等)发射光变化模式。帧速率是在单位时间内由相机设备110捕获的图像的数量(例如,一连串静止图像或视频记录)。在一个或多个实施方案中,光源143发出与相机设备110的帧速率同步的光变化模式。
[0023]
在本发明的一个或多个实施方案中,相机设备110是具有相机镜头(例如,相机镜头111)和用于拍摄照片和/或视频记录的相关组件的设备。具有通信能力的专用相机是相机设备110的实例。在一个或多个实施方案中,相机设备110是移动设备,例如具有内置相机的移动电话,称为智能电话。智能电话可以具有带有图形用户界面的显示器,该显示器占据前表面的很大一部分(例如70%或更大)。相机镜头111可以在智能电话的正面或背面。在一个或多个实施方案中,相机设备110包括定时器,以基于光源143的占空比和/或重复率来控制图像捕获的帧速率。在一个或多个实施方案中,相机设备110包括传感器112,其可以包括加速度计、陀螺仪、磁力计、重力传感器、全球定位系统(gps)等中的一个或多个。来自传感器112的传感器数据对应于通常影响相机设备110的当前和/或未来方向和/或运动的测量。在一个或多个实施方案中,除了或代替相机设备110中的传感器112,相机设备支架130包括具有与传感器112相似功能的嵌入式传感器。
[0024]
在一个或多个实施方案中,场景140是发生由相机设备110成像的动作或事件的地方。视场(fov)141是由相机设备110使用相机镜头111成像的场景140的范围。换句话说,fov 141内部的对象将出现在由相机设备110捕获和/或输出的图像中。例如,fov 141可以对应于立体角,在该立体角内,相机镜头111投射输入到相机设备110的相关联的光学传感器(未示出)的光。在一个或多个实施方案中,fov 141根据相机镜头111如何朝向场景140定向、相对于场景140变焦或相对于场景140定位而对应于场景140的不同部分。在一个或多个实施方案中,相机设备110包括硬件组件、软件组件或它们的组合。在一个或多个实施方案中,相机设备110可包括或使用参考下面的图7.1和7.2描述的计算系统700和网络720的至少一部分来实现。
[0025]
在本发明的一个或多个实施方案中,相机设备支架130被配置为机械地保持相机设备110并响应于来自方向控制器120的控制信号来调整相机镜头111的fov 141。例如,相机设备支架130可以包括用于调整相机镜头111的相机角度的电动倾斜和旋转设备。在另一个示例中,相机设备支架130可以包括用于调整相机镜头111相对于场景140的位置的电动水平和垂直滑动设备。滑动设备可以包括用于保持和移动相机设备110的机械平台。相机设备支架130的示例参照下面的图3.1和3.3的描述。
[0026]
在一个或多个实施方案中,方向控制器120包括硬件组件、软件组件或其组合,其被配置为生成上述控制信号以调整相机镜头111的fov 141。特别地,方向控制器120基于来自传感器112的传感器数据使用预定算法来生成控制信号。预定算法的示例参考以下的图1.3、2.1和2.2的描述。例如,方向控制器120可以通过使用控制信号来控制相机设备支架
130来控制fov 141。在另一示例中,方向控制器120可以通过使用控制信号控制相机镜头111的变焦水平来还控制fov 141。在一个或多个实施方案中,方向控制器120控制fov 141,使得对象142出现在fov 141内的稳定位置。在一个或多个实施方案中,方向控制器120控制fov 141,使得对象142朝着fov 141内的目标位置移动。在一个或多个实施方案中,方向控制器120控制fov 141,使得对象142以改进的稳定性/平滑度朝fov 141内的目标位置移动。在一个或多个实施方案中,方向控制器120使用参考下面的图2.1和2.2描述的方法来控制fov 141。在一个或多个实施方案中,方向控制器120包括参考下述图1.2描述的组件。
[0027]
图1.2示出了根据一个或多个实施方案的方向控制器120的细节。图1.2的下列描述是指以上图1.1中描述的各种组件。在一个或多个实施方案中,图1.2中所示的模块和元件中的一个或多个可包括多个组件可以被省略、重复和/或替换。因此,本发明的实施方案不应被认为限于图1.2所示的模块的特定布置。
[0028]
如图1.2所示,方向控制器120包括硬件处理器121、存储器122和存储库123。在本发明的一个或多个实施方案中,硬件处理器121对应于以下图7.1所示的计算机处理器702。类似地,存储器122和存储库123对应于以下图7.1中所描绘的非持久性存储器704和/或持久性存储器706。例如,存储器122可以存储软件指令,该软件指令在被执行时使硬件处理器121执行以上图1.1中描绘的相机设备110的fov调整功能。在一个或多个实施方案中,fov调整功能使使用相机设备110的图像捕获稳定。在一个或多个实施方案中,方向控制器120根据参考下面的图2.1和2.2描述的方法流程图来执行fov调整功能。在一个或多个实施方案中,存储器122存储指令以执行参考下面的图2.1和2.2描述的方法流程图的一个或多个部分。在一个或多个实施方案中,方向控制器120和相机设备110的至少一部分被集成到单个设备中。在这样的实施方案中,执行参考图2.1和2.2描述的方法流程图的一个或多个部分的指令是移动应用程序或移动app的一部分,移动应用程序是一种用户可安装的软件应用程序,设计为在智能手机或其他移动设备上运行。在一个或多个实施方案中,方向控制器120和相机设备支架130的至少一部分被集成到单个设备中。在这样的实施方案中,执行参考图2.1和2.2描述的方法流程图的一个或多个部分的指令是设计为在相机设备支架130上运行的本地应用程序(例如,已安装的软件,嵌入式固件)的一部分。
[0029]
还如图1.2所示,储存库123包括传感器数据127、图像序列126、光变化模式124、相机运动参数125a、fov运动参数125b、目标位置128、目标方向变化128a和电机控制参数129。特别地,图像序列126包括由相机设备110捕获的连续图像(例如,图像a 126a)。例如,图像a 126a对应于场景140的在特定时间点被fov 141覆盖的部分。
[0030]
光变化模式124是光强度和/或颜色在图像序列126的不同强度水平和/或颜色之间交替的模式。在一个或多个实施方案中,光变化模式124对应于图像序列126的每个图像中的斑点。例如,可以通过每个图像中的像素位置或连接的像素位置的集合来定义斑点。在一个或多个实施方案中,光变化模式124由从光源143发射的频闪光产生,并指示光源143在每个图像内的位置。换句话说,可以基于在图像序列126上找到光变化模式124的位置来确定每个图像内的光源143的位置。例如,光变化模式124指示光源143在图像a 126a中的位置a 126b处。类似地,图像序列126中的每个其他图像与光源143的位置相关联。
[0031]
在一个或多个实施方案中,在图像捕获期间不使用光源143。目标位置128是相机设备110的三维方向。具体地,方向控制器120被配置为将相机设备110的光学传感器定向到
目标位置128。
[0032]
在一个或多个实施方案中,光源143附加到对象142以便于图像捕获的稳定。目标位置128是方向控制器120被配置为将对象142定位在fov 141中的预定位置。例如,目标位置128可以被定义为fov 141的中心,其对应于图像序列126中的每个图像的中心。换句话说,方向控制器120被配置为调整fov 141,使得对象142出现在调整之后的图像的中心(即,目标位置128)。在其他示例中,目标位置128可以被定义为与fov 141的中心不同的位置。例如,可以从用户获得目标位置以指定对象142将在图像中位于的位置。在一个或多个实施方案中,目标位置由先前图像中的光源的位置(例如,位置a 126b)确定,使得对象142在图像序列126中显得稳定(例如,相对于fov没有明显的运动)。
[0033]
因为对象142在fov 141中出现的位置取决于相机设备110的方向,所以对象142可以通过改变相机设备110的方向与fov 141中的目标位置128对准。目标方向变化128a是指示将设备142与目标位置128对准的相机设备110的方向的变化量的计算值。
[0034]
在一个或多个实施方案中,相机运动参数125a描述了相机设备110的位置、方向和运动信息。例如,相机运动参数125a可以对应于,或导出自相机设备110中的传感器112的传感器数据。在另一示例中,相机运动参数125a可以对应于或导出自相机设备支架130中的嵌入式传感器的传感器数据。在一个或多个实施方案中,相机运动参数125b包括矢量参数,例如传感器加速度矢量a(t)和位置矢量p(t)。传感器加速度矢量a(t)表示相机设备110在时间点“t”经历的加速度,并且是使用加速
[0035]
在一个或多个实施方案中,在图像捕获期间不使用光源143。位置矢量p(t)表示在时间点“t”处的相机设备110,更具体地说是相机设备110的光学传感器的三维方向。例如,位置矢量p(t)可以从指示地球重力方向的重力传感器数据中得出。因此,基于相机方向与地球重力之间的差来确定位置矢量p(t)。在一个或多个实施方案中,位置矢量p(t)与光学传感器表面正交,该光学传感器表面被称为成像平面。在这样的实施方案中,重力传感器是位置传感器。
[0036]
在一个或多个实施方案中,光源143附加到对象142以便于图像捕获的稳定。位置矢量p(t)表示fov 141内的对象142在时间点“t”处的三维位置。例如,位置矢量p(t)可以从由相机设备110的光学传感器捕获的fov 141内的光源143的位置得出。在这样的实施方案中,光学传感器是位置传感器。
[0037]
在一个或多个实施方案中,fov移动参数125b描述了fov 141内的对象142的位置和移动信息。换句话说,fov运动参数125b与光学传感器通过相机镜头111成像的对象142的位置和运动有关。在一个或多个实施方案中,fov运动参数125b包括矢量参数,诸如帧矢量f(t)和帧加速度矢量fa(t)。
[0038]
在一个或多个实施方案中,在图像捕获期间不使用光源143。帧向量f(t)对应于位置矢量p(t)与目标位置128之间的差。帧加速度矢量fa(t)是传感器加速度矢量a(t)的部分矢量。具体地说,帧加速度矢量fa(t)是传感器加速度矢量a(t)在成像平面上的投影。
[0039]
在一个或多个实施方案中,光源143附加到对象142以便于图像捕获的稳定。帧矢量f(t)是在时间点“t”处目标位置128与图像中光源143的位置(例如,位置a 126b)之间的距离矢量,即,光学传感器通过相机镜头111成像。在一个或多个实施方案中,帧矢量f(t)包括基于从光学传感器捕获的或临时的图像而计算出的水平方向距离和垂直距离。帧矢量f
(t)可以基于多个像素或任何其他合适的距离比例来表示。在一个或多个实施方案中,对象142可以是运动对象,使得光源143的位置(例如,位置a 126b)可以在图像序列126中从一个图像到另一个图像变化。在这样的实施方案中,帧加速度矢量fa(t)是在时间点“t”处光源143的位置(例如,位置a 126b)随时间的变化率。例如,帧加速矢量fa(t)可以与光源143的位置(例如,位置a 126b)从图像序列126中的一个图像到下一个图像的改变相关联。取决于对象142的运动方向,帧加速度矢量fa(t)可以包括水平部分和垂直部分。在数学上,在一个或多个实施方案中,帧加速度矢量fa(t)对应于帧矢量f(t)随时间的导数。目标位置128、相机运动参数125a和fov运动参数125b的更多细节在以下图1.3中示出。
[0040]
在一个或多个实施方案中,电机控制参数129对应于用于控制相机设备支架130的电机以稳定使用相机设备110的图像捕获的控制信息。电机控制参数129对应于基于相机设备110的方向和运动而调整的目标方向变化128a。在一个或多个实施方案中,方向控制器120基于上述目标位置128、相机运动参数125a和fov运动参数125b中的一个或多个来生成电机控制参数129。在一个或多个实施方案中,电机控制参数129包括变化矢量c(t),其对于时间点“t”指定旋转变化量、倾斜变化量、变速变化量或其他变化量,该变化量被发送到相机设备支架130以实现目标方向变化128a。参照下面的图3.1和3.2描述控制相机设备支架130的电机的示例。
[0041]
在一个或多个实施方案中,方向控制器120基于如上所述的图像序列126、光变化模式124,目标位置128、相机运动参数125a、fov运动参数125b和电机控制参数129执行fov调整功能。具体地,方向控制器120使用参考下面的图2.1和2.2描述的方法来执行fov调整功能。图像序列126、光变化模式124、目标位置128、相机运动参数125a、fov运动参数125b和电机控制参数129的示例参照下面的图3.1、3.2、3.3和4-6进行描述。
[0042]
图1.3示出了根据一个或多个实施方案的目标位置128、相机运动参数125a和fov运动参数125b的细节。在一个或多个实施方案中,图1.3中所示的模块和元件中的一个或多个可以被省略、重复和/或替换。因此,本发明的实施方案不应被认为限于图1.3所示的模块的特定布置。
[0043]
如图1.3所示,矢量模型130示出了各种矢量之间的关系,例如帧矢量135=位置矢量134a-目标位置133,以及帧加速度矢量136=位置矢量134a-位置矢量134b。特别地,帧矢量135对应于以上图1.2中描绘的目标方向变化128a。两种关系在数学上表示为:
[0044]
f(t)=p(t)-目标位置
[0045]
fa(t)=p(t)-p(t-1)
[0046]
此外,计算模型a 131示出了电机控制参数129被计算为变化矢量131=位置矢量134a-帧矢量135-传感器加速度矢量137。计算模型a 131在数学上表示为:
[0047]
c(t)=p(t)-f(t)-a(t)
[0048]
其中c(t)表示改变矢量131,其是相机设备支架130的电机改变以实现用于使用相机设备110进行图像捕获的相机稳定的量。
[0049]
在图像捕获期间不使用光源的实施方案中,计算模型a 131可用于稳定相机设备指向目标位置的方向。在使用光源来促进稳定图像捕获的实施方案中,计算模型a 131可以用于将光源位置(表示对象)保持在捕获图像中的目标位置处稳定。
[0050]
相反,计算模型b 132显示,电机控制参数129计算为变化矢量131=位置矢量
134a-帧加速度矢量136-传感器加速度矢量137。计算模型b 132在数学上表示为:
[0051]
c(t)=p(t)-fa(t)-a(t)
[0052]
在图像捕获期间不使用光源的实施方案中,计算模型b 132可用于维持相机设备指向相同方向的方向。在使用光源来促进稳定图像捕获的实施方案中,计算模型a 131可以用于保持光源位置(表示对象)稳定而不必指向目标位置。
[0053]
在一个或多个实施方案中,计算模型a 131和计算模型b 132组合在一起,用于将光源位置(代表对象)平滑地移向目标位置。变化矢量可以计算为:
[0054]
c(t)=w1*f(t)+w2*fa(t)+w3*p(t)-w4*a(t)
[0055]
具体地说,w1、w2、w3和w4是可以在不同情况下更改的权重因子。
[0056]
图2.1示出了根据一个或多个实施方案的流程图。特别地,该流程图是上述预定算法的示例,该预定算法用于生成控制信号以调整相机设备的方向以补偿不希望的相机运动,例如校正用户握手。图2.1所示的过程是由例如,可以通过以上参考以上图1.1和1.2讨论的一个或多个组件来执行。图2.1中所示的一个或多个步骤在本发明的不同实施方案之间,可以以不同的顺序省略、重复和/或执行。因此,不应将本发明的实施方案视为限于图2.1中所示的步骤的特定数目和布置。
[0057]
最初在步骤220中,确定由相机镜头指向的当前位置。在一个或多个实施方案中,基于重力传感器数据确定当前位置。在一个或多个实施方案中,基于fov中的光源位置来确定当前位置。换句话说,fov中的光源位置表示相机镜头指向的位置。在一个或多个实施方案中,使用参考以下图2.2描述的方法确定fov中的光源位置。
[0058]
在步骤221中,确定目标位置。在不使用光源的一个或多个实施方案中,目标位置默认为水平方向,以使相机镜头稳定以面向地球地平线。在使用光源的一个或多个实施方案中,目标位置默认为fov的中心,使得附着有光源的对象出现在fov的中心处或附近。在一个或多个实施方案中,从用户获得目标位置以指定相机镜头的方向或指定对象在fov中将处于的位置。在一个或多个实施方案中,目标位置由相机镜头的先前方向确定,或者由光源在先前图像中的位置确定,从而使对象在捕获的图像序列上看起来稳定(例如,相对于fov没有明显的运动)。
[0059]
在步骤222中,基于当前位置和目标位置确定目标方向变化。在一个或多个实施方案中,目标方向变化被确定为当前位置和目标位置之间的差矢量。具体地,目标方向变化对应于相机镜头的方向的期望变化,使得相机镜头的当前位置可以被调整为或保持在目标位置。
[0060]
在步骤223中,获取描述相机设备的方向和/或运动的传感器数据。在一个或多个实施方案中,传感器数据是从安装在相机设备支架中的相机设备获得的。在一个或多个实施方案中,传感器数据是从相机设备支架中的嵌入式传感器获得的。在一个或多个实施方案中,传感器数据是从安装在相机设备支架中的相机设备以及从相机设备支架中的嵌入式传感器获得的。具体地,传感器数据指示由于相机设备的方向和/或运动而可能改变到相机镜头所指向的当前位置。换句话说,可以基于传感器数据将相机镜头所指向的当前位置推断至未来的增量时间点。
[0061]
在步骤224中,基于目标方向变化和传感器数据生成控制信号。最初,产生控制信号以激活相机设备支架中的电机以通过目标方向变化量改变相机方向。由于相机镜头所指
向的当前位置可能会由于相机设备的方向和/或运动而改变,因此基于传感器数据来调整控制信号以考虑相机设备的方向和运动。换句话说,通过考虑相机设备的方向和运动,基于当前位置和目标位置之间的推断差来生成/调整控制信号。
[0062]
在步骤225中,使用相机设备和相机设备支架之间的通信链路将控制信号发送到相机设备支架。在一个或多个实施方案中,控制信号包括旋转控制信号和倾斜控制信号,用于分别控制相机设备支架的旋转电机和倾斜电机。
[0063]
在步骤226中,使用控制信号调整相机设备支架的几何特征。在一个或多个实施方案中,几何特征对应于相机设备支架的一个或多个部件的旋转、倾斜、滑动或其他运动。在一个或多个实施方案中,调整相机设备支架的几何特征包括:使用旋转控制信号来激活相机设备支架的旋转电机;以及使用倾斜控制信号来激活相机设备支架的倾斜电机。在将相机设备的先前方向用作目标方向的一个或多个实施方案中,在使用控制信号进行调整之后,使用相机设备的当前方向来更新目标方向。
[0064]
在步骤227中,确定图像捕获是否已经完成。如果确定是否定的,即继续进行图像捕获,则该方法返回步骤223。如果确定是肯定的,即完成图像捕获,则该方法结束。
[0065]
图2.2示出了根据一个或多个实施方案的流程图。图2.2所示的过程可以,例如,通过以上参考图1.1和1.2讨论的一个或多个组件来执行。图2.2中所示的一个或多个步骤在本发明的不同实施方案中,可以以不同的顺序省略、重复和/或执行。因此,不应将本发明的实施方案视为限于图2.2中所示的步骤的特定数目和布置。
[0066]
最初,在步骤201中,激活场景内的光源。在本发明的一个或多个实施方案中,光源被附加到场景中的对象。在一个或多个实施方案中,光源发射频闪光,其不时改变强度和/或颜色。例如,频闪灯响应于光源被激活(例如,接通)而发出自由运行的光模式。在一个或多个实施方案中,与相机设备的帧速率相比,光源发射具有低重复率(例如10赫兹,20赫兹等)的频闪光。在一个或多个实施方案中,光源发射与相机设备的帧速率同步的频闪光。例如,可以基于从跟踪控制器和/或相机设备发送的触发信号来启动和/或同步频闪光。
[0067]
在步骤202中,由相机设备捕获场景的图像序列。尤其是,对象在相机镜头的视场(fov)内,并出现在图像序列上。例如,图像序列可以包括一连串静止图像或作为其一部分。在另一个示例中,图像序列可以包括视频记录或可以是视频记录的一部分。在一个或多个实施方案中,在光源发射频闪光的同时捕获场景的图像序列。在一个或多个实施方案中,基于光源的占空比和/或重复率来选择图像序列的帧速率,以使得连续图像(或序列中具有特定间隔的一对图像)包括光源的交替亮水平和暗水平,和/或交替颜色。例如,光源可以是自由运行的,并且基于自由运行光源的预定占空比和/或重复率来选择帧速率。在一个或多个实施方案中,相机设备的定时器用于根据所选择的帧速率来控制图像捕获。
[0068]
在一个或多个实施方案中,基于图像序列的帧速率来选择光源的占空比和/或重复率,使得连续图像(或在序列中具有特定间隔的一对图像)包括光源的交替亮水平和暗水平,和/或交替颜色。例如,帧速率可以是预定的,并且光源例如基于来自相机设备的触发信号而与帧速率同步。
[0069]
在步骤203中,基于图像序列的局部光变化模式,检测场景中的光源。具体地,从光源发射的频闪光引起由相机设备的光学传感器接收的光强度和/或颜色的改变,从而导致图像序列上的局部光变化模式。在一个或多个实施方案中,调整频闪光的强度以控制在每
个图像中发现局部强度变化模式的位置的大小。例如,位置大小可以被限制为fov的水平和垂直尺寸的百分比(例如,1%,3%等)。在一个或多个实施方案中,定义位置和大小,在该位置和大小中,相机设备的光学传感器识别出的连续图像中交替亮水平和暗水平和/或交替颜色之差超过预定阈值。在一个或多个实施方案中,该位置被称为光源在图像中的位置。
[0070]
在一个或多个实施方案中,通过减去对应像素的强度和/或颜色值来比较图像序列上的一对图像。具体地,强度和/或颜色值由光学传感器产生。特别地,从另一图像中的相应像素的强度和/或颜色值中减去一个图像中的像素的强度和/或颜色值以生成减法结果。选择在相减结果中发现交替的亮水平和暗水平和/或交替的颜色的差异的像素作为光源在图像中的位置的一部分。根据光源的占空比/重复率与图像序列的帧速率的关系,这对图像可以是连续图像,也可以是被特定数量的图像分开的两个图像,例如每三个图像等。
[0071]
在步骤204中,分析图像序列以确定光源在至少一个图像中的位置以及光源在图像序列上的运动。在一个或多个实施方案中,基于相机设备的光学传感器识别出的图像序列上的交替的亮水平和暗水平和/或交替的颜色之差超过预定阈值的位置来确定光源的位置。在一个或多个实施方案中,基于图像序列上的位置的变化率来确定光源的运动。
[0072]
在步骤205中,响应于检测光源,将光源的位置和至少一个图像内的目标位置进行比较以产生结果。在一个或多个实施方案中,结果包括从该位置到目标位置的位移。在一个或多个实施方案中,位移可以在图像序列上从一个图像到另一个图像变化,指示该对象是运动对象。在这样的实施方案中,例如,从一个图像到下一图像的位移随时间的变化率被计算为运动参数。
[0073]
在步骤206中,基于用于定向相机设备的结果生成控制信号。在一个或多个实施方案中,控制信号被配置为在与位移相反的方向上调整相机镜头的方向。例如,如果该位移指示目标位置在图像内的光源位置的右侧,则控制信号将相机镜头的方向向左调整。在一个或多个实施方案中,控制信号被配置为在与位移相反的方向上调整相机相对于场景的相对位置。例如,如果位移指示目标位置在图像内光源位置的右侧,则控制信号将相机的相对位置向左调整。在一个或多个实施方案中,在微调由控制信号引起的调整量时考虑运动参数。
[0074]
在步骤207中,将控制信号发送到安装有相机设备的相机设备支架(例如,倾斜和旋转设备或机械平台)。因此,在与位移相反的方向上调整相机镜头的方向或相机设备的相对位置。
[0075]
在步骤208中,在相机设备的fov内检测目标位置和光源之间的实质对准。特别地,实质对准是在与位移相反的方向上调整相机镜头的方向或相机设备的相对位置的结果。
[0076]
在步骤209中,响应于检测实质对准,捕获场景的附加图像。在一个或多个实施方案中,相机设备以规则的重复率(即,帧速率)连续地捕获并输出连续的图像。在这样的实施方案中,被分析以生成控制信号的图像序列被限制为在附加图像之前的滚动时间窗口(例如,2个连续图像、5个连续图像、10个连续图像等的滚动序列)。随着时间的流逝,附加图像成为图像更新序列的一部分,用于生成更新的控制信号以连续跟踪fov中的对象。
[0077]
在一个或多个实施方案中,被分析以生成控制信号的图像序列被指定为控制信息,而不由相机设备输出。相反,相机设备输出其中光源(因此对象)与目标位置实质对准的附加图像。例如,控制信息可以与附加图像分开存储,直到被丢弃或以其他方式从相机设备移除为止。
[0078]
在步骤210中,确定是否继续图像捕获。如果确定为肯定,即,将继续图像捕获,则该方法返回步骤202。如果确定为否定,即,将不继续图像捕获,则该方法结束。
[0079]
图3.1、3.2、3.3、4、5和6示出了根据本发明的一个或多个实施方案的各种示例。图3.1、3.2、4、5和6所示的示例可以例如基于上面的图1.1和1.2以及图2.1中描述的方法流程图中描绘的一个或多个组件。在一个或多个实施方案中,图3.1、3.2、3.3、4、5和6中所示的模块和元件中的一个或多个可以被省略、重复和/或替换。因此,本发明的实施方案不应被认为限于图3.1、3.2、3.3、4、5和6所示的模块的特定布置。
[0080]
图3.1示出了作为以上图1.1所示的相机设备支架130的示例的相机移动设备手持式手柄800。另外,由相机移动设备手持式手柄800机械地保持的相机移动设备201(例如,具有相机镜头220的智能电话)是以上图1.1中描绘的相机设备110的示例。在本发明的一个或多个实施方案中,相机移动设备手持式手柄800是一种机电组件,包括支架221、倾斜轴203、倾斜电机213、旋转轴209、旋转电机219和手持式手柄222。支架221被构造成机械地保持相机移动设备201并机械地联接至倾斜轴203。手持式手柄222被配置为在被观看者手持时保持相机移动设备手持式手柄800的机械稳定性。尽管未明确示出,但是手持式手柄222包括通信接口,该通信接口被配置为与以上图1.1所示的相机设备110和/或方向控制器120通信。例如,通信接口可以基于蓝牙、nfc、usb或其他无线/有线通信接口。在一个或多个实施方案中,旋转轴209响应于经由通信接口从方向控制器120接收到的控制信号,由旋转电机219绕旋转轴线209-1旋转。类似地,倾斜轴203响应于经由通信接口从方向控制器120接收到的控制信号而由倾斜电机213绕倾斜轴线203-1是可旋转的。响应于使支架221围绕倾斜轴线203-1倾斜和/或使支架221与倾斜轴203和倾斜电机213一起围绕旋转轴线209-1,可以调整相机镜头220的方向。因此,根据相机镜头220的方向来调整相机镜头220的fov 220-1。尽管在图3.1中示出的示例基于与两个机械轴相关联的两个电机,其他示例可以基于与三个机械轴相关联的三个电机,而不背离本发明的范围,其中第三电机可以是附加的旋转电机,例如具有图3.3所示的附加旋转轴线209-2的附加的旋转电机331。具体地,图3.3示出了具有三个电机的相机移动设备手持式手柄800,作为以上图1.1中描绘的相机设备支架130的示例。
[0081]
图3.2示出了稳定以上图3.1中所示的相机移动设备手持式把手800的示例。例如,当相机移动设备手持式手柄800从手持位置a 321改变为手持位置b 322或从手持位置b 322改变为手持位置a 321时,相机移动设备201的方向稳定。如图3.2所示,手持位置a 321对应于手持式手柄222的垂直方向(即,沿着地球重力方向)。在手持位置a 321中,倾斜电机213将相机移动设备201保持指向地球地平线(即,正交于地球重力方向)。换句话说,相机移动设备201的成像平面与地球地平线正交。
[0082]
手持位置b 322对应于手持式手柄222的倾斜方向(即,偏离地球重力方向)。例如,手持式手柄222的倾斜运动323由用户的手施加。在手持位置b 322中,倾斜电机213使相机移动设备201保持与手持位置a 321中一样指向地球地平线。
[0083]
在图3.2所示的示例的一个场景中,计算模型a 131可用于稳定相机设备指向目标位置的方向,该目标位置默认为水平方向或根据用户指定为水平方向。在图3.2所示的示例的不同场景中,计算模型b 132可以用于稳定相机设备指向先前保持的方向的方向,该方向原来是水平方向。尽管在图3.2中描述的稳定化的示例基于以上图3.1中描绘的相机移动设
备手持式手柄800,下面的图3.3中所示的相机移动设备手持式手柄800也可以用类似的方式稳定下来。
[0084]
图4示出了以上图1.1和1.2所示的光源143的光变化模式124的示例。如图4所示,水平轴对应于时间,垂直轴对应于光强度。特别是,光变化模式124是随着时间在亮水平400a和暗水平400b之间交替的光强度的模式。例如,光强度的亮水平400a在时间段a 410上维持,并且可以一定的重复率随时间重复出现。当光强度随时间在亮水平400a和暗水平400b之间交替时,相机设备会定期捕获图像序列。例如,可以在彼此分开时间段b 420、时间段c 430,等的时间点a 401a、时间点b 401b、时间点c 401c等处捕获序列中的连续图像。具体而言,时间段a 410包含至少一个图像捕获时间点,例如时间点b 401b。尽管在图4中描绘的光变化模式124是光强度变化的模式,但是在其他示例中,光变化模式124也可以包括颜色变化。换句话说,亮水平400a和暗水平400b可以用不同的颜色代替或补充以表示颜色变化。
[0085]
图5示出了以上图1.1和1.2中描绘的场景140的图像序列126的示例。如图5所示。图像序列126包括在以上图4描述的时间点a 401a、时间点b 401b、时间点c 401c等捕获的图像a 126a、图像b 126b、图像c126c等。根据参考以上图4描述的光变化模式124的示例,光源143在图像a 126a、图像b 126b、图像c 126c等中标记为“a”的位置处显示为交替的暗点和亮点。相反,光强度在图像a 126a、图像b 126b、图像c 126c等中标记为“b”的另一个位置实质保持恒定。例如,可以通过减去图像a 126a和图像b 126b中的对应像素的强度值来确定标记为“a”的位置以生成相减结果126d。类似地,可以通过减去图像b 126b和图像c 126c中的对应像素的强度值以生成相减结果126d来还确定标记为“a”的位置。在相减结果126d中,黑色表示无差异,而白色表示非零差异。因此,光源的位置对应于相减结果126d中的白点。
[0086]
还如图5所示,将每个图像的中心定义为目标位置127。因此,从标记为“a”的位置到目标位置127的距离对应于位移125。图5所示的标记为“a”的位置、目标位置127和位移125分别是以上图5所描述的位置a 126b、目标位置128和相机运动参数125a的示例。在一个或多个实施方案中,标记为“a”的位置在图像a 126a、图像b 126b、图像c 126c等之间变化。标记为“a”的位置在图像a 126a、图像b 126b、图像c 126c等上的变化率对应于以上图1.2所示的fov运动参数125b。
[0087]
图6示出了示例视频记录600的示例,其包括参考以上图4描述的图像序列126的示例。在示例场景中,目标位置是图像的中心。如图6所示,在图像序列126中的图像(例如,图像a 126a)的左侧部分的位置处识别光源143。特别地,光源143由男性(即,对象142)的两只手握持。例如,基于以上图5所示的图像a 126a、图像b 126b、图像c 126c等中的交替的暗点和亮点来识别光源143的位置。换句话说,光源143对应于图5所示的图像a 126a、图像b 126b、图像c 126c等中标记为“a”的位置。因为目标位置(即,图像中心)在光源位置的右侧,所以对象方向控制器120被配置为将相机设备110朝向左侧定向,使得男性(即,握持光源143的对象142)出现在图像的中心。因此,基于所识别的光源143的位置“a”来调整相机设备110的方向,使得对象142出现在图像x 126x的中心。
[0088]
本发明的实施方案可以在计算系统上实现。可以使用移动设备、台式机、服务器、路由器、交换机、嵌入式设备或其他类型的硬件的任何组合。例如,如图7.1所示,计算系统
700可以包括一个或多个计算机处理器702、非持久性存储器704(例如,易失性存储器,诸如随机存取存储器(ram)、高速缓存存储器)、持久性存储器706(例如,硬盘,诸如光盘(cd)驱动器或数字多功能盘(dvd)驱动器之类的光盘驱动器、闪存等)、通信接口712(例如,蓝牙接口、红外接口、网络接口、光接口等)以及许多其他元件和功能。
[0089]
计算机处理器702可以是用于处理指令的集成电路。例如,一个或多个计算机处理器可以是处理器的一个或多个核心或微核心。计算系统700还可以包括一个或多个输入设备710,例如触摸屏键盘鼠标麦克风触摸板电子笔或任何其他类型的输入设备。
[0090]
通信接口712可以包括用于将计算系统700连接到网络(未示出)(例如,局域网(lan),例如互联网、移动网络或任何其他类型的网络)和/或连接到另一个设备,例如另一个计算设备。
[0091]
此外,计算系统700可以包括一个或多个输出设备708,例如屏幕(例如,液晶显示器(lcd)、等离子显示器、触摸屏、阴极射线管(crt)监视器、投影仪或其他显示设备)、打印机、外部存储设备或其他任何输出设备。一个或多个输出设备可以与输入设备相同或不同。输入和输出设备可以本地或远程地连接到计算机处理器702、非持久性存储器704和持久性存储器706。存在许多不同类型的计算系统,并且前述输入和输出设备可以采取其他形式。
[0092]
用于执行本发明的实施方案的计算机可读程序代码形式的软件指令可以全部或部分地临时或永久地存储在非暂时性计算机可读介质上,例如cd、dvd、存储设备、软盘、磁带、闪存、物理内存或任何其他计算机可读存储介质。具体地,软件指令可以对应于计算机可读程序代码,其在被处理器执行时被配置为执行本发明的一个或多个实施方案。
[0093]
图7.1中的计算系统700可以连接到网络或成为网络的一部分。例如,如图7.2所示,网络720可以包括多个节点(例如,节点x 722、节点y 724)。每个节点可以对应于计算系统,使得图7.1中所示的计算系统或者组合的一组节点可以对应于图7.1中所示的计算系统。举例来说,本发明的实施方案可以在连接到其他节点的分布式系统的节点上实现。作为另一示例,本发明的实施方案可以在具有多个节点的分布式计算系统上实现,其中本发明的每个部分可以位于分布式计算系统内的不同节点上。此外,前述计算系统700的一个或多个元件可以位于远程位置并通过网络连接到其他元件。
[0094]
尽管未在图7.2中示出,该节点可以对应于服务器机箱中的刀片,该刀片服务器通过底板连接到其他节点。作为另一示例,该节点可以对应于数据中心中的服务器。作为另一示例,该节点可以对应于具有共享存储器和/或资源的计算机处理器或计算机处理器的微核。
[0095]
网络720中的节点(例如,节点x 722、节点y 724)可以被配置为为客户端设备726提供服务。例如,节点可以是云计算系统的一部分。所述节点可以包括以下功能:从客户端设备726接收请求并且将响应发送到客户端设备726。客户端设备726可以是计算系统,例如图7.1中所示的计算系统。此外,客户端设备726可以包括和/或执行本发明的一个或多个实施方案的全部或一部分。
[0096]
在图7.1和7.2中描述的计算系统或一组计算系统可以包括执行本文公开的各种操作的功能。例如,一个或多个计算系统可以在相同或不同系统上的进程之间执行通信。采用某种形式的主动或被动通信的各种机制可以促进同一设备上进程之间的数据交换。代表这些进程间通信的示例包括但不限于文件、信号、套接字、消息队列、管道、信号灯、共享内
存,消息传递和内存映射文件的实现。
[0097]
图7.1中的计算系统可以实现和/或连接到数据存储库。例如,一种类型的数据存储库是数据库。数据库是为简化数据检索、修改、重组和删除而配置的信息的集合。数据库管理系统(dbms)是一个软件应用程序,它为用户提供了定义、创建、查询、更新或管理数据库的界面。
[0098]
用户或软件应用程序可以向dbms提交语句或查询。然后,dbms解释该语句。该语句可以是用于请求信息的选择语句、更新语句、创建语句、删除语句等。此外,该语句可以包括指定数据或数据容器(数据库、表、记录、列、视图等)的参数、标识符、条件(比较运算符)、函数(例如,联接、完全联接、计数、平均等)、排序(例如,升序、降序)或其他。dbms可以执行该语句。例如,dbms可以访问存储缓冲区,引用或索引文件以进行读取、写入、删除或其任何组合,以响应该语句。dbms可以从持久性或非持久性存储中加载数据,并执行计算以响应查询。dbms可以将结果返回给用户或软件应用程序。
[0099]
以上对功能的描述仅呈现了由图7.1的计算系统和图7.1和图7.2中的节点和/或客户端设备执行的功能的一些示例。可以使用本发明的一个或多个实施方案来执行其他功能。
[0100]
虽然已经用有限数量的实施方案描述了本发明,但是受益于本发明的本领域技术人员将理解,可以设计出不脱离所公开的本发明的范围的其他实施方案。因此,本发明的范围应仅由所附权利要求书限制。