KR20100115849A - An audio fingerprinting system based on multiple hashing technique - Google Patents

An audio fingerprinting system based on multiple hashing technique Download PDF

Info

Publication number
KR20100115849A
KR20100115849A KR1020090034455A KR20090034455A KR20100115849A KR 20100115849 A KR20100115849 A KR 20100115849A KR 1020090034455 A KR1020090034455 A KR 1020090034455A KR 20090034455 A KR20090034455 A KR 20090034455A KR 20100115849 A KR20100115849 A KR 20100115849A
Authority
KR
South Korea
Prior art keywords
audio
frequency
subfingerprint
fingerprinting system
system based
Prior art date
Application number
KR1020090034455A
Other languages
Korean (ko)
Inventor
김남수
윤환식
리유
Original Assignee
서울대학교산학협력단
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 서울대학교산학협력단 filed Critical 서울대학교산학협력단
Priority to KR1020090034455A priority Critical patent/KR20100115849A/en
Publication of KR20100115849A publication Critical patent/KR20100115849A/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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 using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech 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 using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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 using predictive techniques
    • G10L19/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/18Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech 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

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

PURPOSE: An audio fingerprinting system based on a multiple hashing technique is provided to configure sub fingerprint by each coefficient, thereby providing sub fingerprint strong against noise. CONSTITUTION: An audio is divided by an overlapped frame(50). Frequency conversion like DFT(Discrete Fourier Transform) is applied to each frame(51). Sub fingerprint strong against noise is obtained using information obtained from L continuous frames(53). Sub fingerprint is obtained about each of K frequency coefficients(54).

Description

다중 해싱에 기초한 오디오 핑거프린팅 시스템{AN AUDIO FINGERPRINTING SYSTEM BASED ON MULTIPLE HASHING TECHNIQUE}Audio fingerprinting system based on multiple hashing {AN AUDIO FINGERPRINTING SYSTEM BASED ON MULTIPLE HASHING TECHNIQUE}

본 발명은 오디오 핑거프린팅 시스템에 관한 것으로서, 보다 구체적으로는 마이크로폰 등으로 오디오를 입력받아 오디오 핑거프린트(audio fingerprint)를 추출하고, 추출한 오디오 핑거프린트를 이용하여 미리 구축된 데이터베이스에서 검색을 통해 그 오디오에 대한 정보를 찾아내는 다중 해싱에 기초한 오디오 핑거프린팅 시스템에 관한 것이다.The present invention relates to an audio fingerprinting system. More specifically, an audio fingerprint is extracted by receiving audio through a microphone and the like, and the audio is searched through a pre-built database using the extracted audio fingerprint. The present invention relates to an audio fingerprinting system based on multiple hashing.

오디오 핑거프린팅 시스템은 도 1에 도시된 바와 같이 미리 대량의 오디오와 그와 관련된 정보(예를 들어 곡명, 가수, 장르, 가사 등)를 데이터베이스에 모아 놓고, 도 2에 도시된 바와 같이 오디오의 입력이 주어졌을 때 데이터베이스로부터 입력된 오디오와 유사한 음악을 찾아내고 그 음악과 관련된 정보를 출력해주는 시스템이다.The audio fingerprinting system collects a large amount of audio and related information (for example, song names, singers, genres, lyrics, etc.) in a database in advance as shown in FIG. 1, and inputs audio as shown in FIG. Given this, it is a system that finds music similar to the audio input from the database and outputs information related to the music.

종래에는 오디오의 파형 자체를 저장해서 비교하였지만, 이런 경우 데이터베이스의 용량이 너무 커지는 문제점이 있었으며 오디오가 손상되었을 때는 정확한 검색이 어렵다는 문제점이 있었다.Conventionally, the audio waveform itself is stored and compared, but in this case, there is a problem that the capacity of the database is too large, and when the audio is damaged, accurate search is difficult.

이러한 문제점을 해결하기 위하여, 오디오의 파형에서 고유한 특징만을 추출하여 저장하였다가 검색할 때 이용하는 오디오 핑거프린팅 시스템이 개발되었다. 오디오 핑거프린팅 시스템이 갖추어야 할 요건으로는 짧은 길이의 오디오로부터 추출한 오디오 핑거프린트로도 오디오 간의 구분이 가능해야 하며 오디오가 잡음 등에 의해 손상이 되었더라도 오디오 간의 구분이 가능해야 하고 또한 검색 속도를 위해 오디오 핑거프린트의 계산이 복잡하지 않아야 한다.In order to solve this problem, an audio fingerprinting system has been developed for extracting, storing, and retrieving only unique features from an audio waveform. The requirements of the audio fingerprinting system are that audio fingerprints extracted from short-length audio must be able to distinguish between audio, even if the audio is damaged by noise, etc. The calculation of the print should not be complicated.

