[go: up one dir, main page]

CN107509034B - 一种拍摄方法及移动终端 - Google Patents

一种拍摄方法及移动终端 Download PDF

Info

Publication number
CN107509034B
CN107509034B CN201710865596.5A CN201710865596A CN107509034B CN 107509034 B CN107509034 B CN 107509034B CN 201710865596 A CN201710865596 A CN 201710865596A CN 107509034 B CN107509034 B CN 107509034B
Authority
CN
China
Prior art keywords
target
picture frame
mobile terminal
image
image frame
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.)
Active
Application number
CN201710865596.5A
Other languages
English (en)
Other versions
CN107509034A (zh
Inventor
吴再稳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vivo Mobile Communication Co Ltd
Original Assignee
Vivo Mobile Communication Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Vivo Mobile Communication Co Ltd filed Critical Vivo Mobile Communication Co Ltd
Priority to CN201710865596.5A priority Critical patent/CN107509034B/zh
Publication of CN107509034A publication Critical patent/CN107509034A/zh
Application granted granted Critical
Publication of CN107509034B publication Critical patent/CN107509034B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Studio Devices (AREA)

Abstract

本发明提供一种拍摄方法及移动终端,该方法包括:在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值;根据抖动幅度值,确定目标缓存图像帧;从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。这样,移动终端接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。

Description

一种拍摄方法及移动终端
技术领域
本发明涉及通信技术领域,尤其涉及一种拍摄方法及移动终端。
背景技术
目前,移动终端所具备的功能越来越多样化。例如,音频功能、拍照功能、摄像功能和存储功能等都已经成为移动终端的必备功能。
对于拍照功能,现有技术中,都是缓存很多缓存(buffer)数据。当接收到拍照命令时,就从缓存数据中取一帧数据推送给用户。如果用户在按下拍照按键时,用力较大,就会导致移动终端有较大幅度的晃动,这样拍摄出来的照片就会比较模糊。因此,现有技术中,如果拍摄过程中用户的手发生抖动,所拍摄的图像会模糊。
发明内容
本发明实施例提供一种拍摄方法及移动终端,以解决拍摄过程中由于用户手的抖动带来的拍摄图像模糊的问题。
为了解决上述技术问题,本发明是这样实现的:一种拍摄方法,包括:
在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;
若检测到移动终端发生抖动,则获取抖动幅度值;
根据所述抖动幅度值,确定目标缓存图像帧;
从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
第一方面,本发明实施例提供了一种拍摄方法,包括:
在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;
若检测到移动终端发生抖动,则获取抖动幅度值;
根据所述抖动幅度值,确定目标缓存图像帧;
从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
第二方面,本发明实施例还提供一种移动终端,包括:
检测模块,用于在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;
第一获取模块,用于若检测到移动终端发生抖动,则获取抖动幅度值;
确定模块,用于根据所述抖动幅度值,确定目标缓存图像帧;
选取模块,用于从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
第三方面,本发明实施例还提供一种移动终端,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述拍摄方法的步骤。
第四方面,本发明实施例还提供一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述拍摄方法的步骤。
这样,本发明实施例中,在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值;根据所述抖动幅度值,确定目标缓存图像帧;从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。这样,移动终端接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的移动终端的拍摄方法的流程图之一;
图2是本发明实施例提供的现有技术中的拍照取帧示意图;
图3是本发明实施例提供的在移动终端上建立三维直角坐标系的示意图;
图4是本发明实施例提供的一种确定目标拍摄图像的方式的示意图;
图5是本发明实施例提供的拍摄方法的流程图之二;
图6是本发明实施例提供的一种缓存图像帧队列与重力传感器输出的数据组成的缓存队列的示意图;
图7是本发明实施例提供的拍摄方法的流程图之三;
图8是本发明实施例提供的另一种缓存图像帧队列与重力传感器输出的数据组成的缓存队列的示意图;
图9是本发明实施例提供的移动终端的结构图之一;
图10是本发明实施例提供的移动终端的结构图之二;
图11是本发明实施例提供的移动终端的结构图之三;
图12是本发明实施例提供的移动终端的结构图之四;
图13是本发明实施例提供的移动终端的结构图之五;
图14是本发明实施例提供的移动终端的结构图之六;
图15是本发明实施例提供的移动终端的结构图之七;
图16是本发明实施例提供的移动终端的结构图之八。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,图1是本发明实施例提供的拍摄方法的流程图,如图1所示,包括以下步骤:
步骤101、在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动。
在步骤101中,现有技术中,都是缓存很多buffer数据。当接收到拍照命令时,就从缓存数据中取一帧数据推送给用户。如图2所示,为现有技术中的拍照取帧示意图。
在图2中,buffer队列共包含n个图像帧,接收到拍照命令时,一般取buffer队列中的倒数第三个图像帧,即取第(n-2)个图像帧推送给用户。如果用户在按下拍照按键时,用力较大,就会导致移动终端有较大幅度的晃动,这样推送给用户的第(n-2)个图像帧就会比较模糊。
本发明实施例中,可以先获取至少两张缓存图像帧,即可以先获取缓存图像帧队列。缓存图像帧队列中可以包含8个图像帧,且缓存图像帧队列中包含的8个图像帧是可以实时更新的。例如,开启移动终端的相机功能之后,在预览状态下,移动终端可以按照预定时间间隔,获取多张图像帧,预定时间间隔可以为33毫秒,即移动终端可以每33毫秒获取一个图像帧。获取到的图像帧可以是传感器原始数据经过移动终端芯片中的图像处理器(Image Signal Processor,ISP)的多道工序处理,包括去坏点、伽马校正、颜色校正、颜色增强和去噪等等算法处理,得到的图像帧。
需要说明的是,每获取到一个图像帧,移动终端都可以获取到该图像帧的时间戳,以及该图像帧对应的移动终端的抖动幅度值。还可以设置两个阈值,分别为第一阈值a和第二阈值b,且第一阈值a小于第二阈值b。当移动终端的抖动幅度值小于或者等于第一阈值a时,可以认为移动终端没有发生抖动;当移动终端的抖动幅度值大于第一阈值a且小于或者等于第二阈值b时,可以认为移动终端发生轻微抖动;当移动终端的抖动幅度值大于第二阈值b时,可以认为移动终端发生严重抖动。
缓存图像帧队列可以包括两种情形,这里先解释第一种情形。
从开启移动终端的相机功能开始计时,每获取到一个图像帧,就可以将该图像帧加入缓存图像帧队列。当缓存图像帧队列中填满8个图像帧之后,当获取到第9个图像帧时,可以将第9个图像帧加入缓存图像帧队列,同时将缓存图像帧队列中的第1个图像帧丢弃;当获取到第10个图像帧时,可以将第10个图像帧加入缓存图像帧队列,同时将缓存图像帧队列中的第2个图像帧丢弃。如此循环下去,可以保证缓存图像帧队列中一直包含8个图像帧,且包含的8个图像帧是实时更新的。且对于第一种情形,缓存图像帧队列中相邻两个图像帧的时间戳之间的间隔都可以为33毫秒。
对于第二种情形,移动终端每获取到一个图像帧,都可以将该图像帧对应的移动终端的抖动幅度值与预设第二阈值b进行比较,并且将对应的移动终端的抖动幅度值小于或者等于预设第二阈值b的图像帧加入缓存图像帧队列,即可以将没有发生抖动的图像帧以及发生轻微抖动的图像帧加入缓存图像帧队列;而对应的移动终端的抖动幅度值大于预设第二阈值b的图像帧则不加入缓存图像帧队列,即严重抖动的图像帧不会加入缓存图像帧队列。即缓存图像帧队列中包含的都是对应的移动终端的抖动幅度值小于或者等于预设第二阈值b的图像帧,也即缓存图像帧队列中包含的都是没有发生抖动的图像帧以及发生轻微抖动的图像帧。第二种情形中,缓存图像帧队列中同样可以一直包含8个图像帧,且包含的8个图像帧是实时更新的。这样,缓存图像帧队列中一直只包含8个图像帧,而不是预览状态下所获取到的所有图像帧,大大减少了所占用的移动终端的内存。
在缓存摄像头采集的预览图像的过程中,如果用户点击拍照按键,移动终端就可以接收到拍照指令。进而可以检测移动终端是否发生抖动。
需要说明的是,开启移动终端的相机功能之后,在预览状态下,移动终端的重力传感器会按照预定时间间隔输出数据,且可以为每一个数据都打上时间戳。可以建立三维直角坐标系,如图3所示,为在移动终端上建立三维直角坐标系的示意图。
重力传感器输出的数据可以为(x,y,z)。其中,x为移动终端在x轴方向上的加速度值;y为移动终端在y轴方向上的加速度值;z为移动终端在z轴方向上的加速度值。对于重力传感器,预定时间间隔可以为20毫秒,即重力传感器可以每20毫秒输出一个数据。重力传感器输出的数据也可以组成一个缓存队列,该缓存队列中可以包含13个数据,且缓存队列中的13个数据是可以实时更新的。该缓存队列中相邻两个数据的时间戳之间的间隔都可以为20毫秒。
接收到拍照指令之后,可以获取接收到拍照指令的接收时间。进而可以基于上述接收时间,确定第一时间戳和第二时间戳,其中,接收时间介于第一时间戳和第二时间戳之间。接下来,移动终端可以获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据。假设重力传感器在第一时间戳采集的第一数据为(x1,y1,z1);重力传感器在第二时间戳采集的第二数据为(x2,y2,z2)。则可以计算出第一数据和第二数据之间的矢量长度值:
其中,A为第一数据和第二数据之间的矢量长度值;x1为第一时间戳这个时刻移动终端在x轴方向上的加速度值;y1为第一时间戳这个时刻移动终端在y轴方向上的加速度值;z1为第一时间戳这个时刻移动终端在z轴方向上的加速度值;x2为第二时间戳这个时刻移动终端在x轴方向上的加速度值;y2为第二时间戳这个时刻移动终端在y轴方向上的加速度值;z2为第二时间戳这个时刻移动终端在z轴方向上的加速度值。
计算出第一数据和第二数据之间的矢量长度值之后,可以判断上述矢量长度值是否大于第一阈值a。如果移动终端判断出上述矢量长度值大于第一阈值a,则可以确定接收到拍照指令的时刻,移动终端发生了抖动。
步骤102、若检测到移动终端发生抖动,则获取抖动幅度值。
在步骤102中,在接收到拍照指令的时刻,如果检测到移动终端发生了抖动,则可以获取抖动幅度值。且可以将上述矢量长度值作为移动终端的抖动幅度值。
步骤103、根据所述抖动幅度值,确定目标缓存图像帧。
在步骤103中,移动终端可以根据接收到拍照指令时的抖动幅度值,确定目标缓存图像帧。
确定目标缓存图像帧的方式可以有两种,这里先来介绍第一种方式。针对第一种情形的缓存图像帧队列,如果上述矢量长度值小于或者等于第一阈值a,即如果接收到拍照指令时,移动终端的抖动幅度值小于或者等于第一阈值a,则可以确定缓存图像帧队列中时间戳与接收时间之间的间隔最小的第一目标图像帧。然后,可以将缓存图像帧队列中时间戳小于或者等于第一目标图像帧的时间戳的图像帧确定为目标缓存图像帧。
如果上述矢量长度值大于第一阈值a,则可以确定缓存图像帧队列中时间戳与接收时间之间的间隔最小的第二目标图像帧。然后,可以从第二目标图像帧开始,即可以从缓存图像帧队列中倒数第一个图像帧开始,也即可以从缓存图像帧队列中第8个图像帧开始,按照时间戳减小的顺序,将缓存图像帧队列中的图像帧对应的抖动幅度值依次与第一阈值a进行比较。接下来,可以确定比较得到的第一个抖动幅度值小于或者等于第一阈值a的第三目标图像帧。
例如,可以将第8个图像帧对应的移动终端的抖动幅度值与第一阈值a进行比较。如果第8个图像帧对应的移动终端的抖动幅度值大于第一阈值a,则可以将第7个图像帧对应的移动终端的抖动幅度值与第一阈值a进行比较。如果第7个图像帧对应的移动终端的抖动幅度值大于第一阈值a,则可以将第6个图像帧对应的移动终端的抖动幅度值与第一阈值a进行比较。以此类推,直到找到第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧为止。最后,可以将缓存图像帧队列中时间戳小于或者等于第三目标图像帧的时间戳的图像帧确定为目标缓存图像帧。
需要说明的是,对于按照时间戳减小的顺序找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧,可以认为缓存图像帧队列中,时间戳小于或者等于第三目标图像帧的时间戳的所有图像帧对应的移动终端的抖动幅度值均小于或者等于第一阈值a。即可以认为所确定的目标缓存图像帧均为对应的移动终端的抖动幅度值小于或者等于第一阈值a的图像帧,也即可以认为所确定的目标缓存图像帧均为没有发生抖动的图像帧。
且如果用户点击拍照按键时,用力较小,则移动终端的抖动幅度值可能介于第一阈值a和第二阈值b之间,即此时移动终端可能发生轻微抖动。则按照时间戳减小的顺序找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧的时间戳会比较靠近接收到拍照指令的接收时间,例如,可能为第5个图像帧;如果用户点击拍照按键时,用力较大,则移动终端的抖动幅度值可能大于第二阈值b,即此时移动终端可能发生严重抖动。则按照时间戳减小的顺序找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧的时间戳与接收到拍照指令的接收时间之间的间隔就会比较长。例如,可能为第2个图像帧。
假设按照时间戳减小的顺序,最终找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧为第5个图像帧,即倒数第4个图像帧。则可以从倒数第4个图像帧开始,按照时间戳减小的顺序,寻找图像参数指示对焦完成的图像帧,且可以将找到的第一个图像参数指示对焦完成的图像帧作为目标拍摄图像。如图4所示,为一种确定目标拍摄图像的方式的示意图。
这里再来介绍第二种确定目标缓存图像帧的方式。针对第二种情形的缓存图像帧队列,即对于所包含的图像帧均为对应的移动终端的抖动幅度值小于或者等于第二阈值b的图像帧的缓存图像帧队列,移动终端可以确定缓存图像帧队列中时间戳与接收时间之间的间隔最小的第四目标图像帧。进而可以将缓存图像帧队列中时间戳小于或者等于第四目标图像帧的时间戳的图像帧确定为目标缓存图像帧。
需要说明的是,如果第四目标图像帧的时间戳与接收时间之间的目标时间间隔小于或者等于预设时间间隔,则移动终端可以从缓存图像帧队列中的第四目标图像帧开始,即可以从缓存图像帧队列中倒数第一个图像帧开始,也即可以从缓存图像帧队列中第8个图像帧开始,按照时间戳减小的顺序,寻找图像参数指示对焦完成的图像帧,且可以将找到的第一个图像参数指示对焦完成的图像帧作为目标拍摄图像。
如果第四目标图像帧的时间戳与接收时间之间的目标时间间隔大于预设时间间隔,则可以不输出照片,且可以输出提示信息。该提示信息用于提示用户当前移动终端的抖动幅度值较大,要保持移动终端握持平稳。
步骤104、从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
在步骤104中,确定了目标缓存图像帧之后,就可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。例如,可以从目标缓存图像帧中选取图像参数指示对焦完成的图像帧作为目标拍摄图像。
这样,可以解决用户在室外进行拍照,且室外的风较大时,移动终端握持不稳导致拍摄照片模糊的问题;可以解决用户按下音量键或者拍照按键时,手抖动造成移动终端晃动,进而导致拍摄照片模糊的问题;还可以解决在拍照时,用户由于身体不适造成手抖动,最终导致拍摄照片模糊的问题等等。保证了所拍摄照片的清晰度。
本发明实施例中,上述移动终端可以是手机、平板电脑(Tablet PersonalComputer)、膝上型电脑(Laptop Computer)、个人数字助理(personal digitalassistant,简称PDA)、移动上网装置(Mobile Internet Device,MID)或可穿戴式设备(Wearable Device)等。
本发明实施例的拍摄方法,在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值;根据所述抖动幅度值,确定目标缓存图像帧;从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。这样,移动终端接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
参见图5,图5是本发明实施例提供的拍摄方法的流程图,本实施例与前一个实施例的区别在于详细阐述了确定目标拍摄图像的方式。如图5所示,包括以下步骤:
步骤501、在缓存摄像头采集的预览图像的过程中,获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳,其中,所述第一组图像帧包括至少两张缓存图像帧。
在步骤501中,在缓存摄像头采集的预览图像的过程中,可以获取第一组图像帧、第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳。其中,第一组图像帧包括至少两张缓存图像帧。
在前一个实施例中曾提到,开启移动终端的相机功能之后,在预览状态下,移动终端的重力传感器会按照预定时间间隔输出数据,且可以为每一个数据都打上时间戳。对于任意一个图像帧,都可以对应确定重力传感器所输出的两个数据。其中,重力传感器所输出的两个数据的时间戳与该图像帧的时间戳最接近。
如图6所示,为一种缓存图像帧队列与重力传感器输出的数据组成的缓存队列的示意图。
在图6中,第一组图像帧包含8个图像帧,重力传感器输出的数据组成的缓存队列包含13个数据。对于第2个图像帧,可以通过重力传感器输出的t=20ms的数据以及t=40ms的数据来计算第2个图像帧对应的移动终端的抖动幅度值;对于第3个图像帧,可以通过重力传感器输出的t=60ms的数据以及t=80ms的数据来计算第3个图像帧对应的移动终端的抖动幅度值;对于第4个图像帧,可以通过重力传感器输出的t=80ms的数据以及t=100ms的数据来计算第4个图像帧对应的移动终端的抖动幅度值等等。这样,可以计算出第一组图像帧中8个图像帧所分别对应的移动终端的抖动幅度值。具体计算过程已在前一个实施例中进行了详细的阐述,在此不再赘述。
步骤502、若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间。
在步骤502中,如果用户点击拍照按键,移动终端就可以接收到拍照指令,进而可以获取接收到拍照指令的接收时间。假设接收到拍照指令的接收时间为10:00。
步骤503、基于所述接收时间,确定第一时间戳和第二时间戳,其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间。
在步骤503中,可以基于上述接收时间,确定第一时间戳和第二时间戳,其中,接收时间介于第一时间戳和第二时间戳之间。
步骤504、获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据。
在步骤504中,移动终端可以获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据。
步骤505、计算所述第一数据和所述第二数据之间的矢量长度值。
在步骤505中,移动终端还可以计算第一数据和第二数据之间的矢量长度值。具体计算过程已在前一个实施例中进行了详细的阐述,在此不再赘述。
步骤506、若所述矢量长度值大于第一阈值,则确定移动终端发生抖动。
在步骤506中,移动终端可以判断上述矢量长度值是否大于第一阈值a。如果移动终端判断出上述矢量长度值大于第一阈值a,则可以确定接收到拍照指令的时刻,移动终端发生了抖动。
步骤507、若检测到移动终端发生抖动,则获取抖动幅度值,所述抖动幅度值为所述矢量长度值。
在步骤507中,在接收到拍照指令的时刻,如果检测到移动终端发生了抖动,则可以获取抖动幅度值。且可以将上述矢量长度值作为移动终端的抖动幅度值。
步骤508、若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧。
在步骤508中,如果上述矢量长度值小于或者等于第一阈值a,即如果接收到拍照指令时,移动终端的抖动幅度值小于或者等于第一阈值a,则可以确定第一组图像帧中时间戳与接收时间之间的间隔最小的第一目标图像帧。
步骤509、将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
在步骤509中,可以将第一组图像帧中时间戳小于或者等于第一目标图像帧的时间戳的图像帧确定为目标缓存图像帧。
步骤5010、若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧。
在步骤5010中,如果上述矢量长度值大于第一阈值a,则可以确定第一组图像帧中时间戳与接收时间之间的间隔最小的第二目标图像帧。
步骤5011、从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较。
在步骤5011中,可以从第二目标图像帧开始,即可以从第一组图像帧中倒数第一个图像帧开始,也即可以从第一组图像帧中第8个图像帧开始,按照时间戳减小的顺序,将第一组图像帧中的图像帧对应的抖动幅度值依次与第一阈值a进行比较。
例如,可以将第8个图像帧对应的移动终端的抖动幅度值与第一阈值a进行比较。如果第8个图像帧对应的移动终端的抖动幅度值大于第一阈值a,则可以将第7个图像帧对应的移动终端的抖动幅度值与第一阈值a进行比较。如果第7个图像帧对应的移动终端的抖动幅度值大于第一阈值a,则可以将第6个图像帧对应的移动终端的抖动幅度值与第一阈值a进行比较。以此类推,直到找到第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的图像帧为止。
步骤5012、确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧。
在步骤5012中,可以确定比较得到的第一个抖动幅度值小于或者等于第一阈值a的第三目标图像帧。如果用户点击拍照按键时,用力较小,则移动终端的抖动幅度值可能介于第一阈值a和第二阈值b之间,即此时移动终端可能发生轻微抖动。则按照时间戳减小的顺序找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧的时间戳会比较靠近接收到拍照指令的接收时间,例如,可能为第5个图像帧;如果用户点击拍照按键时,用力较大,则移动终端的抖动幅度值可能大于第二阈值b,即此时移动终端可能发生严重抖动。则按照时间戳减小的顺序找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧的时间戳与接收到拍照指令的接收时间之间的间隔就会比较长。例如,可能为第2个图像帧。
假设按照时间戳减小的顺序,最终找到的第一个对应的移动终端的抖动幅度值小于或者等于第一阈值a的第三目标图像帧为第5个图像帧,即倒数第4个图像帧。则可以从倒数第4个图像帧开始,按照时间戳减小的顺序,寻找图像参数指示对焦完成的图像帧,且可以将找到的第一个图像参数指示对焦完成的图像帧作为目标拍摄图像。
步骤5013、将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
在步骤5013中,可以将第一组图像帧中时间戳小于或者等于第三目标图像帧的时间戳的图像帧确定为目标缓存图像帧。
即可以将第一组图像帧中时间戳小于或者等于第三目标图像帧的时间戳的第1个图像帧、时间戳小于或者等于第三目标图像帧的时间戳的第2个图像帧、时间戳小于或者等于第三目标图像帧的时间戳的第3个图像帧、时间戳小于或者等于第三目标图像帧的时间戳的第4个图像帧以及时间戳等于第三目标图像帧的时间戳的第5个图像帧作为上述目标缓存图像帧。
步骤5014、从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
在步骤5014中,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。例如,可以从目标缓存图像帧中选取图像参数指示对焦完成的图像帧作为目标拍摄图像。
这样,可以解决用户在室外进行拍照,且室外的风较大时,移动终端握持不稳导致拍摄照片模糊的问题;可以解决用户按下音量键或者拍照按键时,手抖动造成移动终端晃动,进而导致拍摄照片模糊的问题;还可以解决在拍照时,用户由于身体不适造成手抖动,最终导致拍摄照片模糊的问题等等。保证了所拍摄照片的清晰度。
本发明实施例的拍摄方法,在缓存摄像头采集的预览图像的过程中,获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳,其中,所述第一组图像帧包括至少两张缓存图像帧;若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;基于所述接收时间,确定第一时间戳和第二时间戳,其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;计算所述第一数据和所述第二数据之间的矢量长度值;若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值,所述抖动幅度值为所述矢量长度值;若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧;将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧;从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较;确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧;将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。这样,移动终端接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
参见图7,图7是本发明实施例提供的拍摄方法的流程图,本实施例与前一个实施例的区别在于详细阐述了另一种确定目标拍摄图像的方式。如图7所示,包括以下步骤:
步骤701、在缓存摄像头采集的预览图像的过程中,获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳,其中,所述第二组图像帧包括至少两张缓存图像帧,所述第二阈值大于所述第一阈值。
在步骤701中,在缓存摄像头采集的预览图像的过程中,可以获取抖动幅度值小于或者等于第二阈值b的第二组图像帧和第二组图像帧中每一个图像帧的时间戳。其中,第二组图像帧包括至少两张缓存图像帧,第二阈值b大于第一阈值a。即第二组图像帧中包含的都是没有发生抖动的图像帧以及发生轻微抖动的图像帧。
步骤702、若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间。
在步骤702中,如果用户点击拍照按键,移动终端就可以接收到拍照指令,进而可以获取接收到拍照指令的接收时间。假设接收到拍照指令的接收时间为11:00。
步骤703、基于所述接收时间,确定第一时间戳和第二时间戳,其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间。
在步骤703中,可以基于上述接收时间,确定第一时间戳和第二时间戳,其中,接收时间介于第一时间戳和第二时间戳之间。
步骤704、获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据。
在步骤704中,移动终端可以获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据。
步骤705、计算所述第一数据和所述第二数据之间的矢量长度值。
在步骤705中,移动终端还可以计算第一数据和所述第二数据之间的矢量长度值。具体计算过程已在第一个实施例中进行了详细的阐述,在此不再赘述。
步骤706、若所述矢量长度值大于第一阈值,则确定移动终端发生抖动。
在步骤706中,移动终端可以判断上述矢量长度值是否大于第一阈值a。如果移动终端判断出上述矢量长度值大于第一阈值a,则可以确定接收到拍照指令的时刻,移动终端发生了抖动。
步骤707、若检测到移动终端发生抖动,则获取抖动幅度值,所述抖动幅度值为所述矢量长度值。
在步骤707中,在接收到拍照指令的时刻,如果检测到移动终端发生了抖动,则可以获取抖动幅度值。且可以将上述矢量长度值作为移动终端的抖动幅度值。
步骤708、确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧。
在步骤708中,如图8所示,为另一种缓存图像帧队列与重力传感器输出的数据组成的缓存队列的示意图。
在图8中,缓存图像帧队列包含8个图像帧,重力传感器输出的数据组成的缓存队列包含13个数据。
移动终端可以确定第二组图像帧中时间戳与接收时间之间的间隔最小的第四目标图像帧。在图8中,第二组图像帧中的第8个图像帧即为第四目标图像帧,即第二组图像帧中的倒数第一个图像帧为第四目标图像帧。
步骤709、将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
在步骤709中,可以将第二组图像帧中时间戳小于或者等于第四目标图像帧的时间戳的图像帧确定为目标缓存图像帧。即可以将第二组图像帧中时间戳小于或者等于第四目标图像帧的时间戳的第1个图像帧、时间戳小于或者等于第四目标图像帧的时间戳的第2个图像帧、时间戳小于或者等于第四目标图像帧的时间戳的第3个图像帧、时间戳小于或者等于第四目标图像帧的时间戳的第4个图像帧、时间戳小于或者等于第四目标图像帧的时间戳的第5个图像帧、时间戳小于或者等于第四目标图像帧的时间戳的第6个图像帧、时间戳小于或者等于第四目标图像帧的时间戳的第7个图像帧以及时间戳等于第四目标图像帧的时间戳的第8个图像帧作为目标缓存图像帧。
步骤7010、获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔。
在步骤7010中,可以获取第四目标图像帧的时间戳与接收时间之间的目标时间间隔。如图8所示,可以获取第二组图像帧中的第8个图像帧的时间戳与接收时间之间的目标时间间隔;也即可以获取第二组图像帧中的倒数第一个图像帧的时间戳与接收时间之间的目标时间间隔。
步骤7011、判断所述目标时间间隔是否大于预设时间间隔。
在步骤7011中,移动终端可以判断上述目标时间间隔是否大于预设时间间隔。其中该预设时间间隔可以为300毫秒。
步骤7012、若所述目标时间间隔小于或者等于所述预设时间间隔,则从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
在步骤7012中,如果目标时间间隔小于或者等于预设时间间隔,即如果目标时间间隔小于或者等于300毫秒,则可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
如图8所示,假设接收到拍照指令的时刻之前的100毫秒之内,移动终端的抖动幅度值一直大于第二阈值b,则移动终端在这100毫秒之内所获取到的3个图像帧对应的移动终端的抖动幅度值均大于第二阈值b。因此,这3个图像帧均无法加入缓存图像帧队列。因此,在11:00接收到拍照指令的时刻,缓存图像帧队列中的图像帧仍然是100毫秒之前所缓存的图像帧。
但是由于第四目标图像帧的时间戳与接收时间之间的时间间隔仅为100毫秒,将100毫秒之前所缓存的图像帧推送给用户仍然在可接受范围内。因此可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。例如,可以从第二组图像帧中时间戳与接收时间最接近的第四目标图像帧开始,即可以从第二组图像帧中倒数第一个图像帧开始,也即可以从第二组图像帧中第8个图像帧开始,按照时间戳减小的顺序,寻找图像参数指示对焦完成的图像帧,且可以将找到的第一个图像参数指示对焦完成的图像帧作为目标拍摄图像。
可选的,所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤,包括:
从所述目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为所述目标拍摄图像;
其中,所述目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
如前所述,可以从目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为目标拍摄图像。其中,目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
步骤7013、若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。
在步骤7013中,如果第四目标图像帧的时间戳与接收时间之间的目标时间间隔大于预设时间间隔,即如果目标时间间隔大于300毫秒,则可以不输出照片,且可以输出提示信息。该提示信息用于提示用户当前移动终端的抖动幅度值较大,要保持移动终端握持平稳。
例如,假设接收到拍照指令的时刻之前的10秒之内,移动终端的抖动幅度值一直大于第二阈值b,则移动终端在这10秒之内所获取到的多个图像帧对应的移动终端的抖动幅度值均大于第二阈值b。因此,移动终端在这10秒之内所获取到的多个图像帧均无法加入缓存图像帧队列。因此,在11:00接收到拍照指令的时刻,缓存图像帧队列中的图像帧仍然是10秒之前所缓存的图像帧。此时将10秒之前所缓存的图像帧推送给用户并没有多少意义。因此,如果上述目标时间间隔大于预设时间间隔,则可以不输出照片,且可以输出提示信息。该提示信息用于提示用户当前移动终端的抖动幅度值较大,要保持移动终端握持平稳。
设置预设时间间隔的好处是可以防止将时间戳在接收到拍照指令的时刻之前的,且时间戳与接收到拍照指令的时刻相差较远的图像帧推送给用户。可以保证推送给用户的图像帧为时间戳与接收到拍照指令的时刻相差较小的图像帧。
这样,可以解决用户在室外进行拍照,且室外的风较大时,移动终端握持不稳导致拍摄照片模糊的问题;可以解决用户按下音量键或者拍照按键时,手抖动造成移动终端晃动,进而导致拍摄照片模糊的问题;还可以解决在拍照时,用户由于身体不适造成手抖动,最终导致拍摄照片模糊的问题等等。保证了所拍摄照片的清晰度。
本发明实施例的拍摄方法,在缓存摄像头采集的预览图像的过程中,获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳,其中,所述第二组图像帧包括至少两张缓存图像帧,所述第二阈值大于所述第一阈值;若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;基于所述接收时间,确定第一时间戳和第二时间戳,其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;计算所述第一数据和所述第二数据之间的矢量长度值;若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值,所述抖动幅度值为所述矢量长度值;确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧;将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔;判断所述目标时间间隔是否大于预设时间间隔;若所述目标时间间隔小于或者等于所述预设时间间隔,则从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像;若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。这样,移动终端接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
参见图9,图9是本发明实施提供的移动终端的结构图,如图9所示,移动终端900包括检测模块901、第一获取模块902、确定模块903和选取模块904,检测模块901与第一获取模块902连接,第一获取模块902与确定模块903连接,确定模块903与选取模块904连接,其中:
检测模块901,用于在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;
第一获取模块902,用于若检测到移动终端发生抖动,则获取抖动幅度值;
确定模块903,用于根据所述抖动幅度值,确定目标缓存图像帧;
选取模块904,用于从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
可选的,如图10所示,所述检测模块901包括:
第一获取子模块9011,用于若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;
第一确定子模块9012,用于基于所述接收时间,确定第一时间戳和第二时间戳;
第二获取子模块9013,用于获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;
计算子模块9014,用于计算所述第一数据和所述第二数据之间的矢量长度值;
第二确定子模块9015,用于若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;
其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;所述抖动幅度值为所述矢量长度值。
可选的,如图11所示,所述移动终端还包括:
第二获取模块905,用于获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳;
其中,所述第一组图像帧包括至少两张缓存图像帧;
所述确定模块903包括:
第三确定子模块9031,用于若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧;
第四确定子模块9032,用于将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
可选的,如图12所示,所述确定模块903还包括:
第五确定子模块9033,用于若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧;
比较子模块9034,用于从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较;
第六确定子模块9035,用于确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧;
第七确定子模块9036,用于将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
可选的,如图13所示,所述移动终端还包括:
第三获取模块906,用于获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳;
其中,所述第二组图像帧包括至少两张缓存图像帧;
所述确定模块903还包括:
第八确定子模块9037,用于确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧;
第九确定子模块9038,用于将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;
其中,所述第二阈值大于所述第一阈值。
可选的,如图14所示,所述移动终端还包括:
第四获取模块907,用于获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔;
判断模块908,用于判断所述目标时间间隔是否大于预设时间间隔;
执行模块909,用于若所述目标时间间隔小于或者等于所述预设时间间隔,则执行所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤;
输出模块9010,用于若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。
可选的,所述选取模块904具体用于:
从所述目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为所述目标拍摄图像;
其中,所述目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
移动终端900能够实现图1、图5和图7的方法实施例中移动终端实现的各个过程,为避免重复,这里不再赘述。且移动终端900可以实现接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
参见图15,图15是本发明实施提供的移动终端的结构图,如图15所示,移动终端1500包括:至少一个处理器1501、存储器1502、至少一个网络接口1504和用户接口1503及存储在存储器1502上并可在处理器1501上运行的计算机程序,计算机程序被处理器1501执行时实现上述拍摄方法的步骤。移动终端1500中的各个组件通过总线系统1505耦合在一起。可理解,总线系统1505用于实现这些组件之间的连接通信。总线系统1505除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图15中将各种总线都标为总线系统1505。
其中,用户接口1503可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(track ball)、触感板或者触摸屏等。
可以理解,本发明实施例中的存储器1502可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double DataRate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本文描述的系统和方法的存储器1502旨在包括但不限于这些和任意其它适合类型的存储器。
在一些实施方式中,存储器1502存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统15021和应用程序15022。
其中,操作系统15021,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序15022,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本发明实施例方法的程序可以包含在应用程序15022中。
在本发明实施例中,通过调用存储器1502存储的程序或指令,具体的,可以是应用程序15022中存储的程序或指令,处理器1501用于:在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值;根据所述抖动幅度值,确定目标缓存图像帧;从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
上述本发明实施例揭示的方法可以应用于处理器1501中,或者由处理器1501实现。处理器1501可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1501中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1501可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1502,处理器1501读取存储器1502中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的模块(例如过程、函数等)来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选的,处理器1501还用于:若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;基于所述接收时间,确定第一时间戳和第二时间戳;获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;计算所述第一数据和所述第二数据之间的矢量长度值;若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;所述抖动幅度值为所述矢量长度值。
可选的,处理器1501还用于:获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳;其中,所述第一组图像帧包括至少两张缓存图像帧;若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧;将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
可选的,处理器1501还用于:若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧;从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较;确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧;将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
可选的,处理器1501还用于:获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳;其中,所述第二组图像帧包括至少两张缓存图像帧;确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧;将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;其中,所述第二阈值大于所述第一阈值。
可选的,处理器1501还用于:获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔;判断所述目标时间间隔是否大于预设时间间隔;若所述目标时间间隔小于或者等于所述预设时间间隔,则执行所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤;若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。
可选的,处理器1501还用于:从所述目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为所述目标拍摄图像;其中,所述目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
移动终端1500能够实现前述实施例中移动终端实现的各个过程,为避免重复,这里不再赘述。且移动终端1500可以实现接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
图16为实现本发明各个实施例的一种移动终端的硬件结构示意图。
该移动终端1600包括但不限于:射频单元1601、网络模块1602、音频输出单元1603、输入单元1604、传感器1605、显示单元1606、用户输入单元1607、接口单元1608、存储器1609、处理器1610、以及电源1611等部件。本领域技术人员可以理解,图16中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,移动终端包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
处理器1610,用于在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;若检测到移动终端发生抖动,则获取抖动幅度值;根据所述抖动幅度值,确定目标缓存图像帧;从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。
接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
应理解的是,本发明实施例中,射频单元1601可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器1610处理;另外,将上行的数据发送给基站。通常,射频单元1601包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元1601还可以通过无线通信系统与网络和其他设备通信。
移动终端通过网络模块1602为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元1603可以将射频单元1601或网络模块1602接收的或者在存储器1609中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元1603还可以提供与移动终端1600执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元1603包括扬声器、蜂鸣器以及受话器等。
输入单元1604用于接收音频或视频信号。输入单元1604可以包括图形处理器(Graphics Processing Unit,GPU)16041和麦克风16042,图形处理器16041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元1606上。经图形处理器16041处理后的图像帧可以存储在存储器1609(或其它存储介质)中或者经由射频单元1601或网络模块1602进行发送。麦克风16042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元1601发送到移动通信基站的格式输出。
移动终端1600还包括至少一种传感器1605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板16061的亮度,接近传感器可在移动终端1600移动到耳边时,关闭显示面板16061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别移动终端姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器1605还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元1606用于显示由用户输入的信息或提供给用户的信息。显示单元1606可包括显示面板16061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板16061。
用户输入单元1607可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元1607包括触控面板16071以及其他输入设备16072。触控面板16071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板16071上或在触控面板16071附近的操作)。触控面板16071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1610,接收处理器1610发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板16071。除了触控面板16071,用户输入单元1607还可以包括其他输入设备16072。具体地,其他输入设备16072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板16071可覆盖在显示面板16061上,当触控面板16071检测到在其上或附近的触摸操作后,传送给处理器1610以确定触摸事件的类型,随后处理器1610根据触摸事件的类型在显示面板16061上提供相应的视觉输出。虽然在图16中,触控面板16071与显示面板16061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板16071与显示面板16061集成而实现移动终端的输入和输出功能,具体此处不做限定。
接口单元1608为外部装置与移动终端1600连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元1608可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端1600内的一个或多个元件或者可以用于在移动终端1600和外部装置之间传输数据。
存储器1609可用于存储软件程序以及各种数据。存储器1609可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1609可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1610是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器1609内的软件程序和/或模块,以及调用存储在存储器1609内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器1610可包括一个或多个处理单元;优选的,处理器1610可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1610中。
移动终端1600还可以包括给各个部件供电的电源1611(比如电池),优选的,电源1611可以通过电源管理系统与处理器1610逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
另外,移动终端1600包括一些未示出的功能模块,在此不再赘述。
可选的,处理器1610还用于:若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;基于所述接收时间,确定第一时间戳和第二时间戳;获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;计算所述第一数据和所述第二数据之间的矢量长度值;若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;所述抖动幅度值为所述矢量长度值。
可选的,处理器1610还用于:获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳;其中,所述第一组图像帧包括至少两张缓存图像帧;若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧;将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
可选的,处理器1610还用于:若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧;从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较;确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧;将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
可选的,处理器1610还用于:获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳;其中,所述第二组图像帧包括至少两张缓存图像帧;确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧;将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;其中,所述第二阈值大于所述第一阈值。
可选的,处理器1610还用于:获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔;判断所述目标时间间隔是否大于预设时间间隔;若所述目标时间间隔小于或者等于所述预设时间间隔,则执行所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤;若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。
可选的,处理器1610还用于:从所述目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为所述目标拍摄图像;其中,所述目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
移动终端1600能够实现前述实施例中移动终端实现的各个过程,为避免重复,这里不再赘述。且移动终端1600可以实现接收到拍照指令时,如果移动终端发生抖动,则可以获取移动终端的抖动幅度值。进而可以根据抖动幅度值,确定目标缓存图像帧。最后,可以从目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像。拍摄的照片比较清晰,完善了照片拍摄效果。
优选的,本发明实施例还提供一种移动终端,包括处理器1610,存储器1609,存储在存储器1609上并可在所述处理器1610上运行的计算机程序,该计算机程序被处理器1610执行时实现上述拍摄方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述拍摄方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。

Claims (10)

1.一种拍摄方法,其特征在于,包括:
在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;
若检测到移动终端发生抖动,则获取抖动幅度值;
根据所述抖动幅度值,确定目标缓存图像帧;
从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像;
所述若接收到拍照指令,则检测移动终端是否发生抖动的步骤,包括:
若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;
基于所述接收时间,确定第一时间戳和第二时间戳;
获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;
计算所述第一数据和所述第二数据之间的矢量长度值;
若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;
其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;所述抖动幅度值为所述矢量长度值;
在所述若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间的步骤之前,所述方法还包括:
获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳;
其中,所述第一组图像帧包括至少两张缓存图像帧;
所述根据所述抖动幅度值,确定目标缓存图像帧的步骤,包括:
若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧;
将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;
所述根据所述抖动幅度值,确定目标缓存图像帧的步骤,包括:
若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧;
从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较;
确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧;
将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
2.根据权利要求1所述的方法,其特征在于,在所述若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间的步骤之前,所述方法还包括:
获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳;
其中,所述第二组图像帧包括至少两张缓存图像帧;
所述根据所述抖动幅度值,确定目标缓存图像帧的步骤,包括:
确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧;
将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;
其中,所述第二阈值大于所述第一阈值。
3.根据权利要求2所述的方法,其特征在于,在所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤之前,所述方法还包括:
获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔;
判断所述目标时间间隔是否大于预设时间间隔;
若所述目标时间间隔小于或者等于所述预设时间间隔,则执行所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤;
若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤,包括:
从所述目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为所述目标拍摄图像;
其中,所述目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
5.一种移动终端,其特征在于,包括:
检测模块,用于在缓存摄像头采集的预览图像的过程中,若接收到拍照指令,则检测移动终端是否发生抖动;
第一获取模块,用于若检测到移动终端发生抖动,则获取抖动幅度值;
确定模块,用于根据所述抖动幅度值,确定目标缓存图像帧;
选取模块,用于从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像;
所述检测模块包括:
第一获取子模块,用于若接收到所述拍照指令,则获取接收到所述拍照指令的接收时间;
第一确定子模块,用于基于所述接收时间,确定第一时间戳和第二时间戳;
第二获取子模块,用于获取重力传感器在第一时间戳采集的第一数据和在第二时间戳采集的第二数据;
计算子模块,用于计算所述第一数据和所述第二数据之间的矢量长度值;
第二确定子模块,用于若所述矢量长度值大于第一阈值,则确定移动终端发生抖动;
其中,所述接收时间介于所述第一时间戳和所述第二时间戳之间;所述抖动幅度值为所述矢量长度值;
第二获取模块,用于获取第一组图像帧、所述第一组图像帧中每一个图像帧对应的抖动幅度值和每一个图像帧的时间戳;
其中,所述第一组图像帧包括至少两张缓存图像帧;
所述确定模块包括:
第三确定子模块,用于若所述矢量长度值小于或者等于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第一目标图像帧;
第四确定子模块,用于将所述第一组图像帧中时间戳小于或者等于所述第一目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;
所述确定模块还包括:
第五确定子模块,用于若所述矢量长度值大于所述第一阈值,则确定所述第一组图像帧中时间戳与所述接收时间之间的间隔最小的第二目标图像帧;
比较子模块,用于从所述第二目标图像帧开始,按照时间戳减小的顺序,将所述第一组图像帧中的图像帧对应的抖动幅度值依次与所述第一阈值进行比较;
第六确定子模块,用于确定比较得到的第一个抖动幅度值小于或者等于所述第一阈值的第三目标图像帧;
第七确定子模块,用于将所述第一组图像帧中时间戳小于或者等于所述第三目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧。
6.根据权利要求5所述的移动终端,其特征在于,所述移动终端还包括:
第三获取模块,用于获取抖动幅度值小于或者等于第二阈值的第二组图像帧和所述第二组图像帧中每一个图像帧的时间戳;
其中,所述第二组图像帧包括至少两张缓存图像帧;
所述确定模块还包括:
第八确定子模块,用于确定所述第二组图像帧中时间戳与所述接收时间之间的间隔最小的第四目标图像帧;
第九确定子模块,用于将所述第二组图像帧中时间戳小于或者等于所述第四目标图像帧的时间戳的图像帧确定为所述目标缓存图像帧;
其中,所述第二阈值大于所述第一阈值。
7.根据权利要求6所述的移动终端,其特征在于,所述移动终端还包括:
第四获取模块,用于获取第四目标图像帧的时间戳与所述接收时间之间的目标时间间隔;
判断模块,用于判断所述目标时间间隔是否大于预设时间间隔;
执行模块,用于若所述目标时间间隔小于或者等于所述预设时间间隔,则执行所述从所述目标缓存图像帧中选取满足预设条件的图像帧作为目标拍摄图像的步骤;
输出模块,用于若所述目标时间间隔大于所述预设时间间隔,则输出提示信息,所述提示信息用于提示用户保持移动终端握持平稳。
8.根据权利要求5至7中任一项所述的移动终端,其特征在于,所述选取模块具体用于:
从所述目标缓存图像帧中,选取图像参数指示对焦完成的图像帧作为所述目标拍摄图像;
其中,所述目标缓存图像帧中的每一个图像帧包括指示对焦状态的图像参数。
9.一种移动终端,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的拍摄方法的步骤。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4中任一项所述的拍摄方法的步骤。
CN201710865596.5A 2017-09-22 2017-09-22 一种拍摄方法及移动终端 Active CN107509034B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710865596.5A CN107509034B (zh) 2017-09-22 2017-09-22 一种拍摄方法及移动终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710865596.5A CN107509034B (zh) 2017-09-22 2017-09-22 一种拍摄方法及移动终端

