专利名称:视频的关键帧提取的制作方法
专利说明视频的关键帧提取
背景技术:
视频可以包括一连串的视频帧,每个视频帧包含图像场景的视频快照。所述一连串的视频帧可以以适当的帧速率在显示器上再现,以提供视频的回放。
视频系统可以包括提取视频的视频帧子集以用作关键帧的能力。例如,可以从视频中提取一组关键帧从而为视频构建情节串连图板(storyboard)。通过将所提取的关键帧再现为一连串的缩略图像来构建情节串连图板,所述一连串的缩略图像向观众提供视频内容的可视指示。
从视频中提取关键帧的方法可以基于视频中镜头的安排。例如,专业编辑过的视频可以被安排成一组精心选择的镜头。通过检测镜头之间的边界,以及随后在每个镜头的开始、中间或者结束处选择关键帧,可以从编辑过的视频中提取关键帧。
不幸地,从视频中镜头的开始、中间或者结束处提取关键帧可能无法产生代表视频的最佳关键帧。此外,基于视频中镜头的安排从视频中提取关键帧可能无法提供关键帧提取的灵活性。例如,基于视频中镜头的安排从视频中提取关键帧可能无法考虑视频系统底层平台的特性或者视频系统中通信的局限性。
发明内容
公开了允许从视频中灵活地提取关键帧的技术。根据本技术的关键帧提取包括将视频分段为一组镜头,每个镜头具有一组视频帧,并且响应于相应的视频帧的图像质量从所述镜头中选择一组关键帧。本技术包括一组用户可选择模式,其使关键帧的提取能够适应于底层平台。
从以下细节地描述中本发明的其它特性及优点将显而易见。
参考附图,针对有关特定典型实施例来描述本发明,在附图中 图1示出结合了本教导的视频系统; 图2示出用于从视频中提取一组关键帧的方法; 图3示出用于检测视频中镜头的方法; 图4示出用于从视频的镜头中提取关键帧的方法; 图5示出包括用于关键帧提取的一组用户可选择模式的视频系统; 图6示出用于使用多种关键帧提取模式从视频中提取一组关键帧的方法; 图7示出用于为视频的一组镜头分配固定数量的关键帧的方法; 图8示出用于以固定速率模式为视频的每个时段分配关键帧的方法。
具体实施例方式 图1示出结合本教导的视频系统10。视频系统10包括关键帧提取器14,其从视频12的一连串视频帧13中提取一组关键帧16。关键帧提取器14使用适用于编辑过的视频的方法,从视频12中提取关键帧16。例如,与倾向于未编辑且随意的业余爱好者视频相比,专业编辑过的视频可能包括大量精心创建的被精心编辑过的镜头。专业视频可以具有相对少的摄像机运动,这种摄像机运动是相对慢的摄像机运动,例如追踪物体运动的摄像机运动。与业余爱好者视频相比,专业视频可以具有更频繁的镜头剪切。
图2示出用于从视频12中提取关键帧16的方法。所示的方法步骤由关键帧提取器14来执行。在步骤100,将视频12分割为一组镜头。镜头可以被定义为连续捕获的一系列视频帧。步骤100包括通过检测镜头之间的边界来检测镜头。在步骤100中被检测的视频12的镜头数量是S。步骤100中的每个镜头包括来自视频12的相应的一连串视频帧。在步骤102,响应于相应的视频帧中图像的质量和视频内容的改变,从每个镜头中选择一组关键帧。
图3示出用于在步骤100检测视频12中的镜头的方法。在步骤30,为视频12的每个视频帧13确定色彩直方图和亮度以及清晰度。
通过例如根据以下等式计算视频帧中像素的平均发光度(luminance),可以确定视频帧的亮度(brightness)。
其中y(i,j)是在视频帧中(i,j)处像素的发光度,并且其中N和M分别是视频帧的高度和宽度。
视频帧的清晰度如下确定。首先,例如根据下式,对视频帧应用边缘检测过滤器 Ex(i,j)=((y(i-1,j+1)-y(i-1,j-1))+(y(i,j+1)-y(i,j-1))×2+(y(i+1,j+1)-y(i+1,j-1)))/8 Ey(i,j)=((y(i+1,j-1)-y(i-1,j-1))+(y(i+1,j)-y(i-1,j))×2+(y(i+1,j+1)-y(i-1,j+1)))/8 其中,i=2,K,N-1,j=2,K,M-1 然后,可以使用下面等式确定清晰度。
在步骤32,确定视频12中每对连续视频帧的色彩直方图之间的差。成对的色彩直方图之间的差提供色彩直方图差的时间曲线。
在步骤34,确定色彩直方图差的均值和方差。在步骤36,根据步骤34的均值和方差确定适应性阈值。步骤36的适应性阈值可以是阈值=均值*ALPHA+std*BETA,其中ALPHA=2并且BETA=3,均值和std随每个新帧而更新。均值和方差随着步骤32的每组新的色彩直方图差数据而更新。
在步骤38,使用步骤36的适应性阈值在视频12中检测一组镜头边界。视频12中的纯镜头(clean shot)是不包括过渡的视频帧序列,例如,视频12中的不渐隐的视频帧序列,视频12中不淡入的视频帧序列,以及视频12中不淡出的视频帧序列。步骤36的适应性阈值还允许检测表明视频12中镜头之间渐隐边界的视频帧序列。如果在视频12的背景中有明暗的改变,步骤36的适应性阈值可能创建错误警报,但是在这种少数情形中,其对关键帧提取几乎没有影响。
在步骤40,检测在视频12的淡入、淡出以及渐隐过渡中的黑色视频帧和模糊视频帧。视频12中镜头之间的淡入和淡出边界可以由视频12中的黑色视频帧以及通过检测具有一致色彩的视频12的视频帧来指示。响应于帧的亮度和清晰度,可以确定黑色视频帧和具有一致色彩的视频帧。将与视频12的镜头之间的淡入和淡出边界对应的视频帧消除,避免了从与视频12的过渡时段对应的视频帧序列13中选择关键帧。视频帧的清晰度可以用于避免选择与视频12的渐隐边界对应的关键帧。
图4示出步骤102中从视频12的镜头中选择关键帧的方法。在步骤70,为镜头中的每个视频帧确定熵。
可以根据以下的等式确定视频帧的熵。
其中hist(i)是视频帧的直方图,N是直方图的仓(bin)的数量,framesize是视频帧中像素的数量,即framesize=frame_width(帧宽度)*frame_height(帧高度)。
在步骤72,为镜头中的每个视频帧确定清晰度。在步骤74,为镜头中每个视频帧确定亮度。
在步骤76,为镜头中每个视频帧确定对比度。通过例如根据以下的等式,计算视频帧的发光度的方差,可以确定视频帧的对比度
在步骤78,响应于相应的亮度和清晰度,检测镜头中的格外亮的视频帧。当为镜头选择关键帧时,要避免镜头中格外亮的视频帧。
在步骤80,响应于相应的亮度和清晰度,检测镜头中的格外暗的视频帧。当为镜头选择关键帧时,镜头中格外暗的视频帧不列入考虑。
在步骤82,当为镜头选择关键帧时,镜头中的与镜头的开始部分和结束部分对应的视频帧不列入考虑。这避免了与视频12的过渡对应的关键帧,或者镜头改变的特殊效果,例如渐隐。这也避免了内容上彼此相似的关键帧。
在步骤84,在镜头的剩余视频帧中响应于它们的熵、清晰度以及对比度来选择关键帧。关键帧选择为具有最佳熵、清晰度以及对比度。
图5示出包括一组用于关键帧提取的用户可选择模式的视频系统10的实施例。在该实施例中,关键帧提取器14响应于用户所选的模式18从视频12中提取关键帧16。用户所选的模式18指定了一组可能的关键帧提取模式(模式1—3)中的一个。用户可选择模式1—3使关键帧提取能够适用于具有不同特性的系统。
在模式1中,关键帧提取器14从视频12的每个镜头中提取一个关键帧。模式1可用于使用所提取的关键帧为视频12建立情节串连图板。在模式1中为镜头所提取的关键帧是该镜头中具有最佳图像质量的视频帧。这与先前从镜头中提取第一帧或者随机帧的方法形成对照。
在模式2中,关键帧提取器14为视频12的全部长度提取固定数量的关键帧。模式2可用于显示关键帧16的区域受限的应用,例如,蜂窝电话或者PDA的显示器。模式2的特定情况是一个关键帧,其将视频12表示为缩略图。
在模式3中,关键帧提取器14以固定的关键帧速率提取关键帧,即,每固定时间段提取一个关键帧,例如每两秒一个关键帧。模式3可用于视频内容通过有限带宽的通信信道传送的应用。模式3向用户提供以固定速率刷新的关键帧。关键帧速率可以由用户选择。
图6示出用多种关键帧提取模式从视频12中提取关键帧16的方法。示出的方法步骤由关键帧提取器14响应于用户所选的模式18来执行,用户所选的模式18指定为模式1、模式2或者模式3。在步骤20,将视频12分割为一组数量为S的镜头。
如果用户所选的模式18指示为模式1,那么在步骤22,将在步骤20找到的每个镜头中选择一个关键帧。依照方法步骤70—84在步骤22从镜头中选择关键帧。
如果用户所选的模式18指示为模式2,那么在步骤24,将在步骤20找到的S个镜头中选择固定数量K个关键帧。步骤24包括将该K个关键帧分配给S个镜头。依照方法步骤70—84在步骤24从镜头中选择关键帧。
如果用户所选的模式18指示为模式3,那么在步骤26,将每固定时间段(T),从在步骤20产生的镜头中,提取一个关键帧。步骤26包括将关键帧分配给视频12的每时间段T。依照方法步骤70—84,在步骤26,从视频12中提取关键帧,但是操作是对视频12中的时间段T而不是镜头中的时间段T进行的。
图7示出在步骤24将K个关键帧分配给S个镜头的方法。在步骤50,如果K大于S,那么在步骤52,视频12的S个镜头中的每个按照其长度和其内容改变的得分而排序。
可以如下确定ith镜头的次序。
rank(i)=length(i)×hc 其中length(i)是以镜头中视频帧的数量计算的该镜头的长度,hc是指示镜头中最大直方图差的值。hc的值可以通过跳过镜头的最初和最末的部分(例如,跳过镜头中最初10个帧和最末10个帧;或者如果镜头包括少于30个帧,跳过镜头的最初1/3和最末1/3)来估计,然后,为剩余帧计算每对连续帧之间的直方图差,并选择最大的直方图差值作为hc。
在步骤54,选择次序最高的镜头。检验在步骤54中所选的镜头以确定如果将其分为两个镜头,例如新镜头中的一个可能只包含低质量的视频帧,是否会产生低质量的关键帧。可以响应于视频帧的熵、清晰度和对比度来计算用于排序视频帧质量的质量得分,例如质量得分=熵/2+清晰度/4+对比度/4。
如果可能产生低质量关键帧,那么在步骤55中,在步骤54所选择的镜头的次序将被设置为零。否则,在步骤56,具有次序最高的镜头将在镜头中具有最大直方图改变的视频帧处,例如与未检测到的渐隐对应的视频帧或者与显著摄像机运动或者对象运动对应的视频帧处,被分割为两个。步骤56的被分割的段将被看作为两个新的镜头,并且S值增加1。计算两个新镜头的次序。步骤52—56继续,直到K等于S。之后,依照方法步骤70至84从视频12的每个镜头中选择一个关键帧。
在步骤50,如果K小于S,那么在步骤58依照方法步骤70至84,向视频12中的每个镜头分配一个关键帧。在步骤60,去除在步骤58所分配的具有最低图像质量的关键帧,并且去除在步骤58所分配的对应于最短镜头的关键帧,直到关键帧的数量K等于镜头的数量S。
图8示出在步骤26为视频12的每个时间段T分配关键帧的方法。在步骤90,响应于关键帧速率1/T选择视频12的段。在步骤90的初始段包括由视频12中的第一视频帧(在时间t0处的视频帧)和视频12中在时间t0+T处的视频帧界定的视频12的视频帧。在步骤90下一段包括由视频12中在时间t0+T处的视频帧和视频12中在时间t0+2T处的视频帧界定的视频12的视频帧,对于随后的段亦如此。
在步骤92,在步骤90被选择的视频12的段中检测镜头的边界(如果有的话)。在步骤94,确定步骤90中所选的视频12的段中的视频帧的图像质量。在步骤96,确定步骤90中所选的视频12的段中的内容改变(如果有的话)。在步骤98,响应于镜头边界、图像质量和内容改变,在步骤90所选的视频12的段中选择关键帧。例如,如果在段中有镜头边界,并且已经从前一段的第一镜头中选择至少一个关键帧,那么将一个关键帧分配给第二镜头。如果在所述段中没有镜头边界,那么在该段中的最大内容变化之后选择一个关键帧。具有最佳图像质量的视频帧被选为关键帧。
视频系统10可以在包括计算机系统、视频系统、手持设备等等的各种系统中实施。
本技术可以被用于管理视频剪辑的收集。从视频剪辑中提取的关键帧可用于视频打印和/或视频浏览以及视频通信,例如,通过email,蜂窝电话显示器等等来进行。上述用于关键帧提取的方法产生可以指示视频剪辑精彩片段以及描述对于观众有意义的视频剪辑中的内容的关键帧。本技术提供视频剪辑的内容的全面表达。所提取的关键帧可以用于视频剪辑的缩略表示,用于预览视频剪辑,以及分类和检索视频数据。所提取的关键帧可以用于打印情节连串图板、明信片等等。
为说明目的提供本发明的前述详细说明,其不是详尽的或者将本发明限制到精确的所公开的实施例中。同样地,本发明的范围由所附权利要求确定。
权利要求
1、用于关键帧提取的方法,包括
将视频(12)分割为一组镜头,每个镜头具有一组视频帧;
响应于相应的视频帧的图像质量从镜头中选择一组关键帧(16)。
2、如权利要求1的方法,其中选择包括响应于相应的视频帧的视频内容的改变选择关键帧(16)。
3、如权利要求2的方法,其中选择包括通过确定相应的视频帧中的直方图差,来确定视频内容的改变。
4、如权利要求1的方法,其中选择包括响应于每个相应的视频帧的熵选择关键帧(16)。
5、如权利要求1的方法,其中选择包括响应于每个相应的视频帧的清晰度选择关键帧(16)。
6、如权利要求1的方法,其中选择包括响应于每个相应的视频帧的对比度选择关键帧(16)。
7、如权利要求1的方法,其中选择包括响应于用户所选的模式选择关键帧(16)。
8、如权利要求7的方法,其中选择一组关键帧(16)包括按照用户所选的模式的指定,为视频(12)选择固定数量的关键帧(16)。
9、如权利要求7的方法,其中选择包括按照用户所选的模式的指定,为视频(12)选择固定速率的关键帧(16)。
10、如权利要求7的方法,其中选择包括按照用户所选的模式的指定,为视频(12)的每个镜头选择一个关键帧。
全文摘要
允许从视频(12)中灵活提取关键帧的技术。根据本教导的关键帧提取包括将视频(12)分割为一组镜头,每个镜头具有一组视频帧,并且响应于相应的视频帧的图像质量,从镜头中选择一组关键帧(16)。本技术包括一组用户可选择的模式,其使关键帧提取能够适用于底层平台。
文档编号G06F17/30GK101443850SQ200780017189
公开日2009年5月27日 申请日期2007年5月11日 优先权日2006年5月12日
发明者T·张 申请人:惠普开发有限公司