KR101140737B1 - 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법 - Google Patents

기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법 Download PDF

Info

Publication number
KR101140737B1
KR101140737B1 KR1020100072072A KR20100072072A KR101140737B1 KR 101140737 B1 KR101140737 B1 KR 101140737B1 KR 1020100072072 A KR1020100072072 A KR 1020100072072A KR 20100072072 A KR20100072072 A KR 20100072072A KR 101140737 B1 KR101140737 B1 KR 101140737B1
Authority
KR
South Korea
Prior art keywords
frequency
harmonic
peak
vocal
distance
Prior art date
Application number
KR1020100072072A
Other languages
English (en)
Other versions
KR20120010488A (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 KR1020100072072A priority Critical patent/KR101140737B1/ko
Publication of KR20120010488A publication Critical patent/KR20120010488A/ko
Application granted granted Critical
Publication of KR101140737B1 publication Critical patent/KR101140737B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L21/00Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
    • G10L21/02Speech enhancement, e.g. noise reduction or echo cancellation
    • G10L21/0272Voice signal separating
    • 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
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • 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/131Mathematical functions for musical analysis, processing, synthesis or composition
    • G10H2250/161Logarithmic functions, scaling or conversion, e.g. to reflect human auditory perception of loudness or frequency

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Quality & Reliability (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

본 발명은 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 추출 방법에 관한 것으로, 본 발명의 일실시예에 따른 기본 주파수 추출 장치는, 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출하는 주파수 피크 검출부 및 검출된 모든 주파수 피크들 간의 거리값들을 계산하고, 상기 거리값들을 토대로 적어도 하나의 기본 주파수를 추출하는 처리부를 포함한다.

Description

기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법{Apparatus for extracting fundamental frequency, apparatus and method for extracting vocal melody}
본 발명은 보컬을 포함하여 여러 악기 음원이 혼합된 음악 신호에서, 음악의 주 멜로디를 검색하기 위하여 보컬 멜로디를 추출하는 장치 및 방법에 관한 것이다. 더욱 상세하게는, 입력 음악 신호에 포함되어 있는 모든 기본 주파수를 구하고 각 기본 주파수에 해당하는 음원 중에서 보컬에 해당하는 음원을 선택하여 최종 보컬 멜로디를 추출하는 장치 및 방법에 관한 것이며, 특히 입력 신호의 하모닉 구조를 분석하고 시간 진행에 따른 하모닉 구조의 변화를 분석하여 보컬 멜로디 추출을 할 수 있게 하는 보컬 멜로디 추출 장치 및 방법에 관한 것이다.
특정 음 높이를 가지는 신호는 동일한 파형이 반복되는 주기 성질을 가지고, 음의 높이는 신호의 기본 주파수(fundamental frequency)에 따라 결정된다. 예컨대 높은 음은 기본 주파수가 높다.
멜로디는 시간에 따라 음 높이가 변하는 것이므로, 시간 진행에 따라 신호의 기본 주파수를 검색하면 멜로디를 구할 수 있다. 만일 기본 주기가 T 초이면, 기본 주파수 F0는 F0 = 1/T Hz이고, 신호의 스펙트럼은 F0의 정수배 위치, 즉 F0, 2F0, 3F0,.... 에서 피크값을 가진다. 이와 같은 기본 주파수 F0의 정수배한 주파수를 F0에 대한 하모닉(harmonic) 주파수라 하고, 각 피크를 하모닉 피크라 한다. 피크값은 주변에 비하여 매우 큰 값을 가지는 것을 의미한다. 예로, 도 1a는 단음원에 해당하는 신호의 스펙트럼을 보여준다. 일정한 간격으로 주파수 피크값(201~211)이 존재하고, 이론적으로 이웃한 피크 간격이 신호의 기본 주파수이다. 물론, 예외적으로 특정 정수배 위치의 스펙트럼 값이 매우 작아 피크가 존재하지 않는 경우도 있다.
단음원에 해당하는 주파수 피크값 위치는 일정한 간격을 가지므로 피크값들이 규칙적인 위치에 존재한다. 그러나 입력 신호가 여러 음원이 혼합된 신호이고 각 음원의 음 높이가 서로 다를 경우, 전체 신호에 해당하는 피크값들의 위치는 매우 불규칙하게 나타난다. 예로, 도 1b는 여러 음원이 혼합된 음악 신호의 스펙트럼을 나타낸다. 도 1b에 도시된 바와 같이, 도 1a와 다르게 피크값(221 ~ 231)이 일정하지 않다. 따라서 도 1b로부터 이 신호에 포함되어 있는 기본 주파수를 검출하는 것은 도 1a의 경우에 비하여 어렵다.
한편, 일반적인 보컬 멜로디 추출 장치는 기본 주파수를 추출한 뒤 보컬 멜로디를 선택한다. 보컬 멜로디 추출 장치의 모든 동작은 일정 수의 샘플로 구성된 프레임(frame) 단위의 입력에 대하여 이루어지며, 프레임 처리 결과는 저장하여 그 이후의 동작에 사용 가능하도록 한다.
구체적으로, 보컬 멜로디 추출 장치는 입력된 신호를 주파수 영역으로 변환하여 스펙트럼(spectrum) X(k)(여기서 k는 주파수 인덱스)를 구하고, 스펙트럼으로부터 다수의 기본 주파수(109)을 출력한다. 예컨대 종래의 보컬 멜로디 추출 장치는 스펙트럼으로부터 입력하여 아래의 [수학식 1]에 따라 S(k) 값을 구한다.
[수학식 1]
Figure 112010048254424-pat00001
여기서 W( )는 주파수에 따른 가중치를 나타내고, M은 "mk < k의 최대값"을 만족하는 m의 최대값이다. 만일 k0가 입력 신호에 포함되어 있는 기본 주파수에 해당하면, k = mk0 위치에서 반복적으로 주파수 피크를 가질 것이고, [수학식 1]에서 S(k0)를 구하면 매우 큰 값을 가지게 된다. 반면, k1이 기본 주파수에 해당하지 않으면 S(k1)은 작은 값을 가진다.
따라서 종래의 보컬 멜로디 추출 장치는 S(k) 값 중에서 가장 큰 값을 가지는 k를 구하여 기본 주파수로 출력한다. 단, 입력 신호가 여러 음원의 혼합이고 다수의 기본 주파수를 포함하므로, 하나의 기본 주파수를 검출한 후, 기본 주파수에 해당하는 하모닉 성분을 스펙트럼에서 삭제하고, 다시 위의 동작을 반복하여 두 번째 기본 주파수 검출 동작을 수행한다. 즉, 보컬 멜로디 추출 장치는 1차적으로 찾은 첫번째 기본 주파수의 모든 하모닉 성분을 스펙트럼에서 제거하고, 제거된 스펙트럼으로부터 다시 S(k)를 계산하여 가장 큰 값을 가지는 k를 두번째 기본 주파수로 검출한다. 이러한 과정을 계속 반복하여 입력 신호에 포함되어 있는 기본 주파수들을 순차적으로 찾는다.
이와 같은 종래 기술에 따른 보컬 멜로디 추출 장치의 동작은 기본 주파수 선택 과정과 제거 과정을 반복하고, 한 번 선택된 기본 주파수는 입력 신호에서 제거되므로, 기본 주파수 검출 과정을 반복함에 따라 스펙트럼의 많은 부분이 제거되어 불완전한 정보로부터 기본 주파수를 검출하게 되고, 그에 따라 그 이후의 기본 주파수 선택의 성능이 저하된다. 예로, 두 음원이 혼합된 신호에 대하여 각각의 기본 주파수의 피크 위치가 많이 중복될 경우, 두 번째 음원의 기본 주파수를 선택할 때 대부분의 주파수 피크값이 사라져 정확한 기본 주파수를 찾지 못하는 문제가 있다.
또한 종래의 보컬 멜로디 추출 장치는, 이웃한 프레임에서 구한 다수의 기본 주파수 중에서 유사한 기본 주파수끼리 연결시켜 각 기본 주파수 마다 멜로디를 구성하고, 다수의 음원 멜로디 중에서 에너지가 가장 높은 것을 보컬 멜로디로 선택한다. 그러나 이 방법은 보컬이 반주 악기보다 에너지가 높다는 가정을 사용하므로 이 가정이 성립하지 않을 경우 잘못된 멜로디를 선택하게 된다.
또 다른 종래 기술에 의한 보컬 멜로디 선택 방법은, 음악 신호에서 보컬의 통계적 성질을 분석하여 HMM(hidden Markov model) 기반으로 보컬 멜로디를 선택하는 것이다. 그러나 이 방법은 악기와 구별되는 보컬의 고유 성질을 직접적으로 이용하는 것이 아니라 통계적 특성에 따른 확률 모델을 이용하므로 훈련 과정이 필요하고 동작 연산량이 많고, 또한, 만일 특정 입력 신호의 보컬이 주어진 확률모델과 다를 경우 정확한 보컬 멜로디를 추출하지 못한다.
정리하면, 종래 기술에 따른 보컬 멜로디 추출 장치는 다음과 같은 문제점이 있다. 첫 번째로, 기본 주파수를 검색하는 과정에서 스펙트럼에서 기본 주파수의 선택과정 제거 과정을 반복하므로, 순차적으로 스펙트럼 정보가 제거되어 정확한 기본 주파수 검출을 하지 못하게 된다. 만일, 보컬의 기본 주파수를 검출하지 못하면 이웃 보컬 프레임 사이에서 보컬 멜로디의 연결이 끊어지고, 그에 따라 최종 보컬 멜로디가 정확하게 추출되지 못한다.
두 번째로, 단순히 에너지만으로 보컬을 판정하면 보컬의 에너지에 따라 선택 여부가 민감하게 결정되고, 만일 악기의 에너지 보다 보컬의 에너지가 작으면 보컬을 선택하지 못하게 되는 문제점을 가진다. 또한 통계 특성에 의한 확률모델을 기반으로 보컬을 선정하면 매우 복잡한 훈련과 검색 과정이 필요하여 매우 많은 연산량이 요구되고, 만일 특정 입력 신호의 보컬이 주어진 확률모델과 다를 경우 정확한 보컬 멜로디를 추출하지 못한다.
즉, 종래 기술에 따른 보컬 멜로디 추출 방법이 가지는 문제점 및 한계를 보완하고, 다음원 음악 신호에서 악기와 보컬이 가지는 고유의 신호 특성을 활용하여 정확하고 간단하게 보컬 멜로디를 추출하는 방법이 절실히 필요한 상황이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 효율적이고 정확하게 기본 주파수 및 보컬 멜로디를 추출하는 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법을 제공함에 있다.
전술한 목적을 달성하기 위하여, 본 발명의 일면에 따른 기본 주파수 추출 장치는, 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출하는 주파수 피크 검출부 및 검출된 모든 주파수 피크들 간의 거리값들을 계산하고, 상기 거리값들을 토대로 적어도 하나의 기본 주파수를 추출하는 처리부를 포함한다.
본 발명의 다른 면에 따른 보컬 멜로디 추출 장치는, 입력된 음악 신호에서 복수의 기본 주파수를 추출하는 기본 주파수 추출부 및 상기 검출된 기본 주파수들 각각에 대해 하모닉 성분들의 포락선 모양을 일정 구간 단위로 조사하고, 이웃한 구간들의 포락선 모양을 비교하여, 비교 결과에 따라 상기 입력된 음악 신호에서 보컬 멜로디를 추출하는 보컬 멜로디 추출부를 포함한다.
본 발명의 또 다른 면에 따른 보컬 멜로디 추출 방법은, 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출하는 단계와, 검출된 주파수 피크들 간의 거리값들을 계산하는 단계와, 상기 거리값들을 토대로 복수의 기본 주파수를 추출하는 단계 및 상기 추출된 기본 주파수들을 이용하여 상기 입력된 음악 신호에서 보컬 멜로디를 추출하는 단계를 포함한다.
본 발명에 따르면 다음과 같은 효과를 얻을 수 있다.
첫째, 종래 기술에 비하여 기본 주파수를 더 정확하고 간단하게 추출할 수 있어, 정확한 음악 신호의 내용 분석 및 음원 분해를 가능하게 한다.
두 번째, 다음원의 신호에서 보컬 멜로디를 선택할 때, 종래 기술에 사용하는 확률 모델을 사용하지 않아 모델링을 위한 훈련이 필요 없고, 매우 빠르게 보컬 멜로디를 선택할 수 있다. 특히, 하모닉 구조의 변화를 기반으로 악기와 구별되는 보컬만의 고유 특성을 활용하므로 다양한 종류의 음악에 대하여 보다 강인하게 보컬 멜로디를 추출할 수 있다.
세 번째, 다음원의 신호에서 보컬 멜로디에서 보컬 멜로디를 매우 빠르고 효율적으로 보컬 멜로디를 추출하므로, 손쉽게 음악 검색을 할 수 있으며, 다양한 형태로 응용 가능하다.
도 1a 및 1b는 단음원 신호와 다음원 신호의 스펙트럼의 예를 보여주는 도면이다.
도 2는 본 발명의 실시예에 따른 기본 주파수 추출 장치 및 추출 방법을 설명하기 위한 블록도이다.
도 3은 도 2의 기본 주파수 후보 결정부를 설명하기 위한 블록도이다.
도 4는 도 3의 피크 거리 계산부의 동작을 설명하기 위한 개념도이다.
도 5는 도 3의 거리 집단화부 및 대표 거리 출력부의 동작을 설명하기 위한 개념도이다.
도 6은 도 2의 기본 주파수 결정부를 설명하기 위한 블록도이다.
도 7은 본 발명의 다른 실시예에 따른 보컬 멜로디 추출장치 및 추출 방법을 설명하기 위한 보컬 멜로디 추출 장치를 설명하기 위한 블록도이다.
도 8은 도 7의 하모닉 구조 비교부를 설명하기 위한 블록도이다.
도 9 내지 도 11은 하모닉 구조 본 발명에 따른 기본 주파수 결정부 동작의 일실시예를 도시하는 도면.
도 12는 본 발명의 또 다른 실시예에 따른 보컬 멜로디 검출 방법을 설명하기 위한 순서도이다.
도 9는 본 발명에 따른 하모닉 구조 비교부 동작의 일실시예를 도시하는 도면.
도 10은 본 발명에 따라 이웃한 보컬 프레임의 하모닉 구조를 비교하는 과정을 설명하는 예와 하모닉 피크 위치에 피크가 존재하지 않을 때 다른 값을 삽입하는 과정을 보여주는 도면.
도 11은 본 발명에 따른 보컬 멜로디 추출 방법에 대한 일실시예 흐름도.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 용이하게 이해할 수 있도록 제공되는 것이며, 본 발명은 청구항의 기재에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자 이외의 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
도 2를 참조하여 본 발명의 실시예에 따른 기본 주파수 추출 장치를 설명한다. 도 2는 본 발명의 실시예에 따른 기본 주파수 추출 장치 및 추출 방법을 설명하기 위한 블록도이다.
본 발명의 실시예에 따른 기본 주파수 추출 장치(100)는 입력된 음악신호, 예컨대 다음원 음악신호에서 복수의 기본 주파수를 추출한다. 예를 들어, 기본 주파수 추출 장치(100)는 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출함으로써, 복수의 기본 주파수를 추출할 수 있다. 이러한 기본 주파수 추출 장치(100)는, 도 2에 도시된 바와 같이 전처리부(110)와, 주파수 피크 검출부(120)와, 기본 주파수 후보 결정부(130) 및 기본 주파수 선택부(143)를 포함할 수 있다.
전처리부(110)는 입력된 다음원 음악신호의 샘플링 주파수를 낮추어 보컬 멜로디와 관련이 없는 고대역 정보를 제거한다. 또한, 만일 입력 음악신호가 스테레오로 주어지면 전처리부(110)는 이를 모노 신호로 변환할 수 있다.
예컨대 전처리부(110)는 입력된 음악신호를 8kHz 모노 신호로 변환시킬 수 있다. 이러한 경우, 전처리부(110) 이후의 블록들이 모노 신호를 처리하여 기본 주파수를 추출할 수 있다. 또는 기본 주파수 추출 장치(100)가 보컬 멜로디를 추출하는데 이용되는 경우, 전처리부(110)는 단순히 스테레오 신호를 합하여 모노 신호로 변화시키는 것이 아니라 두 채널 사이의 관계를 세밀하게 분석하여 보컬 신호가 강조되도록 하나의 채널로 변환시킬 수도 있다. 그러나 본 발명은 이에 한정되지 않고, 스테레오의 각 채널을 처리하여 채널별 보컬 멜로디를 추출할 수 있으며, 이러한 경우 전처리부(110)는 스테레오 신호를 모노신호로 변환하지 않을 수 있다. 또한, 전처리부(110)는 현재 프레임이 보컬 멜로디를 포함하는 보컬 프레임인지를 검증하여, 만일 보컬 프레임이 아니면 그 이후의 모든 동작은 수행하지 않고, 현재 프레임에 보컬 멜로디가 없다고 출력하고 다음 프레임 입력에 대한 동작을 수행할 수 있다. 만일 보컬 프레임으로 판정되면 전처리부(110)는 전처리된 신호를 출력한다. 보컬 프레임 판정은 다양한 방법을 통해 실행될 수 있다. 한편, 이하에서는 각 블록이 일정 수의 샘플로 구성된 프레임 단위의 입력(403)에 대하여 처리를 수행하며, 현재 프레임 처리 결과는 저장하여 그 이후의 동작에 사용 가능하도록 하는 것을 예로 들어 설명한다.
주파수 피크 검출부(120)는 전처리된 신호에서 주파수 피크를 검출한다. 예컨대 주파수 피크 검출부(120)는 이산 푸리에 변환(discrete Fourier transform, DFT)을 통해 전처리된 신호를 주파수 변환하여 주파수 스펙트럼을 구하고, 그로부터 피크값을 가지는 위치를 검출한다. DFT로 구한 스펙트럼을 이하에서 X(k)라 표시한다. 여기서 k는 주파수 인덱스를 의미한다.
일실시예로, 한 프레임은 전처리된 신호의 120 샘플로 구성되는데, 주파수 피크 검출부(120)는 두 프레임(즉, 240 샘플)에 대한 신호를 연결하고, 240 샘플 신호 뒤에 784개의 영(zero) 값을 추가하여 총 1024 샘플로 구성된 신호를 정의하여 1024-포인트 DFT를 실시할 수 있다. 1024-포인트 DFT를 사용하면 k의 해상도는 8000Hz/1024 = 7.8125Hz 가 된다. 그리고 주파수 피크 검출부(120)는 스펙트럼에서 피크값을 가지는 위치를 검색하는데, 스펙트럼 X(k)가 아래의 [수학식 2]의 조건을 만족하면 k에 피크가 존재하는 것으로 결정한다. Thresh(k) 값은 X(k)의 평균과 표준편차에 따라 가변적으로 결정되고, k 값에 따라 다른 값을 사용한다.
[수학식 2]
Figure 112010048254424-pat00002
주파수 피크 검출부(120)에서 구한 각 피크값의 위치에 해당하는 k 값을 peak(j), j = 1, 2, 3,..로 표시하고, peak(0) = 0으로 정한다. 여기서 j 는 주파수 피크 인덱스로서, 검출된 피크가 총 J 개이면 0≤j≤J이 된다.
기본 주파수 후보 결정부(130)는 피크값의 위치에 해당하는 값들 peak(j)를 분석하여 입력 신호에 포함되어 있을 가능성이 높은 기본 주파수 후보를 선택한다. 예컨대 기본 주파수 후보 결정부(130)는 검출된 피크들 간의 거리값을 계산하고, 거리값들을 토대로 기본 주파수 후보를 선택할 수 있다.
좀더 구체적으로 설명하면, 특정 주기 신호의 기본 주파수가 k = ki에 해당하면, ki에 대한 하모닉 주파수 위치인 ki, 2ki, 3ki, 4ki, ... 에 피크값이 존재하므로 이론적으로 피크값의 위치는 peak(j) = j × ki 이다. 따라서 서로 다른 임의의 두 피크 위치 peak(j) 사이의 거리를 모두 구하면 거리값 = ki 이 가장 자주 발생하게 된다. 실제로는 하모닉 주파수가 기본 주파수의 정수배와 완전히 일치하지 않으므로, 피크들간의 거리값들을 산출하면, 일정 차이 이내의 유사한 거리값이 자주 발생하게된다. 만약 입력된 음악 신호가 다음원 음악신호인 경우에는, 여러 종류의 유사한 거리값들이 자주 발생하게 된다. 따라서 기본 주파수 후보 결정부(130)는 다수의 피크들간의 거리값중 일정 차이 이내의 유사한 거리값끼리 그룹핑할 수 있다. 그리고 기본 주파수 후보 결정부(130)는 그룹핑된 그룹들 중 유사한 거리값들의 수가 많은 그룹을 선택하고, 각 선택된 그룹에서 대표값을 선정하여 기본 주파수 후보로 결정할 수 있다. 이러한 기본 주파수 후보 결정부(130)에 대한 구체적인 설명은 도 3 내지 도5를 참조하여 후술한다.
기본 주파수 결정부(140)는 복수의 기본 주파수 후보들 중 적어도 하나를 기본 주파수로 선택한다. 즉, 기본 주파수 결정부(140)는, 전술한 기본 주파수 후보 결정부(130)에 의해 선택된 후보들 중에서, 검증을 통해 기본 주파수를 선택할 수 있다.
예컨대 기본 주파수 결정부(140)는 기본 주파수 후보들을 정수배하여 각 기본 주파수 후보들의 하모닉 성분의 위치를 계산하고, 계산된 하모닉 성분의 위치 주변에 실제 주파수 피크값이 존재하는지 여부를 판단하여, 기본 주파수 후보들을 검증하고, 검증 후에 후보들 중에서 기본 주파수를 선택할 수 있다. 이러한 기본 주파수 결정부(140)에 대한 구체적인 설명은 도 6을 참조하여 후술한다.
이러한 기본 주파수 추출 장치(100)에 의하면, 검출된 모든 주파수 피크로부터 기본 주파수를 추출하므로 정확성이 향상될 수 있다.
이하에서 도 3 내지 도 5를 참조하여 도 2의 기본 주파수 후보 결정부(130)에 대해 구체적으로 설명한다. 도 3은 도 2의 기본 주파수 후보 결정부를 설명하기 위한 블록도이고, 도 4는 도 3의 피크 거리 계산부의 동작을 설명하기 위한 개념도이고, 도 5는 도 3의 거리 집단화부 및 대표 거리 출력부의 동작을 설명하기 위한 개념도이다.
먼저 도 3을 참조하면, 기본 주파수 후보 결정부(130)는 피크 거리 계산부(131)와, 대표 거리 출력부(133)를 포함한다.
피크 거리 계산부(131)는 검출된 모든 피크 위치 peak(j), 0≤j≤J, 사이의 거리를 계산한다. 다만, 일반적인 보컬의 기본 주파수의 영역은 한정적이므로 피크 거리 계산부(131)는 이 영역에 포함되는 거리값만을 계산할 수 있으며, 예컨대 보컬의 기본 주파수의 영역을 100Hz ~ 1kHz 로 한정하여 계산할 수 있다.
도 4를 더 참조하여 피크 거리 계산부(131)의 동작을 설명한다.
도 4에는 3개의 음원이 각각 서로 다른 기본 주파수를 갖는 다음원 음악 신호의 주파수 피크 위치가 도시되어 있다. 즉, 도 4에서 ×, ■, ●은 도 2의 주파수 피크 검출부(120)에 의해 검출된 주파수 피크 위치를 나타낸다. 도 4에 기재된 40, 50, 60은 피크들 간의 거리이며, 3개 음원의 실제 기본 주파수에 각각 대응되는 거리값이다. 단, ×에 대하여서는 첫 번째 하모닉 피크가 존재하지 않는 경우를 나타낸다. ×는 4곳, ■은 4곳, ●은 3곳이 존재하지만, 그 중 몇몇이 겹치므로, 주파수 스펙트럼은 총 9개의 피크 위치를 가진다. 즉 J = 9 이다. 이 경우에, 임의의 두 피크 위치 peak(j), 0≤j≤9, 사이의 거리 수는 총 45개이고, u 번째 하모닉 피크와 v 번째 하모닉 피크 사이의 거리를 peak_dist(u, v) = peak(v) - peak(u)형태의 2차원 행렬로 표시하면 도 5과 같다. 단, 보컬 기본 주파수를 100Hz ~ 1kHz로 한정하고 이는 12 < k < 128 에 해당하므로, 피크 거리 계산부(131)는 도 5에서 음영처리된 영역을 제외하고, 나머지 거리값들을 출력한다.
거리 집단화부(132)는 모든 거리값을 분석하여, 거리값들 중 유사한 거리값들끼리 그룹핑하여 거리값들을 다수의 거리값 집단(group)으로 분류한다. 이론적으로는 주기 신호의 스펙트럼에서 기본 주파수의 정수배 위치에 피크가 존재하지만 실제 음악 신호에서는 주파수가 증가함에 따라 정확한 정수배의 위치가 아니라 정수배 근처에 주파수 피크가 존재할 수 있으며, 이 경우에 대비하기 위하여 거리값이 비슷하면 이들은 모두 하나의 거리 집단으로 분류한다. 예컨대 거리값의 차이가 3이하이면 동일한 집단으로 분류한다.
예를 들어, 피크 거리 계산부(131)가 도 5에 도시된 바와 같이 거리값들을 출력하면, 거리 집단화부(132)는 거리값들을 아래와 같이 11개의 거리집단으로 분류한다.
[거리집단]
거리집단1 = {50, 50, 51, 52}
거리집단2 = {60, 60, 60, 62}
거리집단3 = {80, 80, 82, 83}
거리집단4 = {100, 101, 100, 102, 103}
거리집단5 = {120, 122, 123}
거리집단6 = {30, 31, 31}
거리집단7 = {70, 71}
거리집단8 = {110}
거리집단9 = {20, 20, 20, 22, 21}
거리집단10 = {40, 40, 40, 43}
거리집단11 = {91}
그리고 대표 거리 출력부(133)는 복수의 거리 집단 중에서 적어도 하나의 유효 거리집단을 선택하고, 선택된 유효 거리집단 각각의 대표값을 선정하여 출력한다. 예컨대 대표 거리 출력부(133)는 유사한 거리값들의 수가 많은 집단을 유효 거리집단으로 선택할 수 있다.
구체적으로, 대표 거리 출력부(133)는 복수의 거리 집단 중에서 기준개수 4개 이상의 유사한 거리값들을 거리 집단을 유효 거리집단으로 선택할 수 있다. 또는 대표 거리 출력부(133)는 4개 이상의 유사한 거리값들을 거리 집단 중에서 거리값들의 수가 많은 순서대로 상위 6개의 거리 집단을 유효 거리 집단으로 선택할 수 있다. 즉, 대표 거리 출력부(133)는 집단 1 내지 집단 11의 크기가 4 이상인 집단 중에서 크기가 큰 6개 거리집단(거리집단1, 거리집단2, 거리집단3, 거리집단4, 거리집단9, 거리집단10)을 유효 거리 집단으로 선택할 수 있다.
그리고 대표 거리 출력부(133)는 선택된 집단 각각에 포함된 거리값들로부터 대표값을 결정한다. 예컨대 대표 거리 출력부(133)는 각 집단에 표함된 거리값들의 평균값 또는 중간값인 20, 40, 50, 60, 80, 101을 기본 주파수 후보로 출력한다. 이는, 대표 거리 출력부(133)에서 기본 주파수 후보로 출력한 결과가 다음원 음악 신호의 실제 기본 주파수인 40, 50, 60을 모두 포함하고 있다는 것을 보여준다.
다음으로 도 6을 참조하여 도 2의 기본 주파수 결정부(140)에 대해 구체적으로 설명한다. 도 6은 도 2의 기본 주파수 결정부를 설명하기 위한 블록도이다.
도 6을 참조하면, 기본 주파수 결정부(140)는 목표 하모닉 위치 계산부(141)와, 목표 하모닉 위치 계산부(142)와, 기본 주파수 선택부(143) 및 하모닉 정보 출력부(144)를 포함할 수 있다. 이러한 기본 주파수 결정부(140)는 기본 주파수 후보 결정부(130)에 의해 결정된 후보들 중에서 검증을 통해 적어도 하나를 기본 주파수로 선택한다. 이하에서 기본 주파수 결정부(140)가 다수의 후보들 중 검증을 통해 기본 주파수를 선택하는 과정에 대해 설명한다.
목표 하모닉 위치 계산부(141)는 각 후보들, 즉 각 거리집단의 대표값에 대해 아래의 [수학식 3]에 따라 p 번째 목표 하모닉 피크 위치영역을 정의한다.
[수학식 3]
Figure 112010048254424-pat00003
,
Figure 112010048254424-pat00004
여기서, F0candidate(i)은 각 후보, 즉 각 거리집단의 대표값이고, i는 대표값의 인덱스로서, 총 대표값이 Q개이면 10≤i≤Q이다. 수학식 3를 통해 알 수 있듯이, 목표 하모닉 위치영역은 대표값을 정수배하여 하모닉 성분들이 위치할 것으로 예상되는 주파수 인덱스 k의 영역이다.
실제 음악 신호에서 하모닉 성분들은 주파수가 증가함에 따라 기본 주파수의정수배와 정확히 일치하지 않고, 기본 주파수의 정수배의 근처에 존재하기 때문에, 이를 반영하여 허용 여유 e를 도입하였다. 예컨대 e = 5일 수 있으며, p 에 따라 가변으로 할 수 있다. 이러한 목표 하모닉 위치영역은 대표값들 중에서 기본 주파수에 해당하는 것을 선택해내기 위해 사용된다.
다음으로 목표 하모닉 위치 계산부(142)는 p 번째 목표 하모닉 위치영역과 도 2의 주파수 피크 검출부(120)에 의해 검출된 주파수 피크 위치를 비교하고, p 번째 목표 하모닉 위치영역에 실제로 주파수 피크가 존재하는지를 확인한다. 즉, 대표값들을 검증한다. 예컨대 각 목표 하모닉 위치영역(i, p)의 각 p에 대하여 "peak(j) ∈ 목표 하모닉 위치영역(i, p)"를 만족하는 peak(j)이 존재하는지 판단한다. 이와 같이 목표 하모닉 위치 계산부(142)는 모든 p 번째 상기 목표 하모닉 위치영역에 검출된 주파수 피크가 존재하는 비율을 계산한다.
기본 주파수 선택부(143)는 계산된 비율이 기준비율, 예컨대 50% 이상이면 F0candidate(i)를 기본 주파수로 결정한다. 기본 주파수 선택부(143)에서 결정된 기본 주파수를 F0(f)라 표시한다. 여기서, f는 결정된 기본 주파수 인덱스이고, 총 결정된 기본 주파수가 K 개 이면 0≤f≤K이다.
하모닉 정보 출력부(144)는 기본 주파수로 결정된 대표값 각각에 대응하는 하모닉 정보를 출력한다. 구체적으로 하모닉 정보 출력부(144)는 선택된 기본 주파수(또는 선택된 대표값), 각 기본 주파수(또는 선택된 대표값)에 대한 하모닉 피크 위치 pos(f, h)와 주파수 피크값 A(f, h)을 출력한다. 즉, 하모닉 정보 출력부(144)는 각 기본 주파수(또는 선택된 대표값)에 대하여, [수학식 3]으로 정의된 목표 하모닉 위치영역에 포함된 주파수 피크 위치 pos(f, h)를 확인하고, pos(f, h)에서의 스펙트럼 크기값 A(f, h) = |X(pos(f, h))|을 확인한다. 여기서, h는 각 기본 주파수 F0(f)에 해당하는 하모닉의 인덱스이다. 즉, F0(f)에 대하여 하모닉 피크가 P개 존재하면, F0(f)에 대한 h는 0≤h≤P이다. 이 결과들을 하나로 결합하여 전체 하모닉 정보를 F(f) = {F0(f), pos(f, h), A(f, h)} 로 출력할 수 있다.
또한 하모닉 정보 출력부(144)는 기본 주파수 f1의 제1 하모닉 정보와 다른 기본주파수 f2의 제2 하모닉 정보를 비교하여 일부를 출력하지 않을 수 있다. 예컨대 하모닉 정보 출력부(144)는 제1 하모닉 정보 내의 주파수 피크 위치가 제2 하모닉 정보 내의 주파수 피크위 위치를 모두 포함하는 경우, 즉, f1 < f2 이고 "pos(f1, h) ∋ pos(f2, h)"이면 제2 하모닉 정보 F(f2)는 제거한다. 이는 f2의 모든 하모닉 피크가 f1의 하모닉 피크에 포함되는 것을 의미하므로, f2는 기본 주파수로서의 역할을 하지 못하기 때문이다.
종래 기술에서는 [수학식 1]에 따라 가능한 모든 주파수 위치에서의 스펙트럼 크기를 모두 합하여 S(k)를 구하고, S(k) 값 중 최대에 해당하는 주파수를 1차적으로 기본 주파수로 정하고, 1차 기본 주파수의 모든 하모닉 성분을 스펙트럼에서 제거한 뒤 다시 2차로 기본 주파수를 검출하였으나, 이러한 과정이 반복적으로 진행됨에 따라 스펙트럼 정보가 점점 제거되므로 정확한 기본 주파수를 검색하기 어렵게 되었다. 그러나 본 실시예에 따르면, 주어진 모든 주파수 피크 위치를 토대로 모든 기본 주파수를 구하므로 더욱 정확한 기본 주파수 검색이 가능하다.
한편 전술한 실시예와 달리, 본 발명의 실시예에 따른 기본 주파수 추출 장치(100)는 기본 주파수 결정부(140)를 포함하지 않을 수 있다. 전술한 바와 같이, 기본 주파수 결정부(140)는 기본 주파수 후보들, 즉 각 거리집단의 대표값들 중에서 검증을 통해 기본 주파수를 결정하는 것이며, 다른 실시예로 기본 주파수 추출 장치는, 이러한 기본 주파수 결정부(140)를 포함하지 않고, 기본 주파수 후보들, 즉 각 거리집단의 대표값들을 기본 주파수로 출력할 수도 있다.
또는 본 발명의 실시예에 따른 기본 주파수 추출 장치(100)는 의미없는 기본 주파수 후보를 제거함으로써 간단히 검증하여 복수의 기본 주파수 후보들 중에서 기본 주파수를 선택할 수 있다. 즉, 기본 주파수 추출 장치(100)는 다후의 기본 주파수 후보들 중, f1 < f2 이고 "pos(f1, h)∋ pos(f2, h)"인 경우에 F(f2)를 제거함으로써 간단하게 검증을 수행할 수 있다.
이하에서 도 7을 참조하여 본 발명의 다른 실시예에 따른 보컬 멜로디 추출장치 및 추출 방법을 설명한다. 도 7은 본 발명의 다른 실시예에 따른 보컬 멜로디 추출장치 및 추출 방법을 설명하기 위한 보컬 멜로디 추출 장치를 설명하기 위한 블록도이다.
도 7을 참조하면, 본 발명의 실시예에 따른 보컬 멜로디 추출 장치(10)는, 기본 주파수 추출부(100) 및 보컬 선택부(200)를 포함한다.
기본 주파수 추출부(100)는 입력된 음악신호, 예컨대 다음원 음악신호에서 복수의 기본 주파수를 추출한다. 예를 들어, 기본 주파수 추출부(100)는 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 추출함으로써, 복수의 기본 주파수를 추출할 수 있다.
보컬 선택부(200)는 추출된 기본 주파수들을 이용하여 입력된 다음원 음악신호에서 보컬 멜로디를 선택 및 추출한다. 예컨대, 보컬 선택부(200)는 추출된 기본 주파수들 각각에 대해 하모닉 성분들의 포락선 모양을 일정 구간 단위로 조사하고, 이웃한 구간들의 포락선 모양을 비교하여, 비교 결과에 따라 다음원 음악신호에서 보컬 멜로디를 추출할 수 있다.
악기가 특정 멜로디를 연주하면 음의 높낮이, 즉 기본 주파수는 계속 변하지만 신호의 하모닉 피크값 분포, 즉 스펙트럼 포락선(spectral envelope) 모양은 크게 변하지 않는다. 이는 악기의 고유 음색(timber)이 시간에 따라 변하지 않기 때문이다. 이에 비해, 보컬은 노래를 할 때 가사에 따라 발음이 변하고 그에 따라 하모닉 피크값의 분포, 즉 하모닉 포락선 모양이 변한다. 따라서 보컬 선택부(200)는, 이와 같은 악기와 보컬 사이의 하모닉 성분의 변화 특성의 차이를 이용하여 다수의 기본 주파수 중에서 보컬에 해당하는 기본 주파수를 선별한다. 즉, 보컬 선택부(200)는 추출된 기본 주파수들에 대응하는 멜로디들 중, 이웃한 구간들의 포락선 모양이 가장 유사하지 않은 기본 주파수의 멜로디를 보컬 멜로디로 선택한다.
기본 주파수 추출부(100)는 도 3 내지 도 6을 참조하여 전술한 기본 주파수 추출 장치(100)일 수 있다.
이하에서는 도 7 내지 도 11을 참조하여 보컬 선택부(200)에 대해 구체적으로 설명한다. 도 8은 도 7의 하모닉 구조 비교부를 설명하기 위한 블록도이고, 도 9 내지도 11은 하모닉 구조 비교부의 동작을 설명하기 위한 스파수 스펙트럼의 예시도이다.
보컬 선택부(200)는, 도 7에 도시된 바와 같이, 피치 트래킹 처리부(210)와, 하모닉 구조 비교부(220) 및 보컬 멜로디 선택부(230)를 포함할 수 있다.
피치 트래킹 처리부(210)는 현재 프레임의 기본 주파수와 이전 보컬 프레임의 기본 주파수를 서로 비교하여, 동일한 기본 주파수를 갖는 프레임을 연결하여 멜로디 라인을 구성한다. 즉, 피치 트래킹 처리부(210)는 기본 주파수 추출부(100)에 의해 추출된 기본 주파수 각각에 대해 멜로디 라인을 구성한다. 짧은 시간 간격 내에서는 기본 주파수가 크게 변하지 않는 성질을 이용하여 이웃 프레임에서 유사한 기본 주파수의 프레임을 서로 연결한다.
하모닉 구조 비교부(220)는 도 8에 도시된 바와 같이, 하모닉 포락선 추정부(221) 및 하모닉 유사도 계산부(222)를 포함한다.
하모닉 포락선 추정부(221)는 기본 주파수 각각에 대해 하모닉 피크값 A(f, h)의 모양 변화를 분석하여 포락선을 추정한다. 예컨대 하모닉 포락선 추정부(221)는 주파수 증가에 따른 A(f, h)의 증가/감소하는 모양으로 대략적인 포락선 모양을 추정할 수 있으므로, 하모닉 성분들의 피크 위치 pos(f, h)에서 피크값 A(f, h)의 증가/감소/동일을 계산하고, 아래의 [수학식 4]에 따라 env(f, h)를 업(up, 이하 U라 함), 다운(down, 이하 D라 함), 동일(same, 이하 S라 함)으로 표시하여 출력한다.
[수학식 4]
만일 A(f, h) - A(f, h+1) < T1 < 0, env(f, h) = U
만일 A(f, h) - A(f, h+1) > T2 > 0, env(f, h) = D
나머지, env(f, h) = S
여기서 T1 = -1, T2 = 1일 수 있다.
예를 들어 하모닉 포락선 추정부(221)는, 도 9에 도시된 바와 같이 어느 하나의 기본 주파수에 대하여 하모닉 성분들의 주파수 피크의 변화를 파악하고, UDDU와 같이 U, D, S의 조합으로 포락선의 모양을 표현한다. 즉, 기본 주파수가 k = 50에 해당하고, 피크 위치pos(f, h) = {50, 100, 150, 200, 250}인 멜로디의 경우, 하모닉 포락선 추정부(221)는 [수학식 4]에 따라 env(f, h) = UDDU으로 포락선 모양을 추정한다.
한편, [수학식 4]를 적용하는 과정에서, 만일 목표 하모닉 위치영역에 주파수 피크가 존재하지 않을 경우, 예컨대 특정 하모닉 위치에서 스펙트럼 크기값이 작고 뚜렷한 피크 모양을 가지지 못하여 [수학식 2]에 따라 주파수 피크를 검출하는 과정에서 주파수 피크로 검출되지 선정되지 않은 경우, 하모닉 포락선의 모양이 정상적인 의미를 가지지 못하게 된다. 이에 대한 예가 도 10에 도시되어 있다. 도 10에는 기본 주파수가 k = 51이고 pos(f, h) = {51, 102, 152, 255}이고, 4번째 하모닉 위치에 피크가 존재하지 않는 경우가 도시되어 있다. 이 경우 하모닉 포락선 추정부(221)는 포락선 모양을 env(f, h) = UDS으로 잘못된 정보를 출력하게 된다. 따라서 이 경우 하모닉 포락선 추정부(221)는 4번째 하모닉 위치에 해당하는 스펙트럼 X(k)의 주파수 피크값을 멜로디에 삽입하여, 포락선 모양을 추정할 수 있다.
구체적으로 설명하면, 하모닉 포락선 추정부(221)는 4번째 하모닉에 해당하는 목표 하모닉 위치영역 내에서 주파수 피크값을 검색하여 해당 하모닉 위치로 정할 수 있다. 만일 목표 하모닉 위치영역 내에서 스펙트럼 X(k)의 주파수 피크값이 존재하지 않으면 하모닉 포락선 추정부(221)는 영역내의 최대값 위치를 피크값 위치로 정할 수도 있다. 도 11은 이러한 방법으로 결정된 하모닉 피크 위치가 k = 204이고, 주파수 스팩트럼에서 k = 204 위치의 피크값 X(204)을 메로디에 삽입하여, 포락선 모양을 UDDU로 추정한 과정을 나타낸다.
한편, 하모닉 유사도 계산부(222)는 각 멜로디 라인에 대하여 이전 프레임의 하모닉 포락선의 모양과 현재 프레임의 하모닉 포락선의 모양을 비교하여 시간 진행에 따른 유사도를 측정한다. 예컨대, 도 9이 이전 보컬 프레임에 해당하고, 도 10이 현재 보컬 프레임에 해당하면, 하모닉 유사도 계산부(222)는 도 11과 같은 보정을 수행하고, 두 프레임의 하모닉 포락선이 모두 UDDU 이므로 유사도가 100%이고 동일한 하모닉 포락선 구조로 판정한다.
보컬 멜로디 선택부(230)는 계산된 유사도에 따라, 멜로디 중에서 가장 유사도가 낮은 멜로디를 보컬 멜로디로 최종 출력한다.
이하에서 도 12를 더 참조하여 본 발명의 또 다른 실시예에 따른 보컬 멜로디 추출 방법을 설명한다. 도 12는 본 발명의 또 다른 실시예에 따른 보컬 멜로디 검출 방법을 설명하기 위한 순서도이다. 보컬 멜로디 추출 방법은 도 7에 도시된 보컬 멜로디 추출 장치에 의해 수행될 수 있다. 또는 컴퓨팅 장치 혹은 디지털 기기의 프로세서에 의해 수행될 수도 있다. 이하에서 설명의 편의상 프로세서에 의해 수행되는 경우를 가정한다.
도 12를 참조하면, 프로세서는 입력된 음악 신호의주파수 스펙트럼에서 주파수 피크를 검출한다(S1210).
그리고 프로세서는 검출된 주파수 피크를 이용하여 기본 주파수 후보를 결정한다(S1220). 예컨대 프로세서는 검출된 주파수 피크들간의 거리를 계산하고, 거리값중 일정 차이 이내의 유사한 거리값끼리 그룹핑하고, 그룹핑된 그룹들 중 휴효 그룹을 선택하고, 각 선택된 그룹에서 대표값을 선정하여 기본 주파수 후보로 결정할 수 있다.
다음으로 프로세서는 기본 주파수 후보 중에서 기본 주파수를 결정한다(S1230). 예컨대 프로세서는 기본 주파수 후보들을 정수배하여 각 기본 주파수 후보들의 하모닉 성분의 위치를 계산하고, 계산된 하모닉 성분의 위치 주변에 실제 주파수 피크값이 존재하는지 여부를 판단하여, 기본 주파수 후보들을 검증하고, 검증 후에 후보들 중에서 기본 주파수를 선택할 수 있다.
그리고 프로세서는 결정된 기본 주파수 각각에 대한 포락선 모양을 추정한다(S1240). 예컨대 프로세서는 기본 주파수 각각에 대해 하모닉 피크값의 모양 변화를 분석하여 포락선을 추정한다. 구체적으로, 프로세서는 주파수 증가에 따라 하모닉 피크값이 증가, 감소 또는 동일한지 여부를 판단하여, 하모닉 성분들의 피크 위치에서 피크값의 업, 다운, 동일을 표시하여 출력한다.
그리고 프로세서는 이웃한 프레임간 포락선의 유사도를 계산한다(S1250). 예컨대 프로세서는 이웃한 프레임간 업, 다운, 동일의 조합이 일치하는지 여부를 판단하여 유사도를 계산한다.
그 후 프로세서는 계산된 유사도를 토대로 보컬 멜로디를 선택한다(S1260). 보컬은 노래를 할 때 가사에 따라 발음이 변하고 그에 따라 하모닉 피크값의 분포, 즉 하모닉 포락선 모양이 변한다. 이러한 특성을 이용하여 프로세서는, 추출된 기본 주파수들에 대응하는 멜로디들 중, 이웃한 구간들의 포락선 모양이 가장 유사하지 않은 기본 주파수의 멜로디를 보컬 멜로디로 선택한다.
이상 바람직한 실시예와 첨부도면을 참조하여 본 발명의 구성에 관해 구체적으로 설명하였으나, 이는 예시에 불과한 것으로 본 발명의 기술적 사상을 벗어나지 않는 범주내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.

Claims (15)

  1. 삭제
  2. 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출하는 주파수 피크 검출부와, 검출된 모든 주파수 피크들 간의 거리값들을 계산하고, 상기 거리값들을 토대로 적어도 하나의 기본 주파수를 추출하는 처리부를 포함하는 기본 주파수 추출 장치에 있어서,
    상기 처리부는,
    상기 거리값들중 일정 차이 이내의 유사한 거리값들끼리 그룹핑하여 상기 거리값들을 다수의 거리집단으로 분류하는 거리 집단화부; 및
    상기 각 거리집단에 속한 유사한 거리값들의 수를 고려하여 상기 다수의 거리집단 중에서 적어도 하나의 유효 거리집단을 선택하고, 상기 선택된 유효 거리집단에 속한 유사한 거리값들을 평균하여 상기 유효 거리집단 각각의 대표값을 출력하는 대표 거리 출력부를 포함하는 것
    인 기본 주파수 추출 장치.
  3. 삭제
  4. 제2항에 있어서, 상기 처리부는
    상기 대표값을 정수배하여 상기 대표값의 하모닉 성분들이 위치할 것으로 예상되는 목표 하모닉 피크 위치영역을 정의하는 목표 하모닉 위치 계산부;
    상기 목표 하모닉 피크 위치영역에 상기 검출된 주파수 피크의 존재 비율을 계산하는 목표 위치 만족율 계산부; 및
    상기 존재 비율이 기준비율 이상인 조건을 만족하는 상기 대표값을 기본 주파수로 결정하는 기본 주파수 결정부를 더 포함하는 것
    인 기본 주파수 추출 장치.
  5. 제4항에 있어서, 상기 처리부는
    상기 기본 주파수로 결정된 대표값 각각에 대응하는 하모닉 정보를 출력하는 하모닉 정보 출력부를 더 포하하되,
    상기 하모닉 정보는 상기 기본 주파수로 결정된 대표값, 상기 대표값에 대응하는 상기 목표 하모닉 피크 위치영역에 존재하는 상기 주파수 피크의 위치 및 피크값을 포함하고,
    상기 하모닉 정보 출력부는
    제1 하모닉 정보 내의 주파수 피크의 위치가 제2 하모닉 정보 내의 주파수 피크의 위치를 모두 포함하는 경우, 상기 제2 하모닉 정보는 출력하지 않는 것
    인 기본 주파수 추출 장치.
  6. 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출하고, 검출된 주파수 피크들 간의 거리값들을 계산하고, 상기 거리값들중 일정 차이 이내의 유사한 거리값들끼리 그룹핑하여 상기 거리값들을 다수의 거리집단으로 분류하고, 상기 각 거리집단에 속한 유사한 거리값들의 수를 고려하여 상기 다수의 거리집단 중에서 적어도 하나의 유효 거리집단을 선택하고, 상기 선택된 유효 거리집단에 속한 유사한 거리값들을 평균하여 출력된 상기 유효 거리집단 각각의 대표값을 토대로 복수의 기본 주파수를 추출하는 기본 주파수 추출부; 및
    상기 검출된 기본 주파수들 각각에 대해 하모닉 성분들의 포락선 모양을 일정 구간 단위로 조사하고, 이웃한 구간들의 포락선 모양을 비교하여, 비교 결과에 따라 상기 입력된 음악 신호에서 보컬 멜로디를 검출하는 보컬 선택부
    를 포함하는 보컬 멜로디 추출 장치.
  7. 제6항에 있어서, 상기 보컬 선택부는
    상기 비교 결과로부터, 상기 검출된 기본 주파수들 중 이웃한 구간들의 포락선 모양이 가장 유사하지 않은 기본 주파수의 멜로디를 상기 보컬 멜로디로 선택하는 보컬 멜로디 선택부를 포함하는 것
    인 보컬 멜로디 추출 장치.
  8. 제6항에 있어서, 상기 보컬 선택부는
    상기 검출된 기본 주파수들 각각에 대해 하모닉 성분들의 주파수 피크의 변화로부터 상기 하모닉 성분들의 포락선 모양을 상기 일정 구간 단위로 추정하는 하모닉 포락선 추정부;
    상기 이웃한 구간들의 주파수 피크의 변화를 비교하여 상기 이웃한 구간들의 하모닉 성분들의 유사도를 계산하는 하모닉 유사도 계산부; 및
    상기 계산된 유사도 중 가장 낮은 유사도를 갖는 기본 주파수의 멜로디를 상기 보컬 멜로디로 선택하는 보컬 멜로디 선택부를 포함하는 것
    인 보컬 멜로디 추출 장치.
  9. 제8항에 있어서,
    상기 하모닉 성분들의 주파수 피크의 변화는 인접한 하모닉 성분의 주파수 피크값과의 비교에 의해, 업, 다운, 동일 중 적어도 하나의 조합으로 표현되는 것이고,
    상기 하모닉 유사도 계산부는 일정 구간에서 상기 조합과 이웃한 구간의 상기 조합이 일치하는 비율을 계산하는 것
    인 보컬 멜로디 추출 장치.
  10. 삭제
  11. 입력된 음악 신호의 주파수 스펙트럼에서 주파수 피크를 검출하는 단계;
    검출된 주파수 피크들 간의 거리값들을 계산하는 단계;
    상기 거리값들중 일정 차이 이내의 유사한 거리값들끼리 그룹핑하는 단계;
    그룹핑된 다수의 그룹 중에서 상기 유사한 거리값들이 기준개수 이상 속한 그룹을 선택하는 단계;
    상기 선택된 그룹에 속한 상기 유사한 거리값들을 평균하여 출력된 상기 선택된 그룹 각각의 대표값을 토대로 기본 주파수를 검출하는 단계; 및
    상기 검출된 기본 주파수들을 이용하여 상기 입력된 음악 신호에서 보컬 멜로디를 추출하는 단계
    를 포함하는 보컬 멜로디 검출 방법.
  12. 삭제
  13. 제11항에 있어서, 상기 기본 주파수를 검출하는 단계는
    상기 선택된 그룹에 속한 상기 유사한 거리값들로부터 상기 선택된 그룹의 대표값을 결정하는 단계;
    상기 각 대표값을 정수배하여 상기 각 대표값의 하모닉 성분들이 위치할 것으로 예상되는 목표 하모닉 피크 위치영역을 정의하는 단계;
    상기 목표 하모닉 피크 위치영역과 상기 검출된 주파수 피크의 위치를 비교하는 단계;
    상기 비교 결과를 토대로 상기 대표값들중 상기 복수의 기본 주파수를 선택하는 단계를 포함하는 것
    인 보컬 멜로디 추출 방법.
  14. 제11항에 있어서, 상기 보컬 멜로디를 추출하는 단계는
    상기 검출된 기본 주파수들 각각에 대해 하모닉 성분들의 상기 주파수 피크의 변화를 일정 구간 단위로 조사하는 단계;
    상기 일정 구간의 주파수 피크의 변화를 이웃한 구간의 주파수 피크의 변화와 비교하는 단계; 및
    상기 비교 결과로부터 특정 기본 주파수의 멜로디를 상기 보컬 멜로디로 추출하는 단계를 포함하는 것
    인 보컬 멜로디 추출 방법.
  15. 제14항에 있어서, 상기 기본 주파수의 하모닉 위치에서 상기 주파수 피크가 검출되지 않은 경우,
    상기 조사하는 단계는
    상기 주파수 스펙트럼에서 상기 하모닉 위치 부근의 주파수 피크값을 검색하고, 검색된 주파수 피크값을 이용하여 상기 하모닉 성분들의 상기 주파수 피크의 변화를 조사하는 단계를 포함하는 것
    인 보컬 멜로디 추출 방법.
KR1020100072072A 2010-07-26 2010-07-26 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법 KR101140737B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100072072A KR101140737B1 (ko) 2010-07-26 2010-07-26 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100072072A KR101140737B1 (ko) 2010-07-26 2010-07-26 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20120010488A KR20120010488A (ko) 2012-02-03
KR101140737B1 true KR101140737B1 (ko) 2012-05-03

Family

ID=45834971

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100072072A KR101140737B1 (ko) 2010-07-26 2010-07-26 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101140737B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3471096T3 (pl) * 2013-10-18 2020-11-16 Telefonaktiebolaget Lm Ericsson (Publ) Kodowanie pozycji pików spektralnych

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070099372A (ko) * 2006-04-04 2007-10-09 삼성전자주식회사 음성 신호의 하모닉 정보 및 스펙트럼 포락선 정보,유성음화 비율 추정 방법 및 장치
KR20090083098A (ko) * 2008-01-29 2009-08-03 삼성전자주식회사 하모닉 특징을 이용한 음악 인식 방법 및 음악 인식을이용한 이동 로봇의 동작 생성 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070099372A (ko) * 2006-04-04 2007-10-09 삼성전자주식회사 음성 신호의 하모닉 정보 및 스펙트럼 포락선 정보,유성음화 비율 추정 방법 및 장치
KR20090083098A (ko) * 2008-01-29 2009-08-03 삼성전자주식회사 하모닉 특징을 이용한 음악 인식 방법 및 음악 인식을이용한 이동 로봇의 동작 생성 방법

Also Published As

Publication number Publication date
KR20120010488A (ko) 2012-02-03

Similar Documents

Publication Publication Date Title
KR100838674B1 (ko) 오디오 핑거프린팅 시스템 및 방법
EP2793223B1 (en) Ranking representative segments in media data
US7649137B2 (en) Signal processing apparatus and method, program, and recording medium
Kroher et al. Automatic transcription of flamenco singing from polyphonic music recordings
Ranjani et al. Carnatic music analysis: Shadja, swara identification and raga verification in alapana using stochastic models
JP5127982B2 (ja) 音楽検索装置
US6476308B1 (en) Method and apparatus for classifying a musical piece containing plural notes
Zhu et al. Precise pitch profile feature extraction from musical audio for key detection
US8718803B2 (en) Method for calculating measures of similarity between time signals
US20080245215A1 (en) Signal Processing Apparatus and Method, Program, and Recording Medium
CN102915728B (zh) 声音分段设备和方法以及说话者识别系统
Zhu et al. Music key detection for musical audio
KR100978913B1 (ko) Svm기반 복 수의 매칭 알고리즘을 결합한 음원 검색 시스템 및 방법
Elowsson et al. Modeling the perception of tempo
Gulati et al. A two-stage approach for tonic identification in Indian art music
Dandawate et al. Indian instrumental music: Raga analysis and classification
Ryynanen et al. Automatic bass line transcription from streaming polyphonic audio
KR101140737B1 (ko) 기본 주파수 추출 장치, 보컬 멜로디 추출 장치 및 방법
Gao et al. Vocal melody extraction via dnn-based pitch estimation and salience-based pitch refinement
Vinutha et al. Reliable tempo detection for structural segmentation in sarod concerts
Sinith et al. Pattern recognition in South Indian classical music using a hybrid of HMM and DTW
Díaz-Báñez et al. An efficient DTW-based approach for melodic similarity in flamenco singing
Park et al. Classification of audio signals using gradient-based fuzzy c-means algorithm with divergence measure
Pishdadian et al. On the transcription of monophonic melodies in an instance-based pitch classification scenario
Bellur et al. A cepstrum based approach for identifying tonic pitch in Indian classical music

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
LAPS Lapse due to unpaid annual fee