Publications (2)

Publication Number Publication Date
CN107509034A CN107509034A (zh) 2017-12-22
CN107509034B true CN107509034B (zh) 2019-11-26

Family

ID=60697211

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710865596.5A Active CN107509034B (zh) 2017-09-22 2017-09-22 一种拍摄方法及移动终端

Country Status (1)

Country Link
CN (1) CN107509034B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108347563B (zh) * 2018-02-07 2020-12-22 Oppo广东移动通信有限公司 视频处理方法和装置、电子设备、计算机可读存储介质
CN109688319B (zh) * 2018-09-19 2020-10-30 青岛海信智慧家居系统股份有限公司 一种抑制带有摄像头的智能音箱摄像抖动的方法及装置
CN109005355B (zh) * 2018-09-28 2020-10-09 维沃移动通信有限公司 一种拍摄方法及移动终端
CN111385475B (zh) * 2020-03-11 2021-09-10 Oppo广东移动通信有限公司 图像获取方法、拍照装置、电子设备及可读存储介质
CN114449151B (zh) * 2020-10-30 2023-06-02 华为技术有限公司 一种图像处理方法及相关装置
CN112333387A (zh) * 2020-10-30 2021-02-05 维沃移动通信有限公司 拍摄方法、装置、电子设备及存储介质
CN112653842A (zh) * 2020-12-23 2021-04-13 维沃移动通信有限公司 视频防抖的方法和装置
CN113259594A (zh) * 2021-06-22 2021-08-13 展讯通信(上海)有限公司 图像处理方法及装置、计算机可读存储介质、终端
CN114326080A (zh) * 2022-01-11 2022-04-12 上海察微电子技术有限公司 一种用于显微镜的超大景深和防震防抖图像处理方法
CN116709043B (zh) 2022-02-25 2024-08-02 荣耀终端有限公司 一种拍摄方法及电子设备
CN116723383B (zh) * 2022-02-28 2024-04-19 荣耀终端有限公司 一种拍摄方法及相关设备
CN115226054B (zh) * 2022-03-22 2024-04-12 广州汽车集团股份有限公司 一种数据采集方法、装置、设备及存储介质
CN116347212B (zh) * 2022-08-05 2024-03-08 荣耀终端有限公司 一种自动拍照方法及电子设备
CN115942130B (zh) * 2022-12-23 2025-01-28 展讯通信(上海)有限公司 图像处理方法及装置、计算机可读存储介质
CN117156261B (zh) * 2023-03-28 2024-07-02 荣耀终端有限公司 图像处理方法及相关设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289400B2 (en) * 2009-06-05 2012-10-16 Apple Inc. Image capturing device having continuous image capture
CN104219448A (zh) * 2014-08-28 2014-12-17 小米科技有限责任公司 拍摄方法和装置
CN105611180A (zh) * 2016-03-28 2016-05-25 广东欧珀移动通信有限公司 一种利用可穿戴设备进行拍照防抖的方法、移动终端及系统
CN105827967A (zh) * 2016-03-28 2016-08-03 广东欧珀移动通信有限公司 控制方法、控制装置及电子装置
CN105872376A (zh) * 2016-04-12 2016-08-17 广东欧珀移动通信有限公司 控制方法、控制装置及电子装置
CN106210496A (zh) * 2015-05-06 2016-12-07 小米科技有限责任公司 照片拍摄方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289400B2 (en) * 2009-06-05 2012-10-16 Apple Inc. Image capturing device having continuous image capture
CN104219448A (zh) * 2014-08-28 2014-12-17 小米科技有限责任公司 拍摄方法和装置
CN106210496A (zh) * 2015-05-06 2016-12-07 小米科技有限责任公司 照片拍摄方法及装置
CN105611180A (zh) * 2016-03-28 2016-05-25 广东欧珀移动通信有限公司 一种利用可穿戴设备进行拍照防抖的方法、移动终端及系统
CN105827967A (zh) * 2016-03-28 2016-08-03 广东欧珀移动通信有限公司 控制方法、控制装置及电子装置
CN105872376A (zh) * 2016-04-12 2016-08-17 广东欧珀移动通信有限公司 控制方法、控制装置及电子装置