종래의 오디오 핑거프린트 기술 중에 유명한 것으로 Phillips Roubst Hash(PRH) 알고리즘이 있다. PRH 알고리즘에서 핑거프린트를 추출하는 방법은 도 3에 도시한 바와 같다. 먼저 오디오를 중첩되는 프레임으로 나눈 후에 각 프레임에 대해 주파수 변환(예를 들면, Discrete Fourier Transform(DFT))을 적용시킨 후 Ns개의 서브밴드(subband)로 나눠 각각의 에너지를 구한다. 그리고 인접한 서브밴드와의 에너지 차이를 구하고 이전 프레임에 대해 다시 차이 값을 구한다. 구한 에너지 차이 값에 대해 0보다 큰 경우 1, 0보다 작거나 같은 경우 0으로 핑거프린트의 일 비트에 해당하는 값이 설정된다. 이것을 수식으로 나타내면 다음 수학식 1과 같다.A popular audio fingerprint technique is the Phillips Roubst Hash (PRH) algorithm. A method of extracting a fingerprint in the PRH algorithm is illustrated in FIG. 3. First, after divided by the audio frame to be superimposed (for example, Discrete Fourier Transform (DFT)) frequency transformation for each frame after applying divided into N s subbands (subband) is determined for each energy. Then, the energy difference between adjacent subbands is calculated and the difference value is obtained for the previous frame. The value corresponding to one bit of the fingerprint is set to 1 when the energy difference is greater than 0, and 0 when less than or equal to 0. This is expressed by the following equation (1).

Figure 112009023938514-PAT00001
Figure 112009023938514-PAT00001

여기서, E(n,m)은 n번째 프레임의 m번째 서브밴드의 에너지를 의미한다. 이러한 방법으로 한 프레임마다 (Ns-1)비트 길이의 벡터 F(n)가 구해지는데, 이것을 서브핑거프린트(sub-fingerprint)라고 부른다. 따라서 하나의 오디오 파일에 대해서 오디오 파일의 길이에 따라 다수의 서브핑거프린트가 추출이 되며 추출된 서브핑거프린트들이 데이터베이스에 저장된다. 그리고 이렇게 추출된 각 서브핑거프린트는 해시(Hash) 테이블로 등록된다. 해시 테이블은 서브핑거프린트를 키 값으로 하여 해당 서브핑거프린트를 가지고 있는 오디오의 위치를 알려준다.Here, E (n, m) means energy of the m th subband of the n th frame. In this way, a vector F (n) having a length of (N s −1) bits is obtained for each frame, which is called a sub-fingerprint. Therefore, a plurality of subfingerprints are extracted for one audio file according to the length of the audio file, and the extracted subfingerprints are stored in a database. Each subfingerprint thus extracted is registered as a hash table. The hash table uses the subfingerprint as a key value to indicate the position of the audio having the subfingerprint.

오디오를 입력받아 데이터베이스로부터 검색을 하는 것은 도 4에 도시되어 있다. 도 4에 도시된 바와 같이, 입력된 오디오로부터 Nb개의 연속된 서브핑거프린트를 구하는데 이것을 핑거프린트 블록이라고 부른다. 도 4에 도시된 바와 같이, 해시 테이블을 이용하여 핑거프린트 블록에 있는 각 서브핑거프린트에 대응되는 후보 오디오의 위치를 모두 찾은 다음, 입력받은 오디오의 핑거프린트 블록과 후보 오디오의 핑거프린트 블록을 서로 비교하여 BER(Bit Error Rate; 비트 에러율)를 구하고, BER이 일정한 문턱 값보다 작을 경우 그 오디오가 최종 결과로 선택이 된 다.Searching from the database for receiving audio is shown in FIG. 4. As shown in Fig. 4, Nb consecutive subfingerprints are obtained from the input audio, which is called a fingerprint block. As shown in FIG. 4, after finding all the positions of candidate audio corresponding to each sub-fingerprint in the fingerprint block by using the hash table, the fingerprint block of the input audio and the fingerprint block of the candidate audio are mutually located. In comparison, a bit error rate (BER) is obtained. When the BER is smaller than a predetermined threshold, the audio is selected as the final result.

