用于使用基于内容的视频时间线索来识别视频中的位置的过程和系统的制作方法

文档序号:7593073阅读:220来源:国知局
专利名称:用于使用基于内容的视频时间线索来识别视频中的位置的过程和系统的制作方法
技术领域
本发明一般涉及视频处理,更具体地说,涉及用于使用基于内容的视频时间线索来可靠地识别视频中的位置的一种过程和系统。这些时间线索由视频内容的有序的一连串视频“指纹”或“签名”组成,它们利用该视频的帧图像中的这些空间特征并可靠地识别位置,即使已修改该视频(例如,利用插入或删除),也是如此。
背景技术
视频是一种流行、普及的媒介。几乎在每间起居室中,并在日益增多的最终用户个人计算机(PCs)上可以发现视频。视频采用难以置信的各种形式、格式和压缩,并且,这种多样性每年继续呈增长趋势。这种多样性对需要可靠地识别视频流中的位置的视频软件应用程序提出了巨大的挑战。举例来讲,这些视频软件应用程序包括摘要、数据库索引、内容同步和视频流的注释。很难可靠地识别视频流中的位置,这是因为该视频流中的“相同的”视频内容在其存在期间可能会经历合适的修改。这样,则不可能使用帧序号或嵌入时间码来可靠地识别位置。对于商业电视(TV)节目而言,尤其如此,关于这些节目的修改可以包括简短选录的插入和删除。例如,同一部电影的不同播放包括各组不同的商业广告节目。此外,其他普通的修改包括格式转换(例如,从美国使用的格式“全国电视标准委员会制式”(NTSC)转换为在欧洲占支配地位的标准“逐行倒相制式”(PAL))。另外,其他修改可以包括存储变化(例如,对压缩格式、压缩参数或对这两者的改变)和可能会有选择地丢失帧的时间压缩。
一种应用程序(其中,需要可靠地识别视频流中的位置)在web启用电视系统中。一般而言,web启用电视系统指的是允许用户使用电视来进行“万维网”(或“Web”)冲浪的一组产品和技术。这允许将与视频(或TV广播)关联的内容(或信息)放置在该电视屏幕上,同时允许使用该Web。这样,用户可以观看篮球游戏,并可以在该游戏下面看见超链接,以获得关于某个球员的更多信息。同样,该用户可以看见超链接,以获得关于购买其喜欢的球队运动衫或帽子的信息。该内容与某个视频关联。
但是,有关使该内容与该视频广播相关联的一个问题是在该国和世界的不同地区,通常有该视频广播的不同版本。根据以上所描述的这些普通的修改,这些不同的版本可能会不一致。这要求为该视频广播的每个版本手动注释该视频广播(例如,插入超链接)。关于该视频广播的每个版本的手动注释很耗时、花费昂贵且容易出错。
为了避免视频广播的每个版本的手动注释,可以将该内容直接嵌入该视频广播中。嵌入涉及在该视频广播中或该相同的数字视频文件内的同步流中的所需位置处附上该内容。但是,一个问题是该嵌入技术十分固定,不可变更。如果有几个来源想要将其内容嵌入该视频广播,则该视频文件迅速变得很大。关于该嵌入技术的其他问题包括在所需内容的过滤和搜索过程中存在安全危险和困难。
所以,需要一种过程和系统,该过程和系统提供对视频中的位置的可靠识别,以便不需要帧序号和嵌入时间码。另外,需要一种过程和系统,该过程和系统提供一种使视频的不同版本之间的内容同步的灵活的方法。而且,还需要一种过程和系统,该过程和系统可以坚定地识别视频中的位置,并可以经受得住由于增加和删除帧、不同类型的压缩和不同的广播格式而产生的该视频的修改。

发明内容
这里所揭示的本发明包括一种用于可靠地识别不同版本的视频内容中的这些相同位置的过程和系统。该过程和系统依靠每一帧基于内容的视频“签名”。这些视频签名构成关于该视频的基于内容的视频时间线索。基于内容的视频时间线索是一种机制,用于坚定地识别视频流中的位置,而无须依靠帧序号或嵌入时间码。基于内容的视频时间线索由有序的一连串视频签名组成。根据该视频中的帧的这个内容,基于内容的视频时间线索使用这些视频签名来识别一个特定的帧或特定的一连串帧。这些基于内容的视频时间线索简洁紧凑、可迅速生成和搜索,并且,它们对于对视频的普通修改而言是鲁棒性的,该视频会使帧序号和嵌入时间码变得不可靠。这些普通的修改包括插入、删除、时间压缩、数据压缩(例如,Indeo、Cinepak和MPEG IV压缩)、广播格式(例如,NTSC和PAL)、sentilations(例如,白噪声和黑噪声)、3:2下拉错误(例如,电视上所放映的电影)和颜色移位。该视频位置识别过程和系统提供对视频中的位置的可靠识别,以便不需要帧序号和嵌入时间码。此外,这里所描述的该过程和系统很具鲁棒性,并且可以经受得住由于以上所列出的这些修改而产生的该视频的修改。
基于内容的视频时间线索提出了一个重要类别的问题。例如,在视频摘要和数据库索引中,基于内容的视频时间线索提供了一种有效率的机制,用于标明和恢复该视频流中的重要对象和事件的位置。而且,由于这些时间线索很具鲁棒性,因此,可以与该视频流本身分开地存储它们。这意味着可以使用基于内容的视频时间线索来支持对第三方内容的同步化和对注释的定位。
例如,考虑以下这个问题。纽约市的用户对电视节目的本地版本进行注释,以指出这些重要的部分。换言之,该纽约市用户使用注释来创建该节目的概要。以后,该纽约市用户想要与芝加哥的朋友分享这些注释。但是,这位朋友只可以使用该节目的本地芝加哥版本。这个版本(包括一组不同的商业广告节目)几分钟后在该节目中开始,因为它在体育消息广播之后被加入“已在进展中”。芝加哥的这位用户如何能够看见这位纽约用户在该节目的其本地版本中的这些正确位置处的注释呢?如果使用这里所描述的该视频位置识别过程和系统,这位芝加哥用户可以将这位纽约市用户所创建的这些注释放置在该节目的本地芝加哥版本中的这些正确的位置。通过生成基于内容的视频时间线索,该纽约用户可以按高度精确、鲁棒性的方式来识别该节目的这些重要部分。他可以将其注释连同该时间线索的这些有关的部分或片段一起经由电子邮件发送给他的朋友。该芝加哥用户的机器上的软件可以使用这些视频时间线索片段来确定该节目的本地芝加哥版本中的这些正确的位置。即使该芝加哥版本与该纽约版本截然不同,也是如此。


