用于相机的全景定中心用户界面的制作方法

文档序号:33664581发布日期:2023-03-29 11:27阅读:46来源:国知局
用于相机的全景定中心用户界面的制作方法

1.概括而言,本公开内容涉及用于图像捕获的系统和方法,以及具体地涉及对全景图像的生成。


背景技术:

2.许多相机能够生成全景图像。例如,诸如移动电话和平板设备的手持设备中的许多相机能够生成全景图像。生成这样的全景图像通常需要用户在捕获场景的多个图像时旋转相机。当图像捕获完成时,所捕获的图像可以被组合为具有大于所捕获的单个图像的视野(fov)的fov的单个全景图像。这样的全景图像可以基于所捕获的要组合的图像而具有不同的视野。例如,一些全景图像可能具有360度fov。具有360度fov的全景图像包括在由用户(诸如原地旋转的用户)对相机的完全旋转期间捕获的图像。具有360度fov的全景图像可以被称为360度全景图像。其它全景图像可能具有较小的视野(诸如180度或其它角度)。


技术实现要素:

3.提供该发明内容是为了以简化形式介绍下文在具体实施方式中进一步描述的一些概念。该发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在限制所要求保护的主题的范围。本公开内容的系统、方法和设备均具有若干创新方面,其中没有单个方面单独地负责本文所公开的期望属性。
4.在本公开内容中描述的主题的一个创新方面可以被实现为一种用于使用图像捕获设备来生成全景图像的方法。所述方法可以由包括相机的适当的图像捕获设备来执行,以及可以包括:接收用于开始生成所述全景图像的用户命令;使用所述相机来捕获用于生成所述全景图像的多个图像;在捕获所述多个图像时接收指定中心感兴趣区域(roi)的指示;完成所述多个图像的捕获;以及基于所述多个图像来自动地生成所述全景图像,其中,所述全景图像是以所指定的中心roi为中心的。
5.在一些方面中,所接收的指示可以是指定所述中心roi的用户输入,诸如在所述图像捕获设备的触摸敏感用户界面上的触摸手势,诸如在所述触摸敏感用户界面上的所述中心roi处的触摸手势,或者其指示在所述相机指向所述中心roi时对所述触摸敏感用户界面上的菜单选项的选择。在一些方面中,接收所述指示可以包括:基于所述多个图像的一个或多个特性来自动地确定所述中心roi,诸如所述多个图像中的一个或多个对象的估计深度。在一些方面中,在接收所述用户命令之前,所述方法可以包括:接收将所述设备配置为在被配置为生成经重新定中心的全景图像的模式下操作的用户输入。
6.在一些方面中,所述全景图像可以是360度全景图像,以及自动地生成所述全景图像可以包括:确定与所指定的中心roi相对应的分割点;基于所述分割点来确定起始捕获点和结束捕获点;以及基于所述起始捕获点和所述结束捕获点来生成所述全景图像。在一些方面中,所述全景图像可以是小于360度的全景图像,以及自动地生成所述全景图像可以包括:将所指定的中心roi与所述全景图像的最大视野进行比较;以及将所述全景图像裁剪为
以所指定的中心roi为中心。
7.在本公开内容中描述的主题的另一创新方面可以在一种图像捕获设备中实现。所述图像捕获设备可以包括:一个或多个相机;一个或多个处理器;以及存储用于由所述一个或多个处理器执行的指令的存储器。对所述指令的执行可以使得所述图像捕获设备执行包括以下各项的操作:接收用于开始生成全景图像的用户命令;使用所述一个或多个相机来捕获用于生成所述全景图像的多个图像;在捕获所述多个图像时接收指定中心感兴趣区域(roi)的指示;完成所述多个图像的捕获;以及基于所述多个图像来自动地生成所述全景图像,其中,所述全景图像是以所指定的中心roi为中心的。
8.在一些方面中,所接收的指示可以是指定所述中心roi的用户输入,诸如在所述图像捕获设备的触摸敏感用户界面上的触摸手势,诸如在所述触摸敏感用户界面上的所述中心roi处的触摸手势,或者其指示在所述相机指向所述中心roi时对所述触摸敏感用户界面上的菜单选项的选择。在一些方面中,接收所述指示可以包括:基于所述多个图像的一个或多个特性来自动地确定所述中心roi,诸如所述多个图像中的一个或多个对象的估计深度。在一些方面中,在接收所述用户命令之前,所述方法可以包括:接收将所述设备配置为在被配置为生成经重新定中心的全景图像的模式下操作的用户输入。
9.在一些方面中,所述全景图像可以是360度全景图像,以及自动地生成所述全景图像可以包括:确定与所指定的中心roi相对应的分割点;基于所述分割点来确定起始捕获点和结束捕获点;以及基于所述起始捕获点和所述结束捕获点来生成所述全景图像。在一些方面中,所述全景图像可以是小于360度的全景图像,以及自动地生成所述全景图像可以包括:将所指定的中心roi与所述全景图像的最大视野进行比较;以及将所述全景图像裁剪为以所指定的中心roi为中心。
10.在本公开内容中描述的主题的另一创新方面可以在一种存储指令的非暂时性计算机可读存储介质中实现,所述指令用于由包括相机的图像捕获设备的一个或多个处理器执行。对所述指令的执行使得所述图像捕获设备执行包括以下各项的操作:接收用于开始生成全景图像的用户命令;使用所述相机来捕获用于生成所述全景图像的多个图像;在捕获所述多个图像时接收指定中心感兴趣区域(roi)的指示;完成所述多个图像的捕获;以及基于所述多个图像来自动地生成所述全景图像,其中,所述全景图像是以所指定的中心roi为中心的。
11.在一些方面中,所接收的指示可以是指定所述中心roi的用户输入,诸如在所述图像捕获设备的触摸敏感用户界面上的触摸手势,诸如在所述触摸敏感用户界面上的所述中心roi处的触摸手势,或者其指示在所述相机指向所述中心roi时对所述触摸敏感用户界面上的菜单选项的选择。在一些方面中,接收所述指示可以包括:基于所述多个图像的一个或多个特性来自动地确定所述中心roi,诸如所述多个图像中的一个或多个对象的估计深度。在一些方面中,在接收所述用户命令之前,所述方法可以包括:接收将所述设备配置为在被配置为生成经重新定中心的全景图像的模式下操作的用户输入。
12.在一些方面中,所述全景图像可以是360度全景图像,以及自动地生成所述全景图像可以包括:确定与所指定的中心roi相对应的分割点;基于所述分割点来确定起始捕获点和结束捕获点;以及基于所述起始捕获点和所述结束捕获点来生成所述全景图像。在一些方面中,所述全景图像可以是小于360度的全景图像,以及自动地生成所述全景图像可以包
括:将所指定的中心roi与所述全景图像的最大视野进行比较;以及将所述全景图像裁剪为以所指定的中心roi为中心。
13.在本公开内容中描述的主题的另一创新方面可以在一种图像捕获设备中实现。所述图像捕获设备可以包括:一个或多个相机;用于接收用于开始生成全景图像的用户命令的单元;用于使用所述一个或多个相机来捕获用于生成所述全景图像的多个图像的单元;用于在捕获所述多个图像时接收指定中心感兴趣区域(roi)的指示的单元;用于完成所述多个图像的捕获的单元;以及用于基于所述多个图像来自动地生成所述全景图像的单元,其中,所述全景图像是以所指定的中心roi为中心的。
附图说明
14.在附图中的各图中通过举例的方式而非通过限制的方式示出了本公开内容的各方面,以及在附图中,相似的附图标记指代相似的元素。
15.图1是根据一些实现方式的被配置为生成全景图像的示例设备的框图。
16.图2示出了生成传统360度全景图像的轨迹图。
17.图3示出了根据一些实现方式的生成360度全景图像的轨迹图。
18.图4示出了根据一些实现方式的生成小于360度的全景图像的轨迹图。
19.图5示出了根据一些实现方式的用于图像捕获设备的示例用户界面窗口。
20.图6是描绘根据一些实现方式的用于生成全景图像的示例操作的说明性流程图。
21.图7示出了根据一些实现方式的支持生成全景图像的示例设备的框图。
具体实施方式
22.本公开内容的各方面可以用于自动地生成要以在生成全景图像期间指定的中心感兴趣区域(roi)为中心的全景图像。如上所述,许多图像捕获设备(诸如蜂窝电话和平板设备)包括相机以及能够生成全景图像。这样的全景图像可以是基于例如由用户旋转图像捕获设备的相机时捕获的图像来生成的。所捕获的图像可以被处理以及被组合为单个全景图像。然而,尽管用户可能期望全景图像以特定点为中心(诸如当相机正在面对特定的人或地标时),但是在实践中,可能难以生成以特定点为中心的全景图像。例如,生成以特定点为中心的180度全景图像需要用户在相机被定向为与期望中心点成90度的情况下开始捕获图像,这对于用户来说可能难以确定。类似地,对于360度全景图像,用户可能需要在相机被定向为与期望中心点成180度的情况下开始捕获图像。对于除了360度全景图像或180度全景图像以外的全景图像,确定适当的起点可能甚至更加困难。
23.示例实现方式的方法和装置包括接收指定用于全景图像的中心感兴趣区域(roi)的指示。然后,可以生成全景图像以便以所指定的中心roi为中心。这样的指示可以包括用户输入,诸如在图像捕获设备的触摸敏感用户界面上的触摸手势、对触摸敏感用户界面上的菜单选项的选择、或另一适当的用户输入。自动地生成全景图像可以包括:确定用于所捕获的全景图像的分割点;基于分割点来确定全景图像的起始捕获点和结束捕获点;以及基于起始捕获点和结束捕获点来生成全景图像。所捕获的全景图像可以是360度全景图像,或者可以具有小于360度的视野。
24.在下文的描述中,阐述了众多具体细节(诸如具体的组件、电路和过程的示例)以
提供对本公开内容的全面理解。如本文所使用的术语“耦合”意指直接地连接或者通过一个或多个介于中间的组件或电路来连接。另外,在下文的描述中以及出于解释的目的,阐述具体术语以提供对本公开内容的全面理解。然而,对于本领域技术人员而言将显而易见的是,实践本文中公开的教导可能不要求这些具体细节。在其它实例中,以框图形式示出众所周知的电路和设备,以避免模糊本公开内容的教导。随后的具体实施方式的一些部分是依据对在计算机存储器内的数据比特的运算的过程、逻辑块、处理和其它符号表示来给出的。在本公开内容中,过程、逻辑块、过程等被认为是导致期望的结果的步骤或指令的一致的序列。步骤是要求对物理量的物理操纵的那些步骤。通常,尽管不是必要的,但是这些量采用能够在计算机系统中存储、传送、组合、比较和以其它方式操纵的电子或者磁信号的形式。
25.然而,应当记住的是,全部这些和类似术语将与适当的物理量相关联,以及仅是应用于这些量的方便标记。除非另外明确地声明(如根据下文的讨论显而易见的),否则要认识到的是,遍及本技术,利用诸如“存取”、“接收”、“发送”、“使用”、“选择”、“确定”、“归一化”、“相乘”、“平均”、“监测”、“比较”、“应用”、“更新”、“测量”、“推导”、“解决”等的术语的讨论指的是计算机系统或类似的电子计算设备的动作和进程,所述计算机系统或类似的电子计算设备将表示为在计算机系统寄存器和存储器内的物理(电子)量的数据操纵以及转换为类似地表示为在计算机系统存储器或寄存器或者其它这样的信息存储、传输或显示设备内的物理量的其它数据。
26.在各图中,单个框可能被描述为执行一个或多个功能;然而,在实际实践中,由该框执行的一个或多个功能可以在单个组件中执行或者跨越多个组件来执行,和/或可以使用硬件、使用软件或者使用硬件和软件的组合来执行。为了清楚地说明硬件和软件的这种可互换性,各种说明性的组件、框、模块、电路和步骤依据其功能在下文进行总体描述。这样的功能是实现为硬件还是软件,取决于特定的应用和施加在整个系统上的设计约束。熟练的技术人员可以针对每个特定的应用以变化的方式实现所描述的功能,但是这样的实现方式决策不应当解释为导致背离本公开内容的范围。此外,示例设备可以包括除了那些所示组件之外的组件,包括众所周知的组件,诸如处理器、存储器等。
27.本公开内容的各方面适用于包括一个或多个相机以及被配置为或者能够捕获图像或视频的任何适当的图像捕获设备(诸如具有一个或多个相机的安全系统、智能电话、平板设备、膝上型计算机、数字视频和/或静态相机、网络相机等)。虽然下文关于具有或耦合到一个相机的图像捕获设备进行了描述,但是本公开内容的各方面适用于具有任何数量的相机的设备,以及因此不限于仅具有一个相机的设备。本公开内容的各方面适用于被配置为捕获静态图像以及捕获视频的设备,以及可以在具有或耦合到不同能力的相机的设备中实现。
28.术语“设备”或“图像捕获设备”不限于一个物理对象或具体数量的物理对象(诸如一个智能电话、一个相机控制器、一个处理系统等)。如本文中所使用的,设备可以是具有可以实现本公开内容的至少一些部分的一个或多个组成部分的任何图像捕获设备。虽然下文的说明书和示例使用术语“设备”来描述本公开内容的各个方面,但是术语“设备”不限于对象的具体配置、类型或数量。
29.图1是根据一些实现方式的被配置为生成全景图像的示例设备100的框图。示例设备100可以包括或耦合到相机102、处理器104、存储指令108的存储器106和控制器110。在一
些实现方式中,设备100可以包括(或耦合到)显示器114和多个输入/输出(i/o)组件116。设备100还可以包括电源118,其可以耦合到设备100或集成到设备100中。设备100可以包括未示出的额外特征或组件。例如,可以包括用于无线通信设备的无线接口,该无线接口可以包括多个收发机和基带处理器。在另一示例中,设备100可以包括或耦合到除了相机102之外的额外相机。设备100还可以包括或耦合到一个或多个闪光灯、深度传感器或其它适当的成像组件。
30.相机102可以是能够捕获单独的图像帧(诸如静态图像)和/或捕获视频(诸如一系列捕获的图像帧)的任何适当的相机。相机102可以包括单个图像传感器,或者其是双相机模块或者具有一个或多个图像传感器(诸如一个或多个cmos图像传感器)的任何其它适当的模块。
31.存储器106可以是存储计算机可执行指令108的非瞬态或非暂时性计算机可读介质,以执行在本公开内容中描述的一个或多个操作的全部或部分。处理器104可以是能够执行被存储在存储器106内的一个或多个软件程序(诸如指令108)的脚本或指令的一个或多个适当的处理器。在一些方面中,处理器104可以是一个或多个通用处理器,其执行指令108以使得设备100执行任何数量的功能或操作。在额外或替代方面中,处理器104可以包括集成电路或其它硬件以在不使用软件的情况下执行功能或操作。
32.虽然在图1的示例中被示为经由处理器104彼此耦合,但是处理器104、存储器106、控制器110、显示器114和i/o组件116可以以各种排列彼此耦合。例如,处理器104、存储器106、控制器110、显示器114和/或i/o组件116可以经由一个或多个本地总线(为了简单起见未示出)彼此耦合。
33.显示器114可以是任何适当的显示器或屏幕,其允许用户交互和/或呈现项目(诸如所捕获的图像、视频或预览图像)以供用户观看。在一些方面中,显示器114可以是触摸敏感显示器。i/o组件116可以是或包括从用户接收输入(诸如命令)以及向用户提供输出的任何适当的机制、接口或设备。例如,i/o组件116可以包括(但不限于)图形用户界面、键盘、鼠标、麦克风和扬声器等。显示器114和/或i/o组件116可以向用户提供预览图像和/或接收用于调整相机102的一个或多个设置的用户输入。
34.控制器110可以包括一个或多个控制器。一个或多个控制器可以被配置为控制相机102。控制器110可以包括图像信号处理器(isp)112,其可以是用于处理由相机102提供的所捕获的图像帧或视频的一个或多个图像信号处理器。在一些方面中,控制器110或isp 112可以执行来自存储器的指令(诸如来自存储器106的指令108或被存储在耦合到isp 112的单独存储器中的指令)。在其它方面中,控制器110或isp 112可以包括特定硬件。控制器110或isp 112可以替代地或另外包括特定硬件和执行软件指令的能力的组合。例如,isp 112可以包括或以其它方式被配置为实现图像处理流水线的一个或多个阶段。
35.图2示出了生成传统的360度全景图像的轨迹图200。轨迹图200示出了用户210在起点220处面对相机的光轴时发起对360度全景图像的生成的俯视图。相机可以被包括在图像捕获设备中。在对全景图像的生成期间,用户210沿着用于完整的360度旋转的路径230向右旋转相机(在图2中以顺时针方向),直到光轴再次面对起点220为止。例如,路径230可以是用于水平全景图像的水平路径、用于垂直全景图像的垂直路径、或任何其它适当的路径。此外,应注意的是,虽然路径230被示为向用户的右侧前进(在图2中以顺时针方向),但是其
它路径可以向用户的左侧、向上或以任何适当的角度、或者行进或旋转方向前进。如下文进一步讨论的,图像捕获设备的用户界面可以显示一个或多个图形元素,以辅助用户210在沿着路径230旋转相机时保持相机水平。例如,用户界面可以包括设备100的显示器114和/或i/o组件116。随着相机沿着路径230旋转,相机可以从多个视角捕获多个图像。图像捕获设备可以将通过旋转相机而捕获的多个图像组合为以点240为中心的360度全景图像。点240沿路径230与起点220成180度。为了生成全景图像,图像捕获设备可以对齐所捕获的图像的边缘,以及使用适当的技术(诸如图像拼接、拉伸、扭曲、变形等)对它们进行组合以生成360度全景图像。
36.如上所讨论的,基于用户选择适当的起点,用户可能难以根据需要将全景图像居中。例如,为了生成360度全景图像,用户必须沿着使相机旋转360度的路径选择与期望点成180度的起点。对于在fov中小于360度的全景图像,这种确定可能更加复杂。因此,示例实现方式允许接收指定全景图像的期望中心点的指示。这样的期望中心点还可以被称为中心感兴趣区域(roi)。然后可以自动地处理在相机的旋转期间捕获的图像以生成以中心roi为中心的全景图像。示例实现方式由此可以允许对全景图像的期望中心点的简单和可靠的选择,同时允许用户在任意起点处开始对全景图像的生成。
37.图3示出了根据一些实现方式的生成360度全景图像的轨迹图300。轨迹图300示出了用户310在起点320处面对相机的光轴时发起对360度全景图像的生成的俯视图。例如,相机可以是图1的设备100的相机102。在对全景图像的生成期间,用户310沿着用于完整的360度旋转的路径330向右旋转相机(在图3中以顺时针方向),直到光轴再次面对起点320为止。例如,路径330可以是用于水平全景图像的水平路径、用于垂直全景图像的垂直路径或任何其它适当的路径。此外,要注意的是,虽然路径330被示为向用户的右侧前进(在图3中以顺时针方向),但是其它实现方式可以包括向用户的左侧、向上或以任何适当的角度、或者行进或旋转方向前进的路径。如下文进一步讨论的,图像捕获设备的用户界面可以显示一个或多个图形元素,以辅助用户310在沿着路径330旋转相机时保持相机水平。随着相机沿着路径330旋转,相机可以从多个视角捕获多个图像。例如,用户界面可以包括设备100的显示器114和/或i/o组件116。对于传统的全景图像生成技术,中心点将在点340处。然而,在多个图像的捕获期间,可以接收指定期望中心点350的指示,诸如用户选择、自动选择或另一适当的指示。在相机已经沿着整个路径330旋转360度之后,图像捕获设备可以自动地将多个图像处理为以点350为中心的360度全景图像。类似于图2,图像捕获设备可以对齐所捕获的图像的边缘,以及使用诸如图像拼接的适当技术来对它们进行组合以生成360度全景图像。此外,图像捕获设备可以确定与中心点350成180度的分割点360。图像捕获设备然后可以将全景图像的起始捕获点拼合到结束捕获点,换句话说,将紧接在起点320处开始生成全景图像之后捕获的图像拼合到在通过整个路径330旋转相机之后紧接在到达起点320之前捕获的图像。图像捕获设备可以使用图像拼接、拉伸、扭曲、变形或其它适当的图像拼合技术,来将起始捕获点拼合到结束捕获点。图像捕获设备还可以在分割点360处分割全景图像,以生成以期望中心点350为中心的全景图像。
38.示例实现方式的其它方面可以允许具有小于360度的视野的全景图像的自动重新定中心。用户甚至更加难以使用传统技术来确定用于小于360度的全景图像的适当起点。所要求的起点不是与期望中心点大致成180度,而是与期望中心点相距总视野的一半,因此,
对于200度全景图像来说,针对传统的全景图像捕获技术,起点必须与期望中心点成100度。示例实现方式可以允许在捕获用于生成全景图像的多个图像期间接收对中心roi的指示。与上文关于图3描述的示例一样,然后可以自动地生成要以中心roi为中心的全景图像。然而,与图3的示例相反,生成经重新定中心的全景图像可以包括裁剪所捕获的图像的一部分,使得全景图像以中心roi为中心。
39.图4示出了根据一些实现方式的生成小于360度的全景图像的轨迹图400。轨迹图400示出了用户410在起点420处面对相机的光轴时发起对小于360度的全景图像的生成的俯视图。例如,相机可以是图1的设备100的相机102。在对全景图像的生成期间,用户410沿着用于小于360度旋转的路径430向右旋转相机(在图4中以顺时针方向),直到光轴面对停止点440为止。例如,路径430可以是用于水平全景图像的水平路径、用于垂直全景图像的垂直路径或任何其它适当的路径。此外,要注意的是,虽然路径430被示为向用户的右侧前进(在图3中以顺时针方向),但是其它实现方式可以包括向用户的左侧、向上或以任何适当的角度、或者行进或旋转方向前进的路径。如下文进一步讨论的,图像捕获设备的用户界面可以显示一个或多个图形元素,以辅助用户410在沿着路径430旋转相机时保持相机水平。例如,用户界面可以包括图1的设备100的显示器114和/或i/o组件116。随着相机沿着路径430旋转,相机可以从多个视角捕获多个图像。对于传统的全景图像捕获技术,中心点将在点450处。然而,在捕获多个图像期间,可以接收指定期望中心点460的指示,诸如用户选择、自动选择或另一适当的指示。在相机已经沿着整个路径430旋转之后,图像捕获设备可以自动地处理多个图像以生成以点460为中心的小于360度的全景图像。类似于图1,图像捕获设备可以对齐所捕获的图像的边缘,以及使用适当的技术(诸如图像拼接、拉伸、扭曲、变形或其它适当的图像拼合技术)对它们进行组合以生成全景图像。为了生成以点460为中心的经重新定中心的全景图像,可以对所捕获的图像的一部分进行剪切或裁剪。例如,可以确定全景图像的终点470,以及可以裁剪图像的在终点470与停止点440之间捕获的部分,使得全景图像可以包括沿着路径430在起点420与终点470之间捕获的图像。以这种方式,全景图像是以期望中心点460而不是点450为中心。
40.要注意的是,虽然轨迹图400描述了裁剪在终点470与停止点440之间捕获的图像的部分(换句话说,从路径430的末端裁剪所捕获的图像的一部分),但是在一些其它实现方式中,可以替代地从图像捕获路径的开始裁剪所捕获的图像的一部分。例如,在一些实现方式中,可以作出关于期望中心点是更接近起始捕获点还是停止捕获点的确定。当期望中心点更接近起始捕获点时,可以从图像捕获路径的末端裁剪所捕获的图像的一部分,如图4所示。替代地,当期望中心点更接近停止捕获点时,可以替代地从图像捕获路径的开始裁剪图像的一部分。
41.在一些实现方式中,可能要求期望中心点与起始捕获点或结束捕获点至少相距最小角距离。例如,如果用户指示太接近起始捕获点的期望中心点,则所得到的全景图像可能是不期望地小的。因此,在一些实现方式中,当期望中心点与起始捕获点或停止捕获点相距小于门限角距离时,可以忽略对期望中心点的用户指示。换句话说,当期望中心点太靠近起始捕获点或停止捕获点时,可以以传统方式生成全景图像,而不是自动地处理以便使所生成的全景图像以期望中心点为中心。
42.如上所讨论的,当期望中心点被选择为太接近停止捕获点时,所生成的全景图像
在fov中可能是不期望地小的。在一些实现方式中,当选择期望中心点时,可以向用户提供关于继续旋转相机、继续捕获图像的指示,使得所得到的全景图像至少具有门限fov。例如,如果门限fov是100度,则该指示可以向用户提醒:不要停止捕获图像,直到相机已经从期望中心点旋转50度为止。例如,可以将这样的指示提供为图像捕获设备的用户界面上(诸如图1的设备100的显示器上)的视觉指示。该指示还可以采用任何其它适当的形式,诸如音频指示。
43.根据示例实现方式,所接收的指定中心roi的指示可以采用多个形式中的任何一个形式。在一些实现方式中,所接收的指示可以是指定中心roi的用户输入,诸如在触摸敏感用户界面(诸如设备100的显示器114)上的触摸手势。在其它实现方式中,用户输入可以指示对菜单选项或用户界面按钮的选择、或者对图像捕获设备上的物理按钮或按键的按压。在一些实现方式中,用户输入可以是在相机面对期望中心roi时在触摸敏感用户界面上的任何位置的触摸手势。在一些实现方式中,用户输入可以是触觉手势、口头命令、从设备100的第二相机检测到的手势(诸如由设备100的前置相机检测到的手势)。在一些其它实现方式中,接收指示可以包括在生成全景图像期间基于所捕获的多个图像的一个或多个特性来自动地确定中心roi。一个或多个特性可以包括所捕获的多个图像中的一个或多个对象的深度,例如由设备100的一个或多个深度传感器确定的。在一些实现方式中,中心roi可以被确定为与多个图像中的至少门限大小的最近对象相对应的点。在其它实现方式中,中心roi可以被确定为与在所指定的深度范围中的最大对象相对应的点。在一些其它实现方式中,中心roi可以是基于一个或多个人脸检测操作来确定的。例如,如果在捕获用于生成全景图像的图像时检测到一个或多个人脸,则中心roi可以被确定在所检测到的人脸中的一者的位置处(诸如在一个或多个检测到的人脸中的最近人脸处、在两个检测到的人脸之间的中点处,等等)。
44.图5示出了根据一些实现方式的用于图像捕获设备的示例用户界面窗口500。例如,用户界面窗口500可以被显示在图1的设备100上。如上文关于图2-4所提到的,图像捕获设备的用户界面可以显示一个或多个图形元素,以辅助用户在捕获用于生成全景图像的多个图像时保持相机水平。例如,缩略图图像510可以被显示在用户界面窗口500上,以帮助用户在图像捕获期间将图像捕获设备的图像帧保持在恒定的水平。可以描绘额外的用户指导,诸如中心水平指导520,其可以指示图像帧的当前水平(例如,使用中心水平指导520的箭头)。中心水平指导520还可以包括对用户的推荐水平,即中心水平指导520的中心线521。因此,在捕获多个图像期间,用户可以调整图像帧的水平,以保持箭头与中心线521对齐。中心水平指导520还可以包括上限帧指示符522和下限帧指示符523,其表示用于用户在多个图像的捕获期间维持图像帧的顶部和底部的建议水平。用户界面窗口500还可以包括按钮530,按钮530可以被选择以发起对全景图像的生成,以指示用于全景图像的中心roi或者进行其它选择。
45.在一些实现方式中,用户界面窗口500可以包括模式标识540,其指示图像捕获设备处于被配置为生成经重新定中心的全景图像的模式。在一些实现方式中,在生成全景图像之前,可以将图像捕获设备置于用于生成经重新定中心的全景图像的模式下。例如,诸如按钮按压或者对菜单选项的选择的用户输入可以将图像捕获设备置于用于生成经重新定中心的全景图像的模式下。模式标识540可以指示图像捕获设备被配置的当前模式。在一些
实现方式中,模式标识540还可以显示模式选项541。模式选项541可以指示针对当前模式的一个或多个当前启用的配置选项。例如,模式选项541可以指示用于指定中心roi的当前启用的选项类型,诸如经由用户触摸手势、用户按钮按压、触觉手势、口头命令、或基于多个捕获的图像的一个或多个特性的自动指定,如上所讨论的。
46.图6是描绘根据一些实现方式的用于生成全景图像的示例操作600的说明性流程图。操作600可以由任何适当的图像捕获设备来执行,该图像捕获设备包括相机以及被配置为生成全景图像。在一些实现方式中,操作600可以由在图1中所示的设备100来执行。在框602处,设备100接收用于开始生成全景图像的用户命令。在框604处,设备100使用相机来捕获用于生成全景图像的多个图像。在框606处,设备100在多个图像的捕获期间接收指定中心感兴趣区域的指示。在框608处,设备100完成多个图像的捕获。在框610处,设备100基于多个图像来自动地生成全景图像,其中,全景图像是以所指定的中心roi为中心的。
47.在一些方面中,在框606中接收的指示可以是指定中心roi的用户输入,诸如在设备100的触摸敏感用户界面上的触摸手势,诸如在触摸敏感用户界面上显示的预览的中心roi处的触摸手势,或者其指示在相机指向中心roi时对触摸敏感用户界面上的菜单选项的选择。在一些方面中,在框606中接收指示可以包括基于多个图像的一个或多个特性(诸如多个图像中的一个或多个对象的估计深度)来自动地确定中心roi。
48.在一些方面中,全景图像可以是360度全景图像,以及在框610中自动地生成全景图像可以包括:确定与所指定的中心roi相对应的分割点;基于分割点来确定起始捕获点和结束捕获点;以及基于起始捕获点和结束捕获点来生成全景图像。
49.在一些方面中,全景图像可以是小于360度的全景图像,以及在框610中自动地生成全景图像可以包括:将所指定的中心roi与全景图像的最大视野进行比较;以及将所捕获的全景图像裁剪为以所指定的中心roi为中心。
50.在一些方面中,在框602中接收用户命令之前,设备100可以接收指示设备100要在被配置为生成经重新定中心的全景图像的模式下操作的用户输入。
51.图7示出了根据一些实现方式的支持捕获全景图像的示例设备700的框图。在一些实现方式中,设备700被配置为执行上文参考图6描述的操作600。设备700可以是上文参考图1描述的设备100的示例实现方式。例如,无线通信设备700可以是芯片、soc、芯片组、包括至少一个处理器(诸如处理器104)、至少一个存储器(诸如存储器106)以及包括至少一个相机(诸如相机102)的封装或设备。
52.设备700包括:用于接收用于开始生成全景图像的用户命令的模块702;用于使用至少一个相机来捕获用于生成全景图像的多个图像的模块704;用于在多个图像的捕获期间接收指定中心roi的指示的模块706;用于完成多个图像的捕获的模块708;以及用于基于多个图像来自动地生成全景图像的模块710,其中,全景图像是以所指定的中心roi为中心的。模块702、704、706、708和710中的一者或多者的部分可以至少部分地在硬件或固件中实现。例如,模块702和706可以至少部分地由显示器和输入/输出组件(诸如显示器114和输入/输出组件116)来实现。模块704和708可以至少部分地由相机(诸如相机102)来实现。在一些实现方式中,模块702、704、706、708和710中的至少一些模块可以至少部分地被实现为存储在存储器(诸如存储器106)中的软件。例如,模块702、704、706、708和710中的一者或多者的部分可以被实现为非暂时性指令或“代码”(诸如指令108,其可由处理器(诸如处理器
104)执行以执行相应模块的功能或操作)。
53.模块702被配置为接收用于开始生成全景图像的用户命令。模块704被配置为使用至少一个相机来捕获用于生成全景图像的多个图像。模块706被配置为在多个图像的捕获期间接收指定中心roi的指示。模块708被配置为完成多个图像的捕获。模块710被配置为基于多个图像来自动地生成全景图像,其中,全景图像是以所指定的中心roi为中心的。
54.本文所描述的技术可以在硬件、软件、固件或其任何组合中实现,除非具体描述为以特定方式实现。被描述为模块或组件的任何特征还可以在集成逻辑设备中一起实现,或者分别地作为离散但可互操作的逻辑设备来实现。如果在软件中实现,则技术可以至少部分地由非暂时性处理器可读存储介质(诸如图1的示例设备100中的存储器106)来实现,该存储介质包括指令108,指令108在被处理器104(或控制器110或isp 112)执行时使得设备100执行上述方法中的一种或多种方法。非暂时性处理器可读数据存储介质可以形成计算机程序产品的一部分,计算机程序产品可以包括封装材料。
55.非暂时性处理器可读存储介质可以包括诸如同步动态随机存取存储器(sdram)的随机存取存储器(ram)、只读存储器(rom)、非易失性随机存取存储器(nvram)、电可擦除可编程只读存储器(eeprom)、闪存、其它已知存储介质等。另外或替代地,可以至少部分地通过处理器可读通信介质来实现技术,处理器可读通信介质以指令或数据结构的形式携带或传送代码,以及可以由计算机或其它处理器访问、读取和/或执行。
56.结合本文公开的实施例描述的各种说明性的逻辑框、模块、电路和指令可以由一个或多个处理器(诸如图1的示例设备100中的处理器104或isp 112)来执行。这样的处理器可以包括但不限于一个或多个数字信号处理器(dsp)、通用微处理器、专用集成电路(asic)、专用指令集处理器(asip)、现场可编程门阵列(fpga)或其它等效集成或分立逻辑电路。如本文所使用的术语“处理器”可以指代前述结构中的任何结构或适于实现本文所描述的技术的任何其它结构。另外,在一些方面中,可以在如本文描述地配置的专用软件模块或硬件模块内提供本文描述的功能。此外,这些技术可以在一个或多个电路或逻辑元件中充分地实现。通用处理器可以是微处理器和/或任何常规的处理器、控制器、微控制器或状态机。处理器还可以被实现为计算设备的组合,例如,dsp和微处理器的组合、多个微处理器、一个或多个微处理器与dsp内核的结合、或者任何其它这样的配置。
57.虽然本公开内容示出了说明性方面,但是应当注意的是,在不脱离所附的权利要求的范围的情况下,可以在本文中作出各种改变和修改。例如,可以省略操作600中的一个或多个步骤,或者可以添加一个或多个额外的处理步骤。另外,除非另有明确说明,否则根据本文所描述的方面的方法权利要求的功能、步骤或动作不需要以任何特定次序来执行。例如,如果由设备100、控制器110、处理器104和/或isp 112来执行,则所描述的示例操作的步骤可以以任何次序以及以任何频率来执行。此外,尽管可以单数形式描述或要求保护元素,但是除非明确说明限于单数形式,否则可以预期复数形式。因此,本公开内容不限于所示的示例,以及用于执行本文描述的功能的任何单元被包括在本公开内容的各方面中。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1