그러나 종래의 오디오 핑거프린팅 시스템은 인접한 두 프레임의 정보만을 이용하기 때문에, 그 부분에서 잡음이 발생할 경우 매우 취약하다는 문제점이 있었다. 또한, 이러한 문제점으로 인하여 서브핑거프린트의 비트 값들이 반전되어 후보 오디오의 위치를 찾을 때 잘못된 오디오를 찾게 되며, 이것은 최종적인 선택을 할 때에도 잘못된 오디오를 선택할 수 있게 하는 문제점을 유발시켰다.However, since the conventional audio fingerprinting system uses only information of two adjacent frames, there is a problem in that when the noise occurs in the portion, it is very vulnerable. In addition, due to this problem, the bit values of the subfingerprint are inverted to find the wrong audio when the candidate audio is located, which causes a problem of selecting the wrong audio even when the final selection is made.

본 발명은 상기와 같은 종래의 문제점들을 해결하기 위해 제안된 것으로서, 서브핑거프린트를 계산하는 새로운 방법을 제안하여 위에서 지적한 오디오 핑거프린팅 시스템의 취약점을 개선하고, 다수의 해시 테이블을 이용하여 잡음이 있는 상황에서도 오디오 검색 성능을 높일 수 있는 다중 해싱에 기초한 오디오 핑거프린팅 시스템을 제공하는 것을 그 목적으로 한다.The present invention has been proposed to solve the above-mentioned problems, and proposes a new method for calculating the subfingerprint to improve the vulnerability of the audio fingerprinting system pointed out above, and to make noise using multiple hash tables. It is an object of the present invention to provide an audio fingerprinting system based on multiple hashing that can improve audio search performance even in a situation.

상기한 목적을 달성하기 위한 본 발명의 특징에 따른 다중 해싱에 기초한 오디오 핑거프린팅 시스템은,An audio fingerprinting system based on multiple hashing according to a feature of the present invention for achieving the above object,

(1) 오디오를 중첩되는 프레임으로 분할하고, 상기 분할된 프레임을 주파수로 변환하는 단계;(1) dividing audio into overlapping frames and converting the divided frames into frequencies;

(2) 상기 변환된 주파수를 복수의 서브밴드로 나누고, 각 서브밴드의 에너지를 구하는 단계;(2) dividing the converted frequency into a plurality of subbands and obtaining energy of each subband;

(3) 상기 구한 서브밴드의 에너지들을 주파수 변환을 수행하여 각 주파수 계수를 획득하는 단계;(3) performing frequency conversion on the obtained subband energies to obtain respective frequency coefficients;

(4) 상기 획득한 주파수 계수마다 서브핑거프린트를 산출하는 단계; 및(4) calculating a subfingerprint for each obtained frequency coefficient; And

(5) 상기 산출된 서브핑거프린트를 데이터베이스에 저장하고, 상기 획득한 각 주파수 계수마다 해시 테이블을 생성하는 단계를 포함하는 것을 그 구성상의 특징으로 한다.(5) storing the calculated subfingerprint in a database, and generating a hash table for each of the obtained frequency coefficients.

바람직하게는, (6) 오디오가 입력되면, 상기 입력받은 오디오를 상기 단계 (1) 내지 (4)를 수행하여 서브핑거프린트를 산출하는 단계;Preferably, (6) if audio is input, calculating the subfingerprint by performing the steps (1) to (4) on the received audio;

(7) 상기 입력받은 오디오의 서브핑거프린트와 상기 단계 (5)의 해시 테이블을 이용하여 상기 입력받은 오디오와 유사한 후보 오디오의 위치를 검색하는 단계;(7) searching for positions of candidate audio similar to the input audio by using the subfingerprint of the input audio and the hash table of step (5);

(8) 상기 검색된 후보 오디오의 핑거프린트 블록과 입력받은 오디오의 핑거프린트 블록을 비교하여 비트 에러율(Bit Error Rate)을 구하는 단계; 및(8) obtaining a bit error rate by comparing the fingerprint block of the found candidate audio with the fingerprint block of the received audio; And

(9) 상기 비트 에러율이 미리 지정된 문턱 값보다 작으면 상기 검색된 후보 오디오가 입력받은 오디오와 동일하다고 판단하는 단계를 더 포함하는 것을 특징으로 한다.And (9) determining that the found candidate audio is the same as the input audio if the bit error rate is smaller than a predetermined threshold.

바람직하게는, 상기 단계 (3)에서, 상기 각 서브밴드마다 시간상으로 연속된 L개의 서브밴드 에너지를 이용하여 길이 L의 주파수 변환을 수행하는 것을 특징으로 한다.Preferably, in step (3), frequency conversion of length L is performed using L subband energies contiguous in time for each subband.

