KR101095968B1 - Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window - Google Patents

Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window Download PDF

Info

Publication number
KR101095968B1
KR101095968B1 KR1020100004696A KR20100004696A KR101095968B1 KR 101095968 B1 KR101095968 B1 KR 101095968B1 KR 1020100004696 A KR1020100004696 A KR 1020100004696A KR 20100004696 A KR20100004696 A KR 20100004696A KR 101095968 B1 KR101095968 B1 KR 101095968B1
Authority
KR
South Korea
Prior art keywords
frequency
melody
audio signal
frame
analysis window
Prior art date
Application number
KR1020100004696A
Other languages
Korean (ko)
Other versions
KR20110085090A (en
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 KR1020100004696A priority Critical patent/KR101095968B1/en
Publication of KR20110085090A publication Critical patent/KR20110085090A/en
Application granted granted Critical
Publication of KR101095968B1 publication Critical patent/KR101095968B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/45Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of analysis window
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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/90Pitch determination of speech signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/541Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
    • G10H2250/631Waveform resampling, i.e. sample rate conversion or sample depth conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computational Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Mathematical Optimization (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Auxiliary Devices For Music (AREA)

Abstract

본 발명은 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법에 관한 것이다.
이를 위해 본 발명은, 입력된 오디오 신호를 리샘플링하는 제 1단계와, 시간 영역 기준으로 입력된 오디오 신호를 주파수 영역 기준의 신호로 변환하는 제 2단계와, 상기 제 2단계를 통하여 얻어진 각 프레임의 스펙트럼에서 진폭의 피크 값과 상기 피크 값이 나타나는 위치의 주파수 값을 추출하는 제 3단계와, 상기 제 3단계를 통하여 추출된 값들을 바탕으로 각 프레임의 멜로디 피치가 존재하는 범위를 재설정하는 제 4단계와, 상기 제 2단계를 통하여 주파수 영역 기준의 신호로 변환된 결과에서 프레임 간의 자기상관계수를 파악하는 방법으로 멜로디 피치의 동적 변화 정보를 구하는 제 5단계와, 상기 제 4단계를 통하여 재설정된 각 프레임의 멜로디 피치가 존재하는 범위에 관한 정보 및 상기 제 5단계를 통하여 구한 멜로디 피치의 동적 변화 정보를 이용하여 각 프레임에 대응되는 분석 창의 길이를 설정하는 제 6단계와, 고주파수 통과 필터를 이용하여 오디오 신호에서 베이스 신호 및 저주파수 신호를 제거하는 제 7단계와, 상기 제 7단계를 통하여 고주파수 통과 필터를 통과한 오디오 신호를 상기 제 6단계에서 길이가 설정된 각 프레임에 대응되는 분석 창을 이용하여 단시간 푸리에 변환 하는 제 8단계 및 상기 제 8단계를 통하여 단시간 푸리에 변환된 오디오 신호를 주파수 영역의 분해능을 높이기 위해 다중비율필터뱅크를 통과 시키는 제 9단계를 포함한다.
The present invention relates to a frequency analysis method using an analysis window having a fluid length in an audio signal having several sounds.
To this end, the present invention provides a first step of resampling an input audio signal, a second step of converting an audio signal input on a time domain basis into a signal on a frequency domain basis, and a second step of each frame obtained through the second step. A third step of extracting a peak value of an amplitude and a frequency value of a position where the peak value appears in a spectrum, and a fourth step of resetting a range in which a melody pitch of each frame exists based on values extracted through the third step And a fifth step of obtaining the dynamic change information of the melody pitch by determining the autocorrelation coefficient between the frames in the result obtained by converting the signal to the frequency domain reference signal through the second step, and resetting through the fourth step. Information on the range in which the melody pitch of each frame exists, and dynamic change information of the melody pitch obtained through the fifth step. A sixth step of setting the length of the analysis window corresponding to each frame by using the second frame; a seventh step of removing the base signal and the low frequency signal from the audio signal using a high frequency pass filter; and a seventh step In order to increase the resolution of the short-time Fourier transformed audio signal through the eighth step and the eighth step by using an analysis window corresponding to each frame whose length is set in the sixth step, A ninth step of passing the multi-rate filter bank is included.

Description

여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법{Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window}Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window}

본 발명은 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용하여 주파수를 분석하는 방법에 관한 것이다.
The present invention relates to a method of analyzing a frequency using an analysis window having a fluid length in an audio signal having several sounds.

컴퓨터의 발전과 정보의 디지털화 덕분에 많은 자료나 문서들이 쉽게 보관되거나 관리되고 있다. 음악의 경우에도 디지털화와 장비의 발달에 의해 기존 보다 쉽게 작곡과 편곡이 가능하게 되었으며, 이는 새롭고 다양한 음악들이 산출되도록 이끌었다. Thanks to the development of computers and the digitization of information, many materials and documents are easily stored and managed. In the case of music, digitization and the development of equipment made it easier to compose and arrange music, which led to the production of new and diverse music.

한편, 매년 새롭게 생겨나는 수많은 음악들을 편리하고 체계적으로 관리하기 위해서 많은 기업과 단체들은 노래의 제목, 가수, 작곡가, 시대, 가사, 장르 등에 대한 정보를 문자 형식 기반의 디지털 정보로 저장하여 관리하고 있다.Meanwhile, in order to conveniently and systematically manage a large number of newly created music, many companies and organizations store and manage information on song titles, singers, composers, eras, lyrics, and genres as text-based digital information. .

이와 같이 디지털화된 음악 관리 덕분에 우리는 손쉽게 원하는 음악을 찾거나 검색할 수 있게 되었으며, 이는 현재 인터넷이나 핸드폰 등을 통해 널리 이용되고 있는 음악 검색 시스템의 기초가 되었다.This digitized music management makes it easy for us to find and search for the music we want, which is the basis of the music search system that is now widely used on the Internet and mobile phones.

오늘 날 널리 이용되고 있는 음악 검색 시스템은 음악의 제목, 가사, 작곡가 등에 대한 정보를 문자 형식으로 입력하여 원하는 음악을 검색하는 문자 기반 음악 검색 시스템(Text-Based Music Information Retrieval System)이다.The music retrieval system widely used today is a text-based music information retrieval system for retrieving desired music by inputting information about music titles, lyrics, and composers in a text format.

하지만, 음악 기술과 장비의 발전에 힘입어 이제는 단순한 문자 정보만이 아닌 음악의 멜로디나 분위기, 코드, 리듬 등의 음악 내용을 이용한 검색 시스템이 주목받고 있는데, 이와 같은 검색 시스템을 내용 기반 음악 검색 시스템(Content-Based Music Information Retrieval System)이라고 한다.However, thanks to the development of music technology and equipment, a search system using music contents such as melody, mood, chord, and rhythm of music, as well as simple textual information, is now attracting attention. It is called (Content-Based Music Information Retrieval System).

상기 내용 기반 음악 검색 시스템에서 음악을 구분하고 분석하는데 가장 중요하게 사용되는 정보 중 하나가 멜로디 정보이다. 비록 현재까지는 멜로디에 대한 기술적 정의는 명확하게 정의되어 있지 않지만, 일반적으로 통용되는 멜로디의 정의는 다음과 같다.Melody information is one of the most important information used to classify and analyze music in the content-based music retrieval system. Although the technical definition of melody is not clearly defined so far, the general definition of melody is as follows.

멜로디란, 사람들이 여러 악기의 소리와 목소리가 섞인 음악을 듣고 그 음악을 생각할 때 떠올리는 대표적인 사람의 목소리나 악기의 소리를 의미한다. 또한, 멜로디는 하모닉 구조(Harmonic Structure)를 가지며 그 에너지 크기가 다른 소리와 비교하여 우세하게 나타나는 경향이 있다.Melody refers to the voice of a typical person's voice or an instrument that people think of when they listen to music mixed with the sounds and sounds of various instruments. Melody also has a harmonic structure and its energy magnitude tends to prevail compared to other sounds.

신뢰할만한 멜로디 정보를 추출하기 위해서는 여러 음을 가지는 다음 오디오 신호를 올바르게 분석하고 해석해야 한다. 일반적으로 오디오 신호를 해석하는 방법에는 그 기준에 따라 시간 도메인(Time Domain)에서 오디오 신호를 해석하는 방법과 주파수 도메인(Frequency Domain)에서 신호를 해석하는 방법으로 나눌 수 있다.In order to extract reliable melody information, the next audio signal with multiple notes must be correctly analyzed and interpreted. In general, an audio signal may be divided into a method of analyzing an audio signal in a time domain and a method of analyzing a signal in a frequency domain according to a reference.

여기서, 여러 음을 가지는 오디오 신호의 멜로디와 이외의 리듬, 코드, 분위기와 같은 음악 내용 기반의 정보를 분석하기 위해서는 푸리에 변환(Fourier Transform)을 이용한 주파수 도메인에서의 해석 방법이 널리 이용된다. 따라서, 올바른 다음 오디오 신호의 분석을 위해서는 보다 정확하고 세밀한 주파수 성분 분석 방법이 필요한 실정이다.Here, in order to analyze the information of music contents based on the melody and other rhythms, chords, and moods of an audio signal having various sounds, an analysis method in the frequency domain using Fourier transform is widely used. Therefore, a more accurate and detailed method of analyzing frequency components is needed to analyze the next correct audio signal.

한편, 여러 음을 가지는 오디오 신호에서 신뢰할 만한 결과의 멜로디를 추출하기 위한 방해 요인 중 하나로 멜로디 피치의 동적 변화(Dynamic Variation of Melody)가 있다. 음악의 멜로디는 항상 일정한 것은 아니기 때문에 시간에 따른 변화가 발생하며, 때에 따라 갑작스러운 음의 변화가 발생하기도 한다. 즉, 특정 음을 연주하다가 다른 음으로 전환이 지속적으로 발생한다On the other hand, one of the obstacles for extracting the melody of the reliable result from the audio signal having a multi-tone is the dynamic variation of the melody pitch (Dynamic Variation of Melody). Since the melody of music is not always constant, a change occurs over time, and sometimes a sudden change in sound occurs. In other words, while playing a particular note, switching to another note occurs continuously

이와같이 전환되는 동적 변화는 그 음악의 악보에 의해 결정되므로 미리 예측하기가 어렵다는 문제점이 있다. 또한, 상기와 같이 멜로디가 전화되는 구간과 멜로디가 시작되고 끝이 나는 구간에서는 기본 주파수가 빨리 변화하기 때문에 멜로디 피치 주파수를 찾는데 어려움이 있다는 문제점이 있다.
The dynamic change that is converted in this way is determined by the score of the music, so there is a problem that it is difficult to predict in advance. In addition, there is a problem in that it is difficult to find the melody pitch frequency since the fundamental frequency changes quickly in the section in which the melody is called and the melody starts and ends as described above.

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로서, 여러 음을 가지는 오디오 신호에서의 올바른 멜로디 추출 및 음악 내용 정보들을 추출하기 위하여 보다 신뢰할 만하고 정확한 주파수 정보 분석 방법을 제공하는데 그 목적이 있다.The present invention has been made to solve the above problems, and an object thereof is to provide a more reliable and accurate frequency information analysis method for extracting correct melody and music content information from an audio signal having several sounds.

이를 위하여 본 발명은 상술한 바와 같은 동적 변화를 가지는 멜로디의 피치에 대해서도 기존의 고정된 길이의 분석 창을 이용한 주파수 분석 방법 보다 더욱 신뢰할 수 있는 결과의 멜로디 피치 정보를 얻을 수 있도록 유동적인 길이의 분석 창을 이용한 주파수 분석 방법을 제공한다.
To this end, the present invention is to analyze the flexible length of the melody having the dynamic change as described above to obtain the melody pitch information of the result more reliable than the frequency analysis method using the conventional fixed length analysis window Provides a frequency analysis method using the window.

상기한 바와 같은 목적을 달성하기 위해 본 발명에 따른 주파수 분석 방법은, 입력된 오디오 신호를 리샘플링(Resampling)하는 제 1단계와, 시간 영역(Time Domain) 기준으로 입력된 오디오 신호를 주파수 영역(Frequency Domain) 기준의 신호로 변환하는 제 2단계와, 상기 제 2단계를 통하여 얻어진 각 프레임의 스펙트럼에서 진폭의 피크 값과 상기 피크 값이 나타나는 위치의 주파수 값을 추출하는 제 3단계와, 상기 제 3단계를 통하여 추출된 값들을 바탕으로 각 프레임의 멜로디 피치가 존재하는 범위를 재설정하는 제 4단계와, 상기 제 2단계를 통하여 주파수 영역 기준의 신호로 변환된 결과에서 프레임 간의 자기상관계수를 파악하는 방법으로 멜로디 피치의 동적 변화 정보를 구하는 제 5단계와, 상기 제 4단계를 통하여 재설정된 각 프레임의 멜로디 피치가 존재하는 범위에 관한 정보 및 상기 제 5단계를 통하여 구한 멜로디 피치의 동적 변화 정보를 이용하여 각 프레임에 대응되는 분석 창의 길이를 설정하는 제 6단계와, 고주파수 통과 필터(HPF)를 이용하여 오디오 신호에서 베이스 신호 및 저주파수 신호를 제거하는 제 7단계와, 상기 제 7단계를 통하여 고주파수 통과 필터(HPF)를 통과한 오디오 신호를 상기 제 6단계에서 길이가 설정된 각 프레임에 대응되는 분석 창을 이용하여 단시간 푸리에 변환(STFT)하는 제 8단계 및 상기 제 8단계를 통하여 단시간 푸리에 변환된(STFT) 오디오 신호를 주파수 영역의 분해능(Resolution)을 높이기 위해 다중비율필터뱅크(Multi-Rate Filter Bank)를 통과 시키는 제 9단계를 포함한다.In order to achieve the above object, a frequency analysis method according to the present invention includes a first step of resampling an input audio signal, and a frequency domain of an input audio signal on a time domain basis. Domain); a third step of extracting a peak value of an amplitude and a frequency value of a position where the peak value appears from the spectrum of each frame obtained through the second step; A fourth step of resetting a range in which the melody pitch of each frame exists based on the values extracted through the step; and identifying autocorrelation coefficients between frames in the result of conversion into a signal based on a frequency domain through the second step A fifth step of obtaining dynamic change information of the melody pitch by the method and a melody pitch of each frame reset through the fourth step Is a sixth step of setting the length of the analysis window corresponding to each frame by using the information on the range and the dynamic change information of the melody pitch obtained through the fifth step, and using the high frequency pass filter (HPF) in the audio signal. The seventh step of removing the base signal and the low frequency signal, and the audio signal passed through the high frequency pass filter (HPF) through the seventh step using an analysis window corresponding to each frame whose length is set in the sixth step for a short time Passing the short-term Fourier transform (STFT) audio signal through a multi-rate filter bank to increase the resolution of the frequency domain through the eighth and eighth steps of Fourier transform (STFT) The ninth step is included.

