CN112465937B - 定格动画的生成方法、计算机可读存储介质及计算机设备 - Google Patents

定格动画的生成方法、计算机可读存储介质及计算机设备 Download PDF

Info

Publication number
CN112465937B
CN112465937B CN202011210963.6A CN202011210963A CN112465937B CN 112465937 B CN112465937 B CN 112465937B CN 202011210963 A CN202011210963 A CN 202011210963A CN 112465937 B CN112465937 B CN 112465937B
Authority
CN
China
Prior art keywords
motion
period
video
initial
stop
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
CN202011210963.6A
Other languages
English (en)
Other versions
CN112465937A (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.)
Insta360 Innovation Technology Co Ltd
Original Assignee
Insta360 Innovation 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 Insta360 Innovation Technology Co Ltd filed Critical Insta360 Innovation Technology Co Ltd
Priority to CN202011210963.6A priority Critical patent/CN112465937B/zh
Publication of CN112465937A publication Critical patent/CN112465937A/zh
Priority to EP21888556.4A priority patent/EP4242971A4/en
Priority to PCT/CN2021/128254 priority patent/WO2022095859A1/zh
Priority to US18/034,503 priority patent/US20240346738A1/en
Priority to JP2023526556A priority patent/JP7510008B2/ja
Application granted granted Critical
Publication of CN112465937B publication Critical patent/CN112465937B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/10Image enhancement or restoration using non-spatial domain filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20048Transform domain processing
    • G06T2207/20056Discrete and fast Fourier transform, [DFT, FFT]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)
  • Image Analysis (AREA)

Abstract

本申请适用于视频处理领域,提供了一种定格动画的生成方法、装置、计算机可读存储介质及计算机设备。所述方法包括:获取包含目标周期性运动的视频,视频包含连续的预设数量运动周期;采用姿态估计算法确定视频中目标的初始运动周期;根据初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;根据定格动画的视频帧序列生成定格动画视频。本申请操作简单,不需要人工挑选视频帧,采用算法自动抽帧,大大提高了生成定格动画的效率,且鲁棒性强。

Description