더욱 바람직하게는, 상기 단계 (3)에서, 상기 주파수 변환은 DCT(Discrete Cosine Transform)를 포함하는 것을 특징으로 한다.More preferably, in step (3), the frequency transform comprises a discrete cosine transform (DCT).

더욱 바람직하게는, 상기 단계 (4)에서, 각 프레임의 각 서브밴드마다 상기 L개 보다 작거나 같은 K개의 주파수 계수를 얻으며, 상기 K개의 주파수 계수들의 차이 값을 이용하여 서브핑거프린트를 구하는 것을 특징으로 한다.More preferably, in step (4), obtaining K frequency coefficients less than or equal to the L for each subband of each frame, and obtaining a subfingerprint using the difference value of the K frequency coefficients. It features.

본 발명에서 제안하고 있는 다중 해싱에 기초한 오디오 핑거프린팅 시스템에 따르면, 서브핑거프린트를 구할 때 인접한 두 프레임의 에너지 차이로 구하는 것이 아니라 다수의 프레임을 단위로 에너지 차이 값을 구하여 서브핑거프린트로 이용함으로써, 또한 다수의 프레임에서 서브밴드의 에너지를 모아서 주파수 변환을 하여 주파수 계수를 구하고 각 계수 별로 서브핑거프린트를 구성함으로써, 잡음에 보다 강한 성능을 갖는 서브핑거프린트를 제공할 수 있다. 또한 변환된 주파수 계수 별로 각각 해시 테이블을 구성함으로써, 한 개의 해시 테이블을 사용하는 것에 비해 잡음이 심한 환경에서 보다 정확한 검색을 할 수 있는 효과를 제공한다.According to the audio fingerprinting system based on the multiple hashing proposed in the present invention, instead of calculating the energy difference between two adjacent frames when subfingerprint is obtained, the energy difference value is calculated by using a plurality of frames as a subfingerprint. In addition, by collecting the energy of the subbands in a plurality of frames to perform frequency conversion to obtain a frequency coefficient, and by configuring a sub-fingerprint for each coefficient, it is possible to provide a sub-fingerprint having a stronger performance against noise. Also, by constructing each hash table for each transformed frequency coefficient, it provides more accurate search in noisy environment than using one hash table.

이하에서는 첨부된 도면을 참조하여, 본 발명에 따른 실시예에 대하여 상세하게 설명하기로 한다.Hereinafter, with reference to the accompanying drawings, it will be described in detail with respect to the embodiment according to the present invention.

도 5는 본 발명의 일실시예에 따른 다중 해싱에 기초한 오디오 핑거프린팅 시스템의 제어 방법을 나타낸 것이다. 도 5에 도시된 바와 같이, 서브핑거프린트를 계산하여 데이터베이스를 구축하기 위하여, 본 발명에서는 먼저 오디오를 중첩되는 프레임으로 나눈다(50).5 illustrates a control method of an audio fingerprinting system based on multiple hashing according to an embodiment of the present invention. As shown in FIG. 5, in order to construct a database by calculating a subfingerprint, the present invention first divides the audio into overlapping frames (50).

이어서, 각 프레임에 대해 Discrete Fourier Transform(DFT)과 같은 주파수 변환을 적용시킨다(51).Subsequently, a frequency transform such as a Discrete Fourier Transform (DFT) is applied to each frame (51).

이어서, 주파수 변환 결과를 Ns개의 서브밴드로 나눠 각각의 에너지를 구하며, 여기서 n번 프레임의 m번 서브밴드의 에너지를 E(n,m)로 나타낸다(52).Subsequently, the result of the frequency conversion is divided into N s subbands to obtain respective energies. Here, the energy of subband m of frame n is represented by E (n, m) (52).

이어서, 각 서브밴드 마다 시간상으로 연속된 L개의 서브밴드 에너지 E(n, m), E(n+1, m), …, E(n+L-1, m)를 입력으로 하여 길이 L의 주파수 변환을 한다. 여기서 사용하는 주파수 변환 방식은 Decorrelation 특성 및 에너지 압축 특성이 좋은 Discrete Cosine Transform(DCT)와 같은 것을 사용할 수 있다. Decorrelation 특성은 각 주파수 계수 사이에 상관이 적도록 하여 별도로 취급 가능하도록 해준다. 따라서 추가적인 주파수 계수를 사용하여 서브핑거프린트를 만들게 되면 성능이 향상될 수 있다. 에너지 압축 특성은 낮은 주파수 계수에 에너지가 모이는 특성으로 적은 수의 계수를 사용해 서브핑거프린트를 만드는데 충분한 정보를 나타낼 수 있도록 한다. 인접한 프레임의 정보가 아니라 L개의 연속된 프레임으로부터 얻은 정보를 이용하므로 보다 잡음에 강인한 서브핑거프린트를 구할 수 있게 된다(53).Subsequently, L subband energies E (n, m), E (n + 1, m),... , E (n + L-1, m) is input and frequency conversion of length L is performed. The frequency conversion method used here may be a Discrete Cosine Transform (DCT), which has good decorrelation characteristics and energy compression characteristics. The Decorrelation feature allows a small correlation between each frequency coefficient so that it can be handled separately. Therefore, creating subfingerprints with additional frequency coefficients can improve performance. Energy compression is a feature that gathers energy at low frequency coefficients so that enough information can be presented to create a subfingerprint using fewer coefficients. Since information obtained from L consecutive frames is used instead of information of adjacent frames, a subfinger print that is more robust to noise can be obtained (53).

이어서, 단계 53에서 구해진 주파수 계수로부터 서브핑거프린트를 산출한다. 에너지 압축 특성 때문에, 구해진 L개의 계수를 전부 사용하지 않고 K개만을 사용 하여 서브핑거프린트를 만들게 된다. 각 프레임의 각 서브밴드마다 K개의 계수를 얻게 되는데 n번 프레임의 m번 서브밴드에 대해 얻은 k번째 계수를 Ck(n, m)라고 하면(k=1, 2, …, K), 계수들의 차이 값을 이용하여 다음 수학식 2와 같이 서브핑거프린트를 구할 수 있다.Subsequently, a subfingerprint is calculated from the frequency coefficient obtained in step 53. Because of the energy compression characteristics, the subfingerprint is made using only K, not all of the obtained L coefficients. We obtain K coefficients for each subband of each frame. If the kth coefficient obtained for subband m of frame n is C k (n, m) (k = 1, 2,…, K), The subfingerprint can be obtained using Equation 2 as shown in Equation 2 below.

Figure 112009023938514-PAT00002
Figure 112009023938514-PAT00002

위의 수학식 2에서는 바로 이전 프레임에서 구한 계수 Ck(n-1, m)가 아니라 L 프레임 이전의 계수 Ck(n-L, m)를 사용하고 있다. 이것은 주파수 계수를 구할 때 사용한 서브밴드 에너지가 중복되지 않도록 하기 위함이다. 이렇게 해서 K개의 주파수 계수 각각에 대해 서브핑거프린트가 구해진다(54).In Equation 2, the coefficient C k (nL, m) before the L frame is used instead of the coefficient C k (n−1, m) obtained from the previous frame. This is to avoid overlapping the subband energy used when obtaining the frequency coefficient. In this way, subfingerprints are obtained for each of the K frequency coefficients (54).

이어서, 위에서 설명한 서브핑거프린트 계산 방식을 이용하여 대량의 오디오에 대해 서브핑거프린트를 구하여 데이터베이스에 저장을 한다. 또한 검색을 위해서 해시 테이블을 사용하게 되는데 종래의 방식과 달리 각 주파수 계수별로 해시 테이블을 만들게 되며, 본 발명의 일실시예에서는 K개의 해시 테이블이 생성이 된다(55).Subsequently, a subfingerprint is obtained for a large amount of audio and stored in a database using the subfingerprint calculation method described above. In addition, a hash table is used for searching. Unlike the conventional method, a hash table is generated for each frequency coefficient. In one embodiment of the present invention, K hash tables are generated (55).

이하에서는 도 6을 참조하여 본 발명의 일실시예에 따른 다중 해싱에 기초한 오디오 핑거프린팅 시스템에서 오디오를 검색하는 방법을 설명하도록 한다.Hereinafter, a method of searching for audio in an audio fingerprinting system based on multiple hashing according to an embodiment of the present invention will be described with reference to FIG. 6.

