CN117939314A - 生成动态图像的方法、计算设备和存储介质 - Google Patents

生成动态图像的方法、计算设备和存储介质 Download PDF

Info

Publication number
CN117939314A
CN117939314A CN202410088926.4A CN202410088926A CN117939314A CN 117939314 A CN117939314 A CN 117939314A CN 202410088926 A CN202410088926 A CN 202410088926A CN 117939314 A CN117939314 A CN 117939314A
Authority
CN
China
Prior art keywords
image
processor
static
image sequence
dynamic
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
CN202410088926.4A
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.)
Wuhan Xingji Meizu Technology Co ltd
Original Assignee
Wuhan Xingji Meizu Technology 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 Wuhan Xingji Meizu Technology Co ltd filed Critical Wuhan Xingji Meizu Technology Co ltd
Priority to CN202410088926.4A priority Critical patent/CN117939314A/zh
Publication of CN117939314A publication Critical patent/CN117939314A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Studio Devices (AREA)

Abstract

本公开涉及一种生成动态图像的方法、计算设备和存储介质等。该方法包括:获得启动拍摄时刻拍摄的第一静态图像,以及在所述启动拍摄时刻的预定时段内拍摄的图像序列,其中,所述图像序列包括多张尺寸相同的第二静态图像,且所述第一静态图像和所述第二静态图像的尺寸不同;将所述第一静态图像根据所述第二静态图像的尺寸进行调整;将尺寸调整后的第一静态图像根据拍摄时间插入所述图像序列中得到新图像序列;基于所述新图像序列生成所述动态图像。利用本公开的方法,能够在用户拍摄照片时自动生成与其对应的动态图像。

Description

生成动态图像的方法、计算设备和存储介质
技术领域
本公开涉及动态图像生成领域,特别涉及一种生成动态图像的方法、计算设备和存储介质等。
背景技术
目前在具有相机功能的各种终端设备(例如Android手机)中,用户使用相机一般只能拍摄照片或视频,如果需要获得类似GIF之类的动态图像,往往需要其他软件后续合成,比较繁琐。
发明内容
本公开实施例提供了生成动态图像的方法以及相应的执行这些方法的计算设备、计算机程序产品和非暂时性机器可读存储介质。
根据本公开实施例的第一个方面,提供了一种生成动态图像的方法,包括:获得启动拍摄时刻拍摄的第一静态图像,以及在所述启动拍摄时刻的预定时段内拍摄的图像序列,其中,所述图像序列包括多张尺寸相同的第二静态图像,且所述第一静态图像和所述第二静态图像的尺寸不同;将所述第一静态图像根据所述第二静态图像的尺寸进行调整;将尺寸调整后的第一静态图像根据拍摄时间插入所述图像序列中得到新图像序列;基于所述新图像序列生成所述动态图像。
可选地,基于所述新图像序列生成所述动态图像,包括:检测所述新图像序列中每张静态图像的主要对象;对所述新图像序列的尺寸进行裁切并保留包含所述主要对象的区域;以及基于裁切后的新图像序列生成所述动态图像,其中,裁切后的新图像序列和所述图像序列的宽高比例一致。
可选地,所述主要对象是根据预设的规则从检测出的对象中确定的。
可选地,所述规则包括:所述对象的类别的优先级、所述对象的轮廓的完整程度、所述对象的尺寸的大小、所述对象的位置的居中程度、以及/或者用户对所述对象的偏好。
可选地,所述方法还包括:对裁切后的新图像序列中每张静态图像除了所述主要对象以外的区域进行处理,以凸显所述主要对象的显示。
可选地,所述处理包括对所述主要对象以外的区域进行像素透明化处理或虚化处理。
可选地,所述方法还包括:接收对所述动态图像的参数的设置;以及根据所述动态图像的参数确定要拍摄的所述图像序列的参数;其中,设置的所述动态图像的参数包括:动态图像的质量、动态图像的帧率、和/或动态图像的最大时长。
可选地,所述方法还包括:将所述第一静态图像和所述动态图像相关联,使得所述第一静态图像能够指向所述动态图像。
可选地,所述预定时段包括启动拍摄时刻前的第一时段和启动拍摄时刻后的第二时段,且所述第一时段和所述第二时段的时长相同,所述第一时段内的第二静态图像是进入拍摄界面后自动拍摄获得的;并且/或者所述动态图像的格式为GIF格式或视频格式。
可选地,所述方法还包括:删除所述第一时段之前自动拍摄获得的图像。
根据本公开实施例的第二个方面,提供了一种计算设备,包括:处理器;以及存储器,其上存储有可执行代码,当可执行代码被处理器执行时,使处理器执行如上述第一个方面中的任一方案所述的方法。
根据本公开实施例的第三个方面,提供了一种非暂时性机器可读存储介质,其上存储有可执行代码,当可执行代码被电子设备的处理器执行时,使处理器执行如上述第一个方面中的任一方案所述的方法。
根据本公开实施例的第四个方面,提供了一种计算机程序产品,包括可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上述第一个方面中的任一方案所述的方法。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1A示例性地示出了根据本公开至少一个实施例的手机的结构示意图。
图1B示例性地示出了根据本公开至少一个实施例的生成动态图像的方法的示意性流程图。
图2示例性地示出了根据本公开至少一个实施例的生成动态图像的方法的示意性流程图。
图3示例性地示出了根据本公开至少一个实施例的相机设置界面的显示效果示意图。
图4示例性地示出了根据本公开至少一个实施例的相机设置界面的显示效果示意图。
图5示例性地示出了根据本公开至少一个实施例的在用户进入拍摄界面后按下快门拍照之前自动拍摄获得第二静态图像的操作的示意图。
图6示例性地示出了根据本公开至少一个实施例的在用户进入拍摄界面后按下快门拍照前后自动拍摄获得第二静态图像的操作的示意图。
图7示例性地示出了根据本公开至少一个实施例的对新图像序列中的某一静态图像的尺寸进行裁切前后的对比示意图。
图8示例性地示出了根据本公开至少一个实施例的将第一静态图像和动态图像相关联并播放动态图像的显示效果示意图。
图9示例性地示出了根据本公开至少一个实施例的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本公开提出了一种生成动态图像的方法,其能够在用户拍摄照片时自动生成与其对应的动态图像。另外,在一些实施例中,可以允许用户设置生成的动态图像的参数,并且/或者突出显示用户关注的对象,提高用户体验。
本公开实施例提供的生成动态图像的方法可以应用于各种类型的手持设备(比如单独的照相机、摄像机、手机、个人数字助理(personal digital assistant,PDA)等)、各种类型的计算机(比如平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personalcomputer,UMPC)、上网本、膝上型计算机等)、可穿戴设备、车载设备、增强现实(augmentedreality,AR)/虚拟现实(virtual reality,VR)设备等终端设备上,本公开实施例对终端设备的具体类型不作任何限制,只要该终端设备具有照相功能。
作为示例而非限定,当所述终端设备为可穿戴设备时,该可穿戴设备还可以是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如配置有远场通信模块和/或近场通信模块的手套、手表、AR((Augmented Reality,增强现实)头戴显示设备、VR(Virtual Reality,虚拟现实)头戴显示设备或者MR(Mixed Reality,混合现实)头戴显示设备等。
在一些实施例中,上述终端设备可以是具备如图1A所示的示例性硬件结构的示例性的手机100,如图1A所示,手机100具体可以包括:射频(Radio Frequency,RF)电路110、存储器120、输入单元130、显示单元140、传感器150、音频电路160、短距离无线通信模块170、处理器180、以及电源190等部件。本领域技术人员可以理解,图1A中示出的手机100的结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1A对手机100的各个构成部件进行具体的介绍:
RF电路110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器180处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(LowNoiseAmplifier,LNA)、双工器等。此外,RF电路110还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,所述无线通信可以包括全球移动通讯系统(Global System For Mobile Communications,GSM),通用分组无线服务(GeneralPacket Radio Service,GPRS),码分多址接入(Code DivisionMultiple Access,CDMA),宽带码分多址(Wideband Code Division Multiple Access,WCDMA),时分码分多址(Time-Division Code Division Multiple Access,TD-SCDMA),长期演进(Long TermEvolution,LTE),新无线(New Radio,NR),GNSS,FM,低轨卫星连接和/或IR技术等。所述GNSS可以包括全球卫星定位系统(Global Positioning System,GPS),全球导航卫星系统(Global Navigation Satellite System,GLONASS),北斗卫星导航系统(BeiDouNavigation Satellite System,BDS),准天顶卫星系统(Quasi-Zenithsatellite System,QZSS)和/或星基增强系统(Satellite Based Augmentation Systems,SBAS)等。
存储器120可用于存储软件程序以及模块,处理器180通过运行存储在存储器120的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如图片、音频数据、电话本等)等。此外,存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。具体地,该存储器120可以存储有手机100拍摄的静态图像以及基于静态图像生成的动态图像。
输入单元130可用于接收输入的数字或字符信息,以及产生与手机100的用户设置以及功能控制有关的键信号输入。具体地,输入单元130可包括触控面板131以及其他输入设备132。触控面板131,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指(例如单指或多指)、触笔等任何适合的物体或附件在触控面板131上或在触控面板131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器180,并能接收处理器180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板131。除了触控面板131,输入单元130还可以包括其他输入设备132。具体地,其他输入设备132可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。例如,手机100可以响应于用户在输入单元130上的输入启动手机100的相机,并且继续响应于用户在相机界面上的输入启动拍摄从而获得静态图像。
显示单元140可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元140可包括显示面板141,可选的,可以采用液晶显示器(LiquidCrystalDisplay,LCD)、发光二极管(Light Emitting Diode,LED)、有机发光二极管(Organic Light-Emitting Diode,OLED)、有源矩阵有机发光二极管(Active-MatrixOrganic Light Emitting Diode,AMOLED)等形式来配置显示面板141。进一步的,触控面板131可覆盖显示面板141,当触控面板131检测到在其上或附近的触摸操作后,传送给处理器180以确定触摸事件的类型,随后处理器180根据触摸事件的类型在显示面板141上提供相应的视觉输出。虽然在图1A中,触控面板131与显示面板141是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板131与显示面板141集成而实现手机的输入和输出功能。例如,在显示面板141上可以显示手机100的主界面,主界面上可以包括手机100预安装的应用的图标(例如相机的图标、电话的图标、短信的图标等),还可以包括用户下载的第三方应用的图标,例如娱乐、社交、支付应用等。
手机100还可包括至少一种传感器150,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板141的亮度,接近传感器可在手机移动到耳边时,关闭显示面板141和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路160、扬声器161,传声器162可提供用户与手机之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出;另一方面,传声器162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出处理器180处理后,经RF电路110以发送给比如另一电子设备,或者将音频数据输出至存储器120以便进一步处理。
Wi-Fi、蓝牙、近距离无线通信(Near Field Communication,NFC)以及超宽带(Ultra Wide Band,UWB)等通信技术属于短距离无线传输技术,手机通过短距离无线模块170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。上述短距离无线模块170可以包括Wi-Fi芯片、蓝牙芯片、NFC芯片以及UWB芯片,通过该Wi-Fi芯片可以实现手机100与其他电子设备进行Wi-Fi Direct连接的功能,也可以使手机100工作在能够提供无线接入服务,允许其它无线设备接入的AP模式(AccessPoint模式)或工作在可以连接到AP不接受无线设备接入的STA模式(Station模式),从而建立手机100与其他Wi-Fi设备的点对点通信。
处理器180是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器120内的软件程序和/或模块,以及调用存储在存储器120内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器180可包括一个或多个处理单元;可选地,处理器180例如可以包括应用处理器(ApplicationProcessor,AP),调制解调处理器,图形处理器(Graphics ProcessingUnit,GPU),图像信号处理器(Image Signal Processor,ISP),控制器,视频编解码器,数字信号处理器(DigitalSignal Processor,DSP),基带处理器,和/或神经网络处理器(Neural-NetworkProcessing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
手机100还包括给各个部件供电的电源190(比如电池),优选的,电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
手机100还包括摄像头(图中未示出)。可选地,摄像头在手机上的位置可以为前置的,也可以为后置的,本公开实施例对此不作限定。在一些示例中,手机可以包括多个前置摄像头和/或多个后置摄像头,例如前置摄像头包括一个主前置摄像头和一个用于IR(红外)校光的辅助摄像头,后置摄像头例如包括一个长焦摄像头、一个广角摄像头和一个超广角摄像头,或者是其中的一个或者多个的组合。在另一些示例中,手机100还包括前置闪光灯和/或后置闪光灯,例如前置闪光灯可以围绕一个前置摄像头形成,或者和前置摄像头并排设置,例如后置闪光灯可以围绕一个后置摄像头形成,或者和后置摄像头并排/并列/呈环形设置等。其中,手机可以通过摄像头采集当前场景的场景图像,并通过对场景图像进行解析,确定场景信息以及场景类型。或者,手机还可以通过摄像头采集当前场景的静态图像,并经过处理器基于静态图像生成动态图像。
图1B示例性地示出了根据本公开至少一个实施例的生成动态图像的方法的示意性流程图。
下面以终端设备为手机对本公开示例性的生成动态图像的方法进行说明。
如图1B所示,在步骤S110中,获得启动拍摄时刻拍摄的第一静态图像,以及在所述启动拍摄时刻的预定时段内拍摄的图像序列。该图像序列可以包括多张尺寸相同的第二静态图像,其中第二静态图像的尺寸不同于第一静态图像的尺寸。
在本公开中,“第一静态图像”也可称为“原始静态照片”,指的是用户使用手机的相机拍摄得到的照片。“启动拍摄时刻”指的是手机相机启动拍摄的时刻。“动态图像”指的是与原始静态照片对应的动态图像,其还可以包括在用户按下快门时刻前和/或后预定时间内自动拍摄的多帧静态图像。利用本公开的方法自动生成动态图像,不仅能记录手机相机启动拍摄时刻的景象,还能记录手机相机启动拍摄之前和/或之后的一段时间内的景象,可能能够更好地捕捉到用户期望的画面,避免用户按快门时刻不够准确带来的失误。在一些示例中,“图像序列”指的是生成动态图像所需的按顺序排列的多张静态图像。
例如,启动拍摄时刻可以是用户在手机的拍摄界面按下快门图标的时刻,也可以是用户在手机的拍摄界面使用例如语音指令、手势指令或者其他合适的指令使得手机相机启动拍摄的时刻,或者还可以是手机拍摄界面下,由和手机建立通信连接的例如智能眼镜、智能指环等可穿戴设备发出拍摄指令时的时刻。
在一些实施方式中,可以在启动拍摄时刻按通用逻辑(比如目前手机相机常用的用于获得照片的处理)获得第一静态图像。
例如,启动拍摄时刻时手机的镜头接收环境的光线通过滤光片后被过滤形成单色光(例如红黄蓝或者其它色彩),然后内置的CMOS(Complementary Metal OxideSemiconductor,互补金属氧化物半导体)传感器接收单色光转换为数字信号(例如生成RawImage,原始图片),最后将原始图片通过手机内的ISP(Image Signal Processor,图像信号处理器)对原始图片进行矫正(例如坏点矫正、阴影矫正、色彩矫正)、白平衡处理、色彩降噪、边缘增强等一系列处理后得到第一静态图像。可以理解,手机的用户可以通过设置第一静态图像的清晰度来调节尺寸,例如设置成普通图像或者高清图像,从而使得手机输出的图像尺寸、分辨率不同。
在一些实施方式中,可以在进入拍摄界面后(例如用户打开相机应用进行预览时)按预设的时间间隔自动拍摄静态图像,并将其最新的一部分作为图像序列中的至少一部分第二静态图像。如前所述,图像序列中的第二静态图像是在启动拍摄时刻的预定时段内拍摄的。例如,该预定时段可以包括启动拍摄时刻前的第一时段和启动拍摄时刻后的第二时段,而第一时段内的第二静态图像是进入拍摄界面后自动拍摄获得的。由于无法判断用户何时启动拍摄,因此可以在用户打开相机应用进行预览时保持按预设的时间间隔(比如预设的帧率)自动实时拍摄静态图像,并仅保留最新的第一时段内拍摄的图像,而删除第一时段之前自动拍摄获得的图像。可以分别预先设置第一时段和第二时段的时长,二者可以相同或不同。也可以根据需要仅设置第一时段或第二时段。
在一些情况下,为了避免生成的动态图像过大或者为了提高动态图像生成的速度等,可以适当减小所拍摄的第二静态图像的尺寸,即第二静态图像的尺寸小于第一静态图像的尺寸。
在一些实施方式中,比如在获得前述的图像序列之前还可以预先设置动态图像的参数,并以此确定拍摄图像序列时的参数。例如,本公开的方法还可以接收对动态图像的参数的设置,并且根据动态图像的参数确定要拍摄的图像序列的参数;其中,设置的动态图像的参数可以包括:动态图像的质量、动态图像的帧率、和/或动态图像的最大时长。例如,可以将设置的动态图像的帧率作为拍摄图像序列时的帧率,将设置的最大时长作为前述的预定时段,并将第一时段和第二时段均设为该最大时长的一半。另外,例如,还可以根据设置的动态图像的质量来相应地确定要拍摄的第二静态图像的尺寸,比如,可以预先设定不同质量等级对应的第二静态图像的尺寸,一些示例中质量等级越高尺寸越大,在另一些示例中,质量等级越高还表示图像具有更高的分辨率,即在图像的单位面积上具有更多的像素。
然后,在步骤S120中,将所述第一静态图像根据所述第二静态图像的尺寸进行调整。
在一些实施方式中,可以先将第一静态图像复制一份保留在相册中,然后再采用各种常规方式将第一静态图像的尺寸进行缩放以变为与第二静态图像相同或基本相同的尺寸。这样,就可以既保留原有的第一静态图像,也可以得到缩放后的第一静态图像。
然后,在步骤S130中,将尺寸调整后的第一静态图像根据拍摄时间插入所述图像序列中得到新图像序列。
在一些实施方式中,可以按照拍摄时间从前到后的顺序排列该新图像序列中的第一静态图像和第二静态图像。例如,可以将尺寸调整后的第一静态图像插入前述的第一时段内拍摄的第二静态图像与第二时段内拍摄的第二静态图像之间。
然后,在步骤S140中,基于所述新图像序列生成所述动态图像。
在一些实施方式中,该动态图像的格式可以为GIF格式或视频格式。可以按照预设的帧率以各种方式将该新图像序列合成为动态图像。
在一些实施方式中,在生成动态图像之前还可以先对该新图像序列进行一些处理,例如,对该新图像序列中的每张静态图像进行裁切等处理。在一些示例中,这些处理可以包括:检测新图像序列中每张静态图像的主要对象;对新图像序列的尺寸进行裁切并保留包含该主要对象的区域;其中,裁切后的新图像序列和原来的图像序列的宽高比例一致。然后,可以基于裁切后的新图像序列生成动态图像。例如,可以采用各种图像识别技术来检测出各静态图像中包含的所有对象,然后从中选出一个或更多个作为主要对象。
在一些示例中,上述的主要对象可以是根据预设的规则从检测出的对象中确定的。该规则可以包括:对象的类别的优先级、对象的轮廓的完整程度、对象的尺寸的大小、对象的位置的居中程度、以及/或者用户对对象的偏好。例如,可以综合考虑多个规则来确定主要对象,比如按照各个规则对各个对象分别打分再进行加权求和来获得其最终的分数,并选取分数最高的一个或更多个对象作为主要对象。
在一些示例中,这些处理还可以包括:对裁切后的新图像序列中每张静态图像除了主要对象以外的区域进行处理,以凸显主要对象的显示。例如,可以对主要对象以外的区域进行像素透明化处理或虚化处理。
在一些实施方式中,在生成动态图像之后,本公开的方法还可以包括:将所述第一静态图像和所述动态图像相关联,使得所述第一静态图像能够指向所述动态图像。例如,可以将第一静态图像和动态图像的路径在系统中进行记录关联,而且可以将第一静态图像作为照片保存在相册中,当用户在相册中查看指定照片时,可通过指定方式查看其关联的动态图像。
另外,在一些实施方式中,在生成动态图像之后,可以对动态图像整体或其中某一帧的静态图像进行与照片相同的编辑操作,例如调节色调、对比度等。另外还可以对动态图像进行裁剪,去除其中一部分的静态图像帧,比如将动态图像从初始的4s时长裁剪为2s时长。
下面将结合图2到图8更详细地描述本公开的一个示例性方法。应理解,图2到图8中的各步骤、界面或操作等仅仅是示例性的而非限制性的,并不意图限制本公开的范围。图2到图8中的各步骤、界面或操作的细节或可替代方式等可以参照前面结合图1B所描述的内容,在此不再赘述。稍后描述的图2到图8中的各种细节也可以与前面结合图1B描述的各个实施例或示例结合使用。
图2示例性地示出了根据本公开至少一个实施例的生成动态图像的方法的示意性流程图。
如图2所示,在步骤S210处,判断是否开启了动态图像实时生成功能。例如,在本公开的方法所应用的终端设备的系统软件或相机应用中可以提供如图3所示的一个相机设置界面,供用户选择是否开启动态图像实时生成的功能。
若不开启,则进行到图2中的步骤S260,其中在用户按下快门前后不用做额外的处理,按通用逻辑生成原始静态照片即可。
若开启,则进行到图2中的步骤S211及其之后的流程,从而在拍照获得原始静态照片的同时自动生成动态图像。
在步骤S211中,可以设置生成动态图像的参数。例如,在本公开的方法所应用的终端设备(例如手机)的系统软件或相机应用中可以提供如图4所示的一个相机设置界面,在用户选择开启动态图像实时生成的功能后,提供动态图像质量、动态图像帧率和动态图像最大时长三个参数供用户设置。如图4所示,可将动态图像质量分为高、中、低三个等级供用户选择,另外用户还可以填写一定范围内的动态图像帧率,比如10帧每秒(fps),还可以填写一定范围内的动态图像最大时长,比如4s,并且可以将最大时长平分到拍摄前后,即生成动态图像所需的图像序列可以包括拍摄前后各2s内拍摄的第二静态图像。另外,尽管未示出,但是还可以提供其他参数项供用户设置,例如,还可以设置动态图像中的主要对象的凸显效果等。
然后,在步骤S212中,可以根据前面设置的动态图像的参数来确定要自动拍摄的图像序列的参数。
例如,可以将图4中设置的动态图像帧率作为后续拍摄图像序列时的帧率,将图4中设置的动态图像最大时长作为后续拍摄图像序列的时长,并将该最大时长平均分配给用户按下快门之前的第一时长和之后的第二时长,即第一时长和第二时长均设为该最大时长的一半。另外,还可以根据图4中设置的动态图像质量、动态图像帧率和最大时长等来计算要拍摄的图像序列的第二静态图像的尺寸。下面给出一个计算第二静态图像的尺寸的具体例子。
例如,在一些情况下,高质量的动态图像的数据量最大大小可以约为40M,中质量的动态图像的数据量最大大小可以约为10M,低质量的动态图像的数据量最大大小可以约为2M;由此在设置的动态图像质量为高质量、设置的动态图像帧率为10帧每秒和设置的最大时长为4s的情况下,可以计算出合成动态图像所需的静态图像的数量为10*4=40张,则每张静态图像的数据量=40M/(10*4)=1M。比如原始静态照片(即用户要拍摄并在相册中保存的第一静态图像)的默认尺寸为1920*3840,其数据量平均大小为4M;因此可以将要拍摄的第二静态图像的最大尺寸设为原始静态照片的尺寸的一半,即:960*1920。
然后,在步骤S213中,可以按照前述步骤中设置或计算得到的各种参数来自动拍摄静态图像,并仅保存最新的第一时长内自动拍摄的静态图像作为第二静态图像。例如该第一时长可以为设置的最大时长的一半。图5示例性地展示了该步骤的操作。
如图5所示,在用户进入相机拍摄预览界面后按下快门拍照之前,按照设置的每秒10帧的速度自动拍摄并保存多张静态图像,并随着时间过去,在自动拍摄的时长超过第一时长(为最大时长4s的一半,即2s)后将之前保存的图像删除,即删除在当下时间点之前超出第一时长的时间(即图5中所示的最开始的第1秒和第2秒)拍摄的那些图像,仅保留最新的第一时长内(即图5中所示的第3秒和第4秒)拍摄的多帧图像。
然后,在步骤S214中,在用户按下快门时拍摄得到第一静态图像作为原始静态照片并保存在相册中。第一静态图像的尺寸可以为原始尺寸,如1920*3840。
然后,在步骤S215中,可以在得到原始静态照片后,继续按照前述的设置或计算得到的各参数,自动拍摄并保存按下快门后的第二时长内的静态图像作为第二静态图像。例如该第二时长也可以为设置的最大时长的一半。图6示例性地展示了该步骤的操作。
如图6所示,在用户按下快门后继续按照设置的每秒10帧的速度进行自动拍摄,直到达到第二时长(为最大时长4s的一半,即2s)。此时,如图6所示,得到了用户按下快门前拍摄的第一时长(2s)的第二静态图像、按下快门时拍摄的原始静态照片以及按下快门后拍摄的第二时长(2s)的第二静态图像。
然后,在步骤S216中,可以将第一静态图像根据第二静态图像的尺寸进行调整。例如,可以将第一静态图像复制一份,并将其尺寸缩放为与第二静态图像的尺寸相同。在前述的例子中,可以将第一静态图像的尺寸减半,即变为960*1920,从而与第二静态图像的尺寸相同。如后所述,缩小尺寸后的第一静态图像可以插入图像序列中,用来生成动态图像,而原始尺寸不变的第一静态图像仍保存在相册中。
然后,在步骤S217中,可以按照拍摄的时间顺序,将之前存储的按下快门前拍摄的多帧第二静态图像、尺寸调整后的第一静态图像以及按下快门后拍摄的多帧第二静态图像依次排列,作为用于生成动态图像的新图像序列。
然后,在步骤S218中,可以使用图像识别技术(例如用于图像识别的神经网络模型等),检测新图像序列中的每张静态图像中的主要对象并进行相应的裁切。
可以根据需求训练用于图像识别的神经网络模型,使得其能检测并输出每张静态图像中的主要对象。通过构建训练集等方式可以让模型学习到如何确定图像中的主要对象。
或者,也可以先检测出各静态图像中包含的所有对象,然后从中选出一个或更多个作为主要对象。例如,可以依次考虑或综合考虑如下多个规则来确定主要对象(其中“>”表示重要程度更高):
第一规则:人像>动物图像>其他;
第二规则:对象轮廓完整>对象轮廓不完整;
第三规则:对象尺寸占图像尺寸较大>对象尺寸占图像尺寸过小;
第四规则:对象位于图像居中位置>对象位于图像边缘位置。
比如,在一个图像中检测出多个对象,其包括多个人像、多个动物图像和多个其他图像的情况下,在确定主要对象时,可以先根据第一规则筛除非人像的对象,仅保留人像对象,然后根据第二规则保留轮廓完整的人像对象,然后再根据第三规则保留尺寸占比超过一定阈值的人像对象,最后再根据第四规则选择位置居中的人像对象作为主要对象。
或者,比如,也可以按照上述的各个规则对各个对象分别打分再进行加权求和来获得其最终的分数,并选取分数最高的一个或更多个对象作为主要对象。在上述的各规则中,重要程度越高的对象的分数越高。
在确定主要对象后,可以分别保留每张静态图像中的主要对象,并对每张静态图像的尺寸进行裁切。每张静态图像的裁切位置和/或裁切后的尺寸可以相同或不同。可以将每张静态图像都在同样的位置以相同的最终尺寸进行裁切。
图7示例性地示出了裁切操作的效果。
在图7中,左边为原来的静态图像,其尺寸是960*1920,其中的主要对象为人像。检测出来的每张静态图像中的主要对象均为该人像,其位置偏差不大,并且尺寸均大约为300*900。因此可以将每一张静态图像都在同样的位置以相同的最终尺寸进行裁切,该裁切后的区域包含主要对象,并且其尺寸保持与原始图像相同的宽高比,例如可以为480*960,如图7的右边所示。
在裁切之后还可以对主要对象以外的区域进行处理,以凸显主要对象的显示。例如,可以对图7的右边所示的裁切后图像中除了人像之外的区域进行像素透明化处理或虚化处理,从而最终动态图像上仅显示作为主要对象的人像,或者呈现类似人像模式下背景虚化效果。
然后,在步骤S219中,可以将前述步骤中得到的裁切后的新图像序列合成为动态图像。该动态图像的格式可以是GIF格式或者各种视频格式。
然后,在步骤S220中,可以将第一静态图像和动态图像相关联,使得第一静态图像能够指向其对应的动态图像。例如,可以将第一静态图像和动态图像的路径在系统中进行记录关联。用户在相册中查看指定照片时,可通过指定方式查看其关联的动态图像。图8示例性地示出了将第一静态图像和动态图像相关联并播放动态图像的显示效果。
图8的左边示出的是在相册中查看指定照片的界面,其左上角具有“播放动态图像”的按钮,在用户点击该按钮后,进入图8的右边所示的界面,其播放该照片相关联的动态图像。
另外,还可以为用户提供对自动生成的动态图像进行编辑的功能。例如可以对动态图像整体或其中某一帧的静态图像进行与照片相同或类似的编辑操作,或者可以对动态图像进行裁剪,去除其中一部分的静态图像帧,比如将动态图像从初始的4s时长裁剪为2s时长。
前述的本公开的方法可以被集成于各种终端设备中的相机软件中,在拍照时自动生成与照片关联的动态图像,实现用户无感知(即无需用户进行任何额外操作)。另外,在一些实施例中,还可以为用户提供设置界面,以便于用户根据需求调节动态图像的质量、帧率、最大时长等参数。此外,在一些实施例中,本公开还可以自动识别并截取用户关注的对象,使得自动生成的动态图像更吸引用户,增强用户体验。另外,在一些实施例中,还可以将用户拍摄的静态照片与自动生成的动态图像相关联地呈现,从而方便用户查看动态图像。
图9示出了根据本公开至少一个实施例的可用于实现上述生成动态图像的方法的计算设备的结构示意图。
参见图9,计算设备900包括存储器910和处理器920。
处理器920可以是一个多核的处理器,也可以包含多个处理器。在一些实施例中,处理器920可以包含一个通用的主处理器以及一个或多个特殊的协处理器,例如图形处理器(GPU)、数字信号处理器(DSP)等等。在一些实施例中,处理器920可以使用定制的电路实现,例如特定用途集成电路(ASIC,Application Specific Integrated Circuit)或者现场可编程逻辑门阵列(FPGA,Field Programmable Gate Arrays)。
存储器910可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM),和永久存储装置。其中,ROM可以存储处理器920或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。此外,存储器910可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。在一些实施方式中,存储器910可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等等)、磁性软盘等等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。
存储器910上存储有可执行代码,当可执行代码被处理器920处理时,可以使处理器920执行上文述及的生成动态图像的方法。
此外,根据本公开的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本公开的上述方法中限定的上述各步骤的计算机程序代码指令。
或者,本公开还可以实施为一种非暂时性机器可读存储介质(或计算机可读存储介质、或机器可读存储介质),其上存储有可执行代码(或计算机程序、或计算机指令代码),当所述可执行代码(或计算机程序、或计算机指令代码)被电子设备(或计算设备、服务器等)的处理器执行时,使所述处理器执行根据本公开的上述方法的各个步骤。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。
附图中的流程图和框图显示了根据本公开的多个实施例的系统和方法的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标记的功能也可以以不同于附图中所标记的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (13)