Also Published As

Publication number Publication date
CN107509034A (zh) 2017-12-22

Similar Documents

Publication Publication Date Title
CN107509034B (zh) 一种拍摄方法及移动终端
CN108513070B (zh) 一种图像处理方法、移动终端及计算机可读存储介质
WO2021036536A1 (zh) 视频拍摄方法及电子设备
CN107610075A (zh) 图像合成方法及移动终端
WO2019174628A1 (zh) 拍照方法及移动终端
CN107566748A (zh) 一种图像处理方法、移动终端及计算机可读存储介质
CN107948523A (zh) 一种拍摄方法及移动终端
CN107707825B (zh) 一种全景拍摄方法、移动终端和计算机可读存储介质
CN107635110A (zh) 一种视频截图方法及终端
CN108307106A (zh) 一种图像处理方法、装置及移动终端
CN108320263A (zh) 一种图像处理的方法、装置及移动终端
CN108683850A (zh) 一种拍摄提示方法及移动终端
JP7413546B2 (ja) 撮影方法及び電子機器
CN107888833A (zh) 一种图像拍摄方法及移动终端
CN107682637A (zh) 一种拍摄方法、移动终端和计算机可读存储介质
CN108174081B (zh) 一种拍摄方法及移动终端
CN108196699B (zh) 一种页面切换的方法及设备
CN112954222B (zh) 一种连拍方法及电子设备
CN108881721A (zh) 一种显示方法及终端
CN108965701B (zh) 一种抖动矫正方法及终端设备
CN108536513B (zh) 一种图片显示方向调整方法及移动终端
CN107277364A (zh) 一种拍摄方法、移动终端及计算机可读存储介质
CN107800968B (zh) 一种拍摄方法及移动终端
CN107734269B (zh) 一种图像处理方法及移动终端
CN108712604A (zh) 一种全景拍摄方法及移动终端

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant