技术领城
本发明属于数字视频检索技术领域,具体涉及到用视频压缩编码信息提取视频关键帧的方法。
背景技术:
随着多媒体技术和网络技术的快速发展,视频数据迅速增长,出现了规模空前的数据,如何有效地管理视频以及快速获取视频中重要的信息,成为一个研究的热点。在这种背景下,提取关键帧成为解决这一难题的有效途径,通过提取关键帧,不仅能大大减少视频的数据量,而且能很好地将原始视频的重要信息表达出来,节省了检索时间,提高了视频检索的效率。
目前,对于关键帧的提取方法,国内外学者做了大量的研究工作,根据所处理的视频数据对象,可以将这些方法分为像素域的关键帧提取和压缩域的关键帧提取。像素域的关键帧提取方法是在视频完全解压缩后进行,计算量比较大,效率低,难以满足实时要求。压缩域视频处理技术是直接面向数据量较小的压缩视频数据,在不解压或者部分解压的情况下对视频进行处理,可以大大提高视频的处理速度,因此压缩域上的关键帧提取方法研究引起了广泛关注。
alireza等人提出了一种在h.265/hevc压缩域中的关键帧提取方法,采用从h.265/hevc编码视频中提取帧内预测模式的归一化直方图进行相似帧检测,使用模糊c均值聚类对相似帧进行分类,并提取关键帧。朱树明等人提出了一种视频编码压缩域的视频摘要关键帧提取方法,在解码端统计视频编码帧内编码pu块的亮度预测模式数目,并构建成模式特征向量,再利用融合迭代自组织数据分析算法(isodata)的自适应聚类算法对模式特征向量进行聚类得到候选关键帧,并通过相似度对候选关键帧进行再次筛选,剔除冗余帧,得到最终的关键帧。
上述方法的共同点是采用帧内预测模式值作为特征,且所做的实验仅针对全帧内模式,对视频帧的处理速度慢,处理时间长,不具有实用性。
技术实现要素:
本发明所要解决的技术问题在于克服上述视频帧处理方法的缺点,提供了一种无需解码、计算量小、处理速度快、提取效率高的用视频压缩编码信息提取视频关键帧的方法。
解决上述技术问题所采用的技术方案由下述步骤组成:
(1)提取深度和帧比特数特征
按式(1)确定编码单元的率失真代价j:
其中dx,y和rx,y分别表示编码单元中第(x,y)个像素的失真和编码比特数,x∈{1,2,…,h},y∈{1,2,…,w},w×h为视频分辨率,λ≥0为拉格朗日系数,w和h为有限的正整数、且w>h。
按式(2)确定编码帧的深度特征向量fn:
fn={f1,f2,…,fα}(2)
其中n表示视频的第n个编码帧,n∈{1,2,…,n},n为视频总帧数,n取值为有限的正整数,round()为向上取整函数,fα为编码单元的深度值,fα的取值为0、1、2、3中的任意一个数。
按式(3)确定帧比特数rn:
(2)镜头切换检测
统计编码帧的帧比特数rn并绘制折线图进行分析,将呈现先逐渐增加后逐渐减少的地方标记为镜头切换,相邻两个镜头切换之间为1个镜头片段,镜头片段的长度为m,m取值为有限的正整数,且m<n,得到k个镜头片段,k取值为有限的正整数。
(3)提取关键帧
按式(4)确定拉普拉斯图矩阵l:
其中fi和fj分别表示第i和j个编码帧的深度特征向量,i∈{1,2,…,n},j∈{1,2,…,n}。
按式(5)确定l的前k个特征值对应的特征向量y,并按式(6)构造n×k阶矩阵y:
l×y=β×d×y(5)
y=[y1,y2,…,yk](6)其中y1,y2,...,yk依次为前k个特征值对应的n×1阶特征向量。
对矩阵y进行k-means聚类,并按式(7)确定聚类中心μ与该镜头中其他所有帧的距离dm:
dm=||ym-μ||2(7)
其中m∈{1,2,…,m},m为每个镜头片段的长度,m取值为有限的正整数,且m<n。
将距离dm最小的帧被记为关键帧。
在本发明的提取深度和帧比特数特征步骤(1)中,所述的w的取值为176~7680,h的取值为144~4320,n的取值为1000~7000。
在本发明的镜头切换检测步骤(2)中,所述的k的取值为5~20。
本发明采用视频码流中的cu深度值和帧比特数压缩域特征进行镜头切换检测,得到镜头片段,并进行关键帧提取。本发明充分利用压缩域视频无需解压即可进行处理,减小了计算过程,缩短了处理时间,提高了处理速度。本发明与现有的方法经对比试验,实验结果表明,本发明方法的准确率提高了12.1%,召回率提高了5.3%,f值提高了8.4%,所提取的关键帧能很好地表达原始视频的主要内容。本发明方法具有计算量小、效率高、准确率高、处理速度快等优点,可用于对视频图像的处理。
附图说明
图1是本发明的流程图。
具体实施方式
下面结合附图和实施例对本发明进一步详细说明,但本发明不限于这些实施例。
实施例1
以国际通用的vsumm数据集中的视频序列anewhorizon,segment02为例,本实施例的用视频压缩编码信息提取视频关键帧的方法步骤如下(参见图1):
(1)提取深度和帧比特数特征
按式(1)确定编码单元的率失真代价j:
其中dx,y和rx,y分别表示编码单元中第(x,y)个像素的失真和编码比特数,x∈{1,2,…,h},y∈{1,2,…,w},w×h为视频分辨率,λ≥0为拉格朗日系数,w和h为有限的正整数、且w>h,本实施例的w取值为352,h取值为240。
按式(2)确定编码帧的深度特征向量fn:
fn={f1,f2,…,fα}(2)
其中n表示视频的第n个编码帧,n∈{1,2,…,n},n为视频总帧数,n取值为有限的正整数,本实施例的n取值为1797,round()为向上取整函数,fα为编码单元的深度值,fα的取值为0、1、2、3中的任意一个数,fα的具体取值应根据n的取值来确定。
按式(3)确定帧比特数rn:
(2)镜头切换检测
统计编码帧的帧比特数rn并绘制折线图进行分析,将呈现先逐渐增加后逐渐减少的地方标记为镜头切换,相邻两个镜头切换之间为1个镜头片段,镜头片段的长度为m,m取值为有限的正整数,且m<n,得到k个镜头片段,k取值为有限的正整数,本实施例的k取值为13,m的具体取值为376、232、128、108、80、76、72、80、116、120、68、72、108。
(3)提取关键帧
按式(4)确定拉普拉斯图矩阵l:
其中fi和fj分别表示第i和j个编码帧的深度特征向量,i∈{1,2,…,n},j∈{1,2,…,n}。
按式(5)确定l的前k个特征值对应的特征向量y,并按式(6)构造n×k阶矩阵y:
l×y=β×d×y(5)
y=[y1,y2,…,yk](6)
其中y1,y2,...,yk依次为前k个特征值对应的n×1阶特征向量,该步骤中的k的取值与步骤(2)中k的取值相同,n的取值与步骤(1)中n的取值相同。
对矩阵y进行k-means聚类,并按式(7)确定聚类中心μ与该镜头中其他所有帧的距离dm:
dm=||ym-μ||2(7)
其中m∈{1,2,…,m},m为每个镜头片段的长度,m取值为有限的正整数,且m<n,m的具体取值与步骤(2)相同。
将距离dm最小的帧被记为关键帧。
实施例2
以视频序列oceanfloorlegacy为例,本实施例的用视频压缩编码信息提取视频关键帧的方法步骤如下:
(1)提取深度和帧比特数特征
按式(1)确定编码单元的率失真代价j:
其中dx,y和rx,y分别表示编码单元中第(x,y)个像素的失真和编码比特数,x∈{1,2,…,h},y∈{1,2,…,w},w×h为视频分辨率,λ≥0为拉格朗日系数,w和h为有限的正整数、且w>h,本实施例的w取值为176,h取值为144。
按式(2)确定编码帧的深度特征向量fn:
fn={f1,f2,…,fα}(2)
其中n表示视频的第n个编码帧,n∈{1,2,…,n},n为视频总帧数,n取值为有限的正整数,本实施例的n取值为1000,round()为向上取整函数,fα为编码单元的深度值,fα的取值为0、1、2、3中的任意一个数,fα的具体取值应根据n的取值来确定。
按式(3)确定帧比特数rn:
(2)镜头切换检测
统计编码帧的帧比特数rn并绘制折线图进行分析,将呈现先逐渐增加后逐渐减少的地方标记为镜头切换,相邻两个镜头切换之间为1个镜头片段,镜头片段的长度为m,m取值为有限的正整数,且m<n,得到k个镜头片段,k取值为有限的正整数,本实施例的k取值为5,m的具体取值为336、216、112、96、296。
(3)提取关键帧
按式(4)确定拉普拉斯图矩阵l:
其中fi和fj分别表示第i和j个编码帧的深度特征向量,i∈{1,2,…,n},j∈{1,2,…,n}。
按式(5)确定l的前k个特征值对应的特征向量y,并按式(6)构造n×k阶矩阵y:
l×y=β×d×y(5)
y=[y1,y2,…,yk](6)
其中y1,y2,...,yk依次为前k个特征值对应的n×1阶特征向量,该步骤中的k的取值与步骤(2)中k的取值相同,n的取值与步骤(1)中n的取值相同。
对矩阵y进行k-means聚类,并按式(7)确定聚类中心μ与该镜头中其他所有帧的距离dm:
dm=||ym-μ||2(7)
其中m∈{1,2,…,m},m为每个镜头片段的长度,m取值为有限的正整数,且m<n,m的具体取值与步骤(2)相同。
将距离dm最小的帧被记为关键帧。
实施例3
以视频序列exoticterrane为例,本实施例的用视频压缩编码信息提取视频关键帧的方法步骤如下:
(1)提取深度和帧比特数特征
按式(1)确定编码单元的率失真代价j:
其中dx,y和rx,y分别表示编码单元中第(x,y)个像素的失真和编码比特数,x∈{1,2,…,h},y∈{1,2,…,w},w×h为视频分辨率,λ≥0为拉格朗日系数,w和h为有限的正整数、且w>h,本实施例的w取值为7680,h取值为4320。
按式(2)确定编码帧的深度特征向量fn:
fn={f1,f2,…,fα}(2)
其中n表示视频的第n个编码帧,n∈{1,2,…,n},n为视频总帧数,n取值为有限的正整数,本实施例的n取值为7000,round()为向上取整函数,fα为编码单元的深度值,fα的取值为0、1、2、3中的任意一个数,fα的具体取值应根据n的取值来确定。
按式(3)确定帧比特数rn:
(2)镜头切换检测
统计编码帧的帧比特数rn并绘制折线图进行分析,将呈现先逐渐增加后逐渐减少的地方标记为镜头切换,相邻两个镜头切换之间为1个镜头片段,镜头片段的长度为m,m取值为有限的正整数,且m<n,得到k个镜头片段,k取值为有限的正整数,本实施例的k取值为20,m的具体取值为156、196、596、1068、316、452、196、96、468、240、496、176、152、376、192、112、412、336、240、396。
(3)提取关键帧
按式(4)确定拉普拉斯图矩阵l:
其中fi和fj分别表示第i和j个编码帧的深度特征向量,i∈{1,2,…,n},j∈{1,2,…,n}。
按式(5)确定l的前k个特征值对应的特征向量y,并按式(6)构造n×k阶矩阵y:
l×y=β×d×y(5)
y=[y1,y2,…,yk](6)
其中y1,y2,...,yk依次为前k个特征值对应的n×1阶特征向量,该步骤中的k的取值与步骤(2)中k的取值相同,n的取值与步骤(1)中n的取值相同。
对矩阵y进行k-means聚类,并按式(7)确定聚类中心μ与该镜头中其他所有帧的距离dm:
dm=||ym-μ||2(7)
其中m∈{1,2,…,m},m为每个镜头片段的长度,m取值为有限的正整数,且m<n,m的具体取值与步骤(2)相同。
将距离dm最小的帧被记为关键帧。
为了验证本发明的有益效果,发明人采用本发明实施例1的用视频压缩编码信息提取视频关键帧的方法与hevcintraframebasedcompresseddomainvideosummarization(以下简称对比文件1)方法进行了对比实验,确定两种方法的准确率、召回率、f值作为评价视频摘要的质量好坏的综合指标,实验和计算结果如表1所示。
准确率按下式确定:
其中nm为实验方法与用户摘要匹配的关键帧数,nas为实验方法提取的关键帧数。
召回率按下式确定:
其中nus为用户摘要提取的关键帧数。
f值按下式确定:
表1实验结果
由表1可见,本发明方法与对比文件1方法相比,本发明方法的效果有明显提高,其中准确率提高了12.1%,召回率提高了5.3%,f值提高了8.4%。