用于捕获图像的方法和装置与流程

文档序号:13250569阅读:150来源:国知局
技术领域本公开大体上涉及电子设备,更具体地,涉及用于使用全景摄影功能捕获图像的电子设备和方法。

背景技术:
电子设备最近已经提供了越来越多的服务和功能。为了提高电子设备的利用率并且满足各种用户需求,已经开发了可以在电子设备中执行的各种应用。应用包括摄像机功能,并且用户可以使用摄像机功能来对用户进行自拍或捕获背景。应用还包括实现对非常宽视场图像的创建的全景摄影功能。全景摄影功能提供了宽视场,并且如果通过向上、向下、向左和向右移动摄像机来捕获图像,则可以通过用全景摄影功能的方式对包括部分图像的帧进行组合来重新配置整个图像。例如,如果用户使用摄像机功能捕获其自身或者用户周围的人,则需要在不会从照片的边缘截断人的图像中的任意一个的情况下捕获图像。如上所述,如果用户希望捕获自画像或者用户周围的人,则可能从照片中截断人的某些图像。如果用户希望将所有人完全包括在照片中,则用户应当将摄像机远离场景放置。因此,需要当拍照时检测对象并且基于检测到的对象使用全景摄影功能自动地拍照,从而提供用户便利。以上信息仅被呈现为背景信息以帮助理解本公开。不确定也不断言以上任何内容是否可用作有关本公开的现有技术。

技术实现要素:
根据本公开的各方面,提供了一种方法,包括:由电子设备产生多个帧;对所述多个帧进行组合以产生组合帧;以及由所述电子设备基于所述组合帧中描绘的至少一个对象来调整所述组合帧的尺寸。根据本公开的各方面,提供了一种电子设备,包括:摄像机单元;存储器;以及至少一个处理器,可操作地耦合到所述存储器,所述至少一个处理器被配置为:产生多个帧;对所述多个帧进行组合以产生组合帧;以及基于所述组合帧中描绘的至少一个对象来调整所述组合帧的尺寸。根据本公开的各方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个处理器可执行指令,当至少一个处理器执行一个或多个处理器可执行指令时,一个或多个处理器可执行指令使至少一个处理器执行包括以下步骤的方法:产生多个帧;对所述多个帧进行组合以产生组合帧;以及基于所述组合帧中描绘的至少一个对象的位置来调整所述组合帧的尺寸。本公开的另一方面提供了一种包括指令的计算机程序,所述指令布置为当执行时实现根据上述任一方面的方法和/或装置。另一方面提供了用于存储这种程序的机器可读存储器。附图说明通过结合附图做出的以下描述,本公开的特定示例性实施例的上述和其他方面、特征和优点将更清楚,在附图中:图1是根据本公开各种实施例的电子设备的示例的图;图2是根据本公开实施例的处理的示例的流程图;图3是示出了根据本公开各种实施例的图2的处理的各方面的图;图4是根据本公开各种实施例的处理的示例的流程图;图5是示出了根据本公开各种实施例的图4的处理的各方面的图;图6是根据本公开实施例的处理的示例的流程图;图7A是示出了根据本公开各种实施例的图6的处理的各方面的图;以及图7B是示出了根据本公开各种实施例的图6的处理的各方面的图。贯穿附图,相似的附图标记将被理解为是指相似的部件、组件和结构。具体实施方式将参考附图描述本公开的各种实施例。然而,本公开的范围并不旨在限制于特定实施例,并且应当理解的是,本公开涵盖落入本公开的范围和精神内的所有修改、等同物和/或备选形式。本公开中使用的术语“第一”或“第二”可以修饰各种组件的名称,但是不限制组件。这些措辞可以用于将一个组件与另一个组件区分开。例如,在不脱离本公开的范围的情况下,第一组件可被称为第二组件,反之亦然。术语“和/或”涵盖多个列举的项目的所有可能的组合或任意组合。提供本公开中使用的术语仅用于描述具体实施例,而并不旨在限制其他实施例的范围。应当理解的是,除非上下文另外清楚指示,否则单数形式包括复数的指代对象。在本公开中,术语“具有”、“可以具有”、“包括”或“可以包括”表示存在特定特征、数字、步骤、操作、组件或部件或者其组合,而不排除存在或添加一个或多个其他特征、数字、步骤、操作、组件或部件或者其组合。贯穿说明书和权利要求,词语“包括”和“包含”以及该词语的变型意味着“包括但不限于”,并且并不意在(并且不)排除其他组件、整数或步骤。贯穿说明书和权利要求,除非上下文另外需要,否则单数涵盖多数。具体地,在使用不定冠词的情况下,除非上下文另外需要,否则说明书应理解为预期多数以及单数。结合本公开的特定方面、实施例或示例描述的特征、整数、特性或组应理解为可应用于本文描述的任何其他方面、实施例或示例,除非与其不兼容。还应当认识到,贯穿说明书和权利要求,“用于Y的X”(其中,Y是某动作、行为或步骤,X是用于执行该动作、行为或步骤的某装置)的一般形式的语言涵盖特别适于或布置为但不排他地进行Y的装置X。除非另外定义,否则包括下面的描述和权利要求中使用的技术术语或科学术语的术语和词语可以具有与本领域技术人员通常理解的意义相同的意义。诸如词典中通常定义的术语等的术语可以被解释为具有与相关技术的上下文意义相同或相似的意义。除非另外定义,否则术语不应当被解释为理想的或过于形式的意义。以下将参考附图详细地描述本公开的优选实施例。在本文中将不会提供对公知功能或结构进行详细描述,以免使得本公开的主题不清楚。下面的描述中使用的术语是在考虑其在本公开中的功能的情况下定义的,并且可以根据用户或操作员或客户的意图而改变。因此,本公开不应当由所附权利要求及其等同物来限定。本公开中使用的术语将被定义如下。电子设备:电子设备是能够进行数据发送和接收、语音呼叫和视频呼叫的移动终端,并且可以具有至少一个摄像机。电子设备可以是以下至少一项:智能电话、平板个人计算机(PC)、三维(3D)电视(TV)、智能TV、发光二极管(LED)TV、液晶显示器(LCD)TV、平板PC、电子黑板等。此外,电子设备可以是能够与外围设备或远程终端进行通信的任何设备。电子设备可以同时从多个用户接收输入。图1是根据本公开各种实施例的电子设备的示例的图。参见图1,电子设备100可以包括摄像机单元110、控制器120、显示单元130、传感器单元140和存储单元150。摄像机单元110可以包括至少一个摄像机。根据本公开各种实施例,摄像机单元110可以包括以下至少一项:用于使至少一个摄像机拉近画面(zoomin)或拉远画面(zoomout)的镜头筒(未示出)、用于控制镜头筒的移动以进行画面拉近或画面拉远的电机(未示出)、以及用于提供光源以捕获图像的闪光灯(未示出)。摄像机单元110可以获取视频或图像。在控制器120的控制下,摄像机单元110可以以帧为单位获取视频或图像,并且获取的视频或图像可以显示在显示单元130上。用户可以使用摄像机单元110进行自拍(即,自拍照拍摄)或捕获对象。用户可以通过自拍照拍摄对用户和用户周围的其他人进行自拍。控制器120可以包括任何适合类型的处理电路,例如,一个或多个通用处理器(例如,基于ARM的处理器)、数字信号处理器(DSP)、可编程逻辑器件(PLD)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)等。例如,控制器120可以包括中央处理单元(CPU)、存储用于控制电子设备100的控制程序的只读存储器(ROM)、以及用于存储外部接收信号或数据或者用作电子设备100中执行的任务的存储器区域的随机存取存储器(RAM)。CPU可以包括单核、双核、三核或四核。此外,控制器120可以控制摄像机单元110、显示单元130、传感器单元140和存储单元150。控制器120可以在显示单元130上显示由摄像机单元110获取的图像或视频。在显示单元130上显示图像或视频的情况下,控制器120可以在各种输入单元接近目标时确定是否已经识别出悬停。此外,控制器120可以感测输入单元在电子设备100上方的高度,并且根据高度来感测悬停输入事件。悬停输入事件可以包括以下中的至少一项:按压输入单元中形成的按钮、轻击输入单元、比预定速度更快地移动输入单元、以及触摸目标。控制器120可以执行全景摄影功能以经由摄像机单元110捕获视频或图像,并且检测图像或视频中的至少一个对象。如果检测到的至少一个对象包括在一个帧中,则控制器120可以控制对至少一个对象的捕获。此外,控制器120可以与电子设备100的移动相对应地以帧为基础捕获至少一个对象,产生所捕获的至少一个对象的至少一个帧,将至少一个帧进行组合,并且基于组合帧中的对象来控制组合帧的大小。例如,如果用户希望对用户和用户周围的人进行自拍,则用户可以使用电子设备100中可用的全景摄影功能,并且移动电子设备100,使得可以对用户和用户周围的人进行拍照。在该情况下,控制器120可以使用执行的全景摄影功能,与电子设备100的移动相对应地检测至少一个对象。全景摄影功能可以是涉及捕获多个图像帧并且将捕获的图像帧组合为连续完整图像的功能。全景摄影功能可以用于捕获通常不适应单个图像的视场的广域图像。控制器120可以通过用于检测至少一个对象的算法来检测对象。根据对象的类型,该算法可以包括面部识别算法或目标识别算法。此外,与面部识别算法或目标识别算法一样,多种算法可以用于识别多种对象,因此可以通过这些各种算法来识别各种对象。控制器120可以确定作为执行全景摄影功能的结果捕获的多个图像帧中描绘的对象的数目。如果检测到的对象包括在一个帧中,则控制器120可以自动地捕获对象的图像。一旦执行了全景摄影功能,控制器120就可以以预定时间间隔捕获包括(例如,描绘)一个或多个对象的帧。控制器120可以在电子设备100的移动期间通过各种识别算法来确定对象的数目。控制器120可以检测与组合帧的边缘相邻的对象。例如,如果用户希望使用全景摄影功能捕获站在用户附近(例如,周围)的多个人的面部或全景,则用户可以向上和向下或者向左和向右移动电子设备100。当电子设备100以这种方式移动时,控制器120可以通过使用一个或多个识别算法来确定场景中存在的对象的数目。如果电子设备100沿与先前方向相反的方向移动,则控制器120可以在确定数目的对象包括在一个帧中(例如,所有对象处于摄像机单元110的视场中)的时刻自动地捕获图像。例如,如果用户希望在检测到用户的微笑或用户的镜头控制运动时对用户周围的多个人的面部或全景进行拍照,则控制器120可以自动地拍照。另一方面,如果确定数目的对象未包括在一个帧中,则控制器120可以组合在执行全景摄影功能时捕获的一个或多个图像帧以产生包括确定数目的对象的帧。帧的尺寸可以是固定的,并且控制器可以控制帧的尺寸使得确定数目的对象可以包括在单个帧中。例如,如果存在太多对象或用户的面部,则难以使对象或面部适应一个帧。在该情况下,控制器120可以将包括对象的多个帧组合为一个帧。为了将多个帧组合为单个帧,控制器120可以控制要组合的帧的上边、下边、左边和右边中的至少一个的尺寸。控制器120可以控制帧的上边、下边、左边和右边中的至少一个的尺寸,以将检测到的对象包括在一个帧中。控制器120可以通过在帧的上边、下边、左边和右边中的至少一个上添加填充来增加帧的尺寸。控制120可以控制帧的尺寸,使得检测到的对象可以包括在帧中。例如,如果对象或至少一个对象的一部分未包括在一个帧中,则控制器120可以增加帧的宽度或帧的上边、下边、左边和右边中的至少一个的尺寸。控制器120可以将帧的尺寸增加预定量。预定量可以是可变地控制的。控制器120可以将帧(每一个帧包括至少一个对象)组合为单个帧。如果确定数目的对象未包括在一个帧中,则控制器120可以通过对帧(每一个帧包括至少一个对象)进行组合来产生新的帧。如果所有检测到的对象未包括在一个帧中,则控制器120可以通过对包括对象的多个帧进行组合来产生新的帧。控制器120可以调整组合帧的尺寸。同样,控制器120可以基于以下中的至少一项截断组合帧:组合帧中对象的位置、允许组合帧具有的最大尺寸、以及组合帧中对象的尺寸。控制器120可以通过基于以下至少一项向组合帧添加填充来调整组合帧的尺寸:组合帧的尺寸、组合帧的容量(例如,允许组合帧具有的最大尺寸)、以及帧中检测到的对象的尺寸。每一个预定像素尺寸可以是可变地控制的。显示单元130可以接收通过用户身体(例如,诸如拇指等手指)或者可触摸输入单元(例如,触控笔或电子笔)的至少一个触摸输入。显示单元130可以显示从摄像机单元110获取的至少一个图像或视频。此外,显示器130可以识别通过诸如触控笔或电子笔等笔施加的输入。显示单元130可以基于磁场、光学信息或表面声波来确定笔与显示单元130之间的距离,并且可以使用通过触摸迁移的电荷来感测触摸位置。显示单元130可以感测能够产生静电的任何触摸和通过诸如手指或笔等输入单元施加的触摸。显示单元130可以接收一个或多个触摸中输入字符序列的一个触摸的连续移动。显示单元130可以向控制器120发送与输入字符序列的触摸的连续移动相对应的模拟信号。显示单元130可以被配置为例如电阻型、电容型、红外型或声波型。显示单元130可以包括多个传感器,所述多个传感器用于在手指或输入单元接触显示单元130的表面或者与显示单元130相距预定距离放置时,确定手指或输入单元的位置。每一个传感器可以以线圈结构配置,并且使用传感器形成的传感器层可以针对每一个传感器具有预定图案,并且形成多个电极线。在该结构中,当通过手指或输入单元在显示单元130上或上方产生触摸输入或悬停输入时,可以产生感测信号,该感测信号具有由传感器层与输入装置之间的电容引起的波形改变。然后,显示单元130可以向控制器120发送感测信号。传感器单元140可以包括用于检测电子设备100的状态的至少一个传感器。例如,传感器单元140可以包括用于检测用户是否在电子设备100附近的邻近传感器、用于检测电子设备100周围的光量的照度传感器(未示出)、用于检测电子设备100的运动(例如,电子设备100的旋转、应用于电子设备100的加速度或振动、电子设备100的上下移动、或者电子设备100的横向移动)的运动传感器(未示出)、用于检测重力方向的地磁传感器、以及用于通过测量大气压力来检测高度的高度计。至少一个传感器可以检测电子设备100的状态,产生与检测到的状态相对应的信号,并且向控制器120发送信号。可以根据电子设备100的性能,向传感器单元140添加传感器,或者从传感器单元140移除传感器。传感器单元140可以感测电子设备100移动的方向以及移动方向是否已经改变。例如,如果沿相反方向移动,则传感器单元140可以向控制器120发送指示电子设备100沿相反方向移动的信号。在接收到该信号时,控制器120可以确定检测到的对象是否包括在一个帧中。存储单元150可以包括任何适当类型的易失性存储器或非易失性存储器,例如,随机存取存储器(RAM)、只读存储器(ROM)、网络可访问存储设备(NAS)、云存储设备、固态驱动器(SSD)等。在操作中,在控制器120的控制下,存储单元150可以存储与摄像机单元110、显示单元130或传感器单元140的操作相对应地输入/输出的信号或数据。存储单元150可以存储用于控制控制器120的控制程序和应用。存储单元150可以存储用于识别经由摄像机单元110获取的图像或视频中包括的对象(例如,面部)的算法。存储单元150可以存储通过对摄像机单元110捕获的至少一个或两个帧进行组合而获得的帧。存储单元150可以包括非易失性存储器、易失性存储器、硬盘驱动器(HDD)或固态驱动器(SSD)。存储单元150可以存储提供图形用户界面(GUI)以显示经由摄像机单元110获取的视频或图像所需的图像、用户信息、文本、与用于处理触摸输入的方法相关的数据库或数据、操作电子设备100所需的背景图像(例如,菜单屏幕、待机屏幕等)或操作程序、以及摄像机单元110捕获的图像。存储单元150可以是机器可读介质(例如,计算机可读介质)。机器可读介质可以被定义为向机器提供数据使得机器可以执行特定功能的介质。机器可读介质可以是存储介质。存储单元150可以包括非易失性介质和易失性介质。所有这些介质应当具有向机器提供读取命令的物理设备可以检测的命令的类型。图2是根据本公开实施例的处理的示例的流程图。根据该处理,一旦在步骤210中执行了全景摄影功能,在步骤220中,电子设备100就可以检测作为执行全景摄影功能的结果由电子设备100捕获的图像(例如,帧)中的至少一个对象。电子设备100可以通过执行全景摄影功能来捕获图像或视频。如果在执行全景摄影功能的同时用户移动电子设备100,则电子设备100可以根据执行的全景摄影功能来捕获图像或视频。电子设备100可以确定是否正在移动以及移动的方向。此外,电子设备100可以感测移动方向是否改变或者电子设备是否沿相反方向移动。当电子设备100正沿一个方向移动时,可以激活全景摄影功能。电子设备100可以与移动相对应地以帧为基础检测至少一个对象。例如,如果用户正在将电子设备100从左向右移动以捕获用户和用户周围的其他人的图像,则电子设备100可以在从左向右移动期间使用全景摄影功能来检测对象。如果电子设备100停止其移动或者开始沿相反方向(即,从右向左)移动,则电子设备100可以去激活全景摄影功能。电子设备100可以检测要捕获(或预览)的图像或视频中的对象。对象可以包括握持电子设备100的用户、站在用户附近的至少一个人、和/或位于用户附近的至少一个目标。一旦执行了全景摄影功能,控制器120就可以以预定时间间隔捕获描绘了一个或多个对象的帧。控制器120可以通过在电子设备100移动期间使用各种识别算法来确定对象的数目。电子设备100可以通过对象识别算法来检测图像或视频中的对象。电子设备100可以确定与电子设备100的移动相对应地检测到的对象的数目。或者用户可以经由用户输入来指定对象的数目。如果电子设备100沿相反方向移动并且在一个帧中可以包括确定数目的对象,则电子设备100可以以检测到的对象(或所有对象)可以包括在帧中的方式自动地捕获图像。如果在步骤230中电子设备100沿相反方向移动并且检测到的对象包括在一个帧中,则在步骤240中电子设备100可以自动地捕获对象。电子设备100可以感测移动方向是否改变为相反方向。当感测到移动方向改变为相反方向时,电子设备100可以确定检测到的对象是否可以包括在一个帧中。如果电子设备100确定检测到的对象可以包括在一个帧中,则电子设备100可以在沿相反方向移动期间在检测到的对象包括在一个帧中的时刻自动地捕获图像。例如,如果用户希望在检测到用户的微笑或用户的镜头控制运动时对站在用户附近的多个人拍照或拍全身照,则控制器120可以自动地捕获图像。电子设备100可以产生与电子设备100的移动相对应地捕获到的至少一个对象的至少一个帧,将该至少一个帧与已经捕获的另一个帧进行组合,并且基于组合帧中的对象来控制组合帧的尺寸。在步骤250,电子设备100可以存储捕获的图像。捕获的图像是在步骤220中检测到的对象包括在一个帧中时自动捕获的图像。捕获的图像可以存储在存储单元150中。此外,电子设备100可以存储至少一个帧或组合帧。图3是示出了根据本公开实施例的图2的处理的各方面的图。参照图3,用户可以对用户和站在用户附近的人进行自拍。如果用户希望以这种方式捕获多个对象331、332和333的图像,则用户可以执行全景摄影功能并且移动电子设备100。对象可以包括以下至少一项:用户、站在用户附近的至少一个人、以及位于用户附近的至少一个目标。例如,如果电子设备100沿一个方向(从位置100a向位置100c)移动,则电子设备100可以以预定时间间隔产生帧310、320、330、340和350。第一帧310是在执行全景摄影功能之后可以不包括对象的初始帧。当在移动期间已经经过了预定时间段时,电子设备100可以产生包括第一对象331的第二帧320。电子设备100可以检测到第一对象331包括(例如,描绘)在第二帧320中。电子设备100可以确定第一对象331在第二帧320中的帧内坐标。当在移动期间产生了第二帧320之后的预定时间到期时,电子设备100可以产生第三帧330,第三帧330包括(例如,描绘)第一对象331、第二对象332和第三对象333。然后,电子设备100可以检测到第一对象331、第二对象332和第三对象333包括(例如,描绘)在第三帧330中。可以容易理解的是,可以在一个帧中捕获多个对象的事实可以意味着对象彼此相邻。然后,电子设备100可以确定第一对象331、第二对象332和第三对象333在第三帧330中的帧内坐标。当在移动期间产生了第三帧330之后的预定时间到期时,电子设备100可以产生第四帧340,第四帧340仅包括(例如,描绘)第三对象333。然后,电子设备100可以检测到第三对象333包括(例如,描绘)在第四帧340中。然后,电子设备100可以确定第三对象333在第四帧340中的帧内坐标。当在移动期间产生了第四帧340之后的预定时间到期时,电子设备100可以产生第五帧350。第五帧350可以是作为执行全景摄影功能的结果而捕获的最后一个帧,并且它可以不包括对象。电子设备100可以与移动(从位置100a向位置100c)相对应地以帧为基础检测对象。响应于移动停止或者沿改变的方向进行,电子设备100可以确定在移动期间捕获的帧中包括的不同对象的数目。然后,如果电子设备100正沿改变的方向(即,从位置100c向位置100a)移动,则电子设备100可以在所有对象331、332和333(或者其中预定数目的不同对象)包括在一个帧中的时刻自动地捕获图像。例如,电子设备100可以确定所有对象存在于第三帧330中,并且如果电子设备100定位于产生第三帧330的视角或者如果检测到与检测到的对象的数目一样多的对象,则电子设备100可以自动地捕获图像。同样,如果用户通过沿一个方向(例如,从位置100a向位置100c)移动电子设备100来产生包括所有对象的一个帧(例如,在位置100b),则在相反方向(例如,从位置100c向位置100a)上,电子设备100可以检测对象的所有面部何时存在于一个帧中并且作为响应捕获对象的图像。例如,如果电子设备100被定位于产生第三帧的视角,则在识别出对象331、332和333之一的面部的微笑时,电子设备100可以自动地捕获图像。图4是根据本公开各种实施例的处理的示例的流程图。参照图4,下面将详细描述根据本公开另一实施例的用于捕获图像的操作。一旦在步骤410执行了全景摄影功能来捕获图像,在步骤420,电子设备100就可以与电子设备100的移动相对应地以帧为基础检测至少一个对象。电子设备100可以执行全景摄影功能,并且作为执行全景摄影功能的结果,以帧为基础捕获图像或视频。如果用户移动电子设备100以通过执行全景摄影功能进行图像捕获,则电子设备100可以根据执行的全景摄影功能来捕获图像或视频。可以在电子设备100正沿一个方向移动时激活全景摄影功能,并且响应于检测到移动已经停止或改变其方向来去激活全景摄影功能。电子设备100可以与移动相对应地以帧为基础检测至少一个对象。例如,如果用户正从左向右移动电子设备100以捕获用户或位于用户附近的人,则电子设备100可以在从左向右移动期间使用全景摄影功能以帧为基础检测对象。如果电子设备100停止其移动或者将其移动方向改变为相反方向(即,从右向左),则可以去激活全景摄影功能。电子设备100可以帧为基础检测要捕获(或预览)的图像或视频中的对象。对象可以包括以下中的至少一项:握持电子设备100的用户、站在用户附近的至少一个人、以及位于用户附近的至少一个目标。一旦执行了全景摄影功能,控制器120就可以以预定时间间隔来捕获包括(例如,描绘)对象的图像帧。控制器120可以在电子设备100正在移动的同时通过使用各种识别算法来确定对象的数目。电子设备100可以通过对象识别算法以帧为基础检测图像或视频中包括(例如,描绘)的对象。电子设备100可以确定与电子设备100的移动相对应地检测到的对象的数目。或者可以由用户(例如,经由用户输入)来指定对象的数目。在检测到与用户设置的数目一样多的对象时,可以去激活全景摄影功能。如果电子设备100沿相反方向移动时,则电子设备100可以以检测到的对象(或所有对象)包括(例如,描绘)在相同的帧中的方式自动地捕获图像。如果在步骤430电子设备100沿相反方向移动,则在步骤440,电子设备100可以确定检测到的对象是否可以包括在一个帧中。如果移动停止或者改变到相反方向,则电子设备100可以识别包括在步骤420中检测到的所有对象的帧。此外,电子设备100可以临时存储包括至少一个对象的帧。如果电子设备100被定位在产生包括与沿相反方向的移动相对应的所有对象的帧的视角,则电子设备100可以自动地捕获图像。如果检测到的对象可以包括在一个帧中,则在步骤450,电子设备100可以自动地捕获图像。电子设备100可以感测是否沿相反方向移动。电子设备100可以确定步骤420中检测到的对象是否包括在一个帧中。在感测到沿相反方向移动时,电子设备100可以确定检测到的对象是否可以包括在一个帧中。如果电子设备100确定检测到的对象可以包括在一个帧中,则电子设备100可以在沿相反方向移动期间在所有检测到的对象包括(例如,描绘)在相同帧中时,自动地捕获图像。例如,如果用户希望对位于用户附近的多个人进行面部拍照或身体拍照,则在检测到用户的微笑或用户的镜头控制运动时,控制器120可以自动地捕获图像。在步骤460,电子设备100然后可以存储捕获的图像。电子设备100可以产生描绘与电子设备100的移动相对应地捕获到的至少一个对象的至少一个帧,将该至少一个帧与另一个帧进行组合,并且基于组合帧的对象来调整组合帧的尺寸。另一方面,如果检测到的对象没有包括在一个帧中,则在步骤460,电子设备100可以产生包括(例如,描绘)所有对象的新的帧。帧的尺寸可以是固定的。如果步骤420中检测到的对象未包括在一个具有固定尺寸的帧中(例如,存在太多要包括在一个帧中的对象),则电子设备100可以产生包括步骤420中检测到的对象的新的帧。可以通过对多个帧(每一个帧包括(例如,描绘)不同的对象)进行组合来产生新的帧。新的帧可以大于被组合的帧。电子设备100可以改变帧的尺寸,使得所有检测到的对象可以包括在帧中。电子设备100可以在对象之一位于边缘(例如,帧的上边缘、下边缘、左边缘和右边缘)附近时通过在帧的一个边缘插入填充来调整(或截断)帧的尺寸。在步骤470,电子设备100可以与帧的产生相对应地自动捕获图像。如果沿改变的方向移动电子设备100或者电子设备100停止移动,则电子设备100可以在检测到所有对象时自动地捕获图像。如果在产生新的帧之后电子设备100的摄像机单元110的视角位于检测到的对象的中心处,则电子设备100可以自动地捕获图像。同样,电子设备100可以识别对象的面部并且捕获对象的图像。例如,当检测到的面部处于摄像机单元110的视场内并且电子设备100感测到任意面部的微笑时,电子设备100可以自动地捕获图像。在步骤480,电子设备100可以存储捕获的图像。此外,电子设备100可以存储产生的帧。图5是示出了根据本公开各种实施例的图4的处理的各方面的图。参照图5,用户可以对用户和位于用户附近的人进行自拍。如果用户希望以这种方式捕获多个对象531、541和551的图像,则用户可以执行全景摄影功能,并且移动电子设备100以作为执行全景摄影功能的结果捕获图像。对象可以包括以下至少一项:用户、站在用户附近的至少一个人、以及至少一个目标。例如,如果电子设备100正(从位置100d向位置100f)移动,则电子设备100可以以预定时间间隔产生帧510、520、530、540、550、560、570。第一帧510是在执行全景摄影功能之后可以不包括对象的初始帧。当在移动期间已经经过了预定时间段时,电子设备100可以产生包括(例如,描绘)第一对象531的一部分的第二帧520。然后,电子设备100可以检测到第一对象531的所述部分包括(例如,描绘)在第二帧520中。电子设备100可以确定第一对象531的所述部分在第二帧520中的帧内坐标。当在移动期间产生了第二帧520之后的预定时间到期时,电子设备100可以产生第三帧530,第三帧530包括(例如,描绘)整个第一对象531。然后,电子设备100可以检测到第一对象531包括(例如,描绘)在第三帧530中。当在移动期间产生了第三帧530之后的预定时间到期时,电子设备100可以产生第四帧540,第四帧540包括(例如,描绘)第二对象541。然后,电子设备100可以检测到第二对象541包括(例如,描绘)在第四帧540中。然后,电子设备100可以确定第二对象541在第四帧540中的帧内坐标。当在移动期间产生了第四帧540之后的预定时间到期时,电子设备100可以产生第五帧550。然后,电子设备100可以检测到第三对象551的一部分包括(例如,描绘)在第五帧550中。然后,电子设备100可以确定第三目标551的所述部分在第五帧550中的帧内坐标。当在移动期间产生了第五帧550之后的预定时间到期时,电子设备100可以产生第六帧560。然后,电子设备100可以检测到第三对象551的一部分包括(例如,描绘)在第六帧560中。然后,电子设备100可以确定第三对象551的所述部分在第六帧560中的帧内坐标。当要捕获的多个对象不能如上所述的包括在一个帧中时,这可以意味着对象彼此远离。第七帧570可以是作为执行全景摄影功能的结果而捕获的最后一个帧,并且它可以不包括对象。电子设备100可以与移动(从位置100d向位置100f)相对应地以帧为基础检测对象。如果移动停止或者沿改变的方向进行,则电子设备100可以确定检测到的对象的数目。然后,当电子设备100正沿改变的方向(即,从位置100f向位置100d)移动时,电子设备100可以在所有对象531、541和551适应相同帧时自动地捕获图像。相比之下,如果对象531、541和551不能包括在一个帧中,则电子设备100可以通过对帧(每一个帧包括对象之一的至少一部分)进行组合来产生新的帧。例如,第二帧至第六帧中的每一个包括对象的至少一部分,并且电子设备100可以通过对第二帧至第六帧进行组合(例如,缝合在一起)来产生包括所有对象531、541和551的帧。电子设备100可以检测到第二帧520至第六帧560中的每一个包括对象的至少一部分,并且通过对第二帧520至第六帧560进行组合来产生帧。如果电子设备100正沿改变的方向(即,从位置100f向位置100d)移动并且第二对象541被定位于摄像机单元110的视场的中心(或另一预定位置),则电子设备100可以自动地捕获图像。此外,如果用户通过沿一个方向(例如,从位置100d向位置100f)移动电子设备100然后沿相反方向(例如,从位置100f向位置100d)移动电子设备100来控制摄像机单元110的视场使得第二对象541可以定位在中心(例如,当电子设备100位于位置100e时),电子设备100可以识别至少一个对象的面部并且捕获至少一个对象的图像。例如,如果电子设备100被定位于产生第四帧的视角,则在识别出对象531、541和551之一的面部微笑时,电子设备100可以自动地捕获图像。图6是根据本公开实施例的处理的示例的流程图。参照图6,下面将详细描述根据本公开的实施例用于控制使用全景摄影功能捕获的图像的操作。在步骤610,电子设备100可以产生与电子设备100的移动相对应地捕获到的对象的至少一个帧。一旦执行了全景摄影功能以捕获图像,控制器120就可以与电子设备100的移动相对应地检测至少一个对象。控制器120可以确定电子设备是否正在移动、其移动方向、以及它是否正沿改变的方向或相反的方向移动。控制器120可以产生与电子设备的移动相对应地捕获到的对象的至少一个帧。每一个帧可以包括至少一个对象或者不包括对象。控制器120可以与移动相对应地以帧为基础检测至少一个对象。控制器120可以通过使用对象识别算法检测到对象包括(例如,描绘)在图像或视频中。控制器120可以确定与移动相对应地检测到的对象的数目。如果电子设备100正沿相反方向移动并且确定数目的对象包括在一个帧中,则控制器120可以自动地捕获包括(例如,描绘)所有检测到的对象(或所有对象)的图像。另一方面,如果检测到的对象不能包括在一个帧中,则电子设备100可以将帧组合(例如,缝合在一起)为包括检测到的对象的一个帧。对象可以包括以下中的至少一项:握持电子设备100的用户、位于用户附近的至少一个人、以及至少一个目标(例如,项目、背景动物等)。在步骤620,电子设备100将产生的帧组合为包括(例如,描绘)所有检测到的对象的一个帧。控制器120可以将帧(每一个帧包括对象)组合为一个帧。为了将多个帧组合为一个帧,控制器120可以改变要组合的帧的相应高度和宽度。此外,控制器120可以将多个帧组合为一个帧并且控制组合帧的高度和宽度。控制器120可以检测与组合帧的外围(例如,上边缘、下边缘、左边缘和右边缘)相邻的对象。控制器120可以确定组合帧的边缘中的哪一个边缘与对象最接近。控制器120可以确定最近的边缘与对象之间的距离(例如,像素间隔)。此外,控制器120可以向组合帧的边缘添加预定填充量,使得对象不会出现在帧的恰好边缘处。如果在步骤630需要调整组合帧的尺寸,则在步骤640,电子设备100可以基于组合帧中包括的对象来调整组合帧的尺寸。控制器120可以基于对象在组合帧中的位置来调整组合帧的尺寸。更具体地,控制器120可以基于组合帧中包括的对象来控制组合帧的尺寸,使得可以包括预定区域。控制器120可以向与对象最接近的边缘添加填充。控制器120可以通过以下至少一种方式来调整(截断)组合帧的尺寸:基于对象的位置确定组合帧的尺寸以包括预定的第一像素尺寸、根据组合帧的容量来确定组合帧的尺寸以包括预定的第二像素尺寸、以及基于帧中检测到的对象的尺寸来确定组合帧的尺寸以包括预定的第三像素尺寸。换言之,在一些实现中,可以基于组合帧的尺寸来确定填充量,其中组合帧的尺寸基于以下中的至少一项:对象的位置、组合帧的容量和帧中检测到的对象的尺寸。例如,在一些实现中,控制器120可以确定与组合帧的上边缘、下边缘、左边缘和右边缘之一最近的对象,并且测量对象与边缘之间的距离。同样,控制器120可以通过向边缘添加第一填充量(例如,预定数目的像素行或列)来调整组合帧的尺寸。控制器120可以通过根据组合帧的容量添加第二填充量(与第一填充量不同)来调整组合帧的尺寸。例如,如果组合帧的容量(例如,允许帧具有的最大尺寸)是3M字节,则可以添加预定填充量(例如,10个像素列或行)作为边沿。如果组合帧的容量是5M字节,则可以添加预定填充量(例如,20个像素列或行)作为边沿。如果组合帧的容量是10M字节,则可以添加预定填充量(例如,30个像素列或行)作为边沿。因此,可以调整组合帧的上边、下边、左边和右边之一的尺寸。控制器120可以通过根据组合帧中包括的对象的尺寸添加预定的不同距离(例如,像素)来调整组合帧的尺寸。例如,可以通过针对尺寸(例如,宽度)为100个像素的对象添加预定填充量(例如,30个像素列或行)作为边沿并且针对尺寸(例如,宽度)为200个像素的对象添加预定填充量(例如,60个像素列或行)作为边沿来调整组合帧的尺寸。图7A至图7B是示出了根据本公开各种实施例的图6的处理的各方面的图。参照图7A和图7B,假定用户712对用户712和用户712周围的其他人711和713进行自拍,则帧710的X轴尺寸(例如,宽度)可以等于坐标X1与X2之间的距离,并且可以取决于被组合以产生帧710的帧的数目。帧710可以具有预定的Y轴尺寸(例如,高度)。帧710可以是通过对帧(每一个帧包括与电子设备100的移动相对应地检测到的对象的至少一部分)进行组合而获得的帧。在该情况下,虽然第二对象712包括(例如,描绘)在帧710中,但是帧710的第一坐标X1(例如,与帧的左边缘相对应的坐标)可以与第一对象711的左边的坐标相匹配,并且帧710的第二坐标X2(例如,与帧的右边缘相对应的坐标)可以与第三对象713的右边的坐标相匹配。如上所述,第一对象711的左边和第三对象713的右边可以与帧710的外围(例如,边缘)相重合或相邻。同样,第一对象711和第三对象713可以定位于帧710的最外边。在该情况下,电子设备100可以通过在第一对象711的左边和第三对象713的右边中的每一个添加预定填充量m来调整帧的尺寸,使得对象711、712和713适当地出现在帧的中心(例如,位于帧的中间三分之二中),如图7B所示。可以用像素(例如,像素行或列)或mm来表达填充量m。电子设备100可以产生通过X轴坐标和另一X轴坐标定义的帧720,其中,X轴坐标是预定填充量m与第一目标711的左边的第一坐标X1之和,并且另一X轴坐标是预定填充量m与第三目标713的右边的第二坐标X2之和。如上所述,预定填充量m可以改变。虽然已经在上文中描述了在本公开的前述实施例中改变帧的宽度,但是应当理解的是,可以根据本公开的各种实施例来改变帧的高度以及(或替代)帧的宽度。虽然在图7A至图7B的示例中,基于对象在图7A和图7B中的帧中的位置来调整帧的尺寸,但是应当注意的是,在一些实现中,可以基于其他标准来调整帧的尺寸。例如,可以基于以下中的至少一项来调整组合帧的尺寸:检测到的对象的位置、组合帧的容量(例如,允许组合帧具有的最大尺寸)、以及帧中检测到的对象的尺寸。根据本公开的前述描述可以清楚的是,本公开可以通过提供用于捕获图像的电子设备和方法来捕获或产生图像,而不会截断对象的图像。此外,本公开可以通过检测通过全景摄影功能获取的帧中的对象的至少一部分来自动地捕获图像并且自动地调整捕获的图像的尺寸。尽管结合电子设备的自拍模式描述的特定实施例(其中,至少一个对象是用户自己),但是本公开不限于此。备选实施例可以包括摄像机点远离用户但其他方面如结合上述实施例所述的电子设备使用。图1至图7B仅被提供作为示例。关于这些图所讨论的操作中的至少一些可以同时执行,以不同顺序执行,和/或一起被省略。将理解的是,提供本文所述的示例以及叙述为“例如”、“如”、“包括”、“在一些方面”、“在一些实现中”等的短语不应当被解释为将要求保护的主题限制于具体示例。本公开的上述方面可以以硬件、固件或经由可以在记录介质(例如,CDROM、数字多功能盘(DVD)、磁带、RAM、软盘、硬盘或磁光盘)中存储的软件或计算机代码、通过网络下载的远程记录介质或非暂时性机器可读介质上原始存储的或要在本地记录介质上存储的计算机代码的执行来实现,使得可以使用通用计算机或特殊处理器经由记录介质上存储的这种软件或者以可编程或专用硬件(例如,ASIC或FPGA)来呈现本文描述的方法。本领域技术人员应理解,计算机、处理器、微处理器控制器或可编程硬件包括存储组件,例如RAM、ROM、闪存等,其可以存储或接收软件或计算机代码,这些软件或计算机代码在被计算机、处理器或硬件访问和执行时实现本文所述的处理方法。此外,应该认识到,当通用计算机访问用于实现本文所示的处理的代码时,所述代码的执行将通用计算机转换为用于执行本文所示的处理的专用计算机。在附图中提供的任何功能和步骤可以用硬件、软件或这两者的组合来实现,并可以在计算机的编程指令中被完全或部分地执行。相应地,应认识到本公开的实施例可以以硬件、软件、或硬件和软件的组合的形式来实现。任何这种软件可以以易失性或非易失性尺寸器的形式存储。应认识到存储设备和存储介质是适合于存储一个或多个程序的机器可读存储器的实施例,一个或多个程序包括当执行时实现本公开实施例的指令。相应地,实施例提供包括用于实现权利要求中的任一个要求保护的装置或方法的代码的程序以及存储这种程序的机器可读存储器。另外,这样的程序可以经由任何介质(例如通过有线或无线连接承载的通信信号)电传递,并且实施例适当地涵盖该程序。此外,本说明书中公开的实施例对技术内容的描述和理解进行启示,但并不限制本公开的范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1