상기 제 2단계는 고정된 길이의 분석 창(Fixed length Analysis Window)을 이용한 단시간 푸리에 변환(STFT)을 적용하여 시간 영역 기준으로 입력된 오디오 신호를 주파수 영역 기준의 신호로 변환한다.The second step converts an audio signal input on a time domain basis into a signal on a frequency domain basis by applying a short time Fourier transform (STFT) using a fixed length analysis window.

상기 제 3단계의 상기 피크 값이 나타나는 위치의 주파수 값은 주파수 빈의 번호, 이산 푸리에 변환(DFT)의 빈의 개수 및 리샘플링 주파수를 이용하여 추출한다. 상기 제 3단계의 상기 피크 값이 나타나는 위치의 주파수 값은 하기의 수학식 1에 의해 구할 수 있다.The frequency value of the position where the peak value appears in the third step is extracted using the number of frequency bins, the number of bins of the discrete Fourier transform (DFT), and the resampling frequency. The frequency value of the position where the peak value of the third step appears can be obtained by Equation 1 below.

[수학식 1][Equation 1]

Figure 112010003459275-pat00001
Figure 112010003459275-pat00001

Figure 112010003459275-pat00002
Figure 112010003459275-pat00002

상기 제 4단계는, 멜로디 피크의 값을 크기 순으로 정렬하여 상위 K개의 피크 값 및 상기 피크 값이 나타나는 주파수 값을 추출하는 제 1과정과, 상기 제 1과정을 통하여 추출된 피크 값 및 상기 피크 값이 나타나는 위치의 주파수 값 중에서 처음 설정한 멜로디 범위 안에 존재하는 모든 피크 값들을 찾아 이들을 잠재적인 멜로디 후보로 선정하는 제 2과정과, 상기 제 2과정을 통하여 선정된 잠재적인 멜로디 후보들을 바탕으로 멜로디 범위를 재설정하기 위하여 상기 잠재적인 멜로디 후보에서 각 후보의 주파수를 멜로디의 기본 주파수로 간주하고, 상기 제 1과정을 통하여 추출된 상위 K개의 피크 값이 나타나는 주파수 값 중에서 상기 기본 주파수의 하모닉 성분에 해당하는 주파수 주위에 피크 값이 있으며 상기 피크 값을 기본 주파수 피크 값에 더하는 방법으로 상기 처음 설정한 멜로디 범위 내에 존재하는 모든 피크 값들에 대해 하모닉 성분을 조사하고 피크 값을 더하는 제 3과정과, 상기 제 3과정을 통하여 더해진 상기 피크 값에 기본 주파수가 낮을수록 작은 값을 곱하고 기본 주파수가 보다 높을수록 보다 높은 값을 곱하여 얻어진 결과 중에서 값이 큰 순서대로 N개의 후보를 찾는 제 4과정 및 상기 제 1과정 내지 제 4과정을 각 프레임마다 적용하여 전체 프레임에서 멜로디 피치가 존재하는 범위를 알아내는 제 5과정을 포함한다.In the fourth step, a first process of extracting the top K peak values and the frequency value at which the peak values appear by arranging the values of the melody peaks in order of magnitude, and the peak value and the peak extracted through the first process A second process of finding all peak values existing in the melody range initially set among the frequency values at the position where the value appears and selecting them as potential melody candidates, and a melody based on the potential melody candidates selected through the second process. To reset the range, the frequency of each candidate in the potential melody candidate is regarded as the fundamental frequency of the melody, and corresponds to the harmonic component of the fundamental frequency among the frequency values at which the upper K peak values extracted through the first process appear. Peak value around the frequency, and the peak value is added to the fundamental frequency peak value. In the method, the third process of investigating the harmonic component and adding the peak values to all the peak values existing within the melody range initially set is multiplied by the smaller values as the fundamental frequency is lowered to the peak values added through the third process. As the fundamental frequency is higher, the fourth process of finding N candidates in the order of the higher values among the results obtained by multiplying the higher values, and the first to fourth processes are applied for each frame, and the melody pitch exists in the entire frame. Include the fifth step of finding out the range.