通过参考下文和展示本发明的各个方面的附图,可以进一步理解本发明。通过本发明的以下详细的描述并结合这些附图(举例来讲,它们展示了本发明的各种原则),其他特点和优点将会一目了然。
现在参考这些附图,在这些附图中,相似的参考数字表示各处对应的部分图1是框图,展示了被并入注释系统的、这里所揭示的该视频位置识别过程和系统的综合纵览,该图只起说明作用。
图2是框图,展示了图1中所示的该视频位置识别过程和系统的综合纵览。
图3A是框图,展示了用于为视频的第一个版本生成签名的、图1和图2中所示的该视频位置识别系统的纵览。
图3B是框图,展示了用于为视频的第二个版本生成签名的、图1和图2中所示的该视频位置识别系统的纵览。
图3C是框图,展示了用于使图3A和图3B中所生成的这些签名相匹配的该视频位置识别系统的纵览。
图4是框图,展示了图3A和图3B中所示的该签名发生和提取模块的细节。
图5是图4中所示的形态学上的清理模块450的详细框图。
图6A是详细框图,展示了图4中所示的该短签名模块的第一个实施例。
图6B是详细框图,展示了图4中所示的该短签名模块的第二个实施例。
图7是详细框图,展示了图6B中所示的该修改过的PCA模块的更多细节。
图8是框图,展示了图3C中所示的该签名匹配模块的细节。
图9是图8中所示的该可靠性模块的详细框图。
图10是综合流程图,展示了图3A-C中所示的该视频位置识别系统的操作。
图11是流程图,展示了图10中所示的该视频位置识别系统方法的操作的额外细节。
图12展示了工作例子中的被用来产生签名的该签名发生和提取(或特点提取)过程的细节。
图13展示了该工作例子中的被用来恢复位置的该签名匹配过程的细节。
图14展示了该工作例子中所使用的该可靠性特点。
图15展示了可以在其中执行该视频位置识别过程和系统的合适的计算系统环境的例子。
具体实施例方式
在本发明的下文中,参考这些附图,这些附图构成本发明的一部分,并且,在这些附图中用举例说明的方式表现了一个特殊的例子,由此,可以实践本发明。将会理解可以利用其他实施例,并且,在不脱离本发明的范围的前提下,可以进行结构上的变更。
1.引言一大批多媒体应用程序需要用于可靠地识别视频流中的位置的鲁棒性的技术。在一些情况中,诸如帧序号或嵌入时间码的元数据足以确定位置。但是,对该视频流的修改经常改变该元数据,从而使其变得无用。举例来讲,商业电视一般经历修改(例如,广告的插入和删除、格式转换和时间压缩)。
这里所描述的该视频位置识别过程和系统包括一种鲁棒性的技术,该技术用于使用基于内容的视频时间线索来识别视频流中的位置。这些基于内容的视频时间线索由从该视频内容中加以提取的有序的一连串低维数视频签名组成。这些签名不基于统计技术(例如,彩色直方图)。相反,这些签名利用该视频流的帧内的空间特征。每个签名是单一帧图像的简洁表示,选择该单一帧图像来最佳地将它与其他帧图像区别开来。在从10到100个签名的邻接序列中,可以用独特的方式来识别该视频流中的位置。签名具有高度的辨别力,并且对于可能在视频上执行的许多普通形式的修改而言很具鲁棒性。这里所描述的该视频位置识别过程和系统有效率,并可以被实时地加以执行。
2.综合纵览作为可以如何执行这里所描述的本发明的例子,提供了以下这个例子。应该注意,以下的实施只是可以使用本发明的几种方法中的一种方法。图1是框图,展示了被并入注释系统的、这里所揭示的该视频位置识别过程和系统的综合纵览;该图只起说明作用。一般而言,注释系统100允许第一位用户根据第一视频来创建注释,将该注释发送给第二位用户,并将第一位用户所创建的该注释放置在第二视频中。即使第一视频可能与第二视频截然不同,也是如此。
明确地说,参考图1,源视频105包含多个帧(帧(1)~帧(N))。这个源视频正在两个不同的分台上被加以广播,即,第一广播分台110按NTSC格式进行广播,第二广播分台115按PAL格式进行广播。例如,这两个广播分台110、115可能是两个不同的电视网络——一个位于美国(使用该NTSC格式),一个位于欧洲(使用该PAL格式)。将不同的商业广告节目加入源视频105。NTSC格式广播分台110将第一组商业广告节目120加入源视频105。这第一组商业广告节目120适合本地观众的标准和欣赏力。同样,PAL格式广播分台115将第二组商业广告节目125加入源视频105。
如图1所示,这产生了源视频+第一组商业广告节目130以及源视频+第二组商业广告节目135。应该注意,通过增加这些商业广告节目而获得的合成视频130、135可能具有不同的长度。另外,第一合成视频130通过第一种类型的压缩140来进行压缩,第二合成视频145通过第二种类型的压缩145来进行压缩。例如,这第一种类型的压缩140可能是Indeo——视频压缩/解压(编码解码器)技术,并且,这第二种类型的压缩145可能是MPEP IV——具有竞争性的编码解码器技术。
源视频105的最后的广播版本根据谁正在执行该广播而有所不同。换言之,由于所增加的不同的商业广告节目、所使用的不同类型的压缩、不同的广播格式和不同的广播噪声,第一视频广播150不同于第二视频广播155。这样,用户#1在观看由NTSC格式广播分台110传送的第一视频广播150时所看到的内容不同于用户#2在观看由PAL格式广播分台115传送的第二视频广播155时所看到的内容。
用户#1使用其视频位置识别系统160来产生对第一视频广播165的注释。举例来讲,第一视频广播150可以包含背景中有房屋的海滩情景。用户#1可以对第一视频广播150进行注释,以便在背景中的这些房屋之一的周围画圈,从而指出这是用户#1在“海岸上的房屋”。通过狭窄信道,将这个注释发送给用户#2。举例来讲,这个狭窄信道包括电子邮件、手机、因特网和即时通信(IM)服务。用户#2使用她的视频位置识别系统170来将该注释与源视频105的第二视频广播155版本中的该正确位置相匹配。这创建了具有对应的注释175的第二视频广播。这样,通过使用这里所描述的该视频位置识别系统和过程,用户#1能够将源视频105的其版本的其注释发送给用户#2,用户#2能够使那个注释与源视频105的其版本中的该正确位置相符。
图2是框图,展示了图1中所展示的该视频位置识别方法和系统的综合纵览。这个综合纵览中所使用的该情节是在不同的市场中所放映的商业电视节目。在商业电视节目实际上被显示在电视观众的电视机上之前,这些商业电视节目经历了数目惊人的微妙的修改。所以,帧序号和时间偏移量作为识别视频流内的位置的工具而言,经常是不可靠的。
图2中所示的视频位置识别方法和系统200对于许多普通的修改而言很具鲁棒性,然而却无足轻重且花费不多。应该注意,关于用户#1的该视频位置识别系统和关于用户#2的该视频位置识别系统是图2中所示的视频位置识别系统200的特殊实施。一般而言,视频位置识别方法和系统200允许原始电视节目210的第一个版本205中的位置与原始电视节目210的第二个版本215中的位置相符。由于方法和系统200对于许多种类型的修改而言很具鲁棒性,因此,如图2中的情况,即使第一个版本205和第二个版本215彼此不同,也是如此。
尤其是,如图2所示,通过采用原始电视节目210并增加第一组商业电视节目220,来创建第一个版本205。这第一个版本205由NBC 225按NTSC广播格式来进行广播,并使用Indeo压缩230来进行压缩。西雅图的简在她的电视机上接收到被广播的第一个版本205。
其间,通过采用原始电视节目210并增加第二组商业电视节目235,来创建第二个版本215。这第二个版本215由CBS 240按PAL广播格式来进行广播,并使用MPEG IV压缩245来进行压缩。巴黎的约翰在他的电视机上接收到被广播的第二个版本215。
当简接收第一个版本205时,她可以按需要来注释第一个版本205。图2展示简已通过在第一个版本205的某个帧(在图2中被表示为这个最后的帧)中的对象周围画一个圈250,来对第一个版本205进行注释。这个注释创建被注释的第一个版本255。应该注意,虽然展示了单一注释,但是,被注释的第一个版本255中通常将会包含多个注释。被注释的第一个版本255中所包含的注释260由西雅图的简通过电子邮件发送给巴黎的约翰。约翰接收注释260,并且,通过使用这里所揭示的视频位置识别方法和系统200,他能够恢复其第二个版本215中的这些位置,在这些位置处,简曾在其第一个版本205中作出注释260。这生成了包含简的注释260的、关于巴黎的约翰的被注释的第二个版本265,包括该各自的帧中的该对象周围的圈250。
3.系统纵览与部件细节现在将讨论视频位置识别方法和系统200允许简创建注释260的方式以及允许约翰恢复关于简的注释260的这些正确位置的纵览。首先,将提供该系统的纵览。接下来,将讨论该系统中的每个部件的细节。
图3A-C展示了图2中的视频位置识别系统200的纵览。视频位置识别系统200被设计成在计算设备上进行操作,以下描述其细节。一般而言,视频位置识别系统200允许用户在视频的第一个版本中创建注释,根据该视频的第一个版本和第二个版本的内容来生成签名,然后使这些签名相匹配,以恢复曾在第一个版本中被加以注释的、第二个版本中的位置。从该视频本身的该内容中生成签名,并忽略元数据(例如,帧序号和时间偏移量)。视频内容包括基于内容(举例来讲,例如,视频帧中的视觉内容、任何音频跟踪视频帧内容、与该视频同步的音频内容,以及封闭的字幕信息)的任何信息。使用这些类型的视频帧内容来生成签名。
图3A是框图,展示了用于为视频320的第一个版本生成签名的视频位置识别系统200的纵览。视频位置识别系统200驻留在处于第一个位置的第一个计算设备300上。例如,使用图2中的这个例子,该第一个位置将会在西雅图的简的计算机上。简对视频320的第一个版本进行注释,有关范围330由这些注释来定义。有关范围330至少是第一个版本320的一个部分,并且至少包含一个帧。签名发生和提取模块310处理视频320的第一个版本,并且,它根据该有关范围以内的这些视频帧的内容,来生成第一个签名序列340。这第一个签名序列340只是可以从第一个版本320中被生成和提取的所有这些签名的一个部分。换言之,这第一个签名序列所包含的签名只表现有关范围330中所包含的这些帧的内容。在交替实施例中,可以使用预处理步骤来从第一个版本320中提取所有签名,以便每当识别有关范围时,不一定要提取这些签名。
图3B是框图,展示了用于为视频350的第二个版本生成签名的视频位置识别系统200的纵览。视频位置识别系统200驻留在处于第二个位置的第二个计算设备305上。再次使用图2中的这个例子,这第二个位置将会在巴黎的约翰的计算机上。约翰的计算机上的视频位置识别系统200输入约翰将会观看的视频350的第二个版本。签名发生和提取模块310处理第二个版本350,并且,它根据帧内容来生成第二个签名序列360。这第二个签名序列包含可以从第二个版本350的该帧内容中被生成和提取的所有签名。
图3C是框图,展示了用于使在图3A和3B中所生成的这些签名相匹配的该视频位置识别系统的纵览。这种签名匹配发生在第二个计算设备305上,或者,再次使用图2中的这个例子,发生在巴黎的约翰的计算机上。约翰从简那里接收第一个签名序列340。然后,签名匹配模块370根据来自第一个版本320并在简的计算机上被创建的视频内容,来处理这第一个签名序列340;签名匹配模块370根据来自第二个版本350并在约翰的计算机上被创建的视频内容,来处理这第二个签名序列360。该结果是被恢复的有关范围380,有关范围380恢复曾由简在第一个版本320中作出的、约翰所看见的该视频的第二个版本350中的这些注释的位置。
视频位置识别系统200提供一种可靠、鲁棒性的系统,用于识别视频的不同版本之间的位置。实际上,该系统将任何资料(例如,注释)“抛锚”到那些位置。这样,允许在可能具有类似但并非完全相同的内容的这些不同的版本之间传递该资料。现在将详细地讨论图3A-C中所示出的视频位置识别系统200的这些部件。
视频位置识别系统200包括签名发生和提取模块3100,以及签名匹配模块3700。签名发生和提取模块310输入视频帧,并根据那些帧的内容来提取签名。这些签名表示这些视频帧上所包含的内容。
图4是框图,展示了签名发生和提取模块310的细节。一般而言,签名发生和提取模块310输入视频帧400,并处理视频帧400,以生成签名410,其中,该签名表示该帧中所包含的内容。签名发生和提取模块310包括灰度等级转换器420、向下采样(downsample)模块430和中央门限位图转换器440。签名发生和提取模块310进一步包括形态学上的清理模块450、任选的(如这些虚线所表示的)短签名模块460和签名包装模块470。
灰度等级转换器420按每个帧当前分辨率来将视频帧400转换成灰度等级,以产生灰度等级帧。使用向下采样模块430来对该灰度等级帧进行向下采样,直到创建该灰度等级帧的较低分辨率为止。在一个实施例中,向下采样模块430通过构建高斯金字塔,来进行从该标准SIFF视频帧大小到30×40帧大小的向下采样。该合成的低分辨率灰度等级帧被发送到中央门限位图转换器440。使用中央门限位图转换器440来将该低分辨率灰度等级帧转换成包括0和1(或该帧的0/1位图版本)的位图。中央门限位图转换器440将该帧的中央灰度等级用作阈值,以确保关于每个帧的0和1的数目近似相等。这为签名提供了最大的辨识力。
在中央门限位图转换器440进行处理之后,留下一个签名帧,该签名帧包含近似相等数目的0和1。这个签名帧由形态学上的清理模块450来处理,以减少和消除可能存在于该签名帧中的噪声。形态学上的清理模块450是迭代模块,由此,可执行核心调整,以维持0和1的平衡。形态学上的清理模块450为每个帧生成初始签名或“长”签名。在一个实施例中,如果向下采样模块430的结果是30×40帧图像,则该“长”签名是30×40=1200个位。
在一些情况中,如以下所解释的,不需要这个长签名,短签名将足够了。使用短签名可提高视频位置识别系统200的速度。任选模块是短签名模块460,它将该长签名向下采样为包含较少数量的位的短签名。例如,该短签名可以包含128个位,而不是长签名中可以包含的这1200个位。如以下详细的描述,短签名模块460可以使用两种不同的技术来生成被应用于该长签名的掩码。通常,短签名模块460执行维数精简,以减少该长签名中的位数,从而创建该短签名。然后,将该长、短签名传送到所需位置,用于和该视频的另一个版本相匹配。
举例来讲(不作限制),可以使用签名包装模块470来传送这些签名。签名包装模块470包装这些签名中的每个签名连同其他项目(例如,有关范围330或与有关范围330关联的任何注释),并生成包含这些项目中的每个项目的单一文件。然后,可以将这个签名文件传送到另一个站点。例如,参考图2,该签名文件可以包含通过电子邮件而从西雅图的简那里被发送给巴黎的约翰的签名序列和注释。一旦被巴黎的约翰收到,这些所传送的签名序列就由约翰的计算设备305上的视频位置识别系统200来进行处理。
图5是图4中所示的形态学上的清理模块450的详细框图。一般而言,形态学上的清理模块450输入帧500的0/1位图版本,并输出这些帧的长签名510。形态学上的清理模块450包括k滤波器发生器520、k滤波器应用模块530、二进制平衡模块540和更新像素评估模块550。
k滤波器发生器520为处理帧500的该0/1位图版本中的像素的k滤波器而生成合适的门限。k滤波器应用模块530将该k滤波器应用于该帧签名中的每个像素,并且,根据已经等于1的邻近像素的数目,来将其输出值设置为“0”或“1”。二进制平衡模块540继续保持迭代通过前两个模块520、530,向上或向下调整该k滤波器,直到0的数目和1的数目近似相等为止。更新像素评估模块550连续不断地监控关于每次迭代的更新像素的数目,直到那个数目落到更新像素门限以下。一旦发生这种情况,更新像素评估模块550就终止该迭代过程,并输出长签名510。形态学上的清理模块450的基本效果是从该输入位图签名中除去精细的细节,并产生被修改的“长”签名,该“长”签名捕捉该原始帧图像(从中产生过该签名)的全部空间细节。
图6A和图6B展示了图4中所示的短签名模块460的两个实施例。一般而言,短签名模块460输入长签名510,创建用于对长签名510进行向下采样的采样掩码,并应用该采样掩码,以创建短签名600。不管如何确定该采样掩码,都使用该采样掩码来从每个长签名中选择这些位,这些位将被用来组成该对应的短签名。
现在将讨论用于创建采样掩码的两个实施例。图6A是详细的框图,展示了图4中所示的短签名模块460的第一个实施例。在这第一个实施例中,短签名模块460包括随机掩码模块610,该随机掩码模块生成随机掩码,以便对所有这些签名进行采样。短签名模块460输入长签名510,并且,随机掩码模块610处理长签名510,以创建短签名600。图6B是详细的框图,展示了图4中所示的短签名模块460的第二个实施例。在这第二个实施例中,短签名模块460包括被修改的“主要部分分析”(PCA)模块620,该“主要部分分析”(PCA)模块620检查长签名510的直方图,并确定最具辨别力的这些位。短签名模块460输入长签名510,其中,长签名510由修改过的PCA模块620来加以处理。该结果是短签名600。
图7是详细的框图,展示了图6B中所示的修改过的PCA模块630的更多细节。修改过的PCA模块620包括直方图发生器700、位计算模块710、辨别确定模块720和掩码应用模块730。直方图发生器700所生成的直方图检查长签名510中所包含的每个位。然后,位计算模块710检查每个位,并计算在长签名的这个序列中每个位是“0”的次数和每个位是“1”的次数。辨别确定模块720选择等于“0”的次数大约占50%、等于“1”的次数大约占50%的那些位。这些位被定义为最具辨别力的位。然后,使用这些最具辨别力的位来生成掩码。然后,掩码应用模块730将这个掩码应用于长签名510,以生成短签名600。
图8是框图,展示了图3C中所示的签名匹配模块370的细节。通常,签名匹配模块370输入两个签名序列,并使签名与其正确的位置相符。明确地说,签名匹配模块370输入第一个签名序列340和第二个签名序列370。第一个签名序列340表示视频的第一个版本中的某个唯一区域(或有关范围)内的内容。第二个签名序列370表示该视频的整个第二个版本的内容。
然后,将第一个签名序列340的至少一个部分与第二个签名序列370进行比较,以确定是否有任何匹配。如果没有,那么,这意味着已从该视频的这第二个版本中除去有关范围330。如果有匹配,那么,发送被恢复的有关范围380,作为输出。应该注意,根据签名匹配模块370所执行的这些匹配,被恢复的有关范围380可能是原始的有关范围330的全部或一个部分。例如,如果有关范围330包括100个帧,并且,该视频的这第二个版本具有被除去的原始的100个帧中的50个帧,那么,签名匹配模块370将能够确定已除去这50个帧,剩余的50个帧被包括在被恢复的有关范围380中。通过使第一个签名序列340与第二个签名序列360相符,视频位置识别系统200可以确定第一个签名序列340属于该视频的这第二个版本中的什么地方。这样,视频位置识别系统200在该视频的这第二个版本中识别对应于该视频的这第一个版本中的有关范围330的那个位置。
签名匹配模块370包括连续签名模块830、匹配门限模块840、距离比较模块850和可靠性模块860。连续签名模块830采用一连串的连续签名。匹配门限模块840确定将要被使用的匹配门限。距离比较模块850使用这一连串连续的签名和该匹配门限,并比较两个签名。如果距离超过该匹配门限,那么,这两个签名不匹配。否则,这些签名匹配。可靠性模块860确定这些签名是否可靠。如果不可靠,那么,该匹配(或缺乏匹配)是可疑的。
图9是图8中所示的可靠性模块860的详细框图。通常,可靠性模块860输入签名帧900,并输出可靠结果910和帧可靠性915所要求的许多签名。可靠性模块860包括灰度值直方图发生器920、直方图分析模块930和签名序列确定模块940。灰度值直方图发生器920提供签名帧900中的每个像素的灰度值,并生成这些值的直方图。直方图分析模块930分析该直方图,以确定签名帧900的稳定性。如果该直方图的形状是单一的“长钉”形状,则签名帧900不太可靠。该长钉形状指出该图像中的所有这些像素都具有类似的亮度;这意味着该图像中没有很多可识别的细节。
根据这些签名的被计算的可靠性,签名序列确定模块940确定鲁棒性匹配所需要的那个签名序列的最能提供信息的那个部分。在较佳实施例中,使用这整个签名。但是,在交替实施例中,签名序列确定模块940可以确定只需要该签名(例如,该帧的右上侧区域)的一个部分。一般而言,在较低可靠性的区域中,该签名序列将需要包含更多数量的签名,以提供鲁棒性的匹配。如果该直方图更加伸长,那么,该签名包含更具对比性的细节。高度对比性的细节意味着该签名更可靠地识别从中生成过该签名的那个帧图像。
4.操作纵览以上所描述的视频位置识别系统200使用视频位置识别方法来可靠、鲁棒性地识别视频中的位置。图10是综合流程图,展示了图3A-C中所示的视频位置识别系统200的操作。该方法始于选择视频的第一个版本内的有关范围(框1000)。这个有关范围可以由作为人的用户或由自动化系统来选择。该有关范围包含至少一个帧,但通常包含多得多。此外,在该有关范围内创建信息(例如,注释)。接下来,从该有关范围内的这一个或多个帧的内容中生成第一个签名序列(框1010)。这第一个签名序列(或视频锚)的生成将注释坚固地抛锚到该有关范围。最后,使用这第一个签名序列,以便以后从该视频的第二个版本中恢复该有关范围(框1020)。在一个实施例中,该视频的这第一个版本和第二个版本是相同的视频,并且,以后将为该相同的视频恢复该有关范围。在另一个更加典型的实施例中,该视频的这两个版本不同,并且,这个被恢复的有关范围不在曾在那里生成过这第一个签名序列的该视频的这第一个版本上。这个视频位置识别过程可以经受得住对该视频的修改(例如,除去或增加帧,以及正以某种方式改变该有关范围内的这些帧中的每个帧(例如,改变每个帧的色谱、改变压缩参数或增加噪声))。此外,该方法可以经受得住这些帧的定标和少量的剪切。
图11是流程图,展示了图10中所示的该视频位置识别系统方法的操作的额外细节。该方法始于从来自处于第一个位置的视频的第一个版本的帧的一个部分的内容中生成注释和第一个签名序列(框1100)。接下来,这第一个签名序列和这些注释被传送到第二个位置(框1110)。应该注意,如果这些注释是关于该视频的一个特定部分的,那么,只需要提取一些签名。不需要生成或提取所有签名。这是因为处于这第一个位置的用户正在选择该视频的什么部分让该用户感兴趣。然后,生成关于该视频的那个部分的签名,这用作对该视频的那个部分的唯一标识。
接下来,从处于这第二个位置的该视频的第二个版本中的所有帧的内容中生成第二个签名序列(框1130)。在某种意义上,这个过程生成该视频的这第二个版本的地形图,因为这第二个签名序列确定这第二个视频版本的这些不同的特点。最后,这第一个签名序列和第二个签名序列在这第二个位置处相匹配。这恢复了该有关范围和该视频的这第二个版本中的这些注释的这些位置(框1140)。这种匹配允许将这些注释放置在这第二个视频版本中的正确的位置。通过在这第二个视频版本的开端处开始,并通过将这第一个签名序列与这第二个签名序列中的每个签名进行比较,来执行匹配。利用这种方式,如果该所需签名(和该所需位置)被包含在这第二个视频版本中,则可以发现该所需签名(和该所需位置)。
5.工作示例的实施细节现在将在工作示例的框架内介绍该视频位置识别方法的示范实施例的操作细节。应该注意,以下的这个工作例子只是本发明的一个实施例,并且只起说明作用。该论述被分成该视频位置识别方法的两个主要过程(a)签名发生和提取(或特点提取);以及(b)签名匹配。
签名发生和提取图12展示了该工作例子中的被用来产生签名的该签名发生和提取(或特点提取)过程的细节。签名是每个视频帧中所包含的内容的表示。签名不基于统计技术(例如,彩色直方图),而是利用该视频帧中的空间特征。一般而言,该工作例子中的该签名发生和提取过程连续不断地简化每个视频帧,如下所述从全长的彩色图像简化为黑白图像;从黑白实际尺寸简化为小尺寸图像;从该小尺寸图像简化为1和0的位图;从具有噪声的这个小0/1位图简化为无噪声的平滑小0/1位图。
更明确地说,参考图12,该工作例子的该签名发生和提取过程通过将帧序列中的每个帧规格化为4∶3纵横比来开始进行,并且放弃任何彩色信息(圈1)。接下来,对该合成图像进行向下采样,以产生30×40灰度等级图像(圈2)。选择尺寸30×40,这是因为它是从标准尺寸视频进行向下采样的终点。
接下来,执行中央定限,以产生0/1位图(圈3)。在这个工作例子中,像素值“1”=白色,“0”=黑色。但是,这种像素值分配不是很关键,这些像素值可以被容易地加以颠倒。通过确定这个被向下采样的图像的该中央灰度值,来执行中央定限。这个中央灰度值被定义为该门限。这样,该门限(即该中央灰度值)以上的每件事物是“1”,该门限(即该中央灰度值)以下的每件事物是“0”。应该注意,为每个帧选择该中央灰度值。这样,该门限对于每个帧而言会有所不同。
为每个帧选择门限中央灰度值很重要,这是因为如果为所有这些帧选择单一门限,那么,这些帧中的部分帧的辨别力会较差,其他帧的辨别力会较强。通常,当1和0的数目近似相等时,可产生最强的辨别力。这样,帧越接近具有相等数目的1和0,该帧就越接近具有最大的辨别力。这是因为帧内的1和0的平衡提供了该帧的最多变的信息。例如,如果该帧主要包含0,则该帧将会主要是黑色的(假设“0”被设置成等同于黑色),并且,该帧将会包含很少的信息。同样,如果该帧主要包含1,则该帧将会主要是白色的,并且将会包含很少的信息。
留下的是包含近似相等数目的1和0的签名帧。但是,通常的情况是,也存在对该帧的许多干扰方面。例如,具有被黑色像素包围的白色像素,这提供了“细密的黑白混合(salt and pepper)”效果。这是有区别的,但区别太大。换言之,该图像提供了关于特定帧中正在发生的情况的太多细节。
为了消除该噪声,使用形态学上的清理来“清理”该图像并除去线路细节假象(圈4)。由于定限可能会引入非典型噪声,因此,对该0/1位图执行形态学上的清理(“核心过滤”或简称为“k过滤”)。在这个工作例子中,应用3×3“k滤波器”。如果多于k个的像素是1,则这个3×3k滤波器将该像素输出设置为1,否则设置为0。跨越这整个0/1位图反复几次执行这一点。在每次迭代之后,调整被用于该形态学上的清理的该核心(k)。最初,k=4.5,这意味着该迭代始于3×3中央滤波器。如果在这些迭代期间,1的数目减少,那么,k的值减小,以便在下一次迭代中产生更多的1。同样,如果1的数目增加,那么,k的值增大。这确保维持1和0的平衡,从而维持了关于每个签名的最大辨别力。
当在给定迭代中所更新的像素数目落到某个厄普西隆以下时,终止k过滤。在这个工作例子中,厄普西隆的这个值是5。在实践中,这个终止通常在5~8次迭代之后发生。该结果是1200-位0/1位图,该位图是“长”签名。
该工作例子使用两种不同的技术来对该长签名进行向下采样并创建短签名。在这个工作例子中,该长签名包含1200个位,该短签名包含128个位。所使用的这第一种向下采样技术是该随机掩码技术。所使用的单一随机掩码是对所有这些签名进行采样。应该注意,该随机掩码技术不涉及为这些不同的签名中的每个签名使用位的不同的随意收集。相反,采用来自这些不同签名中的每个签名的位的相同的随意收集。例如,如果该随机掩码采用第一个、第五个和第七个位,那么,从所有这些签名中采用第一个、第五个和第七个位。
该工作例子中所使用的这第二种向下采样技术是修改过的“主要部分分析”(PCA)。该PCA技术获得大量数据点(在这种情况下,是视频签名),并确定表现该数据的特征的这些主要维数。明确地说,通过确定关于该数据的这些特征矢量和这些对应的特征值,来执行PCA。无论哪些特征矢量具有最高的特征值,它们都被选为用于表现该数据的特征的这些主要维数或主要部分。这些特征矢量是定义该数据的平面的线路。这样,将这个问题从三维(3D)问题简化为二维(2D)问题。这也被称作“维数精简”。在这个工作例子中,将维数从1200个位(长签名中的位数)减少到这128个位(短签名中的位数)。
执行PCA的传统方法是从该视频中采用长指纹的所有这些例子并在其上运行PCA,识别所有这些特征矢量和所有这些特征值,然后选择它们中的最上面的128个。于是,这些是应该从这1200个位中被选作该短签名的这128个位。但是,执行PCA的这种传统方法在计算上花费很多。
相反,该工作例子使用在本发明中所使用的该修改过的PCA,其中,检查该长签名的所有1200个位,并生成1200-箱柜直方图。接下来,记录每个位是“1”的次数和每个位是“0”的次数。该长签名中的这些位被定义为最具辨别力,该长签名的值最接近于是“1”次数的一半和“0”次数的一半(即50-50)。“最具辨别力”意味着那个特定的位将产生最多的信息,更多的信息是辨别力较差的位。
在建立该直方图之后,根据以上标准来确定这128个最具辨别力的位。使用这128个位来为该短签名生成掩码。然后,将该掩码应用于该长签名,以便对该长签名的这些位进行采样,并生成短签名。
应该注意,其他实施例可以包括关于每个位的“变化频率”标准。变化频率意味着该长签名的这些位中的每个位一定随某个频率而变化。例如,这个变化频率特点将不允许位对于该视频的前500个帧而言是“1”、对于接下来的500个帧而言是“0”。
签名匹配一旦已在视频的第一个版本中和该视频的第二个版本中生成签名,这些签名就必须相符,以识别该视频的这第二个版本中的所需位置。假如给出识别这第一个版本视频中的某个唯一区域(或有关范围)的第一个签名序列,并且,假如给出这第二个版本视频的第二个签名序列,则该视频位置识别方法恢复来源于这第一个版本视频的这第二个版本视频中的该有关范围内的这些位置。
图13展示了该工作例子中的被用来恢复位置的该签名匹配过程的细节。在这个工作例子中,用户最初根据该视频的第一个版本中的局部有关范围来创建注释(由圈1300示出)。然后,如以上所描述的那样来生成和提取第一个签名序列(圈1)。然后,将该注释信息连同这第一个签名序列一起传送给注释消费者(圈2)。如以上所描述的那样,从这全长的第二个版本视频或该视频的消费者的版本中生成并提取第二个签名序列(圈3)。使用该签名匹配过程来将这第一个签名序列与这第二个签名序列中的这些签名中的每个签名进行比较,直到发现这个最接近的匹配为止(圈4)。
通过采用这第一个签名序列、沿从起初开始的这第二个版本视频而行并对它们进行比较,来执行签名匹配。在这个工作例子中,从这第一个签名序列中获得10个连续的签名,并将这10个签名与这第二个签名序列中的每个签名进行比较(从这第二个版本视频的开端开始)。如以下的详细解释,当这两个签名近似地在匹配门限以下时,进行匹配。当发生这种情况时,这些序列签名被定义为匹配。对应于进行过该匹配的地方的这第二个签名序列中的这个位置是这第二个版本视频中的该所需位置。换言之,这第二个版本视频中的该所需位置对应于这第一个版本视频中的、由该用户选择的这个位置或有关范围。
虽然该工作例子中的签名序列内的连续签名的数目等于10,但是,在其他实施中,该数目会有所不同。例如,该序号可以大于10(例如,100或1000)。该序号确定正在加以搜索的信息量。例如,如果选择一连串的10个签名并搜索这第二个视频,那么,若选择100的序号,则正在加以搜索的信息量比预期的要少。利用正在加以搜索的较少数量的签名,该搜索可更加灵活,但几乎没有可用的细节信息。另一方面,如果该序号等于1000,以便使用一批1000个签名,那么,具有数量更多的信息和更多的细节。
匹配和可靠性如以上的解释,当匹配的可靠性很高时,该序号会很低,以便在该签名匹配过程中使用数量较少的各批签名。这提供很少的细节,但提供了更大的灵活性。但是,如果该匹配的可靠性很低,则该序号会更高,以提供更多的细节并提高该匹配的可靠性。
在该工作例子中,为了确定两个签名是否匹配,计算在每个帧的各个长签名之间有所不同的位数。这被称作“加重平均距离”。如果该加重平均距离在该匹配门限以上,那么,这些签名不匹配。另一方面,如果该加重平均距离在该匹配门限以下,那么,这两个签名匹配。经验性测试示出相隔小于125个位的帧相同,而相隔多于125个位的帧不同。
除了执行该匹配以外,该工作例子还使用本发明的可靠性特点来为每个帧计算可靠性得分。这个可靠性得分反映该帧中的变化量。如果有很大的变化,则涉及该帧的签名过程中的匹配更加可靠。
图14展示了该工作例子中所使用的该可靠性特点。参考图14,使用两个视频,人将会把这两个视频识别为相同的视频,但它们有一些微妙的不同(例如,包含不同的商业广告节目和不同的压缩技术)。该视频的这第一个版本(是棒球游戏)只包含该视频。该视频的这第二个版本是该棒球游戏,但具有被一连串商业广告节目取代的这第一部分。这第一和第二视频的总长度相同。前N个帧不匹配,但这N个帧后面的所有这些帧相同,并且彼此对应。来自这第一个版本视频的这第一个签名序列和来自这第二个版本视频的这第二个签名序列被加以并行化(parallized),并且成对。关于大约这前1200个帧,该成对距离线路(该黑暗的实线,它是对应的各对帧之间的距离)是该门限线路(该明亮的实线或加重平均距离门限)以上的长距离。在这种情况下,当该成对距离线路在该门限线路以上时,这些签名对不匹配。同样,当该成对距离线路在该门限线路以下时,这些签名对匹配。应该注意,当对应的各对匹配时,它们的距离不会始终是零。这是因为这些视频的这两个版本在某个压缩比或其他增加的噪声方面有所不同。
图14中的该图表上的虚线是可靠性线路。该可靠性线路是可靠的签名的测量和指示符。参考图14,在该图表的这些开端帧处,该可靠性线路下降。同样,近似在帧5100和5300处,该可靠性线路显著下降。这些下降指出这些签名不可靠。正是在这些点处存在错误的匹配或非匹配。例如,近似在帧1处,有假的正匹配——其中,当这两个签名实际上不匹配时,指出匹配。这个错误的造成是因为如该可靠性线路所指出的,该可靠性很低。在帧5100和5300处,有假的负数。这里,即使通过该实验的设计而知道这两个签名不匹配,也指出它们之间的匹配。这个错误的造成是因为那些帧的这些签名的可靠性很低。
这样,可靠性是一种测量,通过该测量,可以说,需要该邻域(即更多的签名)中的相对更多的信息,来制定关于在该视频中该区域属于哪里的决定。换言之,如果你所拥有的该序列中的这些签名的可靠性很低,那么,要求相对较长的序列,以便将它定位在该视频中。如果这些签名都具有高度的可靠性,那么,可以使用相对较短的签名序列,并且,将仍然能够精确地识别匹配。这样,在可靠性较低的区域中,可以使用更大的邻接签名序列(例如,比方说使用100个邻接的签名,而不是10个邻接的签名)。
6.示范操作环境以上所描述的该视频位置识别过程和系统被设计成在计算环境中进行操作。下文意在简要、概括地描述一种合适的计算环境,在该计算环境中,可以执行该视频位置识别过程和系统。
图15展示了合适的计算系统环境1500的例子,在计算系统环境1500中,可以执行该视频位置识别过程和系统。计算系统环境1500只是合适的计算环境的一个例子,它并不意在对本发明的使用或功能性的范围提出任何限制。也不应该将计算环境1500解释为具有涉及示范操作环境1500中所展示的任何一个部件或部件组合的任何从属性或要求。
该视频位置识别过程和系统可用于众多其他的通用或专用计算系统环境或配置。可能适用于该视频位置识别过程和系统的众所周知的计算系统、环境和/或配置的例子包括(但不局限于)个人计算机、服务器计算机、手持计算机、膝上型计算机或移动计算机或通信设备(例如,手机和PDA)、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境,以及类似物。
可以在正由计算机执行的计算机可执行指令(例如,程序模块)的一般上下文中描述该视频位置识别过程。通常,程序模块包括执行特殊任务或实施特殊的抽象数据类型的例行程序、程序、对象、部件、数据结构等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括记忆存储设备的本地计算机存储介质和远程计算机存储介质中。参照图15,用于执行该视频位置识别过程和系统的示范系统包括采取计算机1510的形式的通用计算设备。
计算机1510的部件可以包括(但不局限于)处理单元1520、系统存储器1530和系统总线1521,系统总线1521将包括该系统存储器的各种系统部件耦合到处理单元1520。系统总线1521可以是几种类型的总线结构(包括存储总线或存储控制器、外围总线和使用各种总线构造中的任何总线构造的局域总线)中的任何总线结构。举例来讲(不作限制),这类结构包括“工业标准结构”(ISA)总线、“微通道结构”(MCA)总线、“增强的ISA”(EISA)总线、“视频电子标准协会”(VESA)局域总线和也被称作“中层楼(Mezzanine)总线”的“外围部件互连”(PCI)总线。
计算机1510通常包括各种计算机可读介质。计算机可读介质可以是可由计算机1510存取的任何可用介质,它包括易失和非易失介质、可移动和不可移动的介质。举例来讲(不作限制),计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括易失和非易失的可移动和不可移动的介质,这些介质用关于信息(例如,计算机可读指令、数据结构、程序模块或其他数据)存储的任何方法或技术来加以执行。
计算机存储介质包括(但不局限于)RAM、ROM、EEPROM、快闪存储器或其他存储技术、CD-ROM、数字通用光盘(DVD)或其他光盘存储器、盒式磁带、磁带、磁盘存储器或其他磁性存储设备、或可以被用来存储该所需信息并可以由计算机1510来进行存取的其他任何介质。通信介质通常具体表现计算机可读指令、数据结构、程序模块或调制数据信号(例如,载波或其他传送机制)中的其他数据,它包括任何信息传递介质。
注意,术语“调制数据信号”意味着一种信号,该信号的一个或多个特征按这样的方式来加以设置或更改,以便为该信号中的信息编码。举例来讲(不作限制),通信介质包括有线介质(例如,有线网络或直线连接)和无线介质(例如,声音、RF、红外线和其他无线介质)。以上任何内容的组合也应该被包括在计算机可读介质的范围以内。
系统存储器1530包括采取易失和/或非易失存储器(例如,只读存储器(ROM)1531和随机存取存储器(RAM)1532)的形式的计算机存储介质。基本输入/输出系统1533(BIOS)通常被存储在ROM 1531中,该基本输入/输出系统包含有助于在计算机1510内的各个元件之间传送信息(例如,在启动期间)的这些基本例行程序。RAM 1532通常包含可立即由处理单元1520存取并且/或者目前正由处理单元1520进行操作的数据和/或程序模块。举例来讲(不作限制),图15展示了操作系统1534、应用程序1535、其他程序模块1536和程序数据1537。
计算机1510也可以包括其他可移动/不可移动的易失/非易失计算机存储介质。只举例来讲,图15展示了从不可移动的非易失磁性介质读取或对其写入的硬盘驱动器1541、从可移动的非易失磁盘1552读取或对其写入的磁盘驱动器1551,以及从可移动的非易失光盘1556(例如,CD ROM或其他光学介质)读取或对其写入的光盘驱动器1555。
可以被用于该示范操作环境中的其他可移动/不可移动的易失/非易失计算机存储介质包括(但不局限于)卡型盒式磁带机、快闪存储卡、数字通用光盘、数字录像带、固态RAM、固态ROM和类似的存储介质。硬盘驱动器1541通常通过不可移动的存储接口(例如,接口1540)而被连接到系统总线1521,磁盘驱动器1551和光盘驱动器1555通常由可移动的存储接口(例如,接口1550)连接到系统总线1521。
以上所讨论的和图15中所展示的这些驱动器及其关联的计算机存储介质为计算机1510提供计算机可读指令、数据结构、程序模块和其他数据的存储。在图15中,例如,硬盘驱动器1541被展示为存储操作系统1544、应用程序1545、其他程序模块1546和程序数据1547。注意,这些部件可以等同于或不同于操作系统1534、应用程序1535、其他程序模块1536和程序数据1537。这里为操作系统1544、应用程序1545、其他程序模块1546和程序数据1547提供不同的号码,以展示它们至少是不同的副本。用户可以通过输入设备(例如,键盘1562)和定点设备1561(通常被称作“鼠标”、“跟踪球”或“触垫”),来将命令和信息输入计算机1510。
其他输入设备(未示出)可以包括话筒、操纵杆、游戏垫、圆盘式卫星电视天线、扫描仪、无线电接收器、或电视或广播视频接收器、或类似的输入设备。这些和其他的输入设备经常通过被耦合到系统总线1521的用户输入接口1560而被连接到处理单元1520,但也可以由其他接口和总线结构(例如,并行端口、游戏端口或通用串行总线(USB))来加以连接。监视器1591或其他类型的显示设备也经由接口(例如,视频接口1590)而被连接到系统总线1521。除监视器1591以外,计算机也可以包括其他外围输出设备(例如,扬声器1597和打印机1596),这些外围输出设备可以通过输出外围接口1595来加以连接。
计算机1510可以在使用与一台或多台远程计算机(例如,远程计算机1580)的逻辑连接的联网环境中进行操作。远程计算机1580可以是个人计算机、服务器、路由器、网络PC、对等设备或其他共同的网络节点,它通常包括以上相对于计算机1510而描述的许多或所有这些元件,尽管图15中只展示了记忆存储设备1581。图15中所描绘的这些逻辑连接包括局域网(LAN)1571和广域网(WAN)1573,但也可以包括其他网络。这类联网环境在办公室、企业范围的计算机网络、内联网和因特网中很普遍。
当被用于LAN联网环境中时,计算机1510通过网络接口或适配器1570而被连接到LAN 1571。当被用于WAN联网环境中时,计算机1510通常包括调制解调器1572或用于在WAN 1573(例如,因特网)上建立通信的其他装置。调制解调器1572(可能是内置的,也可能是外置的)可以经由用户输入接口1560或其他合适的机制而被连接到系统总线1521。在联网环境中,相对于计算机1510或其各个部分而描绘的程序模块可以被存储在该远程记忆存储设备中。举例来讲(不作限制),图15将远程应用程序1585展示为驻留在存储设备1581上。将会理解所示的这些网络连接起示范的作用,可以使用在各台计算机之间建立通信链路的其他装置。
已出于说明和描述的目的而呈现了本发明的前述说明。并不意在使论述毫无遗漏或将本发明局限于所揭示的精确形式。按照以上的讲授,可以进行许多修改和变更。意在使本发明的范围不由本发明的该详细说明来限制,而由本发明所附的权利要求书来加以限制。
权利要求
1.一种用于处理视频的方法,其特征在于,包括从该视频的第一个版本的内容中生成第一个签名序列;从该视频的第二个版本的内容中生成第二个签名;以及,比较这第一个和第二个签名序列,以确定匹配。
2.如权利要求1中所述的方法,其特征在于,内容包括以下的至少一项(a)视频帧中的视觉内容;(b)音频跟踪视频帧内容;(c)已与该视频同步的音频;(d)封闭的字幕信息。
3.如权利要求1中所述的方法,其特征在于,生成第一个签名序列进一步包括在该视频的这第一个版本中的有关范围内的位置处生成注释。
4.如权利要求3中所述的方法,其特征在于,该有关范围包含至少一个视频帧。
5.如权利要求4中所述的方法,其特征在于,这第一个签名序列包含表示该有关范围内的帧的内容的签名。
6.如权利要求1中所述的方法,其特征在于,从该视频的这第二个版本的整个长度的内容中生成这第二个签名序列。
7.如权利要求3中所述的方法,其特征在于,比较这第一个和第二个签名序列进一步包括恢复与该视频的这第一个版本中的这些注释的这些位置相对应的该视频的这第二个版本中的这些注释的位置。
8.一种计算机可读介质,具有用于执行权利要求1中所述的方法的计算机可执行指令。
9.一种用于处理视频的方法,其特征在于,包括选择包含至少一个视频帧的该视频内的有关范围;从这至少一个视频帧的内容中生成第一个签名序列;以及,使用这第一个签名序列,以便以后恢复该有关范围的至少一个部分。
10.如权利要求9中所述的方法,其特征在于,从该视频的第一个版本的内容中生成这第一个签名序列。
11.如权利要求10中所述的方法,其特征在于进一步包括从该视频的第二个版本的该内容中生成第二个签名序列。
12.如权利要求11中所述的方法,其特征在于进一步包括使这第一个签名序列和这第二个签名序列相匹配。
13.一种用于识别视频中的位置的方法,其特征在于,包括对位于该视频的第一个版本中的位置的视频帧进行注释,以生成视频注释;根据该视频帧的内容来生成视频注释锚,以便坚固地锚定该视频注释;以及,使用该视频注释锚来恢复在其处放置该视频注释的、该视频的第二个版本中的该位置。
14.如权利要求13中所述的方法,其特征在于,使用基于内容的视频时间线索来生成该视频注释锚。
15.如权利要求13中所述的方法,其特征在于,生成该视频锚进一步包括定义与该视频的这第一个版本中的一组视频帧相对应的临时有关范围;以及,从该有关范围内的内容中生成第一个签名序列。
16.一个或多个其上具有计算机可读指令的计算机可读介质,其特征在于当被一个或多个处理器执行时,这些计算机可读指令使这一个或多个处理器执行权利要求13的方法。
17.一种过程,用于在第一个位置创建视频的第一个版本中的注释,并用于在第二个位置观看该视频的第二个版本中的该注释,包括在该视频的这第一个版本中的位置创建视频帧的注释;从这些视频帧内的内容中生成第一个签名序列;从该视频的这第二个版本内的所有视频帧中生成并提取第二个签名序列;将该注释和这第一个签名序列从这第一个位置传送到这第二个位置;以及,将这第一个签名序列与这第二个签名序列进行匹配,以恢复该视频的这第二个版本中的该注释的该位置。
18.如权利要求17中所述的方法,其特征在于,该注释和这第一个签名序列通过狭窄信道从这第一个位置被传送到这第二个位置。
19.如权利要求18中所述的方法,其特征在于,该狭窄信道是以下至少一项(a)电子邮件;(b)便携式电话;(c)因特网;(d)即时通信服务。
20.如权利要求17中所述的方法,其特征在于,由用户来将该注释和这第一个签名序列从这第一个位置传送到这第二个位置。
21.如权利要求17中所述的方法,其特征在于,自动将该注释和这第一个签名序列从这第一个位置传送到这第二个位置。
22.一种用于识别视频中的视频帧的位置的过程,其特征在于,包括在该视频的第一个版本中的位置标明视频帧,以创建有记号的视频帧;从这些视频帧中的每个视频帧的内容中生成签名,以创建第一个签名序列;从该视频的第二个版本的全部内容中生成第二个签名序列;以及,使这第一个和第二个签名序列相匹配,以恢复该视频的这第二个版本中的这些有记号的视频帧的该位置。
23.如权利要求22中所述的过程,其特征在于,进一步包括从该视频的这第二个版本中排除这些有记号的视频帧,以创建视频摘要。
24.如权利要求22中所述的过程,其特征在于,进一步包括将第三方内容加入这些有记号的帧;以及,使用这些有记号的视频帧的这个被恢复的位置,来使该第三方内容与该视频的这第二个版本同步。
25.如权利要求22中所述的过程,其特征在于,进一步包括从该视频的这第二个版本中排除这些有记号的视频帧,其中,这些有记号的帧包含诸如商业广告节目等有关商业的内容。
26.如权利要求22中所述的过程,其特征在于,该过程被用于以下至少一项(a)该视频的索引;(b)视频数字权利管理;(c)视频数据库查询。
27.一种具有计算机可执行指令的计算机可读介质,这些计算机可执行指令用于获得视频的视频帧中所包含的内容表示,包括放弃该视频帧中的任何彩色信息,以产生合成图像;对该合成图像进行向下采样,以产生灰度等级图像;对该灰度等级图像执行中央定限,以产生该视频帧的0/1位图版本;以及,使用形态学上的清理来清理该视频帧的该0/1位图版本,以产生该视频帧的长签名。
28.权利要求27的计算机可读介质,其特征在于,进一步包括将该视频帧规格化为4∶3纵横比。
29.权利要求27的计算机可读介质,其特征在于,该灰度等级图像长40个像素、宽30个像素。
30.权利要求27的计算机可读介质,其特征在于,该0/1位图中的每个像素具有以下的一个值(a)0;(b)1。
31.权利要求27的计算机可读介质,其特征在于,执行中央定限进一步包括确定该灰度等级图像的中央灰度值;以及,将该中央灰度值定义为门限。
32.权利要求31的计算机可读介质,其特征在于,进一步包括将具有该门限以上的亮度值的该视频帧中的像素定义为“1”,以及,将具有该门限以下的亮度值的该视频帧中的像素定义为“0”。
33.权利要求27的计算机可读介质,其特征在于,形态学上的清理包括核心过滤(k过滤),以便从该视频帧的该0/1位图版本中除去线路细节假象和其他噪声。
34.权利要求33的计算机可读介质,其特征在于,使用形态学上的清理来清理该视频帧的该0/1位图版本进一步包括将3×3k滤波器应用于该视频帧的该0/1位图版本,以便如果该视频帧中多于k数目的像素是1,则该滤波器的输出等于1,否则,则该滤波器的输出等于0。
35.权利要求34的计算机可读介质,其特征在于,进一步包括在每次迭代之后,调整k的值。
36.权利要求35的计算机可读介质,其特征在于,调整k的值进一步包括减小k的值,以便如果1的数目减少,则在下一次迭代中产生更多的1;以及,增加k的值,以便如果1的数目增加,则在接下来的迭代中产生较少的1。
37.权利要求35的计算机可读介质,其特征在于,第一次迭代处的k的值等于4.5。
38.权利要求35的计算机可读介质,其特征在于,进一步包括当给定迭代中的像素数目落到厄普西隆以下时,终止k过滤。
39.权利要求38的计算机可读介质,其特征在于,厄普西隆的值等于5。
40.一种用于减少包含许多位的长签名的维数的方法,这许多位表示视频帧的内容,包括为该长签名确定特征矢量和这些对应的特征值;从表现该长签名的特征的这些特征值中选择主要部分;以及,根据这些主要部分来产生短签名,该短签名具有比该长签名中要少的位数。
41.如权利要求40中所述的方法,其特征在于,选择主要部分进一步包括发现具有最高值的特征值,并将那些最高值特征值定义为这些主要部分。
42.一种过程,用于将具有n个位的长签名向下采样为具有少于n个位的短签名,包括生成包含n个箱柜的直方图,每个箱柜表示一个位;计算每个位等于1的次数和每个位等于0的次数;确定该直方图中最具辨别力的位,以生成掩码;以及,使用该掩码来对该长签名进行向下采样,以生成该短签名。
43.如权利要求42中所述的过程,其特征在于,确定最具辨别力的位进一步包括发现哪些位最接近于是一半次数等于1、一半次数等于0。
44.一种用于使从视频的第一个版本中生成的第一个签名序列和从该视频的第二个版本中生成的第二个签名序列的各个签名相匹配的方法,包括确定连续的签名号码,该签名号码表示待比较的连续签名的数目;发现该视频的这第二个版本的开端;以及,通过将这第一个签名序列的连续的签名号码与这第二个签名序列的连续的签名号码进行比较,来确定匹配。
45.如权利要求44中所述的方法,其特征在于,较小的连续的签名号码指出较少数量的信息和很少的细节,较大的连续的签名号码指出较多数量的信息和更多的细节。
46.如权利要求44中所述的方法,其特征在于,该连续的签名号码等于10。
47.如权利要求44中所述的方法,其特征在于,确定匹配进一步包括计算在这第一个与第二个签名序列之间有所不同的位数;以及,当该位数在匹配门限以下时,发现匹配。
48.如权利要求47中所述的方法,其特征在于,该匹配门限大约是125个位。
49.如权利要求44中所述的方法,其特征在于,进一步包括为该视频中的每个帧计算可靠性得分。
50.如权利要求49中所述的方法,其特征在于,该可靠性得分表示每个帧中的变化量,并且进一步包括确定如果该可靠性得分很高,并且该匹配中所使用的每个帧中的该变化很大,则该匹配更加可靠;以及,确定如果该可靠性得分很低,并且该匹配中所使用的每个帧中的该变化很小,则该匹配不太可靠。
51.一种视频位置识别系统,其特征在于,包括签名发生和提取模块,该模块根据来自视频的第一个版本的内容来生成第一个签名序列,并根据来自该视频的第二个版本的内容来生成第二个签名序列;以及,签名匹配模块,该模块使这第一个签名序列和这第二个签名序列相匹配,以恢复有关范围。
52.如权利要求51中所述的视频位置识别系统,其特征在于,该签名发生和提取模块进一步包括灰度等级转换器,该灰度等级转换器按当前分辨率来将该视频的视频帧转换成灰度等级,以产生灰度等级视频帧。
53.如权利要求52的视频位置识别系统,其特征在于,该签名发生和提取模块进一步包括向下采样模块,该向下采样模块对该灰度等级视频帧进行向下采样,以创建低分辨率灰度等级视频帧。
54.如权利要求53中所述的视频位置识别系统,其特征在于,向下采样模块构建高斯金字塔。
55.如权利要求53中所述的视频位置识别系统,其特征在于,该签名发生和提取模块进一步包括中央门限位图转换器,该中央门限位图转换器将该低分辨率灰度等级视频帧转换成0/1位图。
56.如权利要求55中所述的视频位置识别系统,其特征在于,该签名发生和提取模块进一步包括形态学上的清理模块,该形态学上的清理模块通过将视频帧的中央灰度用作阈值来生成长签名,以确保对于该视频帧而言,具有0和1的值的像素数目近似相等。
57.如权利要求56中所述的视频位置识别系统,其特征在于,该签名发生和提取模块进一步包括短签名模块,该短签名模块对该长签名进行向下采样,以生成包含比该长签名要少的位的短签名。
58.如权利要求51中所述的视频位置识别系统,其特征在于,该签名匹配模块进一步包括连续签名模块,该连续签名模块从这第一个和第二个签名序列中获得一连串连续的签名。
59.如权利要求58中所述的视频位置识别系统,其特征在于,该签名匹配模块进一步包括确定匹配门限的匹配门限模块。
60.如权利要求59中所述的视频位置识别系统,其特征在于,该签名匹配模块进一步包括距离比较模块,该距离比较模块使用这一连串连续的签名和该匹配门限来比较各个签名之间的距离。
61.如权利要求58中所述的视频位置识别系统,其特征在于,该签名匹配模块进一步包括可靠性模块,该可靠性模块确定这第一个和第二个签名序列中的每个签名的可靠性。
全文摘要
一种过程和系统,用于处理视频,以便可靠地识别该视频中的位置。该视频位置识别过程和系统使用基于内容的视频时间线索。这些时间线索由视频内容的有序的一连串视频“指纹”或“签名”组成,它们利用该视频的帧图像中的这些空间特征,并可靠地识别位置,即使已修改该视频(例如,利用插入或删除),也是如此。
文档编号H04N7/16GK1574953SQ200410047439
公开日2005年2月2日 申请日期2004年5月25日 优先权日2003年5月28日
发明者D·M·巴杰伦, Y·卡斯皮 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1