定格动画的生成方法、计算机可读存储介质及计算机设备
技术领域
本申请属于视频处理领域,尤其涉及一种定格动画的生成方法、装置、计算机可读存储介质及计算机设备。
背景技术
现有技术的定格动画的生成方法包括以下步骤:获取目标视频中的至少一部分视频数据帧;在获取的至少一部分视频数据帧中,抽取相互间隔的多个视频数据帧,所述抽取的不同视频数据帧在所述目标视频中的时间值之差大于预设的最小时间间隔;将所述抽取的多个视频数据帧按时序连接生成定格动画。
然而,现有技术的定格动画的生成方法的抽帧操作主要是靠定时抽帧或者人工抽帧来完成,定时抽帧不够智能,人工抽帧则耗费人力效率低。
发明内容
本申请实施例在于提供一种定格动画的生成方法、装置、计算机可读存储介质及计算机设备,旨在解决以上问题之一。
第一方面,本申请提供了一种定格动画的生成方法,所述方法包括:
S101、获取包含目标周期性运动的视频,所述视频包含连续的预设数量运动周期;
S102、采用姿态估计算法确定所述视频中目标的初始运动周期;
S103、根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;
S104、根据定格动画的视频帧序列生成定格动画视频。
第二方面,本申请提供了一种定格动画的生成装置,所述装置包括:
获取模块,用于获取包含目标周期性运动的视频,所述视频包含连续的预设数量运动周期;
确定模块,用于采用姿态估计算法确定所述视频中目标的初始运动周期;
抽取模块,用于根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;
生成模块,用于根据定格动画的视频帧序列生成定格动画视频。
第三方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如所述的定格动画的生成方法的步骤。
第四方面,本申请提供了一种计算机设备,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述处理器执行所述计算机程序时实现如所述的定格动画的生成方法的步骤。
在本申请实施例中,由于采用姿态估计算法确定所述视频中目标的初始运动周期;根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;根据定格动画的视频帧序列生成定格动画视频。因此操作简单,不需要人工挑选视频帧,采用算法自动抽帧,大大提高了生成定格动画的效率,且鲁棒性强。
附图说明
图1是本申请一实施例提供的定格动画的生成方法的应用场景示意图。
图2是本申请一实施例提供的定格动画的生成方法的流程图。
图3是经透视变换之前的目标示意图。
图4是经透视变换之后的目标示意图。
图5是本申请一实施例提供的定格动画的生成装置示意图。
图6是本申请一实施例提供的计算机设备的具体结构框图。
具体实施方式
为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
本申请一实施例提供的定格动画的生成方法的应用场景可以是计算机设备,计算机设备执行本申请一实施例提供的定格动画的生成方法生成定格动画。本申请一实施例提供的定格动画的生成方法的应用场景也可以包括相连接的计算机设备100和相机200(如图1所示)。计算机设备100和相机200中可运行至少一个的应用程序。计算机设备100可以是服务器、台式计算机、移动终端等,移动终端包括手机、平板电脑、笔记本电脑、个人数字助理等。相机200可以是普通的相机或者全景相机等。普通的相机是指用于拍摄平面图像和平面视频的拍摄装置。计算机设备100或者是相机200执行本申请一实施例提供的定格动画的生成方法生成定格动画。
请参阅图2,是本申请一实施例提供的定格动画的生成方法的流程图,本实施例主要以该定格动画的生成方法应用于计算机设备为例来举例说明,本申请一实施例提供的定格动画的生成方法包括以下步骤:
S101、获取包含目标周期性运动的视频,所述视频包含连续的预设数量运动周期。
在本申请一实施例中,所述视频是通过固定视角拍摄得到的。
所述固定视角可以为360°中任何一个基本保持不变的角度,例如固定拍摄周期性运动的目标的侧面。
所述目标可以是人、动物、交通工具等所有能周期性运动的物体。
所述视频包括的运动周期的数量大于预设周期阈值,例如预设周期阈值大于或等于20个周期。
所述视频中目标的周期性运动是无间断的。
所述视频可以是平面视频,也可以是全景视频,全景视频可以是由全景相机拍摄的,也可以是由多个普通的相机拍摄的平面视频拼接而成的。
在本申请一实施例中,S101之后,所述方法还可以包括以下步骤:
S1012、采用目标识别和跟踪算法(包括但不限于经典的识别和跟踪算法),从起始点开始识别并跟踪目标,对视频帧中的目标进行透视变换操作,使目标在每个视频帧中保持在相同位置,和/或,使目标在每个视频帧中保持相同大小。如图3所示,视频帧中的目标在画面中有缩小或倾斜,如图4所示,经透视变换后放大或摆正视频帧中的目标,使目标在每个视频帧中大致保持画面中的相同位置和/或相同大小。
在本申请一实施例中,S101之后或S1012之前,所述方法还可以包括以下步骤:
手动或自动选择所述视频中目标开始周期性运动之后的其中一帧视频帧作为执行S102或S1012的起始点。
S102、采用姿态估计算法确定所述视频中目标的初始运动周期。
在本申请一实施例中,S102具体可以包括以下步骤:
S1021、在所述视频中抽取连续预设数量的视频帧。
S1022、针对所述连续预设数量的视频帧,采用目标识别和跟踪算法识别每一帧视频帧中周期性运动的目标的关键点,每个关键点用坐标值来表示。
连续预设数量的视频帧可以是从所述视频开始的连续N帧(N为300、500等任意数值)视频帧。
例如采用姿态估计算法识别出周期性运动的人的头、左右肩、左右肘、左右手、左右胯、左右膝、左右脚等关键点,每个关键点用坐标值来表示。
S1023、根据所述连续预设数量的视频帧中的目标的关键点,计算每个视频帧中预设两个关键点的观测值V(i),得到所述视频的观测值序列,所述观测值为所述目标的预设两个关键点在视频帧中的距离;
由于周期性运动可以映射为目标的某个关键点的坐标数值的周期变化规律;例如以侧面拍摄走路为例,随着人走路时的双脚运动,左右脚之间的距离也会随之周期性变化;因此可以使用双脚在画面中距离作为观测值,设第i帧视频帧的关键点中左脚的坐标值为pl(i)x和pl(i)y,右脚的坐标值为pr(i)x和pr(i)y,则第i帧视频帧的周期性指标且一个步行周期内,双脚距离的指标经历两次周期性变大变小过程,即实际步行周期是观测指标变化周期的两倍,因而确定步行的周期节点为观测指标变化周期的两倍;
S1024、对观测值序列进行离散傅里叶变换,找到响应最大的频率F,则初始观测值的周期为N/F,其中,N是所述连续预设数量的视频帧的数量;
S1025、根据所述初始观测值的周期得到初始运动周期M(0)。
对于以侧面拍摄人或动物走路的场景,以双脚的距离作为观测值时,则初始运动周期M(0)=(N/F)*2,对于交通工具或其他目标的运动,则初始运动周期M(0)=N/F。
S103、根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列。
一个典型的使用场景是,相机从人物侧面拍摄人走路的画面,持续超过半分钟。因为走路的动作具有周期性,双脚左右交替一次即为一个周期,所以同一个姿态会在不同周期中反复出现。比如,左脚在后右脚在前,双脚距离最远的姿态会在整个走路的过程中反复出现,且每个周期出现一次,出现的频率和步频相等。
如果分别在每个运动周期中抽取一个相同姿态对应的视频帧。则所有这些相同姿态对应的视频帧连起来可以组成一个新的帧序列,看起来就像是人保持这个姿态在路上滑动/飘动一样。
如果在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,则这样选出来的视频帧连起来看依然具有原本的动作,而背景却以更快的速度变化。
将一个运动周期内的姿态分为m个,m是大于或等于2的自然数,第x个姿态为在整个运动周期内的位置x∈[0,m];β=x/m,代表期望输出姿态在整个运动周期内的位置;例如一个运动周期内的姿态按出现的顺序可分为10个姿态,则如果想输出所有第五种姿态的视频帧,则β=5/10=0.5。
针对连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列
在本申请一实施例中,所述针对连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,得到定格动画的视频帧序列具体可以包括以下步骤:
S10311、在第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧中,选择观测值最大的视频帧作为初始运动周期的起始视频帧k(0),并作为起始运动周期节点k(0);所述第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧具体可以是第1/2初始运动周期M(0)至第3/2初始运动周期M(0)之间的视频帧。
因为是周期性运动,相邻运动周期的长度(可以用视频帧数来表示)比较接近,所以在得到初始运动周期M(0)之后,就可以知道下一个周期节点出现的大致位置,即上一个周期节点之后的第M(0)帧附近。所以在第M(0)帧附近搜寻出观测值最大的视频帧作为下一个周期节点,并更新运动周期的长度。
一般来说,只需要在某个范围内选择观测值最大的视频帧,并且保证此帧的观测值是局部最大值即可。因为在第0视频帧是视频刚刚开始,很多时候画面中的目标运动的周期性还不稳定,所以选择之后的一段时间,一个完整运动周期内的最佳值当作第一个周期节点。因此在第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧中,选择观测值最大的视频帧作为初始运动周期的起始视频帧k(0)。实际上,在第0视频帧至0.5*M(0)视频帧内都是视频刚刚开始,很多时候画面中的目标运动的周期性还不稳定,为了减少运算量,因此可以选择在第1/2初始运动周期M(0)至第3/2初始运动周期M(0)之间的视频帧中,选择观测值最大的视频帧作为初始运动周期的起始视频帧k(0)。
S10312、根据所述起始视频帧k(0)输出定格动画的视频帧序列的第一帧为k(0)+β*M(0),其中β是期望输出姿态在整个初始运动周期M(0)内所有姿态中的位置,β的取值在区间[0,1],0表示整个运动周期中的第一个姿态,1表示整个运动周期中的最后一个姿态;
S10313、在上一个周期节点k(i-1)之后的连续两个初始运动周期范围内的视频帧中,选择观测值最大的视频帧作为下一个运动周期节点k(i),i是正整数;所述连续两个初始运动周期范围内的视频帧具体可以是第3/4初始运动周期M(0)至5/4初始运动周期M(0)之间的视频帧。
因为知道了上一个周期节点k(i-1)之后,下一个运动周期的长度就更新了,下一个运动周期长度应跟上一个运动周期长度接近,所以下一个周期节点应该出现在k(i-1)+3/4*M(0)到k(i-1)+5/4*M(0)范围内。即,假设运动周期长度不变时,一个运动周期之后的周期节点在半个运动周期的范围。
S10314、根据下一个周期节点k(i)计算第i个运动周期M(i)。
S10314具体可以为:第i个运动周期M(i)=k(i)-k(i-1)。
为了使相邻的运动周期变化不太剧烈,S10314具体也可以为:
第i个运动周期M(i)=M(i)'*x+M(i-1)*(1-x),其中,M(i)'=k(i)'-k(i-1),k(i)'=k(i),1>x>0,且x表示相邻两个运动周期长度的变化快慢,例如x=0.5,M(i)=M(i)'*0.5+M(i-1)*0.5;
利用这种办法计算的M(i),会相对平缓的改变,而不会剧烈变化,更符合周期性运动的特征;
根据得到的第i个运动周期M(i),重新计算下一个周期节点k(i)=k(i-1)+M(i)。从而得到更准确的下一个周期节点k(i)。
S10315、选择第k(i)+β*M(i)帧输出到定格动画的视频帧序列中。
在本申请一实施例中,所述针对连续的预设数量运动周期,分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列具体可以包括以下步骤:
S10321、在第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧中,选择观测值最大的视频帧作为初始运动周期的起始视频帧k(0),并作为起始周期节点k(0);所述第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧具体可以是第1/2初始运动周期M(0)至第3/2初始运动周期M(0)之间的视频帧。
S10322、根据起始视频帧k(0)输出定格动画的视频帧序列的第一帧为k(0)+β(0)*M(0),其中β(0)是初始的输出姿态在整个初始运动周期M(0)内所有姿态中的位置,β(0)的取值在区间[0,1],0表示整个运动周期中的第一个姿态,1表示整个运动周期中的最后一个姿态;
S10323、在上一个周期节点k(i-1)之后的连续两个初始运动周期范围内的视频帧中,选择观测值最大的视频帧作为下一个运动周期节点k(i),i是正整数;所述连续两个初始运动周期范围内的视频帧具体可以是第3/4初始运动周期M(0)至第5/4初始运动周期M(0)之间的视频帧。
S10324、根据下一个周期节点k(i)计算第i个运动周期M(i)。
S10324具体可以为:第i个运动周期M(i)=k(i)-k(i-1)。
为了使相邻的运动周期变化不太剧烈,S10324具体也可以为:
第i个运动周期M(i)=M(i)'*x+M(i-1)*(1-x),其中,M(i)'=k(i)'-k(i-1),k(i)'=k(i),1>x>0,且x表示相邻两个运动周期长度的变化快慢;例如x=0.5,M(i)=M(i)'*0.5+M(i-1)*0.5;
利用这种办法计算的M(i),会相对平缓的改变,而不会剧烈变化,更符合周期性运动的特征;
根据得到的第i个运动周期M(i),重新计算下一个周期节点k(i)=k(i-1)+M(i)。从而得到更准确的下一个周期节点k(i)。
S10325、选择第k(i)+β(i)*M(i)帧输出到定格动画的视频帧序列中,其中,当目标的周期性运动是向前进时,则β(i)=β(i-1)+1/M(i),如果β(i)>1,则β(i)=β(i)-1,即输出到最后一个姿态了,再回到运动周期中的第一个姿态,当目标的周期性运动是向后退时,则β(i)=β(i-1)-1/M(i),如果β(i)<0,则β(i)=β(i)+1,即输出到第一个姿态了,再回到运动周期中的最后一个姿态。
S104、根据定格动画的视频帧序列生成定格动画视频。
在本申请一实施例中,S104具体可以包括以下步骤:
根据定格动画的视频帧序列中视频帧在所述视频中出现的顺序按预设规则排序,依次播放,生成定格动画视频。
所述预设规则可以为:顺序或逆序,或其他自定义的排序方法。
在本申请一实施例中,定格动画视频中相邻的视频帧的时间值之差可以为固定值也可以按预设规律变化;例如,时间值之差可以预设固定值为0.5秒,或者其他变化数值。
请参阅图5,本申请一实施例提供的定格动画的生成装置可以是运行于计算机设备或相机中的一个计算机程序或一段程序代码,例如该定格动画的生成装置为一个应用软件;该定格动画的生成装置可以用于执行本申请实施例提供的定格动画的生成方法中的相应步骤。本申请一实施例提供的定格动画的生成装置包括:
获取模块11,用于获取包含目标周期性运动的视频,所述视频包含连续的预设数量运动周期;
确定模块12,用于采用姿态估计算法确定所述视频中目标的初始运动周期;
抽取模块13,用于根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;
生成模块14,用于根据定格动画的视频帧序列生成定格动画视频。
本申请一实施例提供的定格动画的生成装置与本申请一实施例提供的定格动画的生成方法属于同一构思,其具体实现过程详见说明书全文,此处不再赘述。
本申请一实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本申请一实施例提供的定格动画的生成方法的步骤。
图6示出了本申请一实施例提供的计算机设备的具体结构框图,该计算机设备可以是图1中所示的计算机设备,一种计算机设备100包括:一个或多个处理器101、存储器102、以及一个或多个计算机程序,其中所述处理器101和所述存储器102通过总线连接,所述一个或多个计算机程序被存储在所述存储器102中,并且被配置成由所述一个或多个处理器101执行,所述处理器101执行所述计算机程序时实现如本申请一实施例提供的定格动画的生成方法的步骤。
计算机设备可以是服务器、台式计算机、移动终端等,移动终端包括手机、平板电脑、笔记本电脑、个人数字助理等。
在本申请实施例中,由于采用姿态估计算法确定所述视频中目标的初始运动周期;根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在不同的运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;根据定格动画的视频帧序列生成定格动画视频。因此操作简单,不需要人工挑选视频帧,采用算法自动抽帧,大大提高了生成定格动画的效率,且鲁棒性强。
应该理解的是,本申请各实施例中的各个步骤并不是必然按照步骤标号指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,各实施例中至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (13)