상기 제 5단계는 상기 제 2단계를 통하여 주파수 영역 기준의 신호로 변환된 결과에서 프레임 간의 자기상관계수를 파악하는 방법으로 멜로디 피치의 동적 변화 정보를 구하며, 상기 자기상관계수는 하기의 수학식 2에 의해 구할 수 있다.In the fifth step, the dynamic change information of the melody pitch is obtained by determining the autocorrelation coefficient between frames in the result of conversion to the signal based on the frequency domain through the second step, and the autocorrelation coefficient is Can be obtained by

[수학식 2][Equation 2]

Figure 112010003459275-pat00003
Figure 112010003459275-pat00003

상기 제 6단계는 각 프레임에 대응되는 분석 창의 길이를 설정하며, 상기 분석 창의 길이는 멜로디 피치 값이 낮고 일정하게 유지될수록 긴 분석 창이, 멜로디 피치 값이 높고 동적 변화가 심할수록 보다 짧은 분석 창이 사용될 수 있다.
In the sixth step, the length of the analysis window corresponding to each frame is set, and the length of the analysis window is lower as the melody pitch value is kept constant and the longer analysis window is used. Can be.

또한, 본 발명에 따른 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법은 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 형태로 이용될 수 있다.
In addition, the frequency analysis method using the analysis window having a flexible length in the audio signal having a plurality of sounds according to the present invention can be used in the form of a computer-readable recording medium recording a computer program.

상기한 바와 같이 본 발명에 따른 주파수 분석 방법에 의하면, 멜로디의 하모닉 특성과 멜로디의 에너지 성분이 가장 두드러진다는 특성을 이용하여 멜로디 피치가 존재하는 범위를 예측하고, 자기 상관계수를 이용하여 멜로디의 동적 변화 영역을 파악할 수 있는 효과가 있다.As described above, according to the frequency analysis method according to the present invention, the harmonic property of the melody and the energy component of the melody are most prominent to predict the range of the melody pitch, and the dynamic of the melody using the autocorrelation coefficient. It is effective to identify the area of change.

또한, 상기 두 결과를 조합하여 유동적인 길이 분석 창을 이용한 오디오 신호 주파수 분석을 수행함으로써 여러 음을 가지는 오디오 신호에서 보다 신뢰할 만한 멜로디 피치 정보를 추출이 가능하도록 하는 효과가 있다.
In addition, by combining the two results and performing an audio signal frequency analysis using a flexible length analysis window, it is possible to extract more reliable melody pitch information from an audio signal having several sounds.

도 1은 본 발명에 따른 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법의 순서도이다.
도 2는 여러 음을 가지는 오디오 신호의 다중비율필터뱅크(Multi-Rate Filter Bank) 통과 과정을 나타내는 순서도이다.
1 is a flowchart of a frequency analysis method using an analysis window having a fluid length in an audio signal having various sounds according to the present invention.
FIG. 2 is a flowchart illustrating a process of passing a multi-rate filter bank of an audio signal having various sounds.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. 우선, 도면들 중 동일한 구성요소 또는 부품들은 가능한 한 동일한 참조부호를 나타내고 있음에 유의해야 한다. 본 발명을 설명함에 있어서 관련된 공지기능 혹은 구성에 대한 구체적인 설명은 본 발명의 요지를 모호하게 하지 않기 위해 생략한다.
Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention; First, it should be noted that the same components or parts among the drawings denote the same reference numerals whenever possible. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted so as not to obscure the subject matter of the present invention.

본 발명에서 제안하고자 하는 방법은 크게 다음과 같다. 먼저, 여러 음을 가지는 오디오 신호에서 멜로디 피치의 범위를 추정하는 단계, 멜로디의 변화 구간을 파악하는 단계, 마지막으로 상기 멜로디 피치의 범위와 멜로디의 변화 구간에 대한 정보를 바탕으로 변화하는 길이 분석 창을 이용하여 단시간 푸리에 변환(Short Time Fourier Transform, STFT)하는 단계를 수행한다. 이하에서 보다 자세하게 살펴본다.The method to be proposed in the present invention is largely as follows. First, estimating the range of the melody pitch in the audio signal having a plurality of notes, identifying a change section of the melody, and finally the length analysis window that changes based on the information about the range of the melody pitch and the change section of the melody Using a short time Fourier transform (STFT) is performed. Look in more detail below.

도 1은 본 발명에 따른 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법의 순서도이다. 도 1에 도시된 바와 같이 본 발명에 따른 주파수 분석 방법은 제 1단계(S10) 내지 제 9단계(S90)로 이루어지는 각 단계를 포함한다.
1 is a flowchart of a frequency analysis method using an analysis window having a fluid length in an audio signal having various sounds according to the present invention. As shown in FIG. 1, the frequency analysis method according to the present invention includes each step including the first step S10 to the ninth step S90.

