CN109891404B - 音频匹配 - Google Patents
音频匹配 Download PDFInfo
- Publication number
- CN109891404B CN109891404B CN201780063352.3A CN201780063352A CN109891404B CN 109891404 B CN109891404 B CN 109891404B CN 201780063352 A CN201780063352 A CN 201780063352A CN 109891404 B CN109891404 B CN 109891404B
- Authority
- CN
- China
- Prior art keywords
- acoustic fingerprint
- fingerprint
- audio
- database
- query
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 claims abstract description 96
- 230000005236 sound signal Effects 0.000 claims abstract description 85
- 238000012545 processing Methods 0.000 claims description 53
- 230000004044 response Effects 0.000 claims description 38
- 230000008569 process Effects 0.000 description 62
- 239000013598 vector Substances 0.000 description 53
- 238000009826 distribution Methods 0.000 description 25
- 238000005457 optimization Methods 0.000 description 25
- 230000000875 corresponding effect Effects 0.000 description 24
- 238000012549 training Methods 0.000 description 24
- 238000004458 analytical method Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 17
- 230000003595 spectral effect Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 101150012579 ADSL gene Proteins 0.000 description 1
- 102100020775 Adenylosuccinate lyase Human genes 0.000 description 1
- 108700040193 Adenylosuccinate lyases Proteins 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 102000000763 Survivin Human genes 0.000 description 1
- 108010002687 Survivin Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 238000003825 pressing Methods 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
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
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/018—Audio watermarking, i.e. embedding inaudible data in the audio signal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/68—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/683—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/632—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/635—Filtering based on additional data, e.g. user or group profiles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
- G06F16/638—Presentation of query results
-
- 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/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
- G10L25/54—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 for retrieval
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Acoustics & Sound (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Telephonic Communication Services (AREA)
Abstract
描述音频匹配技术,其根据捕获的音频信号生成音频指纹。根据捕获的音频生成粗指纹和精细指纹。粗指纹用来与存储在数据库中的一组粗指纹进行匹配以识别可能匹配的数据库条目的子集。然后,精细指纹用来执行与和可能匹配的数据库条目的子集相关联的精细指纹的详细比较以发现捕获的音频信号的匹配。
Description
技术领域
本发明涉及用于音频匹配的方法和设备。本发明具有与音频匹配系统特殊而非独有的关联,其中,便携式用户装置(如,平板电脑或移动电话)能够捕获声音,然后捕获的声音能够通过匹配过程识别。
背景技术
有一些已知的音频识别技术,包括:
-主动音频识别,其中,将水印编码在音频信号中,该水印能够在之后被提取以识别音频信号,
-被动音频识别,其中,对音频信号进行采样,且采样音频用来识别来自音频样本数据库的音频,和
-混合音频识别,其组合主动技术和被动技术。
申请人已经提出了一些不同的主动音频识别技术,且在例如WO2008/145994、WO2009/144470和WO02/45273中对这些技术进行了描述。所有这些技术依赖于以隐写方式隐藏音频内的待识别的数据,稍后通过用户装置对数据进行恢复。尤其在通过麦克风拾取而非直接通过广播信道电气地获得音频时,这些系统工作良好。如在这些较早专利申请中讨论的,有一些对这些系统的使用,包括听众调查和与广播媒体的用户交互。然而,为了起作用,必须在广播之前(或在此期间)提供对广播媒体的访问以允许将水印隐藏在音频中。这常常是不可能的。
被动音频识别技术不需要隐藏水印,因此,理论上,该技术能够用来识别任何音频样本。然而,被动音频识别技术具有以下缺点:他们需要在采样音频和大的音频样本数据库之间进行较严格的比较。进一步地,当通过用户的装置的麦克风捕获音频时,与原始音频相比,被捕获的音频可能相对嘈杂,且这能够容易地导致识别结果出现误差。一种用于被动地匹配音频的常用技术是创建捕获的声音的声学“指纹”,然后将该指纹与数据库中的音频信号的对应指纹进行比较。该指纹尝试捕获音频信号的重要的声学特征,这有助于降低匹配音频样本与数据库中的音频的负担。然而,这些指纹识别系统仍需要大量处理以能够比较查询指纹与数据库中的指纹,并且该处理负担随着创建越来越多的媒体内容而继续增长。需要降低该处理负担的技术。
在开发其基于指纹的音频识别系统时,发明人还设计了一种用于生成音频指纹的技术,其对噪声和其它干扰是鲁棒的且更容易在不同音频样本的指纹之间进行区分。
发明内容
根据一个方面,本发明提供一种音频匹配系统,包括:用于捕获音频信号的装置(其可以是麦克风、天线或中央处理单元);用于处理捕获的音频信号以生成表示捕获的音频信号的精细查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于生成表示捕获的音频信号的粗查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);包括多个数据库条目的音频数据库,每个条目与音频内容相关联,且每个条目包括:i)表示相关联的音频内容的精细数据库声学指纹;和ii)与相关联的音频内容相关的信息;用于将粗查询声学指纹和与所述多个数据库条目相关联的粗数据库声学指纹进行匹配以识别可能匹配的数据库条目的子集的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于将精细查询声学指纹和在所述可能匹配的数据库条目的子集中的数据库条目的精细数据库声学指纹进行匹配以识别匹配数据库条目的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);和用于输出包括识别的匹配数据库条目的信息的匹配响应的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块)。以此方式,使用粗指纹识别一个或多个可能匹配来完成初始匹配,且然后使用精细查询匹配和精细数据库指纹的子集执行更详细的匹配。发明人已经发现该方法明显加速了匹配过程。进一步地,因为能够从精细指纹生成粗指纹,因此不需要存储附加数据或在不同装置之间或在不同软件组件之间发送附加数据。
每个数据库条目可包括相关联的粗数据库声学指纹,或系统可还包括用于生成与数据库条目相关联的粗数据库声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块)。
在一些实施例中,用于生成粗查询声学指纹的装置被配置成从精细查询声学指纹生成粗查询声学指纹。这同样适用于以下实施例,其中,从相关联的精细声学指纹生成粗数据库声学指纹。通过对精细查询或数据库声学指纹应用一组滤波器(filter),可生成粗查询或数据库声学指纹。通常,精细查询声学指纹包括值的阵列(array of values),且通过对值的阵列的一部分应用来自该组滤波器的滤波器以生成粗查询或数据库声学指纹的值。每个滤波器通常包括多个滤波器系数,且通过利用相应的滤波器系数对所述部分的每个值进行加权且通过对加权的值进行组合来对所述部分应用所述滤波器,以生成粗查询或数据库声学指纹。每个滤波器可应用于阵列的多个部分以生成粗查询或数据库指纹的对应的多个值。响应于对所述精细查询声学指纹应用每个滤波器来生成粗查询或数据库声学指纹的行或列。
通常,精细声学指纹具有比粗声学指纹大的位速率。
音频匹配系统还可包括用于生成捕获的音频信号的光谱图的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块),且其中,用于生成精细查询声学指纹的装置可从光谱图生成精细声学指纹。可以多种方式生成光谱图,包括执行频率变换(如,快速傅里叶变换(FFT)或离散傅里叶变换(DFT))或通过对捕获的音频信号进行小波变换。
在一些实施例中,用于生成精细查询声学指纹的装置被配置成对光谱图应用一组滤波器以生成精细查询指纹。用于生成精细查询声学指纹的装置可对光谱图应用一组滤波器,该组滤波器不同于由生成粗查询声学指纹的装置应用的一组滤波器。用于生成精细查询声学指纹的装置可对光谱图的一部分应用来自该组滤波器的滤波器以生成精细查询声学指纹的值。每个滤波器通常包括多个滤波器系数,且用于生成精细查询声学指纹的装置通过利用相应的滤波器系数对所述部分的每个值进行加权且通过对加权的值进行组合来对所述光谱图的部分应用所述滤波器以生成精细查询声学指纹的值。来自所述该组滤波器的每个滤波器通常被应用于所述光谱图的多个部分以生成所述精细查询声学指纹的对应的多个值。可响应于对所述光谱图应用每个滤波器来生成所述精细查询声学指纹的行或列。在一些实施例中,用于生成所述细查询声学指纹的装置被配置成对所述精细查询声学指纹的所述行或列进行排序,使得相似的行或列彼此相邻,所述行或列通过对所述光谱图应用所述该组滤波器生成。例如,用于生成所述精细查询声学指纹的装置可对所述精细查询声学指纹的所述行或列进行排序,以增加所述精细查询声学指纹的相邻行或列之间的相干性。每个滤波器可具有相关联的偏移,其限定所述滤波器应用至的所述光谱图的部分或所述精细查询声学指纹的部分。
本发明还提供由一个或多个处理器执行的音频匹配方法,所述方法包括:捕获音频信号;处理捕获的音频信号以生成表示所述捕获的音频信号的精细查询声学指纹;生成表示所述捕获的音频信号的粗查询声学指纹;将所述粗查询声学指纹和多个数据库条目的粗数据库声学指纹进行匹配以识别可能匹配的数据库条目的子集;将所述精细查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的细数据库声学指纹进行匹配以识别匹配数据库条目;以及输出包括与识别的匹配数据库条目相关的信息的匹配响应。
本发明还提供一种音频匹配系统,包括:包括多个数据库条目的音频数据库,每个条目与音频内容相关联且每个条目:i)包括表示相关联的音频内容并具有第一位速率的第一数据库声学指纹;ii)具有表示相关联的音频内容并具有第二位速率的相关联的第二数据库声学指纹,该第二位速率小于所述第一位速率;和iii)包括与所述相关联的音频内容相关的信息;以及一个或多个处理器(其可以是中央处理单元),其被配置成:捕获音频信号;处理捕获的音频信号以生成第一查询声学指纹,所述第一查询声学指纹表示所述捕获的音频信号且具有所述第一位速率;生成第二查询声学指纹,所述第二查询声学指纹表示所述捕获的音频信号且具有所述第二位速率;将所述第二查询声学指纹和与所述多个数据库条目相关联的所述第二数据库声学指纹进行匹配以识别可能匹配的数据库条目的子集;将所述第一查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的所述第一数据库声学指纹进行匹配以识别匹配数据库条目;以及输出包括识别的匹配数据库条目的信息的匹配响应。每个数据库条目可包括相关联的第二数据库声学指纹,或所述一个或多个处理器可被配置成:从相关联的音频信号的光谱图或从与该数据库条目相关联的第一数据库声学指纹来生成与数据库条目相关联的所述第二数据库声学指纹。
本发明还提供一种音频匹配系统,包括:用户装置、音频匹配服务器和包括多个数据库条目的音频数据库,每个条目与音频内容相关联且每个条目:i)包括表示相关联的音频内容并具有第一位速率的第一数据库声学指纹;ii)具有表示相关联的音频内容并具有第二位速率的相关联的第二数据库声学指纹,该第二位速率小于所述第一位速率;和iii)包括与所述相关联的音频内容相关的信息;其中,所述用户装置具有一个或多个处理器(其可以是中央处理单元),其被配置成:捕获音频信号;处理捕获的音频信号以生成第一查询声学指纹,所述第一查询声学指纹表示所述捕获的音频信号且具有所述第一位速率;其中,所述音频匹配服务器具有一个或多个处理器(其可以是中央处理单元);其中,所述用户装置的所述一个或多个处理器或所述音频匹配服务器的所述一个或多个处理器被配置成:生成第二查询声学指纹,所述第二查询声学指纹表示所述捕获的音频信号且具有所述第二位速率;其中,所述音频匹配服务器的所述一个或多个处理器被配置成:将所述第二查询声学指纹和与所述多个数据库条目相关联的所述第二数据库声学指纹进行匹配以识别可能匹配的数据库条目的子集;将所述第一查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的所述第一数据库声学指纹进行匹配以识别匹配数据库条目;以及输出包括识别的匹配数据库条目的信息的匹配响应。
本发明还提供一种用于音频匹配系统的用户装置,所述用户装置包括:用于捕获音频信号的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于处理捕获的音频信号以生成表示所述捕获的音频信号的精细查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于生成表示所述捕获的音频信号的粗查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于将所述粗查询声学指纹和所述精细查询声学指纹输出至音频匹配服务器的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);和用于接收包括与捕获的音频相关的信息的匹配响应的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块)。
本发明还提供一种用于音频匹配系统的音频匹配服务器,所述音频匹配服务器包括:用于接收表示捕获的音频信号的精细查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于接收或生成表示捕获的音频信号的粗查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于将所述粗查询声学指纹和与多个数据库条目相关联的粗数据库声学指纹进行匹配以识别可能匹配的数据库条目的子集的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于将所述精细查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的精细数据库声学指纹进行匹配以识别匹配数据库条目的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);和用于输出包括于所述捕获的音频相关的信息的匹配响应的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块)。
本发明还提供一种识别用于生成声学指纹的优化组的滤波器的方法,所述方法包括:i)提供包括多个音频样本的一个或多个数据库,所述多个音频样本包括NM个匹配对的音频样本和NN个非匹配对的音频样本,每个匹配对的音频样本包括原始音频样本和相同原始音频信号的失真版本,且每个非匹配对的音频样本包括原始音频样本和不同原始音频信号的版本;ii)确定所述一个或多个数据库中的每个音频样本的光谱图;iii)对每个光谱图应用Nf个候选滤波器中的每个,并二值化结果以生成多个二进制比特的向量,每个二进制比特的向量与一个候选滤波器和一个音频样本相关联;iv)比较与当前滤波器的选中的匹配对的音频样本相关联的向量中的比特,以确定所述当前滤波器和所述选中的匹配对的音频样本的比特误码率信息;v)针对每个匹配对的音频样本重复步骤iv)以确定在步骤iv)中确定的针对当前滤波器的比特误码率信息的匹配平均值和方差信息;vi)比较与当前滤波器的选中的非匹配对的音频样本相关联的向量中的比特,以确定所述当前滤波器和所述选中的非匹配对的音频样本的比特误码率信息;vii)针对每个非匹配对的音频样本重复步骤vi)以确定在步骤vi)中确定的针对当前滤波器的比特误码率信息的非匹配平均值和方差信息;viii)针对每个候选滤波器重复步骤iv)至vii)以确定每个候选滤波器的匹配平均值和方差信息以及非匹配平均值和方差信息;以及ix)使用每个候选滤波器的确定的匹配平均值和方差信息以及非匹配平均值和方差信息来确定所述候选滤波器的子集作为用于生成声学指纹的所述优化组的滤波器。
确定所述优化组的滤波器可使用每个候选滤波器的确定的匹配平均值和方差信息以及非匹配平均值和方差信息来最小化误报率或最小化漏报率或二者的某一组合。
所述方法可还包括使用确定的平均值和方差信息确定多个对的滤波器中的每个的协方差信息;且其中,所述确定用于生成声学指纹的所述优化组的滤波器使用确定的匹配平均值和方差信息以及非匹配平均值和方差信息和所述协方差信息。在一些实施例中,确定所述优化组的滤波器包括使用动态编程优化技术识别所述优化组的滤波器。
本发明还提供一种识别用于生成声学指纹的优化组的滤波器的设备,所述设备包括:包括多个音频样本的一个或多个数据库,所述多个音频样本包括NM个匹配对的音频样本和NN个非匹配对的音频样本,每个匹配对的音频样本包括原始音频样本和相同原始音频信号的失真版本,且每个非匹配对的音频样本包括原始音频样本和不同原始音频信号的版本;和一个或多个处理器(其可以是中央处理单元),其被配置成:i)确定所述一个或多个数据库中的每个音频样本的光谱图;ii)对每个光谱图应用Nf个候选滤波器中的每个,并二值化结果以生成多个二进制比特的向量,每个二进制比特的向量与一个候选滤波器和一个音频样本相关联;iii)比较与当前滤波器的选中的匹配对的音频样本相关联的向量中的比特以确定所述当前滤波器和所述选中的匹配对的音频样本的比特误码率信息;iv)针对每个匹配对的音频样本重复iii)以确定在步骤iii)中确定的针对当前滤波器的比特误码率信息的匹配平均值和方差信息;v)比较与当前滤波器的选中的非匹配对的音频样本相关联的向量中的比特,以确定所述当前滤波器和所述选中的非匹配对的音频样本的比特误码率信息;vi)针对每个非匹配对的音频样本重复v),以确定在v)中确定的针对当前滤波器的比特误码率信息的非匹配平均值和方差信息;vii)针对每个候选滤波器重复iii)至vi)以确定每个候选滤波器的匹配平均值和方差信息以及非匹配平均值和方差信息;以及viii)使用每个候选滤波器的确定的匹配平均值和方差信息以及非匹配平均值和方差信息来确定所述候选滤波器的子集作为用于生成声学指纹的所述优化组的滤波器。
本发明还提供一种用于音频匹配系统的用户装置,所述用户装置包括:用于捕获音频信号的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于使用上述方法确定的一组优化滤波器处理所述捕获的音频信号以生成表示所述捕获的音频信号的查询声学指纹的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);用于将所述查询声学指纹输出至音频匹配服务器的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块);和用于接收包括与所述捕获的音频相关的信息的匹配响应的装置(其可以是由一个或多个中央处理单元运行的硬件电路或软件模块)。
本发明还提供计算机程序产品,其包括计算机可实现指令以使可编程计算机装置执行所有上述方法步骤或被配置为上述设备。
附图说明
本发明的这些和其他方面将根据参考附图描述的示例性实施例的以下具体实施方式变得明显,其中:
图1是说明音频匹配系统的主要组件的框图;
图2是说明形成图1的音频匹配系统的一部分的移动电话的主要组件的框图;
图3是说明在图2中示出的移动电话上运行的应用软件的主要功能组件的功能框图;
图4说明形成图3中示出的应用软件的一部分的频率分析单元的操作,且说明其中捕获的音频信号被分成连续帧的方式,该连续帧经频率分析以生成音频信号的光谱图;
图5a说明多个基本滤波器,其由指纹生成单元用来从光谱图生成指纹;
图5b说明由频率分析单元生成的光谱图和其中将滤波器应用到光谱图的方式;
图5c和图5d说明以下方式,其中,通过指纹生成单元将滤波器应用到光谱图以生成通过将来自光谱图的被选择的值与滤波器的系数组合而获得的组合值的向量;
图5e说明以下方式,其中,在生成指纹时,由指纹生成单元对组合值的向量进行二值化;
图5f图示说明由指纹生成单元通过将第一组滤波器应用到光谱图且通过序连(concatenating)得到的二进制向量生成的指纹以形成2d声学指纹,而生成的指纹;
图6说明常规指纹和由图1的移动电话通过以特定排序序连二进制向量以使指纹中的彼此相似的邻近二进制向量的拟然(likelihood)最大化而生成的指纹;
图7是说明形成图1中所示的系统的一部分的音频匹配服务器5的主要组件的框图;
图8a、图8b、图8c和图8d说明以下方式,其中,形成图7中示出的服务器的一部分的粗指纹生成单元根据移动电话生成的精细查询指纹生成粗查询指纹;
图9说明在形成图1中所示的音频匹配系统的一部分的数据库内的条目中包含的信息;
图10a说明以下方式,其中,形成图7中所示的服务器的一部分的粗指纹匹配单元将粗查询指纹与具有在图9中说明的数据库中存储的粗指纹进行匹配,以识别数据库条目的可以与粗查询指纹匹配的子集;
图10b说明在粗查询指纹与粗数据库指纹之间不存在匹配时由粗指纹匹配单元获得的结果;
图10c说明在粗查询指纹与粗数据库指纹之间存在匹配时由粗指纹匹配单元获得的结果;
图11说明以下方式,其中,形成图7中示出的服务器的一部分的精细指纹匹配单元将精细查询指纹与在用于由粗指纹匹配单元识别的数据库条目的子集的数据库内存储的精细指纹进行匹配,以识别与精细查询指纹最佳匹配的数据库条目;
图12a和图12b说明训练过程的一部分,其用来确定第一组优化滤波器,该第一组优化滤波器用来从光谱图生成精细指纹;
图13a说明用于匹配对的训练音频样本和非匹配对的训练音频样本的滤波器获得的分离的分布;
图13b说明用于匹配对的训练音频样本和非匹配对的训练音频样本的滤波器获得的重叠的分布;
图14说明用于识别通过格子的最佳路径的节点格子和路径传播过程,以识别通过格子的最佳路径;和
图15a和图15b说明训练过程的一部分,其用来确定第二组优化滤波器,该第二组优化滤波器用来从精细指纹生成粗指纹。
具体实施方式
综述
图1是说明体现本发明的音频匹配系统的主要组件的框图。系统依赖于具有能够捕获声源3(如,电视3-1、收音机3-2或现场表演等)生成的声音2的用户装置1(在此情况下,为移动电话)的用户。用户装置1处理捕获的声音2并生成表示捕获的声音的声学指纹。在以下说明中,为了便于说明,这些声学指纹将被简称为指纹。生成指纹的方式将在下面更详细地描述。然后,用户装置1经由基站7和远程通信网络9或经由接入点11和计算机网络13(如,互联网)将生成的指纹作为查询发送到远程音频匹配服务器5。在该实施例中,响应于接收到查询指纹,音频匹配服务器5处理查询指纹以生成粗查询指纹,然后服务器使用该粗查询指纹以搜索数据库15内可能匹配的条目。相比于接收到的查询指纹,粗指纹具有较低分辨率或位速率。该使用粗查询指纹的第一搜索将识别数据库15内的可能匹配的条目的子集。然后,音频匹配服务器5将从用户装置1接收的较高分辨率(或“精细”)的查询指纹与第一搜索识别的条目的子集进行比较,以识别与精细查询指纹最类似的数据库条目。然后,音频匹配服务器5将从数据库15中的匹配条目中检索的信息输出至用户装置1。各种不同信息可被返回,如,由用户装置1捕获的音频的识别信息;艺术家信息;相关内容(如,来自相同艺术家的其他内容);以及甚至计算机链接到连接到计算机网络13的其他服务器上存储的内容。然后,用户装置1例如经由用户装置的显示器17将返回信息输出至用户。示例为以下情况:音频匹配过程识别观看者正在观看的广告或TV节目且然后向用户呈现相关内容。代替用户装置1或除了用户装置1之外,从数据库15检索的信息可被提供至第三方。这在听众调查应用中可以是有用的,其中,音频匹配过程的目的是识别用户正在收听或正在观看的电视或收音机节目;其信息然后经由计算机网络13被发送给第三方听众调查服务器19。
现在将给出上述音频匹配系统的主要部件的更详细的描述。
用户移动电话
图2是说明在该实施例中使用的用户的移动电话的主要组件的框图。如图所示,移动电话1包括麦克风23,其用于接收声学信号2(如,电视3-1或收音机3-2输出的声音)且用于将这些声学信号转换成电等效信号。来自麦克风23的电信号然后由滤波器51滤波以去除那些通常在200Hz至20kHz的频带外的不想要的频率。滤波后的音频然后由模数转换器53数字化,该模数转换器53通常以24kHz或48kHz的采样频率对滤波后的音频进行采样并通过16比特数字值表示每个样本。数字化的音频流(D(t))然后被输入至处理器63(其可以包括一个或多个中央处理单元)。
在进行语音呼叫时,处理器63压缩接收到的音频并然后将其传递给RF处理单元57,RF处理单元57将压缩的音频数据调制到一个或多个RF载波信号上用于经由天线27发送至基站7。类似地,经由天线27接收的压缩的音频信号被供应至RF处理单元57,RF处理单元57解调接收到的RF信号以从(一个或多个)RF载波信号中恢复压缩的音频数据,然后将该压缩的音频数据传递到处理器63来对其进行解压缩。再生的音频样本然后经由数模转换器59和放大器61被输出至扬声器25。
如图2中所示,由存储器65中存储的软件控制处理器63。软件包括操作系统软件67(用于控制移动电话1的常规操作)、用于访问互联网的浏览器68和用于向移动电话1提供附加功能的应用软件69。在该实施例中,应用软件69是音频匹配系统的一部分且使移动电话捕获声音2,以用于识别目的。应用软件69还生成上述精细指纹,精细指纹作为查询被发送至音频匹配服务器5。应用软件69还响应于从音频匹配服务器5接收回的数据-例如,通过在显示器17上向用户输出信息;或通过使用从音频匹配服务器5返回的链接从另一服务器检索信息。
应用软件-频率分析
图3是说明在该实施例中使用的应用软件69的主要处理功能的框图。如图所示,应用软件69从A/D转换器53接收作为输入的采样的音频信号(D(t))。该采样的音频被存储在音频缓冲器32中。音频缓冲器32中的音频样本由频率分析单元34处理,频率分析单元34处理音频缓冲器32中的音频样本以生成音频信号(D(t))的光谱图35,音频信号(D(t))的光谱图35存储在光谱图缓冲器37中。光谱图35是音频信号(D(t))的时间和频率表示并说明音频信号(D(t))的频率内容在音频信号的持续时间上随时间变化的方式。通过从引入的音频信号D(t)提取音频样本的帧并确定每帧中的音频信号的频率内容(即,呈现什么频率以及以何种幅值呈现),频率分析单元34建立光谱图35。具体地,如图4所示,输入音频信号D(t)被分成重叠帧39以允许对每帧中的音频样本进行“短时”谱分析-这在音频处理领域中是标准的。通常,样本的帧39每10微秒至20微秒被提取一次,且帧39可以是重叠的(如所述的)或非重叠的。通常,频率分析单元34与将引入的样本写入至音频缓冲器32并行地操作。换句话说,一旦音频样本的第一帧(f1)被写入音频缓冲器32,频率分析单元34就能够开始其分析,且在预定时间后或在由麦克风23捕获的音频片段结束处,频率分析单元34停止其分析。
如本领域总所周知的,窗函数(如,Hamming窗)通常用来从引入的音频信号(D(t))提取样本的帧39,以减少提取引入的失真。一旦已经提取了样本的帧39,频率分析单元34就对音频样本执行频率分析过程以确定感兴趣的限定的频带内的频率内容,该限定的频带通常是滤波器51的通带的一部分。在该实施例中,该感兴趣的频带限于频带475Hz至2.52kHz。当然可使用其他频带。
本领域技术人员将理解的是,能够以多种不同方式完成频率分析单元34执行的频率分析过程,如,通过使用快速傅里叶变换(FFT)或离散余弦变换(DCT)或通过使用小波变换或者甚至通过使用滤波器组的阵列。在优选实施例中,使用小波变换。对于音频样本的每个帧39,该频率分析将生成数字向量-表示感兴趣的限定的频带内的(如,475Hz至2.52kHz)频率子带的数量(K)中的每个的频率内容(幅值)。因此,如图4所示,第一帧f1的频率分析导致生成数字向量f1 1、f1 2、f1 3…f1 K;其中,数字f1 1表示第一帧中的音频样本的第一频率子带中的频率内容、f1 2表示第一帧中的音频样本的第二频率子带中的频率内容、f1 3表示第一帧中的音频样本的第三频率子带中的频率内容等。所考虑的子带的数量(即,K的数量)取决于处理器63的可用处理能力和提取有意义的(可区分的)指纹所需的频率分辨率。发明人已经发现,在25与50子带之间的K值产生约2kHz宽的感兴趣的频带的好的结果。类似地,第二帧f2的频率分析导致生成数字向量f2 1、f2 2、f2 3…f2 K;其中,数字f2 1表示第二帧中的音频样本的第一频率子带中的频率内容、f2 2表示第二帧中的音频样本的第二频率子带中的频率内容、f2 3表示第二帧中的音频样本的第三频率子带中的频率内容等。
如图4所示,通过序连从音频信号D(t)提取的一系列帧39生成的向量,形成光谱图35。所提取的帧的数量(且因此为光谱图35的大小(L))取决于引入的音频片段的持续时间。通常,将生成对应于音频的几秒值的光谱图。如果音频片段太短,则更有可能的是,所得到的指纹将与数据库15中的多个条目匹配,且如果其太长,则将增加音频匹配服务器5将指纹与数据库15中的条目进行匹配所需的计算。例如,在8kHz的音频采样率的情况下,且如果每个帧39具有1024个音频样本且其中每128个音频样本提取一次帧39,则八秒的音频片段将导致光谱图35的大小为L=500。
因此生成的光谱图实际上为表示音频片段的值的KxL矩阵。矩阵的行表示不同频率子带,且不同列表示音频片段内的不同点。光谱图中位置(i,j)处的单独的值对应于时刻j处在子带i中的频率分量的幅值。当然,可以以转置方式书写矩阵,其中,列表示频率子带且行表示时间点。因此,对该文件中的行和列的引用是可互换的。
应用软件-指纹生成
返回图3,一旦光谱图35已经被计算且存储在光谱图缓冲器37中,则指纹生成单元41处理光谱图35以生成指纹43。通过将第一优化组的滤波器45应用到光谱图35并对该结果二值化,指纹生成单元41生成指纹43。存在许多不同的可能的滤波器组合,其能够用来生成指纹,且通过优化过程已经发现第一优化组的滤波器45。稍后将描述执行该优化过程的方式。现在将参考图5a至图5f详细解释该第一优化组的滤波器45用来生成指纹43的方式。
图5a说明五个不同类型的滤波器47-1、47-2、47-3、47-4和47-5,其能够应用于光谱图35的不同部分。每个滤波器47具有限定滤波器的大小的高度(H)和宽度(W);和限定滤波器47将应用至的光谱图35的频率子带的偏移(O)。在该实施例中,每个滤波器47的系数和为零。因此,例如,能够根据以下系数矩阵形成滤波器类型47-1:
并且能够根据以下系数矩阵形成滤波器类型47-2:
[-1 2 -1]
图5b说明将滤波器47(在此情况下,为滤波器47-1)在距光谱图的底部的给定偏移处应用于光谱图35。如箭头49所表示的,滤波器47跨越光谱图35的时间轴步进,且在每个步进处,滤波器47的系数用来在光谱图35的相关部分处执行各频率值的加权组合。在每个步进处组合的频率值的数量取决于滤波器47的大小(W,H),且他们如何组合取决于滤波器47的系数。取决于来自每个步进的组合值大于零还是小于零,所述组合值被量化(或“二值化”)为“1”和“0”,然后被写入组合值向量。
在图5c至图5e中更详细的说明该过程。图5c说明示例滤波器(即,类型47-1的滤波器)的应用,该滤波器大小为2乘2且偏移为10。因此,滤波器47-1被应用至光谱图35中距光谱图35的底部向上为10行的值(当然,能够根据光谱图35内的任何点限定偏移)。在第一步进中,通过将在限定偏移处来自光谱图35的第一块32的各幅度值与滤波器47-1中的对应的系数相乘并相加到一起来对第一块32的各幅度值进行组合。因此,如图5c所示,在第一步进中,幅度值6乘以滤波器系数-1;幅度值4乘以滤波器系数1;幅度值3乘以滤波器系数1以及幅度值5乘以滤波器系数-1。将所得的四个数相加在一起以提供组合结果-4。将该值写入组合值的向量42中的第一元素。如图5d所示,滤波器47-1然后沿着一个时间步长步进,且以类似方式与来自光谱图35的下一块34的各幅度值进行组合。如图所示,该组合得到值2,其被写入向量42的下一元素。重复该过程直到滤波器47-1已经跨越光谱图35的长度(时间轴)步进且所得向量42将因此具有对应于光谱图35的时间长度的L个元素。
该向量42中的各组合值将为正数和负数。为了简化生成的指纹43(且因此减少表示指纹所需的数据),这些值被量化为二进制值-例如,通过将0以上的所有值设置为二进制值“1”,且将零以下的所有值设置为二进制值“0”,如图5e所示。所得的二值化向量44将形成指纹43的一个行(如图5f所示)。本领域技术人员将理解的是,在每个组合值被生成时能够对其执行该二值化过程并将二值化结果直接写入二值化向量44,而不是首先生成中间向量42。
如上所述,通过对光谱图35应用这些滤波器47中的第一优化组45,生成指纹43。该第一组45中的每个不同滤波器47将产生不同行的最终指纹43。因此,将通过对光谱图35应用第一组滤波器45产生的不同二进制向量44序连成矩阵,形成最终输出2D指纹43。序连二进制向量44的排序被提前确定,且相同的第一组滤波器45和排序用来生成数据库15中的条目的对应指纹,使得音频匹配服务器5能够比较已经以相同方式生成的指纹。在该实施例中,第一组滤波器45包括三十二个不同滤波器,且因此,生成的指纹将为32乘以L的二进制值矩阵。选择三十二个滤波器,因为这允许32位或64位处理器(其可用来例如执行音频匹配服务器5中的指纹匹配过程)对指纹进行方便处理。然而,本领域技术人员将理解,可在第一组45中使用任何数量的滤波器。
进一步地,如上,指纹43的行和列是可互换的。因此,二进制向量44可用来形成指纹43的列,而不是形成指纹43的行。在此情况下,指纹将为L乘32的二进制值矩阵。只要执行相同过程以生成音频数据库15中的条目的指纹,指纹43的取向并不重要。
指纹行/列排序
如上所述,通过对光谱图35应用优化组45中的滤波器47生成的二进制向量44以提前限定的排顺被序连在一起。通常,该排序不重要-只要在生成数据库15中的条目的指纹时应用相同排序。这意味着在常规指纹中,在整个指纹中,多个1和多个0将出现随机分布,如,例如,如图6中所示的指纹43-1。然而,在该实施例中,以特定方式选择排序,具体地,以使指纹43中的邻近二进制向量44(即,邻近的行或列)彼此类似的拟然最大化(或至少增加)的方式。如将在稍后进一步详细解释的,在训练阶段确定该特定排序,在训练阶段中,针对大量音频样本生成指纹且以下排序被发现:使指纹43中相似的邻近行/列的拟然最大化。该特定排序在应用软件69被限定并控制指纹生成单元41序连二进制向量44以形成指纹43的方式。图6还示出使用上述特定排序生成的第二示例指纹43-2。可以看出,指纹43-2在外观上比指纹43-1更不随机,因为指纹43-2中的大多数邻近比特具有相同值且因此聚集在一起以限定相同二进制值的较大的岛。如将在稍后解释的,重要的是,远程音频服务器5能够从指纹43生成粗指纹,这将减少找到数据库15中的匹配条目的处理负担。
本领域技术人员将理解的是,因为二进制向量44的排序是预先已知的,单个二值化值可直接写入指纹43的相关部分中,而不先写入二进制向量44。已经给出上述解释以便于理解生成指纹43的方式。
应用软件-匹配响应
返回图3,一旦已经生成指纹43,应用软件69将指纹43传递到处理器63,以发送到音频匹配服务器5。因为应用软件69经设计以与音频匹配服务器5一起工作,应用软件69中已经存储了音频匹配服务器5的地址信息,使得能够经由远程通信网络9或经由计算机网络13将指纹发送到音频匹配服务器5。应用软件69将该地址信息和生成的指纹43传递到处理器63,处理器63请求将指纹43发送到远程音频匹配服务器5。处理器63然后将指纹43发送到音频匹配服务器5并等候响应消息。在匹配响应消息46从音频匹配服务器5(经由远程通信网络9或经由计算机网络13)返回时,处理器63将接收匹配响应消息46并将其传递回应用软件69。然后,基于匹配响应消息46的内容,应用软件69采取适当动作。例如,如果匹配响应消息46简单地提供捕获的音频的细节,如,歌曲名称、艺术家等,则应用软件69可如经由显示器17或扬声器25将该信息输出至用户。如果匹配响应消息46包括用于涉及捕获的音频的进一步的信息或内容的链接,则应用软件69可提醒用户:用户是否希望从提供的链接检索信息或内容。响应于用户同意检索(例如,通过按压键盘31上的键33),应用软件69可从链接本身检索信息或内容,或者其可要求浏览器软件68检索信息或内容(检索的信息或内容然后输出给用户,例如,在显示器17上)。如果应用软件69形成听众调查应用的一部分,则应用软件69可简单地整理关于已经被捕获的音频的信息(如,正在观看的TV频道和节目)且然后将其与拥有电话的用户的标识符(可以仅是电话1的标识符)一起发送至远程听众调查服务器19。如果匹配响应消息46为“无”报告-指示未找到匹配,则应用软件69可将该信息输出给用户。
音频匹配服务器
图7是在该实施例中使用的音频匹配服务器5的主要组件的框图。如图所示,音频匹配服务器5包括处理器(其可以是一个或多个中央处理单元)201,处理器201经由网络接口205和远程通信网络9或计算机网络13与用户装置1通信。处理器201还经由数据库接口207与数据库1543通信。实际上,接口205和接口207可由单个物理接口(如,LAN接口等)形成。
在该实施例中,通过存储在存储器209中的软件指令控制处理器201(虽然在其他实施例中,处理器201可由一个或多个专用硬件处理器(如,专用集成电路)形成)。软件指令包括:操作系统211,其控制音频匹配服务器5的整体操作;通信控制模块213,其控制音频匹配服务器5与用户装置1和数据库15之间的通信;粗指纹生成单元215,其根据从用户装置1接收的查询指纹43生成粗指纹;粗指纹匹配单元217,其将粗指纹生成单元215生成的粗指纹与存储在数据库15中的粗指纹进行匹配;精细指纹匹配单元219,其将从用户装置1接收的指纹43与数据库15中的条目的子集的精细指纹进行匹配以识别匹配的条目;和匹配响应报告单元220,其在匹配响应消息46中将匹配结果报告给用户装置1。如将在下面更详细解释的,粗指纹生成单元215使用存储在存储器209中的第二组优化滤波器221生成粗指纹。
如上所述,音频匹配服务器5在对应于从用户装置1接收的查询的粗/精细指纹与在数据库15内存储的粗/精细指纹之间执行匹配操作。为了区分这些不同指纹,从用户装置1接收的指纹43将被称为“精细查询指纹”43且根据其生成的粗指纹将被称为“粗查询指纹”。数据库15中存储的指纹将被称为“粗数据库指纹”和“精细数据库指纹”。
粗指纹生成单元
如上所述,在该实施例中,粗指纹生成单元215根据从用户装置1接收的精细查询指纹43生成粗查询指纹。这是有利的,因为其意味着用户装置1不需要将例如音频片段的光谱图35发送到音频匹配服务器5以生成粗查询指纹。
图8说明由粗指纹生成单元215使用以生成粗查询指纹的过程。该过程与用于生成精细查询指纹的过程(参考图5在上面描述的)非常类似,除了使用第二(不同)组优化滤波器221,且在此情况下,该第二组221的滤波器47应用于精细查询指纹43而不应用于光谱图35。此外,代替该第二组优化滤波器221中的每个滤波器一次一个时间点在精细查询指纹43上步进,在每个阶段跳过几个时间点,以减小粗查询指纹的大小。在该实施例中,在每个阶段之间,滤波器跳过10个时间点,且第二组滤波器221中的滤波器数量保持与第一组45的滤波器数量(=32)相同。结果是紧密(粗)的指纹,其允许对数据库15中的条目进行较快的初始搜索。当然,通过减少在第二组221中使用的滤波器47的数量(相比于在第一组45中使用的滤波器的数量),可使粗指纹更紧密。因此,在上述示例中,如果精细查询指纹具有捕获的音频信号的每秒2000比特的位速率(或分辨率),则粗查询指纹将具有捕获的音频信号的每秒200比特的位速率(或分辨率)。
图8a示出以矩阵格式写入的精细查询指纹43,且其中,二进制“0”被写为值-1。这确保滤波过程精确地组合精细查询指纹43的将与滤波器组合的不同部分。在此示例中,被应用于精细查询指纹43的滤波器47是类型47-2的滤波器,其具有高度2和宽度3。滤波器的宽度(时间维度)通常比这个值大,且值3是为了简化说明而选择的。滤波器宽度通常为精细指纹与粗指纹之间的时间抽取率的大约两倍。因此,如果粗指纹数据率是精细指纹的数据率的1/10,则抽取率为10且通常滤波器宽度会为20,尽管每个滤波器能够具有不同宽度。如果宽度小于抽取率(如,在此示例中为4),则10个精细指纹值中的6个不会对粗指纹值有影响。滤波器的偏移为8,这意味着滤波器47被应用到精细查询指纹43中距底部8行的元素。滤波器被应用到精细查询指纹43中的值的第一块301(对应于时间点t=1)。该块301的大小与滤波器47的大小匹配,使得块301中的每个值具有与其相乘的对应的滤波器系数,如图所示。相乘之后的值相加以产生值2,其被写在向量303的第一元素中。在下一步进,沿着精细查询指纹43的时间轴线移动滤波器-但该时间跳过精细查询指纹43中的一些元素。在此示例中,沿10个元素(时间点)跳过滤波器;这意味着生成的粗查询指纹将具有精细查询指纹43的时间长度的1/10。
图8b说明精细查询指纹43中的下一块305的值(在时刻t=11)与滤波器系数以相同的方式被组合以生成值-2,其被写入向量303中的下一位置。一旦已经将滤波器沿着精细查询指纹43步进且已经填充了向量303,向量303就被二值化(如图8c所示)以产生二进制向量307。如上,能够在每个组合值被生成时完成该二值化且然后将该二值化的结果直接写入二进制向量307而不使用向量303(或直接写入粗查询指纹)。产生的二进制向量307将形成粗查询指纹的一行(或一列)。对优化滤波器的第二组221中的所有不同的滤波器47重复相同过程,且序连得到的二进制向量307以形成粗查询指纹309(如图8d中所示)。再者,只要以与用来序连生成的二进制向量相同的排顺来序连二进制向量307以形成粗数据库指纹,则音频匹配服务器5能够在粗查询指纹309与粗数据库指纹之间执行适当的匹配。
发明人已经发现以此方式生成的粗指纹仍是足够与众不同的,以允许其用在数据库15的初始搜索中,以便明显减少不得不与精细查询指纹进行比较的数据库条目的数量。这是由于为生成精细查询指纹而执行的特定排序导致的。该排序意味着精细指纹中存在较大(信息包含)比特模式,且在这些较大比特模式中包含的信息通过生成对应的粗指纹的过程在某种程度上存活(survive)。如果使用更传统的(随机研究的)精细指纹(如,在图6中示出的指纹43-1),则从精细指纹生成粗指纹的以上过程可能导致损失精细指纹中包含的大多数信息。这意味着粗指纹将不是与众不同的,且因此,在其与其他类似的粗指纹比较时,大多数可能被认为是可能匹配。这会使生成粗指纹的目的失败-因为精细查询指纹将还不得不与大量的可能匹配的数据库条目匹配。
粗指纹匹配单元
一旦已经生成粗查询指纹309,粗指纹匹配单元217就比较粗查询指纹309与存储在数据库15中的粗数据库指纹,以识别可能匹配的数据库条目的子集。
图9说明数据库条目320的一般结构。每个条目具有标识符-用于第一条目的DB#1、用于第二条目的DB#2等。如图9所示,数据库15中存在D个条目。取决于应用,值D能够是非常大的。如果音频匹配系统用在类型的服务中,则D可以是一千万至两千万的量级。然而,如果音频匹配系统是经设计以识别用户正在观看的节目和频道的听众调查系统的一部分,则条目的数量(D)将非常小,虽然存储在数据库15中的音频片段(或者至少是表示他们的指纹)将是非常长的。例如,设计用于监控先前30天期间在1000个TV频道上制作的电视广播的系统将包含约720000小时的内容,其在大小上与具有一千万首歌的/>类型的系统等效。
如图9所示,每个条目将通常包括:
音频和/或视频内容321(尽管严格说这不是必要的);
该内容的元数据322(如,歌曲名称、艺术家、TV节目、TV频道、广播时间、导演等);
精细数据库指纹323,其根据内容中的音频以与生成精细查询指纹43相同的方式生成;
内容中的音频的粗数据库指纹325,其根据精细指纹323以与根据精细查询指纹43生成粗查询指纹309相同的方式生成(如上所述);
与音频和/或视频内容相关的链接327和其他信息。
因此,一旦已经生成粗查询指纹309,粗指纹匹配单元217将粗查询指纹309与存储在数据库15的每个条目320中的粗数据库指纹325进行匹配(即,比较);以识别可能匹配的条目的数量。该匹配过程在图10中进行说明。具体地,图10a说明所有粗数据库指纹325。第一数据库条目的粗数据库指纹被标记为325-DB#1、第二数据库条目的粗数据库指纹被标记为325-DB#2、第三数据库条目的粗数据库指纹被标记为325-DB#3等。图10a说明这些粗数据库指纹325具有不同的时间长度。这是因为他们通常从具有不同持续时间的音频内容生成。
图10a还说明将与这些粗数据库指纹325中的每个进行比较的粗查询指纹309。通常(且如图10a所示),粗查询指纹309具有比粗数据库指纹325短得多的持续时间。为了将粗查询指纹309与粗数据库指纹325进行匹配,粗查询指纹309从开始至结束“沿着”较长的粗数据库指纹325“步进”。在每个步进,在粗查询指纹309中的比特和在粗数据库指纹325的对应大小的部分中的比特之间执行逐位比较(bit-wise comparison)。如众所周知的,可使用来自两个指纹的比特的XOR类型的组合来执行该逐位比较,这会导致二者之间比特数差异的计数。因此,该计数表示粗查询指纹309与粗数据库指纹325的当前部分之间的相似性。然后,粗查询指纹309沿着时间轴线步进且与粗数据库指纹325的下一部分以类似的方式进行比较。通常,粗查询指纹309在粗数据库指纹325中一次沿着一个时间点步进。
在该实施例中,逐位比较考虑非匹配比特的百分数。因此,如果不匹配,则期望的非匹配比特的百分数应当为大约50%(或0.5)。如果匹配,则期望的非匹配比特的百分数应当接近零。图10b说明在粗查询指纹309与粗数据库指纹325的任何部分不匹配时该匹配过程的结果;以及图10c说明在粗查询指纹309与粗数据库指纹325的一部分匹配时该匹配过程的结果(在非匹配比特的百分数中通过尖峰326识别)。因此,通过比较计算的百分数与阈值水平(如,10%)确定粗查询指纹309是否与粗数据库指纹325的一部分匹配。因此,如果非匹配比特的百分数降到该阈值以下,则匹配,如果不是,则不匹配。本领域技术人员将理解的是,可替代地使用其他评分标准。
粗查询指纹309与粗数据库指纹325之间比较的比较结果包括数据库条目320列表,其会与粗查询指纹309匹配。在图10a中,可能匹配的条目的列表包括条目DB#10、DB#15、DB#260和DB#500。可选择地,比较结果还可包括定时信息,其识别粗数据库指纹325内的哪个(哪些)部分与粗查询指纹309匹配。因此,例如,在图10c中所示的匹配中,定时信息可指示从由粗数据库指纹325表示的歌曲的开始在大约135秒处发现匹配。如果提供,则该定时信息能够用来进一步缩小精细查询指纹43和对应的精细数据库指纹323之间的比较。
精细指纹匹配单元
从粗指纹匹配单元217获得的比较结果然后被传递到精细指纹匹配单元219,精细指纹匹配单元219使用该信息以限制其在精细查询指纹43与精细数据库指纹323之间进行的匹配操作。具体地,精细指纹匹配单元219使用可能匹配的条目的列表,使得精细指纹比较仅限于在可能匹配的条目的列表中被识别的数据库条目中的精细指纹。进一步地,如果比较结果包括定时信息,该定时信息指示音频内容内的在粗数据库指纹325中发现匹配的时间,则精细指纹匹配单元219使用该定时信息以将精细查询指纹43与对应的精细数据库指纹323之间的比较限制在该定时周围。因此,例如,如果距粗指纹325的开始的135秒处发现匹配,则精细匹配单元219可限制匹配过程,使得精细查询指纹43仅从开始的时间130秒和时间145秒之间与精细数据库指纹的一部分匹配。
图11说明在精细查询指纹43与精细数据库指纹323-DB#10、323-DB#15、323-DB#260和323-DB#500中的每个之间执行的匹配过程(当这种定时信息不可用时)。如箭头313所说明的,匹配过程使精细查询指纹43沿着这些精细数据库指纹中的每个步进,以与使粗查询指纹309沿着粗数据库指纹325步进的相同方式。在每个步进处,在精细查询指纹43与精细数据库指纹323的对应部分之间进行类似的逐位比较以确定非匹配比特的百分数。精细指纹匹配单元219使用确定的非匹配比特的百分数确定是否匹配-再次通过比较确定的非匹配比特的百分数与阈值。如果精细指纹匹配单元219识别单个数据库条目为匹配,则其向匹配响应报告单元220报告匹配数据库条目(例如,DB#260)的标识符。然而,如果精细指纹匹配单元219识别出一个以上的可能匹配,则比较每个可疑的匹配的非匹配比特的百分数以识别哪个数据库条目具有最小非匹配比特的百分数;且然后将该数据库条目作为匹配结果报告给匹配响应报告单元220。另一方面,如果可能匹配的精细数据库指纹中没有一个与精细查询指纹43实际匹配,则精细指纹匹配单元219可将“无”结果返回给匹配响应报告单元220,或者可在精细查询指纹43与由于粗匹配过程的结果导致的从原始精细匹配过程排除的所有其他精细数据库指纹323之间执行完全匹配。
匹配响应报告单元
匹配响应报告单元220接收“无”报告或与精细查询指纹匹配的数据库条目320的标识符。如果接收到“无”报告,则匹配响应报告单元220将“无”响应返回到用户装置1。如果接收到数据库标识符,则匹配响应报告单元220根据对应的数据库条目320检索相关信息。检索的信息可包括来自识别的数据库条目320的存储的元数据322和/或存储的链接327。该信息然后在匹配响应消息46中被返回到用户装置1。
训练
识别第一优化组的滤波器
以上说明描述了使用音频指纹识别捕获的音频的音频匹配系统的操作。为了生成精细指纹43,第一组优化滤波器45被应用于捕获的音频的光谱图35。现在将解释确定该第一组优化滤波器45的方式。在训练程序期间,该过程提前发生。
如上参考图5a所述,在该实施例中,存在能够使用的五个不同类型的滤波器。每个滤波器能够在高度和宽度上变化。在上述解释的示例系统中,光谱图35具有三十二个频率子带,因此高度值为从1至32。在理论上宽度可以是达光谱图35的总长度的任何值时,为了简单起见,还允许宽度具有在1至32之间的值。可以在光谱图35的任意部分处应用每个滤波器47,即,每个滤波器47能够具有在1和31之间的任何偏移值。然而,注意到一些滤波器必须总是具有二的倍数的宽度,且一些必须具有三的倍数的宽度,以确保对称性。此外,偏移值为10的滤波器能够仅具有最大为22的高度。考虑所有这些限制,可能的滤波器总数(Nf)为3x16x8x32+2x10x6x32=16128个滤波器。下述训练过程允许识别一组(组合)优化的滤波器47,而不用考虑每个可能组合(1612832=4x10134个组合)。
图12说明训练过程的一部分。如图所示,该过程使用原始音频片段的数据库351和失真音频片段的数据库353。数据库353中的失真音频片段是数据库351中的原始音频片段的失真版本。失真包括通常通过通信通道(其包括声学通道)发送原始音频片段所遇到的失真。因此,失真版本可表示已经作为声音信号被输出并由用户装置的麦克风拾取之后的音频。如将在下面描述的,训练过程对来自数据库351和数据库353的一组匹配对应用接近16000个可能的滤波器47中的每个且还对来自数据库351和数据库353的一组非匹配对应用接近16000个可能的滤波器47中的每个,并且使用结果以识别将生成与众不同的指纹的优化组的滤波器。
图12a说明训练过程的初始部分,其中,将所考虑的当前滤波器(滤波器F(i))应用于一对匹配的音频片段,且图12b说明相同过程,但是将所考虑的滤波器(F(i))应用于一对非匹配的音频片段。在此情况下,匹配对的音频片段包括来自数据库351的原始音频片段和来自数据库353的该原始音频片段的对应的失真版本;且非匹配对的音频片段包括来自数据库353的原始音频片段和来自数据库353的不同原始音频片段的失真版本。
参考图12a,在步骤s1中,从数据库351读出原始音频片段,且在步骤s3中,从数据库353读出对应的(匹配)失真音频片段。在步骤s5中,确定原始音频片段的光谱图357,且在步骤s7中,确定失真音频片段的光谱图359。以上面参考图4讨论的方式确定这些光谱图。在步骤s9中,将所考虑的当前滤波器(F(i))应用于光谱图357且结果被二值化以生成二进制向量361。类似地,在步骤s11中,将相同滤波器(F(i))应用于光谱图359且结果被二值化以生成二进制向量363。在步骤s13中,在向量361和向量363之间执行逐位比较以确定非匹配比特的数量。能够在两个向量之间使用简单的XOR比较实现该目的。在步骤s15中,确定的非匹配比特的数量由光谱图的长度(L)标准化,以考虑在数据库351和数据库353中存储的匹配对的音频片段的不同长度,以生成有效地限定在匹配对的音频片段之间的非匹配比特的百分数(即,比特误码率)的值BM(i)。
从图12b可以看出,对从数据库351和数据库353所取的非匹配对的音频片段执行非常类似的处理。在步骤s21中,从数据库351读出原始音频片段,且在步骤s23中,从数据库353读出非匹配失真音频片段。如果两个非匹配音频片段具有不同持续时间,则较长片段的持续时间能够被截短以匹配较短片段的持续时间。在步骤s25中,确定原始音频片段的光谱图365,且在步骤s27中,确定非匹配失真音频片段的光谱图367。以上面参考图4讨论的方式确定这些光谱图。在步骤s29中,将所考虑的滤波器(F(i))应用于光谱图365,且结果被二值化以生成二进制向量369。类似地,在步骤s31中,将相同滤波器(F(i))应用于光谱图367,且结果被二值化以生成二进制向量371。在步骤s33中,在向量369和向量371之间执行逐位比较以确定非匹配比特的数量。如上,能够通过在两个向量之间使用简单的XOR比较实现该目的。在步骤s35中,确定的非匹配比特的数量由光谱图的长度(L)标准化,以考虑在数据库351和数据库353中存储的匹配对的音频片段的不同长度,以生成有效地限定用于非匹配对的音频片段的非匹配比特的百分数(即,比特误码率)的值BN(i)。
使用相同滤波器(F(i))对多个(NM-例如,100个)匹配对的音频片段中的每个执行图12a中说明的过程;且使用相同滤波器(F(i))对多个(NN-其还可为100个)非匹配对的音频片段中的每个执行图12b中说明的过程。如果针对BM(i)因此获得的NM值和针对BN(i)因此获得的NN值以直方图绘出,则他们将均展现出以均值和方差为特征的正态分布。如果所考虑的当前滤波器是良好的滤波器候选,则匹配对的分布和非匹配对的分布应当彼此很好地分离,如图13a中示出的示例分布401和示例分布403。分布401是针对匹配对获得的分布,且分布403是针对非匹配对获得的分布。然而,如果所考虑的滤波器是差的候选,则匹配对的分布和非匹配对的分布将靠的更近且可能重叠,如图13b中示出的示例分布405和示例分布407。
不幸的是,不可能仅确定所有16000个可能滤波器的分布且然后挑选具有最佳区分(匹配和非匹配分布之间的间隔以及最小方差等)的那些滤波器,因为滤波器中的一些将有效隔离音频信号中的相同特性特征。即,不同滤波器的许多分布将彼此高度相关。可能通过考虑滤波器分布之间的协方差识别这些相关性并使用优化过程中的该信息找到滤波器的最佳组合。该优化的目的可以是:最小化“误报”(错误地声明一对为“匹配”)的概率(chance of false positives),以及在生成的指纹与数据库指纹匹配时,最小化漏报(错误地声明一对为“非匹配”)的概率(chance of false negatives)。这些是矛盾的要求,因为通常降低误报的概率增加漏报的概率。为了解决这个问题,能够限定一定的误报率(PFP,accept),且然后,在该约束下,能够找到最小化漏报率的优化组的滤波器。
为了计算PFP,accept,注意,从一组滤波器得到的分布是正态分布的和,且因此是正态分布本身。因此,如果匹配对和非匹配对的分布被良好隔开(类似于图13a中示出的),则能够在两个分布之间限定阈值(γ),阈值(γ)能够用来限定一对音频片段是匹配的还是非匹配的。具体地,对于给定的一对音频片段,如果他们之间的比特误码率小于阈值(即,B<γ),则能够假设该对是匹配对;而如果确定的比特误码率高于阈值(即,B>γ),则能够假设该对是非匹配对。
误报率基于非匹配对的比特误码率降到阈值(γ)以下的概率,针对正态分布,其由下式给出:
其中,μN是一对非匹配指纹的平均比特误码率,σN是一对非匹配指纹的比特误码率的标准差,且erfc是标准互补(complimentary)误差函数。
在指纹与指纹的大数据库匹配时,误报的概率取决于数据库(D)的大小且能够近似为:
误报率被设置为接受率。能够反推该公式以得到对应阈值,对应阈值将实现该可接受的误报率:
因此,在给定阈值如上设置的情况下,现在能够通过最小化漏报率来最小化漏报率(从而最大化识别率)。结果为:
其中,μM是一对匹配指纹的平均比特误码率,σM是一对匹配指纹的比特误码率的标准差,μN是一对非匹配指纹的平均比特误码率,σN是一对非匹配指纹的比特误码率的标准差,且erfc是标准互补误差函数。
由于互补误差函数是单调递减函数,因此,最小化漏报率(即,最小化上述函数)等同于最大化互补误差函数的自变量,在此称为第一‘评分’,S(1):
因此,优化过程的目的是用得到最高评分S(1)的聚合(aggregate)参数(μM、μN、σM、σN)找到滤波器组45。
滤波器组45上的这些聚合参数与组45中的各滤波器的各参数相关:
和/>
其中,n是组45中的滤波器数量。聚合方差(标准差的平方)变成属于组45的各滤波器的方差与组45中的滤波器对之间的协方差的组合:
其中,COV(l,k)是滤波器l与滤波器k之间的协方差。
用于匹配的音频片段和非匹配对的音频片段的各滤波器的平均数和方差能够根据参考图12a和图12b在上面讨论的训练过程确定。具体地,针对每个滤波器(i)的NM个匹配对的音频片段的平均比特误码率和NN个非匹配对的音频片段的平均比特误码率能够被确定为:
和/>
且通过下式确定相应的方差:
和/>
此外,能够根据下式确定匹配对的音频片段的在两个滤波器(i和j)之间的协方差值(COVM (i,j)):
并且能够根据下式确定非匹配对的音频片段的在两个滤波器(i和j)之间的协方差值(COVN (i,j)):
这涉及以下值的计算和存储:(μM(i),σM(i))的Nf(所考虑的滤波器的数量,如上所述,其大致为16000)个值;(μN(i),σN(i))的Nf个值;和(主要部分)2(Nf)2个协方差值。根据这些值,然后可能为滤波器的任何组合计算上述评分。
根据该组16000个可能的滤波器计算n个滤波器的每一个组合的该评分是不实际的-组合的数量阻止这样。然而,可以使用动态编程技术将该问题分解为通过节点格子传播的迭代路径搜索问题,并对通过节点格子的路径评分。这意味着能够通过格子找到最佳路径而不必对所有路径进行考虑和评分。
在图14中说明这种格子409。具体地,Nf个滤波器被垂直排序且由格子409的左手列中的相应节点411表示。该列节点411然后被重复n次,使得存在n列节点411,其中,n为要创建的该组滤波器的大小。如上所述,在该实施例中,n被设置为值32,因为这有利于使用32位或64位中央处理单元(CPU)的计算。然后对从左手列中的每个节点到下一列中的每个节点进行连接(边缘),并使用要被最大化的上述评分(S(1))对该连接评分。然后重复相同过程,其中,从第二列到第三列进行连接,且计算新评分。由于通过格子的仅被允许的方向是从左到右,因此,任意列处的最佳评分路径能够用来确定下一列处的最佳评分路径。这意味着不必考虑所有可能的滤波器组合,因为能够迭代地建立最优解。一旦该过程达到右手列,通过格子409的具有最大评分S(1)的路径识别滤波器的最佳组45。例如,具有最大评分S(1)的路径作为图14中以粗体示出的路径415并对其进行说明。该路径在对应于滤波器F(2)的节点处开始,然后遍历对应于滤波器F(3)的节点且然后到达F(1)、F(4)和F(6);且最终在节点F(7)处结束。这些是形成由指纹生成单元41使用的第一优化组45的滤波器中的滤波器47。
使用动态编程技术找到通过格子的最佳路径的优点之一是在路径遍历过程期间能够累计每个路径的评分。具体地,考虑候选路径当前在格子中在列号K处节点q处结束的情况(即,目前已经选择了K个滤波器),其表示一组滤波器l=1,2,…K。在此情况下,注意,通过增加节点r的平均值(μM(r)和μN(r)),能够朝向列K+1处的节点r更新聚合平均值μM和μN:
和/>
其中,μM q和μN q是节点q处的聚合平均值,其组合滤波器l=1,2,…K(即,在列K处),以及μM r和μN r是在节点r处的聚合平均值。类似地,方差(σM)2和(σN)2能够从列K到列K+1更新,如下:
其中,必须考虑节点r处的增加的滤波器和路径中的所有之前的滤波器的协方差。然后,更新的度量能够用来重新计算节点r处的评分S。
本领域技术人员将理解的是,图14中说明的格子409是一种图形表示,其有利于理解将在上述训练过程期间由训练计算机(其可以是专用训练计算机,或者在一些情况下可以是音频匹配服务器5)进行的动态编程计算。将利用训练计算机的存储器内的适当数据结构执行实际计算。然后,所得的滤波器优化组45将被提供给用户装置1使得他们能够生成精细指纹43。还将通过训练计算机(或通过音频匹配服务器5)使用他们以生成精细数据库指纹323。
识别第二优化组的滤波器
如上所述,为了能够根据精细指纹43生成有意义的粗指纹309,精细指纹43的行(或列)不得不被排序使得精细指纹中存在一定程度的相干性-即,旨在产生类似结果的滤波器彼此相邻排序。以此方式,通常彼此相关的滤波器彼此相邻。这得到外观上较不随机的精细指纹43-即,具有相同二进制值的较大区域(如通过图6中示出的指纹43-2说明的)。
如上所述,针对两个滤波器确定的协方差值给出关于两个滤波器之间相关性的信息。因此,根据针对滤波器的优化组45中的n个滤波器计算的协方差值,能够确定滤波器的排序。例如,对n个滤波器的最大协方差值使用反向Cuthill-Mckee排序,能够实现该目标。确定的排序信息还被提供给具有第一优化组45的滤波器的用户装置1。
然后能够应用类似的训练过程以确定第二优化组221的滤波器。该训练过程与上面讨论的训练过程之间的主要差别在于:滤波器被应用于针对匹配的音频片段获得的精细指纹和针对非匹配对的音频片段获得的精细指纹。另外,优化过程具有不同目标。
图15a和图15b说明确定匹配对的音频片段的B(i)M值和非匹配对的音频片段的B(i)N值而执行的处理。如能够通过比较图15和图12所见,在步骤s5、s7、s25和s27中已经计算光谱图后,使用以上第一组优化滤波器45并使用限定如何形成精细指纹的排序信息,分别在步骤s41、s43、s45和s47中确定精细指纹441、443、445和447。然后将测试中的当前滤波器(F(i))应用于精细指纹,且如前执行逐位比较以确定BM(i)和BN(i)。
用于确定第二组221滤波器的优化目标是找到将导致可能匹配的数据库条目的最小子集的滤波器,同时不排除数据库15中的正确条目-因此这将减少精细指纹43的所需的比较数量。必须更详细地搜索的数据库条目(即,将在精细指纹之间执行比较的那些数据库条目)是降至某一第二阈值γ(2)(其将与上面使用的γ阈值不同)之下的那些数据库条目。数据库条目的阈值以下的期望数量(Nr)由下式给出:
其中所有参数表示粗指纹而非精细指纹-如由上标(2)表示的。为了量化Nr,必须设置阈值γ(2)。通过限定漏报(将匹配的指纹错误地分类为非匹配的指纹)的接收概率(Paccept)根据下式来设置该阈值:
能够反推该公式以得出:
其提供给定接收漏报率的阈值γ(2)。将该阈值带入数据库条目的在阈值以下的期望数量(Nr)的公式中以得出:
为了最小化该数量,需要找到将最大化该互补误差函数的自变量的滤波器组合。因此,将在该第二优化过程中要被最大化的评分由下式给出:
再者,任务是找到最大化该评分的滤波器组合;其中,能够使用在图15中所说明的训练过程期间针对组合中的每个滤波器确定的平均值、方差和协方差计算滤波器的任一组合的聚合平均值和方差(μ(2) N、μ(2) M、σ(2) N和σ(2) M)。换句话说,这些聚合参数与组中各滤波器的各参数相关:
和/>
其中,n为第二组优化滤波器221中的滤波器数量。聚合方差(标准差的平方)变成属于组221的各滤波器的方差与滤波器对之间的协方差的组合:
其中,COV(2)(l,k)是滤波器l与滤波器k之间的协方差。
用于匹配对的音频片段和非匹配对的音频片段的各滤波器的平均值、方差和协方差能够根据参考图15a和图15b在上面讨论的训练过程确定。具体地,每个滤波器(i)的NM个匹配对的音频片段的平均比特误码率和NN个非匹配对的音频片段的平均比特误码率如下式确定:
和/>
且相应方差如下式确定:
和
此外,能够根据下式确定匹配对的音频片段的在两个滤波器(i和j)之间的协方差值(COVM (2)(i,j)):
并且能够根据下式确定非匹配对的音频片段的在两个滤波器(i和j)之间的协方差值(COVN (2)(i,j)):
如上,根据该组16000个可能的滤波器计算n个滤波器的每个可能组合的上述评分(S(2))是不实际的-可能组合的数量太大。然而,如上,能够使用动态编程以使用格子409和上面讨论的路径传播技术找到具有最大评分(S(2))的路径。该动态编程过程将识别通过格子409的最佳路径-这进而识别滤波器的最佳组合,以形成由音频匹配服务器5使用用于根据精细指纹生成粗指纹的第二组221的优化滤波器。
如上,路径评分能够在动态编程路径传播期间累计以找到通过格子的最佳路径-因此,不必每次向候选路径增加新的节点(滤波器)时都重新计算评分S(2)。然而,在来自列号K处的节点q时,使用与新节点r、列K+1相关联的滤波器的单独的统计来更新评分,如上:
和/>
其中,μM q(2)和μN q(2)是节点q处的聚合平均值,以及μM r(2)和μN r(2)是节点r处的聚合平均值。类似地,方差(σM (2))2和(σN (2))2能够根据列K到列K+1更新,如下:
然后,更新的度量能够用来重新计算节点r处的评分S(2)。
修改和进一步的实施例
已经在上面描述了实施例,该实施例说明为识别音频数据库中的音频信号而创建指纹的方式。如本领域技术人员将理解的,能够对上述实施例进行各种修改和改进,且现在将描述这些修改中的一些。
在上述实施例中,用户装置生成精细指纹,其被发送至音频匹配服务器,该服务器根据精细指纹生成粗指纹。在另一实施例中,用户装置本身可计算粗指纹并将其与精细指纹一同发送至音频匹配服务器。
在上述实施例中,根据精细指纹生成粗指纹。这在以下情况下特别有利,其中,用户装置确定精细指纹并将其发送给远程服务器,用于与数据库条目的进行比较。用户装置计算粗指纹和精细指纹的其他实施例中,能够根据捕获的音频的光谱图而不是精细指纹确定粗指纹。在此情况下,可以使用上述第二评分-但基于通过对光谱图而不是对精细指纹应用滤波器获得的二值化向量,训练第二组优化滤波器221。如果用户装置将精细指纹和光谱图发送到远程服务器,那么也是这种情况-然后远程服务器根据接收到的光谱图计算粗指纹。然而,后一种很可能不是优选的,因为其需要将光谱图(其是大的数据结构)从用户装置发送到服务器。
在上述实施例中,用户装置或音频匹配服务器使用被应用于精细指纹的一组优化滤波器根据精细指纹生成粗指纹。在更简单的实施例中,可简单地通过二次采样精细指纹或通过平均精细指纹来生成粗指纹。然而,优选的是,将上述第二组优化滤波器应用于精细指纹,因为已经发现所得到的粗指纹在最小化被发现为可能匹配的数据库条目的数量上更好,同时最小化误报和漏报。
在数据库的大小相对小的实施例中,音频匹配服务器和数据库可形成用户装置本身的一部分。在此情况下,不需要用户装置通过远程通信网络或通过计算机网络发送任何指纹数据。该数据将简单地在用户装置中运行的不同软件组件之间发送(虽然可通过网络将匹配的任何结果发送至服务器)。
图12和图15说明两个数据库——一个用于原始音频样本,而另一个用于失真版本的音频样本。本领域技术人员将理解的是,所有这些音频样本可仅存储在单个数据库中,而不是在两个单独的数据库中。类似地,这些图说明针对匹配对中的每个音频样本以及针对非匹配对中的每个音频样本确定光谱图。本领域技术人员将理解的是,相同音频样本可包括在一对匹配的音频样本中和一对非匹配的音频样本中。在此情况下,明显不必要确定相同音频样本的光谱图两次。即,优化过程仅需要确定数据库中的每个音频样本的光谱图且然后将每个滤波器应用于每个光谱图。
在上述实施例中,优化过程设置可接受的误报率且然后找到最小化漏报率的一组滤波器。在另一实施例中,优化过程可以设置可接受的漏报率,然后找到最小化误报率的一组滤波器。在进一步的实施例中,优化过程可以设置可接受的误报率和可接受的漏报率,然后找到最小化一些其他成本函数的一组滤波器。
在上述实施例中,动态编程过程选择通过格子409的具有最高评分的路径。本领域技术人员将理解的是,所选的最佳或最优路径不必是具有最高评分的路径-例如,可代替地使用具有第二高评分或第三高评分的路径。
在上述实施例中,用户装置使用麦克风捕获声音,且使用在用户装置上存储的软件应用来处理音频样本。本领域技术人员将理解的是,可通过专用硬件电路形成该处理中的一些或所有,虽然软件由于其能够在制造后添加到便携式用户装置且其一加载就更新的能力而是优选的。用于使便携式用户装置以上述方式操作的软件能够作为信号或在载体(如,光盘或其他载体介质)上而提供。此外,可使用一些其他便携式装置,如,笔记本电脑、PDA、平板电脑等。类似地,形成音频匹配服务器的一部分的软件可用适当的硬件电路(如,专用集成电路)替换。
上述实施例已经描述了基于指纹的音频匹配系统。该系统还可以与检测已经隐藏在音频中的隐藏水印的水印类型的音频匹配系统一起使用。具体地,如果在一些捕获的音频中不能发现水印,则上述指纹音频识别能够用来识别捕获的音频。
在上述实施例中,一组优化滤波器使用五个不同类型的滤波器。在其他实施例中,可使用更多或更少类型的滤波器。进一步地,不必使用矩形滤波器-可使用其他不规则形状的滤波器(如,“L”形滤波器)。滤波器的形状仅限定光谱图中(或精细指纹中)的相邻值,其由滤波器中的相应系数加权然后组合在一起。
在上述实施例中,在生成精细指纹时,第一组优化滤波器的每个滤波器以一次一个时间步长沿着光谱图步进。这意味着精细指纹具有与原始光谱图相同的时间维度。本领域技术人员将理解的是,精细指纹会省略这些数据点中的一些-在光谱图开始或结束处。另外,还可使用较大步长-例如,会在每个步进跳过一个时间点。在此情况下,精细指纹所具有的时域持续时间是光谱图的一半。因此,如果光谱图具有500个时间点,则生成的精细指纹将具有250个时间点。
在上述实施例中,生成粗指纹,其中,时间分辨率是光谱图的1/10。即,当第二组优化滤波器在光谱图上步进时,在步进之间跳过10个时间点。本领域技术人员将理解的是,其他步长当然可用于实现数据在时间维度上的不同压缩。
在上述实施例中,用户装置捕获的音频信号是声学信号。在其他实施例中,用户装置可捕获音频信号作为经由用户装置的天线接收的电磁信号;或者在用户装置不是便携式装置而是例如个人计算机或机顶盒或智能电视的情况下,可经由通过广播电视网络(如,卫星网络、有线电视网络、ADSL网络等)、互联网或一些其他计算机网络接收的信号捕获音频信号。
在上述实施例中,数据库中的每个条目包含粗指纹和精细指纹。在另一实施例中,每个数据库条目可不包含粗指纹-然而,其可在需要时根据精细数据库指纹被生成。可以多种不同方式根据精细数据库指纹生成粗数据库指纹-正如能够以许多不同方式根据精细查询指纹确定粗查询指纹一样。根据精细指纹确定粗指纹的这些不同方式如上所述且将不再重复。更不用说,用来生成粗查询指纹的技术应当与用来生成粗数据库指纹的技术相同。
Claims (22)
1.一种音频匹配系统,包括:
用于捕获音频信号的装置;
用于处理捕获的音频信号以生成表示所述捕获的音频信号的精细查询声学指纹的装置;
用于生成表示所述捕获的音频信号的粗查询声学指纹的装置;
包括多个数据库条目的音频数据库,每个条目与音频内容相关联且每个条目包括:
i)表示相关联的音频内容的精细数据库声学指纹;
ii)与所述相关联的音频内容相关的信息;
用于将所述粗查询声学指纹和与所述多个数据库条目相关联的粗数据库声学指纹进行匹配,以识别可能匹配的数据库条目的子集的装置;
用于将所述精细查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的所述精细数据库声学指纹进行匹配,以识别匹配数据库条目的装置;和
用于输出包括识别的匹配数据库条目的信息的匹配响应的装置;
其中,用于生成所述粗查询声学指纹的装置被配置成通过对所述精细查询声学指纹应用一组不同滤波器,从所述精细查询声学指纹生成所述粗查询声学指纹;
其中,所述精细查询声学指纹包括值的阵列,且其中,所述用于生成所述粗查询声学指纹的装置被配置成对所述值的阵列的一部分应用来自所述一组滤波器中的滤波器以生成所述粗查询声学指纹的值;
其中,每个滤波器包括多个滤波器系数,且其中,所述用于生成所述粗查询声学指纹的装置被配置成通过利用相应的滤波器系数对所述一部分的每个值进行加权且通过对加权的值进行组合来对所述一部分应用所述滤波器,以生成所述粗查询声学指纹的值。
2.根据权利要求1所述的音频匹配系统,其中,每个条目包括相关联的粗数据库声学指纹,或其中,所述系统还包括用于生成与数据库条目相关联的所述粗数据库声学指纹的装置。
3.根据权利要求1所述的音频匹配系统,其中,来自所述一组滤波器的每个滤波器被应用于所述阵列的多个部分,以生成所述粗查询声学指纹的对应的多个值。
4.根据权利要求3所述的音频匹配系统,其中,用于生成所述粗查询声学指纹的装置被配置成响应于对所述精细查询声学指纹应用每个滤波器来生成所述粗查询声学指纹的行或列。
5.根据权利要求1至4中任一项所述的音频匹配系统,其中,所述精细声学指纹的位速率大于所述粗声学指纹的位速率。
6.根据权利要求1至4中任一项所述的音频匹配系统,包括用于生成所述捕获的音频信号的光谱图的装置,且其中,用于生成所述精细查询声学指纹的装置被配置成从所述光谱图生成所述精细声学指纹。
7.根据权利要求6所述的音频匹配系统,其中,用于生成所述精细查询声学指纹的装置被配置成对所述光谱图应用一组滤波器以生成所述精细查询声学指纹。
8.根据权利要求7所述的音频匹配系统,其中,用于生成所述精细查询声学指纹的装置被配置成对所述光谱图应用一组滤波器,该组滤波器不同于由生成所述粗查询声学指纹的装置应用的一组滤波器。
9.根据权利要求7或8所述的音频匹配系统,其中,用于生成所述精细查询声学指纹的装置被配置成对所述光谱图的一部分应用来自所述一组滤波器的滤波器以生成所述精细查询声学指纹的值。
10.根据权利要求9所述的音频匹配系统,其中,每个滤波器包括多个滤波器系数,且其中,用于生成所述精细查询声学指纹的装置被配置成通过利用相应的滤波器系数对所述光谱图的一部分的每个值进行加权且通过对加权的值进行组合来对所述光谱图的一部分应用所述滤波器,以生成所述精细查询指纹的值。
11.根据权利要求10所述的音频匹配系统,其中,来自所述一组滤波器中的每个滤波器被应用于所述光谱图的多个部分,以生成所述精细查询指纹的对应的多个值。
12.根据权利要求11所述的音频匹配系统,其中,用于生成所述精细查询声学指纹的装置被配置成响应于对所述光谱图应用每个滤波器来生成所述精细查询声学指纹的行或列。
13.根据权利要求12所述的音频匹配系统,其中,用于生成所述精细查询声学指纹的装置被配置成:对精细查询声学指纹的通过对所述光谱图应用所述一组滤波器而生成的所述行或列进行排序,使得相似的行或列彼此相邻。
14.根据权利要求13所述的音频匹配系统,其中,用于生成所述精细查询声学指纹的装置被配置成对所述精细查询声学指纹的所述行或列进行排序,以增加所述精细查询声学指纹的相邻行或列之间的相干性。
15.根据权利要求1或7所述的音频匹配系统,其中,每个滤波器具有相关联的偏移,所述偏移限定所述滤波器应用至所述光谱图的部分或所述滤波器应用至所述精细查询声学指纹的部分。
16.根据权利要求1至4中任一项所述的音频匹配系统,其中,所述用于捕获音频信号的装置被配置成捕获声学信号和电磁信号中的一者。
17.一种通过一个或多个处理器执行的音频匹配方法,所述方法包括:
捕获音频信号;
处理捕获的音频信号以生成表示所述捕获的音频信号的精细查询声学指纹;
生成表示所述捕获的音频信号的粗查询声学指纹;
将所述粗查询声学指纹与多个数据库条目的粗数据库声学指纹进行匹配,以识别可能匹配的数据库条目的子集;
将所述精细查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的精细数据库声学指纹进行匹配,以识别匹配数据库条目;以及
输出包括与识别的匹配数据库条目相关的信息的匹配响应;
所述方法还包括:通过对所述精细查询声学指纹应用一组不同滤波器,从所述精细查询声学指纹生成所述粗查询声学指纹;
其中,所述精细查询声学指纹包括值的阵列;
其中,所述生成所述粗查询声学指纹对所述值的阵列的一部分应用来自所述一组滤波器中的滤波器以生成所述粗查询声学指纹的值;
其中,每个滤波器包括多个滤波器系数,且其中,生成所述粗查询声学指纹的步骤通过利用相应的滤波器系数对所述一部分的每个值进行加权且通过对加权的值进行组合来对所述一部分应用所述滤波器,以生成所述粗查询声学指纹的值。
18.一种音频匹配系统,包括:
音频数据库,包括多个数据库条目,每个条目与音频内容相关联且每个条目:
i)包括第一数据库声学指纹,其表示相关联的音频内容并具有第一位速率;
ii)具有相关联的第二数据库声学指纹,其表示相关联的音频内容并具有第二位速率,所述第二位速率小于所述第一位速率;和
iii)包括与所述相关联的音频内容相关的信息;以及
一个或多个处理器,其被配置成:
捕获音频信号;
处理捕获的音频信号,以生成第一查询声学指纹,所述第一查询声学指纹表示所述捕获的音频信号且具有所述第一位速率;
通过将一组不同滤波器应用至所述第一查询声学指纹来生成第二查询声学指纹,所述第二查询声学指纹表示所述捕获的音频信号且具有所述第二位速率;
将所述第二查询声学指纹和与所述多个数据库条目相关联的所述第二数据库声学指纹进行匹配,以识别可能匹配的数据库条目的子集;
将所述第一查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的所述第一数据库声学指纹进行匹配,以识别匹配数据库条目;以及
输出包括识别的匹配数据库条目的信息的匹配响应;
其中,所述第一查询声学指纹包括值的阵列;
其中,所述生成所述第二查询声学指纹对所述值的阵列的一部分应用来自所述一组滤波器中的滤波器以生成所述第二查询声学指纹的值;
其中,每个滤波器包括多个滤波器系数,且其中,所述生成所述第二查询声学指纹通过利用相应的滤波器系数对所述一部分的每个值进行加权且通过对加权的值进行组合来对所述一部分应用所述滤波器,以生成所述第二查询声学指纹的值。
19.根据权利要求18所述的音频匹配系统,其中,每个条目包括相关联的第二数据库声学指纹,或其中,所述一个或多个处理器被配置成生成与数据库条目相关联的所述第二数据库声学指纹。
20.一种音频匹配系统,包括:
用户装置、音频匹配服务器和包括多个数据库条目的音频数据库,每个条目与音频内容相关联且每个条目:
i)包括第一数据库声学指纹,其表示相关联的音频内容并具有第一位速率;
ii)具有相关联的第二数据库声学指纹,其表示相关联的音频内容并具有第二位速率,所述第二位速率小于所述第一位速率;和
iii)包括与所述相关联的音频内容相关的信息;
其中,所述用户装置具有一个或多个处理器,其被配置成:
捕获音频信号;
处理捕获的音频信号,以生成第一查询声学指纹,所述第一查询声学指纹表示所述捕获的音频信号且具有所述第一位速率;
其中,所述音频匹配服务器具有一个或多个处理器;
其中,所述用户装置的所述一个或多个处理器或所述音频匹配服务器的所述一个或多个处理器被配置成:通过对所述第一查询声学指纹应用一组不同滤波器,生成第二查询声学指纹,所述第二查询声学指纹表示所述捕获的音频信号且具有所述第二位速率;
其中,所述音频匹配服务器的所述一个或多个处理器被配置成:
将所述第二查询声学指纹和与所述多个数据库条目相关联的所述第二数据库声学指纹进行匹配,以识别可能匹配的数据库条目的子集;
将所述第一查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的所述第一数据库声学指纹进行匹配,以识别匹配数据库条目;以及
输出包括识别的匹配数据库条目的信息的匹配响应;
其中,所述第一查询声学指纹包括值的阵列;
其中,所述生成所述第二查询声学指纹对所述值的阵列的一部分应用来自所述一组滤波器中的滤波器以生成所述第二查询声学指纹的值;
其中,每个滤波器包括多个滤波器系数,且其中,所述生成所述第二查询声学指纹通过利用相应的滤波器系数对所述一部分的每个值进行加权且通过对加权的值进行组合来对所述一部分应用所述滤波器,以生成所述第二查询声学指纹的值。
21.一种用于音频匹配系统的用户装置,所述用户装置包括:
用于捕获音频信号的装置;
用于处理捕获的音频信号以生成表示所述捕获的音频信号的精细查询声学指纹的装置;
用于生成表示所述捕获的音频信号的粗查询声学指纹的装置;
用于将所述粗查询声学指纹和所述精细查询声学指纹输出至音频匹配服务器的装置;和
用于接收包括与捕获的音频相关的信息的匹配响应的装置;
其中,所述用于生成所述粗查询声学指纹的装置被配置成通过对所述精细查询声学指纹应用一组不同滤波器,从所述精细查询声学指纹生成所述粗查询声学指纹;
其中,所述精细查询声学指纹包括值的阵列,且其中,所述用于生成所述粗查询声学指纹的装置被配置成对所述值的阵列的一部分应用来自所述一组滤波器中的滤波器以生成所述粗查询声学指纹的值;
其中,每个滤波器包括多个滤波器系数,且其中,所述用于生成所述粗查询声学指纹的装置被配置成通过利用相应的滤波器系数对所述一部分的每个值进行加权且通过对加权的值进行组合来对所述一部分应用所述滤波器,以生成所述粗查询声学指纹的值。
22.一种用于音频匹配系统的音频匹配服务器,所述音频匹配服务器包括:
用于接收表示捕获的音频信号的精细查询声学指纹的装置;
用于接收或生成表示所述捕获的音频信号的粗查询声学指纹的装置;
用于将所述粗查询声学指纹和与多个数据库条目相关联的粗数据库声学指纹进行匹配,以识别可能匹配的数据库条目的子集的装置;
用于将所述精细查询声学指纹和在所述可能匹配的数据库条目的子集中的所述数据库条目的精细数据库声学指纹进行匹配,以识别匹配数据库条目的装置;和
用于输出包括与捕获的音频相关的信息的匹配响应的装置;
其中,所述用于生成所述粗查询声学指纹的装置被配置成通过对所述精细查询声学指纹应用一组不同滤波器,从所述精细查询声学指纹生成所述粗查询声学指纹;
其中,所述精细查询声学指纹包括值的阵列,且其中,所述用于生成所述粗查询声学指纹的装置被配置成对所述值的阵列的一部分应用来自所述一组滤波器中的滤波器以生成所述粗查询声学指纹的值;
其中,每个滤波器包括多个滤波器系数,且其中,所述用于生成所述粗查询声学指纹的装置被配置成通过利用相应的滤波器系数对所述一部分的每个值进行加权且通过对加权的值进行组合来对所述一部分应用所述滤波器,以生成所述粗查询声学指纹的值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1613960.2A GB2556023B (en) | 2016-08-15 | 2016-08-15 | Audio matching |
GB1613960.2 | 2016-08-15 | ||
PCT/GB2017/052219 WO2018033696A1 (en) | 2016-08-15 | 2017-07-28 | Audio matching |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109891404A CN109891404A (zh) | 2019-06-14 |
CN109891404B true CN109891404B (zh) | 2023-10-24 |
Family
ID=56985973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780063352.3A Active CN109891404B (zh) | 2016-08-15 | 2017-07-28 | 音频匹配 |
Country Status (5)
Country | Link |
---|---|
US (2) | US11106730B2 (zh) |
EP (2) | EP3497587A1 (zh) |
CN (1) | CN109891404B (zh) |
GB (1) | GB2556023B (zh) |
WO (1) | WO2018033696A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019137897A1 (en) * | 2018-01-10 | 2019-07-18 | Rezzonation B.V. | Content matching system |
CN110047515B (zh) * | 2019-04-04 | 2021-04-20 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种音频识别方法、装置、设备及存储介质 |
KR102380540B1 (ko) * | 2020-09-14 | 2022-04-01 | 네이버 주식회사 | 음원을 검출하기 위한 전자 장치 및 그의 동작 방법 |
US20220351425A1 (en) * | 2021-04-30 | 2022-11-03 | Mobeus Industries, Inc. | Integrating overlaid digital content into data via processing circuitry using an audio buffer |
US11508395B1 (en) * | 2021-05-03 | 2022-11-22 | Dell Products, L.P. | Intelligent selection of audio signatures based upon contextual information to perform management actions |
CN113889146A (zh) * | 2021-09-22 | 2022-01-04 | 北京小米移动软件有限公司 | 音频识别方法、装置、电子设备和存储介质 |
US20230129350A1 (en) * | 2021-10-25 | 2023-04-27 | Adobe Inc. | Section-based music similarity searching |
US11417099B1 (en) | 2021-11-08 | 2022-08-16 | 9219-1568 Quebec Inc. | System and method for digital fingerprinting of media content |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101014953A (zh) * | 2003-09-23 | 2007-08-08 | 音乐Ip公司 | 音频指纹识别系统和方法 |
CN101882439A (zh) * | 2010-06-10 | 2010-11-10 | 复旦大学 | 一种基于Zernike矩的压缩域音频指纹方法 |
CN101980197A (zh) * | 2010-10-29 | 2011-02-23 | 北京邮电大学 | 一种基于长时结构声纹的多层滤波音频检索方法和装置 |
CN102314875A (zh) * | 2011-08-01 | 2012-01-11 | 北京百度网讯科技有限公司 | 一种音频文件的识别方法和装置 |
CN103403710A (zh) * | 2011-02-10 | 2013-11-20 | 雅虎公司 | 对来自音频信号的特征指纹的提取和匹配 |
CN103999473A (zh) * | 2011-12-20 | 2014-08-20 | 雅虎公司 | 用于内容识别的音频指纹 |
CN105551485A (zh) * | 2015-11-30 | 2016-05-04 | 讯飞智元信息科技有限公司 | 语音文件检索方法及系统 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101282184A (zh) | 2000-11-30 | 2008-10-08 | 英特拉松尼克斯有限公司 | 通信系统 |
ES2386977T3 (es) * | 2005-11-29 | 2012-09-10 | Google Inc. | Aplicaciones sociales e interactivas para medios masivos |
GB0710211D0 (en) | 2007-05-29 | 2007-07-11 | Intrasonics Ltd | AMR Spectrography |
WO2009107049A2 (en) * | 2008-02-26 | 2009-09-03 | Koninklijke Philips Electronics N.V. | Content identification method |
GB2460306B (en) | 2008-05-29 | 2013-02-13 | Intrasonics Sarl | Data embedding system |
EP2323046A1 (en) * | 2009-10-16 | 2011-05-18 | Telefónica, S.A. | Method for detecting audio and video copy in multimedia streams |
US8584197B2 (en) * | 2010-11-12 | 2013-11-12 | Google Inc. | Media rights management using melody identification |
US8681950B2 (en) * | 2012-03-28 | 2014-03-25 | Interactive Intelligence, Inc. | System and method for fingerprinting datasets |
US9159327B1 (en) * | 2012-12-20 | 2015-10-13 | Google Inc. | System and method for adding pitch shift resistance to an audio fingerprint |
US9390727B2 (en) * | 2014-01-13 | 2016-07-12 | Facebook, Inc. | Detecting distorted audio signals based on audio fingerprinting |
WO2015134579A1 (en) * | 2014-03-04 | 2015-09-11 | Interactive Intelligence Group, Inc. | System and method to correct for packet loss in asr systems |
EP3114584B1 (en) * | 2014-03-04 | 2021-06-23 | Interactive Intelligence Group, Inc. | Optimization of audio fingerprint search |
-
2016
- 2016-08-15 GB GB1613960.2A patent/GB2556023B/en active Active
-
2017
- 2017-07-28 EP EP17758252.5A patent/EP3497587A1/en active Pending
- 2017-07-28 WO PCT/GB2017/052219 patent/WO2018033696A1/en unknown
- 2017-07-28 EP EP22151836.8A patent/EP4006748B1/en active Active
- 2017-07-28 CN CN201780063352.3A patent/CN109891404B/zh active Active
- 2017-07-28 US US16/325,692 patent/US11106730B2/en active Active
-
2021
- 2021-04-09 US US17/227,001 patent/US11556587B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101014953A (zh) * | 2003-09-23 | 2007-08-08 | 音乐Ip公司 | 音频指纹识别系统和方法 |
CN101882439A (zh) * | 2010-06-10 | 2010-11-10 | 复旦大学 | 一种基于Zernike矩的压缩域音频指纹方法 |
CN101980197A (zh) * | 2010-10-29 | 2011-02-23 | 北京邮电大学 | 一种基于长时结构声纹的多层滤波音频检索方法和装置 |
CN103403710A (zh) * | 2011-02-10 | 2013-11-20 | 雅虎公司 | 对来自音频信号的特征指纹的提取和匹配 |
CN102314875A (zh) * | 2011-08-01 | 2012-01-11 | 北京百度网讯科技有限公司 | 一种音频文件的识别方法和装置 |
CN103999473A (zh) * | 2011-12-20 | 2014-08-20 | 雅虎公司 | 用于内容识别的音频指纹 |
CN105551485A (zh) * | 2015-11-30 | 2016-05-04 | 讯飞智元信息科技有限公司 | 语音文件检索方法及系统 |
Non-Patent Citations (2)
Title |
---|
Towards the Application of Fuzzy Logic to the Sound Recordings Fingerprint Computation and Comparison;L.Janku等;《wseas.us》;1-4 * |
基于多尺度滤波及复数滤波的指纹奇异特征提取算法研究;陈婧等;《大理学院学报》;第2014年卷(第6期);1-3 * |
Also Published As
Publication number | Publication date |
---|---|
EP4006748A1 (en) | 2022-06-01 |
GB2556023A (en) | 2018-05-23 |
CN109891404A (zh) | 2019-06-14 |
EP4006748C0 (en) | 2024-06-19 |
US20190213214A1 (en) | 2019-07-11 |
WO2018033696A1 (en) | 2018-02-22 |
US11556587B2 (en) | 2023-01-17 |
US11106730B2 (en) | 2021-08-31 |
EP4006748B1 (en) | 2024-06-19 |
GB2556023B (en) | 2022-02-09 |
GB201613960D0 (en) | 2016-09-28 |
US20210224318A1 (en) | 2021-07-22 |
EP3497587A1 (en) | 2019-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109891404B (zh) | 音频匹配 | |
US9798513B1 (en) | Audio content fingerprinting based on two-dimensional constant Q-factor transform representation and robust audio identification for time-aligned applications | |
US11272226B2 (en) | System and method for continuous media segment identification | |
US9286909B2 (en) | Method and system for robust audio hashing | |
TWI480855B (zh) | 聲音訊號之特徵指紋擷取與匹配 | |
CN101669308B (zh) | 表征媒体的方法和装置 | |
US20140310006A1 (en) | Method to generate audio fingerprints | |
US20020178410A1 (en) | Generating and matching hashes of multimedia content | |
US20140280265A1 (en) | Methods and Systems for Identifying Information of a Broadcast Station and Information of Broadcasted Content | |
EP2676208A1 (en) | Methods and systems for identifying content in a data stream by a client device | |
EP1497935A4 (en) | IDENTIFICATION OF AUDIO CONTENT BASED ON CHARACTERISTICS | |
Bisio et al. | Opportunistic estimation of television audience through smartphones | |
Távora et al. | Detecting replicas within audio evidence using an adaptive audio fingerprinting scheme | |
GB2598691A (en) | Audio matching |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |