CN112154670A - 视频的处理方法、装置和存储介质 - Google Patents

视频的处理方法、装置和存储介质 Download PDF

Info

Publication number
CN112154670A
CN112154670A CN201980033825.4A CN201980033825A CN112154670A CN 112154670 A CN112154670 A CN 112154670A CN 201980033825 A CN201980033825 A CN 201980033825A CN 112154670 A CN112154670 A CN 112154670A
Authority
CN
China
Prior art keywords
frame
speed
video
original
initial
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
CN201980033825.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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN112154670A publication Critical patent/CN112154670A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本申请实施例提供了一种视频的处理方法、装置和存储介质。方法包括:获取视频调速信息,视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及调速初始帧对应的初始速度、调速结束帧对应的目标速度;根据视频调速信息确定目标视频中的每一帧在原始视频中对应的帧位置,目标视频是对原始视频进行调速后的视频;根据目标视频中的每一帧在原始视频中对应的帧位置,获取目标视频。通过获取视频调速信息可以稳定地获取到经过调速处理后的目标视频,目标视频中每一帧或每几帧所对应的播放速度不同,从而实现了变速调速,提高了视频的显示效果,满足了用户对视频调速的个性化需求。

Description

视频的处理方法、装置和存储介质
技术领域
本发明涉及图像处理技术领域,尤其涉及一种视频的处理方法、装置和存储介质。
背景技术
在视频编辑领域中,经常需要对视频进行调速以获得慢动作或者快动作的播放效果。现有技术中的视频调速方式往往是针对视频的整体进行单一的调速,也即整个视频以2倍速或者0.5倍速进行编辑和播放,无法满足用户的个性化需求。
发明内容
本发明实施例提供了一种视频的处理方法、装置和存储介质,用于解决现有技术中存在的只能针对视频的整体进行单一调速,无法满足用户的个性化需求的问题。
本发明实施例的第一方面是为了提供一种视频的处理方法,包括:
获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;
根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置,其中,所述目标视频是对所述原始视频进行调速后的视频;
根据所述目标视频中的每一帧在原始视频中对应的帧位置,获取所述目标视频。
本发明的第二方面是为了提供一种视频的处理装置,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述存储器中存储的计算机程序以实现:获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置,其中,所述目标视频是对所述原始视频进行调速后的视频;根据所述目标视频中的每一帧在原始视频中对应的帧位置,获取所述目标视频。
本发明的第三方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第一方面所述的视频的处理方法。
本实施例提供的视频的处理方法,通过获取视频调速信息,根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置,而后根据所述目标视频中的每一帧在原始视频中对应的帧位置,从而获取到经过调速处理后的目标视频,从而可以实现视频的变速调速,提高了目标视频的显示效果,满足了用户对视频调速的个性化需求。
本发明的第四方面是为了提供一种视频的处理方法,包括:
获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;
根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数,所述调速参数包括调速起始时间、原始时长和调速后的目标时长;
根据所述调速参数,获取所述目标视频。
本发明的第五方面是为了提供一种视频的处理装置,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述存储器中存储的计算机程序以实现:获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数,所述调速参数包括调速起始时间、原始时长和调速后的目标时长;根据所述调速参数,获取所述目标视频。
本发明的第六方面是为了提供一种计算机可读存储介质,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于第四方面所述的视频的处理方法。
本实施例提供的视频的处理方法,通过获取视频调速信息,根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数,根据所述调速参数,获取所述目标视频,从而可以实现视频的变速调速,提高了目标视频的显示效果,满足了用户对视频调速的个性化需求。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例提供的一种视频的处理方法的流程示意图;
图2为本发明实施例提供的根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置的流程示意图;
图3为本发明实施例提供的根据所述部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置的流程示意图一;
图4为本发明实施例提供的根据所述视频调速信息,确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度的流程示意图;
图5为本发明实施例提供的获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度的流程示意图一;
图6为本发明实施例提供的获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度的流程示意图二;
图7为本发明实施例提供的至少部分地根据所述调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述调速中间帧对应的原始帧位置、调速后帧位置和播放速度的流程示意图;
图8为本发明实施例提供的根据所述部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置的流程示意图二;
图9为本发明实施例提供的另一种视频的处理方法的流程示意图;
图10为本发明实施例提供的根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数的流程示意图;
图11为本发明应用实施例提供的一种视频的处理方法的场景示意图;
图12为本发明实施例提供的一种视频的处理装置的结构示意图;
图13为本发明实施例提供的一种视频的处理装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
在视频编辑领域中,经常需要对视频进行调速以获得慢动作或者快动作的播放效果,然而,现有技术中的视频调速方式往往是针对视频的整体进行单一的调速,也即整个视频以2倍速或者0.5倍速进行编辑和播放,无法满足用户的个性化需求。基于此,本发明实施例提供了一种视频的处理方法、装置和存储介质,用于解决现有技术中存在的只能针对视频的整体进行单一调速,无法满足用户的个性化需求的问题。
本发明实施例提供的视频的处理方法可以用于处理航拍视频。示例的,用户可通过控制终端遥控无人飞行器,以在无人飞行器悬停或运动的过程中对目标场景进行拍摄,无人飞行器拍摄的视频可通过无线通讯链路传输至控制终端,进一步地,控制终端安装有可对视频进行编辑的应用程序(APP),该APP可对无人飞行器拍摄所得的航拍视频进行变速调速。示例的,用户可选择调速初始帧的帧位置和调速结束帧的帧位置,以及调速初始帧对应的初始速度和调速结束帧对应的目标速度。例如调速初始帧可以是原始航拍视频的第60帧,调速结束帧可以是原始航拍视频的第600帧,初始速度可以是1倍速,目标速度可以是2倍速。通过本发明实施例提供的视频处理方法可以获得播放速度从1倍速逐渐变化到2倍速的调速后的目标视频。区别于整个视频均以2倍速进行播放的现有技术,本发明实施例可以实现视频的变速调速,提高了目标视频的显示效果,满足了用户对视频调速的个性化需求。
下面结合附图,对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
图1为本发明实施例提供的一种视频的处理方法的流程示意图;参考附图1所示,本实施例提供了一种视频的处理方法,该方法的执行主体为视频的处理装置,可以想到的是,处理装置可以实现为软件、或者软件和硬件的组合。具体的,该方法可以包括:
S1:获取视频调速信息,视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及调速初始帧对应的初始速度、调速结束帧对应的目标速度。
其中,视频调速信息可以是针对全部的原始视频的调速信息,或者,也可以是针对部分的原始视频的调速信息。举例来说,在视频调速信息是针对全部的原始视频的调速信息时,视频调速信息中的调速初始帧即为原始视频中的首帧,调速结束帧即为原始视频中的末帧;在视频调速信息是针对部分的原始视频的调速信息时,视频调速信息中的调速初始帧可以为原始视频中的首帧,调速结束帧可以为原始视频中的中间帧;或者,视频调速信息中的调速初始帧为原始视频中的第一中间帧,调速结束帧可以为原始视频中的第二中间帧或者末帧,其中,第二中间帧所对应的帧位置要大于第一中间帧所对应的帧位置。
此外,本实施例对于视频调速信息的具体获取方式不做限定,本领域技术人员可以根据具体的应用需求和设计需求进行设置,例如:用户可以针对原始视频输入视频调节参数,根据视频调节参数可以确定视频调速信息;或者,用户可以针对原始视频输入执行操作,根据执行操作确定视频调速信息包括的原始视频中调速初始帧的帧位置和原始视频中调速结束帧的帧位置;在获取到原始视频中调速初始帧和调速结束帧的帧位置之后,可以针对调速初始帧和调速结束帧的速度进行配置,从而可以获得调速初始帧对应的初始速度和调速结束帧对应的目标速度。当然的,本领域技术人员也可以采用其他的方式来获取视频调速信息,只要能够保证视频调速信息获取的准确可靠性即可,在此不再赘述。
S2:根据视频调速信息确定目标视频中的每一帧在原始视频中对应的帧位置,其中,目标视频是对原始视频进行调速后的视频。
在获取到视频调速信息之后,可以对视频调速信息进行分析处理,从而可以获得目标视频中的每一帧在原始视频对应的帧位置。举例来说:原始视频中调速初始帧的帧位置为60帧,调速结束帧的帧位置为70帧,调速初始帧对应的初始速度为1倍速,调速结束帧对应的目标速度为2倍速;以目标视频中的第67帧为例,通过对上述视频调速信息的分析处理,可以确定目标视频中的第67帧与原始视频中的第69帧相对应,即目标视频中的第67帧在原始视频对应的帧位置为第69帧。
当然的,本领域技术人员也可以采用其他的方式来确定目标视频中的每一帧在原始视频中对应的帧位置,只要能够保证对目标视频中的每一帧在原始视频中对应的帧位置进行确定的准确可靠性即可,在此不再赘述。
S3:根据目标视频中的每一帧在原始视频中对应的帧位置,获取目标视频。
在获取到目标视频中每一帧在原始视频中对应的帧位置之后,可以通过目标视频中的每一帧在原始视频中对应的帧位置获取到相对应的帧,所获得的所有帧即构成了目标视频,进一步地,可以对目标视频进行显示。
本实施例提供的视频的处理方法,通过获取视频调速信息,根据视频调速信息确定目标视频中的每一帧在原始视频中对应的帧位置,而后根据目标视频中的每一帧在原始视频中对应的帧位置,从而获取到经过调速处理后的目标视频,其中,目标视频中的每一帧或每几帧所对应的播放速度不同,从而实现了视频的变速调速,提高了目标视频的显示效果,满足了用户对视频调速的个性化需求。
图2为本发明实施例提供的根据视频调速信息确定目标视频中的每一帧在原始视频中对应的帧位置的流程示意图;在上述实施例的基础上,继续参考附图2所示,本实施例中的根据视频调速信息确定目标视频中的每一帧在原始视频中对应的帧位置可以包括:
S21:根据视频调速信息,确定原始视频中的部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,部分视频帧包括调速初始帧、位于调速初始帧与调速结束帧之间的调速中间帧。
其中,对于调速初始帧和调速结束帧而言,调速初始帧对应的初始速度和调速结束帧对应的目标速度可以相同或者不同。此时,原始视频中的部分视频帧还可以包括位于调速初始帧与调速结束帧之间的若干调速中间帧;而对于调速中间帧而言,在调速初始帧对应的初始速度与调速结束帧对应的目标速度相同时,若干调速中间帧的速度可以与调速初始帧对应的初始速度相同或者不同。举例来说:现有调速初始帧对应的初始速度与调速结束帧对应的目标速度均为1倍速,一种可实现的方式,位于调速初始帧与调速结束帧之间的若干调速中间帧的速度与初始速度不同,且逐渐变化;例如:调速初始帧、若干调速中间帧、以及调速结束帧的播放速度依次为:1倍速、1.2倍速、1.4倍速、1.5倍速、1.3倍速、1.1倍速、1倍速,即若干调速中间帧的速度为先逐渐增大、后逐渐减小的变化趋势。
在调速初始帧对应的初始速度与调速结束帧对应的目标速度不同时,例如:调速初始帧对应的初始速度为1倍速,调速结束帧对应的结束速度为2倍速,此时,若干调速中间帧的速度可以大于初始速度,且小于结束倍速,例如:1.2倍速、1.4倍速、1.5倍速、1.8倍速、1.9倍速,即若干调速中间帧的速度为逐渐增大的变化趋势。
另外,为了能够准确地确定目标视频中的每一帧在原始视频中对应的帧位置,可以先对视频调速信息进行分析处理,从而可以获取到原始视频中的部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,该部分视频帧可以包括:调速初始帧、位于调速初始帧与调速结束帧之间的一个或多个调速中间帧。具体的,参考附图4所示,本实施例中的根据视频调速信息,确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度可以包括:
S211:获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度。
其中,在获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度时,参考附图5所示,一种可实现获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度的方式包括:
2111:根据原始视频中调速初始帧的帧位置,确定调速初始帧所对应的原始帧位置。
具体的,将调速初始帧在原始视频中的帧位置直接确定为调速初始帧所对应的原始帧位置。
2112:根据原始视频中调速初始帧的帧位置和调速初始帧所对应的初始速度,确定调速初始帧所对应的调速后帧位置。
其中,在获取到原始视频中调速初始帧的帧位置(调速初始帧所对应的原始帧位置)之后,可以根据调速初始帧的帧位置和调速初始帧所对应的初始速度确定调速初始帧所对应的调速后帧位置,具体的,可以获取原始视频中调速初始帧的帧位置与调速初始帧所对应的初始速度的比值,将该比值确定为调速初始帧所对应的调速后帧位置。
举例来说:原始视频中调速初始帧的帧位置为60帧,调速初始帧所对应的初始速度为1倍速,则可以确定调速初始帧所对应的调速后帧位置为60帧/1=60帧;在原始视频中调速初始帧的帧位置为60帧,调速初始帧所对应的初始速度为2倍速,则可以确定调速初始帧所对应的调速后帧位置为60帧/2=30帧;在原始视频中调速初始帧的帧位置为60帧,调速初始帧所对应的初始速度为0.5倍速,则可以确定调速初始帧所对应的调速后帧位置为60帧/0.5=120帧。
2113:根据调速初始帧所对应的初始速度,确定调速初始帧对应的播放速度。
其中,调速初始帧所对应的初始速度可以是预先设置的默认速度,或者也可以是用户指定或者配置的播放速度。在获取到调速初始帧所对应的初始速度之后,可以直接将调速初始帧所对应的初始速度确定为调速初始帧对应的播放速度。
当调速初始帧之前的视频帧的速度均为调速初始帧对应的初始速度时,可采用以上方式确定调速初始帧的调速后帧位置。举例来说,在原始视频的总长度为90帧,调速初始帧的帧位置为60帧,调速结束帧的帧位置为70帧时,该原始视频被视频调速信息划分为3个视频段:第一视频段:1-59帧、第二视频段:60-70帧和第二视频段:71-90帧。对于上述第一视频段而言,在第60帧所对应的初始速度为2倍速,且1-59帧所对应的播放速度与第60帧所对应的初始速度相同时,那么,由于第一段视频中的每一帧对应的播放速度也为2倍速,那么,可采用以上方式确定调速初始帧的调速后帧位置,即调速初始帧对应的调速后帧位置可为60/2=30帧。
然而当调速初始帧之前的视频帧的速度均为原始视频中第一帧的播放速度时,举例来说,第60帧所对应的初始速度为2倍速,且1-59帧所对应的播放速度均为第一帧的播放速度,即1倍速时,那么,调速初始帧所对应的调速后帧位置与第一帧的播放速度相关。参考图6所示,可采用以下方式确定调速初始帧的调速后帧位置。
2114:根据原始视频中调速初始帧的帧位置,确定调速初始帧对应的原始帧位置。
具体的,将调速初始帧在原始视频中的帧位置直接确定为调速初始帧所对应的原始帧位置。
2115:根据原始视频中调速初始帧的帧位置和原始视频中第一帧的播放速度,确定调速初始帧所对应的调速后帧位置。
举例来说:原始视频中调速初始帧的帧位置为60帧,第一帧的播放速度为1倍速,则可以确定调速初始帧所对应的调速后帧位置为60帧/1=60帧;在原始视频中调速初始帧的帧位置为60帧,第一帧的播放速度为2倍速,则可以确定调速初始帧所对应的调速后帧位置为60帧/2=30帧;在原始视频中调速初始帧的帧位置为60帧,第一帧的播放速度为0.5倍速,则可以确定调速初始帧所对应的调速后帧位置为60帧/0.5=120帧。
2116:根据调速初始帧所对应的初始速度,确定调速初始帧对应的播放速度。
其中,调速初始帧所对应的初始速度可以是预先设置的默认速度,或者也可以是用户指定或者配置的播放速度。在获取到调速初始帧所对应的初始速度之后,可以直接将调速初始帧所对应的初始速度确定为调速初始帧对应的播放速度。
需要说明的是,本实施例中的步骤S2111与步骤S2112、S2113之间的执行顺序并不限于序号所显示的顺序,也即,步骤S2112、S2113也可以在步骤S2111之前执行,或者,步骤S2112、S2113也可以与步骤S2111同时执行。相类似,步骤S2114与步骤S2115、S2116之间的执行顺序并不限于序号所显示的顺序,也即,步骤S2115、S2116也可以在步骤S2114之前执行,或者,步骤S2115、S2116也可以与步骤S2114同时执行。
S212:至少部分地根据调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定调速中间帧对应的原始帧位置、调速后帧位置和播放速度。
在获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度之后,可以至少部分地根据调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定调速中间帧对应的原始帧位置、调速后帧位置和播放速度。需要说明的是,上述的“至少部分地根据调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定调速中间帧对应的原始帧位置、调速后帧位置和播放速度”是指可以根据调速初始帧所对应的原始帧位置、调速后帧位置和播放速度确定与调速初始帧相邻的第一个调速中间帧对应的原始帧位置、调速后帧位置和播放速度;而位于第一个调速中间帧之后的其他调速中间帧所对应的原始帧位置、调速后帧位置和播放速度则可以根据第一个调速中间帧的原始帧位置、调速后帧位置和播放速度进行确定。
具体的,参考附图7所示,本实施例中的至少部分地根据调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定调速中间帧对应的原始帧位置、调速后帧位置和播放速度可以包括:
S2121:至少部分地根据调速初始帧对应的原始帧位置和播放速度,确定原始视频中待处理帧的帧位置。
其中,待处理帧位于调速初始帧与调速结束帧之间;在获取调速初始帧所对应的原始帧位置和播放速度之后,可以至少部分地根据调速初始帧对应的原始帧位置和播放速度,确定原始视频中待处理帧的帧位置。需要说明的是,上述的“至少部分地根据调速初始帧对应的原始帧位置和播放速度,确定原始视频中待处理帧的帧位置”是指可以根据调速初始帧对应的原始帧位置和播放速度确定与调速初始帧相邻的第一个待处理帧对应的帧位置;而位于第一个待处理帧之后的其他待处理帧所对应的帧位置则可以根据第一个待处理帧的原始帧位置和播放速度进行确定。
举例来说:调速初始帧对应的原始帧位置为org_pos0,播放速度为speed,而后可以根据调速初始帧对应的原始帧位置和播放速度确定与调速初始帧相邻的第一个待处理帧对应的帧位置:org_pos1=org_pos0+speed,而后可以根据第一个待处理帧对应的帧位置org_pos1和播放速度speed1确定相邻的第二个待处理帧对应的帧位置org_pos2=org_pos1+speed1,依次类推,可以获得原始视频中多个待处理帧的帧位置。
需要注意的是,在org_pos+speed的和值不是整数时,可以对和值进行取整处理,取整方式可以为向下取整、向上取整或者利用其它取整算法进行取整均可,较为优选的,可以对和值采用向下取整操作,从而可以获取到多个待处理帧的帧位置。
S2122:根据原始视频中待处理帧的帧位置、原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及初始速度、目标速度,确定待处理帧的插值速度。
在获取到待处理帧的帧位置之后,可以对原始视频中待处理帧的帧位置、原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及初始速度、目标速度进行分析处理,从而可以确定待处理帧的插值速度。举例来说:原始视频中调速初始帧的帧位置为60帧、调速结束帧的帧位置为70帧,初始速度为1倍速,目标速度为2倍速,待处理帧的帧位置为65帧时,则可以根据公式:
Figure BDA0002787809160000111
Figure BDA0002787809160000112
也即,第65帧的插值速度为
Figure BDA0002787809160000113
相类似,在待处理帧的帧位置为67帧时,则可以根据上述公式获得第67帧的插值速度为
Figure BDA0002787809160000114
Figure BDA0002787809160000115
S2123:当待处理帧的插值速度满足预设条件时,则将待处理帧作为调速中间帧,并获取待处理帧对应的原始帧位置、调速后帧位置和播放速度;否则,则将待处理帧丢弃。
在获取到待处理帧的插值速度之后,可以对待处理帧的插值速度进行分析识别,以判断待处理帧的插值速度是否满足预设条件,其中,预设条件包括:待处理帧的插值速度与待处理帧的前一帧对应的播放速度的差值大于或等于预设阈值;这里的预设阈值可以根据不同的应用场景和应用需求进行任意设置,例如:当初始速度大于目标速度时,预设阈值为第一预设阈值,也即,该第一预设阈值是用于实现对视频进行慢速调节的最小调节粒度;当初始速度小于目标速度时,预设阈值为不同于第一预设阈值的第二预设阈值,也即,该第二预设阈值是用于实现对视频进行快速调节的最小调节粒度。
通常情况下,在对原始视频进行调速处理时,可以包括慢速调节和快速调节。举例来说:对于慢速调节(速度<1.0),可以每0.25一个调速间隔,如:0%~25%、25%~50%、50%~75%、75%~100%;对于快速调节(速度>1.0),可以每1.0一个调速间隔,如:100%~200%、200%~300%......700%~800%。针对上述的每个间隔,可以将每个调节间隔再细化8个颗粒,也就是对于慢速视频,最小颗粒是1/32,该对原始视频进行慢速调节的最小颗粒即为第一预设阈值;对于快速视频,最小颗粒是1/8,该对原始视频进行快速调节的最小颗粒即为第二预设阈值。
可以想到的是,对原始视频进行慢速调节和快速调节的具体粒度并不限于上述举例说明,本领域技术人员还可以根据具体的应用需求和设计需求来任意调节慢速调节和快速调节的信息;其中,考虑到设备对视频信息的处理性能,快速调节的最高倍速可为8倍速。
在对待处理帧的插值速度进行分析识别的结果为:待处理帧的插值速度不满足预设条件时,也即,待处理帧的插值速度与待处理帧的前一帧对应的播放速度的差值小于预设阈值,则将待处理帧丢弃,即不计算该待处理帧所对应的原始帧位置、调速后帧位置和播放速度。
在对待处理帧的插值速度进行分析识别的结果为:待处理帧的插值速度满足预设条件时,也即,待处理帧的插值速度与待处理帧的前一帧对应的播放速度的差值大于或等于预设阈值,则可以将待处理帧作为调速中间帧,并获取待处理帧对应的原始帧位置、调速后帧位置和播放速度,需要注意的是,上述的待处理帧对应的播放速度是可以根据待处理帧的插值速度和预设阈值确定得到。具体的,根据插值速度和预设阈值,可以利用以下公式,确定与视频帧相对应的播放速度:
Figure BDA0002787809160000121
其中,V为与视频帧相对应的播放速度,Vp为插值速度,λ为预设阈值,“round()”为取整函数。举例来说,在预设阈值为第一预设阈值1/32时,那么,确定与视频帧相对应的播放速度:
Figure BDA0002787809160000122
Figure BDA0002787809160000123
在预设阈值为第二预设阈值1/8时,那么,确定与视频帧相对应的播放速度:
Figure BDA0002787809160000124
通过上述方法,可以准确、快速地识别出插值速度满足预设条件的调速中间帧,并可以根据插值速度确定调速中间帧所对应的原始帧位置、调速后帧位置和播放速度,可以想到的是,调速中间帧是指位于调速初始帧和调速结束帧之间的至少一部分视频帧,该调速中间帧是部分视频帧的一部分,因此,也保证了对部分视频帧所对应的原始帧位置、调速后帧位置和播放速度进行获取的准确可靠性。
S22:根据部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置。
在获取到部分视频帧所对应的原始帧位置、调速后帧位置和播放速度之后,可以对部分视频帧所对应的原始帧位置、调速后帧位置和播放速度进行分析处理,从而可以确定目标视频中每一帧在原始视频中对应的帧位置,具体的,参考附图3所示,一种可实现的方式为,根据部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置,包括:
S221:将部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储,获得关联关系集合。
在获取到部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度之后,可以将每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储,从而可以获得关联关系集合,该关联关系集合中包括与部分视频帧中的每个视频帧所对应的关联关系。
S222:根据关联关系集合,确定目标视频中的每一帧在原始视频中对应的帧位置。
在获取到关联关系集合之后,可以根据关联关系集合来确定目标视频中每一帧在原始视频中对应的帧位置。具体的,可以在关联关系集合中,确定与视频帧位置相对应的第一关联关系和第二关联关系,第一关联关系与第二关联关系相邻,并且,目标视频中的每一帧所对应的帧位置大于或等于第一关联关系所对应的第一调速后帧位置,且小于第二关联关系所对应的第二调速后帧位置;而后,利用第一关联关系确定目标视频中的每一帧在原始视频中对应的帧位置。
举例来说:针对视频长度为90帧,调速初始帧的帧位置为60帧,调速结束帧的帧位置为70帧,调速初始帧对应的初始速度为1倍速,调速结束帧对应的目标速度为2倍速,针对上述的视频信息,可以获得关联关系集合,关联关系集合中包括有每个视频帧所对应的原始帧位置、调速后帧位置和播放速度的关联关系(原始帧位置,调速后帧位置,播放速度),例如,关联关系包括:(60,60,1)、(62,62,1.25)、(64.5,64,1.375)、(65.875,65,1.5)、(67.375,66,1.75)、(69.125,67,1.875)、(71,68,2)。
在对目标视频进行播放时,获取当前播放帧所对应的帧位置,假设播放帧的帧位置为第63帧,根据上述建立的关联关系集合中的所有关联关系,可以根据目标视频中待播放帧的帧位置与关联关系中的所有调速后帧位置进行分析比较,从而可以查找到此播放帧所对应的第一关联关系和第二关联关系,即63帧就介于第一关联关系(62/62/1.25)和第二关联关系(64.5/64/1.375)帧之间),而后,获取第一关联关系中关联存储的三个值(org_pos/speed_pos/speed),其中,org_pos为62,speed_pos为62,speed为1.25,而后,利用公式org_pos+(pos-speed_pos)*speed获得当前播放帧在视频中的原始位置,也即,当前63帧的播放帧所对应的原始帧位置为:62+(63-62)*1.25=63.25,下取整后为63帧。
根据关联关系集合,确定目标视频中的每一帧在原始视频中对应的帧位置,有效地保证了目标视频中每一帧在原始视频中对应的帧位置确定的准确可靠性,而后可以根据该帧位置对目标视频进行播放。
另外,参考附图8所示,另一种可实现的方式为,根据部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置,包括:
S223:获取目标视频中的每一帧对应的帧区间,帧区间的区间起始帧和区间结束帧为部分视频帧中相邻的两帧。
S224:根据目标视频中的每一帧在目标视频中的帧位置、区间起始帧对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置。
具体的,在对目标视频进行播放时,可以获取目标视频中当前播放帧所对应的帧位置,通过该帧位置可以确定与当前播放帧所对应的帧区间。举例来说:在当前播放帧所对应的帧位置为67帧时,则可以获取该67帧所对应的帧区间为(66,68),其中,66为区间起始帧,68为区间结束帧;而后,可以可以获取区间起始帧(66帧)所对应的原始帧位置(67.375)、调速后帧位置(66)和播放速度(1.75),根据目标视频中的每一帧在目标视频中的帧位置67帧、区间起始帧对应的原始帧位置67.375、调速后帧位置66和播放速度1.75,确定目标视频中的当前播放帧67帧在原始视频中对应的帧位置为69帧,具体的,可以根据org_pos+(pos-speed_pos)*speed获得当前播放帧在视频中的原始位置,也即,当前播放帧67帧在原始视频中对应的帧位置为:67.375+(67-66)*1.75=69.125,下取整后为69帧,从而确定并可以解码原始视频中的第69帧图像。
通过获取目标视频中的每一帧对应的帧区间,而后根据目标视频中的每一帧在目标视频中的帧位置、区间起始帧对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置,有效地保证了目标视频中每一帧在原始视频中对应的帧位置确定的准确可靠性,而后可以根据该帧位置对目标视频进行播放。
在上述实施例的基础上,为了能够快速、准确地确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,当调速初始帧并非原始视频的第一帧时,此时的部分视频帧还可以包括第一帧,该第一帧即为原始视频中的首个视频帧。进而,本实施例中的确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,还包括:
S213:确定第一帧对应的原始帧位置、调速后帧位置和播放速度。
其中,原始视频中的第一帧也会是调速后的目标视频中的第一帧,也即第一帧对应的原始帧位置和调速后帧位置可以直接获取到,例如,第一帧对应的原始帧位置、调速后帧位置均为0,而第一帧对应的播放速度可以为预先设置的默认速度、配置速度或者用户指定的播放速度均可。
进一步的,当调速结束帧为原始视频的最末帧时,部分视频帧还包括调速结束帧;此时,本实例中的确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,还包括:
S214:确定调速结束帧对应的原始帧位置、调速后帧位置和播放速度。
其中,当调速结束帧为原始视频的最末帧时,可以根据视频长度确定调速结束帧对应的原始帧位置,例如,调速结束帧对应的原始帧位置为70。而最末帧对应的播放速度可以为调速结束帧所需要达到的目标速度,或者也可以是默认或者预先配置的其他速度。示例的,在确定最末帧对应的调速后帧位置时,可以获取原始视频的总长度、最末帧前的一帧对应的原始帧位置、调速后帧位置和播放速度,而后根据原始视频的总长度、最末帧前的一帧对应的原始帧位置、调速后帧位置和播放速度确定最末帧对应的调速后帧位置。具体的,可以利用以下公式来确定最末帧对应的调速后帧位置:
speed_pos_end=speed_pos+(length-org_pos)/speed;
其中,speed_pos_end为最末帧对应的调速后帧位置,speed_pos为最末帧前的一帧对应的调速后帧位置,length为原始视频的总长度,org_pos为最末帧前的一帧对应的原始帧位置,speed为调速结束帧后的一帧对应的播放速度。
举例来说,原始视频共有70帧,调速初始帧为原始视频中的第60帧,调速结束帧为原始视频中的第70帧,最末帧前的一帧对应的(原始帧位置,调速后帧位置,播放速度)为(69.125,67,1.875),length=70,则speed_pos+(length-org_pos)/speed=67+(70-69.125)/1.875=67.46(约),则记录最后结束点(70/67.46/1.875)。
进一步的,当调速结束帧并非原始视频的最末帧时,部分视频帧还包括原始视频中位于调速结束帧后的一帧以及最末帧;其中,调速结束帧后的一帧可以与调速结束帧相邻或者不相邻。此时,确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,还包括:
S215:确定调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度。
由于部分视频帧包括调速结束帧后的一帧,因此,需要确定调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度。具体的,在获取上述关联关系集合的过程中,可以实时地判断关联关系集合中当前帧的原始帧位置是否超过了调速结束帧所对应的帧位置,在当前帧的原始帧位置大于调速结束帧所对应的帧位置时,则可以将当前帧确定为调速结束帧后的一帧,其中,调速结束帧后的一帧在原始视频中的帧位置是根据调速中间帧的最后一帧对应的原始帧位置和播放速度确定得到的,例如:当前帧的原始帧位置=调速中间帧的最后一帧对应的原始帧位置+播放速度。举例来说,原始视频共有90帧,调速初始帧为原始视频中的第60帧,调速结束帧为原始视频中的第70帧,调速中间帧的最后一帧对应的(原始帧位置,调速后帧位置,播放速度)为(69.125,67,1.875),则调速结束帧后的一帧的原始帧位置=调速中间帧的最后一帧对应的原始帧位置+播放速度=69.125+1.875=71。
进一步的,可以将调速结束帧所对应的目标速度确定为调速结束帧后的一帧所对应的播放速度。而后,可以根据位于调速中间帧的最后一帧的调速后帧位置确定调速结束帧后的一帧的调速后位置,即speed_posi+1=speed_posi+1,其中,speed_posi+1为调速结束帧后的一帧的调速后位置,speed_posi为调速中间帧的最后一帧的调速后帧位置。如此,则记录调速结束帧后的一帧(71,68,2)。
S216:确定最末帧对应的原始帧位置、调速后帧位置和播放速度。
具体的,在确定最末帧对应的原始帧位置时,可以根据视频长度确定最末帧对应的原始帧位置,例如,最末帧对应的原始帧位置为90。而最末帧对应的播放速度可以为调速结束帧所需要达到的目标速度,或者也可以是默认或者预先配置的其他速度。在确定最末帧对应的调速后帧位置时,可以获取原始视频的总长度、调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度,而后根据原始视频的总长度、调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度确定最末帧对应的调速后帧位置。具体的,可以利用以下公式来确定最末帧对应的调速后帧位置:
speed_pos_end=speed_pos+(length-org_pos)/speed;
其中,speed_pos_end为最末帧对应的调速后帧位置,speed_pos为调速结束帧后的一帧对应的调速后帧位置,length为原始视频的总长度,org_pos为调速结束帧后的一帧对应的原始帧位置,speed为调速结束帧后的一帧对应的播放速度。
举例来说,原始视频共有90帧,调速初始帧为原始视频中的第60帧,调速结束帧为原始视频中的第70帧,调速结束帧后的一帧对应的(原始帧位置,调速后帧位置,播放速度)为(71,68,2),则speed_pos_end=speed_pos+(length-org_pos)/speed=68+(90-71)/2=77.5,记录最后一帧(90,77.5,2)。
通过上述方式确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,有效地保证了对部分视频帧对应的原始帧位置、调速后帧位置和播放速度进行获取的准确可靠性,并且,可以想到的是,由于是对部分视频帧的原始帧位置、调速后帧位置和播放速度进行计算和存储,有效地提高了数据处理的速度和质量,降低了数据处理所需要占用的数据资源,并且也降低了所占用的存储区间。
图9为本发明实施例提供的另一种视频的处理方法的流程示意图;参考附图9所示,本实施例提供了另一种视频的处理方法,该方法的执行主体为视频的处理装置,该处理装置可以实现为软件、或者软件和硬件的组合。需要说明的是,本实施例所提供的视频的处理方法与上述图1所对应的视频的处理方法的应用环境不同,上述图1所对应的视频的处理方法的应用环境可以包括基于安卓系统所构成的应用环境,本实施例中提供的视频的处理方法的应用环境可以包括基于IOS系统所构成的应用环境。
具体的,该方法可以包括:
S101:获取视频调速信息,视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及调速初始帧对应的初始速度、调速结束帧对应的目标速度。
其中,本实施例中步骤S101的具体实现方式和实现效果与上述实施例中步骤S1的具体实现方式和实现效果相类似,具体可参考上述陈述内容,在此不再赘述。
S102:根据视频调速信息确定原始视频调速后的目标视频对应的调速参数,调速参数包括调速起始时间、原始时长和调速后的目标时长。
在获取到视频调速信息之后,可以对视频调速信息进行分析处理,从而可以获取到原始视频调速后的目标视频对应的调速参数,具体的,参考附图10所示,本实施例中的根据视频调速信息确定原始视频调速后的目标视频对应的调速参数可以包括:
S1021:根据视频调速信息,确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,部分视频帧包括调速初始帧和位于调速初始帧和调速结束帧之间的调速中间帧。
其中,本实施例中步骤S1021的具体实现方式和实现效果与上述实施例中步骤S21的具体实现方式和实现效果相类似,具体可参考上述陈述内容,在此不再赘述。
S1022:将部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储以获得关联关系集合。
其中,本实施例中步骤S1022的具体实现方式和实现效果与上述实施例中步骤S221的具体实现方式和实现效果相类似,具体可参考上述陈述内容,在此不再赘述。
S1023:根据关联关系集合,确定原始视频调速后的目标视频对应的调速参数。
在获取到关联关系集合之后,可以利用预设的处理算法对关联关系集合进行分析处理,从而可以确定原始视频调速后的目标视频对应的调速参数,该调速参数包括调速起始时间、原始时长和调速后的目标时长。
以(org_pos,speed_pos,speed)表示上述关联关系为例,其中,org_pos为原始帧位置、speed_pos为调速后帧位置,speed为播放速度。取相邻两组(org_pos1,speed_pos1,speed1)(org_pos2,speed_pos2,speed2),根据起始帧位置org_pos1可得到调速起始时间,根据org_pos2与org_pos1的差可得到原始时长,根据org_pos2与org_pos1的差与speed1的比值可以得到调速后的目标时长。如此,每相邻两组关联关系可得到一组对应的调速参数。
S103:根据调速参数,获取目标视频。
在获取到调速参数之后,可以根据调速参数获取目标视频,从而实现了对调速处理后的目标视频进行稳定、有效地播放。
本发明实施例相当于把整个视频划分为多个视频段,每个视频段对应的播放速度不同,从而在整体上实现视频的变速调速。
本实施例提供的视频的处理方法,通过获取视频调速信息,根据视频调速信息确定原始视频调速后的目标视频对应的调速参数,根据调速参数,获取目标视频,从而实现了变速调速,提高了目标视频的显示效果,满足了用户对视频调速的个性化需求。
具体应用时,参考附图11所示,本应用实施例提供了一种视频的处理方法,该方法的执行主体为视频的处理装置,在该处理装置执行该视频的处理方法时,可以包括视频采集和视频处理的过程,具体的:
step0:获取待处理的视频数据。
具体的,通过无人机上的拍摄装置可以获取目标对象的视频数据。或者,可以利用飞艇/无人车加拍摄装置来获取到针对目标对象的视频数据;或者,还可以通过遥控汽车加360°摄像头来获取到针对目标对象的视频数据;或者采用摄像头联动技术来获取到针对目标对象的视频数据。
step2:将视频数据传输到的处理装置,处理装置对视频数据进行处理。
其中,处理装置可以为手机、平板电脑、台式电脑等等可以对视频数据进行处理的终端设备。在处理装置获得视频数据之后,可以对视频数据进行处理,具体的,可以对视频数据进慢速调节或者快速调节;其中,对于慢速调节(速度<1.0),可以每0.25一个间隔,如0%~25%,25%~50%,50%~75%,75%~100%;对于快速调节(速度>1.0),每1.0一个间隔,如100%~200%,200%~300%......700%~800%。进一步的,对于每个间隔,可以再细化8个颗粒,也就是对于慢速视频,最小颗粒是1/32,对于快速视频,最小颗粒是1/8。为了便于理解,以原始视频的长度为90帧,调速初始帧A点为第60帧,速度为1倍速,调速结束帧B点为第70帧,速度为2倍速为例进行说明,并且,为了便于说明,定义以下参数:org_pos(i)为第i帧的对应的原始帧位置,speed_pos(i)为第i帧的调速后帧位置,org_speed为通过线性插值获得的插值速度,慢速调节:speed=round(org_speed*32)/32,快速调节,speed=round(org_speed*8)/8,其中,round为取整函数。
具体的,该方法包括以下步骤:
step2.1:通过线性插值,可以得到从第60帧到第70帧之间的每一帧的插值速度为1、1.1、1.2、1.3、1.4、1.5、1.6、1.7、1.8、1.9、2。此步骤为可选,也可在后续步骤中获取调速中间帧的插值速度。
step2.2:对于第60帧,原视频帧位置org_pos=60,插值速度org_speed=1,此时假设从第1~59帧的速度与第60帧的速度相同,均为1倍速,进而可以获得调速后的帧位置speed_pos=org_pos/org_speed=60/1=60,speed=org_speed=1,此时可以获取到org_pos、speed_pos和speed,其中,为了减少中间计算过程中的进度损失,speed_pos可以为double类型,中间计算过程不做取整计算。关联存储上述参数,即获得关联关系(60,60,1),并进入下一个处理点为org_pos(60)+speed(60)=60+1=61。
step2.3:对于第61帧,原视频帧位置org_pos(61)=org_pos(60)+speed=60+1=61,插值速度org_speed=1.1,speed_pos(61)=speed_pos(60)+1=60+1=61,获取插值速度与speed(60)之间的差值为0.1,将0.1与对视频进行快速调节的最小颗粒1/8进行比较,0.1小于1/8,因此,并不对此帧(61帧)进行关联存储,并进入下一个处理点是org_pos(61)+speed(60)=61+1=62。
step2.4:对于第62帧,原视频帧位置org_pos(62)=org_pos(61)+speed=61+1=62,插值速度org_speed=1.2,获取到插值速度与上一个存储的速度speed(60)之间的差值为1.2-1=0.2,将0.2与对视频进行快速调节的最小颗粒1/8进行比较,0.2大于1/8,因为用户可调节的速度一定在上述预先规划好的细化颗粒上,假如不在颗粒上,则需要将speed归到最近的颗粒速度上,因此,根据公式speed(62)=round(org_speed*8)/8=1.25,speed_pos(62)=speed_pos(61)+1=62,关联存储(62,62,1.25),并进入下一个处理点是org_pos(62)+speed(62)=62+1.25=63.25。
step2.5:对于第63帧(63.25向下取整),原视频帧位置org_pos(63)=org_pos(62)+speed(62)=63.25,插值速度org_speed=1.3,speed_pos=62+1=63,获取到插值速度与上一个存储的速度speed(62)之间的差值为0.05,0.05小于1/8,因此并不对此帧进行关联存储,并进入下一个处理点是org_pos(63)+speed(62)=63.25+1.25=64.5。
其中,针对下一个处理点为63.25帧时,由于不存在63.25帧,因此对上述处理点进行取整操作,为了保证数据处理的质量和效率,可以对上述处理点进行向下取整操作,从而可以获得待处理的63帧,此时,获取到的63帧是之前计算跳过的视频帧。
step2.6:对于第64帧(64.5向下取整),原视频帧位置org_pos(64)=org_pos(63)+speed(62)=63.25+1.25=64.5,插值速度org_speed=1.4,获取到插值速度与上一个存储的速度speed(62)之间的差值为0.15,0.15大于1/8,则根据公式speed(64)=round(org_speed*8)/8=1.375,speed_pos=63+1=64,关联存储(64.5,64,1.375),并进入下一个处理点是org_pos(64)+speed(64)=64.5+1.375=65.875。
step2.7:对于第65帧(65.875向下取整),原视频帧位置org_pos(65)=org_pos(64)+speed(64)=64.5+1.375=65.875,插值速度org_speed=1.5,获取到插值速度与上一个存储的速度speed(64)之间的差值为0.125,0.125=1/8,则根据公式speed=round(org_speed*8)/8=1.5,speed_pos=64+1=65,关联存储(65.875,65,1.5),并进入下一个处理点是org_pos(65)+speed(65)=65.875+1.5=67.375。
step2.8:对于第67帧(67.375向下取整),原视频帧位置org_pos(67)=org_pos(65)+speed(65)=65.875+1.5=67.375,插值速度org_speed=1.7,获取到插值速度与上一个存储的速度speed(65)之间的差值为0.2,0.2大于1/8,则根据公式speed=round(org_speed*8)/8=1.75,speed_pos=65+1=66,关联存储(67.375,66,1.75),并进入下一个处理点是org_pos(67)+speed(67)=67.375+1.75=69.125。
step2.10:对于第69帧(69.125向下取整),原视频帧位置org_pos(69)=org_pos(67)+speed(67)=67.375+1.75=69.125,插值速度org_speed=1.9,获取到插值速度与上一个存储的速度speed(67)之间的差值为0.15,0.15大于1/8,则根据公式speed=round(org_speed*8)/8=1.875,speed_pos=66+1=67,关联存储(69.125,67,1.875),并进入下一个处理点是org_pos(69)+speed(69)=69.125+1.875=71。
step2.11:对于第71帧,原视频帧位置org_pos(71)=org_pos(69)+speed(69)=69.125+1.875=71,该帧所对应的原视频帧位置超过B点,此时,可以确定org_speed=2,speed_pos=67+1=68,关联存储(71,68,2)。
step2.12:针对原始视频中的最后一帧,该最后一帧对应的调速后的帧位置可以利用公式speed_pos(71)+(length-org_pos(71))/speed(71)来计算,从而可以获得speed_pos=68+(90-71)/2=77.5,所以记录最后一帧的关联关系为(90,77.5,2)。
需要说明的是,如果原视频只有70帧,即此时的调速结束帧B点即为原始视频的最末帧,此时,计算到原视频帧位置org_pos=org_pos+speed=69.125+1.875=71,超过B点时,则获取上一存储点的三个值为(69.125,67,1.875),整个视频的帧数length=70,此时,利用以下公式speed_pos+(length-org_pos)/speed=67+(70-69.125)/1.875=67.46(约),则记录最后结束点值(70,67.46,1.875)。
step2.13:另外,针对原始视频中的第一帧而言,可以记录该第一帧的关联关系为(0,0,1)。
至此存储的数组有(0,0,1);(60,60,1);(62,62,1.25);(64.5,64,1.375);(65.875,65,1.5);(67.375,66,1.75);(69.125,67,1.875);(71,68,2);(90,77.5,2)。
其中,通过上述所记录的数组数据可知,对于视频中的多个视频帧而言,其播放速度不相同,从而可以增加的视频的播放效果,例如:可以使得视频的播放效果逐渐加快或者逐渐变慢,或者,使得视频的播放效果先是逐渐加快、而后逐渐变慢等等,使得视频的播放效果得到了大大的提升和改进,满足了用户的个性化需求。
另外,无论针对什么类型、什么长度的视频而言,利用本应用实施例中的处理方法,最多只需要存储96个关联存储值,就可以计算出任何一个视频加速后需要显示的视频是哪一帧。例如:针对调速初始帧到调速结束帧是从60帧到600帧,从速度1加速到2的原始视频而言,也只需要记录7~8个关联存储值就可以。这样,有效地提高了数组获取的质量和效率,减少了为了获取数组而对数据进行计算的复杂度和困难度,降低了数组所需要占用的存储空间。
进一步的,在获取到上述数组之后,还可以包括以下步骤:
step2.14:在对视频进行播放时,当处理装置的应用系统为安卓android系统时,则可以获取到当前播放帧的时间戳,而后将时间戳发送给解码器,从而可以获得显示相对应的帧。
例如:可以获取当前播放帧pos(假设播放第63帧,即播放调速后的目标视频中的第63帧时),根据上述建立的数组,查找到此播放帧所在的调速后帧位置的间隔(结合上面例子,63就介于62(62/62/1.25)和64(64.5/64/1.375)帧之间),并取出间隔开始位置三个值(org_pos/speed_pos/speed),结合上面例子则是62/62/1.25,根据公式org_pos+(pos-speed_pos)*speed可以获得当前播放帧在视频中的原始位置,即63帧所对应的原视频帧位置为62+(63-62)*1.25=63.25,对63.25进行下取整后,获得原视频帧位置为63帧,并解码原始视频中的第63帧图像。
又如,当前播放帧为67帧,67介于66(67.375,66,1.75)和68(71,68,2)之间,因此,根据公式org_pos+(pos-speed_pos)*speed获得当前播放帧在视频中的原始位置为67.375+(67-66)*1.75=69.125,下取整后为69帧,解码原视频中的第69帧图像。
又如,当前播放帧为70帧,70介于68(71,68,2)和77.5(90,77.5,2)之间,因此,根据公式org_pos+(pos-speed_pos)*speed获得当前播放帧在视频中的原始位置为71+(70-68)*2=75,解码原视频中的第75帧图像。
又如,当前播放帧为4帧,4介于(0,0,1)和(60,60,1)之间,因此,根据公式org_pos+(pos-speed_pos)*speed获得当前播放帧在视频中的原始位置0+(4-0)*1=4,解码原视频中的第4帧图像。
step2.15:在对视频进行播放时,当处理装置的应用系统为ios系统时,则可以根据上述记录数组间隔,计算出每个间隔的调速起始时间、原始时长和调速后的目标时长,将调速起始时间、原始时长和调速后的目标时长作为调速参数发送给相对应的接口,进而,解码器可根据所接收到的调速参数自动返回调速后所需要的视频帧。
图12为本发明实施例提供的一种视频的处理装置的结构示意图;该视频的处理装置可以包括:一个或多个第一处理器21和一个或多个第一存储器22。其中,第一存储器22用于存储用于执行上述图1-图8、图11所示实施例中提供的视频的处理方法的程序。第一处理器21被配置为用于执行第一存储器22中存储的程序。具体的,
程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第一处理器21执行时能够实现如下步骤:
用于运行第一存储器22中存储的计算机程序以实现:获取视频调速信息,视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及调速初始帧对应的初始速度、调速结束帧对应的目标速度;根据视频调速信息确定目标视频中的每一帧在原始视频中对应的帧位置,其中,目标视频是对原始视频进行调速后的视频;根据目标视频中的每一帧在原始视频中对应的帧位置,获取目标视频。
其中,该视频的处理装置的结构中还可以包括第一通信接口23,用于电子设备与其他设备或通信网络通信。
进一步的,第一处理器21,还用于:根据视频调速信息,确定原始视频中的部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,部分视频帧包括调速初始帧、位于调速初始帧与调速结束帧之间的调速中间帧;根据部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置。
进一步的,第一处理器21,还用于:将部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储,获得关联关系集合;根据关联关系集合,确定目标视频中的每一帧在原始视频中对应的帧位置。
进一步的,第一处理器21,还用于:获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度;至少部分地根据调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定调速中间帧对应的原始帧位置、调速后帧位置和播放速度。
进一步的,第一处理器21,还用于:根据原始视频中调速初始帧的帧位置,确定调速初始帧所对应的原始帧位置;根据原始视频中调速初始帧的帧位置和调速初始帧所对应的初始速度,确定调速初始帧所对应的调速后帧位置;根据调速初始帧所对应的初始速度,确定调速初始帧对应的播放速度。
进一步的,第一处理器21,还用于:根据原始视频中调速初始帧的帧位置,确定调速初始帧对应的原始帧位置;根据原始视频中调速初始帧的帧位置和原始视频中第一帧的播放速度,确定调速初始帧所对应的调速后帧位置;根据调速初始帧所对应的初始速度,确定调速初始帧对应的播放速度。
进一步的,第一处理器21,还用于:至少部分地根据调速初始帧对应的原始帧位置和播放速度,确定原始视频中待处理帧的帧位置;根据原始视频中待处理帧的帧位置、原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及初始速度、目标速度,确定待处理帧的插值速度;当待处理帧的插值速度满足预设条件时,则将待处理帧作为调速中间帧,并获取待处理帧对应的原始帧位置、调速后帧位置和播放速度;否则,则将待处理帧丢弃。
其中,预设条件包括:待处理帧的插值速度与待处理帧的前一帧对应的播放速度的差值大于或等于预设阈值。待处理帧的播放速度是根据待处理帧的插值速度和预设阈值确定得到的。
进一步的,当初始速度大于目标速度时,预设阈值为第一预设阈值,当初始速度小于目标速度时,预设阈值为不同于第一预设阈值的第二预设阈值。
进一步的,当调速初始帧并非原始视频的第一帧时,部分视频帧还包括第一帧;第一处理器21,还用于:确定第一帧对应的原始帧位置、调速后帧位置和播放速度。
进一步的,当调速结束帧为原始视频的最末帧时,部分视频帧还包括调速结束帧;第一处理器21,还用于:确定调速结束帧对应的原始帧位置、调速后帧位置和播放速度。
进一步的,当调速结束帧并非原始视频的最末帧时,部分视频帧还包括原始视频中位于调速结束帧后的一帧以及最末帧;第一处理器21,还用于:确定调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度;确定最末帧对应的原始帧位置、调速后帧位置和播放速度。
其中,位于调速结束帧后的一帧在原始视频中的帧位置是根据调速中间帧的最后一帧对应的原始帧位置和播放速度确定得到的。
进一步的,第一处理器21,还用于:获取目标视频中的每一帧对应的帧区间,帧区间的区间起始帧和区间结束帧为部分视频帧中相邻的两帧;根据目标视频中的每一帧在目标视频中的帧位置、区间起始帧对应的原始帧位置、调速后帧位置和播放速度,确定目标视频中的每一帧在原始视频中对应的帧位置。
图12所示装置可以执行图1-图8、图11所示实施例的方法,本实施例未详细描述的部分,可参考对图1-图8、图11所示实施例的相关说明。该技术方案的执行过程和技术效果参见图1-图8、图11所示实施例中的描述,在此不再赘述。
另外,本发明实施例提供了一种计算机可读存储介质,存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,程序指令用于实现上述图1-图8、图11的视频的处理方法。
图13为本发明实施例提供的一种视频的处理装置的结构示意图;该视频的处理装置可以包括:一个或多个第二处理器41和一个或多个第二存储器42。其中,第二存储器42用于存储用于执行上述图9-图11所示实施例中提供的视频的处理方法的程序。第一处理器41被配置为用于执行第二存储器42中存储的程序。具体的,
程序包括一条或多条计算机指令,其中,一条或多条计算机指令被第二处理器41执行时能够实现如下步骤:
用于运行第二存储器42中存储的计算机程序以实现:获取视频调速信息,视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及调速初始帧对应的初始速度、调速结束帧对应的目标速度;根据视频调速信息确定原始视频调速后的目标视频对应的调速参数,调速参数包括调速起始时间、原始时长和调速后的目标时长;根据调速参数,获取目标视频。
其中,该视频的处理装置的结构中还可以包括第二通信接口43,用于电子设备与其他设备或通信网络通信。
进一步的,第二处理器41,还用于:根据视频调速信息,确定原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,部分视频帧包括调速初始帧和位于调速初始帧和调速结束帧之间的调速中间帧;将部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储以获得关联关系集合;根据关联关系集合,确定原始视频调速后的目标视频对应的调速参数。
图13所示装置可以执行图9-图11所示实施例的方法,本实施例未详细描述的部分,可参考对图9-图11所示实施例的相关说明。该技术方案的执行过程和技术效果参见图9-图11所示实施例中的描述,在此不再赘述。
另外,本发明实施例提供了一种计算机可读存储介质,存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,程序指令用于实现上述图9-图11的视频的处理方法。
以上各个实施例中的技术方案、技术特征在与本相冲突的情况下均可以单独,或者进行组合,只要未超出本领域技术人员的认知范围,均属于本申请保护范围内的等同实施例。
在本发明所提供的几个实施例中,应该理解到,所揭露的视频的处理装置和方法,可以通过其它的方式实现。例如,以上所描述的遥控装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,遥控装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得计算机处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (36)

1.一种视频的处理方法,其特征在于,包括:
获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;
根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置,其中,所述目标视频是对所述原始视频进行调速后的视频;
根据所述目标视频中的每一帧在原始视频中对应的帧位置,获取所述目标视频。
2.根据权利要求1所述的方法,其特征在于,所述根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置,包括:
根据所述视频调速信息,确定所述原始视频中的部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,所述部分视频帧包括调速初始帧、位于所述调速初始帧与所述调速结束帧之间的调速中间帧;
根据所述部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置。
3.根据权利要求2所述的方法,其特征在于,所述根据所述部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置,包括:
将所述部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储,获得关联关系集合;
根据所述关联关系集合,确定所述目标视频中的每一帧在原始视频中对应的帧位置。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述视频调速信息,确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,包括:
获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度;
至少部分地根据所述调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述调速中间帧对应的原始帧位置、调速后帧位置和播放速度。
5.根据权利要求4所述的方法,其特征在于,所述获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,包括:
根据所述原始视频中调速初始帧的帧位置,确定所述调速初始帧所对应的原始帧位置;
根据所述原始视频中调速初始帧的帧位置和所述调速初始帧所对应的初始速度,确定所述调速初始帧所对应的调速后帧位置;
根据所述调速初始帧所对应的初始速度,确定所述调速初始帧对应的播放速度。
6.根据权利要求4所述的方法,其特征在于,所述获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,包括:
根据所述原始视频中调速初始帧的帧位置,确定所述调速初始帧对应的原始帧位置;
根据所述原始视频中调速初始帧的帧位置和所述原始视频中第一帧的播放速度,确定所述调速初始帧所对应的调速后帧位置;
根据所述调速初始帧所对应的初始速度,确定所述调速初始帧对应的播放速度。
7.根据权利要求4所述的方法,其特征在于,至少部分地根据所述调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述调速中间帧对应的原始帧位置、调速后帧位置和播放速度,包括:
至少部分地根据所述调速初始帧对应的原始帧位置和播放速度,确定所述原始视频中待处理帧的帧位置;
根据原始视频中待处理帧的帧位置、原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及所述初始速度、所述目标速度,确定所述待处理帧的插值速度;
当所述待处理帧的插值速度满足预设条件时,则将所述待处理帧作为调速中间帧,并获取所述待处理帧对应的原始帧位置、调速后帧位置和播放速度;否则,则将所述待处理帧丢弃。
8.根据权利要求7所述的方法,其特征在于,所述预设条件包括:
所述待处理帧的插值速度与所述待处理帧的前一帧对应的播放速度的差值大于或等于预设阈值。
9.根据权利要求8所述的方法,其特征在于,所述待处理帧的播放速度是根据所述待处理帧的插值速度和所述预设阈值确定得到的。
10.根据权利要求7或8所述的方法,其特征在于,当所述初始速度大于所述目标速度时,所述预设阈值为第一预设阈值,当所述初始速度小于所述目标速度时,所述预设阈值为不同于所述第一预设阈值的第二预设阈值。
11.根据权利要求4所述的方法,其特征在于,当所述调速初始帧并非所述原始视频的第一帧时,所述部分视频帧还包括所述第一帧;
所述确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,还包括:
确定所述第一帧对应的原始帧位置、调速后帧位置和播放速度。
12.根据权利要求4所述的方法,其特征在于,当所述调速结束帧为所述原始视频的最末帧时,所述部分视频帧还包括所述调速结束帧;
所述确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,还包括:
确定所述调速结束帧对应的原始帧位置、调速后帧位置和播放速度。
13.根据权利要求12所述的方法,其特征在于,当所述调速结束帧并非所述原始视频的最末帧时,所述部分视频帧还包括所述原始视频中位于所述调速结束帧后的一帧以及所述最末帧;
所述确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,还包括:
确定所述调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度;
确定所述最末帧对应的原始帧位置、调速后帧位置和播放速度。
14.根据权利要求13所述的方法,其特征在于,所述位于所述调速结束帧后的一帧在所述原始视频中的帧位置是根据所述调速中间帧的最后一帧对应的原始帧位置和播放速度确定得到的。
15.根据权利要求2或3所述的方法,其特征在于,所述根据所述部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置,包括:
获取所述目标视频中的每一帧对应的帧区间,所述帧区间的区间起始帧和区间结束帧为所述部分视频帧中相邻的两帧;
根据所述目标视频中的每一帧在目标视频中的帧位置、所述区间起始帧对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置。
16.一种视频的处理方法,其特征在于,包括:
获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;
根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数,所述调速参数包括调速起始时间、原始时长和调速后的目标时长;
根据所述调速参数,获取所述目标视频。
17.根据权利要求16所述的方法,其特征在于,所述根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数,包括:
根据所述视频调速信息,确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,所述部分视频帧包括调速初始帧和位于调速初始帧和调速结束帧之间的调速中间帧;
将所述部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储以获得关联关系集合;
根据所述关联关系集合,确定所述原始视频调速后的目标视频对应的调速参数。
18.一种视频的处理装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述存储器中存储的计算机程序以实现:获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置、以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;根据所述视频调速信息确定目标视频中的每一帧在所述原始视频中对应的帧位置,其中,所述目标视频是对所述原始视频进行调速后的视频;根据所述目标视频中的每一帧在原始视频中对应的帧位置,获取所述目标视频。
19.根据权利要求18所述的装置,其特征在于,所述处理器,还用于:
根据所述视频调速信息,确定所述原始视频中的部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,所述部分视频帧包括调速初始帧、位于所述调速初始帧与所述调速结束帧之间的调速中间帧;
根据所述部分视频帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置。
20.根据权利要求19所述的装置,其特征在于,所述处理器,还用于:
将所述部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储,获得关联关系集合;
根据所述关联关系集合,确定所述目标视频中的每一帧在原始视频中对应的帧位置。
21.根据权利要求19或20所述的装置,其特征在于,所述处理器,还用于:
获取调速初始帧所对应的原始帧位置、调速后帧位置和播放速度;
至少部分地根据所述调速初始帧所对应的原始帧位置、调速后帧位置和播放速度,确定所述调速中间帧对应的原始帧位置、调速后帧位置和播放速度。
22.根据权利要求21所述的装置,其特征在于,所述处理器,还用于:
根据所述原始视频中调速初始帧的帧位置,确定所述调速初始帧所对应的原始帧位置;
根据所述原始视频中调速初始帧的帧位置和所述调速初始帧所对应的初始速度,确定所述调速初始帧所对应的调速后帧位置;
根据所述调速初始帧所对应的初始速度,确定所述调速初始帧对应的播放速度。
23.根据权利要求21所述的装置,其特征在于,所述处理器,还用于:
根据所述原始视频中调速初始帧的帧位置,确定所述调速初始帧对应的原始帧位置;
根据所述原始视频中调速初始帧的帧位置和所述原始视频中第一帧的播放速度,确定所述调速初始帧所对应的调速后帧位置;
根据所述调速初始帧所对应的初始速度,确定所述调速初始帧对应的播放速度。
24.根据权利要求21所述的装置,其特征在于,所述处理器,还用于:
至少部分地根据所述调速初始帧对应的原始帧位置和播放速度,确定所述原始视频中待处理帧的帧位置;
根据原始视频中待处理帧的帧位置、原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及所述初始速度、所述目标速度,确定所述待处理帧的插值速度;
当所述待处理帧的插值速度满足预设条件时,则将所述待处理帧作为调速中间帧,并获取所述待处理帧对应的原始帧位置、调速后帧位置和播放速度;否则,则将所述待处理帧丢弃。
25.根据权利要求24所述的装置,其特征在于,所述预设条件包括:
所述待处理帧的插值速度与所述待处理帧的前一帧对应的播放速度的差值大于或等于预设阈值。
26.根据权利要求25所述的装置,其特征在于,所述待处理帧的播放速度是根据所述待处理帧的插值速度和所述预设阈值确定得到的。
27.根据权利要求25或26所述的装置,其特征在于,当所述初始速度大于所述目标速度时,所述预设阈值为第一预设阈值,当所述初始速度小于所述目标速度时,所述预设阈值为不同于所述第一预设阈值的第二预设阈值。
28.根据权利要求21所述的装置,其特征在于,当所述调速初始帧并非所述原始视频的第一帧时,所述部分视频帧还包括所述第一帧;
所述处理器,还用于:确定所述第一帧对应的原始帧位置、调速后帧位置和播放速度。
29.根据权利要求21所述的装置,其特征在于,当所述调速结束帧为所述原始视频的最末帧时,所述部分视频帧还包括所述调速结束帧;
所述处理器,还用于:确定所述调速结束帧对应的原始帧位置、调速后帧位置和播放速度。
30.根据权利要求29所述的装置,其特征在于,当所述调速结束帧并非所述原始视频的最末帧时,所述部分视频帧还包括所述原始视频中位于所述调速结束帧后的一帧以及所述最末帧;所述处理器,还用于:
确定所述调速结束帧后的一帧对应的原始帧位置、调速后帧位置和播放速度;
确定所述最末帧对应的原始帧位置、调速后帧位置和播放速度。
31.根据权利要求30所述的装置,其特征在于,所述位于所述调速结束帧后的一帧在所述原始视频中的帧位置是根据所述调速中间帧的最后一帧对应的原始帧位置和播放速度确定得到的。
32.根据权利要求19或20所述的装置,其特征在于,所述处理器,还用于:
获取所述目标视频中的每一帧对应的帧区间,所述帧区间的区间起始帧和区间结束帧为所述部分视频帧中相邻的两帧;
根据所述目标视频中的每一帧在目标视频中的帧位置、所述区间起始帧对应的原始帧位置、调速后帧位置和播放速度,确定所述目标视频中的每一帧在原始视频中对应的帧位置。
33.一种视频的处理装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于运行所述存储器中存储的计算机程序以实现:获取视频调速信息,所述视频调速信息包括:原始视频中调速初始帧的帧位置、原始视频中调速结束帧的帧位置,以及所述调速初始帧对应的初始速度、所述调速结束帧对应的目标速度;根据所述视频调速信息确定所述原始视频调速后的目标视频对应的调速参数,所述调速参数包括调速起始时间、原始时长和调速后的目标时长;根据所述调速参数,获取所述目标视频。
34.根据权利要求33所述的装置,其特征在于,所述处理器,还用于:
根据所述视频调速信息,确定所述原始视频中的部分视频帧对应的原始帧位置、调速后帧位置和播放速度,所述部分视频帧包括调速初始帧和位于调速初始帧和调速结束帧之间的调速中间帧;
将所述部分视频帧中的每个视频帧所对应的原始帧位置、调速后帧位置和播放速度进行关联存储以获得关联关系集合;
根据所述关联关系集合,确定所述原始视频调速后的目标视频对应的调速参数。
35.一种计算机可读存储介质,其特征在于,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于实现权利要求1-15中任意一项所述的视频的处理方法。
36.一种计算机可读存储介质,其特征在于,所述存储介质为计算机可读存储介质,该计算机可读存储介质中存储有程序指令,所述程序指令用于实现权利要求16-17中任意一项所述的视频的处理方法。
CN201980033825.4A 2019-08-13 2019-08-13 视频的处理方法、装置和存储介质 Pending CN112154670A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/100452 WO2021026785A1 (zh) 2019-08-13 2019-08-13 视频的处理方法、装置和存储介质