먼저, 제 1단계(S10)는 입력된 여러 음을 가지는 오디오 신호를 분석하기 적합한 형태(Format)로 변환하기 위하여 상기 오디오 신호를 리샘플링(Resampling)하는 단계이다. First, a first step S10 is a step of resampling the audio signal in order to convert the input audio signal into a format suitable for analysis.

본 발명에서는 주파수 도메인(Frequency Domain)의 분해능(Resolution)을 높이기 위해서 다중비율필터뱅크(Multi-Rate Filter Bank)를 사용하는데, 이를 위해서는 샘플링 주파수(Sampling Frequency)를 2의 거듭제곱 킬로헤르쯔(2n kHz, n=자연수) 형태로 변환해야 한다. 따라서 입력된 여러 음을 가지는 오디오 신호를 알맞은 샘플링 주파수를 갖도록 리샘플링(Resampling)해야 한다. In the present invention, a multi-rate filter bank is used to increase the resolution of the frequency domain. For this purpose, a sampling frequency of 2 square kilohertz (2 n ) is used. kHz, n = natural number). Therefore, it is necessary to resample the input audio signal having various sounds to have a proper sampling frequency.

예를 들어, 44.1 kHz의 샘플링 주파수를 가지는 신호는 32 kHz의 샘플링 주파수로 리샘플링하고, 22.1 kHz의 샘플링 주파수를 가지는 신호는 16 kHz의 샘플링 주파수로 리샘플링하면 된다.
For example, a signal having a sampling frequency of 44.1 kHz may be resampled at a sampling frequency of 32 kHz, and a signal having a sampling frequency of 22.1 kHz may be resampled at a sampling frequency of 16 kHz.

다음으로, 변화하는 길이를 갖는 분석 창을 이용하여 여러 음을 가지는 오디오 신호를 분석하기 위해서 멜로디 피치(Melody Pitch)가 존재하는 범위를 예측해야 한다. 멜로디 피치가 존재하는 범위를 예측하기 위해서 제 2단계(S20)에서는 시간 영역(Time Domain) 기준으로 입력된 오디오 신호를 주파수 영역(Frequency Domain) 기준의 신호로 변환한다.Next, in order to analyze an audio signal having various sounds using an analysis window having a varying length, it is necessary to predict a range in which a melody pitch exists. In order to predict the range in which the melody pitch exists, the second step S20 converts an audio signal input based on a time domain to a signal based on a frequency domain.

이를 위해, 상기 제 2단계(S20)는 고정된 길이의 분석 창(Fixed length Analysis Window)을 이용한 단시간 푸리에 변환(STFT)을 적용하여 시간 영역 기준으로 입력된 오디오 신호를 주파수 영역 기준의 신호로 변환한다.
To this end, the second step S20 converts an audio signal input based on a time domain into a signal based on a frequency domain by applying a short time Fourier transform (STFT) using a fixed length analysis window. do.

상기 제 2단계(S20)를 통하여 각 프레임 마다의 스펙트럼(해당 프레임 신호의 주파수 특성 그래프)를 얻을 수 있으므로, 제 3단계(S30)에서는 각 프레임의 스펙트럼에서 진폭이 지엽적 최대값(Local Maximum Value)을 이루는 부분만을 찾아 상기 지엽적 최대값과 지엽적 최대값이 나타나는 부분의 주파수 값을 추출한다.Since the spectrum for each frame (frequency characteristic graph of the corresponding frame signal) can be obtained through the second step S20, in the third step S30, the amplitude of the spectrum of each frame is local maximum value. The frequency value of the portion where the local maximum value and the local maximum value appear is extracted by finding only a part forming the subfield.

즉, 상기 제 3단계(S30)에서는 상기 제 2단계(S20)를 통하여 얻어진 각 프레임의 스펙트럼에서 진폭의 피크 값(Peak Value)과 상기 피크 값이 나타나는 위치의 주파수 값을 추출하여 저장하는 것이다.That is, in the third step S30, the peak value of the amplitude and the frequency value of the position where the peak value appears in the spectrum of each frame obtained through the second step S20 are extracted and stored.

여기서, 상기 제 3단계(S30)의 상기 피크 값이 나타나는 위치의 주파수 값은 주파수 빈의 번호, 이산 푸리에 변환(Discrete Fourier Transform, DFT)의 빈의 개수 및 리샘플링 주파수를 이용하여 추출할 수 있으며, 상기 피크 값이 나타나는 위치의 주파수 값은 하기의 수학식 1에 의해 구할 수 있다.Here, the frequency value of the position where the peak value appears in the third step (S30) can be extracted using the number of frequency bins, the number of bins of the Discrete Fourier Transform (DFT) and the resampling frequency, The frequency value of the position where the peak value appears can be obtained by Equation 1 below.

Figure 112010003459275-pat00004
Figure 112010003459275-pat00004

Figure 112010003459275-pat00005

Figure 112010003459275-pat00005

다음으로, 제 4단계(S40)에서는 상기 제 3단계(S30)를 통하여 추출된 값들을 바탕으로 각 프레임의 멜로디 피치가 존재하는 범위를 재설정하며, 이와 같이 멜로디 피치가 존재하는 범위를 재설정하는 과정은 하기의 제 1과정(S41) 내지 제 5과정(S45)으로 이루어진다.
Next, in the fourth step S40, the range in which the melody pitch of each frame exists is reset based on the values extracted through the third step S30, and thus the process of resetting the range in which the melody pitch exists. Is composed of the following first process (S41) to fifth process (S45).

먼저, 제 1과정(S41)에서는 멜로디 피크의 값을 크기 순으로 정렬하여 상위 K개의 피크 값 및 상기 피크 값이 나타나는 주파수 값을 추출한다. 여기서, K는 이산 푸리에 변환(DFT)을 하기 위해 사용한 빈의 개수가 작아질수록 그 크기가 작아지지만, 일반적으로 100 ∼ 200개 사이 정도로 설정한다. 그러나, 전체 빈의 개수가 너무 작으면 주파수 도메인에서의 분해능(Resolution)이 낮아져 정확한 피크 지점을 예측하기 힘들기 때문에 충분한 수의 주파수 빈을 사용해 주어야 한다.
First, in the first step S41, the values of the melody peaks are arranged in order of magnitude to extract the top K peak values and the frequency values at which the peak values appear. Here, K becomes smaller in size as the number of bins used for the Discrete Fourier Transform (DFT) decreases, but is generally set to about 100 to 200. However, if the total number of bins is too small, the resolution in the frequency domain is low and it is difficult to predict the exact peak point. Therefore, a sufficient number of frequency bins should be used.

다음으로, 상위 K개의 피크 값과 상기 피크 값이 나타나는 위치의 주파수 값을 추출했으면 이 중에서 처음 설정한 멜로디 범위 안에 존재하는 모든 피크 값들을 찾는다. 예를 들어, 처음 멜로디의 범위를 100 Hz ∼ 1200 Hz 사이로 정하였다면 이 사이에 존재하는 피크를 찾는 것이다. 일반적으로 100 ∼ 150 Hz 이하에서는 베이스 신호들만 존재하고, 대부분의 멜로디 신호는 80 Hz ∼ 1280 Hz의 4옥타브 이내에 존재한다.Next, when the upper K peak values and the frequency values of the positions where the peak values appear are extracted, all peak values existing within the first melody range are found. For example, if you first set the melody range between 100 Hz and 1200 Hz, you are looking for peaks between them. Generally, only base signals are present below 100 to 150 Hz, and most melody signals are within 4 octaves of 80 Hz to 1280 Hz.

즉, 제 2과정(S42)에서는 상기 제 1과정(S41)을 통하여 추출된 피크 값 및 상기 피크 값이 나타나는 위치의 주파수 값 중에서 처음 설정한 멜로디 범위 안에 존재하는 모든 피크 값들을 찾아 이들을 잠재적인 멜로디 후보로 선정한다.
That is, in the second process S42, all peak values existing within the melody range initially set among the peak values extracted through the first process S41 and the frequency value of the position where the peak values appear are found and found as potential melody. To be nominated.