도 5에서 설명한 서브핑거프린트를 구하는 단계 50 내지 54를 이용하여, 입력된 오디오로부터 서브핑거프린트를 구한다. 각 주파수 계수마다 서브핑거프린트가 구해지고, 계수별로 Nb개의 연속된 서브핑거프린트를 모아서 핑거프린트 블록을 구성한다. 따라서 총 K개의 핑거프린트 블록이 구해지며, k번 핑거프린트 블록은 k번째 주파수 계수로부터 구해진 서브핑거프린트로 구성되어 있다(60).The subfingerprint is obtained from the input audio using the steps 50 to 54 of the subfingerprint described with reference to FIG. 5. Each frequency coefficient sub-fingerprint is obtained, Collect b N consecutive sub-fingerprint for each coefficient block constitute a fingerprint. Accordingly, a total of K fingerprint blocks are obtained, and the k fingerprint block is composed of subfingerprints obtained from the k th frequency coefficient (60).

이어서, 단계 60에서 구한 K개의 핑거프린트 블록에 있는 모든 서브핑거프린트에 대해 각 해시 테이블을 사용하여 후보 오디오들의 위치를 찾는다. 즉, k번째 계수로부터 구해진 서브핑거프린트의 경우 k번 해시 테이블을 사용하여 후보 오디오의 위치를 검색한다(61).Subsequently, for each subfingerprint in the K fingerprint blocks obtained in step 60, each hash table is used to locate candidate audios. That is, in the case of the subfingerprint obtained from the k th coefficient, the position of the candidate audio is searched using the hash table k (61).

검색된 후보 오디오에 대해서 핑거프린트 블록을 구한 다음 입력된 오디오의 핑거프린트 블록과 비교하여 BER을 계산한다(62).A fingerprint block is obtained for the found candidate audio, and then compared with a fingerprint block of the input audio, a BER is calculated (62).

계산된 BER을 미리 지정된 문턱 값과 비교를 하여, 문턱 값보다 작으면(63) 그 오디오가 결과로 선택이 된다(64). 만약 모든 BER이 문턱 값보다 크면 데이터베이스에서 입력된 오디오를 찾지 못한 것이다(65).The calculated BER is compared with a predetermined threshold, and if it is less than the threshold (63), the audio is selected as a result (64). If all BERs are greater than the threshold, the audio input from the database was not found (65).

이하에서는 아래 표 1을 참고로 하여, 본 발명의 일실시예에 따른 다중 해싱에 기초한 오디오 핑거프린팅 시스템의 검색 성공 확률을 설명한다.Hereinafter, referring to Table 1 below, a search success probability of an audio fingerprinting system based on multiple hashing according to an embodiment of the present invention will be described.

PRHPRH MLHMLH Hash Tabel 개수Hash Tabel Count 1One 1One 22 33 Set 1Set 1 97.7597.75 98.5898.58 99.0899.08 99.3399.33 Set 2Set 2 92.2592.25 94.0094.00 96.7596.75 97.5097.50 Set 3Set 3 96.8396.83 97.1797.17 98.1798.17 98.5098.50 Set 4Set 4 34.7534.75 37.7537.75 52.3352.33 60.6760.67

상기 표 1에서, Set 1은 음악 파일에 백색 잡음(White noise)을 0dB SNR로 더한 것을 나타내며, Set 2는 음악 파일에 백색 잡음을 5dB SNR로 더한 것을 나타낸다. 또한, Set 3은 조용한 사무실 환경에서 재생 및 녹음한 것을 나타내며, Set 4는 시끄러운 사무실 환경에서 재생 및 녹음한 것을 나타낸다.In Table 1, Set 1 represents white noise added to the music file at 0dB SNR, and Set 2 represents white music added to the music file at 5dB SNR. In addition, Set 3 represents playback and recording in a quiet office environment, and Set 4 represents playback and recording in a noisy office environment.

표 1로부터, 본 발명에서 제안하고 있는 다중 해싱에 기초한 오디오 핑거프린팅 시스템이 종래의 Philips Robust Hash(PRH) 시스템보다 검색 성능이 더 뛰어남을 분명하게 확인할 수 있다. 또한, 본 발명에서 제안하고 있는 다중 해싱에 기초한 오디오 핑거프린팅 시스템은 해시 테이블이 증가함에 따라 검색 성능이 더 높아지며, 특히 잡음이 많은 실제 환경에서의 검색 성능이 월등히 향상되는 것을 확인할 수 있다.From Table 1, it can be clearly seen that the audio fingerprinting system based on the multiple hashing proposed by the present invention is superior to the conventional Philips Robust Hash (PRH) system. In addition, the audio fingerprinting system based on the multiple hashing proposed in the present invention has higher search performance as the hash table is increased, and in particular, the search performance is significantly improved in a noisy real environment.

