CN117437314A - 一种动图合成方法、装置、存储介质及终端设备 - Google Patents
一种动图合成方法、装置、存储介质及终端设备 Download PDFInfo
- Publication number
- CN117437314A CN117437314A CN202311187130.6A CN202311187130A CN117437314A CN 117437314 A CN117437314 A CN 117437314A CN 202311187130 A CN202311187130 A CN 202311187130A CN 117437314 A CN117437314 A CN 117437314A
- Authority
- CN
- China
- Prior art keywords
- thread
- target
- threads
- synthesized
- image
- 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
Links
- 230000002194 synthesizing effect Effects 0.000 title claims abstract description 49
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000010586 diagram Methods 0.000 title claims abstract description 30
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 58
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 58
- 238000000605 extraction Methods 0.000 claims abstract description 41
- 239000003086 colorant Substances 0.000 claims abstract description 15
- 238000012216 screening Methods 0.000 claims description 28
- 238000012163 sequencing technique Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 4
- 239000000203 mixture Substances 0.000 description 6
- 239000000284 extract Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Image Processing (AREA)
Abstract
本申请实施例公开了一种动图合成方法、装置、存储介质及终端设备,方法包括:按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。以此,通过每当提取出一待合成图像时,为其分配一目标线程,从而将线程池中的多个线程进行合理利用,在动图合成时,采用多个线程进行并行执行,提高影视平台生成动图时的速度,提升动图生成效率。
Description
技术领域
本申请涉及计算机领域,具体涉及一种动图合成方法、装置、计算机可读存储介质及计算机设备。
背景技术
近年来,伴随计算机设备技术的发展以及普及,社交软件发展迅速,用户可通过社交软件向好友发送表情,动图等来表达用户当前的心理状态,将会大大丰富通讯交流的娱乐性。因此动图(Graphics Interchange Format,GIF)的使用率很高。
在对现有技术的研究和实践过程中,本申请的发明人发现,现有技术中对于视频生成GIF的成熟软件还比较少,且部分影视平台应用程序(Application,APP)生成GIF时速度偏慢。
发明内容
本申请实施例提供一种动图合成方法及装置,可以提高影视平台生成动图时的速度,提升动图生成效率。
为解决上述技术问题,本申请实施例提供以下技术方案:
一种动图合成方法,包括:
按照预设时间间隔,从指定视频中提取待合成图像;
当检测到提取出待合成图像时,从线程池中筛选出目标线程;
采用目标线程存储待合成图像中所有颜色,得到颜色列表;
当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
一种动图合成装置,应用于与计算机设备连接的终端设备,包括:
提取模块,用于按照预设时间间隔,从指定视频中提取待合成图像;
筛选模块,用于当检测到提取出待合成图像时,从线程池中筛选出目标线程;
存储模块,用于采用目标线程存储待合成图像中所有颜色,得到颜色列表;
合成模块,用于当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
在本申请实施例提供的动图合成装置中,装置,还包括:
第一确定模块,用于响应于动图提取操作,从视频中确定出期望提取的目标子视频;
第二确定模块,用于确定所述目标子视频的目标视频时长;
合成模块,包括:
第一合成子模块,包括当检测到提取时长达到所述目标视频时长时,基于各目标线程存储的颜色列表,进行动图合成。
在本申请实施例提供的动图合成装置中,装置,还包括:
第二获取模块,用于获取预设的单位时间内的提取图像数量;
第三确定模块,用于基于所述目标视频时长以及所述单位时间内的提取图像数量,确定期望提取的待合成图像的总图像数量;
合成模块,包括:
第二合成子模块,包括当检测到提取出的待合成图像的数量满足所述总图像数量时,基于各目标线程存储的颜色列表,进行动图合成。
在本申请实施例提供的动图合成装置中,筛选模块,包括:
判读子模块,用于当检测到提取出待合成图像时,判断线程池中的多个线程中是否存在空闲线程;
第一确定子模块,用于若线程池中的多个线程中存在空闲线程,则将任一空闲线程确定为目标线程。
在本申请实施例提供的动图合成装置中,筛选模块,还包括:
第二确定子模块,用于若线程池中的多个线程中不存在空闲线程,则确定当前的线程数量是否达到最大线程数量;
创建子模块,用于若当前的线程数量未达到所述最大线程数量,则创建线程,将创建的线程确定为目标线程。
在本申请实施例提供的动图合成装置中,筛选模块,还包括:
获取子模块,用于若当前的线程数量达到所述最大线程数量,则获取每一线程的繁忙程度;
筛选子模块,用于基于每一线程的繁忙程度,从多个线程中筛选出目标线程。
在本申请实施例提供的动图合成装置中,筛选子模块,用于:
按照繁忙程度对多个线程进行排序,得到排序后的多个线程;
将所述排序后的多个线程中排序序号为指定序号的线程,确定为目标线程。
一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述动图合成方法中的步骤。
一种终端设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述动图合成方法中的步骤。
本申请实施例通过按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。以此,通过每当提取出一待合成图像时,为其分配一目标线程,从而将线程池中的多个线程进行合理利用,在动图合成时,采用多个线程进行并行执行,提高影视平台生成动图时的速度,提升动图生成效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a为本申请实施例提供的动图合成方法的系统示意图。
图1b为本申请实施例提供的动图合成方法的流程示意图。
图2为本申请实施例提供的动图合成装置的结构示意图;
图3为本申请实施例提供的终端设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一动图合成方法、装置及计算机可读存储介质。
请参阅图1a,图1a为本申请实施例所提供的动图合成系统的系统示意图,该系统可以包括至少一个终端设备1000,终端设备1000可以为手机、平板电脑、电脑、电视等设备,终端设备1000内可以安装有视频播放软件,用户可在视频播放软件进行播放时,通过某些控制操作从正在播放的视频中选取视频片段进行动图制作。
本申请实施例提供了一种动图合成方法,该方法可以由终端设备1000执行。如图1a所示,该终端设备1000通过按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。以此,通过每当提取出一待合成图像时,为其分配一目标线程,从而将线程池中的多个线程进行合理利用,在动图合成时,采用多个线程进行并行执行,提高影视平台生成动图时的速度,提升动图生成效率。
需要说明的是,图1a所示的动图合成系统的场景示意图仅仅是一个示例,本申请实施例描述的动图合成系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着动图合成系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
在本实施例中,将从动图合成装置的角度进行描述,该动图合成装置具体可以集成在具备储存单元并安装有微处理器而具有运算能力的计算机设备中。
请参阅图1b,图1b为本申请实施例提供的动图合成方法的流程示意图。该动图合成方法包括:
在步骤101中,按照预设时间间隔,从指定视频中提取待合成图像。
其中,当用户从终端设备所播放的视频中进行动图合成控制操作时,终端设备会按照预设时间间隔,从指定视频中提取待合成图像。动图合成控制操作可以为用户针对于终端设备所展现的指定视频中的动图合成控件所执行的触控或点击操作。当终端设备为手机、平板等带有触控屏的设备时,触控操作可以为针对于动图合成控件的点击、按压、长按等操作;当终端设备为电脑等不具备触控屏的设备时,点击操作可以为用户通过鼠标或键盘等物理设备针对于动图合成控件的选择操作等,此处不作限定。
例如,终端设备按照每0.3s提取一帧待合成图像的速度,从指定视频中提取待合成图像。此处的指定视频即为终端设备当前所正在播放的视频,待合成图像即为指定视频中的某一视频帧。
在步骤102中,当检测到提取出待合成图像时,从线程池中筛选出目标线程。
其中,在从指定视频中每提取出一待合成图像时,均会从线程池中筛选出一目标线程,该目标线程用于对提取出的对应待合成图像进行处理。
在一些实施方式中,所述当检测到提取出待合成图像时,从线程池中筛选出目标线程的步骤,包括:
(1)当检测到提取出待合成图像时,判断线程池中的多个线程中是否存在空闲线程;
(2)若线程池中的多个线程中存在空闲线程,则将任一空闲线程确定为目标线程。
其中,为了提高针对于待合成图像的处理速率,在为每一待合成图像分配线程时,优先判断线程池中的多个线程中是否存在空闲线程,若线程池中的多个线程中存在空闲线程,则将任一空闲线程确定为目标线程。
例如,线程池中包括线程1、线程2以及线程3,线程1、线程2的使用状态为:使用中,线程3的使用状态为:空闲。则将线程3确定为目标线程。
在一些实施方式中,所述方法,还包括:
(1)若线程池中的多个线程中不存在空闲线程,则确定当前的线程数量是否达到最大线程数量;
(2)若当前的线程数量未达到所述最大线程数量,则创建线程,将创建的线程确定为目标线程。
其中,若线程池中的多个线程中不存在空闲线程,则说明当前线程池中存在的线程均处于使用中的使用状态,因此需要确定是否可以创建新的线程进使用。具体的确定方式为:确定当前的线程数量是否达到最大线程数量;若当前的线程数量未达到所述最大线程数量,则说明还可以创建新的线程,则创建线程,将创建的线程确定为目标线程。
例如,当前的线程数量为5,最大线程数量为6,则说明还可以创建新的线程,则创建线程,将创建的线程确定为目标线程。
在一些实施方式中,所述方法,还包括:
(1)若当前的线程数量达到所述最大线程数量,则获取每一线程的繁忙程度;
(2)基于每一线程的繁忙程度,从多个线程中筛选出目标线程。
其中,若当前的线程数量达到所述最大线程数量,则说明已经无法再创建新的线程供待合成图像的处理,因此可以优先将繁忙程度最低的线程分配给待合成图像。
具体的,则获取每一线程的繁忙程度的方式可以为具体获取每一线程的占用率,将占用率确定为繁忙程度,从而基于每一线程的繁忙程度,从多个线程中筛选出目标线程。
在一些实施方式中,所述基于每一线程的繁忙程度,从多个线程中筛选出目标线程的步骤,包括:
(1.1)按照繁忙程度对多个线程进行排序,得到排序后的多个线程;
(1.2)将所述排序后的多个线程中排序序号为指定序号的线程,确定为目标线程。
其中,从多个线程中筛选出繁忙程度最低的目标线程的具体方式可以为:按照繁忙程度对多个线程进行排序,得到排序后的多个线程;将所述排序后的多个线程中排序序号为指定序号的线程,确定为目标线程。
例如,线程池中包括线程1、线程2以及线程3,线程1的繁忙程度为80%,线程2的繁忙程度为60%,线程3的繁忙程度为75%,若按照繁忙程度从小到大的顺序进行排序,则排序后的多个线程依次为:线程2、线程3、线程1,按照繁忙程度从小到大的顺序进行排序时的指定序号为1,则序号1对应的线程2即为目标线程;按照繁忙程度从大到小的顺序进行排序,则排序后的多个线程依次为:线程1、线程3、线程2,按照繁忙程度从小到大的顺序进行排序时的指定序号为3,则序号3对应的线程2即为目标线程。
在步骤103中,采用目标线程存储待合成图像中所有颜色,得到颜色列表。
其中,每一目标线程记住对应的待合成图像,独立存储待合成图像中所有颜色,完成之后,把数据暂存颜色列表。
在步骤104中,当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
当检测到提取待合成图像满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
在一些实施方式中,在所述按照预设时间间隔,从指定视频中提取待合成图像的步骤之前,还包括:
(1)响应于动图提取操作,从视频中确定出期望提取的目标子视频;
(2)确定所述目标子视频的目标视频时长;
所述当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成的步骤,包括:
当检测到提取时长达到所述目标视频时长时,基于各目标线程存储的颜色列表,进行动图合成。
其中,用户一般是对视频中的某一视频片段进行动图提取,因此可以响应于动图提取操作,从视频中确定出期望提取的目标子视频;确定目标子视频的目标视频时长;当检测到提取时长达到所述目标视频时长时,基于各目标线程存储的颜色列表,进行动图合成。
例如,指定视频为40分钟,目标子视频为指定视频的第10分30秒到第10分40秒,则目标视频时长即为10秒,当检测到提取时长达到10秒时,说明提取完毕,则基于各目标线程存储的颜色列表,进行动图合成。
在一些实施方式中,所述方法,还包括:
(1)获取预设的单位时间内的提取图像数量;
(2)基于所述目标视频时长以及所述单位时间内的提取图像数量,确定期望提取的待合成图像的总图像数量;
所述当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成的步骤,包括:
当检测到提取出的待合成图像的数量满足所述总图像数量时,基于各目标线程存储的颜色列表,进行动图合成。
其中,图像提取时,还会预先设定有单位时间内的提取图像数量,例如1s提取3帧图像。因此可以基于所述目标视频时长以及所述单位时间内的提取图像数量,确定期望提取的待合成图像的总图像数量,例如,目标视频时长为10s,则总图像数量为3帧/s*10s=30帧。进而,当检测到提取出的待合成图像的数量达到30帧时,说明提取完毕,则基于各目标线程存储的颜色列表,进行动图合成。
由上述可知,本申请实施例通过按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。以此,通过每当提取出一待合成图像时,为其分配一目标线程,从而将线程池中的多个线程进行合理利用,在动图合成时,采用多个线程进行并行执行,提高影视平台生成动图时的速度,提升动图生成效率。
为便于更好的实施本申请实施例提供的动图合成方法,本申请实施例还提供一种基于上述动图合成方法的装置。其中名词的含义与上述动图合成方法中相同,具体实现细节可以参考方法实施例中的说明。
请参阅图2,图2为本申请实施例提供的动图合成装置的结构示意图,其中该动图合成装置可以包括提取模块301、筛选模块302、存储模块303以及合成模块304等。
提取模块301,用于按照预设时间间隔,从指定视频中提取待合成图像;
筛选模块302,用于当检测到提取出待合成图像时,从线程池中筛选出目标线程;
存储模块303,用于采用目标线程存储待合成图像中所有颜色,得到颜色列表;
合成模块304,用于当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
在本申请实施例提供的动图合成装置中,装置,还包括:
第一确定模块,用于响应于动图提取操作,从视频中确定出期望提取的目标子视频;
第二确定模块,用于确定所述目标子视频的目标视频时长;
合成模块304,包括:
第一合成子模块,包括当检测到提取时长达到所述目标视频时长时,基于各目标线程存储的颜色列表,进行动图合成。
在本申请实施例提供的动图合成装置中,装置,还包括:
第二获取模块,用于获取预设的单位时间内的提取图像数量;
第三确定模块,用于基于所述目标视频时长以及所述单位时间内的提取图像数量,确定期望提取的待合成图像的总图像数量;
合成模块304,包括:
第二合成子模块,包括当检测到提取出的待合成图像的数量满足所述总图像数量时,基于各目标线程存储的颜色列表,进行动图合成。
在本申请实施例提供的动图合成装置中,筛选模块,包括:
判读子模块,用于当检测到提取出待合成图像时,判断线程池中的多个线程中是否存在空闲线程;
第一确定子模块,用于若线程池中的多个线程中存在空闲线程,则将任一空闲线程确定为目标线程。
在本申请实施例提供的动图合成装置中,筛选模块302,还包括:
第二确定子模块,用于若线程池中的多个线程中不存在空闲线程,则确定当前的线程数量是否达到最大线程数量;
创建子模块,用于若当前的线程数量未达到所述最大线程数量,则创建线程,将创建的线程确定为目标线程。
在本申请实施例提供的动图合成装置中,筛选模块302,还包括:
获取子模块,用于若当前的线程数量达到所述最大线程数量,则获取每一线程的繁忙程度;
筛选子模块,用于基于每一线程的繁忙程度,从多个线程中筛选出目标线程。
在本申请实施例提供的动图合成装置中,筛选子模块,用于:
按照繁忙程度对多个线程进行排序,得到排序后的多个线程;
将所述排序后的多个线程中排序序号为指定序号的线程,确定为目标线程。
由上述可知,本申请实施例通过提取模块301按照预设时间间隔,从指定视频中提取待合成图像;筛选模块302当检测到提取出待合成图像时,从线程池中筛选出目标线程;存储模块303采用目标线程存储待合成图像中所有颜色,得到颜色列表;合成模块304当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。以此,通过每当提取出一待合成图像时,为其分配一目标线程,从而将线程池中的多个线程进行合理利用,在动图合成时,采用多个线程进行并行执行,提高影视平台生成动图时的速度,提升动图生成效率。
相应的,本申请实施例还提供一种终端设备,该终端设备可以用于连接计算机设备以及待动图合成设备,计算机设备可以为终端或者服务器,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备。待动图合成设备可以为显示器、投影仪等显示设备。如图3所示,图3为本申请实施例提供的终端设备的结构示意图。该终端设备1000包括有一个或者一个以上处理核心的处理器401、有一个或一个以上计算机可读存储介质的存储器402及存储在存储器402上并可在处理器上运行的计算机程序。其中,处理器401与存储器402电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器401是终端设备1000的控制中心,利用各种接口和线路连接整个终端设备1000的各个部分,通过运行或加载存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行终端设备1000的各种功能和处理数据,从而对终端设备1000进行整体监控。
在本申请实施例中,终端设备1000中的处理器401会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能:
按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
在一些实施方式中,在所述按照预设时间间隔,从指定视频中提取待合成图像的步骤之前,还包括:
响应于动图提取操作,从视频中确定出期望提取的目标子视频;
确定所述目标子视频的目标视频时长;
所述当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成的步骤,包括:
当检测到提取时长达到所述目标视频时长时,基于各目标线程存储的颜色列表,进行动图合成。
在一些实施方式中,所述方法,还包括:
获取预设的单位时间内的提取图像数量;
基于所述目标视频时长以及所述单位时间内的提取图像数量,确定期望提取的待合成图像的总图像数量;
所述当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成的步骤,包括:
当检测到提取出的待合成图像的数量满足所述总图像数量时,基于各目标线程存储的颜色列表,进行动图合成。
在一些实施方式中,所述当检测到提取出待合成图像时,从线程池中筛选出目标线程的步骤,包括:
当检测到提取出待合成图像时,判断线程池中的多个线程中是否存在空闲线程;
若线程池中的多个线程中存在空闲线程,则将任一空闲线程确定为目标线程。
在一些实施方式中,所述方法,还包括:
若线程池中的多个线程中不存在空闲线程,则确定当前的线程数量是否达到最大线程数量;
若当前的线程数量未达到所述最大线程数量,则创建线程,将创建的线程确定为目标线程。
在一些实施方式中,所述方法,还包括:
若当前的线程数量达到所述最大线程数量,则获取每一线程的繁忙程度;
基于每一线程的繁忙程度,从多个线程中筛选出目标线程。
在一些实施方式中,所述基于每一线程的繁忙程度,从多个线程中筛选出目标线程的步骤,包括:
按照繁忙程度对多个线程进行排序,得到排序后的多个线程;
将所述排序后的多个线程中排序序号为指定序号的线程,确定为目标线程。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图3所示,终端设备1000还包括:蓝牙模块403、射频电路404、直连模块405以及电源406。其中,处理器401分别与蓝牙模块403、射频电路404、直连模块405以及电源406电性连接。本领域技术人员可以理解,图3中示出的终端设备结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
蓝牙模块403用于通过终端设备存储的待动图合成设备的蓝牙地址与待动图合成设备建立蓝牙连接。直连模块405包括为终端设备配置的usb接口和/或type-c接口等与计算机设备或待动图合成设备进行直连。
射频电路404可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
电源406用于给终端设备1000的各个部件供电。可选的,电源407可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源407还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图3中未示出,终端设备1000还可以包括摄像头、传感器、无线保真模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
由上可知,本实施例提供的终端设备,通过按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。以此,通过每当提取出一待合成图像时,为其分配一目标线程,从而将线程池中的多个线程进行合理利用,在动图合成时,采用多个线程进行并行执行,提高影视平台生成动图时的速度,提升动图生成效率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种技能的控制方法中的步骤。例如,该计算机程序可以执行如下步骤:
按照预设时间间隔,从指定视频中提取待合成图像;当检测到提取出待合成图像时,从线程池中筛选出目标线程;采用目标线程存储待合成图像中所有颜色,得到颜色列表;当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种动图合成方法中的步骤,因此,可以实现本申请实施例所提供的任一种动图合成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种动图合成方法、装置、计算机可读存储介质及终端设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上该,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种动图合成方法,其特征在于,包括:
按照预设时间间隔,从指定视频中提取待合成图像;
当检测到提取出待合成图像时,从线程池中筛选出目标线程;
采用目标线程存储待合成图像中所有颜色,得到颜色列表;
当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
2.根据权利要求1所述的动图合成方法,其特征在于,在所述按照预设时间间隔,从指定视频中提取待合成图像的步骤之前,还包括:
响应于动图提取操作,从视频中确定出期望提取的目标子视频;
确定所述目标子视频的目标视频时长;
所述当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成的步骤,包括:
当检测到提取时长达到所述目标视频时长时,基于各目标线程存储的颜色列表,进行动图合成。
3.根据权利要求2所述的动图合成方法,其特征在于,所述方法,还包括:
获取预设的单位时间内的提取图像数量;
基于所述目标视频时长以及所述单位时间内的提取图像数量,确定期望提取的待合成图像的总图像数量;
所述当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成的步骤,包括:
当检测到提取出的待合成图像的数量满足所述总图像数量时,基于各目标线程存储的颜色列表,进行动图合成。
4.根据权利要求1所述的动图合成方法,其特征在于,所述当检测到提取出待合成图像时,从线程池中筛选出目标线程的步骤,包括:
当检测到提取出待合成图像时,判断线程池中的多个线程中是否存在空闲线程;
若线程池中的多个线程中存在空闲线程,则将任一空闲线程确定为目标线程。
5.根据权利要求4所述的动图合成方法,其特征在于,所述方法,还包括:
若线程池中的多个线程中不存在空闲线程,则确定当前的线程数量是否达到最大线程数量;
若当前的线程数量未达到所述最大线程数量,则创建线程,将创建的线程确定为目标线程。
6.根据权利要求5所述的动图合成方法,其特征在于,所述方法,还包括:
若当前的线程数量达到所述最大线程数量,则获取每一线程的繁忙程度;
基于每一线程的繁忙程度,从多个线程中筛选出目标线程。
7.根据权利要求6所述的动图合成方法,其特征在于,所述基于每一线程的繁忙程度,从多个线程中筛选出目标线程的步骤,包括:
按照繁忙程度对多个线程进行排序,得到排序后的多个线程;
将所述排序后的多个线程中排序序号为指定序号的线程,确定为目标线程。
8.一种动图合成装置,其特征在于,包括:
提取模块,用于按照预设时间间隔,从指定视频中提取待合成图像;
筛选模块,用于当检测到提取出待合成图像时,从线程池中筛选出目标线程;
存储模块,用于采用目标线程存储待合成图像中所有颜色,得到颜色列表;
合成模块,用于当满足提取结束条件时,基于各目标线程存储的颜色列表,进行动图合成。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至7任一项所述的动图合成方法中的步骤。
10.一种终端设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述的动图合成方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311187130.6A CN117437314A (zh) | 2023-09-13 | 2023-09-13 | 一种动图合成方法、装置、存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311187130.6A CN117437314A (zh) | 2023-09-13 | 2023-09-13 | 一种动图合成方法、装置、存储介质及终端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117437314A true CN117437314A (zh) | 2024-01-23 |
Family
ID=89548785
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311187130.6A Pending CN117437314A (zh) | 2023-09-13 | 2023-09-13 | 一种动图合成方法、装置、存储介质及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117437314A (zh) |
-
2023
- 2023-09-13 CN CN202311187130.6A patent/CN117437314A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110189246B (zh) | 图像风格化生成方法、装置及电子设备 | |
CN116501210B (zh) | 一种显示方法、电子设备及存储介质 | |
CN109168026A (zh) | 即时视频显示方法、装置、终端设备及存储介质 | |
CN105740010B (zh) | 一种开机方法及终端设备 | |
CN106648283A (zh) | 一种弹幕信息处理方法及服务器 | |
CN106982388B (zh) | 一种图片的显示方法和装置 | |
CN110798615A (zh) | 一种拍摄方法、装置、存储介质以及终端 | |
CN108632667B (zh) | 一种多媒体文件的解码方法及终端 | |
CN106572374A (zh) | 多视频播放控制方法和终端 | |
CN115460469B (zh) | 多视频播放的处理方法、装置、计算机设备及存储介质 | |
CN113825010A (zh) | 直播勋章显示方法、装置、存储介质及计算机设备 | |
CN106879263A (zh) | 一种拍摄方法和移动设备 | |
CN104808975A (zh) | 相机应用的滤镜实现方法和装置 | |
WO2020206688A1 (zh) | 视频播放方法、装置、存储介质及电子设备 | |
CN113891136A (zh) | 一种视频播放方法、装置、电子设备和存储介质 | |
CN114217759A (zh) | 投屏方法、装置、存储介质及电子设备 | |
CN114095793A (zh) | 一种视频播放方法、装置、计算机设备及存储介质 | |
CN117437314A (zh) | 一种动图合成方法、装置、存储介质及终端设备 | |
CN114489892B (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN115225930B (zh) | 直播互动应用的处理方法、装置、电子设备及存储介质 | |
CN114374798B (zh) | 场景识别方法、装置、电子设备和计算机可读存储介质 | |
CN117768728B (zh) | 多媒体播放方法、装置、介质及设备 | |
CN103051966A (zh) | 一种视频加速智能控制方法及基于该方法的视频加速控制器 | |
CN101488991B (zh) | 一种基于brew平台的图片加载方法 | |
CN118132184A (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 |