Publications (1)

Publication Number Publication Date
CN112154670A true CN112154670A (zh) 2020-12-29

Family

ID=73891558

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980033825.4A Pending CN112154670A (zh) 2019-08-13 2019-08-13 视频的处理方法、装置和存储介质

Country Status (2)

Country Link
CN (1) CN112154670A (zh)
WO (1) WO2021026785A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080253735A1 (en) * 2007-04-16 2008-10-16 Adobe Systems Incorporated Changing video playback rate
CN102326405A (zh) * 2009-02-23 2012-01-18 高通股份有限公司 视频内容呈现
CN102547192A (zh) * 2010-12-21 2012-07-04 新奥特(北京)视频技术有限公司 一种对录像图像设置自动变速播放及回放功能的方法
US8233772B1 (en) * 2007-04-16 2012-07-31 Adobe Systems Incorporated Generating transitions for remapping video playback time
CN104616338A (zh) * 2015-01-26 2015-05-13 江苏如意通动漫产业有限公司 基于二维动画的时空一致的变速内插方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100546640B1 (ko) * 2003-03-11 2006-01-26 엘지전자 주식회사 디지털 비디오 기록 재생 시스템 및 트릭 재생 방법
CN101534406B (zh) * 2004-03-31 2011-08-10 松下电器产业株式会社 用于可变帧速率记录的视频记录设备
CN101075949A (zh) * 2006-05-15 2007-11-21 中兴通讯股份有限公司 一种改变流媒体文件播放速度的方法
US9025927B2 (en) * 2009-03-25 2015-05-05 Cyberlink Corp. Systems and methods of variable frame rate playback
US9197685B2 (en) * 2012-06-28 2015-11-24 Sonic Ip, Inc. Systems and methods for fast video startup using trick play streams
US20140359678A1 (en) * 2013-05-30 2014-12-04 Sonic Ip, Inc. Device video streaming with trick play based on separate trick play files
CN104702975A (zh) * 2015-03-24 2015-06-10 北京中熙正保远程教育技术有限公司 用于远程授课的Flash视频变速播放方法
CN104869430B (zh) * 2015-05-18 2017-12-05 北京中熙正保远程教育技术有限公司 一种视频倍速播放方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080253735A1 (en) * 2007-04-16 2008-10-16 Adobe Systems Incorporated Changing video playback rate
US8233772B1 (en) * 2007-04-16 2012-07-31 Adobe Systems Incorporated Generating transitions for remapping video playback time
CN102326405A (zh) * 2009-02-23 2012-01-18 高通股份有限公司 视频内容呈现
CN102547192A (zh) * 2010-12-21 2012-07-04 新奥特(北京)视频技术有限公司 一种对录像图像设置自动变速播放及回放功能的方法
CN104616338A (zh) * 2015-01-26 2015-05-13 江苏如意通动漫产业有限公司 基于二维动画的时空一致的变速内插方法

