CN110881104A - 拍照方法、装置、存储介质及终端 - Google Patents

拍照方法、装置、存储介质及终端 Download PDF

Info

Publication number
CN110881104A
CN110881104A CN201910988985.6A CN201910988985A CN110881104A CN 110881104 A CN110881104 A CN 110881104A CN 201910988985 A CN201910988985 A CN 201910988985A CN 110881104 A CN110881104 A CN 110881104A
Authority
CN
China
Prior art keywords
image
camera
photographing
space
cache space
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.)
Pending
Application number
CN201910988985.6A
Other languages
English (en)
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.)
Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Original Assignee
Yulong Computer Telecommunication Scientific Shenzhen 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 Yulong Computer Telecommunication Scientific Shenzhen Co Ltd filed Critical Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Priority to CN201910988985.6A priority Critical patent/CN110881104A/zh
Publication of CN110881104A publication Critical patent/CN110881104A/zh
Pending legal-status Critical Current

Links

Images

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/62Control of parameters via user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72439User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for image or video messaging

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Studio Devices (AREA)

Abstract

本申请实施例公开了一种拍照方法、装置、存储介质及终端,属于图像处理领域。方法包括:接收摄像头打开指令;响应于摄像头打开指令打开摄像头,以及通过所述摄像头持续采集预览图像;将采集的预览图像写入到缓存空间中;接收到拍照指令时,在所述缓存空间中选择清晰度最高的预览图像作为拍照图像。本申请可以减少因抖动造成拍摄的图像发生模糊的可能性。

Description

