WO2015027751A1 - 基于音频指纹特征的音乐检索系统 - Google Patents
基于音频指纹特征的音乐检索系统 Download PDFInfo
- Publication number
- WO2015027751A1 WO2015027751A1 PCT/CN2014/081338 CN2014081338W WO2015027751A1 WO 2015027751 A1 WO2015027751 A1 WO 2015027751A1 CN 2014081338 W CN2014081338 W CN 2014081338W WO 2015027751 A1 WO2015027751 A1 WO 2015027751A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- feature
- sequence
- song
- point
- module
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Definitions
- the invention belongs to the technical field of information retrieval, and particularly relates to an audio signal processing and multimedia information retrieval system, and further relates to a music retrieval system based on audio fingerprint features. Background technique
- the audio feature is a structured representation of audio information and is a relatively important step in a content-based audio retrieval system.
- the quality of the audio features directly affects system performance.
- the audio features are divided into time domain audio features and transform domain audio features.
- the time domain audio features are easier to extract, but the noise immunity is poor.
- the transform domain features are more complex in extraction process, good in noise immunity and more used.
- the more common features are based on Fourier and wavelet transforms.
- the MFCC Mel cepstral coefficient
- LPCC linear predictive cepstral coefficient
- the music retrieval system based on audio fingerprint features is more classic with the music retrieval system of Shazam and Phidips.
- Shazam's music retrieval system selects local extremum points as feature points in the spectrum, and then combines two adjacent feature points into one point pair to represent one feature; uses hash index to realize retrieval; when querying, uses histogram
- the time difference of the same feature points is counted, and the time difference of the general target songs is uniform, and will be concentrated in somewhere, thereby retrieving the song.
- the system query method is not suitable for massive audio retrieval, and there are many local extreme points, which leads to a lot of feature data, and many features have poor anti-noise ability.
- Phi l ips' music retrieval system the feature is on the spectrum Calculate the energy of each frequency band, quantize each frequency band into 0 or 1 according to the energy of the adjacent frame, and all the frequency bands form a binary sequence, and obtain the final feature through a hash function.
- the search is performed by using a hash table, and the search order is performed by the frequency of the statistical words. Under massive music data, the hash conflict will be very much, and it is not applicable. At the same time, the feature performance is not as good as the former fingerprint feature. Summary of the invention
- the audio fingerprinting feature-based music retrieval system comprises four parts: a preprocessing module, a feature extraction module, an inverted index module and a fine matching module. among them:
- the pre-processing module is used for unified audio file format, audio resampling and audio filtering.
- the feature extraction module is configured to perform a structured representation of a music file, and adopts a music threshold feature based on a dynamic threshold.
- the song sequence is framed, the frame has a high overlap rate, and a fast Fourier transform (FFT) is performed for each frame, and all the frames are processed to obtain a spectrum matrix; then, the spectrum matrix is smoothed; then, The extreme points are selected in the matrix, and the points are filtered twice according to the dynamic threshold, and the points larger than the threshold are taken as feature points; finally, a point pair is used to represent a feature and transformed by a hash function.
- a hash value is a feature.
- the feature points of the most P nearest neighbors are selected and the feature points are composed one by one, and all the features form a feature sequence according to the order of the frames and the screening order of the feature points. .
- the inverted index module is used for initial retrieval of the system, and uses one feature as a keyword to create an inverted index table for all features of the song library; when querying, the query segment is counted by the inverted index table.
- the number of occurrences of each keyword in each song, and sums the number of occurrences of all keywords in each song, and then sorts the results of the summation, and the song corresponding to the sort result is used as the initial retrieval result.
- no weight is added to the inverted index, that is, each word has the same weight in each song. However, this may reduce the discrimination between the target song and other songs. For longer songs, the song needs to be segmented and added to the inverted index table in units of song fragments.
- the fine matching module is used for secondary retrieval of the system, first selecting candidate songs according to the result returned by the inverted index, then reading the feature sequence of each candidate song, and pressing the feature sequence according to the query feature sequence
- the length is segmented, and the most similar Q feature sequence segments are selected for each song (the most common number of features with the query feature sequence), and then the Q segments and the query feature sequence are improved.
- the distance calculation (the eigenvalue is only one bit is considered to be the same), the minimum edit distance is taken as the similarity between the song segment and the query segment, and finally, the candidate songs are sorted according to the similarity, and the final search ranking is obtained as System search results. If a song has multiple records in the ranking, only the first record is kept.
- FIG. 1 is a schematic structural view of a system of the present invention.
- FIG. 2 is a flow chart of extracting music fingerprint features of the system of the present invention.
- Figure 3 is a schematic diagram showing the features of the system of the present invention.
- FIG. 4 is a schematic diagram of an inverted index structure of the system of the present invention.
- FIG. 5 is a flow chart of the system matching according to the present invention.
- DETAILED DESCRIPTION OF THE INVENTION Figure 1 shows the system structure, including a preprocessing module, a feature extraction module, an inverted index module and a fine matching module.
- the preprocessing module mainly completes the conversion, resampling and filtering of the audio signal;
- the feature extraction module is a structured representation of the audio file, and adopts an audio fingerprint feature based on two threshold filtering;
- the inverted index module is built according to the characteristics of the song library.
- the index when querying, counts the number of keywords in each song segment and the query segment by the inverted index, and sorts the number and the number as the initial search result; the fine matching module is based on the initial search. Combined with the timing relationship between audio features, the improved edit distance is used as the similarity of the two feature sequences to optimize the index results.
- the features are saved in the feature library for building inverted index and fine matching; for query segments, the same preprocessing and feature extraction are performed, and the features are used for Query and match.
- the feature extraction module has a feature extraction process as shown in FIG. 2, and uses an audio fingerprint feature based on two thresholds.
- the length of the frequency sequence has a high overlap rate between the frames, and is divided into M frames.
- N-point fast Fourier transform is performed for each frame, that is, N frequency bands are taken, and after all the frames are processed, N* is obtained.
- M is determined by the length of the audio
- N is 129 (the Fourier transform takes 256 points, half of which is due to symmetry), and then the maximum point is selected in S, ie Si, j>Si, J-1 and Si, j> Si, j+1, as feature points, and filter the feature points twice according to the threshold; use the N-dimensional vector thresh to represent the threshold of each frequency band in the spectrum, in the S matrix, take the front R
- the maximum value of each frequency band of the frame is used to initialize the threshold of the corresponding frequency band.
- R is 10;
- Initial screening All feature points are scanned sequentially. If the point value is greater than the threshold of the corresponding dimension, the feature point is retained, otherwise the feature point is deleted, and at the same time, the feature point is deleted. Update the threshold vector thresh as follows:
- Thresh -ik- f ,k l,2,...,N
- Second screening starting from the last feature point, scanning all feature points in reverse order, filtering feature points and updating thresholds according to the same rule; Finally, using a point pair to represent a feature, for each feature point, use it
- Each feature point of its adjacent area constitutes a feature; when there are more feature points in the adjacent area, the P points adjacent to it are selected and the feature points are composed one by one.
- P is the integer of ⁇ 5, the larger the P, the more information is contained, but the number of features is significantly increased.
- the time and frequency of these pairs are used to represent the features, and a hash function calculation is performed, as shown in Figure 3. These feature points are represented one by one in the first screening order, and all frames are processed to obtain a one-dimensional feature sequence.
- Figure 3 shows the representation of the feature, point A(t, f) is the feature point to be represented, and the rectangle is its neighboring region [t+1: t+T, fF/2: f+F/2], in the region
- P takes 3
- T takes 32
- F takes 64, as shown by the three arrows in the figure. Since a query segment is used for retrieval, we use a frequency Fl of the first point, a frequency difference between the second point and the first point, and their time difference At to represent a feature.
- a hash function operation on the feature, and the formula is as follows.
- Feature Fl « fbits + tbits) + AF « tbits + At ( 3 )
- ⁇ is the left shift operation
- the frequency difference AF is represented by the fbits bit
- the tbits bit is the time difference At
- the Feature is the feature value.
- modulo operations are also required.
- tbits takes 6 and fbits takes 8.
- a hash value is a musical fingerprint feature, usually expressed in 2-3 bytes.
- the inverted index module is composed of two parts, as shown in FIG. 4, the left part is called a dictionary, which is composed of a word, and is a set of a series of strings, and the dictionary is usually stored in a dictionary in the index, in the system. , all the features with the same hash value make up a term; the right part is a collection of document numbers containing a certain string, called “inverted linked list", each term corresponds to one of its own “inverted linked list” " , this table records the song number or the song fragment number that contains the term.
- the fine matching module adopts multiple steps to achieve fine matching, and the process is as shown in FIG. 5.
- an "inflection point” is found, and it is assumed that the i-th song returned by the inverted index table has The sum of the same number of features is nmu, if there is a point K, it makes:
- the point is considered to be the "inflection point", and the target song is in the previous ⁇ candidate song segments; then, the feature sequence of the first K candidate song segments is read, and the sequence is performed. Segmenting, find the most similar Q segments, they have the same number of identical features as the query sequence, generally, Q is taken; T6, Q is smaller, the smaller the number of edited edits is, the faster the speed is, but It is possible that the target segment cannot be included. For a general query segment, Q takes 3; then, the Q segment and the query feature sequence are modified for the edit distance calculation, and the segment with the smallest distance is used as the segment most similar to the query sequence. And take the minimum distance as the similarity to the candidate song segment.
- d ⁇ i, j] min(d[i - 1, j] + 1, d[i, j + 1, d[i - 1, j - 1] + cos t) ...
Landscapes
- Engineering & Computer Science (AREA)
- Library & Information Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于音频指纹特征的音乐检索系统。该系统由预处理模块、特征提取模块、倒排索引模块和精匹配模块四部分组成。预处理模块主要完成音频信号的转换、重采样、滤波;特征提取模块是对音频文件的表示,采用音频指纹特征,通过两次基于动态阈值的筛选来选取频谱中最为稳定的点作为特征点,用一个点对表示一个特征;倒排索引模块是将特征作为关键词,由歌曲库的特征建立倒排索引,根据相同关键词多少返回索引结果;精匹配模块是结合音频特征间的时序关系,采用改进的编辑距离作为两个特征序列的相似度,以此优化索引结果。
Description
基于音频指紋特征的音乐检索系统
技术领域
本发明属于信息检索技术领域, 具体涉及音频信号处理和多媒体信息检 索系统, 进一步涉及一种基于音频指纹特征的音乐检索系统。 背景技术
早前, 由于音乐信息是非结构化数据, 其检索系统一般通过基于文本描述 来实现检索。 例如在互联网中检索一首歌曲, 以歌曲的名字、 歌唱者、 作歌者、 歌曲存取格式等来检索。 该方法具有很多的缺点: 数据量越来越大, 从而人工 注释工作量也随之加大; 音频感知难以用文字注释表达清楚; 信息描述具有一 定的主观性。 而基于内容的音乐检索系统是根据信息本身的特征参数而非外部 属性对内容进行检索, 其提取过程由程序自动完成。 因此, 其不存在对信息描 述的主观性, 能更好的表示音乐信息, 从而使检索更加有效。
音频特征是音频信息的结构化表示, 是基于内容的音频检索系统中较为关 键的一步, 音频特征的好坏直接影响系统性能。 音频特征分为时域音频特征和 变换域音频特征, 时域音频特征较为容易提取, 但抗噪能力较差; 变换域特征 提取过程较复杂, 抗噪能力良好, 使用较多。 在变换域特征中, 较为常见的是 基于傅里叶和小波变换的特征。 早期, Mel倒谱系数(MFCC)和线性预测倒谱系 数(LPCC)特征较为经典,特别是 MFCC ,由于其特征是根据人的听觉模型生成的, 应用较为广泛。 随着音频指纹特征的出现, 由于其特征鲁棒性较好, 使得大量 学者投入在这方面进行研究, 发展较快。
目前, 基于音频指纹特征的音乐检索系统以 Shazam公司和 Phi l ips公司的 音乐检索系统较为经典。 Shazam公司的音乐检索系统是在频谱上选取局部极值 点作为特征点, 然后把相邻的两个特征点组成一个点对来表示一个特征; 采用 hash索引实现检索; 査询时, 使用直方图统计相同特征点的时间差, 一般目标 歌曲的时间差是统一的, 将会集中出现在某处, 从而检索到该歌曲。 该系统査 询方式并不适用海量音频检索,而且局部极值点非常多, 导致特征数据非常多, 很多特征抗噪能力差。 在 Phi l ips公司的音乐检索系统中, 特征是在频谱上计
算各频段能量, 根据相邻帧的能量大小, 将各频段量化成 0 或 1, 所有频段 组成一个二进制序列, 通过哈希(hash)函数, 得到最终特征。 采用哈希表实现 检索, 通过统计词频数来进行检索排序。 在海量音乐数据下, hash冲突会非常 多, 也不适用, 同时在特征性能上不如前一种指纹特征。 发明内容
本发明的目的在于提供一种基于音频指纹特征的音乐检索系统, 该系统能 够在海量音乐信息下进行快速准确的检索, 且能够对录音査询片段进行有效检 索。
本发明提供的基于音频指纹特征的音乐检索系统, 包括预处理模块, 特征 提取模块, 倒排索引模块和精匹配模块四个部分。 其中:
所述的预处理模块, 用于音频文件格式统一, 音频重采样和音频滤波。 所述的特征提取模块, 用于对音乐文件的结构化表示, 采用基于动态阈值 的音乐指纹特征。 首先对歌曲序列进行分帧, 帧之间有较高重叠率, 对每帧进 行快速傅里叶变换 (FFT ) , 处理完所有帧, 得到频谱矩阵; 接着, 对频谱矩 阵进行平滑处理; 然后, 在矩阵中选取极值点, 并根据动态阈值对这些点进行 两次筛选, 取大于阈值的点作为特征点; 最后, 用一个点对来表示一个特征, 并经哈希 (Hash) 函数变换, 一个哈希值即为一个特征。 对于每个特征点, 在 其后续频段的邻近区域内, 选取最多 P个最近邻的特征点与该特征点一一组成 特征, 所有特征按帧的先后顺序和特征点的筛选顺序组成一个特征序列。
所述的倒排索引模块,用于系统的初次检索, 以一个特征作为一个关键词, 以歌曲库的所有特征建立倒排索引表; 当査询时, 通过倒排索引表统计査询片 段每个关键词在各歌曲中出现的次数, 并将所有关键词在各个歌曲中出现的次 数求和, 然后对求和的结果进行排序, 排序结果所对应的歌曲作为初次检索结 果。 为了防止査询片段较短或者较为偏僻, 在倒排索引中并未加入权重, 即各 词项在各歌曲中权重是一样的。 但这样可能降低目标歌曲与其他歌曲的区分 度, 对于较长的歌曲, 需要对歌曲进行分段, 以歌曲片段为单位加入倒排索引 表中。
所述的精匹配模块, 用于系统的二次检索, 先根据倒排索引返回的结果选 定候选歌曲, 接着读取各候选歌曲的特征序列, 并对特征序列按査询特征序列
长度进行分段, 对每首歌曲筛选出最为相似的 Q个特征序列片段 (与査询特征 序列具有最多的相同特征个数) , 然后, 对这 Q个片段与査询特征序列进行改 进的编辑距离计算 (特征值只错一位认为是相同的) , 取最小的编辑距离作为 该歌曲片段与査询片段的相似度, 最后, 根据相似度对候选歌曲进行排序, 得 到最终的检索排名, 作为系统检索结果。 如果某首歌在排名中出现多条记录, 只保留第一条记录。
本发明的优点为: 系统所用的特征鲁棒性好且数据量小; 采用现阶段较为 成熟的倒排索引技术作为系统初始检索, 可适用于海量音乐检索; 精匹配作为 系统二次检索, 能有效的找出目标歌曲且可以并行计算。 附图说明
图 1为本发明系统结构示意图。
图 2为本发明系统音乐指纹特征提取流程图。
图 3为本发明系统特征表示示意图。
图 4为本发明系统倒排索引结构示意图。 图 5为本发明系统精匹配流程图。 具体实施方式 图 1显示了系统结构, 包括预处理模块, 特征提取模块, 倒排索引模块和 精匹配模块四个部分。 预处理模块主要完成音频信号的转换、 重采样和滤波; 特征提取模块是对音频文件的结构化表示, 采用基于两次阈值筛选的音频指纹 特征; 倒排索引模块是根据歌曲库的特征建立倒排索引, 当査询时, 通过倒排 索引统计各歌曲片段与査询片段相同关键词个数多少, 并对个数和进行排序, 作为初次检索结果; 精匹配模块在初次检索的基础上, 结合音频特征间的时序 关系, 采用改进的编辑距离作为两个特征序列的相似度, 优化索引结果。 对于 数据库中每首歌, 通过预处理和特征提取, 将特征保存于特征库中, 用于建倒 排索引和精匹配; 对于査询片段, 做相同的预处理和特征提取, 其特征用于査 询和精匹配。
所述的特征提取模块, 其特征提取过程如图 2所示, 采用基于两次阈值筛 选的音频指纹特征。 首先, 对音频序列 X= {xl,x2, … ,xL}进行分帧, L为音
频序列长度, 帧之间有较高的重叠率, 共分成 M帧; 接着, 对每一帧进行 N点 快速傅里叶变换, 即取 N个频段点, 处理完所有帧后, 得到 N*M维的频谱矩阵 S, 并对频谱矩阵 S=[Si, j| i = l,2, -,N; j=l,2, "·,Μ]进行平滑处理, 平滑计 算公式如下:
S. = log10(max(aZ7.s(S. : ), e~5)) i = 1,2, ...,N, j = 1,2,..., , 、 其中 abs( )为取模运算, M由音频长度决定, N可取 129 (傅里叶变换取 256个点, 由于对称性,取一半),然后,在 S中选取极大值点,即 Si, j>Si, j-1 且 Si,j> Si,j+1, 作为特征点, 并根据阈值对特征点进行两次筛选; 用 N维 向量 thresh表示频谱中各频段的阈值, 在 S矩阵中, 取前 R帧各频段的最大 值来初始化对应频段的阈值, 一般 R取 10; 初次筛选: 顺序扫描所有特征点, 若该点值大于对应维度的阈值, 则保留该特征点, 否则删除该特征点, 同时按 以下公式更新阈值向量 thresh:
threshk * 0.97 st j < threshi
thresh -ik- f ,k = l,2,...,N
max(threshk , threshi * e 1000 ) 其它
(2) 第二次筛选: 从最后一个特征点开始, 逆序扫描所有特征点, 按相同规则 筛选特征点和更新阈值; 最后, 用一个点对来表示一个特征, 对于每一个特 征点, 用它与其邻近区域的每个特征点组成一个特征; 当邻近区域内特征点较 多时, 选取与它最相邻的 P个点与该特征点一一组成特征。 一般, P取 ; Γ5的 整数, P越大, 包含信息越多, 但特征数量明显增多。 用这些点对的时间, 频 率来表示特征, 并进行了哈希 (Hash) 函数计算, 具体见图 3。 按第一次筛选 顺序逐个表示这些特征点, 处理完所有帧得到一维特征序列。
图 3显示了特征的表示, 点 A(t, f)为要表示的特征点, 矩形为它的邻近 区域 [t+1: t+T, f-F/2: f+F/2], 区域中最相邻的 P个特征点与点 A组成 P个 特征, 在程序中, P取 3, T取 32, F取 64, 如图中三个箭头。 由于使用一个 査询片段来进行检索, 我们用第一个点的频率 Fl, 第二点与第一个点的频率差 及它们的时间差 At来表示一个特征。 为了便于后续检索, 我们对特征进行 了哈希函数运算, 公式如下。
Feature = Fl « fbits + tbits) + AF « tbits + At (3) 其中, 〈〈为向左移位运算, 用 fbits位表示频率差 AF, tbits位表示时间 差 At, Feature为特征值。当 fbits或者 tbits较小时,还需要进行取模运算,
在程序中, tbits取 6, fbits取 8。 一个哈希值便是一个音乐指纹特征, 一般 用 2-3个字节来表示。
所述的倒排索引模块由两部分组成, 如图 4所示, 左边部分叫做字典, 即 由词项组成, 是一系列字符串的集合, 字典在索引中通常是以字典序列存储, 系统中, 所有哈希值相同的特征组成一个词项; 右边部分是包含某个字符串的 文档编号的集合, 称之为 "倒排链表", 每一个词项都对应一个属于自己的 "倒 排链表" , 该表记录了包含该词项的歌曲编号或者歌曲片段编号。 当査询时, 通过倒排索引表统计各歌曲片段与査询片段相同关键词个数多少, 然后计算个 数和 (对于査询片段中出现的重复关键词进行累加计算) , 并按个数和进行排 序, 作为倒排索引的结果。 考虑到査询片段的特征很可能是目标歌曲的偏僻特 征, 在链表中并未加入权重, 也就是各词项在各歌曲中具有相同的权重。 然而 这样大大降低了目标歌曲与其他歌曲的区分度, 通常需要对长歌曲进行分段, 以歌曲片段为单位建立索引, 能有效的提高它们之间的区分度。
所述的精匹配模块, 采用多个步骤实现精匹配, 其过程如图 5所示, 首先, 根据初次检索返回结果, 寻找一 "拐点" , 假定倒排索引表返回的第 i首歌曲 中具有的相同特征个数之和为 numi, 如果存在一点 K, 使得:
Κ 3* Κ
^ numi > ^ numi , 3 ^ K <= N
i = l i=K +1 (4) 则认为该点为 "拐点", 目标歌曲就在这前 κ个候选歌曲片段中; 接着, 读 取前 K个候选歌曲片段的特征序列, 对这些序列进行分段, 找出最为相似的 Q 个片段, 它们与査询序列具有最多的相同特征个数, 一般, Q取 ; T6, Q越小, 计算改进的编辑距离次数越少, 速度越快, 但有可能无法包含目标片段, 对于 一般査询片段, Q取 3; 然后, 将这 Q个片段与査询特征序列进行改进的编辑 距离计算, 把最小距离的片段作为与査询序列最相似的片段, 并取最小距离作 为与该候选歌曲片段的相似度。 设査询特征序列 Α={Α[1], Α[2], … , A[m]}, 比较的特征序列 B={B[1], B[2], ... , B[n]}, 长度分别为 m和 n, 距离矩阵 d={d[i, j]=0 i = l,2, -,m; j=l,2, -,n}, d[i, j]为子序列 A [1… i]和 B [1… j] 的距离, 改进的编辑距离算法步骤如下:
(1) 初始化距离矩阵 d, 读入特征序列 A和 B;
(2)循环遍历特征序列 A,逐次取数 A[i],依次执行操作步骤(3)、 (4)、 (5) ;
(3) 循环遍历特征序列 B, 逐次取数 B[j] , 依次执行操作步骤 (4) 、 (5) ;
(4) 计算代价 cost, 如果数 A[i]与数 B[j]相等或只有 1位 (bit) 不同, cost为 0, 否则为 1, 如公式:
cos t = min((A[ ] Λ B[j]) & Λ B[j])― 1),1) (5) 其中, -为位异或运算, &为位与运算;
(5) 调整距离矩阵, 计算出当前最小距离 d[i, j], 公式如下:
d \i, j] = min(d[i - 1, j] + 1, d[i, j + 1, d[i - 1, j - 1] + cos t) …
L 」 (6)
(6) d[m, n]即为改进的编辑距离。
最后, 我们根据相似度进行排序, 得最终的检索排名, 如果某首歌在排名 中出现多条记录 (较长歌曲建立倒排索引时分段) , 只保留第一条记录。
Claims
1. 一种基于音频指纹特征的音乐检索系统, 其特征在于包括预处理模块, 特征提取模块, 倒排索引模块和精匹配模块四个部分; 其中:
所述的预处理模块, 用于音频文件格式统一, 音频重采样和音频滤波; 所述的特征提取模块, 用于对音乐文件的结构化表示, 采用基于动态阈值 的音乐指纹特征; 首先对歌曲序列进行分帧, 对每帧进行快速傅里叶变换, 处 理完所有帧, 得到频谱矩阵; 接着, 对频谱矩阵进行平滑处理; 然后, 在矩阵 中选取极值点, 并根据动态阈值对这些点进行两次筛选, 取大于阈值的点作为 特征点; 最后, 用一个点对表示一个特征, 并经哈希函数变换, 输出一个哈希 值为一个特征; 对于每个特征点, 在其后续频段的邻近区域内, 选取最多 P个 最近邻的特征点与该特征点一一组成特征; 所有特征按帧的先后顺序和首次特 征点筛选顺序组成一维特征序列;
所述的倒排索引模块,用于系统的初次检索, 以一个特征作为一个关键词, 对数据库中的每首歌曲的特征建立倒排索引表; 当査询时, 通过倒排索引表统 计査询片段每个关键词在各歌曲中出现的次数, 并将所有关键词在各个歌曲中 出现的次数求和, 然后对求和的结果进行排序, 排序结果所对应的歌曲作为初 次检索结果;
所述的精匹配模块, 用于系统的二次检索, 先根据初次检索返回的结果选 定候选歌曲, 接着读取各候选歌曲的特征序列, 并对特征序列按査询特征序列 长度进行分段, 对每首歌曲筛选出最为相似的 Q个特征序列片段, 即其与査询 特征序列具有最多的相同特征个数; 然后, 对这 Q个片段与査询特征序列进行 改进的编辑距离计算, 取最小的编辑距离作为该歌曲片段与査询片段的相似 度; 最后, 根据相似度对候选歌曲进行排序, 得到最终的检索排名。
2. 根据权利要求 1所述的音乐检索系统, 其特征在于: 在特征提取模块 中, 所述的采用基于动态阈值的音乐指纹特征, 具体实现过程为: 首先, 对音 频序列 X= {xl,x2, … ,xL}进行分帧, L为音频序列长度, 帧之间有较高的重 叠率, 共分成 M帧; 接着, 对每一帧进行 N点快速傅里叶变换, 处理完所有帧 后,得到 N*M维的频谱矩阵 S,并对频谱矩阵5= [51, j | i = l, 2, "·,Ν; j = l, 2, - , Μ]
进行平滑处理, 平滑计算公式如下:
Si = log10(max(ab5(S(. ),e"5)) 其中 abs( )为取模运算, 然后, 在 S中选取极大值点, 即 Si,j> Si, j-1 且 Si,j> Si,j+1, 作为特征点, 并根据阈值对特征点进行两次筛选; 用 N维 向量 thresh表示频谱中各频段的阈值, 在 S矩阵中, 取开始 R帧各频段的最 大值来初始化对应频段的阈值; 初次筛选: 顺序扫描所有特征点, 若该点值大 于对应维度的阈值, 则保留该特征点, 否则删除该特征点, 同时按以下公式更 新阈值向量 thresh:
thres *0.97 st j < threshi
thresh. _ k_if k = 1,2,..., N
max(threshk , threshi * e 1000 ) 其它 第二次筛选: 从最后一个特征点开始, 逆序扫描所有保留的特征点, 按与
1
上述相同规则筛选特征点和更新阈值; 最后, 用一个点对来表示一个特征, 对于每一个特征点, 用它分别与其后续频段的邻近区域的每个特征点组成一个 特征; 当邻近区域内特征点较多时, 选取与它最相邻的 P个点与该特征点一一 组成特征, 并按第一次筛选顺序逐个表示这些特征点, 处理完所有帧得到一维
1
特征序列。
3. 根据权利要求 1所述的音乐检索系统, 其特征在于: 所述的倒排索引 模块由两部分组成, 一部分为字典, 字典由词项组成, 所有哈希值相同的特征 组成一个词项; 另一部分是倒排索引表, 其中, 每一个词项都对应一个属于自 己的 "倒排链表" , 该表记录了包含该词项的歌曲编号或者歌曲片段编号。
4. 根据权利要求 1所述的音乐检索系统, 其特征在于: 所述的精匹配模 块, 采用多个步骤实现精匹配, 首先, 根据初次检索返回的结果, 寻找一 "拐 点" , 假定倒排索引表返回的第 i首歌曲中与査询片段具有的相同特征个数之 和为 numi, 如果存在一点 K, 使得:
Κ 3*Κ
^ numi > ^ numi , 3 ^ K <= N
'• = 1 Ί+1 (4)
则认为该点为 "拐点" , 目标歌曲就在这前 K个候选歌曲片段中; 接着, 读取前 K个候选歌曲片段的特征序列, 对这些序列进行分段, 找出最为相似的
Q个片段, 它们与査询序列具有最多的相同特征个数; 然后, 将这 Q个片段与 査询特征序列进行改进的编辑距离计算, 把最小距离的片段作为与査询序列最 相似的片段, 并取最小距离作为与该候选歌曲片段的相似度; 设査询特征序列 A={A[1], A[2], … , A[m]}, 比较的特征序列 B={B[1], B[2], ... , B[n]}, 长度分别为 m和 n, 距离矩阵 d={d[i, j]=0 i = l,2, -,m; j=l, 2, -,n}, d[i, j]为子序列 A[l〜i]和 B[l〜j]的距离, 改进的编辑距离算法步骤如下:
(1) 初始化距离矩阵 d, 读入特征序列 A和 B;
(2)循环遍历特征序列 A,逐次取数 A[i],依次执行操作步骤(3)、 (4)、 (5) ;
(3)循环遍历特征序列 B,逐次取数 B[j],依次执行操作步骤(4)、 (5);
(4) 计算代价 cost, 如果数 A[i]与数 B[j]相等或只有 1位 (bit) 不同, cost为 0, 否则为 1, 如公式:
cos t = min((A[ ] Λ Β[β) & Λ Β[β) - 1),1) (5) 其中, -为位异或运算, &为位与运算;
(5) 调整距离矩阵, 计算出当前最小距离 d[i, j], 公式如下:
d [i, j] = min(d[i - 1, j] + 1, d[i, j - 1] + 1, d[i - 1, j - 1] + cos t) (^)
(6) d[m, n]即为改进的编辑距离。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201310378000.0A CN103440313B (zh) | 2013-08-27 | 2013-08-27 | 基于音频指纹特征的音乐检索系统 |
| CN201310378000.0 | 2013-08-27 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2015027751A1 true WO2015027751A1 (zh) | 2015-03-05 |
Family
ID=49694006
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2014/081338 Ceased WO2015027751A1 (zh) | 2013-08-27 | 2014-07-01 | 基于音频指纹特征的音乐检索系统 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN103440313B (zh) |
| WO (1) | WO2015027751A1 (zh) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110956970A (zh) * | 2019-11-27 | 2020-04-03 | 广州市百果园信息技术有限公司 | 音频重采样方法、装置、设备及存储介质 |
| CN114168787A (zh) * | 2021-11-17 | 2022-03-11 | 卓尔智联(武汉)研究院有限公司 | 音乐推荐方法、装置、计算机设备和存储介质 |
| US11670322B2 (en) | 2020-07-29 | 2023-06-06 | Distributed Creation Inc. | Method and system for learning and using latent-space representations of audio signals for audio content-based retrieval |
Families Citing this family (40)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103440313B (zh) * | 2013-08-27 | 2018-10-16 | 复旦大学 | 基于音频指纹特征的音乐检索系统 |
| FR3028086B1 (fr) * | 2014-11-04 | 2019-06-14 | Universite de Bordeaux | Procede de recherche automatise d'au moins une sous-sequence sonore representative au sein d'une bande sonore |
| CN104320549B (zh) * | 2014-11-17 | 2018-09-21 | 科大讯飞股份有限公司 | 基于原声检索技术的自动彩铃检测方法及系统 |
| CN104700833A (zh) * | 2014-12-29 | 2015-06-10 | 芜湖乐锐思信息咨询有限公司 | 一种大数据语音分类方法 |
| CN104866604B (zh) * | 2015-06-01 | 2018-10-30 | 腾讯科技(北京)有限公司 | 一种信息处理方法及服务器 |
| US10157372B2 (en) * | 2015-06-26 | 2018-12-18 | Amazon Technologies, Inc. | Detection and interpretation of visual indicators |
| CN105139866B (zh) * | 2015-08-10 | 2018-10-16 | 泉州师范学院 | 南音的识别方法及装置 |
| CN105185381A (zh) * | 2015-08-26 | 2015-12-23 | 江苏久祥汽车电器集团有限公司 | 智能机器人声音识别系统 |
| EP3151132A1 (en) * | 2015-09-30 | 2017-04-05 | Advanced Digital Broadcast S.A. | A system and a method for determining an index of an object in a sequence of objects |
| CN105678244B (zh) * | 2015-12-31 | 2018-12-18 | 北京理工大学 | 一种基于改进编辑距离的近似视频检索方法 |
| CN107293307B (zh) * | 2016-03-31 | 2021-07-16 | 阿里巴巴集团控股有限公司 | 音频检测方法及装置 |
| CN106910494B (zh) * | 2016-06-28 | 2020-11-13 | 创新先进技术有限公司 | 一种音频识别方法和装置 |
| CN106162321A (zh) * | 2016-08-31 | 2016-11-23 | 成都广电视讯文化传播有限公司 | 一种声纹特征和音频水印相结合的音频信号识别方法 |
| CN106649642A (zh) * | 2016-12-08 | 2017-05-10 | 腾讯音乐娱乐(深圳)有限公司 | 一种歌曲搜索方法、系统及相关设备 |
| CN106708990B (zh) * | 2016-12-15 | 2020-04-24 | 腾讯音乐娱乐(深圳)有限公司 | 一种音乐片段提取方法和设备 |
| CN106802960B (zh) * | 2017-01-19 | 2020-07-14 | 湖南大学 | 一种基于音频指纹的分片音频检索方法 |
| CN107402965B (zh) * | 2017-06-22 | 2020-04-28 | 中国农业大学 | 一种音频检索方法 |
| CN109388729A (zh) * | 2017-08-14 | 2019-02-26 | 阿里巴巴集团控股有限公司 | 音频子指纹的检索方法、装置以及音频查询系统 |
| CN107784128B (zh) * | 2017-11-30 | 2021-06-25 | 成都嗨翻屋科技有限公司 | 一种数字音频指纹大数据存储检索的方法及系统 |
| CN107948734B (zh) * | 2017-12-05 | 2020-09-11 | 深圳市茁壮网络股份有限公司 | 一种广告视频的筛选方法及系统 |
| CN109977630B (zh) * | 2017-12-27 | 2021-12-24 | 阿里巴巴(中国)有限公司 | 音频指纹生成方法及装置 |
| CN108197319A (zh) * | 2018-02-02 | 2018-06-22 | 重庆邮电大学 | 一种基于时频局部能量的特征点的音频检索方法和系统 |
| CN108364648B (zh) * | 2018-02-11 | 2021-08-03 | 北京百度网讯科技有限公司 | 用于获取音频信息的方法及装置 |
| CN108399913B (zh) * | 2018-02-12 | 2021-10-15 | 北京容联易通信息技术有限公司 | 高鲁棒性音频指纹识别方法及系统 |
| CN110555114A (zh) * | 2018-03-29 | 2019-12-10 | 北京字节跳动网络技术有限公司 | 一种媒体检索方法及装置 |
| CN109241329A (zh) * | 2018-08-03 | 2019-01-18 | 百度在线网络技术(北京)有限公司 | 用于ar场景的音乐检索方法、装置、设备及存储介质 |
| CN109271501B (zh) * | 2018-09-19 | 2020-12-29 | 北京容联易通信息技术有限公司 | 一种音频数据库的管理方法及系统 |
| CN109117622B (zh) * | 2018-09-19 | 2020-09-01 | 北京容联易通信息技术有限公司 | 一种基于音频指纹的身份认证方法 |
| CN109829061A (zh) * | 2019-01-14 | 2019-05-31 | 北京雷石天地电子技术有限公司 | 一种多媒体信息查找方法及系统 |
| CN109871463B (zh) * | 2019-03-06 | 2024-04-09 | 腾讯音乐娱乐科技(深圳)有限公司 | 音频处理方法、装置、电子设备及存储介质 |
| CN110047515B (zh) * | 2019-04-04 | 2021-04-20 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种音频识别方法、装置、设备及存储介质 |
| CN110209872B (zh) * | 2019-05-29 | 2021-06-22 | 天翼爱音乐文化科技有限公司 | 片段音频歌词生成方法、装置、计算机设备和存储介质 |
| CN110490268A (zh) * | 2019-08-26 | 2019-11-22 | 山东浪潮人工智能研究院有限公司 | 一种基于余弦相似度的改进最近邻距离比的特征匹配方法 |
| CN111161758B (zh) * | 2019-12-04 | 2023-03-31 | 厦门快商通科技股份有限公司 | 一种基于音频指纹的听歌识曲方法、系统及音频设备 |
| CN111881090A (zh) * | 2020-07-27 | 2020-11-03 | 山东女子学院 | 一种音乐片段提取方法及设备 |
| CN112732972B (zh) * | 2020-12-24 | 2023-10-27 | 云境商务智能研究院南京有限公司 | 一种音频指纹生成系统及方法 |
| CN112784098B (zh) * | 2021-01-28 | 2024-08-09 | 百果园技术(新加坡)有限公司 | 一种音频搜索方法、装置、计算机设备和存储介质 |
| CN113515933A (zh) * | 2021-09-13 | 2021-10-19 | 中国电力科学研究院有限公司 | 电力一二次设备融合处理方法、系统、设备及存储介质 |
| CN115762559B (zh) * | 2022-11-22 | 2026-04-17 | 北京百度网讯科技有限公司 | 音频召回方法、模型训练方法、装置及电子设备 |
| CN117162087A (zh) * | 2023-08-18 | 2023-12-05 | 北京声智科技有限公司 | 控制机器人跳舞的方法、装置、电子设备及存储介质 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060149552A1 (en) * | 2004-12-30 | 2006-07-06 | Aec One Stop Group, Inc. | Methods and Apparatus for Audio Recognition |
| US20110173208A1 (en) * | 2010-01-13 | 2011-07-14 | Rovi Technologies Corporation | Rolling audio recognition |
| CN103093761A (zh) * | 2011-11-01 | 2013-05-08 | 腾讯科技(深圳)有限公司 | 音频指纹检索方法及装置 |
| US8492633B2 (en) * | 2011-12-02 | 2013-07-23 | The Echo Nest Corporation | Musical fingerprinting |
| CN103440313A (zh) * | 2013-08-27 | 2013-12-11 | 复旦大学 | 基于音频指纹特征的音乐检索系统 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7013301B2 (en) * | 2003-09-23 | 2006-03-14 | Predixis Corporation | Audio fingerprinting system and method |
| CN101364222B (zh) * | 2008-09-02 | 2010-07-28 | 浙江大学 | 一种两阶段的音频检索方法 |
-
2013
- 2013-08-27 CN CN201310378000.0A patent/CN103440313B/zh not_active Expired - Fee Related
-
2014
- 2014-07-01 WO PCT/CN2014/081338 patent/WO2015027751A1/zh not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060149552A1 (en) * | 2004-12-30 | 2006-07-06 | Aec One Stop Group, Inc. | Methods and Apparatus for Audio Recognition |
| US20110173208A1 (en) * | 2010-01-13 | 2011-07-14 | Rovi Technologies Corporation | Rolling audio recognition |
| CN103093761A (zh) * | 2011-11-01 | 2013-05-08 | 腾讯科技(深圳)有限公司 | 音频指纹检索方法及装置 |
| US8492633B2 (en) * | 2011-12-02 | 2013-07-23 | The Echo Nest Corporation | Musical fingerprinting |
| CN103440313A (zh) * | 2013-08-27 | 2013-12-11 | 复旦大学 | 基于音频指纹特征的音乐检索系统 |
Non-Patent Citations (3)
| Title |
|---|
| GUAN, YAOHUA ET AL.: "Improved Algorithm of Data Preprocessing in Audio Fingerprint Search.", COMPUTER ENGINEERING AND APPLICATIONS, vol. 46, 31 December 2010 (2010-12-31), pages 145 - 147 AND 170 * |
| PEDRO CANO ET AL.: "A Review of Algorithms for Audio Fingerprinting.", IEEE WORKSHOP ON MULTIMEDIA SIGNAL PROCESSING., 11 December 2002 (2002-12-11), pages 169 - 173 * |
| TANG JIE ET AL.: "Improved Algorithms of Music Information Retrieval based on Audio Fingerprint.", THIRD INTERNATIONAL SYMPOSIUM ON INTELLIGENT INFORMATION TECHNOLOGY APPLICATION WORKSHOPS, 22 November 2009 (2009-11-22), pages 367 - 371 * |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN110956970A (zh) * | 2019-11-27 | 2020-04-03 | 广州市百果园信息技术有限公司 | 音频重采样方法、装置、设备及存储介质 |
| CN110956970B (zh) * | 2019-11-27 | 2023-11-14 | 广州市百果园信息技术有限公司 | 音频重采样方法、装置、设备及存储介质 |
| US11670322B2 (en) | 2020-07-29 | 2023-06-06 | Distributed Creation Inc. | Method and system for learning and using latent-space representations of audio signals for audio content-based retrieval |
| US12051439B2 (en) | 2020-07-29 | 2024-07-30 | Distributed Creation Inc. | Method and system for learning and using latent-space representations of audio signals for audio content-based retrieval |
| CN114168787A (zh) * | 2021-11-17 | 2022-03-11 | 卓尔智联(武汉)研究院有限公司 | 音乐推荐方法、装置、计算机设备和存储介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN103440313A (zh) | 2013-12-11 |
| CN103440313B (zh) | 2018-10-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2015027751A1 (zh) | 基于音频指纹特征的音乐检索系统 | |
| CN101833986B (zh) | 一种三级音频索引的创建方法及音频检索方法 | |
| US20120125178A1 (en) | Scalable music recommendation by search | |
| WO2007029002A2 (en) | Music analysis | |
| JP7014072B2 (ja) | 特徴量生成方法、特徴量生成装置、及び特徴量生成プログラム | |
| JP5596648B2 (ja) | ハッシュ関数生成方法、ハッシュ関数生成装置、ハッシュ関数生成プログラム | |
| Thiruvengatanadhan | Music Classification using MFCC and SVM | |
| JP6397378B2 (ja) | 特徴量生成方法、特徴量生成装置、及び特徴量生成プログラム | |
| Aristorenas | Machine learning framework for audio-based content evaluation using mfcc, chroma, spectral contrast, and temporal feature engineering | |
| KR100916310B1 (ko) | 오디오 신호처리 기반의 음악 및 동영상간의 교차 추천 시스템 및 방법 | |
| Nagavi et al. | Content based audio retrieval with MFCC feature extraction, clustering and sort-merge techniques | |
| Qi et al. | Triplet convolutional network for music version identification | |
| Yao et al. | An efficient cascaded filtering retrieval method for big audio data | |
| JP6134246B2 (ja) | ハッシュ関数生成方法、ハッシュ値生成方法、ハッシュ関数生成装置、ハッシュ値生成装置、ハッシュ関数生成プログラム及びハッシュ値生成プログラム | |
| WO2012163013A1 (zh) | 音乐查询方法和装置 | |
| CN118331502A (zh) | 一种云资源管理方法、装置及电子设备 | |
| CN117633328A (zh) | 基于数据挖掘的新媒体内容监测方法及系统 | |
| JP5599363B2 (ja) | ハミング空間検索装置、ハミング空間検索方法、ハミング空間検索プログラムおよび記録媒体 | |
| Xiao et al. | Fast Hamming Space Search for Audio Fingerprinting Systems. | |
| JP6031475B2 (ja) | ハミング空間検索装置、ハミング空間検索方法、ハミング空間検索プログラムおよび記録媒体 | |
| Osmalsky | A combining approach to cover song identification | |
| CN116756516A (zh) | 一种计算机信息筛选装置 | |
| CN107784128A (zh) | 一种数字音频指纹大数据存储检索的方法及系统 | |
| WO2021135731A1 (en) | Efficient audio searching by using spectrogram peaks of audio data and adaptive hashing | |
| Tang et al. | and Detection Model Based on Big Data Analysis and Genetic Algorithm |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 14839558 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 14839558 Country of ref document: EP Kind code of ref document: A1 |