1.一种生成动态图像的方法,包括:
获得启动拍摄时刻拍摄的第一静态图像,以及在所述启动拍摄时刻的预定时段内拍摄的图像序列,其中,所述图像序列包括多张尺寸相同的第二静态图像,且所述第一静态图像和所述第二静态图像的尺寸不同;
将所述第一静态图像根据所述第二静态图像的尺寸进行调整;
将尺寸调整后的第一静态图像根据拍摄时间插入所述图像序列中得到新图像序列;
基于所述新图像序列生成所述动态图像。
2.根据权利要求1所述的方法,其中,基于所述新图像序列生成所述动态图像,包括:
检测所述新图像序列中每张静态图像的主要对象;
对所述新图像序列的尺寸进行裁切并保留包含所述主要对象的区域;以及
基于裁切后的新图像序列生成所述动态图像,其中,裁切后的新图像序列和所述图像序列的宽高比例一致。
3.根据权利要求2所述的方法,其中,
所述主要对象是根据预设的规则从检测出的对象中确定的。
4.根据权利要求3所述的方法,其中,
所述规则包括:所述对象的类别的优先级、所述对象的轮廓的完整程度、所述对象的尺寸的大小、所述对象的位置的居中程度、以及/或者用户对所述对象的偏好。
5.根据权利要求2所述的方法,还包括:
对裁切后的新图像序列中每张静态图像除了所述主要对象以外的区域进行处理,以凸显所述主要对象的显示。
6.根据权利要求5所述的方法,其中,
所述处理包括对所述主要对象以外的区域进行像素透明化处理或虚化处理。
7.根据权利要求1所述的方法,还包括:
接收对所述动态图像的参数的设置;以及
根据所述动态图像的参数确定要拍摄的所述图像序列的参数;
其中,设置的所述动态图像的参数包括:动态图像的质量、动态图像的帧率、和/或动态图像的最大时长。
8.根据权利要求1所述的方法,还包括:
将所述第一静态图像和所述动态图像相关联,使得所述第一静态图像能够指向所述动态图像。
9.根据权利要求1所述的方法,其中,
所述预定时段包括启动拍摄时刻前的第一时段和启动拍摄时刻后的第二时段,且所述第一时段和所述第二时段的时长相同,所述第一时段内的第二静态图像是进入拍摄界面后自动拍摄获得的;并且/或者
所述动态图像的格式为GIF格式或视频格式。
10.根据权利要求9所述的方法,还包括:
删除所述第一时段之前自动拍摄获得的图像。
11.一种计算设备,包括:
处理器;以及
存储器,其上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1-10中任一项所述的方法。
12.一种非暂时性机器可读存储介质,其上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-10中任一项所述的方法。
13.一种计算机程序产品,包括可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1-10中任何一项所述的方法。
CN202410088926.4A 2024-01-22 2024-01-22 生成动态图像的方法、计算设备和存储介质 Pending CN117939314A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410088926.4A CN117939314A (zh) 2024-01-22 2024-01-22 生成动态图像的方法、计算设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410088926.4A CN117939314A (zh) 2024-01-22 2024-01-22 生成动态图像的方法、计算设备和存储介质

Publications (1)

Publication Number Publication Date
CN117939314A true CN117939314A (zh) 2024-04-26

Family

ID=90765983

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410088926.4A Pending CN117939314A (zh) 2024-01-22 2024-01-22 生成动态图像的方法、计算设备和存储介质

Country Status (1)

Country Link
CN (1) CN117939314A (zh)

Similar Documents

Publication Publication Date Title
US11785329B2 (en) Camera switching method for terminal, and terminal
WO2020177583A1 (zh) 一种图像裁剪方法和电子设备
WO2020073959A1 (zh) 图像捕捉方法及电子设备
CN106937039B (zh) 一种基于双摄像头的成像方法、移动终端及存储介质
WO2021008456A1 (zh) 图像处理方法、装置、电子设备及存储介质
CN113112505B (zh) 一种图像处理方法、装置与设备
WO2019183819A1 (zh) 拍照方法、拍照装置和移动终端
CN109961453B (zh) 一种图像处理方法、装置与设备
CN108399349B (zh) 图像识别方法及装置
US9344644B2 (en) Method and apparatus for image processing
EP2215843B1 (en) System and method for generating a photograph with variable image quality
US11949978B2 (en) Image content removal method and related apparatus
US11870951B2 (en) Photographing method and terminal
CN112425156B (zh) 一种基于连拍选择图像的方法及电子设备
US20230308534A1 (en) Function Switching Entry Determining Method and Electronic Device
CN106534619A (zh) 一种调整对焦区域的方法、装置和终端
US20210168279A1 (en) Document image correction method and apparatus
CN112184722B (zh) 图像处理方法、终端及计算机存储介质
US20230056332A1 (en) Image Processing Method and Related Apparatus
WO2021103919A1 (zh) 构图推荐方法和电子设备
CN115150542B (zh) 一种视频防抖方法及相关设备
CN117939314A (zh) 生成动态图像的方法、计算设备和存储介质
CN111866384B (zh) 拍摄控制方法、移动终端及计算机存储介质
CN115150543B (zh) 拍摄方法、装置、电子设备及可读存储介质
US20230385993A1 (en) Image processing method and apparatus, electronic device, storage medium and chip

Legal Events

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