다음으로, 상기 제 2과정(S42)을 통하여 선정된 잠재적인 멜로디 후보들을 바탕으로 멜로디 범위를 재설정해야 한다. 이를 위해 본 발명에서는 멜로디는 하모닉 구조를 가지고, 멜로디 성분의 에너지가 가장 두드러지게 나타난다는 성질을 이용한다.Next, the melody range should be reset based on the potential melody candidates selected through the second process (S42). To this end, in the present invention, the melody has a harmonic structure and uses the property that the energy of the melody component is most prominent.

한편, 멜로디 범위를 재설정하기 위해서는 잠재적인 멜로디 후보들에서 각 후보의 주파수를 멜로디의 기본 주파수로 간주하고, 상기 제 1과정을 통하여 추출된 상위 K개의 피크 값이 나타나는 주파수 값 중에서 상기 기존 주파수의 하모닉 성분에 해당하는 주파수 주위에 피크 값이 있으면 그 피크 값을 기본 주파수 피크 값에 더한다. Meanwhile, in order to reset the melody range, the frequency of each candidate in potential melody candidates is regarded as the fundamental frequency of the melody, and the harmonic component of the existing frequency among the frequency values in which the upper K peak values extracted through the first process appear. If there is a peak around the frequency corresponding to, add that peak value to the fundamental frequency peak value.

예를 들어, 100 Hz에 해당하는 곳에 피크가 있을 경우 이를 멜로디의 기본 주파수로 설정하고, 상기 제 1과정을 통하여 추출된 상위 K개의 피크 값 중에서 멜로디의 하모닉 성분이 위치해야 하는 200 Hz, 300 Hz, 400 Hz, 500 Hz,...,3200 Hz 주위에 피크 값이 존재하는지를 확인한다. 이 경우 하모닉 성분 주파수 근처에 피크가 존재하면 그 피크의 크기를 100 Hz의 피크에 더해주는 것이다. 만약 하모닉 성분이 위치해야 할 주파수 근처에 피크 값이 존재하지 않을 경우 해당 하모닉 성분의 피크는 없다고 간주한다. 상술한 바와 같은 방법으로 처음 설정한 멜로디 범위 내에 존재하는 모든 피크들에 대해서 그 하모닉 성분들을 조사하고 피크 값을 더해준다.For example, if there is a peak corresponding to 100 Hz, it is set as the fundamental frequency of the melody, and 200 Hz and 300 Hz where the harmonic component of the melody should be located among the upper K peak values extracted through the first process. Check for the presence of peak values around, 400 Hz, 500 Hz, ..., 3200 Hz. In this case, if there is a peak near the harmonic component frequency, then the magnitude of the peak is added to the 100 Hz peak. If no peak value exists near the frequency at which the harmonic component is to be located, it is assumed that there is no peak of the harmonic component. As described above, the harmonic components are investigated and all peaks are added to all peaks existing within the melody range initially set.

즉, 상기 제 3과정(S43)은 상기 제 2과정(S42)을 통하여 선정된 잠재적인 멜로디 후보들을 바탕으로 멜로디 범위를 재설정하기 위하여 상기 잠재적인 멜로디 후보에서 각 후보의 주파수를 멜로디의 기본 주파수로 간주하고, 상기 기본 주파수의 하모닉 성분에 해당하는 주파수 주위에 피크 값이 있으며 상기 피크 값을 기본 주파수 피크 값에 더하는 방법으로 상기 처음 설정한 멜로디 범위 내에 존재하는 모든 피크 값들에 대해 하모닉 성분을 조사하고 피크 값을 더하는 과정을 수행한다.
That is, the third process (S43) is to replace the frequency of each candidate in the potential melody candidate to the base frequency of the melody in order to reset the melody range based on the potential melody candidates selected through the second process (S42) And the harmonic component is examined for all peak values that exist within the initially set melody range by adding a peak value around the frequency corresponding to the harmonic component of the fundamental frequency and adding the peak value to the fundamental frequency peak value. The process of adding the peak values is performed.

한편, 멜로디 범위를 재설정하기에 앞서 상술한 바와 같은 멜로디 피크 값 합산 방법에는 문제점이 있다. 그것은 낮은 주파수의 기본 주파수는 많은 수의 하모닉 성분을 가지고, 높은 주파수의 기본 주파수는 적은 수의 하모닉 성분을 가진다는 것이다. On the other hand, there is a problem in the method of adding the melody peak values as described above before resetting the melody range. That is, the low frequency fundamental frequency has a large number of harmonic components, and the high frequency fundamental frequency has a small number of harmonic components.

예를 들어, 샘플링 주파수가 32 kHz이고, 기본 주파수가 200 Hz인 경우, 그 하모닉은 400 Hz, 600 Hz, 800 Hz,...,32 kHz에 나타나므로 총 159개의 하모닉이 존재할 수 있다. 반면에, 기본 주파수가 1 kHz인 경우에는 그 하모닉이 2 kHz, 3 kHz, 4 kHz,...,32 kHZ로 31개의 하모닉만이 존재할 수 있다. For example, if the sampling frequency is 32 kHz and the fundamental frequency is 200 Hz, the harmonics appear at 400 Hz, 600 Hz, 800 Hz, ..., 32 kHz, so there may be a total of 159 harmonics. On the other hand, when the fundamental frequency is 1 kHz, only 31 harmonics may exist, as the harmonics are 2 kHz, 3 kHz, 4 kHz, ..., 32 kHZ.

따라서, 상술한 바와 같은 문제점을 보완하기 위해 제 4과정(S44)에서는 상기 제 3과정(S43)을 통하여 더해진 상기 피크 값에 기본 주파수가 낮을수록 작은 값을 곱해주고, 이와 같이 곱하여 얻어진 결과 중에서 값이 큰 순서대로 N개의 후보를 찾는다. Therefore, in order to compensate for the above problem, in the fourth process S44, the peak value added through the third process S43 is multiplied by a smaller value as the fundamental frequency is lower, and the value is obtained from the multiplication result. N candidates are found in this large order.

이는 피크의 합 결과가 클수록 해당 피크의 주파수가 멜로디 기본 주파수일 가능성이 높은 것이기 때문이다. 따라서, 피크 합의 결과를 바탕으로 선택한 N개의 피크 주파수 값은 멜로디 피치 후보가 될 수 있게 된다.
This is because the greater the sum of the peaks, the more likely the frequency of the peak is the melody fundamental frequency. Accordingly, the N peak frequency values selected based on the peak sum result can be melody pitch candidates.

마지막으로, 스펙트럼 피크로부터 기본 주파수와 그 하모닉 성분을 합하는 방법으로 N개의 멜로디 피치 후보를 찾는 방법을 각 프레임 마다 적용한다. 그래서 각 프레임에서 N개의 멜로디 피치 후보를 찾고, 이렇게 각 프레임에서 뽑힌 N개의 멜로디 피치 후보들을 이용해서 전체 프레임에서 멜로디 피치가 존재하는 범위를 알아낼 수 있다. Finally, a method of finding N melody pitch candidates by applying the fundamental frequency and its harmonic components from the spectral peak is applied for each frame. Thus, N melody pitch candidates are found in each frame, and the range of melody pitches in the entire frame can be determined using the N melody pitch candidates extracted in each frame.

즉, 제 5과정(S45)에서는 상기 제 1과정(S41) 내지 제 4과정(S44)을 각 프레임마다 적용하여 전체 프레임에서 멜로디 피치가 존재하는 범위를 알아내는 것이다. 그리고, 새롭게 알아낸 멜로디 피치 범위는 처음 설정한 멜로디 범위보다는 더욱 좁은 범위를 가질 수 있다.
That is, in the fifth process S45, the first processes S41 to S44 are applied to each frame to find a range in which the melody pitch exists in the entire frame. The newly found melody pitch range may have a narrower range than the melody range initially set.