이상 설명한 바와 같이 본 발명은 본 발명이 속한 기술분야에서 통상의 지식을 가진 자에 의하여 다양한 변형이나 응용이 가능하며, 본 발명에 따른 기술적 사상의 범위는 아래의 특허청구범위에 의하여 정해져야 할 것이다.As described above, the present invention can be variously modified or applied by those skilled in the art, and the scope of the technical idea according to the present invention should be determined by the claims below. .

도 1은 종래 오디오 핑거프린팅 시스템의 데이터베이스 구축을 나타낸 도면.1 is a diagram showing a database construction of a conventional audio fingerprinting system.

도 2는 종래 오디오 핑거프린팅 시스템의 검색 과정을 나타낸 도면.2 is a diagram illustrating a search process of a conventional audio fingerprinting system.

도 3은 종래 오디오 핑거프린팅 시스템에서 서브핑거프린트의 계산 과정을 나타낸 흐름도.3 is a flowchart illustrating a process of calculating a subfingerprint in a conventional audio fingerprinting system.

도 4는 종래 오디오 핑거프린팅 시스템에서 해시 테이블을 이용하여 후보 오디오를 검색하는 도면.4 is a diagram for searching for candidate audio using a hash table in a conventional audio fingerprinting system.

도 5는 본 발명의 일실시예에 따른 주파수 도메인에서의 다중 해싱에 기초한 오디오 핑거프린팅 시스템의 제어 방법을 나타낸 흐름도.5 is a flowchart illustrating a control method of an audio fingerprinting system based on multiple hashing in the frequency domain according to an embodiment of the present invention.

도 6은 본 발명의 일실시예에 따른 다중 해싱에 기초한 오디오 핑거프린팅 시스템에서 오디오를 검색하는 방법을 나타낸 흐름도.6 is a flowchart illustrating a method for searching for audio in an audio fingerprinting system based on multiple hashing according to an embodiment of the present invention.

Claims (5)

(1) 오디오를 중첩되는 프레임으로 분할하고, 상기 분할된 프레임을 주파수로 변환하는 단계;(1) dividing audio into overlapping frames and converting the divided frames into frequencies; (2) 상기 변환된 주파수를 복수의 서브밴드로 나누고, 각 서브밴드의 에너지를 구하는 단계;(2) dividing the converted frequency into a plurality of subbands and obtaining energy of each subband; (3) 상기 구한 서브밴드의 에너지들을 주파수 변환을 수행하여 각 주파수 계수를 획득하는 단계;(3) performing frequency conversion on the obtained subband energies to obtain respective frequency coefficients; (4) 상기 획득한 주파수 계수마다 서브핑거프린트를 산출하는 단계; 및(4) calculating a subfingerprint for each obtained frequency coefficient; And (5) 상기 산출된 서브핑거프린트를 데이터베이스에 저장하고, 상기 획득한 각 주파수 계수마다 해시 테이블을 생성하는 단계(5) storing the calculated subfingerprint in a database and generating a hash table for each obtained frequency coefficient 를 포함하는 것을 특징으로 하는 다중 해싱에 기초한 오디오 핑거프린팅 시스템.Audio fingerprinting system based on multiple hashing comprising a. 제1항에 있어서, The method of claim 1, (6) 오디오가 입력되면, 상기 입력받은 오디오를 상기 단계 (1) 내지 (4)를 수행하여 서브핑거프린트를 산출하는 단계;(6) when audio is input, calculating the subfingerprint by performing the steps (1) to (4) on the received audio; (7) 상기 입력받은 오디오의 서브핑거프린트와 상기 단계 (5)의 해시 테이블을 이용하여 상기 입력받은 오디오와 유사한 후보 오디오의 위치를 검색하는 단계;(7) searching for positions of candidate audio similar to the input audio by using the subfingerprint of the input audio and the hash table of step (5); (8) 상기 검색된 후보 오디오의 핑거프린트 블록과 입력받은 오디오의 핑거프린트 블록을 비교하여 비트 에러율(Bit Error Rate)을 구하는 단계; 및(8) obtaining a bit error rate by comparing the fingerprint block of the found candidate audio with the fingerprint block of the received audio; And (9) 상기 비트 에러율이 미리 지정된 문턱 값보다 작으면 상기 검색된 후보 오디오가 입력받은 오디오와 동일하다고 판단하는 단계(9) determining that the found candidate audio is the same as the input audio if the bit error rate is smaller than a predetermined threshold value; 를 더 포함하는 것을 특징으로 하는 다중 해싱에 기초한 오디오 핑거프린팅 시스템.Audio fingerprinting system based on multiple hashing further comprising a. 제1항에 있어서, 상기 단계 (3)에서,The method of claim 1, wherein in step (3), 상기 각 서브밴드 마다 시간상으로 연속된 L개의 서브밴드 에너지를 이용하여 길이 L의 주파수 변환을 수행하는 것을 특징으로 하는 다중 해싱에 기초한 오디오 핑거프린팅 시스템.And a frequency conversion of length L using L subband energies contiguous in time for each of the subbands. 제3항에 있어서, 상기 단계 (3)에서,The method of claim 3, wherein in step (3), 상기 주파수 변환은 DCT(Discrete Cosine Transform)를 포함하는 것을 특징으로 하는 다중 해싱에 기초한 오디오 핑거프린팅 시스템.And said frequency transform comprises a discrete cosine transform (DCT). 제3항에 있어서, 상기 단계 (4)에서,The process according to claim 3, wherein in step (4), 각 프레임의 각 서브밴드마다 상기 L개 보다 작거나 같은 K개의 주파수 계수를 얻으며, 상기 K개의 주파수 계수들의 차이 값을 이용하여 서브핑거프린트를 구하는 것을 특징으로 하는 다중 해싱에 기초한 오디오 핑거프린팅 시스템.And obtaining K frequency coefficients less than or equal to L for each subband of each frame, and obtaining subfingerprints using difference values of the K frequency coefficients.
KR1020090034455A 2009-04-21 2009-04-21 An audio fingerprinting system based on multiple hashing technique KR20100115849A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090034455A KR20100115849A (en) 2009-04-21 2009-04-21 An audio fingerprinting system based on multiple hashing technique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090034455A KR20100115849A (en) 2009-04-21 2009-04-21 An audio fingerprinting system based on multiple hashing technique

Publications (1)

Publication Number Publication Date
KR20100115849A true KR20100115849A (en) 2010-10-29

Family

ID=43134569

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090034455A KR20100115849A (en) 2009-04-21 2009-04-21 An audio fingerprinting system based on multiple hashing technique

Country Status (1)

Country Link
KR (1) KR20100115849A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101661666B1 (en) * 2015-11-20 2016-09-30 광운대학교 산학협력단 Hybrid audio fingerprinting apparatus and method
CN110767248A (en) * 2019-09-04 2020-02-07 太原理工大学 Anti-modulation interference audio fingerprint extraction method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101661666B1 (en) * 2015-11-20 2016-09-30 광운대학교 산학협력단 Hybrid audio fingerprinting apparatus and method
CN110767248A (en) * 2019-09-04 2020-02-07 太原理工大学 Anti-modulation interference audio fingerprint extraction method
CN110767248B (en) * 2019-09-04 2022-03-22 太原理工大学 Anti-modulation interference audio fingerprint extraction method

Similar Documents

Publication Publication Date Title
JP5907511B2 (en) System and method for audio media recognition
JP4902565B2 (en) How to hash a digital signal
US8977067B1 (en) Audio identification using wavelet-based signatures
US20140310006A1 (en) Method to generate audio fingerprints
Cano et al. A review of algorithms for audio fingerprinting
KR100862616B1 (en) Searching system and method of audio fingerprint by index information
KR102614021B1 (en) Audio content recognition method and device
US10089994B1 (en) Acoustic fingerprint extraction and matching
AU2001289766A1 (en) System and methods for recognizing sound and music signals in high noise and distortion
JP2010530100A (en) Method and apparatus for improving audio / video fingerprint search accuracy using a combination of multiple searches
Ellis et al. Echoprint: An open music identification service
RU2459281C1 (en) Device and method to generate signature of acoustic signal, device to identify acoustic signal
Coover et al. A power mask based audio fingerprint
George et al. Scalable and robust audio fingerprinting method tolerable to time-stretching
JP6462111B2 (en) Method and apparatus for generating a fingerprint of an information signal
KR20100115849A (en) An audio fingerprinting system based on multiple hashing technique
JP5384952B2 (en) Feature amount extraction apparatus, feature amount extraction method, and program
US7505897B2 (en) Generalized Lempel-Ziv compression for multimedia signals
CN111382303B (en) Audio sample retrieval method based on fingerprint weight
Liu et al. Audio fingerprinting based on multiple hashing in DCT domain
Saravanos et al. Audio-fingerprinting via dictionary learning
You et al. Music Identification System Using MPEG‐7 Audio Signature Descriptors
JP4394083B2 (en) Signal detection apparatus, signal detection method, signal detection program, and recording medium
CN102474267B (en) Method for vector quantization of a feature vector
CN110097893B (en) Audio signal conversion method and device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application