1.一种定格动画的生成方法,其特征在于,所述方法包括:
S101、获取包含目标周期性运动的视频,所述视频包含连续的预设数量运动周期和连续预设数量的视频帧;
S102、采用姿态估计算法识别每一视频帧中做周期性运动的目标的关键点,计算每一视频帧中预设两个关键点的观测值,根据所述观测值得到所述目标的初始运动周期,其中,所述观测值为所述目标的预设两个关键点在视频帧中的距离;
S103、根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;
S104、根据定格动画的视频帧序列生成定格动画视频。
2.如权利要求1所述的方法,其特征在于,所述视频是通过固定视角拍摄得到的。
3.如权利要求1所述的方法,其特征在于,S101之后,所述方法还包括:
S1012、采用目标识别和跟踪算法,从起始点开始识别并跟踪目标,对视频帧中的目标进行透视变换操作,使目标在每个视频帧中保持在相同位置,和/或,使目标在每个视频帧中保持相同大小。
4.如权利要求3所述的方法,其特征在于,S101之后或S1012之前,所述方法还包括:
手动或自动选择所述视频中目标开始周期性运动之后的其中一帧视频帧作为执行S102或S1012的起始点。
5.如权利要求1所述的方法,其特征在于,S102具体包括:
S1021、在所述视频中抽取连续预设数量的视频帧;
S1022、针对所述连续预设数量的视频帧,采用目标识别和跟踪算法识别每一帧视频帧中周期性运动的目标的关键点,每个关键点用坐标值来表示;
S1023、根据所述连续预设数量的视频帧中的目标的关键点,计算每个视频帧中预设两个关键点的观测值V(i),得到所述视频的观测值序列,所述观测值为所述目标的预设两个关键点在视频帧中的距离;
S1024、对观测值序列进行离散傅里叶变换,找到响应最大的频率F,则初始观测值的周期为N/F,其中,N是所述连续预设数量的视频帧的数量;
S1025、根据所述初始观测值的周期得到初始运动周期M(0)。
6.如权利要求1所述的方法,其特征在于,所述针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,得到定格动画的视频帧序列具体包括:
S10311、在第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧中,选择观测值最大的视频帧作为初始运动周期的起始视频帧k(0),并作为起始运动周期节点k(0);
S10312、根据所述起始视频帧k(0)输出定格动画的视频帧序列的第一帧为k(0)+β*M(0),其中β是期望输出姿态在整个初始运动周期M(0)内所有姿态中的位置,β的取值在区间[0,1],0表示整个运动周期中的第一个姿态,1表示整个运动周期中的最后一个姿态;
S10313、在上一个周期节点k(i-1)之后的连续两个初始运动周期范围内的视频帧中,选择观测值最大的视频帧作为下一个运动周期节点k(i),i是正整数;
S10314、根据下一个周期节点k(i)计算第i个运动周期M(i);
S10315、选择第k(i)+β*M(i)帧输出到定格动画的视频帧序列中。
7.如权利要求1所述的方法,其特征在于,所述针对所述连续的预设数量运动周期,分别在不同的运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列具体包括:
S10321、在第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧中,选择观测值最大的视频帧作为初始运动周期的起始视频帧k(0),并作为起始周期节点k(0);
S10322、根据起始视频帧k(0)输出定格动画的视频帧序列的第一帧为k(0)+β(0)*M(0),其中β(0)是初始的输出姿态在整个初始运动周期M(0)内所有姿态中的位置,β(0)的取值在区间[0,1],0表示整个运动周期中的第一个姿态,1表示整个运动周期中的最后一个姿态;
S10323、在上一个周期节点k(i-1)之后的连续两个初始运动周期范围内的视频帧中,选择观测值最大的视频帧作为下一个运动周期节点k(i),i是正整数;
S10324、根据下一个周期节点k(i)计算第i个运动周期M(i);
S10325、选择第k(i)+β(i)*M(i)帧输出到定格动画的视频帧序列中,其中,当目标的周期性运动是向前进时,则β(i)=β(i-1)+1/M(i),如果β(i)>1,则β(i)=β(i)-1,当目标的周期性运动是向后退时,则β(i)=β(i-1)-1/M(i),如果β(i)<0,则β(i)=β(i)+1。
8.如权利要求6或7所述的方法,其特征在于,
所述第一个初始运动周期开始后至第二个初始运动周期结束之前的视频帧具体是第1/2初始运动周期M(0)至第3/2初始运动周期M(0)之间的视频帧;
所述连续两个初始运动周期范围内的视频帧具体是第3/4初始运动周期M(0)至第5/4初始运动周期M(0)之间的视频帧。
9.如权利要求6或7所述的方法,其特征在于,所述根据下一个周期节点k(i)计算第i个运动周期M(i)具体为:第i个运动周期M(i)=k(i)-k(i-1);
或者,
根据下一个周期节点k(i)计算第i个运动周期M(i)具体为:
第i个运动周期M(i)=M(i)'*x+M(i-1)*(1-x),其中,M(i)'=k(i)'-k(i-1),k(i)'=k(i),1>x>0,且x表示相邻两个运动周期长度的变化快慢;
根据得到的第i个运动周期M(i),重新计算下一个周期节点k(i)=k(i-1)+M(i)。
10.如权利要求1所述的方法,其特征在于,S104具体包括:
根据定格动画的视频帧序列中视频帧在所述视频中出现的顺序按预设规则排序,依次播放,生成定格动画视频。
11.一种定格动画的生成装置,其特征在于,所述装置包括:
获取模块,用于获取包含目标周期性运动的视频,所述视频包含连续的预设数量运动周期和连续预设数量的视频帧;
确定模块,用于采用姿态估计算法识别每一视频帧中做周期性运动的目标的关键点,计算每一视频帧中预设两个关键点的观测值,根据所述观测值得到所述目标的初始运动周期,其中,所述观测值为所述目标的预设两个关键点在视频帧中的距离;
抽取模块,用于根据所述初始运动周期确定起始周期节点,根据起始周期节点确定后续的周期节点,针对所述连续的预设数量运动周期,分别在每个运动周期中抽取一个相同姿态对应的视频帧,或者分别在每个运动周期中按运动的顺序或逆序分别抽取一个不同的姿态对应的视频帧,得到定格动画的视频帧序列;
生成模块,用于根据定格动画的视频帧序列生成定格动画视频。
12.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至10任一项所述的定格动画的生成方法的步骤。
13.一种计算机设备,包括:
一个或多个处理器;
存储器;以及
一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至10任一项所述的定格动画的生成方法的步骤。
CN202011210963.6A 2020-11-03 2020-11-03 定格动画的生成方法、计算机可读存储介质及计算机设备 Active CN112465937B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202011210963.6A CN112465937B (zh) 2020-11-03 2020-11-03 定格动画的生成方法、计算机可读存储介质及计算机设备
EP21888556.4A EP4242971A4 (en) 2020-11-03 2021-11-02 METHOD FOR GENERATING A VOLUME ANIMATION, COMPUTER READABLE RECORDING MEDIUM AND COMPUTER DEVICE
PCT/CN2021/128254 WO2022095859A1 (zh) 2020-11-03 2021-11-02 定格动画的生成方法、计算机可读存储介质及计算机设备
US18/034,503 US20240346738A1 (en) 2020-11-03 2021-11-02 Method for generating stop-motion animation, computer readable storage medium, and computer device
JP2023526556A JP7510008B2 (ja) 2020-11-03 2021-11-02 ストップモーションアニメーションの作成方法、コンピュータ可読記憶媒体及びコンピュータデバイス

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011210963.6A CN112465937B (zh) 2020-11-03 2020-11-03 定格动画的生成方法、计算机可读存储介质及计算机设备