한편, 멜로디 피치 범위를 재설정한 다음에는, 멜로디가 갑자기 바뀌는 동적 변화 구간에 대한 분석이 필요하다. 멜로디 동적 변화 영역을 분석하기 위해서는 상기 제 2단계(S20)에서 구한 단시간 푸리에 변환(STFT) 결과에서 프레임 간의 자시상관계수(Autocorrelation Coefficient)를 파악해야 한다.On the other hand, after resetting the melody pitch range, it is necessary to analyze the dynamic change section in which the melody suddenly changes. In order to analyze the melody dynamic change region, an autocorrelation coefficient between frames is determined from the short time Fourier transform (STFT) result obtained in the second step S20.

이 때, 상기 자기상관계수를 구하기 위해서는 프레임 간의 모든 주파수 빈을 고려하는 것이 아니라 멜로디의 하모닉 성분이 가장 잘 나타나는 영역만을 고려하면 된다. 여기서 주어진 음악 구간에서 가장 낮은 멜로디 피치 값은 상기 제 4단계(S40) 즉, 멜로디 피치 범위 재설정 단계를 통하여 알 수 있다.In this case, in order to obtain the autocorrelation coefficient, it is not necessary to consider all frequency bins between frames, but only an area where the harmonic component of the melody appears best. The lowest melody pitch value in the given music section may be known through the fourth step S40, that is, the melody pitch range resetting step.

한편, 멜로디의 하모닉 성분이 잘 나타나는 구간의 가장 높은 주파수는 보통 2 ∼ 3 kHz가 되며, 일반적으로 자기상관계수를 구하기 위해서는 200 Hz ∼ 2 kHz 사이의 주파수 영역의 빈들이 사용된다.Meanwhile, the highest frequency of the section in which the harmonic component of the melody is well represented is usually 2 to 3 kHz. In general, bins in the frequency region between 200 Hz and 2 kHz are used to obtain autocorrelation coefficients.

즉, 제 5단계(S50)에서는 상기 제 2단계(S20)를 통하여 주파수 영역 기준의 신호로 변환된 결과에서 프레임 간의 자기상관계수를 파악하는 방법으로 멜로디 피치의 동적 변화 정보를 추출하며, 상기 자기상관계수는 하기의 수학식 2에 의해 구할 수 있다.That is, in the fifth step S50, the dynamic change information of the melody pitch is extracted by extracting the autocorrelation coefficient between the frames from the result of the conversion to the signal based on the frequency domain through the second step S20. The correlation coefficient can be obtained by Equation 2 below.

Figure 112010003459275-pat00006
Figure 112010003459275-pat00006

여기서, Xl(k)는 이산 푸리에 변환(DFT)의 l번째 프레임의 k번째 계수이다.Where X l (k) is the k-th coefficient of the l-th frame of the Discrete Fourier Transform (DFT).

이와 같이 프레임 간의 자기상관계수를 구하여 자기상관계수가 1에 가까울수록 일정한 멜로디 피치를 가지며, 반대로 자기상관계수가 0에 가까울수록 동적인 변화가 심하다고 분석할 수 있다.
As described above, the autocorrelation coefficients between frames have a constant melody pitch as the autocorrelation coefficient is close to 1, and on the contrary, the dynamic change is severe as the autocorrelation coefficient is closer to 0.

다음으로, 제 6단계(S60)에서는 상기 제 4단계(S40)를 통하여 재설정된 각 프레임의 멜로디 피치가 존재하는 범위에 관한 정보 및 상기 제 5단계(S50)를 통하여 추출된 멜로디 피치의 동적 변화 정보를 이용하여 각 프레임에 대응되는 분석 창의 길이를 설정한다. Next, in the sixth step (S60), the information on the range of the melody pitch of each frame reset through the fourth step (S40) and the dynamic change of the melody pitch extracted through the fifth step (S50) The length of the analysis window corresponding to each frame is set using the information.

이 때, 상기 분석 창의 길이는 멜로디 피치 값이 낮고 일정하게 유지될수록 긴 분석 창이, 멜로디 피치 값이 높고 동적 변화가 심할수록 보다 짧은 분석 창이 사용하도록 정한다. 그리고, 멜로디가 일정하여도 그 피치가 높은 경우에는 짧은 길이의 분석 창을 사용하도록 한다. 이는 멜로디 피치가 높은 경우에는 분석창의 길이가 짧아도 충분한 주기(5주기 이상)의 신호가 내포할 수 있으므로 그 피치를 정확하게 예측할 수 있다. 또한, 멜로디의 동적 변화가 심한 경우에는, 긴 길이의 분석 창을 사용하면 분석 창의 시작 부분과 끝 부분에 위치한 신호의 멜로디 피치가 다르기 때문에 정확한 피치를 예측하기 힘들다. 따라서, 이 경우에도 짧은 길이의 분석 창을 사용하는 것이다. 일반적으로, 분석 창은 32 ms ∼ 92 ms 사이의 분석 창을 이용하는 것이 바람직하나, 본 발명에서 이를 한정하는 것은 아니다.
In this case, the length of the analysis window is determined to use a longer analysis window as the melody pitch value is lower and constant, and a shorter analysis window as the melody pitch value is high and the dynamic change is severe. If the pitch is high even if the melody is constant, a short analysis window is used. If the melody pitch is high, the signal of sufficient period (more than 5 cycles) may be contained even if the length of the analysis window is short, so that the pitch can be accurately predicted. In addition, when the dynamic change of the melody is severe, it is difficult to predict the exact pitch when using the long analysis window because the melody pitch of the signal located at the beginning and the end of the analysis window is different. Therefore, even in this case, a short analysis window is used. In general, the analysis window preferably uses an analysis window between 32 ms and 92 ms, but the present invention is not limited thereto.

다음으로, 제 7단계(S70)에서는 여러 음을 가지는 오디오 신호를 멜로디 피치의 기본 주파수와 하모닉 정보가 포함되어 있는 범위의 신호 성분은 그대로 통과시키고 그 보다 낮은 주파수 영역의 신호들은 제거할 수 있도록 고주파수 통과 필터(HPF)를 이용하여 오디오 신호에서 베이스 신호 및 저주파수 신호를 제거한다.Next, in the seventh step (S70), the audio signal having multiple notes passes the signal components in the range including the fundamental frequency and harmonic information of the melody pitch as it is, and the signals in the lower frequency range can be removed. A pass filter (HPF) is used to remove the base and low frequency signals from the audio signal.

즉, 상기 제 7단계(S70)는 상기 제 6단계(S60)에서 구한 변화하는 길이를 가지는 분석 창을 이용하기에 앞서, 상기 제 4단계(S40)에서 구한 보다 세밀한 멜로디 피치 범위를 이용하여, 입력된 여러 음을 가지는 오디오 신호에서 베이스 신호 및 저주파 영역 신호들을 제거한다.
That is, the seventh step (S70) using the more detailed melody pitch range obtained in the fourth step (S40), before using the analysis window having a variable length obtained in the sixth step (S60), The base signal and the low frequency region signals are removed from the input audio signal.

다음으로, 제 8단계(S80)에서는 상기 제 7단계(S70)를 통하여 고주파수 통과 필터(HPF)를 통과한 오디오 신호를 상기 제 6단계(S60)에서 길이가 설정된 각 프레임에 대응되는 분석 창을 이용하여 단시간 푸리에 변환(STFT)한다.
Next, in the eighth step S80, an analysis window corresponding to each frame whose length is set in the sixth step S60 of the audio signal passing through the high frequency pass filter HPF through the seventh step S70 is opened. Short-term Fourier transform (STFT).

마지막으로, 제 9단계(S90)에서는 상기 제 8단계(S80)를 통하여 단시간 푸리에 변환된(STFT) 오디오 신호를 주파수 영역의 분해능(Resolution)을 높이기 위해 다중비율필터뱅크(Multi-Rate Filter Bank)를 통과 시킨다. (M.Goto 방법과 동일)Lastly, in the ninth step S90, a multi-rate filter bank is used to increase the resolution of the short-term Fourier transform (STFT) audio signal in the frequency domain through the eighth step S80. Pass it through. (Same as M.Goto method)