Also Published As

Publication number Publication date
WO2021026785A1 (zh) 2021-02-18

Similar Documents

Publication Publication Date Title
US11277562B2 (en) Image stabilization using machine learning
CA2979177C (en) Detecting segments of a video program
AU2011216119B2 (en) Generic platform video image stabilization
US10931853B2 (en) Enhanced color reproduction for upscaling
US10506248B2 (en) Foreground detection for video stabilization
US20130336590A1 (en) Method and apparatus for generating a visual story board in real time
CN111988561B (zh) 视频分析的自适应调整方法、装置、计算机设备和介质
CN107533758B (zh) 用于处理视频的方法、计算机可读介质和系统
US20200374526A1 (en) Method, device, apparatus for predicting video coding complexity and storage medium
CN105323527A (zh) 用于时移视频的曝光计量的系统和方法
CN105611429A (zh) 一种视频文件的备份方法、装置及电子设备
CN107944381B (zh) 人脸跟踪方法、装置、终端及存储介质
WO2020019180A1 (zh) 图像的编码控制方法、装置、存储介质及无人机
WO2019127940A1 (zh) 视频分类模型训练方法、装置、存储介质及电子设备
CN112154670A (zh) 视频的处理方法、装置和存储介质
CN115937008A (zh) 图像增强方法和设备
WO2023207513A1 (zh) 视频处理方法、装置及电子设备
CN115243073B (zh) 一种视频处理方法、装置、设备及存储介质
Wu et al. Video stabilisation with total warping variation model
CN114650448A (zh) 录像的快慢动作调节方法、系统、存储介质及计算机
CN110740344A (zh) 视频提取方法以及相关装置
WO2023218413A1 (en) Method and electronic device for generating a segment of a video
CN112163985B (zh) 图像处理方法、装置、存储介质及电子设备
US11601591B2 (en) Image processing apparatus for estimating action of subject and adding information indicating the action of the subject to an image, method for controlling the same, and storage medium
US20230368534A1 (en) Method and electronic device for generating a segment of a video

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20201229

WD01 Invention patent application deemed withdrawn after publication