拍照方法、装置、存储介质及终端
技术领域
本申请涉及图像处理领域,尤其涉及一种拍照方法、装置、存储介质及终端。
背景技术
用户利用手机的摄像头进行拍照时,需要保持手机的稳定,这样才能拍摄出清晰的照片。如果在拍照过程成发生抖动,拍摄的照片会发生模糊的现象,如何避免因手机抖动拍摄出模糊的照片是目前研究的热点。
发明内容
本申请实施例提供了的拍照方法、装置、存储介质及终端,可以解决相关技术中因抖动拍摄出模糊的照片的问题。所述技术方案如下:
第一方面,本申请实施例提供了一种拍照方法,所述方法包括:
接收摄像头打开指令;
响应于摄像头打开指令打开摄像头,以及通过摄像头持续采集预览图像;
将采集的预览图像写入到缓存空间中;
接收到拍照指令,在缓存空间中选择清晰度最高的预览图像作为拍照图像。
第二方面,本申请实施例提供了一种拍照装置,所述拍照装置包括:
接收单元,用于接收摄像头打开指令;
采集单元,用于响应于摄像头打开指令打开摄像头,以及通过摄像头持续采集预览图像;
缓存单元,用于将采集的预览图像写入到缓存空间中;
拍照单元,用于接收到拍照指令时,在所述缓存空间中选择清晰度最高的预览图像作为拍照图像。
第三方面,本申请实施例提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。
第四方面,本申请实施例提供一种终端,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。
本申请一些实施例提供的技术方案带来的有益效果至少包括:
在接收用于打开摄像头的指令时,通过摄像头周期性的采集预览图像,将采集的预览图像写入到预设大小的缓存空间中,由于缓存空间的大小是固定的,在缓存空间的存储空间不足的情况下仍然需要写入预览图像时,会将缓存空间中的历史预览图像删除,以便新的预览图像有足够的空间存储进来。在接收到拍照指令时,从缓存空间中存储的各个预览图像中选择一个清晰度最高的图像作为最终拍照图像,即时用户在使用手机进行拍照过程中发生抖动,手机仍然会采集到少量的清晰图像,从而解决了相关技术中抖动得到模糊的照片的问题,减少因抖动采集到模糊照片的可能性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的终端的结构示意图;
图2是本申请实施例提供的操作系统和用户空间的结构示意图;
图3是图1中安卓操作系统的架构图;
图4是图1中IOS操作系统的架构图;
图5是本申请实施例提供的拍照方法的流程示意图;
图6是本申请实施例提供的拍照方法的另一流程示意图;
图7是本申请实施例提供的一种写入预览图片的原理示意图;
图8是本申请实施例提供的一种拍照装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。
请参考图1,其示出了本申请一个示例性实施例提供的终端的结构方框图。本申请中的终端可以包括一个或多个如下部件:处理器110、存储器120、输入装置130、输出装置140和总线150。处理器110、存储器120、输入装置130和输出装置140之间可以通过总线150连接。
处理器110可以包括一个或者多个处理核心。处理器110利用各种接口和线路连接整个终端内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行终端100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digital signal processing,DSP)、现场可编程门阵列(field-programmable gate array,FPGA)、可编程逻辑阵列(programmable logicArray,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(central processingunit,CPU)、图像处理器(graphics processing unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(randomAccess Memory,RAM),也可以包括只读存储器(read-onlymemory,ROM)。可选地,该存储器120包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等,该操作系统可以是安卓(Android)系统(包括基于Android系统深度开发的系统)、苹果公司开发的IOS系统(包括基于IOS系统深度开发的系统)或其它系统。存储数据区还可以存储终端在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
参见图2所示,存储器120可分为操作系统空间和用户空间,操作系统即运行于操作系统空间,原生及第三方应用程序即运行于用户空间。为了保证不同第三方应用程序均能够达到较好的运行效果,操作系统针对不同第三方应用程序为其分配相应的系统资源。然而,同一第三方应用程序中不同应用场景对系统资源的需求也存在差异,比如,在本地资源加载场景下,第三方应用程序对磁盘读取速度的要求较高;在动画渲染场景下,第三方应用程序则对GPU性能的要求较高。而操作系统与第三方应用程序之间相互独立,操作系统往往不能及时感知第三方应用程序当前的应用场景,导致操作系统无法根据第三方应用程序的具体应用场景进行针对性的系统资源适配。
为了使操作系统能够区分第三方应用程序的具体应用场景,需要打通第三方应用程序与操作系统之间的数据通信,使得操作系统能够随时获取第三方应用程序当前的场景信息,进而基于当前场景进行针对性的系统资源适配。
以操作系统为Android系统为例,存储器120中存储的程序和数据如图3所示,存储器120中可存储有Linux内核层320、系统运行时库层340、应用框架层360和应用层380,其中,Linux内核层320、系统运行库层340和应用框架层360属于操作系统空间,应用层380属于用户空间。Linux内核层320为终端的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、蓝牙驱动、Wi-Fi驱动、电源管理等。系统运行库层340通过一些C/C++库来为Android系统提供了主要的特性支持。如SQLite库提供了数据库的支持,OpenGL/ES库提供了3D绘图的支持,Webkit库提供了浏览器内核的支持等。在系统运行时库层340中还提供有安卓运行时库(Android runtime),它主要提供了一些核心库,能够允许开发者使用Java语言来编写Android应用。应用框架层360提供了构建应用程序时可能用到的各种API,开发者也可以通过使用这些API来构建自己的应用程序,比如活动管理、窗口管理、视图管理、通知管理、内容提供者、包管理、通话管理、资源管理、定位管理。应用层380中运行有至少一个应用程序,这些应用程序可以是操作系统自带的原生应用程序,比如联系人程序、短信程序、时钟程序、相机应用等;也可以是第三方开发者所开发的第三方应用程序,比如游戏类应用程序、即时通信程序、相片美化程序、购物程序等。
以操作系统为IOS系统为例,存储器120中存储的程序和数据如图4所示,IOS系统包括:核心操作系统层420(Core OS layer)、核心服务层440(Core Services layer)、媒体层460(Media layer)、可触摸层480(Cocoa Touch Layer)。核心操作系统层420包括了操作系统内核、驱动程序以及底层程序框架,这些底层程序框架提供更接近硬件的功能,以供位于核心服务层440的程序框架所使用。核心服务层440提供给应用程序所需要的系统服务和/或程序框架,比如基础(Foundation)框架、账户框架、广告框架、数据存储框架、网络连接框架、地理位置框架、运动框架等等。媒体层460为应用程序提供有关视听方面的接口,如图形图像相关的接口、音频技术相关的接口、视频技术相关的接口、音视频传输技术的无线播放(AirPlay)接口等。可触摸层480为应用程序开发提供了各种常用的界面相关的框架,可触摸层480负责用户在终端上的触摸交互操作。比如本地通知服务、远程推送服务、广告框架、游戏工具框架、消息用户界面接口(User Interface,UI)框架、用户界面UIKit框架、地图框架等等。
在图4所示出的框架中,与大部分应用程序有关的框架包括但不限于:核心服务层440中的基础框架和可触摸层480中的UIKit框架。基础框架提供许多基本的对象类和数据类型,为所有应用程序提供最基本的系统服务,和UI无关。而UIKit框架提供的类是基础的UI类库,用于创建基于触摸的用户界面,iOS应用程序可以基于UIKit框架来提供UI,所以它提供了应用程序的基础架构,用于构建用户界面,绘图、处理和用户交互事件,响应手势等等。
其中,在IOS系统中实现第三方应用程序与操作系统数据通信的方式以及原理可参考Android系统,本申请在此不再赘述。
其中,输入装置130用于接收输入的指令或数据,输入装置130包括但不限于键盘、鼠标、摄像头、麦克风或触控设备。输出装置140用于输出指令或数据,输出装置140包括但不限于显示设备和扬声器等。在一个示例中,输入装置130和输出装置140可以合设,输入装置130和输出装置140为触摸显示屏,该触摸显示屏用于接收用户使用手指、触摸笔等任何适合的物体在其上或附近的触摸操作,以及显示各个应用程序的用户界面。触摸显示屏通常设置在终端的前面板。触摸显示屏可被设计成为全面屏、曲面屏或异型屏。触摸显示屏还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合,本申请实施例对此不加以限定。
除此之外,本领域技术人员可以理解,上述附图所示出的终端的结构并不构成对终端的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,终端中还包括射频电路、输入单元、传感器、音频电路、无线保真(wirelessfidelity,WiFi)模块、电源、蓝牙模块等部件,在此不再赘述。
在本申请实施例中,各步骤的执行主体可以是上文介绍的终端。可选地,各步骤的执行主体为终端的操作系统。操作系统可以是安卓系统,也可以是IOS系统,或者其它操作系统,本申请实施例对此不作限定。
本申请实施例的终端,其上还可以安装有显示设备,显示设备可以是各种能实现显示功能的设备,例如:阴极射线管显示器(cathode ray tubedisplay,简称CR)、发光二极管显示器(light-emitting diode display,简称LED)、电子墨水屏、液晶显示屏(liquidcrystal display,简称LCD)、等离子显示面板(plasma displaypanel,简称PDP)等。用户可以利用终端101上的显示设备,来查看显示的文字、图像、视频等信息。所述终端可以是智能手机、平板电脑、游戏设备、AR(Augmented Reality,增强现实)设备、汽车、数据存储装置、音频播放装置、视频播放装置、笔记本、桌面计算设备、可穿戴设备诸如电子手表、电子眼镜、电子头盔、电子手链、电子项链、电子衣物等设备。
在图1所示的终端中,处理器110可以用于调用存储器120中存储的应用程序,并具体执行本申请实施例的拍照方法。
本申请实施例提供的技术方案中,在接收用于打开摄像头的指令时,通过摄像头周期性的采集预览图像,将采集的预览图像写入到预设大小的缓存空间中,由于缓存空间的大小是固定的,在缓存空间的存储空间不足的情况下仍然需要写入预览图像时,会将缓存空间中的历史预览图像删除,以便新的预览图像有足够的空间存储进来。在接收到拍照指令时,从缓存空间中存储的各个预览图像中选择一个清晰度最高的图像作为最终拍照图像,即时用户在使用手机进行拍照过程中发生抖动,手机仍然会采集到少量的清晰图像,从而解决了相关技术中抖动得到模糊的照片的问题,减少因抖动采集到模糊照片的可能性。
在下述方法实施例中,为了便于说明,仅以各步骤的执行主体为终端进行介绍说明。
下面将结合附图5-附图7,对本申请实施例提供的拍照方法进行详细介绍。其中,本申请实施例中的拍照装置可以是图5-图7所示的终端。
请参见图5,为本申请实施例提供了一种拍照方法的流程示意图。如图5所示,本申请实施例的所述方法可以包括以下步骤:
S501、接收摄像头打开指令。
其中,摄像头打开指令用于打开终端的摄像头,摄像头打开指令可以是终端中安装的应用程序触发的,例如:终端中的相机应用程序、即时通信应用程序或直播应用程序等,用户打开相机应用程序时,相机应用程序生成摄像头打开指令,相机应用程序将摄像头打开指令发送给终端的处理器,终端的处理器接收到摄像头打开指令,打开摄像头。
S502、响应于摄像头打开指令打开摄像头,以及通过摄像头持续采集预览图像。
其中,终端响应于摄像头打开指令打开摄像头,终端显示预览界面,预览界面上包括采集到的最新的预览图像,预览界面上提供所见即所得的图像,预览界面上还包括拍照按钮,拍照按钮用于触发终端执行拍照操作。终端通过摄像头持续采集预览图像,即终端通过摄像头周期性的采集预览图像,采集的时间间隔较小,便于能够实时采集到最新的预览图像,减少后续拍照的滞后性。
S503、将采集的预览图像写入到缓存空间中。
其中,缓存空间起到缓存的作用,缓存空间的大小是固定的,缓存空间中缓存最新的预览图像,在缓存空间中的存储空间不足时,需要将缓存空间中旧的预览图像删除,以便能存储进来新的预览图像。例如:缓存空间最大能存储8张预览图像,当缓存空间中已经存储有8张预览图像时,此时再向存储空间中写入新的预览图像时,需要将缓存空间中最先存储进来的预览图像删除,删除完成后,再将新的预览图像写入到缓存空间中,然后在记录该预览图像的写入时间。
S504、接收拍照指令时,在缓存空间中选择清晰度最高的预览图像作为拍照图像。
其中,拍照指令用于执行拍照操作,例如:预览界面上设置有拍照按钮,用户点击拍照按钮后,终端的触摸屏生成拍照指令,触摸屏向处理器发送拍照指令,终端的处理器接收拍照指令,响应于拍照指令从缓存空间中选择清晰度最高的预览图像作为拍照图像。清晰度是用于衡量图像质量的重要指标,图像不清晰表现出图像出现模糊的情况。
在一种可能的实施方式中,可以使用Brenner梯度函数来衡量图像的清晰度,具体公式如下:
D(f)=∑yx|f(x+2,y)-f(x,y)|2;其中,f(x,y)表示图像f对应像素点(x,y)的灰度值,D(f)为清晰度的计算结果。
在一种可能的实施方式中,可以使用Tenengrad梯度函数来衡量图像的清晰度,具体公式如下:
D(f)=∑yx|G(x,y)|,G(x,y)>T,
Figure BDA0002237622440000081
其中,T是给定的边缘检测阈值,Gx和Gy分别是像素点(x,y)处Sobel水平和垂直方向边缘检测算子的卷积,D(f)为清晰度的计算结果。
在一种可能的实施方式中,通过摄像头的图像传感器(image signal processor,ISP)获取预览图像的H1滤波器中像素的锐度,H2滤波器中像素的锐度,V滤波器中像素的锐度,将上述三个参数的参数值进行加权求和得到对焦准度,使用对焦准度来衡量图像的清晰度。
本申请实施例的方案在执行时,在接收用于打开摄像头的指令时,通过摄像头周期性的采集预览图像,将采集的预览图像写入到预设大小的缓存空间中,由于缓存空间的大小是固定的,在缓存空间的存储空间不足的情况下仍然需要写入预览图像时,会将缓存空间中的历史预览图像删除,以便新的预览图像有足够的空间存储进来。在接收到拍照指令时,从缓存空间中存储的各个预览图像中选择一个清晰度最高的图像作为最终拍照图像,即时用户在使用手机进行拍照过程中发生抖动,手机仍然会采集到少量的清晰图像,从而解决了相关技术中抖动得到模糊的照片的问题,减少因抖动采集到模糊照片的可能性。
参见图6,为本申请实施例提供的一种拍照的流程示意图。本实施例以拍照方法应用于终端中来举例说明,该拍照方法可以包括以下步骤:
S601、接收预设应用程序发送的摄像头打开指令。
其中,终端只有在接收到预设应用程序发送的摄像头打开指令时,才会执行后续的步骤,预设应用程序可以是相机应用程序。例如:用户点击相机应用成的图标时,相机应用程序生成摄像头打开指令,摄像头打开指令中携带相机应用程序的标识,用于表示是哪个应用程序发送的摄像头打开指令。
S602、响应于摄像头打开指令打开摄像头。
其中,终端响应于摄像头打开指令打开摄像头,终端显示预览界面,预览界面上显示采集到的最新的预览图像,预览界面上提供所见即所得的图像,预览界面上海包括拍照按钮,拍照按钮用于触发终端执行拍照操作。
S603、通过摄像头持续采集预览图像。
终端通过摄像头持续采集预览图像,即终端周期性的采集预览图像,采集的时间间隔可以根据实际需求而定,采集的时间间隔一般较小,减少后续拍照的滞后性。
S604、在内存中分配一块预设大小的空闲存储空间,将空闲存储空间作为缓存空间。
其中,终端在内存中搜索一块预设大小的连续的空间存储空间,将空间存储空间作为缓存空间,缓存空间的大小可以根据实际需求来定,本申请实施例不作限制。例如:缓存空间最大可用于存储8张预览图像。
应理解,缓存空间中除了存储预览图像,还可以存储预览图像的元数据,例如:预览图像的分辨率、格式、曝光度、H1滤波器中像素的锐度、H2滤波器中像素的锐度和V滤波器中像素的锐度中的一种或多种。
S605、确定预览图像的大小。
其中,对于采集的每个预览图像来说,终端确定预览图像的大小。
S606、在缓存空间的剩余空间大小小于预览图像的大小时,确定缓存空间中存储时间最长的图像。
其中,终端确定缓存空间中剩余空间大小,在剩余空间大小小于预览图像的大小时,说明缓存空间中的剩余空间不足,获取缓存空间中存储时间最长的图像,存储时间表示图像从写入到缓存空间起算。
S607、删除存储时间最长的图像,以及将预览图像写入到缓存空间中。
其中,终端删除缓存空间中存储时间最长的图像,将采集到的预览图像写入到缓存空间中。终端持续的执行S605-S607直到摄像头被关闭。
在一种可能的实施方式中,缓存空间为一个FIFO队列,FIFO队列包括多个元素,每个元素为预览图像和预览图像的元数据,终端采集到一个预览图像时,获取预览图像的元数据,使用先进先出的方式将预览图像和元数据写入到FIFO队列中。
举例来说,参见图6所示,FIFO队列中最大存储8个元素,每个元素为预览图像和元数据,终端采集到一个预览图像,获取预览图像的元数据。终端在写入该预览图像和元数据之前,判断FIFO队列中没有剩余的空间,终端首先将位于队头的元素1进行出队操作,将元素1已入到垃圾箱中,然后将待写入的预览图像和元数据写入到FIFO队列中。垃圾箱是终端的存储器中的一个存储空间,用于存储丢弃的数据,例如:删除的数据。
S608、接收到拍照指令时,在缓存中间中选择对焦准度最大的预览图像作为拍照图像。
其中,终端获取缓存空间中存储的各个图像的H1的参数值、H2的参数值和V的参数值;其中,H1为H1滤波器中像素的锐度,H2为H2滤波器中像素的锐度,V表示V滤波器中像素的锐度;将所述H1的参数值、所述H2的参数值和V的参数值进行加权求和得到对焦准度;将所述缓存空间中对焦准度最大的图像最为拍照图像。
例如,对焦准度使用如下公式来计算:
(0.3*fv_h1+0.3*fv_h2+0.4*fv_v)。
其中fv_h1,fv_h2,fv_v是图像传感器输出的预览图像的元数据meta data中的几个参数。fv_h1表示H1滤波器中像素的锐度;fv_h2表示H2滤波器中像素的锐度;fv_v表示V滤波器中像素的锐度。对焦准度越大,代表图片越清晰。
举例来说,参见图7所示,终端接收到拍照指令时,获取FIFO队列中各个预览图像的对焦准度,比较各个图像的对焦准度,发现图像6的对焦准度最大,将图像6作为最终的拍照图像。
S608、接收用于关闭摄像头的指令时,释放缓存空间。
其中,终端在接收到关闭摄像头的指令时,停止通过摄像头采集预览图像,释放缓存空间,删除缓存空间中的预览图像。
本申请实施例的方案在执行时,在接收用于打开摄像头的指令时,通过摄像头周期性的采集预览图像,将采集的预览图像写入到预设大小的缓存空间中,由于缓存空间的大小是固定的,在缓存空间的存储空间不足的情况下仍然需要写入预览图像时,会将缓存空间中的历史预览图像删除,以便新的预览图像有足够的空间存储进来。在接收到拍照指令时,从缓存空间中存储的各个预览图像中选择一个清晰度最高的图像作为最终拍照图像,即时用户在使用手机进行拍照过程中发生抖动,手机仍然会采集到少量的清晰图像,从而解决了相关技术中抖动得到模糊的照片的问题,减少因抖动采集到模糊照片的可能性。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
请参见图8,其示出了本申请一个示例性实施例提供的拍照装置的结构示意图。以下简称拍照装置8,拍照装置8可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。拍照装置8包括接收单元801、采集单元802、缓存单元803和拍照单元804。
接收单元801,用于接收摄像头打开指令。
采集单元802,用于响应于摄像头打开指令打开摄像头,以及通过所述摄像头持续采集预览图像;
缓存单元803,用于将采集的预览图像写入到缓存空间中;
拍照单元804,用于接收到拍照指令时,在所述缓存空间中选择清晰度最高的预览图像作为拍照图像。
在一个或多个实施例中,所述将采集的图像写入到缓存中,包括:
确定所述预览图像的大小;
在所述缓存空间的剩余空间大小小于所述预览图像的大小时,确定所述缓存空间中存储时间最长的图像;
删除所述存储时间最长的图像,以及将所述预览图像写入到所述缓存空间中。
在一个或多个实施例中,所述缓存空间为先进先出FIFO队列。
在一个或多个实施例中,在所述缓存空间中选择清晰度最高的图像作为拍照图像,包括:
获取缓存空间中存储的各个图像的H1的参数值、H2的参数值和V的参数值;其中,H1为H1滤波器中像素的锐度,H2为H2滤波器中像素的锐度,V表示V滤波器中像素的锐度;
将所述H1的参数值、所述H2的参数值和V的参数值进行加权求和得到对焦准度;
将所述缓存空间中对焦准度最大的图像最为拍照图像。
在一个或多个实施例中,拍照装置8还包括:
释放单元,用于接收到用于关闭所述摄像头的指令时,释放所述缓存空间。
在一个或多个实施例中,拍照装置8还包括:
分配单元,用于在内存中分配一块预设大小的空闲存储空间,将所述空闲存储空间作为所述缓存空间。
在一个或多个实施例中,所述接收摄像头打开指令,包括:
接收预设应用程序发送的摄像头打开指令。
需要说明的是,上述实施例提供的拍照装置8在执行内存释放方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的内存释放方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在接收用于打开摄像头的指令时,通过摄像头周期性的采集预览图像,将采集的预览图像写入到预设大小的缓存空间中,由于缓存空间的大小是固定的,在缓存空间的存储空间不足的情况下仍然需要写入预览图像时,会将缓存空间中的历史预览图像删除,以便新的预览图像有足够的空间存储进来。在接收到拍照指令时,从缓存空间中存储的各个预览图像中选择一个清晰度最高的图像作为最终拍照图像,即时用户在使用手机进行拍照过程中发生抖动,手机仍然会采集到少量的清晰图像,从而解决了相关技术中抖动得到模糊的照片的问题,减少因抖动采集到模糊照片的可能性。
本申请实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图5-图7所示实施例的方法步骤,具体执行过程可以参见图5-图7所示实施例的具体说明,在此不进行赘述。
本申请还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的拍照方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

Claims (10)

1.一种拍照方法,其特征在于,所述方法包括:
接收摄像头打开指令;
响应于摄像头打开指令打开摄像头,以及通过所述摄像头持续采集预览图像;
将采集的预览图像写入到缓存空间中;
接收到拍照指令时,在所述缓存空间中选择清晰度最高的预览图像作为拍照图像。
2.根据权利要求1所述的方法,其特征在于,所述将采集的图像写入到缓存中,包括:
确定所述预览图像的大小;
在所述缓存空间的剩余空间大小小于所述预览图像的大小时,确定所述缓存空间中存储时间最长的图像;
删除所述存储时间最长的图像,以及将所述预览图像写入到所述缓存空间中。
3.根据权利要求1所述的方法,其特征在于,所述缓存空间为先进先出FIFO队列。
4.根据权利要求1所述的方法,其特征在于,在所述缓存空间中选择清晰度最高的图像作为拍照图像,包括:
获取缓存空间中存储的各个图像的H1的参数值、H2的参数值和V的参数值;其中,H1为H1滤波器中像素的锐度,H2为H2滤波器中像素的锐度,V表示V滤波器中像素的锐度;
将所述H1的参数值、所述H2的参数值和V的参数值进行加权求和得到对焦准度;
将所述缓存空间中对焦准度最大的图像最为拍照图像。
5.根据权利要求1所述的方法,其特征在于,接收到拍照指令时,在所述缓存空间中选择清晰度最高的图像作为拍照图像之后,还包括:
接收到用于关闭所述摄像头的指令时,释放所述缓存空间。
6.根据权利要求1所述的方法,其特征在于,所述将采集的图像写入到缓存空间中之前,还包括:
在内存中分配一块预设大小的空闲存储空间,将所述空闲存储空间作为所述缓存空间。
7.根据权利要求1所述的方法,其特征在于,所述接收摄像头打开指令,包括:
接收预设应用程序发送的摄像头打开指令。
8.一种拍照装置,其特征在于,所述装置包括:
接收单元,用于接收摄像头打开指令;
采集单元,用于响应于摄像头打开指令打开摄像头,以及通过所述摄像头持续采集预览图像;
缓存单元,用于将采集的预览图像写入到缓存空间中;
拍照单元,用于接收到拍照指令时,在所述缓存空间中选择清晰度最高的预览图像作为拍照图像。
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1~7任意一项的方法步骤。
10.一种终端,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1~7任意一项的方法步骤。
CN201910988985.6A 2019-10-17 2019-10-17 拍照方法、装置、存储介质及终端 Pending CN110881104A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910988985.6A CN110881104A (zh) 2019-10-17 2019-10-17 拍照方法、装置、存储介质及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910988985.6A CN110881104A (zh) 2019-10-17 2019-10-17 拍照方法、装置、存储介质及终端

Publications (1)

Publication Number Publication Date
CN110881104A true CN110881104A (zh) 2020-03-13

Family

ID=69728071

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910988985.6A Pending CN110881104A (zh) 2019-10-17 2019-10-17 拍照方法、装置、存储介质及终端

Country Status (1)

Country Link
CN (1) CN110881104A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111447370A (zh) * 2020-05-19 2020-07-24 Oppo广东移动通信有限公司 摄像头访问方法、访问装置、终端设备及可读存储介质
CN111988530A (zh) * 2020-09-01 2020-11-24 青岛海信移动通信技术股份有限公司 移动终端及其拍照方法
CN113992854A (zh) * 2021-10-29 2022-01-28 Oppo广东移动通信有限公司 图像预览方法、装置、电子设备和计算机可读存储介质
WO2023056795A1 (zh) * 2021-10-09 2023-04-13 华为技术有限公司 快速拍照方法、电子设备及计算机可读存储介质
CN117119318A (zh) * 2023-02-20 2023-11-24 荣耀终端有限公司 图像处理方法及装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104580907A (zh) * 2014-12-31 2015-04-29 广东欧珀移动通信有限公司 一种防抖的拍照方法及装置
CN104618640A (zh) * 2014-12-30 2015-05-13 广东欧珀移动通信有限公司 一种拍照方法及装置
CN107105150A (zh) * 2016-02-23 2017-08-29 中兴通讯股份有限公司 一种选择待输出照片的方法、拍照方法及其对应装置
CN107155067A (zh) * 2017-07-10 2017-09-12 珠海市魅族科技有限公司 拍照控制方法及装置、终端及存储介质
CN107172296A (zh) * 2017-06-22 2017-09-15 维沃移动通信有限公司 一种图像拍摄方法及移动终端
CN108886577A (zh) * 2017-10-30 2018-11-23 深圳市大疆创新科技有限公司 拍摄控制方法、拍摄设备及无人机
CN110062150A (zh) * 2018-01-19 2019-07-26 上海富瀚微电子股份有限公司 一种自动对焦方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104618640A (zh) * 2014-12-30 2015-05-13 广东欧珀移动通信有限公司 一种拍照方法及装置
CN104580907A (zh) * 2014-12-31 2015-04-29 广东欧珀移动通信有限公司 一种防抖的拍照方法及装置
CN107105150A (zh) * 2016-02-23 2017-08-29 中兴通讯股份有限公司 一种选择待输出照片的方法、拍照方法及其对应装置
CN107172296A (zh) * 2017-06-22 2017-09-15 维沃移动通信有限公司 一种图像拍摄方法及移动终端
CN107155067A (zh) * 2017-07-10 2017-09-12 珠海市魅族科技有限公司 拍照控制方法及装置、终端及存储介质
CN108886577A (zh) * 2017-10-30 2018-11-23 深圳市大疆创新科技有限公司 拍摄控制方法、拍摄设备及无人机
CN110062150A (zh) * 2018-01-19 2019-07-26 上海富瀚微电子股份有限公司 一种自动对焦方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111447370A (zh) * 2020-05-19 2020-07-24 Oppo广东移动通信有限公司 摄像头访问方法、访问装置、终端设备及可读存储介质
CN111447370B (zh) * 2020-05-19 2021-07-27 Oppo广东移动通信有限公司 摄像头访问方法、访问装置、终端设备及可读存储介质
CN111988530A (zh) * 2020-09-01 2020-11-24 青岛海信移动通信技术股份有限公司 移动终端及其拍照方法
WO2023056795A1 (zh) * 2021-10-09 2023-04-13 华为技术有限公司 快速拍照方法、电子设备及计算机可读存储介质
CN113992854A (zh) * 2021-10-29 2022-01-28 Oppo广东移动通信有限公司 图像预览方法、装置、电子设备和计算机可读存储介质
CN117119318A (zh) * 2023-02-20 2023-11-24 荣耀终端有限公司 图像处理方法及装置

Similar Documents

Publication Publication Date Title
CN109782976B (zh) 文件处理方法、装置、终端及存储介质
CN110475072B (zh) 拍摄图像的方法、装置、终端和存储介质
CN110881104A (zh) 拍照方法、装置、存储介质及终端
US11146739B2 (en) Method for image shooting, terminal device, and storage medium
CN111597000B (zh) 一种小窗口管理方法及终端
CN111225138A (zh) 摄像头的控制方法、装置、存储介质及终端
US20230035047A1 (en) Remote assistance method, device, storage medium, and terminal
CN108845741B (zh) 一种ar表情的生成方法、客户端、终端和存储介质
CN109656445B (zh) 内容处理方法、装置、终端及存储介质
CN114205635B (zh) 一种直播评论展示方法、装置、设备及介质
CN111127469A (zh) 缩略图显示方法、装置、存储介质以及终端
US11102397B2 (en) Method for capturing images, terminal, and storage medium
CN111225232A (zh) 基于视频的贴纸动画引擎、实现方法、服务器和介质
WO2023169305A1 (zh) 特效视频生成方法、装置、电子设备及存储介质
CN111124668A (zh) 内存释放方法、装置、存储介质及终端
WO2019047187A1 (zh) 导航栏控制方法及装置
CN111866372A (zh) 自拍方法、装置、存储介质以及终端
CN110968815A (zh) 页面刷新方法、装置、终端及存储介质
CN107864333B (zh) 图像处理方法、装置、终端及存储介质
CN112995562A (zh) 摄像头的调用方法、装置、存储介质及终端
CN110730300A (zh) 相机控制方法、装置、存储介质和终端
CN113490028A (zh) 视频处理方法、装置、存储介质以及终端
CN113419650A (zh) 一种数据移动方法、装置、存储介质及电子设备
CN111538997A (zh) 图像处理方法、装置、存储介质以及终端
CN110990095A (zh) 寄宿应用展示方法、设备以及计算机可读介质

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200313