Publications (2)

Publication Number Publication Date
CN112465937A CN112465937A (zh) 2021-03-09
CN112465937B true CN112465937B (zh) 2024-03-15

Family

ID=74834912

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011210963.6A Active CN112465937B (zh) 2020-11-03 2020-11-03 定格动画的生成方法、计算机可读存储介质及计算机设备

Country Status (5)

Country Link
US (1) US20240346738A1 (zh)
EP (1) EP4242971A4 (zh)
JP (1) JP7510008B2 (zh)
CN (1) CN112465937B (zh)
WO (1) WO2022095859A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112465937B (zh) * 2020-11-03 2024-03-15 影石创新科技股份有限公司 定格动画的生成方法、计算机可读存储介质及计算机设备
CN113038010B (zh) * 2021-03-12 2022-11-29 Oppo广东移动通信有限公司 视频处理方法、视频处理装置、存储介质与电子设备
CN114494534B (zh) * 2022-01-25 2022-09-27 成都工业学院 基于动作点捕捉分析的帧动画自适应显示方法及系统
CN114612775B (zh) * 2022-03-04 2024-07-05 北京科技大学设计研究院有限公司 一种基于机器视觉的棒材全线跟踪方法及装置
CN118279444A (zh) * 2022-12-29 2024-07-02 华为技术有限公司 一种定格动画生成方法、电子设备、云端服务器及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036536A (zh) * 2013-03-07 2014-09-10 腾讯科技(深圳)有限公司 一种定格动画的生成方法和装置
US10038858B1 (en) * 2017-03-31 2018-07-31 Intel Corporation Automated stop-motion animation
CN108446669A (zh) * 2018-04-10 2018-08-24 腾讯科技(深圳)有限公司 运动识别方法、装置及存储介质
CN109714629A (zh) * 2019-01-30 2019-05-03 南华大学 一种定格动画的生成方法和生成系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4860096A (en) * 1988-07-21 1989-08-22 Ball Corporation Motion analysis tool and method therefor
US5029997A (en) 1989-11-16 1991-07-09 Faroudja Philippe Y C Stop-frame animation system
WO2005010725A2 (en) 2003-07-23 2005-02-03 Xow, Inc. Stop motion capture tool
JP2011239021A (ja) 2010-05-06 2011-11-24 Nikon Corp 動画像生成装置、撮像装置および動画像生成プログラム
US9384579B2 (en) 2014-09-03 2016-07-05 Adobe Systems Incorporated Stop-motion video creation from full-motion video
US9242379B1 (en) * 2015-02-09 2016-01-26 The Trustees Of The University Of Pennysylvania Methods, systems, and computer readable media for producing realistic camera motion for stop motion animation
CN108712607A (zh) * 2018-05-16 2018-10-26 电子科技大学中山学院 一种定格动画的制作方法
CN112465937B (zh) * 2020-11-03 2024-03-15 影石创新科技股份有限公司 定格动画的生成方法、计算机可读存储介质及计算机设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104036536A (zh) * 2013-03-07 2014-09-10 腾讯科技(深圳)有限公司 一种定格动画的生成方法和装置
US10038858B1 (en) * 2017-03-31 2018-07-31 Intel Corporation Automated stop-motion animation
CN108446669A (zh) * 2018-04-10 2018-08-24 腾讯科技(深圳)有限公司 运动识别方法、装置及存储介质
CN109714629A (zh) * 2019-01-30 2019-05-03 南华大学 一种定格动画的生成方法和生成系统

Also Published As

Publication number Publication date
EP4242971A4 (en) 2024-05-08
JP7510008B2 (ja) 2024-07-02
CN112465937A (zh) 2021-03-09
EP4242971A1 (en) 2023-09-13
JP2023548843A (ja) 2023-11-21
WO2022095859A1 (zh) 2022-05-12
US20240346738A1 (en) 2024-10-17

Similar Documents

Publication Publication Date Title
CN112465937B (zh) 定格动画的生成方法、计算机可读存储介质及计算机设备
US10580453B1 (en) Cataloging video and creating video summaries
US10275654B1 (en) Video microsummarization
US11636610B2 (en) Determining multiple camera positions from multiple videos
US11200404B2 (en) Feature point positioning method, storage medium, and computer device
CN112258528B (zh) 图像处理方法和装置、电子设备
US10319410B1 (en) Video story assembly
CN111242975B (zh) 自动调整视角的全景视频渲染方法、存储介质及计算机设备
US9578279B1 (en) Preview streaming of video data
CN109598744B (zh) 一种视频跟踪的方法、装置、设备和存储介质
US8903139B2 (en) Method of reconstructing three-dimensional facial shape
CN112381071A (zh) 一种视频流中目标的行为分析方法、终端设备及介质
US11055927B2 (en) Method for building scene, electronic device and storage medium
CN111429476A (zh) 确定目标人物行动轨迹的方法和装置
CN114429474A (zh) 一种人体关键点检测方法、装置和计算机存储介质
CN109409321B (zh) 一种镜头运动方式的确定方法及装置
CN107844774A (zh) 图像显示的选择方法、装置、智能终端及存储介质
CN109919190B (zh) 直线段匹配方法、装置、存储介质及终端
CN110223219B (zh) 3d图像的生成方法及装置
CN115022549B (zh) 拍摄构图方法、装置、计算机设备和存储介质
CN111598806B (zh) 图像滤波方法和装置、电子设备及存储介质
WO2017096859A1 (zh) 照片的处理方法及装置
CN114550298A (zh) 短视频的动作识别方法及系统
CN111345023B (zh) 图像消抖方法、装置、终端及计算机可读存储介质
CN114443870A (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