한편, 상기 다중비율필터뱅크(Multi-Rate Filter Bank)의 구성은 도 2에 도시된 바와 같다. 상기 다중비율필터뱅크(Multi-Rate Filter Bank)를 통과시키는 이유를 보다 자세하게 설명하면 다음과 같다.On the other hand, the configuration of the multi-rate filter bank (Multi-Rate Filter Bank) is as shown in FIG. The reason for passing the multi-rate filter bank will be described in more detail as follows.

일반적으로 사람이 인식하는 멜로디의 높이는 로그 스케일(Log Scale)이다. 예를 들어, 440 Hz와 880 Hz 사이는 한 옥타브를 이루며, 880 Hz와 1720 Hz 사이도 한 옥타브를 이룬다. 그리고 1720 Hz와 3440 Hz 사이도 한 옥타브를 이룬다. 이와 같이, 멜로디의 음이 높아질수록 피아노 한 건반이 차지하는 주파수의 간격이 늘어난다. 하지만, 일반적인 N개의 빈을 가지는 이산 푸리에 변환(DFT)을 실시했을 때, 한 개 빈 사이가 나타내는 주파수 간격은 샘플링 주파수/N Hz(Fs/N Hz)로 일정하다. In general, the height of a human recognized melody is the log scale. For example, between 440 Hz and 880 Hz one octave, and between 880 Hz and 1720 Hz one octave. There is also an octave between 1720 Hz and 3440 Hz. In this manner, as the melody becomes higher, the interval between the frequencies occupied by a piano keyboard increases. However, when the Discrete Fourier Transform (DFT) having N bins in general is performed, the frequency interval indicated by one bin is constant at the sampling frequency / N Hz (Fs / N Hz).

이는 결국, 낮은 주파수의 음 사이에는 적은 수의 주파수 빈이 할당되고, 높은 주파수의 음 사이에는 많은 수의 주파수 빈이 할당되는 결과를 낳으므로, 음 높이에 따른 주파수 분해능(Frequency Resolution)이 달리지는 문제점이 있다. 이와 같은 문제점을 해결하기 위해서 도 2에 도시된 바와 같은 다중비율필터뱅크(Multi-Rate Filter Bank)를 사용하는 것이다.
This results in the fact that a small number of frequency bins are allocated between low frequency notes and a large number of frequency bins are allocated between high frequency notes, so that the frequency resolution varies depending on the pitch. have. In order to solve this problem, a multi-rate filter bank as shown in FIG. 2 is used.

상술한 바와 같은 단계들을 통해서 유동적인 길이의 분석 창을 이용하여 여러 음을 가지는 오디오 신호의 주파수 분석을 할 수 있다. 그리고 이와 같은 주파수 분석법을 통하여 여러 음을 가지는 오디오 신호의 멜로디 정보를 보다 정확하고 쉽게 추출할 수 있게 된다.
Through the steps as described above, it is possible to analyze the frequency of the audio signal having various sounds by using the analysis window of the flexible length. And through this frequency analysis method it is possible to more accurately and easily extract the melody information of the audio signal having multiple sounds.

이상과 같이 본 발명에 따른 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법을 예시한 도면을 참조로 하여 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명이 한정되는 것은 아니며, 본 발명의 기술사상 범위내에서 당업자에 의해 다양한 변형이 이루어질 수 있음은 물론이다.As described above with reference to the drawings illustrating a frequency analysis method using an analysis window having a fluid length in the audio signal having various sounds according to the present invention, the present invention is limited by the embodiments and drawings disclosed herein Of course, various modifications can be made by those skilled in the art within the technical scope of the present invention.

Claims (8)

입력된 오디오 신호를 리샘플링(Resampling)하는 제 1단계;
시간 영역(Time Domain) 기준으로 입력된 오디오 신호를 주파수 영역(Frequency Domain) 기준의 신호로 변환하는 제 2단계;
상기 제 2단계를 통하여 얻어진 각 프레임의 스펙트럼에서 진폭의 피크 값과 상기 피크 값이 나타나는 위치의 주파수 값을 추출하는 제 3단계;
상기 제 3단계를 통하여 추출된 값들을 바탕으로 각 프레임의 멜로디 피치가 존재하는 범위를 재설정하는 제 4단계;
상기 제 2단계를 통하여 주파수 영역 기준의 신호로 변환된 결과에서 프레임 간의 자기상관계수를 파악하는 방법으로 멜로디 피치의 동적 변화 정보를 추출하는 제 5단계;
상기 제 4단계를 통하여 재설정된 각 프레임의 멜로디 피치가 존재하는 범위에 관한 정보 및 상기 제 5단계를 통하여 추출된 멜로디 피치의 동적 변화 정보를 이용하여 각 프레임에 대응되는 분석 창의 길이를 설정하는 제 6단계;
고주파수 통과 필터(HPF)를 이용하여 오디오 신호에서 베이스 신호 및 저주파수 신호를 제거하는 제 7단계;
상기 제 7단계를 통하여 고주파수 통과 필터(HPF)를 통과한 오디오 신호를 상기 제 6단계에서 길이가 설정된 각 프레임에 대응되는 분석 창을 이용하여 단시간 푸리에 변환(STFT)하는 제 8단계; 및
상기 제 8단계를 통하여 단시간 푸리에 변환된(STFT) 오디오 신호를 주파수 영역의 분해능(Resolution)을 높이기 위해 다중비율필터뱅크(Multi-Rate Filter Bank)를 통과 시키는 제 9단계를 포함하는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
Resampling the input audio signal (Resampling);
Converting an audio signal input based on a time domain to a signal based on a frequency domain;
A third step of extracting a peak value of an amplitude from the spectrum of each frame obtained through the second step and a frequency value at a position where the peak value appears;
A fourth step of resetting a range in which a melody pitch of each frame exists based on the values extracted through the third step;
A fifth step of extracting dynamic change information of a melody pitch by a method of determining autocorrelation coefficients between frames in a result of conversion to a signal based on a frequency domain through the second step;
Setting the length of the analysis window corresponding to each frame using information on the range in which the melody pitch of each frame reset through the fourth step exists and dynamic change information of the melody pitch extracted through the fifth step; Step 6;
A seventh step of removing the base signal and the low frequency signal from the audio signal using a high frequency pass filter (HPF);
An eighth step of performing a short time Fourier transform (STFT) on the audio signal passing through the high frequency pass filter (HPF) through the seventh step using an analysis window corresponding to each frame whose length is set in the sixth step; And
And a ninth step of passing a short-time Fourier transform (STFT) audio signal through a multi-rate filter bank to increase resolution in a frequency domain through the eighth step. A frequency analysis method using an analysis window having a floating length in an audio signal having several sounds.
청구항 1에 있어서,
상기 제 2단계는 고정된 길이의 분석 창(Fixed length Analysis Window)을 이용한 단시간 푸리에 변환(STFT)을 적용하여 시간 영역 기준으로 입력된 오디오 신호를 주파수 영역 기준의 신호로 변환하는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
The method according to claim 1,
In the second step, a short time Fourier transform (STFT) using a fixed length analysis window is applied to convert an audio signal input based on a time domain into a signal based on a frequency domain. A frequency analysis method using an analysis window having a floating length in an audio signal having sound.
청구항 1에 있어서,
상기 제 3단계의 상기 피크 값이 나타나는 위치의 주파수 값은 주파수 빈의 번호, 이산 푸리에 변환(DFT)의 빈의 개수 및 리샘플링 주파수를 이용하여 추출하는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
The method according to claim 1,
The frequency value of the position where the peak value appears in the third step is extracted using the number of frequency bins, the number of bins of the Discrete Fourier Transform (DFT), and the resampling frequency. Frequency analysis method using an analysis window having a length.
청구항 3에 있어서,
상기 제 3단계의 상기 피크 값이 나타나는 위치의 주파수 값은 하기의 수학식 1에 의해 구하는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
[수학식 1]
Figure 112010003459275-pat00007

Figure 112010003459275-pat00008

