发明内容
本发明的目的在于提供视频浓缩方法,以解决上述的问题。
在本发明的实施例中提供了视频浓缩方法,包括:
对预先获取到的多个原始单帧图像分别进行DCT变换,以得到每个原始单帧图像的DC系数,多个所述单帧图像属于待浓缩视频中一个连续的视频序列;
选择所述视频序列中的一个或多个所述原始单帧图像为关键帧图像,所述关键帧图像的DC系数与相邻的一个或多个原始单帧图像的DC系数的差值均小于预设的第一差值;
使用一个或多个所述关键帧图像融合形成浓缩视频。
优选的,还包括:确定所述待浓缩视频中的I帧图像为压缩域视频单帧图像。
优选的,所述对预先获取到的多个原始单帧图像分别进行DCT变换,以确认每个原始单帧图像的DC系数包括:
根据相邻的两个所述原始单帧图像的DC系数差值,将预先获取的待浓缩视频按照逻辑关联性分为多个连续的视频序列,每个所述视频序列包括用于表达指定含义的多个连续原始单帧图像。
优选的,所述根据相邻的两个所述原始单帧图像的DC系数差值,将预先获取的待浓缩视频按照逻辑关联性分为多个连续的视频序列包括:
依次判断相邻的两个原始单帧图像的DC系数差值是否超过预设的第二差值,所述第二差值的数值大于所述第一差值的数值;
若是,则以DC系数差值超过预设第二差值的两个原始单帧图像为界,将所述待浓缩视频分为不同的视频序列。
优选的,所述对预先获取到的多个原始单帧图像分别进行DCT变换,以确认每个原始单帧图像的DC系数包括:
分别对每个所述原始单帧图像进行DCT变换,以生成每个原始单帧图像的DCT变换矩阵;
确定所述原始单帧图像的DCT变换矩阵中第一个元素的数值为该原始单帧图像的DC系数。
优选的,所述DC系数差值超过预设第二差值的两个原始单帧图像为界,将所述待浓缩视频分为不同的视频序列包括:
确定DC系数差值超过预设第二差值的两个原始单帧图像和所述待浓缩视频首尾的两个原始单帧图像为边界帧图像;
确定指定的两个帧数不相邻的两个边界帧图像和这两个边界帧图像之间的连续原始单帧图像组成的视频片段为视频序列。
优选的,还包括:对每个原始单帧图像以相同的分割方式划分为多个区域;
分别对每个原始单帧图像的每个区域进行DCT变换,以确定每个区域的DC系数;
所述选择所述视频序列中的一个或多个所述原始单帧图像为关键帧图像包括:
所述关键帧图像中,每个区域的DC系数与相邻的一个或多个原始单帧图像相同区域的DC系数的差值均小于预设的第一差值。
优选的,所述使用一个或多个所述关键帧图像组成已浓缩视频包括:
使用小波多分辨析融合技术将多个所述关键帧融合为已浓缩视频。
优选的,还包括:
确定每个所述关键帧图像中的对象和背景;
根据预设的权重设定方法,确定每个所述关键帧图像中的对象和背景的权重值;
所述使用小波多分辨析融合技术将多个所述关键帧图像融合为浓缩视频包括:
根据每个关键帧图像中对象和背景的权重值,确定每个所述关键帧图像的对象和背景分别在浓缩视频中的清晰度,和/或对比度;根据每个所述关键帧图像的对象和背景分别在浓缩视频中的清晰度,和/或对比度将多个关键帧图像融合为浓缩视频。
优选的,还包括:
根据预先获取的浓缩精确度,确定每个原始单帧图像所划分区域的数量。
本发明实施例提供的视频浓缩方法,与现有技术中的通过加约束项进行优化,但通常会导致浓缩后的视频播放不连贯相比,其通过预先对同一个视频中的每个图像均进行了DCT变换,以确定了每个图像的DC系数,在根据相邻的两个或多个图像的DC系数之差来选择,属于同一个视频序列中的指定的一个或多个单帧图像作为关键帧图像,其中,关键帧图像的DC系数与相邻的一个或多个原始单帧图像的DC系数的差值均小于预设数值,这个预设的数值可以根据浓缩的比例来确定,并且将关键帧图像按照预设的顺序组成已浓缩视频,DC系数是DCT系数的主要信息携带者,在人类视觉系统的感应范围内,完全可满足分析的需要,因此,选择DC系数相近的几个帧中的一个帧作为关键帧,在进行视频播放的时候,不会影响视频的连续性,从而解决了现有技术中的不足。
具体实施方式
下面通过具体的实施例子并结合附图对本发明做进一步的详细描述。本发明实施例提供了视频浓缩方法,如图1所示,包括如下步骤:
S101,对预先获取到的多个原始单帧图像分别进行DCT变换,以得到每个原始单帧图像的DC系数,多个单帧图像属于待浓缩视频中一个连续的视频序列;
S102,选择视频序列中的一个或多个原始单帧图像为关键帧图像,关键帧图像的DC系数与相邻的一个或多个原始单帧图像的DC系数的差值均小于预设的第一差值;
S103,使用一个或多个关键帧图像融合形成浓缩视频。
由于DC系数是DCT系数的主要信息携带者,并且在人类视觉系统的感应范围内,DC系数相近的帧是不容易发现区别的,因此,可以使用DC系数来判断两个,或者更多的帧之间是否是相类似的,如果是类似的,那么则说明这些类似的帧的画面是相近的。从数据保存的角度来看,这些类似的画面差别很小,可以认为是数据冗余,那么在储存的时候,可以只储存一个画面(帧)或者几个画面,使用这几个画面来表示一个完整的具有一定含义的视频。获取DC系数之前需要对单帧的图像进行DCT变换,其中DCT变换的对象可以是图像中的I帧。帧的种类可以分为I、P、B三种,其中P、B两种类型的帧是以前后帧图像,或本图像中的I帧为基础,对信息进行保存的,每个图像I帧是主要的帧,I帧中含有全部的编码信息。那么对I帧进行DCT变换,所得出的DC系数便能够保证该DC系数足够反映出这个图像的特征。步骤S101中,需要对待浓缩的视频中的每个原始单帧图像进行DCT变换,以确定每个图像的DC系数。视频序列的含义可以理解为具有一定时长的视频段,该视频段由有限数量的原始单帧图像组成,并且视频序列可以是一端具有某种特定含义的原始单帧图像的集合,如均是踢球的一个动作,或者均是跑步的一个动作,这样能够使视频序列更好区分,也对视频浓缩更有利。如果待浓缩的视频是一个时间长度较大的视频段,该视频段所包含的帧数将是非常庞大的,如果将全部的帧均进行DCT变化,在执行后续的动作,则占用极大的系统内存(系统需要将全部的原始单帧图像均进行DCT变换,并且随时准备使用这些图像,其缓存和内存的占用量是很大的,但如果每一个时间段的进行DCT变换和进行后续的操作,则只是这一小段的视频会占用系统的缓存和内存,对系统的占用量较小),这对长篇幅的视频浓缩是不利的。
步骤S102,在计算出每一个原始单帧图像的DC系数之后,便可以根据DC系数的差值来判断相邻的两帧是否相近似。对比DC系数相近似的过程需要按照时间上相邻的顺序进行对比,只有某一个帧(指定帧)与相邻的1个原始单帧图像(指定帧的下一帧或上一帧)的DC系数小于第一差值,才能够判断这个帧(指定帧)与再下一个帧(指定帧的下下个帧,或上上个帧)的DC系数与指定帧的DC系数差值是否小于预设的第一差值。举一个简单的例子,现有时间上相互连续的5个帧,A、B、C、D和E,这五个帧之间没有其他真。如果A帧为指定帧,那么可以对比A和B的DC系数差值,如果小于预设的第一差值,则再对比A和C的DC系数差值,依次类推,直至A与第X帧的DC系数差值不小于预设的第一差值,则说明A与这第X帧的相似度并不高,不能够使用A来代替X,那么可以用A来替代A+1到X-1之间这些帧,可以被替代的帧也就可以省略掉了。进一步,为了使能够被替代掉的真更多,也就是为了合理的提高浓缩比例,可以分别计算每一个帧可以替代多少个帧,也就是分别计算每一个帧与前后多少个帧是相近似的(DC系数小于预设的第一差值),可以选择使用指定的一个能够替代较多帧的原始单帧图像作为关键帧图像。如现有A-H,这8个帧,A帧能够替代B-D三个,B能够替代A、C和D三个,D能够替代A-C和E、F五个,那么,很明显,使用D来替代其他5个帧是对A-F这几个帧进行合理,且高比例浓缩的优选帧,这个有选择也就是关键帧。
为了提高图像的浓缩比例,可以通过调整预设的第一差值的大小来进行限制,如将第一差值设置的较大,则某一个帧可以替代的相邻帧的数量也就变多了(此处指的相邻帧,主要指是画面进行规律变化的情况,如果突然切换画面,则切换前和切换后的画面是有很大差别的,这时至少应通过设置的第一差值,应能够将这种切换画面的情况识别为不能够替代的形式)。当然,为了保证画面的连贯性,预设的第一差值的大小也可以设置的相对较小,以使浓缩后的画面更为连贯和平滑。
在确定了某一个视频序列的全部帧可以由一个或多个关键帧进行替代之后,便可以将这一个或多个关键帧图像组成为一个已浓缩视频了,具体将关键帧图像成一个完整的视频方法有很多,只要能够实现图像组合成视频的方法均可,在此,对图像合成视频的技术内容不再赘述。
进一步,本发明所提供的视频浓缩方法,还包括:确定待浓缩视频中的I帧图像为原始单帧图像。I帧图像中携带有完整的编码信息,能够表示出图像的完整含义,因此使用I帧作为原始单帧图像(并进一步进行DC变换)要比使用P帧和/或B帧更为合理。
进一步,对预先获取到的多个原始单帧图像分别进行DCT变换,以确认每个原始单帧图像的DC系数包括:
根据相邻的两个原始单帧图像的DC系数差值,将预先获取的待浓缩视频按照逻辑关联性分为多个连续的视频序列,每个视频序列包括用于表达指定含义的多个连续原始单帧图像。
将视频按照逻辑关联性进行分类是储存和处理视频的一个较好的方式,既能够保证逻辑性强(观看者能够理解),也能够保证视频在处理(浓缩)的时候可以每次只处理一小部分,而不是视频的全部,能够减轻系统的压力,并且提高处理的速度。
进一步,根据相邻的两个原始单帧图像的DC系数差值,将预先获取的待浓缩视频按照逻辑关联性分为多个连续的视频序列包括如下步骤,如图3所示:
S1011,依次判断相邻的两个原始单帧图像的DC系数差值是否超过预设的第二差值,第二差值的数值大于第一差值的数值,若是,执行步骤S1012;
S1012,以DC系数差值超过预设第二差值的两个原始单帧图像为界,将待浓缩视频分为不同的视频序列。
将视频分为多个视频序列的任务同样可以通过DC系数进行对比处理,但需要说明的是,第二差值通常是需要大于第一差值,并且第一差值和第二差值的相差较大。通过第二差值的对比,至少需要将切换的画面和快速过度的两情形区分开。其中,切换画面就是指相邻的两帧图像所表达的含义,或者主调完全不同,或者绝大部分是不相同的;快速过度是指在很短的时间内,画面连续大幅度变化,那么这个变化幅度所表示的,变化前后的两个图像是没有关联性的,因此,可以将变化前和变化后的图像分为两组。并且,考虑到具体浓缩的情况,这种连续大幅度变化的图像通常是无实际含义的,可以通过DC比较的方式,如果某一端视频中具有一个连续的时间段的单针图像的变化度均是较高的,则可以将这多个连续大幅度变化的原始单帧图像删除,以提高图像的浓缩比例。
具体的,对预先获取到的多个原始单帧图像分别进行DCT变换,以确认每个原始单帧图像的DC系数包括如下步骤,如图3所示:
S1013,分别对每个原始单帧图像进行DCT变换,以生成每个原始单帧图像的DCT变换矩阵;
S1014,确定原始单帧图像的DCT变换矩阵中第一个元素的数值为该原始单帧图像的DC系数。
如图2所示,在对图像进行划分视频序列的时候,可以通过先确定边界图像,再确定边界图像和量边界图像之间的图像为某个视频序列中的全部原始单帧图像。也就是,DC系数差值超过预设第二差值的两个原始单帧图像为界,将待浓缩视频分为不同的视频序列包括:
确定DC系数差值超过预设第二差值的两个原始单帧图像和待浓缩视频首尾的两个原始单帧图像为边界帧图像;
确定指定的两个帧数不相邻的两个边界帧图像和这两个边界帧图像之间的连续原始单帧图像组成的视频片段为视频序列。
图2中,每个数显表示的均是一个原始单帧图像,A、B是两个DC系数超过预设的第一差值的两个图像,C和D是两个DC系数超过预设的第一差值的两个图像,其余的是均是原始单帧图像,那么在分视频序列的时候,便可以将首帧(待浓缩视频的首个原始单帧图像)至A帧作为第一个视频序列,B帧至C帧作为第二个视频序列,D帧至尾帧(待浓缩视频的最后一个原始单帧图像)作为第三个视频序列。
为了提高选择原始单帧图像中关键帧的精确度,本发明所提供的视频浓缩方法中,还包括:对每个原始单帧图像以相同的分割方式划分为多个区域;
分别对每个原始单帧图像的每个区域进行DCT变换,以确定每个区域的DC系数;
确定视频序列中的一个或多个原始单帧图像为关键帧图像包括:
关键帧图像中,每个区域的DC系数与相邻的一个或多个原始单帧图像相同区域的DC系数的差值均小于预设的第一差值。
判断第一差值的是相邻帧的相同位置,这要求对每个帧,至少是对同一个视频序列中,或者需要对比的两个原始单帧图像划分区域的方式是相同的,否则就无法进行正常的对比。
在确定了关键帧之后,还可以通过预定的视频融合技术来将多个关键帧制成一个已经浓缩的视频,也就是使用一个或多个关键帧图像组成已浓缩视频包括:
使用小波多分辨析融合技术将多个关键帧融合为已浓缩视频。
考虑到不同的关键帧所能够替代的原始单针图像是不同的,并且,就是由于每个关键帧所能够替代的原始单针图像的是否同,因此每个关键帧在图像中的重要性也是不相同的。如作者想要表达某种含义,或者强调某个情况,会使用长视频序列的形式进行拍摄,这样的长视频序列通产是作者想要强调,或者作者希望观众注意的画面,因此,为了不改变作者的初衷,还需要根据每个关键帧图像所能够替代的原始单帧图像的数量来确定每个关键帧的权重,并且在进行视频融合的时候考虑这种权重,将某帧所能够替代原始单针图像较多的关键帧图像在浓缩视频中强调出来以使浓缩后的视频不会改变作者的原意,也就是本发明所提供的视频浓缩方法,还包括:根据每个关键帧图像所对应的原始单帧图像的个数,确认每个关键帧图像的权重,每个与关键帧图像所对应的原始单帧图像的DC系数和关键帧图像的DC系数差值小于预设的第一差值;
使用小波多分辨析融合技术将多个关键帧图像融合为已浓缩视频包括:
根据每个关键帧图像的权重,确定关键帧图像在已浓缩视频中的比重。
为了将每个关键帧图像在浓缩视频中进行有效的显示,主要是针对不同的对象和背景在浓缩视频中进行不同的体现,本发明所提供的视频浓缩方法还包括如图4所示的如下步骤:
S201,确定每个关键帧图像中的对象和背景;
S202,根据预设的权重设定方法,确定每个关键帧图像中的对象和背景的权重值;
使用小波多分辨析融合技术将多个关键帧图像融合为浓缩视频包括如下步骤:
S1031,根据每个关键帧图像中对象和背景的权重值,确定每个关键帧图像的对象和背景分别在浓缩视频中的清晰度,和/或对比度;
S1032,根据每个关键帧图像的对象和背景分别在浓缩视频中的清晰度,和/或对比度将多个关键帧图像融合为浓缩视频。
通过对每个关键帧图像中赋予不同的权重,可以在对多个关键帧图像进行小波融合的时候能够有对比的显示出对象和背景的区别,如清晰度,和/或对比度方面对象的要对背景的高。具体的,在给不同的对象赋予权重值的时候,可以根据对象在同一帧图像中的位置、亮度等其他条件来调整权重值,以使不同的对象在已浓缩视频中有着不同的体现,从而表现出视频作者想要表达的含义。
为了更好使浓缩后的视频能够具有更好的流畅度和更好的浓缩比例,可以根据预先获取的精确度,来确定每个原始单帧图像所划分区域的个数。在求相邻的原始单帧图像的DC系数差值后,并且根据DC系数差值来确定这两个图像是否相近似的时候,由于有一个区域的DC系数不小于第一差值,便会认为这两个图像不相似,也就不能使用一个图像来替代另一个图像,因此在划分区域的时候,划分的区域越多,这两个图像的可能相似的概率就越低(第一差值不变的情况下),因此通过调整划分区域的数量能够将更多的原始单证图像作为关键帧,也就使图像的连续性更。具体的,本发明所提供的视频浓缩方法还包括:
根据预先获取的浓缩精确度,确定每个原始单帧图像所划分区域的数量。
除了通过调整划分区域的数量能够调整浓缩图像的连贯性(也可以理解为调整关键帧的数量),还可以是通过调整相邻图像的相同区域进行对比时,只要是相邻图像的超过预定个数的区域的DC系数差值小于预设的第一差值,就可以认为两个图像是相似的,也就是可以使用一个原始单帧图像来替代另一个原始单帧图像。如相邻的两个图像均是将原始单帧图像分为10个区域,其中7个区域的DC系数差值不超过第一差值,那么便可以使用1个原始单帧图像作为关键帧,来替代另一个原始单帧图像。
本发明实施例提供的视频浓缩方法,通过预先对同一个视频中的每个图像均进行了DCT变换,以确定了每个图像的DC系数,在根据相邻的两个或多个图像的DC系数之差来选择,属于同一个视频序列中的指定的一个或多个单帧图像作为关键帧图像,其中,关键帧图像的DC系数与相邻的一个或多个原始单帧图像的DC系数的差值均小于预设数值,这个预设的数值可以根据浓缩的比例来确定,并且将关键帧图像按照预设的顺序组成已浓缩视频,DC系数是DCT系数的主要信息携带者,在人类视觉系统的感应范围内,完全可满足分析的需要,因此,选择DC系数相近的几个帧中的一个帧作为关键帧,在进行视频播放的时候,不会影响视频的连续性,并且通过为不同关键帧设定权重比的方式,使用小波融合技术,使得浓缩的图像所表达的含义与原视频的含义是相同的,还通过先对每个原始单帧图像划分为多个区域,并且对相邻图像的相同区域的DC系数差值分别和预设的第一差值进行对比,来确定这相邻的两个原始单帧图像是否相似,进而确定了可以使用这两个原始单帧图像中的一个作为关键帧图像来替代另一个原始单帧图像,从而更好的解决了现有技术中的不足。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。