CN102959624A - 用于音频媒体识别的系统和方法 - Google Patents
用于音频媒体识别的系统和方法 Download PDFInfo
- Publication number
- CN102959624A CN102959624A CN201180028693XA CN201180028693A CN102959624A CN 102959624 A CN102959624 A CN 102959624A CN 201180028693X A CN201180028693X A CN 201180028693XA CN 201180028693 A CN201180028693 A CN 201180028693A CN 102959624 A CN102959624 A CN 102959624A
- Authority
- CN
- China
- Prior art keywords
- vector
- source
- time slicing
- generate
- leaf
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 55
- 239000013598 vector Substances 0.000 claims abstract description 198
- 230000005236 sound signal Effects 0.000 claims abstract description 11
- 230000008878 coupling Effects 0.000 claims description 31
- 238000010168 coupling process Methods 0.000 claims description 31
- 238000005859 coupling reaction Methods 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 8
- 230000013011 mating Effects 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 abstract description 9
- 101150060512 SPATA6 gene Proteins 0.000 description 102
- 238000012360 testing method Methods 0.000 description 62
- 230000008569 process Effects 0.000 description 20
- 230000033764 rhythmic process Effects 0.000 description 18
- 230000011218 segmentation Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 9
- 241001269238 Data Species 0.000 description 7
- 238000010276 construction Methods 0.000 description 7
- 238000005259 measurement Methods 0.000 description 7
- 238000001228 spectrum Methods 0.000 description 7
- 230000009897 systematic effect Effects 0.000 description 7
- 108091006146 Channels Proteins 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 238000011002 quantification Methods 0.000 description 4
- 238000013139 quantization Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000013479 data entry Methods 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000010363 phase shift Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- CVOFKRWYWCSDMA-UHFFFAOYSA-N 2-chloro-n-(2,6-diethylphenyl)-n-(methoxymethyl)acetamide;2,6-dinitro-n,n-dipropyl-4-(trifluoromethyl)aniline Chemical compound CCC1=CC=CC(CC)=C1N(COC)C(=O)CCl.CCCN(CCC)C1=C([N+]([O-])=O)C=C(C(F)(F)F)C=C1[N+]([O-])=O CVOFKRWYWCSDMA-UHFFFAOYSA-N 0.000 description 1
- 241000545442 Radix Species 0.000 description 1
- 206010044565 Tremor Diseases 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- HUTDUHSNJYTCAR-UHFFFAOYSA-N ancymidol Chemical compound C1=CC(OC)=CC=C1C(O)(C=1C=NC=NC=1)C1CC1 HUTDUHSNJYTCAR-UHFFFAOYSA-N 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000008045 co-localization Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000000155 isotopic effect Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003595 spectral effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
- G10L25/18—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being spectral information of each sub-band
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供采样媒体内容的自动识别。针对音频信号的相继时间分片生成声谱图。针对时间片通过计算来自用于时间片的列中的相应频率仓的量值的比率来生成一个或者多个采样散列矢量。在一级评估阶段中,执行采样散列矢量的位与查找表中的条目的确切匹配以标识一个或者多个参考散列矢量的组。在二级评估阶段中,执行在采样散列矢量与参考散列矢量组中的每个之间的相似程度以标识任何参考散列矢量,这些任何参考散列矢量是用于匹配采样媒体内容的候选,每个参考散列矢量代表参考媒体内容的时间分片。
Description
技术领域
本发明涉及用于自动识别音频媒体内容的音频识别系统和方法。
背景技术
已知用于处理传入音频流(“节目”)并且搜索音乐和音效(“音轨”)的内部数据库以标识在节目内使用那些音轨的各种音频识别系统和方法。
在现实世界中,音乐经常是节目的音频层中的仅一层。针对音频识别的挑战之一是即使在有同时出现的诸如音效、画外音、气氛等的其它音频层的境况中仍然识别音乐的标识。其它失真包括均衡(调整音轨中的颤音(tremble)和低音的相对总量)以及改变节奏和/或音调。
一些音频识别技术基于使用标准算法对计算的散列值直接实施近邻搜索。当搜索的空间具有大量维度时,这样的标准算法没有很高效地执行。
Philips Research的J.Haitsma等人在2002年第3界InternationalConference on Music Information Retrieval的学报中发表的一篇标题为“A Highly Robust Audio Fingerprinting System”的文章描述了一种用于比较多媒体对象的媒体指纹识别系统。该文章描述了大量多媒体对象的指纹连同相关联的元数据(例如艺术家姓名、标题和专辑)一起存储在数据库中,从而指纹用作指向元数据的索引。然后可以通过计算指纹并且使用这一指纹以查询数据库来标识未标识的多媒体内容。该论文描述一种两阶段搜索算法,其基于仅在通过子指纹搜索而预选的候选位置处执行全指纹比较。使用以32位子指纹为条目的散列或者查找表来对候选位置定位。每个条目指向列表,指针指向各个32位子指纹在实际指纹列表中所在的位置。
然而仍然需要一种用于更高效和更可靠标识音频媒体内容的装置、系统和方法。
发明内容
在权利要求中限定本发明的方面。
在一个示例实施例中,提供采样媒体内容的自动识别。针对音频信号的相继时间分片生成声谱图。通过计算来自用于时间分片的列中的各个频率仓的量值的比率来针对时间分片生成一个或者多个采样矢量。在一级评估阶段(一级测试阶段)中,执行采样矢量的位与散列表中的条目的确切匹配以标识一个或者多个参考矢量的组。在二级评估阶段(二级测试阶段)中,执行在采样矢量与参考矢量组中的每个参考矢量之间的相似程度以标识任何参考矢量,这些任何参考矢量是用于匹配采样媒体内容的候选,每个参考矢量代表参考媒体内容的时间分片。也可以将矢量不同地描述为“散列”、“散列矢量”、“签名”或者“指纹”。
本发明的实施例可以提供操作的可伸缩性和效率。本发明的实施例可以以参考音轨的很大数据库一起高效和可靠地工作。
本发明的实施例可以运用具有良好鉴别力(大量‘熵’)的散列,从而根据节目音频生成的散列往往不与数据库中的太多散列匹配。本发明的实施例可以运用来自音频信号的声谱的大量测量。每个测量可以例如是对失真相对稳健的2位二进制数的形式。可以根据这些依赖于声谱的有限部分的测量来生成声谱散列集。
本发明的实施例使用如下方法,该方法组合一级步骤中的确切匹配数据库搜索与使用可变深度树结构中存储的附加信息的精化步骤。这给予与近邻搜索的效果相似的效果,然而较常规近邻搜索实现了数量级的处理速度的增加。确切匹配搜索可以在计算机中被高效进行并且允许执行更快识别。实施例使得能够在使用很大的源指纹数据库时在失真的环境中进行准确识别,而处理要求与现有技术相比减少。一个实施例使得能够以如下方式创建与时刻对应的签名(或者指纹),该方式使得签名的参与简单确切匹配的部分的熵被仔细控制,而不是在未这样仔细控制签名的熵的情况下使用近似匹配。这可以实现准确性和可伸缩性,而处理器成本大量减少。
一个示例实施例通过改变为了确切匹配而需要的来自散列的位数而考虑不同强度的各种散列,而不是从声谱图取得大量测量。例如,可以确切匹配强散列的仅前27位,而可以针对更弱散列匹配更大数目、例如前34位。本发明的实施例可以使用可变深度树结构以允许高效实施这些匹配操作。
一个示例实施例可以提供在有噪声的环境中的准确识别,并且即使待识别的音频持续时间很短(例如少于三秒或者少于两秒或者少于一秒)仍然可以做到这一点。一个示例实施例可以提供相对于很大指纹化内容数据库源(例如超过一百万首歌曲)的识别。一个示例实施例可以实施于常规独立计算机上或者联网的计算机系统上。一个示例实施例可以显著提高现有识别系统的结果质量并且改善这样的系统的大规模实施成本。
附图说明
下文参照附图仅通过例子描述实施例。
图1是示例装置的示意框图。
图2是给出处理音频信号的方法的概况的流程图。
图3是图示了在不同频率处设置量化级的例子的示意表示。
图4图示了在测试矢量之间的距离的示例分布。
图5是用于实施图2的方法的实施例的计算机系统的示意表示。
图6更具体地图示了图5的计算机系统的数据库结构。
具体实施方式
本发明的一个示例实施例提供一种处理传入音频流(“节目”)并且搜索音乐和音效(“音轨”)的内部数据库以标识在节目内使用那些音轨的音频识别系统。一个示例实施例的输出的一个例子可以是提示单的形式,该提示单列举对所用音轨的选择和它们在节目中出现于何处。
一个示例实施例可以与例如一千万秒音乐的数据库一起工作。然而其它实施例可扩展成与大得多的数据库、例如十亿秒音乐的数据库一起工作,并且能够识别持续时间例如为三秒或者更少、例如一秒这一级的剪辑,而且可以在处理来自典型音乐电台的音频时在常规服务器计算机上在约十倍的速率实时操作。
以下是本文中所用术语中的一些术语的定义:
“音轨”是将在以后某点识别的音频剪辑。所有可用音轨被处理并组合到数据库中。
“节目”是待识别的一段音频。假设节目包括组合在一起并且受到各种失真、点缀有其它材料的一些音轨。
“失真”是发生在组成节目的音轨上的某事物。失真的例子是:
·噪声:随机噪声与音轨混合;
·画外音:话音与音轨混合;
·音调:在维持基础定时的同时改变音调;
·节奏:在维持音调的同时改变定时;
·速度:改变音调和节奏二者(例如通过更快播放磁带)。
注意,音调、节奏和速度相关并且可以组合任何两项以产生第三项。
“散列”是从音轨或者节目的理想地未被失真改变的特定部分(时间分片)获得的小段信息。
图1是形成本发明实施例的装置110的例子的示意框图。
信号源102可以是例如用于接收媒体节目、例如音频节目并且提供源信号104的麦克风、电台或者因特网节目接收器等的形式。
声谱图生成器112可以可操作用于通过向源信号应用傅里叶变换根据源信号104生成声谱图,该声谱图包括多列,每列代表时间分片,并且包括多个频率仓,每个频率仓代表用于源信号的时间分片的各个频率分量范围。
矢量生成器114可操作以通过计算来自用于源信号的时间分片的列中的相应频率仓的量值的比率、并且通过量化该比率以生成源矢量的数字,来生成用于时间分片的至少一个源矢量。
数据库46包括参考矢量,每个参考矢量代表参考媒体内容的时间分片。
内容评估器116可以分别包括一级、二级和三级评估器118、120和122。
一级评估器118可操作以通过执行源矢量的数字与数据库46的查找表66中的条目的确切匹配来执行一级评估,其中查找表中的每个条目与参考矢量组关联,并且其中用来执行确切匹配的源矢量的数字数目可以在查找表66中的条目之间不同。可以将查找表66组织为导向叶的可变深度树,其中每个叶形成查找表中的与相应参考矢量组关联的条目。可以确定导向每个叶的数字数目以提供用于每个叶的基本上相等大小的参考矢量组。导向每个叶的数字数目可以形成用来针对给定的叶执行确切匹配的源矢量的数字数目。查找表66的每个叶可以标识具有d个相同数字的参考矢量组,其中d对应于树到该叶的深度。
二级评估器120可操作用于执行二级评估,以确定在源矢量与数据库46中的参考矢量组中的每个参考矢量之间的相似程度,以标识任何如下参考矢量,这些参考矢量是用于匹配源媒体内容与参考媒体内容的候选。二级评估器120可操作用于使用距离度量来执行二级评估,以确定在源矢量与参考矢量组中的每个参考矢量之间的相似程度。
三级评估器122可操作用于针对标识为候选的任何参考矢量执行三级评估。三级评估器122可操作用于确定在一个或者多个进一步的源矢量和与在二级评估中标识的候选参考矢量对应的一个或者多个进一步的参考矢量之间的相似程度,其中进一步的源矢量和进一步的参考矢量可以各自在时间上与源矢量和标识的候选参考矢量分离。
输出生成器124可操作用于生成输出记录、例如提示单,该输出记录标识源信号的匹配的媒体内容。
图2是给出本发明的示例实施例的方法的步骤的概况的流程图10。图1的装置和图2的方法可以由一个或者多个计算机系统并且由在一个或者多个计算机系统上操作的一个或者多个计算机程序产品实施。计算机程序产品可以存储于诸如计算机盘、带、固态储存器等任何适当的计算机可读介质上。在各种例子中,该过程的各种阶段可以由单独计算机程序和/或单独计算机系统执行。例如,如下文描述的声谱图生成可以由与用来执行散列生成和/或数据库测试和/或提示单生成的一个或多个计算机程序和/或计算机系统分离的计算机程序和/或计算机系统来执行。另外,可以使用专用硬件、例如配置成提供如在以下描述中更具体描述的功能的专用集成电路来实施图1的装置或者图2的过程的一个或者多个部分。
然而,仅为了易于说明而假设下文参照图2描述的过程——这些过程包括声谱生成12、矢量生成14、信号评估16(包括一级、二级和三级阶段18、20和22)以及输出生成24——由包括计算机服务器系统的装置执行,该计算机服务器系统包括一个或者多个处理器和储存器并且由一个或者多个程序控制。下文描述的过程步骤——包括声谱生成12、矢量生成14、信号评估16(包括一级、二级和三级阶段18、20和22)以及输出生成24——也分别对应于图1的声谱图生成器112、矢量生成器114、内容评估器116(包括一级、二级和三级评估器118、120和122)以及输出生成器124执行的功能。
声谱生成12
在这一例子中,处理形式为音频信号的源信号以例如通过向音频信号应用快速傅里叶变换(FFT)来生成声谱图。
在一个示例实施例中,应当以与生成如下数据库的方法一致的方式格式化音频信号,音频信号将与该数据库比较。在一个示例实施例中,可以将音频信号转换成例如在12kHz、如果可能则用立体声或者如果不可能则用单声道并且例如每个采样为16位进行采样的明文.WAV格式。在一个示例实施例中,将包括左声道和右声道的立体声音频表示为求和(左加上右)和差值(左减去右)声道以便给予对画外音和相似失真的更大弹性。然后处理音频文件以生成声谱图。
应用于声谱图的参数广义地基于人耳对声音的感知,因为声音可能经历的失真种类是保留有人类感知的失真。声谱图包括用于相继的采样间隔(时间分片)的系列信息列。每个时间分片例如对应于1至50ms(例如近似20ms)。相继分段可以按照它们的长度的大百分比——例如按照它们的长度的90-99%、例如约97%——重叠。作为结果,声音的特性往往仅从分段到分段缓慢改变。用于时间分片的列可以包括在对数标度上布置的多个频率仓,而每个仓例如是近似一个半音宽。
可以针对声谱的每个时间分片或者列提供大量频率仓。例如可以生成40至一百这一级或者更多频率仓。在一个具体例子中,提供92个频率仓。
矢量生成14
第二步骤14是生成一个或者多个散列矢量或者散列。在一个示例实施例中,生成多个不同类型的散列。形成散列(或者“指纹”、“签名”)的低维度矢量的一个或者多个序列被设计成对可以遇到的各种失真类型稳健。
在一个示例实施例中,为了对添加的噪声和相似信号给予弹性,可以在生成散列之前粗略地量化测量的值。在希望粗略地量化与需要根据源音频推导充分熵之间存在冲突。为了增强获得的熵,可以非线性地执行量化,从而对于任何给定的测量,量化的值往往等同地可能,从而使散列的分布如图3中所示更均匀。可以在每个频率处独立地选择量化阈值,以使散列的分布更均匀。为了最大化稳健性,可以将每个测量选择成依赖于声谱图中的仅两点。
在一个示例实施例中,通过计算近邻或次近邻频率仓的量值的比率来根据声谱图的单列推导基本散列。在一个例子中,可以通过确定列中的相邻频率仓的内容的比率并且将比率划分成四个范围之一来生成矢量。
例如,针对仓0-91中的每个仓,确定比率为:
-仓i的值/仓i+1的值
-并且确定比率落入四个范围00、01、10和11中的哪个范围内。
简而言之,考虑范围00对应于在0与0.5之间的比率,范围01对应于在0.5与1之间的比率,范围10对应于在1与5之间的比率,并且范围11对应于在5与无穷之间的比率。因此可见,针对比较的每对仓,可以生成两位数。在另一例子中,不同数范围可以用来根据不同基数生成不同位数或者一个或者多个数字。
这样的矢量可以相对于原始信号的总幅度变化而基本上不变,并且相对于均衡(增强或者删减高频或者低频)而言稳健。范围00、01、10和11可以针对每个仓而不同,并且可以通过从音频测试集收集比率的值并且将所得分布划分成四个相等部分来凭经验获得。
在一个示例实施例中,然后生成两个散列。使用从约400Hz至约1100Hz的频带来生成一个散列(“0型散列”),而使用从约1100Hz至约3000Hz的频率频带来生成另一散列(“1型散列”)。这些相对高频带对通过向音轨添加画外音而引起的失真更稳健。
在一个示例实施例中,生成被设计成对(比如在比标称采样速率更快或者更慢回放音频采样序列时发生的)音调变化稳健的又一散列类型(“2型散列”)。生成与基本散列相似的对数频率声谱图仓集。取得每个声谱图仓的幅度,并且应用第二傅里叶变换。这一方式生成与“对数频率倒频谱”类似的系数集。原始音频的音调移位将对应于对数频率声谱图列的平移,并且因此对应于所得系数的相位移位(忽略边缘效应)。然后处理所得系数以形成新的如下矢量,通过取得第n个系数的平方除以第(n-1)个与第(n+1)个系数的乘积来获得该矢量的第n个元素。这一量对于系数的相位移位是不变的,并且因此对于原始信号的音调移位也是不变的。它在原始信号的音量改变的情况下也不变。
由于相继分段按照它们的长度的大比例重叠,所以声音的特性倾向于从分段到分段仅缓慢改变,由此散列往往从分段到分段仅一位或者两位或者一个或者两个数字改变。
由于这些散列都仅检查声谱图的一列,所以它们在原理上对节奏变化是不变的(时间伸展或者压缩而无音调移位)。由于可以发现一些随节奏改变的算法引起更低频音频分量的某一失真,所以如上文描述的基于更高频分量的散列更稳健。
一个示例实施例可以提供相对于节目音频中的画外音而言的稳健性。向音轨添加画外音的一般效果是在往往在时间上和在频率上局部化的区域中改变了声谱图。使用仅依赖于声谱图的单列——该单列对应于很短的一节音频——的散列提供了相对于画外音而言的稳健性。即使画外音短暂地暂停(可能甚至在字词的中间),这仍然提供了识别音轨的良好机会。使用至少在频率上部分局部化的散列也帮助提高对画外音以及某些其它种类的失真的弹性。
另外,每个散列仅依赖于很短的一节音频这一事实给予识别音轨的很短分段的可能性。
可以通过基于修改的对数倒频谱计算生成散列来实现对音调变换(有或者无伴随的节奏变化)的弹性。
测试阶段(内容评估)16
在一个示例实施例中,然后通过比较散列与数据库中的音轨的预先计算的散列来识别节目音频。查找过程的目的是例如使用从声谱图的一列获得的矢量对整个音乐数据库执行近似查找或者“最近邻”搜索。这是用从音乐数据库推导的大量可能目标对象的高维度搜索。
在一个示例实施例中,作为多阶段测试过程16完成该过程。
一级测试阶段(一级评估)18
使用确切匹配查找来执行一级测试阶段18。在一个示例实施例中,这是以散列为具有少量位的简单二进制矢量以在散列表中执行查找来实现的。由于使用少量位,所以每个查找表通常返回数据库中的大量命中。出于后文将变得清楚的原因,响应于针对给定关键字的一级查找而检索的在数据库中的命中集被称为“叶”。
在实践中,为了构造关键字而从声谱图提取的位并不独立并且在可能性上不是等同地为‘0’或者‘1’。换而言之,(关于给定的音乐采样)矢量的每位的熵少于一。
用于一些矢量类别的每位的熵大于用于其它矢量类别的每位的熵。换而言之,一些关键字比其它关键字常见得多。因此,如果固定大小的关键字用来访问数据库,则将有时发现大量命中而有时将发现少量命中。如果随机选择关键字,则它落入给定叶中的概率与该叶中的条目数目成比例,并且在校验那些条目中的每个条目以确定它是否实际上是良好匹配时涉及到的进一步工作量也与该叶中的条目数目成比例。作为结果,将针对该关键字而完成的预计工作总量然后与叶大小的平方的平均值成比例。鉴于这一点,在实施例中,通过使叶大小尽可能相等来最小化该值(即最大化系统性能)。
因此,在一个实施例中,选择以均衡叶的大小为目标的数据库结构。
如果希望则可以根据声谱图的连续函数推导散列的位:例如可以将连续数量量化成八个不同值之一并且在散列中将结果编码为三位。在这样的情况下,有利的是不使用均匀量化方案而代之以选择(例如基于对大音乐采样的分析)量化阈值使得每个可能的量化的值往往相等地可能出现。在创建数据库时使用的量化级与在根据节目创建将在数据库中查找的散列时使用的量化级相同。
也可以布置散列中的位使得朝着散列的最高有效端放置最可能稳健的散列(例如量化的连续数量的最高有效位),而朝着散列的最低有效端放置更少稳健的位。
在实施例中,以二进制树的形式布置数据库。树中的深度对应于位在散列中的位置。从底至顶遍历树从而消耗来自关键字散列的一位(最高有效、即最稳健,第一个)以确定在每点是选择左还是右子代,直至比如在深度d发现终端节点(或者“叶”)。叶包含关于数据库中的如下那些音轨的信息,这些音轨包括d个最高有效位与关键字散列的d个最高有效位匹配的散列。
叶在各种深度,选择这些深度使得树的叶各自包含相同数目级的条目、例如几乎相同数目的条目。应当注意,在其它例子中,树可以基于除了二进制树之外的另一数目的基础(例如三进制树)。
因此,在一级测试阶段中在来自节目音频的散列的所选位针对用于参考音轨的存储的散列之间寻找确切匹配。匹配的数字数目依赖于数据库的大小和散列在音轨之中一般有多么常见,从而针对更罕见散列匹配更少位。匹配的位数可以根据音轨数据库的大小在二进制树的情况下例如在10至约30位之间变化。
另外,由于相同类型的连续散列通常仅一位或者两位改变,所以即使节目中的生成散列的时间点未与针对参考音轨数据库生成散列的时间点确切同步,一般也可以针对匹配的位获得确切匹配。
二级测试阶段(二级评估)20
在实施例中,二级测试阶段20涉及到通过随机文件访问在数据库中查找节目散列。这取读单个叶的内容,这些内容包含大量、通常数百个、例如200个这一级的散列匹配。每个匹配对应于与节目散列表面上相似的原始音轨之一中的点。
这些条目中的每个条目伴随有“二级测试信息”、即如下数据,该数据包含从声谱图推导的更多信息。0型和1型散列伴随有来自声谱图的在创建原始散列时未涉及到的那些部分的量化的声谱图信息;2型散列伴随有从对数倒频谱式系数推导的更多位。条目也包括如下信息,该信息使得能够定位与散列对应的原始音轨和该音轨中的位置定位。
二级测试的目的是利用如下事实获得对节目采样和数据库条目是否匹配的在统计上更强大的概念:该过程的这一阶段不再限于确切匹配搜索。在一个示例实施例中,曼哈顿距离度量或者某一其它距离度量可以用来确定在二级测试信息的两个矢量之间的相似程度。
在一个示例实施例中,通过的每个二级测试需要对数据库的进一步随机文件访问以获得用于如下文描述的三级测试的信息。有鉴于此,在一个示例实施例中,将用于通过二级测试的阈值设置成使得叶中的数据库条目中的平均约一个数据库条目通过二级测试。换而言之,通过二级测试的概率应当大约为叶大小的倒数。
图4图示了在从大型音乐数据库随机选择的两个二级测试矢量之间的距离的示例分布——一个曲线针对三个散列类型中的每个。由此通过选择适当曲线上的点使得作为在曲线以下的总面积的一部分的、在尾部以下到该点的左侧的面积近似地等于叶大小的倒数,来选择用于给定类型的二级测试的阈值。
因此,在二级测试阶段中,每个一级命中经历“二级测试”,该二级测试涉及到比较根据相同音频分段生成的散列信息与在匹配点处的候选音轨。
三级测试阶段(三级评估)22
如上文所示,存储于叶中的信息使得能够进行对与散列对应的原始音轨的定位和该音轨中的位置的定位。当通过二级测试时,取读与匹配点周围的短音轨分段对应的三级测试数据。三级测试信息包括原始音轨的系列散列。然后比较节目散列与三级测试数据。这一过程不限于确切匹配搜索,从而距离度量、例如曼哈顿距离度量可以用来确定节目散列与三级测试数据有多么相似。在一个示例实施例中,度量涉及到基于凭经验确定的概率表的全概率计算,以确定在节目散列与三级测试数据之间的相似程度。
节目散列序列和三级测试散列序列均伴随有时间戳信息。这些通常应当对准:换而言之,节目散列时间戳应当具有从匹配三级测试时间戳的恒定偏移。然而如果节目已经在时间上伸展(“节奏失真”),则这一偏移将逐渐漂移。节奏失真越大,漂移就越快。为了检测这一漂移,可以在多个不同试验节奏处执行三级测试,并且可以选择最佳结果作为用于匹配的节奏估计。由于节奏失真相对罕见,所以在一个示例实施例中,这一选择过程偏向于认为没有发生节奏失真。
在三级测试中,从匹配点执行向后和向前扫描,从而评估节目散列与三级测试散列的相似性,并且使用节奏估计以确定在节目和三级测试数据中执行扫描的相对速度。只要良好匹配继续在某一比率以上出现,这就视为表明节目在该时段内包含音轨。当不再看见良好匹配时,这视为表明已经发现音轨的该使用开始或者结束。
不可能的是节奏的初始估计是确切的。因此,在扫描期间测试在标称计算位置略微前面和略微后面的节目散列。如果这些比在标称位置的散列更好地与三级测试信息匹配,则向估计的节奏应用校正。因此提供对少量节奏漂移的跟踪。
由于在一个示例实施例中使用的散列依赖于声谱图的单列,所以它们固有地对节奏改变有弹性。效率之所以提高是因为推迟关于节奏改变的分析或者搜索直至三级测试阶段,并且在该阶段仅有少数候选待考察,因此在可能的节奏偏移内的穷举搜索在计算上可行。
因而在三级测试阶段中,使用第二数据库,该数据库可以包含原始音轨的声谱图的高度压缩版本。在一个示例实施例中,数据库基于与一级数据库相似的散列而又添加一些额外边信息。这些数据被布置成按照音轨并且按照该音轨内的位置可快速被访问。可以将系统布置成使得索引适合于计算机的RAM内。在三级测试期间,使用全概率计算来比较在已经通过二级测试的候选匹配的任一侧上的节目音频与数据库。这一测试能够拒绝已经通过二级测试的误判并且同时发现其中使用音轨材料的节目内的起点和终点。
概括而言,通过二级测试的每个散列经历三级测试,该三级测试基于节目材料与二级测试阶段暗示的音轨材料的对准。在三级测试中,从通过使用连同其他信息一起包含散列的数据库来比较节目与候选音轨而出现一级命中的点在时间上向后和向前延伸该对准,以允许进行准确比较。如果在任一方向上不能令人满意地延伸匹配,则丢弃它;否则与匹配音轨的标识和已经匹配的音轨时间范围一起报告其中已经发现令人满意的匹配的节目时间范围(为“点内”和“点外”)。在一个示例实施例中,这形成输出提示单上的一个候选条目。
输出阶段22
如更早提到的那样,音频识别过程的一个应用是生成提示单。三级测试的结果是节目材料与原始数据库中的音轨的一系列候选匹配。每个匹配包括节目起点和终点、音轨的标识号、音轨内的起点和终点以及匹配质量的总测量。如果匹配质量充分高,则这一匹配是用于向提示单中录入的候选。
当发现新候选提示单条目时,将其与提示单中已有的条目进行比较。如果在节目时间上没有与现有条目的显著重叠,则向提示单添加它。如果有与另一条目的显著重叠,那么如果条目的匹配质量更高则替换条目,否则将丢弃候选。
当已经处理所有节目散列时,可以输出完成的提示单。
如更早所示,已经描述的过程由在一个或者多个计算机系统上操作的一个或者多个计算机程序自动执行并且可以集成到实时执行的单个过程中或者可以分离成由在一个或者多个不同计算机系统上操作的一个或者多个计算机程序在不同时间执行的一个或者多个分离过程。在以下段落中描述系统操作的更多细节。
在本例中,假设如图5中所示系统为接收音频节目32作为输入并且输出提示单34的计算机服务器系统30。计算机系统包括一个或者多个处理器42、用于节目和数据的随机存取存储器(RAM)44和数据库46以及计算机系统的在图5中未示出的包括输入/输出接口、电源等的其它传统特征。
参考数据46
数据库46在多个阶段中由源音乐文件的汇集构建。
在一个示例实施例中,通过以下过程生成数据库:
1.将每个源音乐文件转换成例如在12kHz、如果可能则用立体声或者如果不可能则用单声道、例如每个采样为16位进行采样的明文.WAV格式。将包括左声道和右声道的立体声音频转换成求和(左加上右)和差值(左减去右)声道。
2.产生文件(称为srclist),该文件包含源文件名的编号列表。文件的每行可以包含唯一标识号(“音轨ID”或者“分段ID”)、继而为空格、继而为文件名。
3.根据源音乐音轨生成散列以创建文件(例如称为rawseginfo),该文件包含源音轨的散列。生成辅助文件(例如称为rawseginfo.aux),该文件包含来自srclist的音轨名信息。
4.将散列排序成音轨ID和时间顺序。
5.生成三级测试数据并且向该数据中产生索引以形成映射的rawseginfo文件。
6.按照散列值的升序对映射的rawseginfo文件排序。
7.生成第一聚类索引(见下文格式描述)。
8.生成辅助数据文件(例如称为auxdata),该辅助数据文件用于在提示单输出中显示文件名。
9.然后将各种文件组装成数据库。
对于设计成与一千万秒音频的数据库一起工作的系统的一个示例实施例,如下设置下文将讨论的各种系统参数。
-最大叶大小=400
-第一聚类深度=20
然而应当注意这些仅为系统参数的例子,并且不同实施例将运用不同参数。例如,对于更大数据库,第一聚类深度可以例如增加至用于一亿秒音频的约23或者24位和用于十亿秒音频的约26或者27位。在下文更具体描述的例子中,假设24位的第一聚类深度。
在一个示例实施例中,为了保持文件大小可管理,将所用各种数据结构打包成字节和位以存储为数据库的一部分。
原始散列
在一个示例实施例中,作为六个字节或者48位存储原始散列。最高有效位是用于一级数据库查找的位。
数据库叶和rawseginfo
数据库中的每个叶包含rawseginfo结构序列。在数据库中完成查找之前也将待分析的节目转换成rawseginfo结构序列。
每个rawseginfo结构将原始散列与关于它来自何处的信息(它的音轨ID和它在该音轨内的位置,各自存储为四个字节)和二级测试信息的16字节字段一起保持。
当初始地生成位置信息时设置该信息以指示散列相对于音轨的开始而言的以近似20毫秒为单位测量的时间。在数据库构建过程期间,该值被替换为向三级测试数据(“映射的”rawseginfo)中的直接偏移。
在称为BFF(“大型平面文件”)的平面文件结构中按照散列的顺序依次存储rawseginfo数据结构。每个叶是完全由如下那些rawseginfo数据结构构成的BFF的连续子分段,这些数据结构的散列使其第一d(“深度”)位相等,其中在每个情况下选择d使得叶内的rawseginfo数据结构数目不再大于适用的“最大叶尺寸”系统参数。可以通过先将BFF划分成各自具有如下深度值的叶来执行深度值的选择,该深度值被设置成“第一聚类深度”系统参数的值。然后可以将深度值d的大小超过“最大叶大小”系统参数的任何叶划分成两个如下叶,每个叶具有d加上一的深度值;重复这一划分过程直至未留下大小超过“最大叶大小”系统参数的叶。
图6是给出数据库46的结构和与从节目音频推导的每个散列关联的查找表的概况的示意图。
存在到数据库的叶中的两个索引级。
如上文讨论的那样,数据库46采用非均匀深度的二进制树这一形式。
为了简化对数据库编索引,每个叶具有至少第一聚类深度参数62的深度、比如24位。树在第一聚类深度处的节点以上的部分被称为“聚类”。有2F个聚类,其中F=第一聚类深度并且这些聚类中的每个聚类对应于BFF 74的连续分段,该分段又包含多个叶72。
在图6的左上部示出了节目散列60。多个最高有效位(由参数FIRSTCLUSTERDEPTH(第一聚类深度)62设置)用作到基于RAM的索引66(“第一聚类索引”)中的偏移,其包含关于可变深度树的形状的信息。数据库索引66的顶层68包含每聚类一个条目。它简单地指向第二索引中的(可变长度)记录70,该索引包含关于该聚类的信息。使用来自节目散列的更多位以遍历第二索引形成的树的最后少数节点。在所示例子中,取得更多三位(“101”)。按照图6中所示树结构,如果这些位中的第一位已经是零,则将会取得共计仅两位。存储于基于RAM的第一聚类索引中的信息足以直接发现用于叶72的对应的数据库记录。
因此,第二级索引描述聚类中的二进制树的形状和该树内的叶的大小。条目由以下各项构成:
(i)用于该聚类的数据在其处开始的、到BFF 74中的偏移。
(ii)聚类中的二进制树的形状的编码。这是按照在树的深度优先遍历中遇到的顺序考虑的位流,其中一位用于树的每个节点(内部和叶)。如果节点为内部则该位是零,而如果它是叶则该位是1。如果必要则向位流填充0位至最后字节的结束。
(iii)以使得在单个字节中表达多数尺寸这样的压缩形式编码的、按照在树的深度优先遍历中遇到的顺序的、聚类中的每个叶72的尺寸。
在其中聚类仅包含熵很少的散列(即其中聚类相对大)的少数情况下,特殊标志值可以替换上述(ii)和(iii),并且未对对应BFF条目编索引。
在一个示例实施例中,两个索引级66/70被设计成适配到服务器系统中的RAM中,从而允许用对BFF的单个随机访问来取读任何数据库叶的内容。
在BFF中,以与更早关于节目散列描述的方式相似的方式、与每个匹配散列一起存储从声谱图推导的更多信息。由于将在二级测试阶段考虑仅数百个匹配,所以距离度量可以用来确定是否确实有在节目与在一级测试阶段中标识的参考音轨之间的良好匹配。在整个数据库内评估这样的度量将在计算时间上耗费太多而导致无人问津。如更早所示,设置用于这一测试的阈值,从而仅很少量、可能如一个或者两个那样少的潜在匹配通过。
为了进一步增加从单个随机数据库盘访问中提取的值,可以使用适当压缩算法来压缩二级测试信息。
三级测试信息由按照音轨ID和该音轨内的时间偏移的顺序的、三级测试数据76结构的序列构成。这些结构中的每个结构包含存储为单个字节的从先前条目的时间偏移(以近似20毫秒为单位),以及原始散列。
数据库46包括到三级测试数据76中的索引78,从而给出每个音轨的起始点。这一索引被设计成小到足以适配到RAM中并且因此允许用对数据库文件的单个随机访问来取读任何所需三级测试数据项。在BFF 74中与二级测试数据82一起提供数据80,该数据80限定到三级测试数据索引76中的条目。
为了减少数据库访问时间,数据库有利地保持于固态盘上而不是传统硬盘上,因为用于固态盘的随机访问(或者“寻找”)时间通常比传统硬盘快一百倍级。当数据库大小允许时,所有信息可以存储于计算机的RAM中。另外如上文所示,就可变深度树结构而言,可以取得散列的如所需一样多的位以减少在设置的阈值、例如数百以下执行的二级测试的数目。
虽然上文已经描述了具体示例实施例,但是在其它实施例中设想了修改和添加。
散列函数
例如,散列函数可以适应提供的各种稳健程度,以例如选择位在散列内的顺序,从而最大化其相对于确切匹配数据库查找表而言的稳健性。除了对数倒频谱型散列系数之外,对全标度数据库也可以使用其它音调移位不变熵源。
数据库树
在上例中,在二进制基础上组织数据库树结构70。然而,在其它例子中,节点的子代数目可以是除了二之外的数目,并且实际上,它可以在树内变化。这一方式可以用来进一步有助于均衡叶的大小。作为替代或者除此之外,可以使用如下树结构,其中可以针对节点的每个子代、例如针对二进制树(称为‘溢出树’)中的节点的左和右子代存储散列。
标识重复音轨
可选地,可以在音轨数据库中搜寻重复的音乐分节。然后如上文描述的那样在数据库中存储并且标识唯一分节(将称为‘分段’);后续处理阶段将把识别的分段的列表转换成音轨列表。这样的方式将涉及到进一步预处理、但是将减少数据库的存储要求并且可以加速实时处理。
绝对时间信息
在上文描述的实施例中,通过从该分段的开始向前扫描至三级测试数据条目来确定用于该条目的绝对时间,从而累计时间增量。可选地,可以在三级测试数据条目序列中包括绝对时间标记。
数据库稀疏化
为了减少二级测试数据库的大小,可以使用数据稀疏化。这涉及到计算“散列的散列”,以确定性的方式丢弃散列的固定一部分。例如为了按照因子三稀疏化数据库,可以运用以下修改。对于生成的每个散列,将需要在数据库中确切匹配的那些位视为整数。如果这一整数不可整除以三,则丢弃散列,也就是说,它未被包括在根据源音轨材料构建的数据库中。类似地,如果在处理节目材料时遇到不满足这一标准的散列,则立即知道它不会在数据库中,因此将不执行查找。使用确定性的标准——该标准是在用于接受或者拒绝散列的确切匹配中涉及到的位的函数——而不是简单地以固定概率随机接受或者拒绝,因为后一种方式将尤其在稀疏化比率更大时对散列命中率具有大得多的不利影响。
替代实施例
上文描述的实施例仅为举例。可以在权利要求的精神实质和范围内设想替代实施例。
例如,在关于附图描述的示例实施例中,一级评估包括执行源矢量的数字与查找表中的条目的确切匹配,其中查找表中的每个条目与参考矢量组关联。二级评估然后包括确定在源矢量与参考矢量组中的每个之间的相似程度,以标识任何如下参考矢量,这些参考矢量是用于匹配源媒体内容与参考媒体内容的候选。三级评估然后涉及到确定在一个或者多个更多源矢量与一个或者多个更多参考矢量之间的相似程度,更多源矢量和更多参考矢量各自在时间上分别与源矢量和候选参考矢量分离。二级和三级评估涉及到对保持参考矢量数据库的存储器的随机访问。应注意,参考矢量数据库可以是相当大的尺寸、例如大于10万亿字节的级别。
当使用由独立或者联网的计算机系统、例如具有一个或者多个处理器和共享储存器的计算机系统形成的装置来执行处理时,有利的是数据库保持于固态存储器设备(SSD)中以增加处理速度并且因此加速二级和三级处理阶段。然而这样的储存器目前昂贵。可以使用更慢、更低成本的存储设备、比如盘储存器以这一方式执行处理,但是这可能尤其在参考数据库大时减缓识别过程。
另一替代方式是使用如下装置,该装置运用阵列方式或者云方式进行处理,其中处理任务被分布至多个计算机系统、例如作为后台任务来操作,而在主机计算机系统中协调云处理的结果。
也设想的又一方式在于从源节目生成源矢量的源数据库、然后以线性或者流方式匹配参考数据库的参考媒体与源数据库。这具有的优点在于例如来自电台的一天节目的源矢量的源数据库可以保持于数千兆比特的随机存取存储器中,然后可以从低成本储存器、例如盘或者带传输参考数据库,并且可以用低成本批量方式执行比较过程。因而,使用这样的方式,可以用针对图6的参考矢量的参考媒体数据库描述的方式生成用于源节目材料(例如来自一个电台节目或者适当时段的节目(比如一小时、一天的部分或者全部等))的源矢量的源媒体数据库。源矢量可以存储于按照递增散列值的顺序排序的随机存取存储器中、散列表中或者与针对图6的参考矢量的参考媒体数据库描述的数据库结构相似的数据库结构中。然后可以通过从参考媒体数据库依次传输参考矢量(这比在低成本储存器、比如盘或者带的情况下的随机访问快得多)来比较参考矢量与源媒体数据库。这一过程可以包括一级评估,该评估执行每个参考矢量的数字与源数据库表中的条目的确切匹配,其中源数据库表中的每个条目与源矢量组关联。二级评估然后可以包括确定在当前参考矢量与源矢量组中的每个之间的相似程度以标识任何如下源矢量,这些源矢量是用于匹配源媒体内容与参考媒体内容的候选。三级评估然后可以涉及到确定在一个或者多个更多源矢量与一个或者多个更多参考矢量之间的相似程度,更多源矢量和更多参考矢量各自在时间上分别与源矢量和候选参考矢量分离。二级评估将涉及到对保持源矢量数据库的储存器的随机访问,但是由于这相对小,所以它可以保持于随机存取存储器中。三级评估将涉及到对保持源矢量数据库和参考矢量数据库的储存器的访问。在一个实施例中,按照自然顺序、也就是逐个音轨地存储参考矢量数据库而按照每个音轨内的时间顺序存储矢量。在这一实施例中,在三级评估中涉及到的查找表将与数据库中的相邻条目有关,因此可以使用对储存器的顺序访问以减少访问时间。在一个替代实施例中,出于执行二级测试的目的而按照递增散列值的顺序存储参考矢量数据库,并且将按照音轨编号收集和排序用于三级评估的候选集以允许出于执行三级测试的目的而使用对存储器的顺序访问。
Claims (36)
1.一种用于提供通过与参考媒体内容比较从源信号自动识别源媒体内容的装置,所述装置包括:
声谱图生成器,可操作用于通过向所述源信号应用傅里叶变换来根据所述源信号生成声谱图,所述声谱图包括多个列,每个列代表时间分片,并且包括多个频率仓,每个频率仓代表用于所述源信号的所述时间分片的相应频率分量范围;
矢量生成器,可操作用于通过计算来自用于所述源信号的时间分片的所述列中的所选频率仓的量值的比率来生成用于所述源信号的所述时间分片的至少一个源矢量,并且量化所述比率以生成源矢量的数字;
一级评估器,可操作用于通过执行第一矢量的数字与查找表中的条目的确切匹配来执行一级评估,其中所述查找表中的每个条目与第二矢量组关联,并且其中用来执行所述确切匹配的所述第一矢量的数字的数目在所述查找表中的条目之间不同;
二级评估器,可操作用于执行二级评估以确定在所述第一矢量与所述第二矢量组中的每个之间的相似程度,以标识任何第二矢量,所述任何第二矢量是用于匹配所述源媒体内容与所述参考媒体内容的候选;以及
数据库,包括所述查找表和所述第二矢量,
其中所述第一矢量是源矢量或者参考矢量,并且所述第二矢量是所述源矢量和所述参考矢量中的另一种矢量,每个参考矢量代表所述参考媒体内容的时间分片。
2.根据权利要求1所述的装置,其中为了生成用于时间分片的至少一个矢量,所述矢量生成器可操作用于:
针对时间分片的至少一个所选频率仓,计算该仓与来自用于所述时间分片的所述列中的邻近或次邻近频率仓的比率;并且
将所述比率划分成范围以生成用于每个比率的至少一个所选数字。
3.根据权利要求2所述的装置,其中为了生成用于时间分片的至少一个矢量,所述矢量生成器可操作用于:
针对时间分片的至少一个所选频率仓,计算该仓与来自用于所述时间分片的所述列中的邻近或次邻近频率仓的比率;并且
将所述比率划分成范围以生成用于每个比率的两个二进制数字。
4.根据权利要求2或者3所述的装置,其中:
所述范围在所选比率之间不同,以提供在范围之间的基本上相等的比率值分布。
5.根据权利要求2至4中的任一权利要求所述的装置,其中所述矢量生成器可操作用于:
使用从400Hz至1100Hz的频带选择的频率仓来生成第一源矢量,并且使用从1100Hz至3000Hz的频带选择的频率仓来生成第二源矢量。
6.根据任一前述权利要求所述的装置,其中,为了生成用于时间分片的又一源矢量:
所述声谱图生成器可操作用于通过向所述源信号应用傅里叶变换来生成又一声谱图,所述又一声谱图包括多个列,每个列代表时间分片,并且包括多个频率仓,每个频率仓代表用于所述源信号的所述时间分片的相应频率分量范围;并且可操作用于向来自用于所述时间分片的所述列的所述各个频率仓应用又一傅里叶变换以生成相应系数集;并且
所述矢量生成器可操作用于生成所述又一源矢量,从而针对用于时间分片的列中的N个系数的集合,针对所述又一源矢量的元素2至N-1中的每个,通过将第n个系数的平方除以第(n-1)个系数与第(n+1)个系数的乘积形成第n个元素;并且可操作用于量化所得矢量的元素以生成用于每个元素的至少一个数字。
7.根据任一前述权利要求所述的装置,其中所述源信号是音频信号,并且根据对数标度分配所述声谱图仓的频率。
8.根据任一前述权利要求所述的装置,其中:
将所述查找表组织为导向叶的可变深度树,所述表由第一矢量编索引;
每个叶形成所述查找表中的与相应第二矢量组关联的条目;
确定导向每个叶的数字的数目,以提供用于每个叶的基本上相等大小的第二矢量组。
9.根据权利要求8所述的装置,其中:
导向每个叶的数字的数目形成用来针对给定的叶执行所述确切匹配的所述第一矢量的数字的数目。
10.根据权利要求8或者9所述的装置,其中,所述查找表的每个叶标识具有d个匹配数字的第二矢量组,其中d对应于所述树到该叶的深度。
11.根据任一前述权利要求所述的装置,其中,所述二级评估器可操作用于使用距离度量来执行所述二级评估,以确定在所述第一矢量与所述第二矢量组中的每个之间的相似程度。
12.根据任一前述权利要求所述的装置,还包括三级评估器,所述三级评估器用于针对标识为候选的任何第二矢量执行三级评估,所述三级评估器可操作用于确定在一个或者多个进一步的第一矢量和与在所述二级评估中标识的所述候选第二矢量对应的一个或者多个进一步的第二矢量之间的相似程度。
13.根据权利要求12所述的装置,其中所述进一步的第一矢量和所述进一步的第二矢量在时间上分别与所述第一矢量和所述候选第二矢量分离。
14.根据任一前述权利要求所述的装置,其中,所述源信号是接收的节目信号。
15.根据权利要求14所述的装置,包括:记录生成器,可操作用于生成所述节目信号的所述匹配的媒体内容的记录。
16.根据权利要求15所述的装置,包括:提示单生成器,可操作用于生成标识所述匹配的媒体内容的提示单。
17.根据任一前述权利要求所述的装置,其中所述第二矢量是所述源矢量,并且所述装置被配置成根据所述源矢量生成所述数据库。
18.根据任一前述权利要求所述的装置,所述装置包括至少一个处理器和储存器以及可操作用于实施所述声谱图生成器、所述散列矢量生成器和所述评估器的计算机软件。
19.一种用于通过与参考媒体内容比较从源信号自动识别源媒体内容的自动识别方法,所述方法包括:
通过向所述源信号应用傅里叶变换来根据所述源信号生成声谱图,所述声谱图包括多个列,每个列代表时间分片,并且包括多个频率仓,每个频率仓代表用于所述源信号的所述时间分片的相应频率分量范围;
通过计算来自用于所述源信号的时间分片的所述列的所选频率仓的量值的比率来生成用于所述时间分片的至少一个源矢量,并且量化所述比率以生成源矢量的数字;
通过第一矢量的数字与查找表中的条目的确切匹配来执行一级评估,其中所述查找表中的每个条目与第二矢量组关联,并且其中用来执行所述确切匹配的所述第一矢量的数字的数目在所述查找表中的条目之间不同;并且
执行二级评估以确定在所述第一矢量与所述第二矢量组中的每个之间的相似程度以便标识任何第二矢量,所述任何第二矢量是用于匹配所述源媒体内容与所述参考媒体内容的候选,
其中数据库存储所述查找表和所述第二矢量,并且
其中所述第一矢量是源矢量或者参考矢量,并且所述第二矢量是所述源矢量和所述参考矢量中的另一种矢量,每个参考矢量代表所述参考媒体内容的时间分片。
20.根据权利要求19所述的方法,其中生成用于时间分片的至少一个矢量包括:
针对时间分片的至少一个所选频率仓,计算该仓与来自用于所述时间分片的所述列的邻近或次邻近频率仓的比率;并且
将所述比值划分成范围以生成用于每个比值的至少一个所选数字。
21.根据权利要求20所述的方法,其中生成用于时间分片的至少一个矢量包括:
针对时间分片的至少一个所选频率仓,计算该仓与来自用于所述时间分片的所述列中的邻近或次邻近频率仓的比率;并且
将所述比率划分成范围以生成用于每个比率的两个二进制数字。
22.根据权利要求20或者21所述的方法,其中:
所述范围在所选比率仓之间不同,以提供在范围之间的基本上相等的比率值分布。
23.根据权利要求20至22中的任一权利要求所述的方法,包括:
使用从400Hz至1100Hz的频带选择的频率仓来生成第一源矢量,并且使用从1100Hz至3000Hz的频带选择的频率仓来生成第二源矢量。
24.根据权利要求19至23中的任一权利要求所述的方法,其中通过以下操作来生成用于时间分片的进一步的源矢量:
通过向所述源信号应用傅里叶变换来生成又一声谱图,所述又一声谱图包括多个列,每个列代表时间分片,并且包括多个频率仓,每个频率仓代表用于所述源信号的所述时间分片的相应频率分量范围;
向来自用于所述时间分片的所述列中的所述各个频率仓应用又一傅里叶变换,以生成相应系数集;
生成所述又一源矢量,从而针对用于时间分片的列中的N个系数的集合,针对所述又一源矢量的元素2至N-1中的每个,通过第n个系数的平方除以第(n-1)个系数与第(n+1)个系数的乘积形成第n个元素;并且量化所得矢量的元素以生成用于每个元素的至少一个数字。
25.根据权利要求19至24中的任一权利要求所述的方法,其中所述源信号是音频信号,并且根据对数标度分配所述声谱图仓的频率。
26.根据权利要求19至25中的任一权利要求所述的方法,其中:
将所述查找表组织为导向叶的可变深度树,所述表由第一矢量编索引;
每个叶形成所述查找表中的与相应的第二矢量组关联的条目;
确定导向每个叶的数字的数目,以提供用于每个叶的基本上相等大小的第二矢量组。
27.根据权利要求26所述的方法,其中:
导向每个叶的数字的数目形成用来针对给定的叶执行所述确切匹配的所述第一矢量的数字的数目。
28.根据权利要求26或者27所述的方法,其中所述查找表的每个叶标识具有d个匹配数字的第二矢量组,其中d对应于所述树到该叶的深度。
29.根据权利要求19至28中的任一权利要求所述的方法,包括使用距离度量来执行所述二级评估,以确定在所述第一矢量与所述第二矢量组中的每个之间的相似程度。
30.根据权利要求19至29中的任一权利要求所述的方法,包括针对标识为候选的任何第二矢量执行三级评估,所述三级评估包括确定在一个或者多个进一步的第一矢量和与在所述二级评估中标识的所述候选第二矢量对应的一个或者多个进一步的第二矢量之间的相似程度。
31.根据权利要求30所述的方法,其中所述进一步的第一矢量和所述进一步的第二矢量在时间上分别与所述第一矢量和所述候选第二矢量分离。
32.根据权利要求19至31中的任一权利要求所述的方法,其中所述源信号是接收的节目信号。
33.根据权利要求32所述的方法,包括生成所述节目信号的所述匹配的媒体内容的记录。
34.根据权利要求33所述的方法,包括生成标识所述匹配的媒体内容的提示单。
35.根据权利要求19至34中的任一权利要求所述的方法,其中所述第二矢量是所述源矢量,并且所述装置被配置成根据所述源矢量生成所述数据库。
36.一种计算机程序产品,包括可操作用于实施根据权利要求19至35中的任一权利要求所述的方法的程序指令。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US35290410P | 2010-06-09 | 2010-06-09 | |
US61/352,904 | 2010-06-09 | ||
PCT/GB2011/051042 WO2011154722A1 (en) | 2010-06-09 | 2011-06-02 | System and method for audio media recognition |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102959624A true CN102959624A (zh) | 2013-03-06 |
CN102959624B CN102959624B (zh) | 2015-04-22 |
Family
ID=44511083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180028693.XA Active CN102959624B (zh) | 2010-06-09 | 2011-06-02 | 用于音频媒体识别的系统和方法 |
Country Status (8)
Country | Link |
---|---|
US (1) | US8768495B2 (zh) |
EP (1) | EP2580750B1 (zh) |
JP (1) | JP5907511B2 (zh) |
CN (1) | CN102959624B (zh) |
ES (1) | ES2488719T3 (zh) |
HK (1) | HK1181913A1 (zh) |
SG (1) | SG185673A1 (zh) |
WO (1) | WO2011154722A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105788612A (zh) * | 2016-03-31 | 2016-07-20 | 广州酷狗计算机科技有限公司 | 一种检测音质的方法和装置 |
CN107274912A (zh) * | 2017-07-13 | 2017-10-20 | 东莞理工学院 | 一种手机录音的设备来源辨识方法 |
CN107895571A (zh) * | 2016-09-29 | 2018-04-10 | 亿览在线网络技术(北京)有限公司 | 无损音频文件识别方法及装置 |
CN110580246A (zh) * | 2019-07-30 | 2019-12-17 | 平安科技(深圳)有限公司 | 迁徙数据的方法、装置、计算机设备及存储介质 |
CN111095941A (zh) * | 2017-07-31 | 2020-05-01 | 尼尔森(美国)有限公司 | 执行媒体装置资产资格认证的方法和设备 |
CN112784099A (zh) * | 2021-01-29 | 2021-05-11 | 山西大学 | 抵抗变调干扰的采样计数音频检索方法 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101490576B1 (ko) * | 2010-05-04 | 2015-02-11 | 샤잠 엔터테인먼트 리미티드 | 미디어의 동기화 방법 및 시스템 |
US8584198B2 (en) * | 2010-11-12 | 2013-11-12 | Google Inc. | Syndication including melody recognition and opt out |
US9684715B1 (en) * | 2012-03-08 | 2017-06-20 | Google Inc. | Audio identification using ordinal transformation |
US9052986B1 (en) * | 2012-04-18 | 2015-06-09 | Google Inc. | Pitch shift resistant audio matching |
US9418669B2 (en) * | 2012-05-13 | 2016-08-16 | Harry E. Emerson, III | Discovery of music artist and title for syndicated content played by radio stations |
CN103971689B (zh) * | 2013-02-04 | 2016-01-27 | 腾讯科技(深圳)有限公司 | 一种音频识别方法及装置 |
US10424321B1 (en) | 2013-02-12 | 2019-09-24 | Google Llc | Audio data classification |
US20140336797A1 (en) * | 2013-05-12 | 2014-11-13 | Harry E. Emerson, III | Audio content monitoring and identification of broadcast radio stations |
BR112016020457B1 (pt) * | 2014-03-04 | 2022-09-06 | Interactive Intelligence Group, Inc | Método de busca por impressões digitais de áudio armazenadas em um banco de dados dentro de um sistema de detecção de impressões digitais de áudio |
CN104023247B (zh) | 2014-05-29 | 2015-07-29 | 腾讯科技(深圳)有限公司 | 获取、推送信息的方法和装置以及信息交互系统 |
US9641892B2 (en) * | 2014-07-15 | 2017-05-02 | The Nielsen Company (Us), Llc | Frequency band selection and processing techniques for media source detection |
US9817908B2 (en) * | 2014-12-29 | 2017-11-14 | Raytheon Company | Systems and methods for news event organization |
WO2017220721A1 (de) * | 2016-06-22 | 2017-12-28 | Siemens Convergence Creators Gmbh | Verfahren zur automatischen und dynamischen zuteilung der zuständigkeit für aufgaben an die verfügbaren rechenkomponenten in einem hochverteilten datenverarbeitungssystem |
US20210073273A1 (en) * | 2019-09-05 | 2021-03-11 | Gracenote, Inc. | Methods and apparatus to identify media based on historical data |
WO2021135731A1 (en) * | 2020-01-03 | 2021-07-08 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Efficient audio searching by using spectrogram peaks of audio data and adaptive hashing |
US11798577B2 (en) * | 2021-03-04 | 2023-10-24 | Gracenote, Inc. | Methods and apparatus to fingerprint an audio signal |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030086341A1 (en) * | 2001-07-20 | 2003-05-08 | Gracenote, Inc. | Automatic identification of sound recordings |
CN1592906A (zh) * | 2000-07-31 | 2005-03-09 | 沙扎姆娱乐有限公司 | 用于在强噪声和失真下识别声音和音乐信号的系统和方法 |
US20060229878A1 (en) * | 2003-05-27 | 2006-10-12 | Eric Scheirer | Waveform recognition method and apparatus |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3919479A (en) | 1972-09-21 | 1975-11-11 | First National Bank Of Boston | Broadcast signal identification system |
US4843562A (en) | 1987-06-24 | 1989-06-27 | Broadcast Data Systems Limited Partnership | Broadcast information classification system and method |
US5019899A (en) | 1988-11-01 | 1991-05-28 | Control Data Corporation | Electronic data encoding and recognition system |
US5210820A (en) | 1990-05-02 | 1993-05-11 | Broadcast Data Systems Limited Partnership | Signal recognition system and method |
US7346472B1 (en) | 2000-09-07 | 2008-03-18 | Blue Spike, Inc. | Method and device for monitoring and analyzing signals |
US6941275B1 (en) | 1999-10-07 | 2005-09-06 | Remi Swierczek | Music identification system |
US7853664B1 (en) | 2000-07-31 | 2010-12-14 | Landmark Digital Services Llc | Method and system for purchasing pre-recorded music |
US7574486B1 (en) | 2000-11-06 | 2009-08-11 | Telecommunication Systems, Inc. | Web page content translator |
US20020072982A1 (en) | 2000-12-12 | 2002-06-13 | Shazam Entertainment Ltd. | Method and system for interacting with a user in an experiential environment |
US7359889B2 (en) | 2001-03-02 | 2008-04-15 | Landmark Digital Services Llc | Method and apparatus for automatically creating database for use in automated media recognition system |
US6993532B1 (en) * | 2001-05-30 | 2006-01-31 | Microsoft Corporation | Auto playlist generator |
DK1504445T3 (da) | 2002-04-25 | 2008-12-01 | Landmark Digital Services Llc | Robust og invariant lydmönster-matching |
US7386480B2 (en) | 2002-05-07 | 2008-06-10 | Amnon Sarig | System and method for providing access to digital goods over communications networks |
EP1563368A1 (en) | 2002-11-15 | 2005-08-17 | Pump Audio LLC | Portable custom media server |
US7421305B2 (en) * | 2003-10-24 | 2008-09-02 | Microsoft Corporation | Audio duplicate detector |
CN1998168B (zh) | 2004-02-19 | 2011-04-06 | 兰德马克数字服务有限责任公司 | 用于广播源辨识的方法与装置 |
WO2006012241A2 (en) | 2004-06-24 | 2006-02-02 | Landmark Digital Services Llc | Method of characterizing the overlap of two media segments |
US7925671B2 (en) | 2004-08-11 | 2011-04-12 | Getty Image (US), Inc. | Method and system for automatic cue sheet generation |
US8156116B2 (en) * | 2006-07-31 | 2012-04-10 | Ricoh Co., Ltd | Dynamic presentation of targeted information in a mixed media reality recognition system |
US7516074B2 (en) * | 2005-09-01 | 2009-04-07 | Auditude, Inc. | Extraction and matching of characteristic fingerprints from audio signals |
US8145656B2 (en) * | 2006-02-07 | 2012-03-27 | Mobixell Networks Ltd. | Matching of modified visual and audio media |
WO2008042953A1 (en) | 2006-10-03 | 2008-04-10 | Shazam Entertainment, Ltd. | Method for high throughput of identification of distributed broadcast content |
US7733214B2 (en) | 2007-08-22 | 2010-06-08 | Tune Wiki Limited | System and methods for the remote measurement of a person's biometric data in a controlled state by way of synchronized music, video and lyrics |
US20090083281A1 (en) | 2007-08-22 | 2009-03-26 | Amnon Sarig | System and method for real time local music playback and remote server lyric timing synchronization utilizing social networks and wiki technology |
-
2011
- 2011-06-02 EP EP11726480.4A patent/EP2580750B1/en active Active
- 2011-06-02 US US13/151,365 patent/US8768495B2/en active Active
- 2011-06-02 WO PCT/GB2011/051042 patent/WO2011154722A1/en active Application Filing
- 2011-06-02 JP JP2013513754A patent/JP5907511B2/ja active Active
- 2011-06-02 CN CN201180028693.XA patent/CN102959624B/zh active Active
- 2011-06-02 SG SG2012085361A patent/SG185673A1/en unknown
- 2011-06-02 ES ES11726480.4T patent/ES2488719T3/es active Active
-
2013
- 2013-07-30 HK HK13108875.8A patent/HK1181913A1/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1592906A (zh) * | 2000-07-31 | 2005-03-09 | 沙扎姆娱乐有限公司 | 用于在强噪声和失真下识别声音和音乐信号的系统和方法 |
US20030086341A1 (en) * | 2001-07-20 | 2003-05-08 | Gracenote, Inc. | Automatic identification of sound recordings |
US20060229878A1 (en) * | 2003-05-27 | 2006-10-12 | Eric Scheirer | Waveform recognition method and apparatus |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105788612A (zh) * | 2016-03-31 | 2016-07-20 | 广州酷狗计算机科技有限公司 | 一种检测音质的方法和装置 |
CN107895571A (zh) * | 2016-09-29 | 2018-04-10 | 亿览在线网络技术(北京)有限公司 | 无损音频文件识别方法及装置 |
CN107274912A (zh) * | 2017-07-13 | 2017-10-20 | 东莞理工学院 | 一种手机录音的设备来源辨识方法 |
CN107274912B (zh) * | 2017-07-13 | 2020-06-19 | 东莞理工学院 | 一种手机录音的设备来源辨识方法 |
CN111095941A (zh) * | 2017-07-31 | 2020-05-01 | 尼尔森(美国)有限公司 | 执行媒体装置资产资格认证的方法和设备 |
CN111095941B (zh) * | 2017-07-31 | 2022-04-08 | 尼尔森(美国)有限公司 | 执行媒体装置资产资格认证的方法、设备和存储介质 |
US11483602B2 (en) | 2017-07-31 | 2022-10-25 | The Nielsen Company (Us), Llc | Methods and apparatus to perform media device asset qualification |
US11936931B2 (en) | 2017-07-31 | 2024-03-19 | The Nielsen Company (Us), Llc | Methods and apparatus to perform media device asset qualification |
CN110580246A (zh) * | 2019-07-30 | 2019-12-17 | 平安科技(深圳)有限公司 | 迁徙数据的方法、装置、计算机设备及存储介质 |
CN110580246B (zh) * | 2019-07-30 | 2023-10-20 | 平安科技(深圳)有限公司 | 迁徙数据的方法、装置、计算机设备及存储介质 |
CN112784099A (zh) * | 2021-01-29 | 2021-05-11 | 山西大学 | 抵抗变调干扰的采样计数音频检索方法 |
CN112784099B (zh) * | 2021-01-29 | 2022-11-11 | 山西大学 | 抵抗变调干扰的采样计数音频检索方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102959624B (zh) | 2015-04-22 |
JP2013534645A (ja) | 2013-09-05 |
US20110307085A1 (en) | 2011-12-15 |
EP2580750A1 (en) | 2013-04-17 |
HK1181913A1 (zh) | 2013-11-15 |
US8768495B2 (en) | 2014-07-01 |
ES2488719T3 (es) | 2014-08-28 |
JP5907511B2 (ja) | 2016-04-26 |
EP2580750B1 (en) | 2014-05-14 |
WO2011154722A1 (en) | 2011-12-15 |
SG185673A1 (en) | 2012-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102959624B (zh) | 用于音频媒体识别的系统和方法 | |
US10497378B2 (en) | Systems and methods for recognizing sound and music signals in high noise and distortion | |
CN100437572C (zh) | 音频指纹识别系统和方法 | |
EP2659480B1 (en) | Repetition detection in media data | |
CN100454298C (zh) | 旋律数据库搜索 | |
CN103971689B (zh) | 一种音频识别方法及装置 | |
JP2004534274A (ja) | 内容ベースのマルチメディア情報検索で使用するためデジタル表示で音楽情報を表示する方法およびシステム | |
JP2008530597A (ja) | オーディオ信号において繰り返されるマテリアルの自動識別 | |
EP2791935A1 (en) | Low complexity repetition detection in media data | |
CN101292280A (zh) | 导出音频输入信号的一个特征集的方法 | |
WO2016189307A1 (en) | Audio identification method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |