CN105556961A - 用于动态校准相机***中旋转偏移的方法 - Google Patents
用于动态校准相机***中旋转偏移的方法 Download PDFInfo
- Publication number
- CN105556961A CN105556961A CN201480043054.4A CN201480043054A CN105556961A CN 105556961 A CN105556961 A CN 105556961A CN 201480043054 A CN201480043054 A CN 201480043054A CN 105556961 A CN105556961 A CN 105556961A
- Authority
- CN
- China
- Prior art keywords
- image
- orientation
- rotation offset
- angle
- equipment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000007619 statistical method Methods 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims description 18
- 230000006870 function Effects 0.000 claims description 17
- 238000004458 analytical method Methods 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 9
- 238000005520 cutting process Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 abstract description 4
- 239000013598 vector Substances 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 230000005484 gravity Effects 0.000 description 11
- 238000004519 manufacturing process Methods 0.000 description 11
- 230000000712 assembly Effects 0.000 description 6
- 238000000429 assembly Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000003068 static effect Effects 0.000 description 5
- 230000004438 eyesight Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000001143 conditioned effect Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000009825 accumulation Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 150000002500 ions Chemical class 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N17/00—Diagnosis, testing or measuring for television systems or their details
- H04N17/002—Diagnosis, testing or measuring for television systems or their details for television cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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/62—Control of parameters via user interfaces
-
- 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/63—Control of cameras or camera modules by using electronic viewfinders
- H04N23/631—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
-
- 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/63—Control of cameras or camera modules by using electronic viewfinders
- H04N23/633—Control of cameras or camera modules by using electronic viewfinders for displaying additional information relating to control or operation of the camera
-
- 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/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
Abstract
本发明公开了一种用于动态校准设备中的旋转偏移的方法,该方法包括获得由设备的相机捕获的图像。在图像捕获时设备的取向信息可与图像相关联。可分析图像的像素数据以确定所述图像的图像取向角。可从取向信息确定设备取向角。可基于图像取向角和设备取向角确定旋转偏移。旋转偏移相对于相机或取向传感器。可从来自众多相应图像的众多旋转偏移的统计分析确定旋转偏差。在一些实施例中,可使用各种阈值和预先确定的范围从统计分析排除一些旋转偏移或中断针对该图像的处理。
Description
背景技术
技术领域
本公开整体涉及数字成像校准,并且更具体地,涉及数字成像中的旋转偏移校准。
相关领域的描述
便携式设备上的设备传感器,例如,相机传感器被允许在传感器的制造期间以及作为向设备中并入传感器的一部分两方面具有一定公差。理想的是,相机传感器将与设备主体对准,使得图片阵列或像素的轴与设备的轴以及设备的取向传感器的轴对准。然而,由于制造公差,理想的对准需要昂贵的组件且制造起来有挑战性。制造过程的各种特征,例如,与在设备中安装相机模块或在相机模块中安装图像传感器芯片相关的公差表明相机常常在旋转方面与设备失准。此类失准可能会导致捕获的图像从期望的对准旋转。
可以在制造期间校准相机在设备内的取向。例如,可以测量图像传感器芯片相对于设备外壳或设备中取向传感器重力矢量的旋转失准并作为制造过程的一部分用于校准,但此类校准增加了制造时间和成本。此类相机传感器对准的方法需要制造商大量的资源投资(例如,材料和时间)。此外,制造期间精确对准可能无法解决随时间发生的变化(例如,由于水滴),并且照此,初始对准或校准可能变得过时。
发明内容
本发明描述了用于确定设备中传感器旋转偏移的方法、设备和计算机可读存储介质的各种实施例。各种实施例可以获得由相机捕获的图像,并且还获得设备的取向传感器的取向信息。设备的取向信息来自图像捕获的时间。可以分析图像的像素数据以确定图像的图像取向角。可以从取向传感器信息确定设备取向角。可以基于图像取向角和设备取向角确定旋转偏移。旋转偏移可以相对于相机或取向传感器。
附图说明
图1示出了根据一些实施例的一种示例设备***。
图2示出了根据一些实施例用于在相机***中确定旋转偏移的方法的流程图。
图3示出了根据一些实施例在假设的情况下各种方法和设备组件的输出。
图4示出了根据各种实施例的设备和相对于设备和设备组件的各个角和线。
图5A和图5B示出了根据一些实施例用于在相机***中确定旋转偏移的方法的流程图。
图6示出了根据一些实施例确定图像取向角的方法。
图7示出了根据各种实施例用于确定旋转偏差的模块。
本说明书包括对“一个实施例”(“oneembodiment”)或“实施例”(“anembodiment”)的参照。出现短语“在一个实施例中”(“inoneembodiment”)或“在实施例中”(“inanembodiment”)不一定是指同一个实施例。特定特征、结构或特性可以与本公开一致的任何适当方式结合。
“包括”。该术语是可广泛解释的。当在所附权利要求书中使用时,该术语不排除附加的结构或步骤。考虑以下引用的权利要求:“一种包括一个或多个处理器单元的装置……”此类权利要求不排除该装置包括附加组件(例如,网络接口单元、图形电路等)。
“被配置为”。各种单元、电路或其他组件可被描述为或要求为“被配置为”执行一项或多项任务。在此类上下文中,“被配置为”用于通过指示单元/电路/组件包括在操作期间执行那些任务的结构(例如,电路)来暗指该结构。如此,据称单元/电路/组件可被配置为即使在指定的单元/电路/组件当前不可操作(例如,未接通)时也执行该任务。与“被配置为”语言一起使用的单元/电路/组件包括硬件——例如,电路、存储可执行以实现操作的程序指令的存储器等。引用单元/电路/组件“被配置为”执行一项或多项任务明确地旨在针对该单元/电路/组件不援引35U.S.C.§112第六段。此外,“被配置为”可包括通用结构(例如,通用电路),该通用结构受软件和/或固件操纵(例如,FPGA或执行软件的通用处理器),从而以能够执行待解决的一项或多项任务的方式操作。“配置为”还可以包括调整制造工艺(例如,半导体制造设施)以制造适于实施或执行一项或多项任务的设备(例如,集成电路)。
“第一”“第二”等。如本文所用,这些术语用作它们所在之前的名词的标签,并且不暗指任何类型的排序(例如空间的、时间的、逻辑的等)。例如,本文可以将缓冲电路描述为针对“第一”和“第二”值执行写入操作。术语“第一”和“第二”未必暗示第一值必须要在第二值之前写入。
“基于”。如本文所用,该术语用于描述影响确定的一个或多个因素。该术语不排除可能影响确定的其他因素。即,确定可仅仅基于那些因素或至少部分地基于那些因素。考虑短语“基于B来确定A”。当B为影响A的确定的因素时,该短语不排除A的确定也可基于C。在其他实例中,可仅基于B来确定A。
具体实施方式
本发明公开了用于动态测量相机***中存在的相对于安装相机的设备的旋转偏移量的***和方法的各种实施例。
在一个实施例中,动态测量旋转偏移的方法使用两种不同的水平检测方案。第一种方案是基于像素的方案,其分析实际图像并返回图像内的水平线相对于图像x轴所成的角(例如,这样可以确定由于设备用户手部定位造成的设备旋转)。需注意,该算法可以不必找到实际水平线。在一些情况下,基于像素的水平线(例如,通过图像延伸的水平线)可能足以作为例如水平线的替代。这种第一方案确定相对于所捕获场景的相机位置。第二方案是基于传感器的方案,使用来自传感器的取向传感器信息找到基于传感器(例如,基于重力)的水平线。例如,这样可以确定用户对设备的手部旋转。基于传感器的方案可以提供相对于相机主体的参照系。在一些实施例中,加速度计或陀螺仪传感器提供重力相对于设备位置的方向的指示。在第一方案精确找到基于像素的水平线的程度上,相对于设备外壳校准或对准该取向传感器或图像传感器,基于像素的水平线和基于传感器的水平线之间的角度差可以提供相机和安装相机的设备x轴之间的旋转偏移指示。无论如何,该方法可以确定基于像素的水平线和基于取向传感器的水平线之间的旋转关系。
在一些实施例中,基于像素的方法的特定实例可能不像期望的那样准确。然而,可以通过基于像素的方法的大量重复的统计分析,实现基于像素的方法精确度的改善。例如,可以使用柱状图方法的曲线拟合或模式拒绝异常值,并确定基于像素和基于传感器的水平线之间的更精确关系。
在一些实施例中,可以对旋转偏移的多次计算进行统计分析以确定传感器或设备的旋转偏差。可以将相机***的旋转偏移或旋转偏差用于设备的众多特征,诸如扫描全景和水平线调整,尽管还可以为很多其他原因使用偏移或偏差。然而,特征可以取决于比选择的制造工艺提供(例如,相机模块可以具有几度的安装偏差)或甚至能够提供的窄得多的公差。然而,如果已知旋转偏移或偏差,可以使用旋转偏移或偏差补偿不完善的公差并为任意数量的设备功能提供精确得多的调整,包括扫描全景、水平线调整,或在例如裁剪图像期间自动校正意外的图像旋转。
在一些实施例中,可以在实时图像捕获中使用旋转偏移或旋转偏差,例如,以(例如,实时)调整捕获时被捕获图像的旋转。对于直接上载到某种虚拟存储,诸如视频或照片存储或者视频或照片共享网站的图像或视频,此类功能可能尤其有用。
在一些实施例中,可以使用经时间滤波的加速度计取向传感器信息。例如,可以与捕获图像同时捕获加速度计传感器输出,或者可以在捕获时计算取向。在一些实施例中,可以假设加速度计在设备外壳中比相机对准更精确。然而,对于相机更精确对准的情况,可以使用类似的技术确定加速度计传感器的偏移。
各种加速度计可以使用不同的术语。为了本公开内清晰起见,可能有用的是描述几种惯例。可以通过几种方式在设备内对加速度计传感器进行取向,并且取向可能影响传感器的输出。在一些实施例中,来自加速度计的单一数字输出可以指单轴加速度计,在这种情况下,可以有符号(例如,如果加速度计的轴与重力正交,可能出现零值)。例如,对于一些加速度计基部向上取向的设备,传感器的输出为+1g。在另一个示例中,对于一些加速度计基部水平取向的设备,传感器的输出为0g。在另一个示例中,对于一些加速度计基部指向下取向的设备,传感器的输出为-1g。
来自加速度计的单个数字输出还指多轴陀螺仪的大小,在这种情况下,没有符号(如果重力与2轴加速度计的平面正交,可能为零,或者如果设备自由落体,用于1、2或3轴加速度计)。在一些实施例中,为了获得旋转取向的目的,可以使用至少2轴加速度计。在其他实施例中,可以使用3轴加速度计获得间距、取向和置信度值。
通常,在本公开内,将参考加速度计以基部向上取向的设备,并且在这种取向中,传感器的输出为+1g。设想了传感器输出的其他惯例,它们不脱离本发明的范围。在整个本公开中描述了各种置信度。有关加速度计的示例性置信度考虑了重力矢量的大小,如果该大小偏离+1g超过百分之几,重力矢量可以与低置信度相关联。如果设想对于其他加速度计取向(例如,基部指向下),尽管确定与适当输出(例如,分别地-1g)的差值具有类似大小,仍然可以确定低置信度。
加速度计能够测量由于重力导致的静态加速量度;因此,可以确定传感器(以及传感器安装于其中的设备)相对于地球倾斜的角度。可以从针对x轴的所捕获加速度计输出计算取向,例如,
取向=atan2(Ay,Ax)。
也可以计算间距角度,例如,
间距=atan2(Az,sqrt(Ax2+Ay2)。
可以将间距角度用作取向的质量的度量。例如,如果间距大于例如25度,可以假设通过某种方式有意操作相机(例如,向上看或向下看),使得水平线不是图像捕获的焦点。但大于例如10或15度的间距角度也是有用的。
在另一个实施例中,可以将经时间滤波的陀螺仪输出与加速度计输出融合。可以提供结果作为四元组,其中大小经过归一化。在一些实施例中,可以通过使用陀螺仪输出提高传感器取向的精确度。
取向设备,诸如加速度计和陀螺仪,可能对温度变化敏感。在一些实施例中,可以使用本文公开的方法校准设备以补偿此类变化。例如,对于给定的取向,陀螺仪输出可能基于陀螺仪环境的温度变化而改变。通过应用本文公开的方法,可以对设备重新校准以例如通过向陀螺仪而非相机应用确定的旋转偏移来补偿温度变化带来的偏差。
在各种示例性实施例中,可以从相机捕获的图像计算基于像素的水平线。在一些实施例中,可以相对于与图像传感器相关联的一行像素确定图像的x轴,其中图像的x轴平行于相机的光传感器阵列的一行像素。
在一些实施例中,可以通过使用快速傅里叶变换(FFT),通过将来自图像数据的值序列分解成不同频率分量来确定离散傅里叶变换,从而确定基于像素的水平线。使用FFT可以利用如下优点:空间域中的边缘在图像数据的空间频域中具有标记。这种特定方法可能对于室外场景有用,因为自然图像往往具有在水平或垂直方向中取向的边缘(例如,树木和建筑物与重力对准,地面和地层平均来讲垂直于重力对准)。需注意,可以应用此类策略以根据基于水平的分析(如本文所公开)或基于垂直的分析确定图像取向,而不脱离本文所公开的发明的范围。
在一些实施例中,已经发现使用FFT在图像取向角在特定范围内时尤其有用。例如,在图像取向角大于1度但小于10度时。该范围是可以由用户或设备制造商配置的。在图像取向角高于特定阈值时,相机用户可能希望以一定角度捕获图像。应用确定的角度并接下来进行裁剪,还可能例如在旋转之后裁剪掉过多的图像。在角度低于特定阈值时,可能优选避免向图像应用校正性旋转而不是校正取向缺陷。
在一些实施例中,基于设备取向和图像取向确定旋转偏移。可以针对一个或多个图像确定旋转偏移。可以针对若干图像对旋转偏移进行统计分析,以确定设备的旋转偏差。随着更多图像被分析,旋转偏差可能变得更精确。
在本文所公开的一些实施例中,用户可选择的应用或操作模式可以包括校准模式。校准模式可以利用设备的安装表面和设备处于安装表面上时可以在设备所拍图像中捕获的水平线之间的已知角度。此类环境可以提供旋转偏移的确定的增大的精确度。此类环境还可以大大减少计算旋转偏差所需的重复次数。
在一些实施例中,可以连续运行或每个图像运行取向确定。例如,在设备较新且未确定偏差或在旋转偏差保持被设定为默认值时。在各种实施例中,可以周期性或间歇地执行图像的偏移确定或设备的旋转偏差确定。例如,为了减小功率消耗或释放处理功率。在一些实施例中,该方法可以是用户可选择的。
在一些实施例中,可以在用户不有意捕获任何特定图像的情况下执行该方法。例如,在一些设备上,相机可以始终打开或可以具有用于选择使相机打开的部分时间或地区的模式。在其他示例中,在用户捕获图像之前,例如,在操作者正在对准图像场景时或在操作者有意捕获图像之后,诸如超时之前,相机短时间开启。这些时间可以是用于校准的额外机会。在一些实施例中,可以在这些用于校准的机会期间获得图像,并可以执行本文所公开的分析。
在一些实施例中,可以不使用来自取向传感器的设备取向角来计算旋转偏移。例如,在一些实施例中,可以将旋转偏移确定为图像取向角。可以累积也是未使用设备取向角确定的多个旋转偏移并进行统计分析以确定旋转偏差。
现在将详细地参考实施例,这些实施例的示例在附图中示出。在下面的详细描述中给出了许多具体细节,以便提供对本公开的彻底理解。但是,对本领域普通技术人员将显而易见的是,一些实施例可在没有这些具体细节的情况下被实施。在其他情况下,没有详细地描述所熟知的方法、过程、组件、电路和网络,从而不会不必要地使实施例的方面模糊。
还应当理解,虽然术语“第一”、“第二”等可能在本文中被用来描述各种元素,但是这些元素不应当被这些术语限定。这些术语只是用来将一个元素与另一个元素区分开。例如,第一接触可被命名为第二接触,并且类似地,第二接触可被命名为第一接触,而不脱离预期的范围。第一接触和第二接触两者都是接触,但是它们不是同一接触。
本文描述中所使用的术语只是为了描述特定实施例的目的,而并非旨在进行限制。如说明书和所附权利要求书中所用,单数形式的“一个”(“a”,“an”)和“所述”旨在也涵盖复数形式,除非上下文清楚地以其他方式来指示。还应当理解,本文中所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或多个的任何和全部可能的组合。还应当理解,术语“包括”、“包含”、“含有”和/或“具有”当在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的分组。
如本文所用,根据上下文,术语“如果”可以被解释为意思是“当……时”或“在……时”或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定……”或“如果检测到[所陈述的条件或事件]”可以被解释为意思是“在确定……时”或“响应于确定……”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
下面的详细描述中一些部分是以存储在特定装置或专用计算设备或平台的存储器内的对二进制数字信号的操作的算法或符号表示来提供的。在这个特定说明书的上下文中,术语“特定装置”等包括通用计算机,只要该通用计算机被编程为根据来自程序软件和其他可编程电子设备的指令执行特定功能。算法描述或符号表示是信号处理或相关领域中的普通技术人员用于将其工作实质内容传达给该领域中的其他技术人员的技术的示例。算法存在并且一般性地被视为是导致所期望的结果的操作或类似信号处理的自相一致的序列。在这个上下文中,操作或处理涉及物理量的物理操纵。通常,但是这不是必然的,此类量可采取能够被存储、传输、组合、比较或以其他方式操纵的电信号或磁信号的形式。已证明有时(主要是出于惯用用法的原因)将此类信号指代为位、数据、数值、元素、符号、字符、项、数字、数码等是方便的。然而应当理解,所有这些或类似术语要与适当的物理量相关联并且仅仅是方便的标记。
本文描述了电子设备、此类设备的用户界面和使用此类设备的相关过程的实施例。在一些实施例中,该设备是还包含其他功能诸如PDA和/或介质播放器功能的便携式通信设备,诸如移动电话。便携式多功能设备的示例性实施例包括但不限于购自AppleInc.(Cupertino,California)的iPod和设备。也可以使用其他便携式电子设备,诸如具有触敏表面(例如,触摸屏显示器和/或触控板)的膝上型电脑或平板电脑。还应当理解,在一些实施例中,设备不是便携式通信设备,而是具有触敏表面(例如,触摸屏显示器和/或触控板)的台式计算机。在一些实施例中,设备是具有取向传感器(例如游戏控制器中的取向传感器)的游戏计算机。采用本文描述的方法的其他设备可以是数字相机、数字相机***的零件、摄像机和电影摄像机。
在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而应当理解,电子设备可以包括一个或多个其他物理用户界面设备,诸如物理键盘、鼠标和/或操纵杆。
现在关注便携式视频捕获和录制设备的实施例。图1是示出了根据一些实施例的具有触敏显示器1012的便携式多功能设备1000的框图。为方便起见,触敏显示器1012有时被称为“触摸屏”,并且也可称为或叫做触敏显示***。设备1000可以包括存储器1002(其可以包括一个或多个计算机可读存储介质)、存储器控制器1022、一个或多个处理单元(CPU的)1020、***设备接口1018、RF电路1008、音频电路1010、一个或多个取向传感器1068、输入/输出(I/O)子***1006、其他输入或控制设备1016、和外部端口1024。设备1000可以包括各种麦克风和扬声器(未示出)。
设备1000可以包括一个或多个相机传感器1064和相机传感器控制器1058。这些组件可通过一个或多个通信总线或信号线1003进行通信。应当理解,设备1000只是便携式视频捕获和录制设备的一个实例,并且设备1000可具有比所显示的更多或更少的组件,可组合两个或更多个组件,或可具有不同的组件配置或布置。图1中所示的各种组件可以硬件、软件或硬件和软件的组合来实施,包括一个或多个信号处理和/或专用集成电路。
存储器1002可以包括高速随机存取存储器,并且还可包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备、或其他非易失性固态存储器设备。设备1000的其他组件(诸如CPU1020和***设备接口1018)对存储器1002的访问可由存储器控制器1022控制。
***设备接口1018可被用于将设备的输入和输出***设备耦接到CPU1020和存储器1002。该一个或多个处理器1020运行或执行存储在存储器1002中的各种软件程序和/或指令集以执行设备1000的各种功能并处理数据。
在以下详细描述中,给出了多个具体细节以提供对要求保护的主题的全面理解。但是,本领域技术人员应当理解,要求保护的主题可以在没有这些具体细节的情况下被实现。在其他实例中,没有详细地介绍普通技术人员已知的方法、装置、或***,以便不使要求保护的主题模糊。
在一些实施例中,***设备接口1018、CPU1020、和存储器控制器1022可在单个芯片(诸如芯片1004)上实施。在一些其他实施例中,它们可在单独的芯片上实施。RF(射频)电路1008接收和发送也被叫做电磁信号的RF信号。RF电路1008将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号与通信网络及其他通信设备进行通信。RF电路1008可包括用于执行这些功能的熟知的电路,包括但不限于天线***、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模块(SIM)卡、存储器等等。RF电路1008可通过无线通信与网络以及其他设备进行通信,该网络诸如互联网(也被称为万维网(WWW))、内联网和/或无线网络(诸如蜂窝电话网络、无线局域网(LAN)和/或城域网(MAN))。无线通信可以使用多个通信标准、协议和技术中任何一个,包括但不限于全球移动通信***(GSM)、增强型数据GSM环境(EDGE)、高速下行分组接入(HSDPA)、高速上行分组接入(HSUPA)、宽带码分多址(W-CDMA)、码分多址(CDMA)、时分多址(TDMA)、蓝牙、无线相容性认证(Wi-Fi)(例如IEEE802.11a、IEEE802.11b、IEEE802.11g和/或IEEE802.11n)、互联网协议语音技术(VoIP)、Wi-MAX、电子邮件协议(例如互联网消息访问协议(IMAP)和/或邮局协议(POP))、即时消息(例如可扩展消息处理现场协议(XMPP)、针对即时信息处理现场支持扩展的会话发起协议(SIMPLE)、即时信息处理现场服务(IMPS))、和/或短消息服务(SMS)、或任何其他合适的通信协议,包括在本申请提交日还未开发出的通信协议。
I/O子***1006将设备1000上的输入/输出***设备诸如触摸屏1012和其他输入控制设备1016耦接到***设备接口1018。I/O子***1006可包括显示控制器1056以及一个或多个输入控制器1060以用于其他输入或控制设备。该一个或多个输入控制器1060从其他输入或控制设备1016接收电信号/将电信号发送至其他输入或控制设备1016。该其他输入控制设备1016可包括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击轮等等。在一些另选实施例中,一个或多个输入控制器1060可耦接到(或不耦接到)以下各项中的任一者:键盘、红外端口、USB端口、和指向设备诸如鼠标。
触敏显示器1012提供设备与用户之间的输入接口和输出接口。显示控制器1056从触摸屏1012接收电信号和/或将电信号发送至触摸屏1012。触摸屏1012向用户显示视觉输出。视觉输出可包括图形、文本、图标、视频以及它们的任意组合(统称为“图形”)。在一些实施例中,一些视觉输出或全部的视觉输出可对应于用户界面对象。
设备1000还包括用于为各种组件供电的电力***1062。电力***1062可包括电力管理***、一个或多个电源(例如,电池、交流电(AC))、再充电***、电力故障检测电路、功率变换器或逆变器、电源状态指示器(例如,发光二极管(LED))和与便携式设备中电力的生成、管理和分配相关联的任何其他组件。
设备1000还可包括一个或多个光学传感器1064。光学传感器1064可包括电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光电晶体管。光学传感器1064从环境接收光(通过一个或多个透镜投射),并且将光转换为表示图像的数据。光学传感器1064可捕获静态图像或视频。在一些实施例中,光学传感器位于设备1000的后部,与设备前部的触摸屏显示器1012相对,使得触摸屏显示器可作为取景器使用以用于静止和/或视频图像采集。在一些实施例中,另一光学传感器位于设备的前部上,使得用户在触摸屏显示器上观看其他视频会议参与者的同时可以获得该用户的图像以用于视频会议。
设备1000包括一个或多个取向传感器1068。在一些实施例中,该一个或多个取向传感器包括一个或多个加速度计(例如一个或多个线性加速度计和/或一个或多个旋转加速度计)。在一些实施例中,该一个或多个取向传感器包括一个或多个陀螺仪。在一些实施例中,该一个或多个取向传感器包括一个或多个磁力仪。在一些实施例中,该一个或多个取向传感器包括全球定位***(GPS)、全球导航卫星***(GLONASS)、和/或其他全球导航***接收器中的一个或多个。GPS、GLONASS、和/或其他全球导航***接收器可用于获得关于设备1000的位置和取向(例如纵向或横向)的信息。在一些实施例中,该一个或多个取向传感器包括取向/旋转传感器的任何组合。在一些实施例中,该一个或多个取向传感器1068可耦接到I/O子***1006中的输入控制器1060。在一些实施例中,信息基于对从该一个或多个取向传感器接收的数据的分析而在触摸屏显示器上被显示在纵向视图或横向视图中。
在一些实施例中,存储器1002中保存的软件组件包括旋转校准器模块7001。存储在存储器1002中的软件组件还可包括操作***、通信模块(或指令集)、接触/运动模块(或指令集)、图形模块(或指令集)、文本输入模块(或指令集)、全球定位***(GPS)模块(或指令集)以及应用(或指令集)(所有都未示出)。
结合触摸屏1012、显示控制器1056、一个或多个相机传感器1064、相机传感器控制器1058,相机模块(未示出)可包括可执行指令,以捕获静态图像或视频(包括视频流)并且将它们存储到存储器1002中、修改静态图像或视频的特性、或从存储器1002删除静态图像或视频。
结合触摸屏1012、显示控制器1056和相机模块,图像管理模块(未示出)可包括可执行指令,以排列、修改(例如,编辑)或以其他方式操控、加标签、删除、展示(例如,在数字幻灯片或相册中)以及存储静态图像和/或视频图像。
结合触摸屏1012、显示***控制器1056、图形模块、音频电路、扬声器和RF电路1008,媒体播放器模块(未示出)可包括允许用户下载和回放以一种或多种文件格式(诸如MP3或AAC文件)存储的所记录的音乐和其他声音文件的可执行指令,以及用于显示、展示或以其他方式回放视频(例如,在触摸屏1012上或在经由外部端口1024连接的外部显示器上)的可执行指令。
上述所识别的每个模块和应用对应于用于执行上述一种或多种功能以及在本申请中所描述的方法(例如,本文中所描述的计算机实现的方法和其他信息处理方法)的一组可执行指令。这些模块(即指令集)不必被实现为独立的软件程序、过程或模块,并因此在各种实施例中可组合或以其他方式重新排列这些模块的各种子集。在一些实施例中,存储器1002可存储以上所述的模块和数据结构的子集。此外,存储器1002可存储以上没有描述的另外的模块和数据结构。
在一些实施例中,设备1000是该设备上的预定义的一组功能的操作唯一地通过触摸屏和/或触控板来执行的设备。通过使用触摸屏和/或触控板作为用于设备1000的操作的主要输入控制设备,可减少设备1000上物理输入控制设备(诸如下压按钮、拨号盘等等)的数量。
可唯一地通过触摸屏和/或触控板执行的预定义的一组功能包括在用户界面之间进行导航。在一些实施例中,触控板在被用户触摸时将设备1000从可显示在设备1000上的任何用户界面导航到主菜单、主页菜单或根菜单。在此类实施例中,触控板可被称为“菜单按钮”。在一些其他实施例中,菜单按钮可以是物理下压按钮或者其他物理输入控制设备,而不是触控板。
图2示出了根据一些实施例用于在相机***中确定旋转偏移的方法的流程图。在一些实施例中,可以至少部分由图7中所示的旋转校准器模块7001、图1的设备1000或图4的设备4000,执行图2中所示的方法。在一些实施例中,该方法包括确定基于设备的取向和基于图像的取向两者。例如,可以从加速度计的重力矢量确定基于设备的取向。可以从图像的水平线的基于像素的确定来确定基于图像的取向,该水平线与图像的x轴进行对比。对比两种取向能够产生相机传感器和取向传感器之间的旋转偏移。在大量图像上执行分析时,可以对结果进行统计分析,以产生设备的旋转偏差。
在一些实施例中,可以在捕获图像的设备之外的设备上执行该方法。例如,可以从具有相机的智能电话的存储器或数据存储向PC的存储器或数据存储转移图像和设备取向信息,使得可以执行该方法并确定旋转偏移或旋转偏差。可以向智能电话回传偏移或偏差,用于在图像处理中进行补偿,或由PC用于图像处理来自智能电话的图像。
在框2004处,获得由相机捕获的图像。例如,可以从存储器,诸如图1中的存储器1002,获得由相机捕获的图像。在可供选择的实施例中,可以直接从图1的相机传感器1064或图4的相机4120获得图像。在框2006处,分析图像的像素数据以确定图像取向角。例如,旋转校准器模块7001可以从分析存储器1002中存储的图像的像素数据来确定图像取向角。
在框2008处,可以获得图像的设备取向信息。例如,可以从与图像相关联的元数据获得设备取向信息。可以与图像捕获同时捕获取向信息,并与图像数据一起存储于设备1000的存储器1002中。在框2010处,可以从设备取向信息确定设备取向角。例如,设备取向信息可以包括来自取向传感器1068(例如,加速度计)的重力矢量,并且图7所示的旋转校准器模块7001可以确定与重力矢量正交的角度为设备取向角。
在框2012处,可以基于图像取向角和设备取向角确定旋转偏移。例如,可以通过从图像取向角(图4中示为角度4020)减去设备取向角(图4中示为角度4006)来确定旋转偏移。本领域的普通技术人员应当理解,在各种实施例中,可以使用其他类型的数值确定来基于图像取向角和设备取向角确定旋转偏移而不脱离本发明的范围。
在框2014处,可以输出基于旋转偏移的旋转偏差。例如,如上所述,旋转校准器模块7001可以基于对一个或多个旋转偏移的统计分析,输出旋转偏差。在框2016处,可以在后续的图像处理中使用旋转偏差。例如,为了在裁剪之前调整图像的对准或用于支持扫描全景功能。
图3示出了根据一些实施例在假设的情况下各种方法和设备组件的输出。通过各种方法确定角度。图3示出,在设备移动或被移动时,来自加速度计或陀螺仪的测量结果可能不像设备保持静止时相对于重力的设备取向那样确定。通常将相机保持静止,以便拍摄静止照片;相机的移动可能导致模糊的图像。然而,在设备操作者相对于操作者静止拿着相机但操作者正在移动(例如,在车中或船上)时,取向传感器可能仍然会提供价值较低的数据。例如,在图3中,因为陀螺仪线3002、FFT线3004和加速度计线的角度全都有这样大小的不同,所以可能不应将与这一图像相关联的输入数据用于旋转偏移计算。
假设的情况示出了各种确定水平线的方法可以产生各种结果。例如,如果图像是由车内的设备在车围绕道路上弯道行进时捕获的,陀螺仪和加速度计可能不会可靠地提供设备取向的指示。因为陀螺仪和加速度计同时受到它们行进所处的交通工具运动的影响,所以不能依赖于传感器输出来确定传感器取向,并且推断而言,也不能依赖于它确定设备取向。如图3所示,假设的情况可以是从例如另一艘移动的船上捕获划船场景的图像。在图3中,三条大致水平的线示出了由三种不同的取向角确定方法确定的三个取向角。
在一个示例中,可以从来自取向传感器1068的设备取向信息确定设备取向线。取向传感器1068可以是输出陀螺仪设备取向信息的陀螺仪,或输出加速度计设备取向信息的加速度计。线3002示出了在起伏的船上拍摄照片的假设的情况下,由陀螺仪传感器确定的设备取向线。线3004示出了通过分析图像的频域而确定的图像取向线。例如,快速傅里叶变换可以变换图像数据以确定图像中的支配角度。线3004与图3中的图像以由频率分析确定的角交叉。线3006示出了由另一个取向传感器,例如加速度计确定的另一个设备取向角。需注意,来自取向传感器的输出是与捕获图像同时捕获的。
还要注意,不仅陀螺仪和加速度计可能提供其取向的不同量值,而且它们还可能提供其取向的不同方向。例如,线3002示出了与水平线之间的角度,来自设备的陀螺仪、指示设备取向向左倾斜的输出。线3006示出了同时来自同一设备的加速度计的水平线输出,指示设备取向向右倾斜。
图4示出了根据各种实施例的设备和相对于设备和设备组件的各个角和线。在图4中,示出了具有相机4120、取向传感器4160和图像显示区域4022的便携式设备4000。线4018表示图像水平线。可以通过很多方式确定图像的图像水平线,包括将像素数据转移到频域,以及基于转移的像素数据,确定图像的支配角度。例如,其中对图像数据应用频域技术,诸如傅里叶变换。如下所述,图6中示出了确定图像水平线的一种示例性方法。
在一些实施例中,图像水平线是与重力正交延伸的理论水平线的估计值。在一些实施例中,图像水平线是由图像捕获的场景中水平线的估计值。在一些实施例中,水平线是例如与树干或建筑物线条正交延伸的线的估计值。
线4016示出了传感器4120的x轴的中心线。在线4016与线4018(示出了图像水平线)相交时,并且形成图像取向角4020。设备取向角4006分别被示于代表竖直线(与水平成90度)的线4004和4008和设备取向线(通过设备的中心线延伸)之间。还示出了竖直传感器取向线4014(通过相机传感器4120的中心线延伸)。
可以从图像取向角4020和设备取向角4006确定相机偏移角4010。例如,在图4中,图像的x轴4016与图像水平线4018形成12.4度的图像取向角。而且,设备取向线4008与竖直线4004形成5度的角。通过从图像取向角(12.4度)减去设备取向角(5度),可以确定7.4度的相机偏移角4010。随时间对很多偏移值进行统计分析可能导致收敛到可用作旋转偏差的旋转校准值。
图5A和图5B示出了根据一些实施例用于在相机***中确定旋转偏移的方法的流程图。在一些实施例中,可以由图1中的设备1000执行图5A和图5B中的方法。例如,可以由图7中的旋转校准器模块7001执行该方法的一些部分。除了用于确定相机中旋转偏移的方法之外,图5A和图5B还示出了各种决策点,一些确定例如是否执行进一步处理。在一些实施例中,各种决策点可以按照所示次序发生。然而,在其他实施例中,可以按其他方式对它们排序,或者并行执行它们。例如,在一些实施例中,可以优选在方法中更早确定是否超过了设备取向角阈值。更早检测超过这个阈值的值可以帮助防止或减少不必要的处理,诸如分析图像的像素数据以在将不使用图像取向角时确定图像取向角。在一些实施例中,该方法的各部分,包括元件和决策两者,都可以通过多种组合重新排序,而不脱离本发明的范围。
在框5004处,获得由相机捕获的图像。例如,可以实时获得来自存储器1002的存储图像或从相机传感器1064或4120捕获的图像。在框5006处,分析图像的像素数据以确定图像取向角。例如,旋转校准器模块7001可以分析来自存储器1004的存储图像的像素数据,以确定图像取向角。例如,图4的图像取向角4020。在5008处,确定图像取向角是否在范围(例如,预先确定的范围)内。在一些示例性实施例中,范围的最大值可以是10度,但可以由用户或制造商配置该范围。如果图像取向角在范围外,该方法可以返回以获得另一图像(框5008,否)。然而,如果图像取向角在范围内(框5008,是),可以获得图像的设备取向信息(框5010)。例如,可以从与图像相关联的图像或文件的元数据获得来自加速度计的重力矢量或来自陀螺仪的其他数据。
可以从设备取向信息确定设备取向(框5012)。例如,图7中所示的旋转校准器模块7001可以基于重力矢量距+1g有多远来确定设备的取向。在框5014处,确定设备取向角是否超过阈值。如果超过阈值(框5014,是),例如,如果重力矢量的大小与+1g的大小偏离超过百分之几(例如,百分之二)。该阈值是可以由用户或制造商配置的。在另一个实施例中,如果确定间距大于某个预定义角度,例如25度,则可以超过阈值。例如,可以假设,设备的操作者可能有意地向上或向下看,或者水平线可能不是图像捕获的焦点。在此类情况下,该方法可以返回5004处以获得另一个图像。可以在过程中更早地执行基于间距的确定以便防止不必要的处理。如果未超过阈值,例如,如果重力矢量在百分之二内或确定间距小于25度,该方法继续(框5014,否)。
在框5016处,基于图像取向角和设备取向角确定旋转偏移。在框5018处,确定偏移值是否超过阈值。如果超过阈值,该方法可以返回以获得另一图像(框5004)。例如,如果在图像取向角和设备取向角之间有超过5度的差值,则可以丢弃旋转偏移或者完全不用于进一步计算旋转偏差。如果未超过阈值,可以累积偏移值(框5020)。例如,可以累积众多图像的偏移值,或者可以存储单个偏移值。在框5022处,确定是否已达到累积阈值。如果达到(框5022,是),该方法继续到框5024。如果未超过阈值(框5022,否),该方法可以返回以获得另一图像(框5004)。在框5024处,从偏移值的统计分析确定旋转偏差。例如,可以对偏移值进行统计分析,以从偏移值确定旋转偏差的模式、平均值、均值或某些其他量度。在框5026处,基于确定的偏移,可以输出旋转偏差。例如,旋转校准器模块7001可以向存储器1002或向未示出的其他模块输出旋转偏差。在一些实施例中,可以将旋转偏差用于后续图像处理中的补偿(框5028)。例如,扫描全景或裁剪过程。
图6示出了根据一些实施例确定图像取向角的方法。在一些实施例中,在图7中示出的方法由旋转校准器模块7001执行。为了确定对准,可以利用自然图像特性,例如与重力或水平线的水平取向对准的树木、建筑物的竖直取向,甚至平均而言与重力垂直对准的地层。对于一些实施例而言,图6示出了一种使用在空间频域中具有标记的空间域中的边缘确定水平或竖直线的方法。
在框6002处,对图像数据进行处理。在一些实施例中,处理包括缩放图像或将图像剪辑成正方形。可以使用的其他处理包括边缘检测或各种滤波器,诸如汉明窗。在框6004处,使用频域技术变换像素数据。例如,可以使用诸如FFT的变换来变换图像的像素数据。基于像素数据,可以确定水平线(框6006)。在一些实施例中,可以将通过频率分析确定的支配角度识别为水平线。计算水平线和图像x轴之间的角(框6008)。在一些实施例中,所计算的角是图像取向角。
图7示出了根据各种实施例用于确定旋转偏差的模块。在一些实施例中,图7的旋转校准器模块7001是图1中设备1000的一部分。旋转校准器模块7001可以执行一些与本文所公开的方法相关联的功能。例如,旋转校准器模块7001可以执行在图2、图5和图6中所示方法中描述的一些功能。通常,旋转校准器模块7001获取图像7010以及与图像7020相关联的设备取向信息作为输入,并产生旋转偏差7040。例如,旋转偏差可相对于设备的相机传感器、相对于设备的取向传感器的或彼此相对的传感器。
旋转校准器模块7001包括图像取向模块7012,其获取图像7010作为输入并产生图像取向角7014作为输出。在一些实施例中,图像取向模块从存储器1002接收图像。图像取向模块处理图像数据以确定图像取向角。在一些实施例中,图像取向模块根据图6所示方法中描述的功能处理图像数据,以确定图像取向角并向校准模块7040传递图像取向角。
旋转校准器模块7001包括设备取向模块7022,其获取与图像相关联的设备取向信息作为输入并产生设备取向角作为输出。在一些实施例中,设备取向模块7022接收图像元数据中的设备取向信息,在其他实施例中,设备取向信息可以是另一个相关文件的部分。在一些实施例中,设备取向信息指示捕获图像时设备(或取向传感器)的取向。设备取向模块7022可以获取设备取向信息7020并确定设备取向角7024。例如,如果设备取向信息为重力矢量,设备取向模块可以确定与重力矢量正交的角作为设备取向角,并向校准模块7030输出该角度。
旋转校准器模块7001包括校准模块7030,校准模块7030获取图像取向角和设备取向角作为输入并确定图像的旋转偏移。校准模块7030可以针对众多图像进行这一确定,以确定多个旋转偏移。校准模块7030可以对众多旋转偏移进行统计分析,以确定从校准模块7030输出的旋转偏差7040。例如,旋转偏差7040可以由校准模块7030存储,可以输出到存储器1002,或者可以输出到设备的其他组件。
Claims (20)
1.一种设备,包括:
相机,所述相机被配置为捕获图像;
取向传感器,所述取向传感器被配置为提供所述设备的取向信息;
一个或多个处理器;和
存储器,所述存储器存储程序指令,所述程序指令能够由所述一个或多个处理器执行以:
获得由所述相机捕获的图像,其中来自所述取向传感器的取向信息与所述图像相关联,其中所述取向信息来自捕获所述图像的时间;
分析所述图像的像素数据以确定所述图像的图像取向角;
获得所述图像的所述取向传感器信息;
从所述取向传感器信息确定设备取向角;以及
基于所述图像取向角和所述设备取向角来确定旋转偏移,其中所述旋转偏移相对于所述相机或取向传感器。
2.根据权利要求1所述的设备,其中为了分析所述图像的像素数据以确定所述图像的图像取向角,所述程序指令能够被进一步执行以:
从对所捕获的图像应用频域技术来确定所述图像的水平线;以及
计算所述图像的角度作为所述图像的所述图像取向角,其中所述角介于所述图像的所述水平线和所述图像的x轴之间。
3.根据权利要求1所述的设备,其中所述程序指令能够进一步由所述一个或多个处理器执行以:
基于所确定的旋转偏移来输出旋转偏差;以及
使用所述旋转偏差以用于与所述设备的裁剪或全景功能相关联的水平线调整中的补偿。
4.根据权利要求3所述的设备,其中所述旋转偏差指示所述取向传感器相对于所述设备的外壳的旋转角或所述相机相对于所述设备的外壳的旋转角。
5.根据权利要求1所述的设备,其中所述程序指令能够进一步由所述一个或多个处理器执行以:
针对多个图像重复所述获得图像、所述分析像素数据、所述获得所述取向传感器信息、所述确定设备取向角、以及所述基于所述图像取向角和所述设备取向角来确定旋转偏移,其中所述旋转偏移相对于所述相机或取向传感器;其中所述重复包括:
确定所述图像取向角是否在预先确定的范围内,并且在所述图像取向角在所述预先确定的范围外时,不针对所述图像确定所述图像的旋转偏移;
输出所述多个图像的多个相应的旋转偏移;以及
对所述多个图像的相应部分的所述多个旋转偏移的至少一部分进行统计分析,以确定在后续图像处理的补偿中使用的所述设备的所述旋转偏差,其中所确定的旋转偏差基于所述统计分析。
6.根据权利要求5所述的设备,其中为了对所述多个旋转偏移的至少一部分进行统计分析,所述程序指令能够进一步由所述一个或多个处理器执行以:
确定所述多个旋转偏移中的一个旋转偏移是否超过阈值;以及
对所述多个旋转偏移中的超过阈值的特定一个旋转偏移来从所述统计分析丢弃所述多个旋转偏移中的特定一个旋转偏移。
7.根据权利要求5所述的设备,其中所述重复进一步包括中断计算与超过设备取向阈值的相机角度相关联的所述图像的旋转偏移。
8.一种方法,包括:
由具有一个或多个处理器的一个或多个计算设备来执行:
获得由所述相机捕获的图像,其中来自所述取向传感器的取向信息与所述图像相关联,其中所述取向信息来自捕获所述图像的时间;
分析所述图像的像素数据以确定所述图像的图像取向角;
获得所述图像的所述取向传感器信息;
从所述取向传感器信息确定设备取向角;以及
基于所述图像取向角和所述设备取向角来确定旋转偏移,其中所述旋转偏移相对于所述相机或取向传感器。
9.根据权利要求8所述的方法,还包括:
从对所捕获的图像应用频域技术来确定所述图像的水平线;以及
计算所述图像的角度作为所述图像的所述图像取向角,其中所述角介于所述图像的所述水平线和所述图像的x轴之间。
10.根据权利要求8所述的方法,还包括:
基于所确定的旋转偏移来输出旋转偏差;以及
使用所述旋转偏差以用于与所述设备的裁剪或扫描全景功能相关联的水平线调整中的补偿。
11.根据权利要求10所述的方法,其中所述旋转偏差指示所述取向传感器相对于所述设备的外壳的旋转角或所述相机相对于所述设备的外壳的旋转角。
12.根据权利要求8所述的方法,还包括:
针对多个图像重复所述获得图像、所述分析像素数据、所述获得所述取向传感器信息、所述确定设备取向角、以及所述基于所述图像取向角和所述设备取向角来确定旋转偏移,其中所述旋转偏移相对于所述相机或取向传感器;其中所述重复包括:
确定所述图像取向角是否在预先确定的范围内,并且在所述图像取向角在所述预先确定的范围外时,不针对所述图像确定所述图像的旋转偏移;
输出所述多个图像的多个相应的旋转偏移;以及
对所述多个图像的相应部分的所述多个旋转偏移的至少一部分进行统计分析,以确定在后续图像处理的补偿中使用的所述设备的所述旋转偏差,其中所确定的旋转偏差基于所述统计分析。
13.根据权利要求12所述的方法,还包括:
确定所述多个旋转偏移中的一个旋转偏移是否超过阈值;以及
对所述多个旋转偏移中的超过阈值的特定一个旋转偏移来从所述统计分析丢弃所述多个旋转偏移中的特定一个旋转偏移。
14.根据权利要求12所述的方法,其中所述重复进一步包括中断计算与超过设备取向阈值的相机角度相关联的所述图像的旋转偏移。
15.一种存储程序指令的非暂态计算机可读存储介质,所述程序指令能够被执行以执行:
获得由所述相机捕获的图像,其中来自所述取向传感器的取向信息与所述图像相关联,其中所述取向信息来自捕获所述图像的时间;
分析所述图像的像素数据以确定所述图像的图像取向角;
获得所述图像的所述取向传感器信息;
从所述取向传感器信息确定设备取向角;以及
基于所述图像取向角和所述设备取向角来确定旋转偏移,其中所述旋转偏移相对于所述相机或取向传感器。
16.根据权利要求15所述的非暂态计算机可读存储介质,还包括:
从对所捕获的图像应用频域技术来确定所述图像的水平线;以及
计算所述图像的角度作为所述图像的所述图像取向角,其中所述角介于所述图像的所述水平线和所述图像的x轴之间。
17.根据权利要求15所述的非暂态计算机可读存储介质,还包括:
基于所确定的旋转偏移来输出旋转偏差;以及
使用所述旋转偏差以用于与所述设备的裁剪或扫描全景功能相关联的水平线调整中的补偿。
18.根据权利要求14所述的非暂态计算机可读存储介质,其中所述旋转偏差指示所述取向传感器相对于所述设备的外壳的旋转角或所述相机相对于所述设备的外壳的旋转角。
19.根据权利要求17所述的非暂态计算机可读存储介质,还包括:
针对多个图像重复所述获得图像、所述分析像素数据、所述获得所述取向传感器信息、所述确定设备取向角、以及所述基于所述图像取向角和所述设备取向角来确定旋转偏移,其中所述旋转偏移相对于所述相机或取向传感器;其中所述重复包括:
确定所述图像取向角是否在预先确定的范围内,并且在所述图像取向角在所述预先确定的范围外时,不针对所述图像确定所述图像的旋转偏移;
输出所述多个图像的多个相应的旋转偏移;以及
对所述多个图像的相应部分的所述多个旋转偏移的至少一部分进行统计分析,以确定在后续图像处理的补偿中使用的所述设备的所述旋转偏差,其中所确定的旋转偏差基于所述统计分析。
20.根据权利要求18所述的非暂态计算机可读存储介质,还包括:
确定所述多个旋转偏移中的一个旋转偏移是否超过阈值;以及
对所述多个旋转偏移中的超过阈值的特定一个旋转偏移来从所述统计分析丢弃所述多个旋转偏移中的特定一个旋转偏移。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/955,467 US8860818B1 (en) | 2013-07-31 | 2013-07-31 | Method for dynamically calibrating rotation offset in a camera system |
US13/955,467 | 2013-07-31 | ||
PCT/US2014/048377 WO2015017312A1 (en) | 2013-07-31 | 2014-07-28 | Method for dynamically calibrating rotation offset in a camera system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105556961A true CN105556961A (zh) | 2016-05-04 |
CN105556961B CN105556961B (zh) | 2017-05-31 |
Family
ID=51392347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480043054.4A Expired - Fee Related CN105556961B (zh) | 2013-07-31 | 2014-07-28 | 用于动态校准相机***中旋转偏移的方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8860818B1 (zh) |
KR (1) | KR101740510B1 (zh) |
CN (1) | CN105556961B (zh) |
WO (1) | WO2015017312A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111417918A (zh) * | 2017-11-30 | 2020-07-14 | 汤姆逊许可公司 | 在头戴式显示器上渲染当前图像的方法、对应装置、计算机程序产品和计算机可读载体介质 |
CN111955005A (zh) * | 2018-04-02 | 2020-11-17 | 三星电子株式会社 | 处理360度图像内容的方法和*** |
CN112154090A (zh) * | 2018-05-29 | 2020-12-29 | 西门子交通有限责任公司 | 轨道车辆相机的校准方法和校准***以及具有轨道车辆相机的轨道车辆 |
CN113016008A (zh) * | 2019-10-21 | 2021-06-22 | 谷歌有限责任公司 | 重力对准影像的机器学习推断 |
WO2022022633A1 (zh) * | 2020-07-31 | 2022-02-03 | 维沃移动通信有限公司 | 图像显示方法、装置和电子设备 |
Families Citing this family (40)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7146260B2 (en) | 2001-04-24 | 2006-12-05 | Medius, Inc. | Method and apparatus for dynamic configuration of multiprocessor system |
US9052161B2 (en) * | 2005-12-19 | 2015-06-09 | Raydon Corporation | Perspective tracking system |
US9741150B2 (en) * | 2013-07-25 | 2017-08-22 | Duelight Llc | Systems and methods for displaying representative images |
JP5736528B2 (ja) * | 2013-03-29 | 2015-06-17 | 楽天株式会社 | 端末装置、端末装置の制御方法、プログラム、及び情報記憶媒体 |
CN104252302A (zh) * | 2013-06-26 | 2014-12-31 | 富泰华工业(深圳)有限公司 | 图像自适应调整***及方法 |
US8860818B1 (en) | 2013-07-31 | 2014-10-14 | Apple Inc. | Method for dynamically calibrating rotation offset in a camera system |
US9177362B2 (en) | 2013-08-02 | 2015-11-03 | Facebook, Inc. | Systems and methods for transforming an image |
US10021296B2 (en) * | 2013-12-31 | 2018-07-10 | Futurewei Technologies, Inc. | Automatic rotatable camera for panorama taking in mobile terminals |
US10444030B1 (en) * | 2014-05-12 | 2019-10-15 | Inertial Labs, Inc. | Automatic calibration of magnetic sensors based on optical image tracking |
US9210306B1 (en) * | 2014-05-31 | 2015-12-08 | Apple Inc. | Method and system for a single frame camera module active alignment tilt correction |
CA2956795C (en) | 2014-08-03 | 2020-06-30 | PogoTec, Inc. | Wearable camera systems and apparatus and method for attaching camera systems or other electronic devices to wearable articles |
RU2017124378A (ru) | 2014-12-23 | 2019-01-24 | Поготек, Инк. | Система и способы беспроводной камеры |
WO2016126672A1 (en) * | 2015-02-02 | 2016-08-11 | Brian Mullins | Head mounted display calibration |
US10481417B2 (en) | 2015-06-10 | 2019-11-19 | PogoTec, Inc. | Magnetic attachment mechanism for electronic wearable device |
WO2016201261A1 (en) | 2015-06-10 | 2016-12-15 | PogoTec, Inc. | Eyewear with magnetic track for electronic wearable device |
US9800778B2 (en) * | 2015-07-21 | 2017-10-24 | Qualcomm Incorporated | Camera orientation notification system |
US10341787B2 (en) | 2015-10-29 | 2019-07-02 | PogoTec, Inc. | Hearing aid adapted for wireless power reception |
US10053010B2 (en) | 2015-12-04 | 2018-08-21 | Dura Operating, Llc | Dynamic perspective shifting system and method |
US10003732B2 (en) * | 2016-02-25 | 2018-06-19 | Foodim Ltd | Depth of field processing |
CN105812662A (zh) * | 2016-03-17 | 2016-07-27 | 合肥联宝信息技术有限公司 | 图像获取方法 |
US11558538B2 (en) | 2016-03-18 | 2023-01-17 | Opkix, Inc. | Portable camera system |
WO2017223042A1 (en) * | 2016-06-20 | 2017-12-28 | PogoTec, Inc. | Image alignment systems and methods |
USD850510S1 (en) | 2016-07-21 | 2019-06-04 | Gofish Cam, Inc. | Underwater fishing camera |
CA3031661A1 (en) * | 2016-07-21 | 2018-01-25 | Gofish Cam, Inc. | Underwater fishing camera, smart fishing camera system, and systems and methods for automatic image rotation and stabilization |
EP3539285A4 (en) | 2016-11-08 | 2020-09-02 | Pogotec, Inc. | PORTABLE ELECTRONIC DEVICE INTELLIGENT BOX |
JP6914669B2 (ja) * | 2017-02-14 | 2021-08-04 | キヤノン株式会社 | 撮像装置及びその制御方法 |
IL251544A0 (en) * | 2017-04-03 | 2017-06-29 | Elbit Systems Electro Optics Elop Ltd | A system and method for increasing the coverage of the photographed area using a photographic device |
US10388077B2 (en) | 2017-04-25 | 2019-08-20 | Microsoft Technology Licensing, Llc | Three-dimensional environment authoring and generation |
JP6910219B2 (ja) * | 2017-06-27 | 2021-07-28 | ローム株式会社 | 撮像装置のキャリブレーション方法 |
KR20240096793A (ko) * | 2017-07-10 | 2024-06-26 | 매직 립, 인코포레이티드 | 열 냉각 시스템과 전자 센서들의 통합을 위한 방법 및 시스템 |
US10652472B2 (en) * | 2018-02-22 | 2020-05-12 | Adobe Inc. | Enhanced automatic perspective and horizon correction |
CN110246184B (zh) * | 2018-03-07 | 2021-06-11 | 杭州海康威视数字技术股份有限公司 | 一种车载相机外参确定方法、装置、设备及*** |
CN110418049B (zh) * | 2018-04-26 | 2021-08-17 | Oppo广东移动通信有限公司 | 位置信息处理方法和装置、移动终端、存储介质 |
US11300857B2 (en) | 2018-11-13 | 2022-04-12 | Opkix, Inc. | Wearable mounts for portable camera |
US11094030B2 (en) * | 2018-12-21 | 2021-08-17 | Microsoft Technology Licensing, Llc | Methods of transforming image misalignment |
EP3756340A1 (en) * | 2019-05-14 | 2020-12-30 | SZ DJI Technology Co., Ltd. | Photographing method and apparatus |
CN112261262B (zh) * | 2020-10-21 | 2022-06-17 | 维沃移动通信有限公司 | 图像校准方法和装置、电子设备和可读存储介质 |
EP4054187A1 (en) * | 2021-03-04 | 2022-09-07 | Essilor International | Calibration method of a portable electronic device |
US11557089B1 (en) | 2022-03-25 | 2023-01-17 | Valerann Ltd | System and method for determining a viewpoint of a traffic camera |
KR102607039B1 (ko) * | 2023-01-13 | 2023-11-29 | 오상철 | 지향각도 보정이 가능한 개인 일상용 녹화 카메라 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030016883A1 (en) * | 2001-07-20 | 2003-01-23 | Baron John M. | System and method for horizon correction within images |
CN101766021A (zh) * | 2007-07-27 | 2010-06-30 | 株式会社理光 | 成像装置和成像装置的控制方法 |
US20110310283A1 (en) * | 2010-06-17 | 2011-12-22 | Canon Kabushiki Kaisha | Imaging apparatus, control method thereof, and program |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080306708A1 (en) | 2007-06-05 | 2008-12-11 | Raydon Corporation | System and method for orientation and location calibration for image sensors |
CN101374198A (zh) * | 2007-08-24 | 2009-02-25 | 鸿富锦精密工业(深圳)有限公司 | 摄像装置及其影像自动正立方法 |
DE102009049849B4 (de) | 2009-10-19 | 2020-09-24 | Apple Inc. | Verfahren zur Bestimmung der Pose einer Kamera, Verfahren zur Erkennung eines Objekts einer realen Umgebung und Verfahren zur Erstellung eines Datenmodells |
US20120154633A1 (en) | 2009-12-04 | 2012-06-21 | Rodriguez Tony F | Linked Data Methods and Systems |
US8933986B2 (en) * | 2010-05-28 | 2015-01-13 | Qualcomm Incorporated | North centered orientation tracking in uninformed environments |
US8358321B1 (en) | 2011-04-29 | 2013-01-22 | Google Inc. | Change screen orientation |
US9135705B2 (en) * | 2012-10-16 | 2015-09-15 | Qualcomm Incorporated | Sensor calibration and position estimation based on vanishing point determination |
US8860818B1 (en) | 2013-07-31 | 2014-10-14 | Apple Inc. | Method for dynamically calibrating rotation offset in a camera system |
-
2013
- 2013-07-31 US US13/955,467 patent/US8860818B1/en active Active
-
2014
- 2014-07-28 KR KR1020167004873A patent/KR101740510B1/ko active IP Right Grant
- 2014-07-28 CN CN201480043054.4A patent/CN105556961B/zh not_active Expired - Fee Related
- 2014-07-28 WO PCT/US2014/048377 patent/WO2015017312A1/en active Application Filing
- 2014-10-13 US US14/513,046 patent/US9092853B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030016883A1 (en) * | 2001-07-20 | 2003-01-23 | Baron John M. | System and method for horizon correction within images |
CN101766021A (zh) * | 2007-07-27 | 2010-06-30 | 株式会社理光 | 成像装置和成像装置的控制方法 |
US20110310283A1 (en) * | 2010-06-17 | 2011-12-22 | Canon Kabushiki Kaisha | Imaging apparatus, control method thereof, and program |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111417918A (zh) * | 2017-11-30 | 2020-07-14 | 汤姆逊许可公司 | 在头戴式显示器上渲染当前图像的方法、对应装置、计算机程序产品和计算机可读载体介质 |
CN111417918B (zh) * | 2017-11-30 | 2024-03-26 | 汤姆逊许可公司 | 用于在头戴式显示器上渲染当前图像的方法、对应装置、计算机程序产品和计算机可读载体介质 |
CN111955005A (zh) * | 2018-04-02 | 2020-11-17 | 三星电子株式会社 | 处理360度图像内容的方法和*** |
CN111955005B (zh) * | 2018-04-02 | 2022-07-19 | 三星电子株式会社 | 处理360度图像内容的方法和*** |
CN112154090A (zh) * | 2018-05-29 | 2020-12-29 | 西门子交通有限责任公司 | 轨道车辆相机的校准方法和校准***以及具有轨道车辆相机的轨道车辆 |
CN113016008A (zh) * | 2019-10-21 | 2021-06-22 | 谷歌有限责任公司 | 重力对准影像的机器学习推断 |
WO2022022633A1 (zh) * | 2020-07-31 | 2022-02-03 | 维沃移动通信有限公司 | 图像显示方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
KR101740510B1 (ko) | 2017-05-26 |
US20150035991A1 (en) | 2015-02-05 |
WO2015017312A1 (en) | 2015-02-05 |
US8860818B1 (en) | 2014-10-14 |
US9092853B2 (en) | 2015-07-28 |
CN105556961B (zh) | 2017-05-31 |
KR20160035050A (ko) | 2016-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105556961A (zh) | 用于动态校准相机***中旋转偏移的方法 | |
US10830990B2 (en) | Primary-subordinate camera focus based on lens position sensing | |
KR102319207B1 (ko) | 카메라 자세 정보를 결정하기 위한 방법, 장치 및 디바이스, 그리고 저장 매체 | |
US9182860B2 (en) | Method for detecting a contact | |
CN110059685B (zh) | 文字区域检测方法、装置及存储介质 | |
US9491361B2 (en) | Lorentz actuator mechanism calibration | |
US20160112701A1 (en) | Video processing method, device and system | |
CN105321169A (zh) | 用于单幅照相机模块主动对准倾斜校正的方法和*** | |
US9883108B2 (en) | Imaging apparatus and image blur correction method | |
US20170244900A1 (en) | Imaging apparatus and imaging method | |
US20150310264A1 (en) | Dynamic Gesture Recognition Using Features Extracted from Multiple Intervals | |
US20220084249A1 (en) | Method for information processing, electronic equipment, and storage medium | |
CN107124556A (zh) | 对焦方法、装置、计算机可读存储介质和移动终端 | |
EP3189498A1 (en) | Image location selection for use in depth photography system | |
CN109302563B (zh) | 防抖处理方法、装置、存储介质及移动终端 | |
JP7472281B2 (ja) | 電子機器及びフォーカス方法 | |
US9860447B1 (en) | Calibration of optical image stabilization module with motion sensor using image comparisons | |
CN111444749A (zh) | 路面导向标志的识别方法、装置及存储介质 | |
KR102084161B1 (ko) | 이미지를 보정하는 전자 장치 및 그 제어 방법 | |
KR102521408B1 (ko) | 인포그래픽을 제공하기 위한 전자 장치 및 그에 관한 방법 | |
CN114731362A (zh) | 包括相机的电子装置及其方法 | |
AU2016213954A1 (en) | A system for and a method of measuring a path length using a handheld electronic device | |
JP6306274B1 (ja) | オブジェクト検出中の適応的なエッジ状の特徴の選択 | |
CN112348884A (zh) | 一种定位方法、终端设备和服务器 | |
CN112489104A (zh) | 测距方法、装置、电子设备以及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170531 |