The method according to claim 3,
The frequency value of the position where the peak value appears in the third step is a frequency analysis method using an analysis window having a fluid length in the audio signal having a multiple sound, characterized in that obtained by the following equation (1).
[Equation 1]
Figure 112010003459275-pat00007

Figure 112010003459275-pat00008

청구항 1에 있어서,
상기 제 4단계는, 멜로디 피크의 값을 크기 순으로 정렬하여 상위 K개의 피크 값 및 상기 피크 값이 나타나는 주파수 값을 추출하는 제 1과정;
상기 제 1과정을 통하여 추출된 피크 값 및 상기 피크 값이 나타나는 위치의 주파수 값 중에서 처음 설정한 멜로디 범위 안에 존재하는 모든 피크 값들을 찾아 이들을 잠재적인 멜로디 후보로 선정하는 제 2과정;
상기 제 2과정을 통하여 선정된 잠재적인 멜로디 후보들을 바탕으로 멜로디 범위를 재설정하기 위하여 상기 잠재적인 멜로디 후보에서 각 후보의 주파수를 멜로디의 기본 주파수로 간주하고, 상기 제 1과정을 통하여 추출된 상위 K개의 피크 값이 나타나는 주파수 값 중에서 상기 기본 주파수의 하모닉 성분에 해당하는 주파수 주위에 피크 값을 기본 주파수 피크 값에 더하는 방법으로 상기 처음 설정한 멜로디 범위 내에 존재하는 모든 피크 값들에 대해 하모닉 성분을 조사하고 피크 값을 더하는 제 3과정;
상기 제 3과정을 통하여 더해진 상기 피크 값에 기본 주파수가 낮을수록 작은 값을 곱하고 기본 주파수가 보다 높을수록 보다 높은 값을 곱하여 얻어진 결과 중에서 값이 큰 순서대로 N개의 후보를 찾는 제 4과정; 및
상기 제 1과정 내지 제 4과정을 각 프레임마다 적용하여 전체 프레임에서 멜로디 피치가 존재하는 범위를 알아내는 제 5과정을 포함하는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
The method according to claim 1,
The fourth step may include: extracting a top K peak value and a frequency value at which the peak value appears by arranging the values of the melody peaks in order of magnitude;
A second step of finding all peak values existing within the melody range initially set among the peak values extracted through the first process and the frequency values at the positions where the peak values appear, and selecting them as potential melody candidates;
In order to reset the melody range based on the potential melody candidates selected through the second process, the frequency of each candidate in the potential melody candidate is regarded as the fundamental frequency of the melody, and the upper K extracted through the first process. The harmonic component is investigated for all peak values existing within the first set melody range by adding a peak value to a fundamental frequency peak value around a frequency corresponding to the harmonic component of the fundamental frequency among the frequency values at which two peak values appear. A third step of adding a peak value;
A fourth step of finding N candidates in order of increasing values among the results obtained by multiplying the peak value added through the third process by multiplying a smaller value with a lower fundamental frequency and a higher value with a higher fundamental frequency; And
And a fifth process of determining a range in which a melody pitch exists in the entire frame by applying the first to fourth processes to each frame. Frequency analysis method used.
청구항 1에 있어서,
상기 제 5단계는 상기 제 2단계를 통하여 주파수 영역 기준의 신호로 변환된 결과에서 프레임 간의 자기상관계수를 파악하는 방법으로 멜로디 피치의 동적 변화 정보를 추출하며, 상기 자기상관계수는 하기의 수학식 2에 의해 구하는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
[수학식 2]
Figure 112011045240393-pat00009

여기서, Xl(k)는 이산 푸리에 변환(DFT)의 l번째 프레임의 k번째 계수이다.
The method according to claim 1,
The fifth step extracts the dynamic change information of the melody pitch as a method of determining the autocorrelation coefficient between frames in the result of conversion to the signal based on the frequency domain through the second step, and the autocorrelation coefficient is A frequency analysis method using an analysis window having a fluid length in an audio signal having multiple sounds, which is obtained by 2.
[Equation 2]
Figure 112011045240393-pat00009

Where X l (k) is the k-th coefficient of the l-th frame of the Discrete Fourier Transform (DFT).
청구항 1에 있어서,
상기 제 6단계는 각 프레임에 대응되는 분석 창의 길이를 설정하며, 상기 분석 창의 길이는 멜로디 피치 값이 낮고 일정하게 유지될수록 긴 분석 창이, 멜로디 피치 값이 높고 동적 변화가 심할수록 보다 짧은 분석 창이 사용되는 것을 특징으로 하는 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법.
The method according to claim 1,
In the sixth step, the length of the analysis window corresponding to each frame is set, and the length of the analysis window is lower as the melody pitch value is kept constant and the longer analysis window is used. Frequency analysis method using an analysis window having a fluid length in the audio signal having a plurality of sounds, characterized in that.
청구항 8은(는) 설정등록료 납부시 포기되었습니다.Claim 8 was abandoned when the registration fee was paid. 청구항 1 내지 7에 따른 여러 음을 가진 오디오 신호에서 유동적 길이를 가지는 분석 창을 이용한 주파수 분석 방법에 관한 컴퓨터 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
A computer-readable recording medium having recorded thereon a computer program relating to a frequency analysis method using an analysis window having a fluid length in an audio signal having multiple sounds according to claims 1 to 7.
KR1020100004696A 2010-01-19 2010-01-19 Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window KR101095968B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100004696A KR101095968B1 (en) 2010-01-19 2010-01-19 Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100004696A KR101095968B1 (en) 2010-01-19 2010-01-19 Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window

Publications (2)

Publication Number Publication Date
KR20110085090A KR20110085090A (en) 2011-07-27
KR101095968B1 true KR101095968B1 (en) 2011-12-19

Family

ID=44921933

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100004696A KR101095968B1 (en) 2010-01-19 2010-01-19 Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window

Country Status (1)

Country Link
KR (1) KR101095968B1 (en)

Also Published As

Publication number Publication date
KR20110085090A (en) 2011-07-27

Similar Documents

Publication Publication Date Title
Gómez Tonal description of polyphonic audio for music content processing
Bowling et al. Major and minor music compared to excited and subdued speech
Racharla et al. Predominant musical instrument classification based on spectral features
Shah et al. Chroma feature extraction
Heydarian Automatic recognition of Persian musical modes in audio musical signals
Cambouropoulos The musical surface: Challenging basic assumptions
Weiß Computational methods for tonality-based style analysis of classical music audio recordings
Pollastri A pitch tracking system dedicated to process singing voice for music retrieval
Chuan et al. Fuzzy Analysis in Pitch-Class Determination for Polyphonic Audio Key Finding.
Dixon et al. Estimation of harpsichord inharmonicity and temperament from musical recordings
KR101095968B1 (en) Method for Spectral Analysis of Polyphonic Audio by Using Variable Length Window
KR101106185B1 (en) An apparatus and a method for Melody Extraction of Polyphonic Audio by using Harmonic Structure Model and Variable Length Window
Papadopoulos Joint estimation of musical content information from an audio signal
Mores Vowel quality in violin sounds—A timbre analysis of Italian masterpieces
KR101093725B1 (en) Method for Melody Pitch Candidate Extraction of Polyphonic Audio based on Harmonic Structure Model
Singh et al. Deep learning based Tonic identification in Indian Classical Music
Joshi et al. Extraction of feature vectors for analysis of musical instruments
Viraraghavan et al. Data-driven measurement of precision of components of pitch curves in Carnatic music
Knees et al. Basic methods of audio signal processing
Bruno et al. Automatic music transcription supporting different instruments
Eley et al. A custom feature set for analyzing historically informed baroque performances
Cañadas-Quesada et al. Note-event detection in polyphonic musical signals based on harmonic matching pursuit and spectral smoothness
Shelke et al. An Effective Feature Calculation For Analysis & Classification of Indian Musical Instruments Using Timbre Measurement
Sudha et al. A system of tool for identifying ragas using MIDI
Müller et al. Music signal processing

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20141127

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee