KR970009939B1 - 자동채보(採譜) 방법 및 그 장치 - Google Patents

자동채보(採譜) 방법 및 그 장치 Download PDF

Info

Publication number
KR970009939B1
KR970009939B1 KR1019890002518A KR890002518A KR970009939B1 KR 970009939 B1 KR970009939 B1 KR 970009939B1 KR 1019890002518 A KR1019890002518 A KR 1019890002518A KR 890002518 A KR890002518 A KR 890002518A KR 970009939 B1 KR970009939 B1 KR 970009939B1
Authority
KR
South Korea
Prior art keywords
pitch
segment
information
cpu
length
Prior art date
Application number
KR1019890002518A
Other languages
English (en)
Other versions
KR890013602A (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
Priority claimed from JP63046125A external-priority patent/JP2604410B2/ja
Priority claimed from JP63046126A external-priority patent/JPH01219889A/ja
Priority claimed from JP4612888A external-priority patent/JP2604412B2/ja
Priority claimed from JP4611888A external-priority patent/JP2604405B2/ja
Priority claimed from JP4612788A external-priority patent/JP2604411B2/ja
Priority claimed from JP63046112A external-priority patent/JP2604401B2/ja
Priority claimed from JP4611188A external-priority patent/JP2604400B2/ja
Application filed by 닛뽄 덴기 호움 엘렉트로닉스 가부시기가이샤, 원본미기재, 닛뽄 덴기 가부시기가이샤 filed Critical 닛뽄 덴기 호움 엘렉트로닉스 가부시기가이샤
Publication of KR890013602A publication Critical patent/KR890013602A/ko
Application granted granted Critical
Publication of KR970009939B1 publication Critical patent/KR970009939B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10GREPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
    • G10G3/00Recording music in notation form, e.g. recording the mechanical operation of a musical instrument
    • G10G3/04Recording music in notation form, e.g. recording the mechanical operation of a musical instrument using electrical means

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Auxiliary Devices For Music (AREA)
  • Measurement Of Mechanical Vibrations Or Ultrasonic Waves (AREA)

Abstract

내용 없음.

Description

자동채보(採譜) 방법 및 그 장치
제1도는 본 발명의 자동채보방식을 설명하는 블록도.
제2도는 본 발명에 의한 자동채보 방식구성의 제1실시예를 설명하는 블록도.
제3도는 본 발명에 제1실시예의 방식에 있어서 자동채보 처리의 순서를 나타내는 순서도.
제4도는 본 발명에 관한 파워(power)정보에 기초하는 세그멘테이션(segmentation)처리를 설명하는 개략순서도.
제5도는 세그멘테이션처리의 한가지예를 상세힌 설명하는 순서도.
제6도는 그 처리에 의한 세그멘테이션의 한가지예를 설명하는 특성곡선도.
제7도는 본 발명에 의해 제공되는 파워정보에 기초한 세그멘테이션 처리의 다른예를 설명하는 개략순서도.
제8도는 세그멘테이션처리를 상세히 설명하는 순서도.
제9도는 본 발명에 의해 제공되는 파워정도에 기초한 세그멘테이션처리의 한가지 예를 설명하는 순서도.
제10도는 파워정보의 시간적 변화를 세그멘테이션결과와 함께 나타내는 특성곡선도.
제11도는 본 발명에 의해 제공되는 파워정보에 기초한 세그멘테이션 처리의 한가지예를 설명하는 순서도.
제12도는 파워정보와 입상추출함수(rise extracting function)의 시간적변화를 세그멘테이션결과와 함께 나타내는 특성곡선도.
제13도와 제14도는 본 발명에 의해 제공되는 파워정보에 기초한 세그멘테이션 처리의 한가지예를 설명하는 순서도
제15도는 파워정보와 입상추출함수의 시간적변화를 세그멘테이션결과와 함께 나타내는 특성곡선도.
제16도와 제17도는 본 발명에 의해 제공되는 파워정보에 기초한 세그멘테이션 처리의 한가지예를 설명하는 순서도.
제18도는 시리즈의 길이를 설명하기 위한 개략도.
제19도는 본 발명에 관한 세그멘테이션의 재검토처리를 설명하는 순서도.
제20도는 재검토처리를 설명하는 개략도.
제21도는 본 발명에 의한 음정식별처리를 설명하는 순서도.
제22도는 각 세그멘트에 있어서 절대음정축에 대한 피치정보의 거리를 설명하는 개략도.
제23도는 본 발명에 의한 음정식별처리의 한가지예를 설명하는 순서도.
제24도는 그 음정식별처리에 의한 한가지예를 설명하는 개략도.
제25도는 본 발명에 의한 음정식별처리의 한가지예를 설명하는 순서도.
제26도는 그 음정식별처리에 의한 한가지예를 설명하는 개략도.
제27도는 본 발명에 의한 음정식별처리의 한가지예를 설명하는 순서도.
제28도는 그 음정식별처리에 의한 한가지예를 설명하는 개략도.
제29도는 본 발명에 의한 식별된 음정의 수정처리의 한가지예를 설명하는 순서도.
제30도는 그 식별된 음정의 수정예를 설명하는 개략도.
제31도는 본 발명에 의한 음정식별처리의 한가지예를 설명하는 순서도.
제32도는 그 음정식별처리에 의한 한가지예를 설명하는 개략도.
제33도는 본 발명에 의한 음정식별처리의 한가지예를 설명하는 순서도.
제34도는 본 발명에 적용되는 시리즈의 길이를 설명하기 위한 개략도.
제35도는 그 음정식별처리에 의한 한가지예를 설명하는 개략도.
제36도는 본 발명에 의한 식별된 음정의 수정처리의 한가지예를 설명하는 순서도.
제37도는 식별된 음정의 수정처리를 설명하기위한 개략도.
제38도는 본 발명에 의한 조결정처리의 한가지예를 설명하는 순서도.
제39도는 각조에 따라 확립된 각 음계의 무게계수의 몇가지예를 나타내는 표.
제40도는 본 발명에 의한 조결정처리의 한가지예를 설명하는 순서도.
제41도는 본 발명에 의한 조율처리의 한가지예를 설명하는 순서도.
제42도는 피치정보의 분포상태를 나타내는 히스토그램.
제43도는 본 발명에 의한 피치추출처리의 한가지예를 나타내는 순서도.
제44도는 피치추출처리에 사용되는 자기상관함수곡선을 나타내는 개략도.
제45도는 본 발명에 의한 피치추출처리의 한가지예를 설명하는 순서도.
제46도는 피치추출처리에 사용되는 자기상관함수곡선을 나타내는 개략도.
제47도는 자동체보방식구성의 제2실시예를 설명하는 블록도.
* 도면의 주요부분에 대한 부호의 설명
1 : CPU 2 : 버스
3 : 주기억장치 4 : 키보오드입력장치
5 : 표시장치 6 : 보조기억장치
7 : A/D변환기 8 : 음향신호입력장치
11 : 가창 또는 허밍음성 12 : A/D변환기
13 : 음성데이터 14 : 자기상관분석장치
15 : 피치정보와 음성파워정보 16 : 세그멘테이션장치
17 : 음정식별장치 18 : 조결정장치
110 : 악보데이터작성장치 111 : 악보데이터출력장치
본 발명은 가창(vocal sound of song), 허밍음성(humming voice) 또는 악기음(musical instrument sound)로부터 악보채보데이터를 작성하기 위한 자동채보방법과 그 장치에 관한 것이다.
가창, 허밍음성 또는 악기음과 같은 음향신호를 악보데이터로 변환하기위한 자동채보방식에 있어서, 음향신호로부터 악보정도의 기본요소인 음의 길이, 음정(musical interval), 조(key), 박자(time) 및 템포(tempe)를 검출하는 것이 필요하다. 일반적으로 음향신호는 연속적인 기본 파형이 반복하는 종류의 신호이므로, 상기한 정보요소를 즉시 획득하는 것은 불가능하다. 따라서, 본 발명자는 예를들어 심사미청구인 일본 특원소 62-178409호에 개시된 자동채보방식을 이미 제안하였다.
제1도는 나타낸 본 자동채보방식에는, 아날로그/디지탈(A/D)변환기(12)에 의해 가창 또는 허밍음성(11)을 디지탈신호로 변환하고 음성데이타(13)를 발생시키고, 음성데이타(13)로부터 피치(pitch)정보와 음성파워(power)정보(15)를 추출하기위한 자기상관분석장치(autocorrelation analyzing mean)(14)와, 입력가창 또는 허밍음성을 전기한 자기상관분석장치에 의해 추출된 음성파워정보에 기초하여 다수의 세그멘트로 분할하기위한 세그멘테이션장치(16)와, 전기한 세그멘테이션장치에 의해 확립된 각 세그멘트에 대해서 전기한 피치데이타에 기초하여 음정을 식별하기 위한 음정식별장치(musical interval identifying mean)(117)와, 전기한 음정식별장치에 의해 식별된 음정에 기초하여 입력가창 또는 허밍음성의 조를 결정하기 위한 조결정장치(key determining mean)(18)와, 전기한 세그멘테이션장치에 의한 분할에 의해 확립된 세그멘트에 기초하여 입력가창 또는 허밍음성의 템포와 박자를 결정하기 위한 템포·박자결정장치와, 전기한 세그멘테이션장치, 음정식별장치, 조결정장치 및 템포·박자결정장치에 의해 사용가능하게된 결과에 기초하여 악보데이타를 작성하기 위한 악보데이타작성장치(musical score data compiling mean)(110)와, 전기한 악보데이타작성장치에 의해 작성된 악보데이타를 출력하기 위한 악보데이타출력장치(111)가 설치되어 있다.
여기에서, 가장 허밍음성 및 악기음등의 신호와 같은 음향신호는 기본파형의 반복하여 구성됨을 주의할 필요가 있다. 그러한 음향신호를 악보데이타로 변화하기 위한 자동채보방식에 있어서, 우선 음향신호에서 기본파형의 반복주파수와 각 분석사이클(analytical cycle)을 추출할 필요가 있다.
이하, 이 주파수를 피치주파수라하고 이것에 대응하는 사이클을 피치사이클이라하여 이들의 결합을 나타내는 개념은 피치라고 한다.
음향신호의 음정과 음의 길이등과 같은 요소에서 여러가지 종류의 정보를 정확하게 결정하기 위해서는 여러가지 추출방법이 있다. 유용한 추출방법중에는 주파수분석과 자기상관분석이 있는데 이들은 음성합성(vocal sound synthesis)과 음성인식(vocal sound recognition)등의 분야에서 발전되어 왔다. 그러나 자기상관분석법이 환경소음에 의해 영향을 받지않고 피치를 추출할 수 있고 더욱이 처리가 용이하므로 지금까지 사용되어왔다. 상기한 자동채보방식에서는 음향신호를 디지탈신호로 변환한후에 자기상관함수(autocorrelation function)를 찾아낸다. 그러므로 각 샘플링사이클(sampling cycle)에 대해서만 자기상관함수가 구해질 수 있다.
따라서 피치는 이 샘플링사이클에 의해 결정되는 분해능(resolution)에 의해서만 추출될 수 있다.
그와 같이 추출된 피치의 분해능이 낮으면 후술하는 처리에 의해 결정되는 음정과 음의 길이는 정확도(degree of accuracy)가 낮게 된다.
그러므로 샘플링을 위해 보다 고주파수의 사용을 생각할 수 있지만 그러한 접근은 장치의 대형화를 초래하여 코스트가 높게되며 자기상관함수의 계산등과 같은 산술연산을 위해 처리되어야할 데이타의 양이 증가하므로 실시간처리(real-time processing)를 시스템이 수행할 수 없게되는 결과를 초래하기 쉽다.
음향신호는 음의 변화후에 즉시 그들의 파워가 증가되는 특성을 가지고 있으므로 이 특성은 파워정보에 기초하여 음흐름(stream of sound)의 세그멘테이션에 사용된다.
그러나 음향 특히 가창되는 노래속에 나타내는 음향은 파워정보의 변화에 있어서 어떤 특정한 패턴을 반드시 취하지는 않지만 변화 패턴에 관한 변동을 보유한다.
더욱이 그러한 신호는 외부소음과 같은 뜻밖의 음도 역시 포함한다. 이러한 상황하에서 파워정보의 변화에 주위를 기울이더라도 음의 단순한 세그멘테이션은 반드시 개개 음을 양호한 상태로 분할하는 것은 아니다.
이점에 있어서, 인간에 의해 발생된 음향신호도 음의 길이에 있어 안정적이지 못하다. 즉 그러한 신호는 많이 피치변동을 보유한다. 이것이 피치정보에 기초하여 양호한 세그멘테이션의 수행에 장애가 된다.
따라서 피치정보에 존재하는 변동의 관점에서 종래의 시스템은 몇몇경우에 단일 세그멘트로서 그 이상의 음을 취급하도록 설계되었다. 더구나 몇몇 경우에 악기에 의해 발생된 음은 음향신호를 전기신호로 변환하는 음향신호입력장치에 의해 채집된후에 피치정보에 끼어드는 주위소음때문에 피치정보에 기초한 세그멘테이션에 별로 유용하지 못하였다.
음정, 박자, 템포 등은 음의 세그멘트(음의 길이)에 기초하여 결정되어져야 하는 것이므로, 세그멘테이션처리는 악보데이타의 작성에 특히 중요한 인자이며, 낮은 정밀도의 세그멘테이션이 최종 악보데이타의 정밀도에 있어서 심각한 편차를 야기하므로 파워정보에 기초한 세그멘테이션 자체의 정밀도는 피치정보에 의한 세그멘테이션의 결과와 피치정보에 기초한 세그멘테이션의 결과에 기초하여 최종 세그멘테이션이 수행되는 경우와 파워정보에 기초하여 최종세그멘테이션이 수행되는 두 경우에 있어서 개선되는 것이 바람직하다.
또 절대음정(absolution musical interval) 축상에 음정에 대한 음향신호를 구성하는 세그멘트를 식별하기 위한 노력으로 음향신호, 특히 인간에 의해 발생되는 음향신호는 음정에 있어서 불안정하며 동일한 피치(한가지 톤(tone))가 시도되더라도 피치에 있어서 상당한 변동을 보유한다는 사실을 알게 된다.
이러한 점이 그러한 신호의 음정식별의 수행을 매우 어렵게 만든다. 무엇보다도, 한음으로부터 다른 음으로의 전조(stransition)가 발생하면 전후로 피치의 변동이 있는 그 다음 음의 피치로의 원활한 전조가 이루어질 수 없는 경우가 흔히 발생한다.
따라서 그러한 부분은 음정식별에 있어서 다른 피치레벨(level)에 속하는 것으로 인식되어, 세그멘테이션처리중에 다은음의 부분으로서 흔히 취급되었다.
이러한 점을 특정한 용어로 설명하기 위하여, 절대축상에서 세그멘트내의 피치정보의 평균값에 가장 근사한 피치를 갖는 음 또는 절대축상에 세그멘트내의 피치정보의 중앙값에 가장 근사한 피치를 갖는 음을 식별하는 방법등과 같이 산술연산을 간단하게하는 방법등이 상기한 자동채보방식에 고려된다.
이러한 방법으로는 한 음계(musical scale)에서 서로 인접한 두음 사이의 음정의 차가 온음(whole tone), 예를 들어 C장조음계에서 도(do)와 레(re)와 같이 음정의 차가 온음인 경우에는 음향신호가 변동을 보유하더라도 음정을 잘 식별할 수 있지만 C장조음계에서 미(mi)와 파(fa)의 경우와 같이 서로 인접하는 음사이의 음정의 차가 반음(semitone)이면 음향신호의 피치변동때문에 음정식별에 있어서 정밀도가 떨어지는 경우가 흔히 있다. 예를들어, C장조음계에서 미(mi)를 의도하는 음이 파(fa)로 식별되는 경우가 흔히 있었다.
음정은 음의 길이와 함께 기본적인 요소이므로, 이것을 정밀하게 식별하는 것이 필요하며, 정확하게 식별될 수 없게되면 최종악보의 정밀도가 낮게 된다.
반면에 음향신호의 조(key)는 악보데이타의 요소일뿐만 아니라 음정과 음정발생주파수와 어떤 관계가 있으므로 음정의 결정에 중요한 단서를 제공한다.
따라서 음정의 정밀도를 개선하기 위해서는 조를 결정하고 식별된 음정을 재검토하는것이 바람직하며 음향신호의 조를 잘 결정하는 것이 바람직하다.
더욱이 상기한바와 같이 음향신호의 음정, 특히 인간의 음성등과 같은 음향신호의 음정은 절대음정에서 편위하므로 그 편차가 커질수록 음정축상에서 식별된 음정은 더욱 정밀도가 떨어져서 최종적으로 작성된 채보데이타의 정밀도가 낮아지게 된다.
상기한 바와 같이 본 발명자등에 의해 일본특원소62-178409호에 개시된 자동채보방식 및 장치는 채보된 악보데이타에 있어서 정밀도가 낮으므로 그것을 실제사용하는 데에는 어려운점이 있다.
본 발명은 상기한 문제점들을 고려하여 이루어진 것이다. 그러므로 본 발명의 주목적은 최종악보데이타의 정밀도를 개선할 수 있는 사용가능의 자동채보방식 및 장치를 제공하는 것이다.
본 발명의 다른 목적은 음향신호의 변동에 의해 영향을 받거나 외부소음의 갑작스러운 침입없이 파워정보 또는 피치정보에 기초한 세그멘테이션의 양호한 수행을 통하여 최종악보데이타의 정밀도를 더욱 개선할 수 있는 자동채보방식 및 장치를 제공하는 것이다.
본 발명의 또다른 목적은 정밀하게 음계를 식별할 수 있는 새로운 음정식별방법을 제안하고, 최종악보데이타의 정밀도를 더욱 개선할 수 있는 자동채보방식 및 장치를 제공하는 것이다.
본 발명의 또다른 목적은 음향신호에 있어서 다음 음으로의 전조시간에 음정에 발생하여 앞의 세그멘트와 뒤의 세그멘트상의 음정정보에 의한 수정을 행하는 변동때문에 가수동에 의한 음정과 다른 음정으로 식별된 세그멘트의 피치수정을 통해 음정에 대한 보다 정밀한 정보를 획득하는 능력에 의해 최종 악보데이타의 정밀도를 더욱 개선할 수 있는 자동채보방식 및 장치를 제공하는 것이다.
본 발명의 또다른 목적은 음향신호의 조를 정밀하게 결정하여 최종 악보데이타의 정밀도를 더욱 개선할 수 있는 자동채보방식 및 장치를 제공하는 것이다.
본 발명의 또다른 목적은 음향신호의 음정축이 절대음정축으로부터의 편차량을 검출할 수 있고 그 편차에 비례하여 피치정보수정을 행할 수 있고 다음 처리에서 악보데이타를 보다 잘 작성할 수 있도록 설계된 자동채보방식 및 장치를 제공하는 것이다.
본 발명의 또다른 목적은 보다 높은 샘플링 주파수를 사용하지 않고 높은 정밀도로 음향신호의 피치를 추출할 수 있는 피치추출방법 및 피치추출장치를 제공하는 것이다.
이러한 목적들을 달성하기 위하여 본 발명에 의한 자동채보방식은 음향신호로부터 피치정보와 파워정보를 추출하는 것과 절대음정축과 전기한 음향신호의 음정축과의 편차량에 비례하여 피치정보를 수정하는 것과, 파워정보의 변화에 기초하여 음향신호를 단일음의 세그멘트(single-sound segment)로 분할 하고 수정된 피치정보에 기초하여 음향신호를 단일음의 세그멘트로 분할하는 것과 전기한 양쪽 세그멘트분할로부터 획득된 세그멘트 정보에 기초하여 음향신호를 보다 세밀하게 분할하는 것과 피치정보에 대한 절대음정축을 따라 각 세그멘트내에서 음향신호의 음정을 식별하는 것과 연속적인 세그멘트의 식별된 음정이 동일한지 아닌지에 기초하여 음향신호를 다시 단일음의 세그멘트로 분할하는 것과 추출된 피치정보에 기초하여 음향신호의 조를 결정하는 것과 피치정보에 기초하여 결정된 조의 음계상에서 전기한 음정을 수정하는 것과 세그멘트정보에 기초하여 음향신호의 박자와 템포를 결정하는 것과 최종적으로 결정된 음정, 음의 길이, 조, 박자 및 템포등의 정보로부터 악보데이타를 작성하는 것으로 구성되어 있다.
더욱이 상기한 목적들을 달성하기 위하여 본 발명에 의한 자동채보방식에는 입력음향신호로부터 피치정보와 파워정보를 추출하는 장치와, 절대음정축에 대한 음향신호음정의 편차량에 따라서 피치정보를 수정하는 장치와 수정된 피치정보에 기초하여 음향신호를 단일음의 세그멘트로 분할하는 장치와 파워정보의 변화에 기초하여 음향신호를 단일음의 세그멘트로 분할하는 장치와 사용가능하게된 양쪽 세그멘트정보에 기초하여 음향신호를 세그멘트로 더욱 분할하는 장치와 절대음정축을 따라 각 세그멘트내에서 음향신호의 음정을 식별하는 장치와 연속적인 세그멘트의 식별된 음정이 동일한지 아닌지에 기초하여 음향신호를 다시 단일음의 세그멘트로 분할하는 장치와 추출된 피치정보에 기초하여 음향신호의 조를 결정하는 장치와 피치정보에 기초하여 결정된 조에서 전기한 음정을 수정하는 장치와 세그멘트정보에 기초하여 음향신호의 박자와 템포를 결정하는 장치와 최종적으로 그와 같이 결정된 음정, 음의 길이, 조 박자 및 템포등의 정보로부터 악보데이타를 작성하는 장치등이 구비되어 있다.
또 상기한 목적을 달성하기 위하여 본 발명에 의한 자동채보방식은 음향신호를 입력하는 장치와 입력된 음향신호를 증폭하는 장치와 증폭된 아날로그신호를 디지탈신호로 변환하는 장치와 디지탈음향신호의 자기상관분석을 수행하여 피치정보를 추출하고 제곱합(square sum)을 구하는 연산을 수행하여 파워정보를 추출하는 장치와, 전기한 채보순서를 메모리(memory)내에 보존하는 기억장치와, 기억장치의 메모리내에 보존된 채보순서를 실행하는 제어장치와, 음향신호입력장치, 증폭장치, 아날로그/디지탈변환장치, 하드웨어적으로 구성되어 피치정보와 파워정보를 추출하는 장치등으로 처리에 의해 획득된 악보데이타의 필요한 출력을 발생하는 장치로 구성되어 있는 것을 특징으로 한다.
본 발명은 본 발명에 의한 방식이 가창, 허밍음성 및 악기음과 같은 음향신호로부터 피치정보와 파워정보를 정밀하게 추출할 수 있고 그 정보에 기초하여 음향신호를 단일음의 세그멘트로 정밀하게 분리할 수 있어, 음정과 조를 정밀도 높게 식별하고, 이러한 성능이 입력음향신호의 처리에 있어서 음향신호내의 소음성분과 파워변동의 영향을 효율적으로 감소시키는 것이 입증되므로, 최종악보데이타를 작성함에 있어서 정밀도의 대단히 중요한 개선에 의해 실제사용목적에 충분한 성능을 보유하는 자동채보방식의 제공을 가능하게 한다.
이하, 첨부도면을 의거하여 본 발명에 대한 여러가지 실시예를 상세히 설명한다.
제2도는 본 발명에 의한 제1실시예가 적용된 자동채보방식의 구조를 표시하는 블록도이며 제3도는 이 시스템의 처리순서를 표시하는 순서도이다.
제2도에서 중앙처리장치(CPU)(1)는 전체시스템에 대한 총괄제어를 수행하며 제3도에 표시된바와 같이 버스(2)를 통해 CPU에 연결되어 있는 주기억장치(3)내에 저장되어 있는 악보처리프로그램을 실행하며, 이 버스를 통해 입력장치로서의 키보오드(4), 출력장치로서의 표시장치(5), 작업메모리(working memory)로 사용되는 보조기억장치(6) 및 아날로그/디지탈변환기(7)가 CPU(1)와에 주저장장치(3)에 부가하여 연결되어 있다. 아날로그/디지탈변환기(7)에는 예를 들어 음향신호입력장치(8)가 연결되는데 이것은 마이크론으로 이루어져 있다.
이 음향신호입력장치(8)는 사용자에 의한 가창중에서 음향신호를 포착하여 이 신호를 전기신호로 변화하고, 그 전기신호를 아날로그/디지탈변환기(7)에 출력한다.
CPU(1)는 키보오드 입력장치(4)에서 입력된 명령을 수신하여 채보처리를 시작하며, 주기억장치(3)에 저장된 프로그램을 실행하며, 보조기억장치(6)내의 아날로그/디지탈변환기(7)에 의하여 음향신호를 디지탈신호로 변환하여 일시적으로 저장하고 그후 상기한 프로그램을 실행함으로써 이들 음향신호를 악보데이타로 변환하여, 필요로하는 악보데이타가 출력된다.
다음에 CPU(1)가 그 프로그램을 실행하기 위해 음향신호를 취한후에 채보처리가 제3도에 함수레벨의 용어로 표시된 순서도에 관련하여 상세하게 설명된다.
먼저, CPU(1)는 음향신호의 자기상관분석을 통하여 각 분석사이클용 음향신호의 피치정보를 추출하고, 또한 제곱합을 구하기 위해 음향신호를 처리하여 각 분석사이클용 파워정보를 추출한 다음, 소음제거와 보간연산(interpolation operation)과 같은 후속처리를 수행한다(스텝 SP1-SP2).
그후, CPU(1)는 피치정보에 대하여 음정축주위의 분포상태에 기초하여 절대음정축에 대한 음향신호의 음정축의 편차량을 계산한 다음 음정축의 편차량에 비례하여 획득된 피치정보를 변이시키는 것으로 구성된 튜닝처리를 수행한다(스텝 SP3).
즉 가수 또는 악기에 의해 발생된 음향신호에 대해 기록된 음정축과 절대음정축과의 사이의 차이를 작게하는 방법으로 CPU는 피치정보를 수정한다.
그 다음 CPU(1)는 획득된 피치정보가 하나의 음정을 지시하는 것으로 간주될수 있는 피치정보의 연속지속기간으로 음향신호를 단일음의 세그멘트로 분할하는 세그멘테이션처리를 실행하고, 획득된 파워정보의 변화에 기초하여 다시 세그멘테이션처리를 수행한다(스텝 SP4와 SP5). 세그멘트정보의 세트에 기초하여, CPU(1) 2분음표와 8분음표등과 같은 박자의 길이에 각각 상응하는 표준길이(standard lengh)를 계산하여 이와같은 표준길이를 기초로하여 더욱 상세하게 세그멘테이션를 실행한다(스텝 SP6).
그리고 CPU(1)는 주어진 세그멘트의 음정과 그 세그멘테이션에 의해 얻어진 피치정보를 토대로하여 판단되어진것과 관련된 피치정보가 가장 가까운것이라고 추정되는 절대음정축에서의 음정을 식별하고, 연속하는 식별된 세그멘트의 음정이 동일한지의 여부를 토대로 하여 다시 세그멘테이션처리를 실행한다(스텝 SP7과 SP8).
그후 CPU(1)는 튜닝(tuning)후에 음정축주위의 분류된 전체 피치정보를 계산하여 얻어진 음정발생 주파수와, 조에 상응하도록 결정된 어떤소정의 무게계수(weighing coefficient)의 곱의합(product sum)을 구하고, 이들 곱의 합의 최대정보를 토대로하여 입력음향신호내의(음악에 대해), 예를들면 C-장조나 A-단조를 결정한 다음 결정된 조에대해 음계상의 소정된 음정에 관한 피치정보에 관하여 더욱 상세하게 동일음정을 재검토함으로써 음정을 확인하고 수정한다.
그런다음 CPU(1)는 최종적으로 결정된 음정이 연속해서 동일한 세그멘트를 포함하고 있는지의 여부와 파워에 어떤변화가 생겼는지의 여부를 기초로하여 세그멘테이션결과의 재검토를 실행하여 최종 세그멘테이션처리를 수행한다(스텝 SP11).
음정과 세그멘트가 이러한 방법으로 결정된 경우 CPU(1)는 첫번째 비이트(beat)로 부터 시작되는 소절(measure)한절의 마지막 톤이 다음소절에 연장되지 않는 것, 각 소절의 분할이 있는 것등과 같은 입장에서 소절을 추출하고 이 박자정보와 세그멘테이션정보를 토대로하고 박자를 결정하며 이들 결정된 박자정보와 소절의 길이를 토대로하여 템포를 결정한다(스텝 SP12와 SP13).
그런다음 CPU(1)는 결저오딘 음정, 음길이, 박자, 템포정보를 정리하여 최종적으로 악보를 적상한다 (스텝 SP14).
다음에는 제5도와 제4도의 순서도를 참고로하여 작동자동채보방식이나 이와 유사한 것에 이용할 수 있는 음향신호상의 파워정보를 토대로한 세그멘테이션처리(제3도의 스텝 SP5)에 대하여 상세한 설명을 한다. 이러한 관점에서 보아 제4도는 함수레벨에서의 처리를 도시한 순서도이고, 제5도는 제4도에 도시한 것을 한층 상세하게 도시한 순서도임을 주목해주기 바란다.
더욱이 음향신호상의 파워정보를 위하여 음향신호는 분석사이클내에 있는 샘플링포인트(sampling poing)에 대해 제곱을 하여, 이 제곱의 전체합은 분석사이클상의 파워정보를 나타내는데 이용되어 있다. CPU(1)는 각 분석점에서의 파워정보와 음향신호를 한계값(threshold)보다 큰 부분과 한계값보다 작은 부분사이에서 분리하는 한계값을 비교하여 한계값보다 큰부분을 유효세그멘트로 취급하고 한계값보다 작은 부분을 무효세그멘트로 취급하며 유효세그멘트의 시작부분에 유효세그멘트개시표시를 하고 무효세그멘트의 시작부분에 무효세그멘트개시표시를 한다(스텝 SP15와 SP16).
이 형태는 파워정보가 작음 범위에서 음향신호의 음정이 나타나는 안정성의 결여에 의하여 음정이 동일하지 않게되는 것이 종종 발생한다는 점에서 그리고 이 형태는 나머지부분을 검사하는데 그 목적이 있다는 사실로 보아 이 시스템에 삽입되어 왔다.
그런다음 CPU(1)는 상기한 분할에 의해 유도된 유효세그멘트내에서의 파워정보의 변화에 대한 함수를 구하도록 산술연산을 수행하며 이 변화함수를 토대로하여 파워정보의 입상변화점을 추출해내고 그런다음 이와 같이 결정된 변화점에서 세그멘트의 개시표시를 하면서, 추출된 입상변화점에서 유효세그멘트를 더 작은 부분으로 분할한다(스텝 SP17과 SP18).
이 형태는 상기한 처리만으로도 파워가 계속 어느정도 높은 수준을 유지하고 있는동안 한음에서 다음음으로 변화하므로 두개 또는 그 이상의 음을 포함하고 있는 세그멘트를 발생하기 쉽기 때문에 도입되어 왔으므로 이와 같은 세그멘트는 다음 음이 시작할때 파워의 증가를 나타내는 주목할만한 잇점을 취하면서 분할되어질 것이다.
그런다음 CPU(1)는 하나의 세그멘트를 형성하기 위하여 바로앞의 세그멘트에 대해 소정의 길이보다 짧은 길이로 어느 세그멘트가 연결되면서 그것이 유효세그멘트인지 무효세그멘트인지의 여부와는 관계없이 각 세그멘트의 길이를 측정한다(스텝 SP19 그리고 SP20).
이 형태로 신호가 때로는 소음이나 그와 유사한 것 때문에 미세한 부분 세그멘트분할되어져서 이와 같은 부분세그멘트들이 서로 다른 세그멘트와 연결된다는 점에서 채택되어 왔다.
또한 이 형태는 상기한 바와 같이 입상 변화점을 토대로하여 세그멘트의 분할에 의해 생긴 다수의 세그멘트를 연결하기 위해 이용되어진다.
다음 이 과정은 제5도의 순서도를 참고로하여 더욱 상세하게 설명하겠다.
CPU(1)는 먼저 분석점에 대한 파라미터(t)를 0으로 클러이한다음, 처리될 분석점데이타가 완료되지 않았음을 확인하면서 분석점에 있는 음향신호의 파워정보(파워(t))가 한계값파워보다 작은지의 요부를 판단한다(스텝 SP20∼SP23).
파워정보(파워(t))가 한계값(P)보다 작은 경우에는 CPU(1)가 분석점의 파라미터(t)를 다시 증가시키고, (스텝 SP22)으로 되돌아가서 다음 분석점에 있는 파워정보를 판단한다(스텝 SP24).
한편 CPU(1)은 (스텝 SP23)에서 파워정보(파워(t))의 값이 한계치(P)보다 높은 것을 발견했을 경우 분석점에서 유효세그멘트의 개시점을 나타내기위한 표시를 하며 다음 스텝(SP26)이 시작되는 후속스텝의 처리로 이동한다(스텝 SP25).
이때에 CPU(1)는 처리가 모든 분석점상에서 완료되지 않았음을 확인하고 파워정보의 값이 한계치(P)보다 작은지의 여부를 판단한 다음 파워정보(파워(t))의 값이 한계치파워이상이면 분석점의 파라미터(t)를 증강시키면서 (스텝 SP26)로 되돌아간다(스텝 SP26∼SP28).
한편 파워정보(파워(t))의 값이 한계값(P)보다 작은 경우 CPU(1)는 분석점에 있는 무효세그멘트의 개시점을 나타내기 위해 표시를 한다음 상기한 스텝(SP22)로 되돌아간다(스텝 SP29). CPU(1)는 CPU(1)가 스텝(SP22) 또는 스텝(SP24)에 있는 모든 분석점에서의 처리종료를 검사하고 모든 분석점에서 파워정보(파워(t))와 한계값(P)의 비교를 통해 상기한 한계값(P)보다 높은 유효세그멘트와 한계값(P)보다 낮은 무효세그멘트간의 세그멘트분할을 완성한 다음, 스텝(30)으로 시작되는 후속스텝의 처리로 이동때까지 상기한 처리를 수행한다. 이것의 후속처리에 있어서 CPU(1)는 분석점의 파라미터(t)가 0이 되도록 클리어하고 초기분석점으로부터 후속처리를 시작한다(스텝 SP30).
CPU(1)는 분석점이 그 처리에서 요구하는 분석점 데이타를 확인한 다음 유효세그멘트의 개시점으로서 표시되었는지를 판단한다(스텝 SP31∼SP32).
분석점이 유효세그멘트의 개시점에 표시되지 않았을 경우 CPU(1)는 분석점을 위한 파라미터(t)를 증강하고 상기한 스텝(SP29)으로 되돌아간다(스텝 SP30).
한편 CPU(1)가 유효세그멘트가 개시되는 어떤 분석점을 검사하였을때에 CPU(1)는 다시 처리를 위해 남아있는 다른 분석점이 있는지를 확인하고 나아가 무효세그멘트가 시작되는 곳에 분석점이 위치하는지를 판단한다.(스텝 SP34∼SP35).
분석점이 무효세그멘트가 시작되는 곳에 있지않을 경우 이는 분석점이 유효세그멘트에 있음을 의미하여 CPU(1)는 하기의 식(1)
d(t)=[파워(t+k)-파워(t)]
[파워(t+k)-파워(t)]…………….(1)
에 따라 산술연산을 수행함으로써 파워정보, 파워(t)의 변화의 함수(이하 이것을 입상추출함수라 한다. 왜냐하면 이것은 후속처리의 파워정보내에서 입상추출에 이용되기 때문이다)를 구한다(스텝 SP36).
여기에서 (k)는 파워변동을 포착하기 위한 적당한 자연수를 나타낸다. 그 다음 CPU(1)는 이렇게 얻어진 입상추출함수의 값이 한계치(d)보다 작은지를 판단하고 작을 경우에는 CPU(1)는 분석점의 파라미터(t)를 증강하고 스텝(SP34)로 되돌아간다(스텝 SP37∼SP38).
한편 입상추출함수 d(t)가 한계치(d)를 초과하는 것으로 나타날대 CPU(1)는 분석점쪽의 새로운 유효세그멘트의 개시점을 나타내기 위해 표시를 한다(스텝 SP39).
이와 같이 유효세그멘트는 더 작은 세그멘트로 분할된다. 그런다음 CPU(1)는 처리가 모든 분석점상에서 완료되지 않았음을 확인하고 무효세그멘트의 개시점을 나타내는 표시가 처리가 수행되는 곳에 있는 분석점에 있는지의 여부를 판단하고 어떤 표시가 있을 경우 CPU는 상기한 스텝(SP31)으로 되돌아와서 다음 유효세그멘트의 개시점을 위해 검사처리를 수행한다 (스텝 SP40∼SP41).
한편 지점이 무효세그멘트의 개시를 위한 분석점이 아닐때 CPU(1)는 파워정보를 토대로한 식(I)에 의한 입상추출함수 d(t)를 구하고 입상추출함수 d(t)가 한계값(d)보다 작은지의 여부를 판단한다(스텝 SP42∼SP43).
함수가 작으면 CPU(1)는 전기한 스텝(SP34)으로 되돌아가며 파워정보의 입상변화점의 추출을 위한 처리를 진행한다. 한편 만약 분석점에서의 입상추출함수 d(t)가 스텝(SP43)에서 한계값보다 계속 높을 경우 CPU(1)는 분석점의 파라미터(t)를 증강하고 다음 분석스템에서 입상추출함수d(t)가 한계값(d)보다 작게되는지를 판단하기 위하여 스텝(SP40)으로 되돌아간다. CPU(1)가 처리가 모든 분석점에서 완료되는 상기한 스텝(SP31)(SP34) 또는 (SP40)을 되풀이함으로써 검사할 때 CPU(1)는 스텝(SP45)와 그 후속스텝에서 세그멘트길이를 토대로하여 세그멘트를 검토하기 위한 처리로 진행한다.
이 처리에 있어서 CPU(1)는 분석점의 파라미터(t)가 0이되게 하고 분석점이 완료되지 않았는지를 확인한 다음 유효세그멘트나 무효세그멘트가 있는지에 관계없이 특정분석점상에 세그멘트개시점의 표시가 있는지를 판단한다(스텝 SP45∼SP47).
지점이 세그멘트개시점이 아닐경우 CPU(1)는 분석점의 파라미터(t)를 증강하고 다음 분석점에 있는 데이타쪽으로 옮기기 위하여 스텝(SP46)으로 되돌아간다(스텝 SP48).
CPU(1)가 세그멘트의 어느 개시점을 검출하는 경우 CPU(1)는 이 개시점으로부터 개시되는 세그멘트의 길이를 계산하기 위하여 초기값 1에 세그멘트길이 파라미터(L)를 설정한다(스텝 SP49).
다음 CPU(1)는 분석점 파라미터(t)를 증강하고 분석점데이타가 아직 완료되지 않았음을 확인한 다음 유효세그멘트인지 무효세그멘트인지와는 무관하게 세그멘트개시표시가 어느 특정분석점에 있는지를 판단한다(스텝 SP50∼SP52).
만약 CPU(1)가 분석점이 세그멘트개시점이 아니라는 결과를 알아내게 되면 CPU(1)는 세그멘트길이 파라미터(L)를 증강시키고, 또한 분석점 파라미터(t)를 증강시킨다음 상기한 스텝(SP51)으로 되돌아온다(스텝 SP53∼SP54).
스텝(SP51∼SP54)으로 이루어진 처리를 되풀이함으로서 스텝(SP52)에서 긍정적인 결과를 얻으면서 세그멘트개시점표시가 있는 분석점으로 오게된다. 이때에 구해진 세그멘트길이 파라미터는 처리를 위해 표시된 분석점과 예를들어 세그멘트길이를 위한 처리용으로 즉시 이전에 표시된 분석점간의 거리에 대응한다.
만약 스텝(SP52)에서 긍정적인 결과를 얻었다면 CPU(1)는 파라미터(L)가 한계값(m)보다 작은지를 판단하여 한계값(m)보다 높을 때 CPU(1)는 세그멘트개시점표시를 삭제하지 않은채 상기한 스텝(SP46)으로 되돌아가며 한계치(m)보다 작을 때에는 CPU(1)는 세그멘트개시점을 표시하기 위하여 앞쪽에 있는 표시를 제거하므로써 이전의 세그멘트에 이 세그멘트가 연결되도록 하며 그런다음 상기한 스텝(SP46)으로 되돌아간다(스텝 SP55와 SP56).
더욱이 CPU(1)가 스텝(SP55와 SP56)으로부터 스텝(SP46)으로 되돌아오는 경우 CPU(1)는 분석점데이타가 완료되지 않았다면 스텝(SP47)에서 긍정적인 결과를 즉시 얻으며, 스텝(SP49)과 함께 시작되는 후속스텝의 처리로 진행할 것이며, 방금 구한 표시다음의 다른 표시에 대한 탐색작업을 위하여 이동하여 CPU는 상기한 방법과 같은 방법으로써 다음 표시를 찾아내고 세그멘트길이를 재검토하는 것을 수행할 것이다.
이와 같은 처리작업을 반복함으로써 CPU(1)는 세그멘트길이의 모든 것에 대한 재검토를 완료한 것이며 스텝(SP46)에서 긍정적인 결과를 얻을 때 CPU(1)는 처리프로그램을 완료한 것이다.
제6도는 전기한 방법으로 분할하는 다른 실시예를 도시한 것이다. 이 실시예에서의 경우 스텝(SP29)까지 이르는 처리의 반복은 파워정보, 파워(t)를 토대로하여 유효세그멘트(S1∼S8)와 무효세그멘트(S11∼S18)간의 구분을 하게 될 것이다. 그런다음 스텝(SP44)에 이르는 처리의 반복으로 유효세그멘트(S4)는 입상추출함수d(t)를 토대로하여 파워의 입상변화점에서 더작은 세그멘트(S41)(S42)로 분할 될 것이다. 또한 스텝(SP45)과 그 후속스텝에서의 처리는 이 다음에 수행될 것이며 세그멘트길이를 토대로하여 재검토가 이루어질 것이다. 이 실시예에 있어서 어떤 특정한 세그멘트의 연결이 일어나지는 않는다. 왜냐하면 소정의 길이보다 더 작은 세그멘트는 없기 때문이다. 그러므로 상기한 실시예와 함께 본 시스템은 파워정보가 한계값 이상인 유효세그멘트와 한계값보다 낮은 무효세그멘트의 음향신호를 분리하는 것과 유효세그멘트가 파워정보의 입상변화점에 의해 더 작은 세그멘트로 분할되는 것 그리고 이렇게 이루어진 세그멘트를 세그멘트길이를 토대로하여 재검토하기 때문에 소음이나 파워의 변동에 의해 분완전한 세그멘테이션이 생겨나지 않는 고정밀 세그멘테이션처리를 수행할 수 있다.
다시 말하면 이 처리는 음정의 식별과 같은 후속처리 작은 음성파워로서 불안정한 구간의 사용을 제거할 수 있다. 왜냐하면 한계치를 초과하는 정보를 포함하고 있는 부분은 유효세그멘트로 간주되기 때문이다. 더욱이 시스템이 파워입상변화점을 추출함으로서 더 작은 부분으로 세그멘트를 분할하도록 고안되어 있으므로 파워가 상기 기술한 레벨을 유지하는 동안 다음의 음으로 변환되는 경우에 조차도 분할을 잘 수행하는 시스템을 보유할 수 있게 하였다.
또한 이 시스템은 세그멘트길이를 토대로하여 재검토하도록 설계되어 있기 때문에 한 음이나 나머지 구간을 다수의 세그멘트로 나누지 못하게 할 수 있다.
상기에 주어진 실시예에 있어서 또한 상기한 더 분할된 유효세그멘트를 포함하는 상기한 유효세그멘트의 길이와 상기한 무효세그멘트의 길이가 추출되는데 이는 반드시 필요한 것은 아니다. 이러한 경우에 있어서 개시표시와 종료표시는 제7도에 주어진 처리순서를 나타내고 있는 블록도에 도시되어 있는 바와 같이 스텝(SP66)에 있는 한계값보다 높은 각 부분의 시작과 종료에 표시된다. 이것은 제8도의 순서도에 참고로 나타내어져 있으며 이는 파워정보(파워(t))의 값이 한계값보다 작게되는 경우 관계된 분석점에서의 세그멘트종료점에 표시를 한 다음 CPU(1)가 상기한 스텝(SP22)에 되돌아가는 것을 나타낸 것으로 제7도에 도시된 것을 더욱 상세하게 표현한 것이다.
이 실시예와 함께 시스템은 상기한 과정을 되풀이함으로써 스텝(SP31)(SP34) 또는 (SP40)에 있는 모든 분석점에 대하여 처리의 완료를 검출하면 프로그램을 종료한다. 이때 처리된 세그멘트는 제6도에 도시된 것과 동일하다. 더욱이 세그멘테이션처리는 제9도의 순서도에 도시한 순서에 의해 수행될 수 있다. 이경우 시작부터 스텝(SP28)에까지의 순서는 제8도에 도시된 동일한 단계와 같다.
CPU(1)는 제8도에 도시되어 있는 바와 같은 방법으로 스텝(SP26∼SP28)에서의 처리를 반복함으로써 한계값(P)보다 작은 파워정보(파워(t))를 보유하고 있는 분석점을 곧장 검사하고 스텝(SP27)에서 긍정직인 결과를 얻을 것이다. 이때에 CPU(1)는 이 분석점에 있는 세그멘트종료점에 표시를 한다음 상기한 세그멘트의 개시표시정보와 세그멘트의 종료표시정보를 토대로하여 세그멘트의 길이(L)를 검사하고 길이(L)가 한계값(m)보다 작은가에 대해 판단한다(스텝 SP68∼SP70). 이러한 판단스텝은 유효세그멘트로서의 세그멘트가 너무 작지않게 되도록 설계된 것이며 한계값(m)은 음표에 따라 결정된다.
CPU(1)는 만약 스텝(SP70)에서 긍정적인 결과를 얻었다면 세그멘트의 시작과 종료표시를 제거한 다음 파라미터(t)를 증강하고 상기한 스텝(SP22)로 되돌아간다. 다시말해서 세그멘트의 길이가 충분하기 때문에 부정적인 결과를 얻었다면 이것은 이들 표시를 제거하지 않은체 곧장 파라미터(t)를 증강하고 상기한 스텝(SP21)으로 되돌아온다(스텝 SP71∼SP72).
이 처리를 반복하여 CPU(1)는 모든 파워정보에 관한 처리를 종료하고 스텝(SP23) 또는 (SP26)에서 얻어진 긍정적인 결과를 가지고 특정 프로그램을 종료한다.
제10도는 파워정보의 시간적 변화와 이 시간적 변화에 상응하는 세그멘테이션결과에 대한 예를 나타낸 것이다. 이 실시예의 경우에서 세그멘트(S1)(S2)…(Sn)은 제9도에 주어진 처리의 실시예 의한 얻어진 것이다. 더욱이 시간(t1∼t2)의 표본점구간중에서 파워정보는 한계값(P)을 초과하지만, 구간은 짧고 그 길이는 한계값(m)보다 짧아서 세그멘트로서 추출되지 않는다.
또 아래에 제시된 세그멘트처리순서가 적용될 수 있다.
이 순서는 제11도의 순서도를 참고로하여 설명하였다.
CPU(1)는 먼저 분석점 파라미터(t)를 0으로 하고 처리된 데이타가 완료되지 않았음을 확인하면서 그 분석점(t)가 입상추출함수d(t)의 파워정보(파워(t))를 토대로하여 분석점에 관한 산술연산을 수행한다(스텝 SP80과 SP81).
여기에서 (k)는 파워정보내에서의 변화를 포착하기에 적합한 적정시간차를 설정되어야 한다. 그런다음 CPU(1)는 분석점d(t)에서의 입상추출함수d(t)가 한계값(d) 이상인지의 여부를 판단하며 만약 함수가 한계값(d)보다 작기 때문에 부정적인 결과를 얻는다면 이는 파라미터(t)를 증강하고 상기한 스텝(SP81)으로 되돌아간다(스텝 SP83∼SP84).
이 처리순서를 반복하여 CPU(1)는 그 입상추출함수d(t)가 한계값(d)보다 높은 레벨로 변화한후 곧장 분석치를 알아내어 스텝(SP83)에서 긍정적인 결과를 얻어낸다. 이때에 CPU(1)는 그 분석점쪽으로의 세그멘트개시표시를 한다음 처리될 분석점상의 데이타가 아직 종료되지 않았음을 확인하고 그런다음 CPU(1)는 그 분석점상의 파워정보(파워(t))와 분석점(t+k)의 파워정보(파워(t+k))를 토대로하여 그 분석점에 관해 다시 파워정보의 입상추출함수d(t)를 구하기 위하여 산술연산을 수행하며 이는 k-세그멘트에 의해 그 분할점에 선행한다(스텝 SP85∼SP87). 그런다음 CPU(1)는 그 분할점에서 입상추출함수d(t)가 한계값(d)보다 작은지의 여부를 판단하여 만약 함수가 한계값(d)보다 높기 때문에 부정적인 결과를 얻었다면 그것은 파라미터(t)를 증강하고 상기한 스텝(SP86)(SP88∼SP89)으로 되돌아간다.
이와는 달리 만약 함수가 한계값(d)보다 작기 때문에 CPU(1)가 긍정적인 결과를 얻었다면 이는 스텝(SP81)으로 되돌아가며 입상추출함수d(t)의 변화가 한계값(d)의 레벨보다 높게 일어나는 변화점을 추출하기 위한 처리작업을 계속한다.
이러한 방법으로 처리순서를 반복하여 CPU(1)는 파워정보내의 모든 입상변화점에 세그멘트시작표시를 하며, 스텝(SP81) 또는 (SP86)에서 긍정적인 결과를 얻어 이 특정프로그램을 종료하면서 모든 파워정보의 처리를 곧 종료하게 될 것이다.
더욱이, 시스템은 예를들어 가수가 음의 피치를 변화시킬 때 목소리의 파워를 점차 감소시킬 때 새로운 음의 시작지점에서 최고레벨의 파워로 올린다는 사실로보아 이 방법으로 파워정보의 입상추출을 하여 세그멘테이션처리를 실시할 수 있도록 설계되었다.
이는 또한 악기음의 발생후에 음이 감소되는 것과 더불어 음의 시작이 발생한다는 사실을 고려하고 있음을 반영하는 것이다.
제12도는 파워정보(파워(t))의 시간적 변화와 입상추출함수d(t)의 시간적변화의 한 실시예를 나타내고 있으며 이 실시예의 경우 제11도에 나타낸 처리작업의 실행은 신호가 세그멘트(S1)(S2)로 분할되는 결과를 가져온다.
또 제13,14도에 도시된 바와 같이 세그멘테이션 재검토처리가 수행될 수도 있다.
파워정보를 토대로하여 세그멘테이션처리의 또다른 배열을 아래에 기술한 바와 같이 적용되어도 좋다.
제13도는 함수레벨에서 이 처리를 도시한 순서도이며 제14도는 제13도에 도시한 것을 더욱 상세하게 기술한 순서도이다.
먼저 CPU(1)는 각 분석점에 관하여 파워정보의 변화함수를 구하기 위해 산술연산을 수행하며 그 함수를 토대로하여 파워정보내의 입상추출을 하여 입상분석점에서 세그멘트개시점을 표시한다(스텝 SP90∼SP91).
더구나 이후에 발생하는 파워의 점차적인 감소와 함께 그 음정이 변화할때 음향신호가 아주 자연스러워서 음향신호가 세음의 시작점에서 최대파워를 갖게 될 것이라는 사실의 면에서보아 파워정보의 입상추출에 의해 세그멘테이션이 수행되도록 이 시스템이 설계되어 있다. 그런다음 CPU(1)는 세그멘트개시점으로부터 다음 세그멘트개시점 즉, 세그멘트길이를 측정하며 그 부분을 앞뒤의 다른 세그멘트에 연결시키면서 어떤 불충분한 세그멘트길이를 보유하고 있는 세그멘트를 제거한다(스텝 SP92∼SP93).
시스템은 그 길이가 너무 짧은 경우의 세그멘트를 처리하지 않게 설계되었다. 왜냐하면 음향신호는 그들의 파워정보안에 때때로 변동을 가지며 그안에(침입한) 소음을 보유하기 때문이며 또한 가수가 단일음을 발성했을 때 조차 성대의 음의 파워변화가 때때로 일어나는 연속된 다수의 피크(peak)가 발생하는 것을 막아줄 필요가 있기 때문이다. 그러므로 이런 시스템은 파워정보의 입상에 대한 정보와, 세그멘트길이를 고려하는 것을 토대로하여 세그멘테이션처리의 실행을 할 수 있다.
다음 제14도를 토대로하여 더욱 상세하게 이 처리를 기술하고자 한다.
제14도에 있어서 스텝(SP80)부터 스텝(SP89)까지의 스텝은 제11도에서 주어진 스텝과 동일하다. 그리고 그 설명은 여기에서는 생략하겠다.
즉 스텝(SP110)과 그 후속스텝은 세그멘트의 재검토를 취하게 된다.
세그멘트재검토 처리를 위해 CPU(1)는 먼저 파라미터(t)가 0이 되게하고 처리될 분석점데이타가 아직 완료되지 않았는지를 확인하고 세그멘트개시를 표시하기 위한 어떤 표시가 분석점에 있는지의 여부를 판단한다(스텝 SP110∼SP112).
CPU(1)가 어떤 표시도 있지 않다는 부정적인 결과를 얻었을 때 이는 파라미터(t)를 증강하고 상기한 스텝(SP111)으로 되돌아간다(스텝 SP113).
이 처리를 반복하여, CPU(1)는 그 위에있는 표시와 하A게 분석점을 발견하여, 스텝(SP112)에서 긍정적인 결과를 얻게된다. 이경우 CPU(1)는 길이파라미터(L)로서 1을 선정한 다음 파라미터(t)를 증강하고 처리될 분석점데이타가 완료되지 않았음을 확인한 뒤 세그멘트개시표시가 분석점(t)에 있는지의 여부를 판단한다(스텝 SP114∼SP117).
CPU(1)가 처리될 분석점에 어떠한 표시도 놓여있지 않다는 부정적인 결과를 얻을 경우, CPU(1)는 길이 파라미터(L)와 분석점파라미터(t) 모두를 증강하고, 상기한 스텝(SP116)으로 되돌아온다(스텝 SP118∼SP119).
이 처리를 반복하여 CPU(1)는 그다음의 세그멘트개시표시가 위치하고 있는 분석점을 발견할 것이며 스텝(SP117)에서 긍정적인 결과를 얻을 것이다. 이때 길이파라미터(L)상에 표시가 있고 처리대상인 분석점과 곧장 그것에 선행하는 표시된 분석점간의 거리, 즉 세그멘트길이에 상응한다.
긍정적인 결과가 스텝(SP117)에서 얻어질 경우 CPU(1)는 이 파라미터(L)(세그멘트길이)가 한계값(m)보다 작은지의 여부를 판단하여 파라미터가 한계값(m)보다 클 경우 CPU(1)는 세그멘트개시표시를 제거하지 않은채 상기한 스텝(SP111)로 되돌아간다. 그러나 만약 파라미터가 한계값(m)보다 작을 경우 CPU(1)는 앞쪽에 있는 세그멘트개시점표시를 제거한다. 즉 앞쪽에 있는 세그멘트를 이 세그멘트에 연결한다. 그리고 전기한 스텝(SP111)으로 되돌아간다(스텝 SP120∼SP121).
제15도는 파워정보(파워(t))의 시간적 변화와 입상추출함수d(t)의 시간적변화에 대한 한가지의 실시예를 도시한 것으로 이 실시예에 있어서 제14도에 도시한 바와 같이 음향신호는 스텝(SP89)까지의 처리에 따라 세그멘트(S1)(S2)…(N)으로 분할된다. 그러나 스텝(SP110)으로부터의 처리를 실시함으로써 짧은 길이의 이들 세그멘트는 제외되어 세그멘트(S3)와 세그멘트(S4)가 결합하여 단일세그멘트(S34)가 되는 결과를 낳게 된다. 상기한 실시예에 있어서 식(I)로 표시하고 있는 함수가 입상추출함수로 이용되고 있다.
예를 들면 고정분모를 가진 미분함수가 이용되어도 좋다. 또 상기한 실시예에 있어서 음향신호의 제곱합은 파워정보로 이용되지만 다른 파라미터를 이용해도 좋다.
예들 들면 제곱합의 제곱근(square root)을 이용해도 좋다. 또 상기한 실시예에 있어서 불충분한 길이내의 세그멘트는 직접 선행하는 세그멘트에 연결된다는 것을 나타내고 있으나 이러한 짧은 세그멘트는 뒤의 세그멘트와 잘 연결이 된다.
이와 같은 짧은 세그멘트는 만약 곧장 선행되는 세그멘트가 나머지부분의 것이 아니라면 곧장 선행하는 세그멘트에 연결되며 만약 곧장 선행하는 세그멘트가 나머지 부분이라면 곧장 뒤따라 나오는 세그멘트에 연결되어도 좋다.
피치정보를 토대로한 본 발명에 따른 자동채보방식의 세그멘테이션처리를 제16도와 제17도에 표시된 순서도를 참고로하여 상세하게 기술하였다.
이에 관하여 제16도는 함수레벨에서의 처리를 설명하는 순서도를 나타내고 있으며 제17도는 이를 더욱 상세하게 도시한 순서한 것이다.
CPU(1)는 얻어진 피치정보를 토대로하여 각 분석사이클의 모든 샘플링포인트에 대한 시리즈(series)의 길이를 계산한다(스텝 SP130).
여기에서 시리즈의 길이는 제18도에 도시된 바와 같이 관측점(P1)상의 피치정보를 중심으로 대칭형상인 소정의 좁은 영역(R1)에서 피치정보의 값을 취하는 RUN구간의 시리즈를 의미한다. 가수나 그와 유사한 악기에 의해 발생된 음향신호는 각 소정구간에 대한 표준음정으로 가정하는 음을 만들기 위해 발생된다. 그리고 그 음향신호가 변동된다하더라도 한 음정과 동일음정이 의도되는 구간의 피치정보내에서의 변화가 좁은영역내에서 발생한다는 것이 의도가 고려될 수 있다. 그러므로 시리즈길이(RUN)는 동일음의 기간을 포착하기 위한 가이드역할을 한다.
다음에 CPU(1)는 소정된 값을 초과하는 시리즈길이를 갖는 샘플링포인트를 연속해서 나타나는 부분을 찾기위하여 계산을 수행하며(스텝 (P131), 이렇게 함으로써 피치정보내의 변화에 의한 영향을 제거해 준다. 그런다음 CPU(1)는 계산에 의해 발견된 각부분에 대한 최대연속길이를 가지고 있는 샘플링포인트를 대표점(typical point)으로서 추출한다(스텝 SP132).
그런다음 마지막으로 두 인접한 대표점에 있는 피치정보내의 차이가 소정의 레벨을 넘어설 경우 CPU(1)는 개개의 샘플링포인트간의 샘플링포인트에 대한 대표점간의 피치정보내에 있는 변화의 양을 찾고 이 변화의 양이 최대인 샘플링포인트에서 음향신호를 분할한다(스텝 SP133).
이러한 방법으로 이 시스템은 음향신호내의 변동에 의하여 또는 갑작스런 외부음에 의하여 영향을 받지않고 피치정보를 토대로하여 세그멘테이션처리를 수행할 수 있게 한다.
다음 이 처리를 제17도를 참고로하여 더욱 상세하게 기술하고자 한다.
먼저 CPU(1)는 모든 분석사이클내의 모든 샘플링포인트(t)(t=O-N)에 대하여 계산하므로써 시리즈 길이(run(t))의 길이를 계산한다.
다음 처리될 샘플링포인트를 나타내는 파라미터(t)를 0으로 놓은 다음 CPU(1)는 처리가 모든 샘플링포인트에 대하여 종료되었는지를 확인하고 처리대상인 샘풀링포인트(t)에서 시리즈 길이(run(t))이 한계값(t)보다 작은지의 여부를 판단한다(스텝 SP141∼SP144). 만약 CPU가 시리즈길이가 불충분하다고 이 작업을 통해 결론적으로 판단했다면 이는 파라미터(t)를 증강하고 상기한 스텝(SP142)로 되돌아간다(스텝 SP144).
이 처리를 반복하여 CPU(1)는 처리대상으로서 한계값(r)보다 긴 시리즈 길이(run(t))와 함께 샘플링포인트를 취할 것이며 스텝(SP143)에서 부정적인 결과를 얻은 것이다. 이때에 CPU(1)는 파라미터(s)로서 그 파라미터(t)를 기억할 것이며 이것을 시리즈 길이(run(t))가 한계값(r)을 넘어서는 개시점으로 표시할 것이다. 그런다음 처리가 모든 샘플링포인트에 대하여 종료되었는지를 확인하고 처리대상으로 취해진 샘플링포인트(t)에서 시리즈 길이(run(t))가 한계값(r)보다 작은지에 대한 여부를 판단한다(스텝 SP145∼SP147). 만약 CPU(1)가 이 연산의 결과로서 시리즈 길이(run(t))가 충분하다는 것을 발견하다면 이는 파라미터(t)를 증강하고 상기한 스텝(SP146)으로 되돌아간다(스텝 SP148).
이 처리작업을 반복하여 CPU(1)는 그 처리대상인 시리즈 길이(run(t))가 한계값(r)보다 작은 샘플링포인트를 곧 발견하여 스텝 SP147에서 긍정적인 결과를 얻는다. 그러므로 CPU(1)는 시리즈 길이(run(t))가 한계값(r)보다 작은지점, 즉 표시된 지점(s)로부터 한 포인트앞선 샘플링포인트(t-1)의 부분을 연속하여 검사하고 또한 CPU(1)는 이들 샘플링포인트중에서 최대시리즈길이를 주는 지점에 대표점으로 표시한다(스텝 SP149).
더욱이 이 처리를 종료한 다음 CPU(1)는 상기한 스텝(SP142)로 되돌아가서 시리즈 길이(run(t))가 한계값(r)보다 큰 연속부분을 위한 검사를 계속 수행한다.
CPU(1)가 시리즈 길이(run(t))가 한계값(r)을 초과하는 연속부분의 검사를 종료하고 이러한 방법으로 모든 샘플링포인트를 처리하여 대표점을 표시했을 때 CPU(1)는 다시 파라미터(t)를 0으로 놓고 과정이 모든 샘플링포인트에 대하여 종료되었는지를 확인한 다음 대표점으로서의 표시가 처리대상인 샘플링포인트에 있는지의 여부를 판단한다(스텝 SP150∼SP152).
어떤 표시되어있지 않을 경우에는 CPU(1)는 파라미터(t)를 증강하고 상기한 스텝(SP151)으로 되돌아간다(스텝 SP153).
이 처리를 반복하여 그위에 표시가 된 샘플링포인트를 처리대상으로 취한것이며 첫번째 대표부분을 발견할 수 있게 될 것이다. 그런다음 CPU(1)는 파라미터(s)로서 이 값(t)을 기억하고 표시하며 또 파라미터(t)를 증강하고 모든 샘플링포인트에 대하여 종료되었는지를 확인하며 CPU(1)는 처리대상으로 취해진 샘플링포인트에 대표점으로서의 표시가 있는지의 여부를 판단한다(스텝 SP154∼SP157).
어떤 표시도 있지 않을 경우 CPU(1)는 파라미터(t)를 증강하고 상기한 스텝(SP154)으로 되돌아온다(스텝 SP158).
이 처리가 반복되는 동안 위에 표시가 되어있는 샘플링포인트는 처리대상으로 취해질 것이며 다음 대표점(t)을 발견하게 될 것이다. 이때에 CPU(1)는 상호인접한 대표점(s)와 (t)간의 피치정보의 차이가 한계값(q)보다 작은지의 여부를 판단하며, 작은 경우, CPU(1)는 다음쌍의 인접대표점을 찾기위한 처리를 수행하면서 상기한 스텝(SP154)으로 되돌아간다.
그러나 차이가 한계값(q)보다 클경우 CPU(1)는 그들간의 개개 샘플링포인트에 대하여 대표점간의 피치정보내의 변화량을 찾아내고 변화의 최대치와 함께 샘플링포인트위의 세그멘트표시를 한다(스텝 SP159∼SP161).
이 처리를 되풀이하여 세그멘트표시는 대표점간에 차례로 위치하게 되며 스텝(SP156)에서 긍정적인 결과를 얻고 이 처리가 종료된다.
따라서 상기한 실시예는 만약 음향신호에 변동이 있을 경우나 그안에 갑작스런 외부음이 삽입될 경우에 조차도 세그멘테이션처리를 잘 수행할 수있는 능력을 가지고 있게 된다. 왜냐하면 이 시스템은 피치정보가 좁은 영역에 존재하는 길이를 나타내는 시리즈길이를 사용하여 세그멘테이션처리를 수행하기 때문이다. 상기한 실시예에 있어서 또한 시스템은 자기상관분석에 의해 얻어진 피치정보를 세그멘테이션하는 처리를 한다.
한편 피치정보를 추출하는 방법이 여기에 한정되는 것만이 아님은 말할 필요도 없다.
다음 제19도의 순서도를 참고로하여 본 발명에 의한 자동채보방식의 작동에 있어서 세그멘테이션재검토 처리에 대해 상세하게 기술하고자 한다(제3도의 스텝(SP6)참조).
이 재검토처리는 음정을 식별하기 위한 처리에 앞서 세그멘트를 더 분할하고 이들 세그멘트로 음정식별처리를 시행하여 음정식별처리의 정확성을 개선하기 위하여 이용되어왔다. 왜냐하면 어느 세그멘트가 2 또는 그 이상의 음으로 이루어지는 방법으로 잘못 설정하게 될 경우 발생된 악보데이타의 정확성이 적어지는 결과를 낳는등, 음정의 식별이 잘봇되기 쉽기 때문이다. 이러한 경우 단일음은 2 또는 그 이상으로 분할되어야한다고 생각되며 이 처리는 어떠한 문제로 야기하지 않는다. 왜냐하면 식별된 음계와 파워정보를 토대로하여 단일음이 형성되었다고 생각되는 이들 세그멘트가 스텝(SP11)에서 세그멘테이션처리에 의해 서로 연결되어 있기 때문이다.
세그멘테이션처리의 재검토에 있어서, CPU(1)는 먼저 처리되기 위해 취해질 최종의 세그멘트가 아니라는 것을 확인한 다음 특정세그멘트를 전체 세그멘테이션결과에 매칭(matching)을 실행한다(스텝 SP170∼SP171).
여기에서 매칭은 정수나 세그멘트길이를 곱해서 얻은값으로 그 정수를 나눈 특정세그멘트길이의 한쪽부분의 값과 다른 스텝의 길이와의 차의 절대값 전체와 정수나 정수로 곱해서 얻은값으로 나눈 세그멘트길이의 한쪽부분값과 다른 세그멘트길이의 값과의 불일치의 빈도를 찾아내는 처리를 의미한다(예를들면 미스매치(mismatch)의 빈도수이다.)
또한 본 실시예의 경우에 있어서 매칭하기위한 짝으로 취해질 다른 세그멘트는 피치정보를 토대로하여 얻어진 세그멘트와 파워정보를 토대로하여 얻어진 세그멘트 모두가 될 것이다.
예를들면 제1세그멘트(S1)가 제20도에 도시된 10세그멘트의 처리대상인 경우, 세그멘테이션처리의 초기에 이루어진 것일 경우(제3도의 스텝 SP4와 SP5), 이 매칭처리는 차이에 의한 정보의 자체총계로서 1+3+1+1+5+0+0+1+9=27이 발생하고 미스매칭의 빈도수에 7배이다.
미스매치의 수와의 이들 매스매치의 정도(즉 차이의 전체총계에 의한 정보)가 처리의 대상으로서 얻어질때 CPU(1)는 보조기억장치(6)에 있는 정보를 기억하고 처리대상이 될 세그멘트로서 다음 세그멘트를 취하면서 전기한 스텝(SP170)으로 되돌아간다(스텝 SP172). 이들 스텝(SP170)으로 되돌아간다(스텝 SP172). 이들 스텝(SP170)∼(SP172)로 이루어진 처리 루우프의 반복은 모든 세그멘트에 대하여 미스매치의 빈도수와 미스매치정도에 대한 정보를 발생하며 곧 스텝(SP170)에서 긍정적인 결과를 얻는다.
이때에 CPU(1)는 보조기억장치에 들어있는 미스매치의 회수와 이들 미스매치의 정도에 대해 기억된 정보에서 보아 이들 요소의 최소차가 되는 세그멘트길이를 토대로하여 기준길이(standard lenght)를 결정한다(스텝 SP173).
여기에서 기준길이는 4분음표나 그와 같은 것과 동일한 박자의 지속을 의미한다.
제20도의 실시예의 경우에 있어서 60은 미스매치의 최소한의 횟수와 그 정도의 최소치와 함께 세그멘트길이로 추출되었으며 이 길이 60의 2배의 값을 가진 120이 기준길이로 선택된다.
실제로 4분음표의 박자의 길이는 소정범위내의 값에 상응하게 취해진다. 그리고 이러한 점에서부터 60대신 120이 기준길이로 추출된다. 기준길이가 추출될 때 CPU(1)는 기준길이의 1/2에 대충 상응하는 값에 의해 기준길이보다 일반적으로 더 긴 세그멘트로 분할되며 이 세그멘테이션단계(SP174)의 재검토과정을 종료한다.
제20도에 주어진 실시예의 경우에 있어서 5번째 세그멘트(S5)는 61과 60으로 분할되며 6번째 세그멘트(S6)는 63과 62로 분할되며 9번째 세그멘트(S9)는 60과 59로 분할되고 10번째 세그멘트(S10)은 58,58,58및57로 분할된다.
그러므로 상기한 실시예에 따라 2 또는 그 이상의 음을 단일세그멘트로 분할하는 경우에서 조차 세그멘트분할을 실시할 수 있게 하여준다. 여기에서 시스템이 음정식별처리와 음정수정처리와 같은 처리를 정확하게 하여줄 수 있게 되었다.
또 이러한 세그멘테이션방법에 있어서 2 또는 그 이상의 부분으로 잘못 분할된 단일음에 상응하는 어떤 세그멘트가 그대로 남아있게하는 일이 발생하지 않을 것이다.
왜냐하면 이 시스템은 단일음을 형성하기 위해 고려된 세그멘트를 서로 연결하기 위한 후속 처리과정을 제공하고 있기 때문이다. 더욱이 상기한 실시예는 미스매치의 빈도수와 미스매치의 정도를 토대로하여 기준길이가 추출되는 것을 도시하고 있으나 길이의 추출은 세그멘트길이의 발생빈도를 토대로하여 이루어져도 좋다.
또한 상기한 실시예에서는 4분음표와 동일한 지속시간이 기준길이로 이용되는 경우를 도시하였으나 8분음표와 같은 지속시간을 기준길이로 이용하여도 좋다.
이 경우에 있어서 더 이상의 분할은 기준길이의 1/2과 동일한 길이에 의해서가 아니라 기준시간 그 자체를 이용하여 수행된다.
또한 상기한 실시예는 본 발명이 피치정보를 토대로한 세그멘테이션과 파워정보를 토대로한 세그멘테이션을 보유하는 처리시스템을 이용하는 경우에 대해 도시한 것이지만 본 발명은 적어도 파워정보를 토대로한 세그멘테이션초리를 보유하는 자동채보방식에 이용하여도 좋다.
다음 자동채보방식등의 음정식별처리(제3도의 스텝 SP97)에 관하여 제21도의 순서도를 참고로하여 상세하게 설명하겠다.
CPU(1)는 먼저 최종세그멘트가 완료되었는지의 처리를 확인하고 음향신호가 절대음정축을 음정파라미터(xj)로 취할것이라 생각되는 최저음정용의 피치정보(xO)를 설정하고(j=O-m-1, 여기에서 m은 음향신호가 고음범위에서 절대음정축을 택하는 음정의 수를 표시한다) 그 음정과 관계된 피치정보(pi)(i=O-n-1, 여기에서 n은 이 세그멘트의 피치정보에 대한 요소의 수를 나타낸다)의 거리(εj)를 산출하여 기억한다(스텝 SP180∼SP182). 여기에서 거리(εj)는 거리계산을 목적으로 취해진 세그멘트내의 피치정보(pi)의 각 요소와 절대음정축상의 음정피치정보(xj)간의 차이(pj-xj)(제22도 참조)의 제곱근에 의해 한정되며 아래식(2)으로 나타내진다
Figure kpo00001
그런다음 음향신호가 취할 가능성이 있다고 생각되는 최고절대음정의 축상에 있는 음정을 위한 피치정보(xm-1)가 음정파라미터(xj)가 되는지의 여부를 CPU(1)가 판단하며 만약 부정적인 결과를 얻는다면 이는 음정(xj)을 갱신하여 현재의 시간에 이르기까지의 처리에 이용된 음정보다 절대음정축상의 절반정도만큼 음정이 높게 하기 위하여 피치정보(xj+1)를 증가시킨다. 그런다음 상기한 거리산출스텝(SP182)으로 되돌아간다(스텝 SP183과 SP184).
스텝(SP183)(SP184)로 이루어진 처리 루우프의 반복에 의하여 피치정보와 절대음계축상의 모든 음정간의 거리(
Figure kpo00002
)는 계산에 의해 나타나며 스텝(SP183)에서 곧 긍정적인 결과가 얻어진다.
이때에 CPU(1)는 기억장치내에 저장된 개개의 음정에 관한 가장 작은 거리를 검사하고 거리가 세그멘트의 음정만큼 최소인곳의 음정을 결정하고 다음 세그멘트에 있는 처리될 세그멘트를 세트한 다음 상기한 스텝(SP180)으로 되돌아간다(스텝 SP185와 SP186).
이러한 방법으로 처리를 반복함으로써 음정은 모든 세그멘트에서 동일화되며 긍정적인 결과가 스텝(SP180)에서 얻어지고 CPU(1)는 종료하기 위한 특별처리프로그램을 실행한다.
그러므로 상기한 실시예는 절대음정의 축과 각 세그멘트에 피치정보간의 거리를 산출하는 것과 세그멘트의 음정과 최소거리의 결과인 절대음정의 축상의 음정을 식별함에 의하여 높은 정밀도를 가진 음정으로 식별 할 수 있다.
더욱이 상기한 실시예에 있어서 식(2)에 의하여 거리가 산출되며 아래의 식에 따라 얻어진 것으로도 이용할 수 있다.
Figure kpo00003
또한 음정을 식별하기 위한 처리에서 이용된 피치정보는 주파수의 단위인 ㎐나 음악에서 이용되는 주파수의 단위인 센트(cent)로 표시하여도 좋다.
다음 본 발명에 따른 자동채보방식과 함께 음정식별을 위한 다른처리에 대하여 제23도의 순서도를 참고로하여 상세하게 설명하고자 한다.
CPU(1)는 먼저 세그멘테이션처리에 의해 얻어진 세그멘트에서부터 초기세그멘트를 취하고 그 세그멘트가 나타내는 모든 피치정보의 평균값을 계산하므로써 찾아낸다(스텝 SP190, SP191).
그런다음 CPU(1)는 절대음정의 축상에 있고 특정세그멘트의 음정으로서의 계산된 평균값에 가장 근접하는 음정을 식별한다(스텝 SP192).
또한 음향신호의 각 세그멘트의 음정은 절대음정의 축상에 있는 반음에 의해 달라지는 음정의 하나로 식별된다.
CPU(1)는 이렇게 하여 식별된 음정과 함께 이 방법으로 처리된 주어진 세그멘트가 최종의 세그멘트인지 아닌지를 판별한다(스텝 SP193).
만약 CPU(1)가 이 처리가 종료되었다는 것을 이 연산의 결과를 알았다면 이는 특별프로그램을 위하여 이 프로그램이 종료되나 만약 처리가 아직 종료되지 않았다면 CPU(1)는 다음 세그멘트를 처리할 대상으로 채택하고 상기한 스텝(SP191)으로 되돌아간다(스텝 SP194).
이들 스텝(SP191∼SP194)으로 이루어진 이 처리 루우프를 반복하면서 음정의 식별이 세그멘트내의 피치정보를 토대로하여 모든 세그멘트에 대하여 실시된다.
이와 관련하여 이 시스템은 음향신호가 비록 그 신호가 변동되기는 하더라도 가수나 그와 유사한 악기에 의하여 의도된 음정주변부에서 중심쪽으로 변동하는 방법과 이 의도된 음정에 상응하는 평균값을 근거로하여 음정식별처리를 위한 평균값을 이용하도록 설계되어졌다.
제24도는 이 처리를 통한 음정식별에 관한 하나의 실시예를 도시한 것이다.
점선으로 표시된 곡선(PIT)는 음향신호의 피치정보를 나타내며 수직방향의 실선(VR)은 각 세그멘트의 분할을 나타낸다.
이 실시예의 각 세그멘트를 위한 평균값은 수평방향의 실선(HR)으로 표시되어 있으며 식별된 음정은 수평방향의 저선(HP)로 나타나있다. 제24도로부터 알수 있듯이 평균값은 절대음정의 축상의 음정에 비하여 매우 작은 오차를 가지고 있으며 이는 음정의 식별이 잘 수행할수 있게 하여 준다.
계속해서 이 실시예는 각 세그멘트에 관한 피치정보의 평균값을 발견하고 세그멘트의 음정이 평균값과 가장 근접한 절대음정의 축상의 음정으로 식별한다. 그러므로 시스템은 매우 높은 정밀도를 가진 음정으로 식별할 수 있는 능력을 가지고 있다.
더욱이 이 시스템은 음정의 식별보다 먼저 음향신호의 튜닝처리를 실시함으로써 이방법은 식별처리의 수행을 손쉽게 실행하도록 하면서 절대음정의 축상의 음정에 가까운 값을 암시하는 평균값을 찾아낼수 있다.
상기한 실시예에 있어서 세그멘트의 음정은 피이 평균값을 토대로하여 식별되지만, 세그멘트의 식별은 여기에 한정되지 않는다. 이는 피치를 위한 중간값을 토대로 할수도 있다.
다시 말해서 처리는 아래에 기술한 바와 같이 제25도에 도시된 순서도에 따라 실행한다.
제25도에 도시된 바에 따르면 CPU(1)는 세그멘테이션에 의해 얻어진 세그멘트로부터 나온 초기 세그멘트를 취한다음 세그멘트내에 존재하는 모든 피치정보의 중간값을 추출한다(스텝 SP190,SP195). 여기에서 특정세그멘트의 피치정보의 요소가 가장 큰것으로부터 시작하여 차례로 배열되어 있을때 요소의 수가 홀수라면 중간에 있는 것이 피치정보의 중간값이다.
또한 이들 요소의 수가 짝수일때에는 중간에 위치한 정보의 두개의 피치정보의 평균값이 중간값이다.
스텝(SP195)(SP196) 및 (SP196)이외의 스텝은 제23도에 도시된 바와 동일한 것이다.
스텝(SP195)(SP196)(SP193) 및 (SP194)로 이루어진 처리 로우프를 반복하여 특정 세그멘트내의 피치정보를 토대로한 음정의 식별을 모든 세그멘트에 대하여 실시된다.
여기에서 이 시스템이 음정을 식별시키기 위한 처리에 중간값을 이용하도록 설계된 이유는 음향신호가 변동하더라도 가수나 그와 유사한 악기에 의해 의도된 음정주위의 중심부위에서 오르내리므로 의도된 음정에 중간값이 상응하기 때문이다.
제26도는 이 처리에 의한 음정의 식별에 대한 한가지 실시예를 도시하고 있으며 점선으로된 곡선(PIT)은 음향신호의 피치정보를 나타내는 반면 수직방향의 실선(VR)은 세그멘트의 분할을 나타낸다.
이 실시예에서의 각 세그멘트의 중간값은 수평방향으로 실선(HR)으로 나타나있으며 식별된 음정은 수평방향으로된 점선(HP)에 의해 표시되어 있다.
제26도에서부터 알수 있듯이 중간값은 절대음정의 축상에 있는 음정에 비하여 매우 적은 오차를 갖고 있으므로 이 시스템이 식별과정을 잘 수행할 수 있게 할 수 있다.
또한 세그멘트의 분할전후에 피치정보의 어떤 불안정한 상태에 의한 영향을 받지않고 음정을 식별할 수 있다(예를 들면 곡선부분 C1과 C2). 그러므로 이 실시예에서의 시스템의 각 세그멘트상의 피치정보의 중간값을 추출하고 중간값에 가장 가까운곳에 위치하고 있는 절대음정의 축상에 있는 음정으로 음정을 식별하기 때문에 이 시스템이 높은 정밀도로 음정을 식별할 수 있게 한다.
더욱이 음정의 식별에 앞서 이 시스템은 음향의 튜닝처리를 사용한다.
그러므로 이 방법을 이용하여 중간값을 절대음정의 축상의 음정에 가까운 값으로 추정되기 때문에 식별과정을 실시하는 것이 용이하게 하여준다.
더욱이, 음정식별처리는 파워입상에서의 피크점에 근거하여 실행될 수도 있다(제3도의 스텝 SO7).
이 형태에 대한 설명은 제27도와 28도를 참조하여 설명된다.
제27도에 도시된 처리순서는 제23도에 주어진 것과 기본적으로 동일하고 단지 스텝(SP197)과 (SP198)만이 다르다.
CPU(1)는 세그멘테이션에 의해 구해진 그런 세그멘트들 중에 초기세그멘트를 취하고 그 다음에 세그멘트위의 파워정보에서의 변화로부터 초기최대값(입상에서의 피크)을 주는 샘플링포인트를 취한다(스텝 SP190과 SP197).
그 이후, CPU(1)는 파어의 입상피크에 입상을 일으키는 샘플링포인트 위의 피치정보에 가장 가까운것과 같은 절대음정축위의 음정과 같은 특수세그먼트를 위한 음정에 따라 식별한다(스텝 SP198).
이것에 관하여, 음향신호의 개별세그멘트들의 음정은 절대음정축상의 반스텝 다른 음정중의 어느하나와 식별된다.
여기서 비록 음향신호가 변동이 있다 할지라도 가수등이 그와 같은 것들은 볼륨에 있어서 피크에 있는 음정에 도달하는 그런 방법으로 음성의 볼륨을 조절할 수 있고, 음정이 새로운 음으로 이동될때에 음성의 볼륨을 증가시킬 것이라고 여겨지기 때문에 음정을 식별하는 처리를 위해 파어정보의 입상피크를 이용하는 것이 설계되어지고 있다.
사실, 파어정보의 입상피크와 음정 사이에는 매우 가까운 상호관계가 있음이 결론적으로 증명되고 있다.
제28도는 처리에 의한 음정을 식별하는 한 예를 예시하며, 첫째 점선곡선(PIT)은 음향신호의 피치정보를 나타내며, 둘째 점선곡선(POW)는 파어정보를 나타내고 수직방향의 실선(VR)은 세그멘트분할을 가리킨다.
이 예에서의 각 세그멘트의 입상피크의 피치정보는 식별된 음정이 수평방향으로 점선(HP)으로 나타나는 동안 수평방향으로 실선(HR)으로 나타난다.
제28도로부터 명백해지는 바와 같이, 파어정보의 입상피크점과 관련한 피치정보는 절대음정축위의 음정으로부터의 매우 작은 편차를 보유하며 이러한 특징은 시스템이 음정을 잘 식별하는 것을 가능하게 한다는 것이 관측된다.
따라서, 위에 기술된 실시예에 따르면 그 시스템은 각 세그멘트의 파어정보의 입상피크점위의 피치정보를 추출하여 이 피치정보에 가장 가까운 음정축위의 음정같은 것과 세그멘트의 음정을 식별한다. 따라서, 그 시스템은 음정을 매우 정밀하게 식별할 수 있다. 더욱이 음정을 식별하기 전에 시스템은 튜닝처리를 음향신호에 적용시키며, 따라서 파어정보의 입상피크점에 관한 피치정보는 절대음정축위의 음정에 가까운 값을 띠게되고, 따라서 이런 시스템이 식별을 수행하는 것은 매우 쉽게 된다.
더욱이 그 시스템은 파워정보의 입장피크점을 이용하기 때문에 비록 그 세그멘트가 너무 짧아서, 이 시스템에 의한 음정의 식별은 세그멘트길이에 거의 영향을 받지 않아 쉽다는 결과와 함께, 샘플링포인트의 수는 세그멘트의 피치정보의 통계처리과정을 통한 음정의 식별의 경우와 비교하여 적다할지라도 그 시스템의 음정을 잘 식별하는 것은 가능하다.
더욱이 위에 기술된 실시예는 파워정보의 피크점과 관련한 피치정보에 근거한 음정을 식별하는 처리를 나타내며, 그러나, 이 세그멘트위에 파워정보의 최대값을 주는 샘플링포인트위의 피치정보에 근거한 음정의 식별을 수행하는 것은 실현할 수 있는 과정이다.
그다음, 상세한 설명이 본 발명에 따른 이런 자동채보방식에 의해서 수행된 한번 식별된 음정을 위한 음정식별처리와 재검토처리에 대한 또하나의 배치에 관하여 제29도에 있는 순서도와 관련하여 주어진다.
CPU(1)는 첫째, 세그멘테이션을 통하여 얻어진 세그멘트에 관하여 예를들면 특수한 세그멘트의 피치정보의 평균값을 얻고, 그 다음에 주어진 세그멘트의 음정을 평균값에 가장 가까운 것과 같은 절대 음정축위의 중간스텝으로 서로서로 다른 음정중의 하나와 식별한다(스텝 SP200).
그렇게 식별된 음정은 다음 방법으로 이 시스템에 의해서 검토된다. 여기서, 검토는 그 음전조시에 그 음정의 불안정성결과 분리 세그멘트로서 그것들의 분할결과로서 검토하에 세그멘트전후의 각 세그멘트와 상관없이 음정으로 식별된다고 생각되는 세그멘트들로 이루어진다.
CPU(1)는 우선 최종세그멘트의 처리과정이 아직 완결되지 않았다는 것을 확인하고 처리대상으로서 취해지는 세그멘트의 길이가 한계값보다 더 짧은지 아닌지를 판단하고, 그 길이가 한계치를 초과할 경우에는 CPU(1)는 처리대상물로서 그것을 취하기 위해 다음 세그멘트위로 처리작업으로 이동하고, 다음에 스텝(SP200)으로 되돌아간다(스텝 SP201과 SP202).
이렇게 처리하는 이유는 음전조중에 있어서의 시작할시나 끝날시에서와 같이 그것이 단일음의 일부분임에도 불구하고 분리세그멘트로서 그것이 식별되는 경우에 세그멘트의 길이가 짧을 것이라는 사실에서 알 수 있다.
처리되는 세그멘트가 짧은 길이인 하나라는 것이 검출되면, CPU(1)는 특정세그멘트의 피치정보에서의 변화경향과, 오우버슈트(overshoot)에 있어서의 변화경향의 매칭을 결정하며 또한 그 세그멘트의 피치정보에서의 변화경향과 언더슈트(under shoot)에 있어서의 변화경량의 매칭을 결정하고 그것에 의해서 그 세그멘트의 피치정보에 있어서의 변화경향이 오우버슈트인지 언더슈트인지의 여부를 판단한다(스텝 SP203과 SP204).
여기서 한가지의 음에서 또다른 것으로의 전조시에 몇몇의 경우에 있어서, 다소 약간의 더높은 음정레벨에서 그다음 음의 시작에 근접한 음의 높이까지 점점전조가 발생하며 다소의 더낮은 음정레벨에서 그다음 음의 시작에 근접한 음의 레벨까지 점점전조가 발생하고, 피치에 있어서의 점점 경사가 있는 전조가 때때로 음의 음정레벨에서부터 음의 끝에 근접한 그다음 음까지 발생하고, 그리고 피치에 있어서 점차 상승하는 전조가 음의 음정레벨에서부터 음의 끝에 근접한 그다음 음까지 때때로 발생한다. 비록 그것들이 단일음들의 부분일지라도 음전조효과에 의해서 음정이 피치에 있어서 점차 상승을 향한 경향이나 피치에 있어서 점차 하락하는 경향으로 변하는 세그멘트들의 부분들 중에서 적당한 음정보다 피치에 있어서 더높은 부분들은 오우버슈트라 불리고 비록 그것들이 단일음들의 부분일지라도 음전조의 효과에 의해서 음정이 피치에 있어서 점차 상승을 향한 경향과 피치에 있어서 점차 하락을 향한 경향으로 변하는 세그멘트들의 부분들중에서 적당한 음정보다 피치에 있어서 더작은 부분들은 언더슈트라 불린다.
그런 오우버슈트와 언더슈트는 때때로 독립적인 세그멘트로 구분되며, 그런경우에 CPU(1)는 처리대상으로 취해진 세그멘트가 그것이 어떤 오우버슈트나 어떤 언더슈트를 띠게되는 세그멘트가 되는지의 가능성을 나타내는지의 여부를 판단하며, 그 시스템은 그 세그멘트를 위한 피치정보에 있어서의 변화경향과 바로위에 언급된 바대로 피치에 있어서의 상승을 향한 경향이나 피치에 있어서 하락을 향한 적당한 경향 사이의 매칭을 결정한다.
CPU(1)가 이런 판단과정의 결과 부정적인 결과를 얻을 때, 그것은 처리대상으로서 그다음 스텝을 취하며 위에 언급된 스텝(SP201)으로 되돌아온다.
다른한편, 만약 CPU(1)가 오우버슈트 혹은 언더슈트를 반영하는 세그멘트의 가능성이 있다고 판단한다면, 그것은 특정한 세그멘트의 식별된 음정과 그 세그멘트와 관련한 바로 앞세그멘트와 바로다음 세그멘트의 식별된 음정사이의 차이점을 발견하고 더작은 차이를 나타내는 그 세그멘트위에 표시를 하며 그 이후 그렇게 표시된 세그멘트의 음정에 있어서의 차이가 한계값보다 더 작은지의 여부를 판단한다(스텝 SP205와 스텝 SP206).
비록 그것들의 단일음을 형성할지라도 세그멘테이션처리를 통하여 음이 분리세그멘트로 분리되고 있는 경우에 있어서 그런 세그멘트의 음정은 앞의 세그멘트와 다음 세그멘트의 음정과는 휠씬 다르며 그러나 그런 세그멘트가 그것의 앞과 다음 세그멘트의 것들과 음정에 있어서 어떤 상당한 차이를 나타내는 그런 경우에는 그 세그멘트는 어떠한 오우버슈트나 언더슈트를 반영하는 어떠한 세그멘트도 아니라고 간주되며, 그 경우에 CPU(1)는 그 처리대상으로서 바로다음 세그멘트를 취하여 위에 언급된 스텝(SP201)으로 되돌아간다.
다른한편, 특정세그멘트의 표시된 세그멘트의 것으로부터 음정에 있어서 작은 차이를 나타내는 경우에는, CPU(1)는 특정세그멘트와 표시된 세그멘트사이의 경계에 근접한 한계값을 초과한 파워정보에 있어서 어떠한 변화가 있는지의 여부를 판단한다(스텝 SP206).
전조가 하난의 음에서 또다른 하나의 음까지 발생할때 그것은 또한 파워정보가 변화는 것이 종종 발생하며, 그리고 파워정보에 있어서의 변화가 큰 경우에는 특정세그멘트는 오우버슈트나 언더슈트를 반영하는 어떠한 세그멘트도 아니라고 간주된다.
이 경우에 있어서 CPU(1)는 그 처리과정의 대상으로서 그다음 세그멘트를 취하여 상기한 스텝(SP201)으로 되돌아간다. 만약 이 스텝(SP207)에서의 판단에 의해서 긍정적인 결과를 얻는다면, 특정세그멘트는 오우버슈트나 언더슈트를 반영하는 세그멘트라는 것으로 간주된다.
그래서, CPU(1)는 특정세그멘트의 음정을 표시된 세그멘트의 것으로 수정하며 그 처리과정의 대상으로서 그다음 세그멘트를 취하고 그다음에 상기한 스텝(SP201)으로 되돌아간다(스텝 SP208).
CPU(1)가 이것과 같은 과정의 반복에 의해서 모든 세그멘트에 관해서 음정의 검토과정에 의하여 최종세그멘트에 대한 검토를 완결시켰을 때, 그것은 특정처리프로그램을 완결시키는 것과 함께 스텝(SP201)에서 긍정적인 결과를 얻는다.
제30도는 식별된 음정이 전기한 처리과정에 의해서 수정되는 예를 나타낸다.
여기서, 곡선은 피치정보(PIT)를 나타내며, 이 예에서 둘째세그멘트(S2)와 셋째세그멘트(S3)는 똑같은 음정을 형성하도록 되어진다.
둘째세그멘트(S2)는 음정(R2)과 함께 수정전에 식별되고, 그것은 셋째세그먼트(S3)가 식별된 음정(R3)으로부터 중간 스텝만큼 더낮은 레벨이었으나, 이 세그멘트(S2)의 음정(R3C)은 세그멘트(S3)의 음정(R3)으로 이 처리과정에 의해서 나중에 변경된다.
따라서, 그 시스템이 잘못된 음정으로 잘못 식별된 세그멘트들을 탐지하여서 한번 식별된 음정을 수정하도록 설계되었기 때문에, 이 시스템은 식별된 음정의 정밀도에 대한 개선과 결과적으로 세그멘트길이의 피치정보에 있어서의 변화경향과 앞의 세그멘트와 바로다음 세그멘트들로부터의 음정에 있어서의 특정 세그멘트의 차이와 그리고 앞의 세그멘트와 바로다음 세그멘트들로부터의 파워정보에 있어서의 특정세그멘트의 차이를 수정하기 위하여 이용하는 뒤이은 처리과정의 실행에 있어서 고도의 정밀성에 기인한 악보데이타에 대한 정밀도를 증가시킬 수 있다.
더욱이, 위에 언급된 실시예는 특정세그멘트와 그것의 앞쪽과 뒤쪽 사이의 파워정보에 있어서의 차이를 고려함으로써 잘못된 음정으로 식별된 세그멘트들을 추출하도록 설계되어 있으나, 최소한 세그멘트길이에 근거하여 잘못 식별된 세그멘트들과 피치정보에 있어서의 변화경향과 특정세그멘트와 앞의 세그멘트와 바로다음 세그멘트사이의 음정에 있어서의 차이를 추출하는 것은 실현할 수 있는 방법이다.
더욱이, 피치정보에 있어서의 변화에 근거한 오우버슈트 혹은 언더슈트의 존재를 탐지하는 방법은 상승경향이나 하락경향에 의해서 단지 그것들은 탐지하는 위에 언급된 방법에 한정되지 않고 그러나 또한 표준패턴과의 비교와 같은 또다른 방법도 적용할 수 있다는 것은 말할 필요도 없다.
또한, 다음부분에서 설명된바대로 음정을 식별하는 처리는 다른 관점으로부터 실행될 수도 있다(제3도에서의 스텝 SP7참조). 한 설명이 제31도와 32도와 관련하여 이 관점에 관하여 주어진다.
CPU(1)는 첫째 세그멘테이션에 의해서 얻어진 것들중에서 첫째 세그멘트를 취하며, 그 다음에 그것은 특정세그멘트에 있어서의 모든 피치정보를 위한 히스토그램(histogram)을 작성한다(스텝 SP210과 스텝 SP211).
그 이후에 CPU(1)는 히스토그램으로 가장 빈번하게 발생하는 피치정보의 값, 즉 가장 빈번한 값을 탐지하며 탐지된 가장 빈번한 값에 가장 가까운 절대음정축위의 음정과 같은 특정 세그멘트의 음정을 식별한다.
더욱이, 음향신호의 각 세그멘트의 음정은 그것들 사이에서 중간스텝에 의한 차이로 절대음정축위의 음정들중의 어느하나로 식별된다.
CPU(1)는 그 다음에 그위에 수행된 이 처리과정에 의한 음정으로 식별된 세그멘트가 최종 세그멘트인지의 여부를 판단한다(스텝 SP214).
만약 그것이 그 처리가 완결되었다는 결과에 발견된다면, CPU(1)는 특정처리프로그램을 끝내며, 만약 그 처리가 아직 완결되지 않는다면 CPU(1)는 그 처리과정의 대상으로서 그 다음 세그멘트를 취하고 상기한 스텝(SP211)으로 되돌아간다(스텝 SP215). 이런 스텝(SP211∼SP215)를 구성하는 처리루우프를 반복하여 음정의 식별은 모든 세그멘트들에 관하여 각 특정세그멘트에 있어서 피치정보의 가장 빈번한 값위의 정보에 근거하여 수행된다. 여기서, 가장 빈번한 값위의 피치정보는 변동이 있는 음향신호가 가수등에 의해서 의도된 음정주위에 집중하는 범위에서 변동한다고 간주되기 때문에 가장 빈번한 값을 나타내는 피치정보가 의도된 음정에 상응하도록 간주될 수 있다는 사실에 비추어 음정의 식별을 위하여 이 시스템에 이용된다.
더욱이, 음의 세그멘트의 음정식별에 가장 빈번한 값을 나타내는 피치정보를 사용하기 위해서는 다수의 샘플링스텝을 사용하는 것이 필요하며, 식별처리가 잘 수행되는 정도까지 음향신호(분석사이클)로부터 피치정보조각을 얻기 위한 음향신호의 기간을 선택하는 것이 필요하다.
제32도는 이것과 같은 처리과정에 의한 음정의 식별예를 나타내고 점선곡선(PIT)은 수직방향에 있는 실선(VR)이 세그멘트의 분리를 나타내는 동안 음향신호위의 피치정보를 나타낸다.
이 예에서 각 세그멘트를 위하여 가장 빈번한 값이 있는 피치정보는 수평방향으로 실선(HP)으로 나타내어지며 식별된 음정은 수평방향으로 점선(HP)으로 나타내어진다.
제32도로부터 명백한 것처럼, 가장 빈번한 값을 가지고 있는 피치정보는 절대음정축위의 음정으로부터 매우 작은 편차를 보유하며, 따라서 식별처리를 잘 수행하는 목적으로 기여한다.
또한 이방법은 세그멘트분리에 근접한 피치정보(예를들면, 곡선부분(C1)과 (C2)의 상태에서의 불안정성에 영향을 받지않고도 음정을 식별할 수 있음을 분명하게 이해하여야 한다.
따라서 상기한 실시예에 의하면, 가장 빈번한 값이 각 세그멘트위의 피치정보 밖으로 추출되고 그 세그멘트음정이 피치정보에 있어서의 가장 빈번한 값에 가장 가까운 절대음정축위의 음정으로 식별되기 때문에 매우 정밀하게 음정을 측정하는 것이 가능하다. 더욱이, 음정을 식별하기 전에 튜닝처리가 음향신호에 적용되며 이 방법으로 처리되는 가장 빈번한 값이 있는 피치정보는 절대 음정축위의 음정에 가장 가까운 값을 취하며 식별처리를 수행하기가 쉽게 한다.
또한, 아래기술된 처리순서에 의한 음정의 식별을 위한 처리를 실행하는 것이 가능하다. 그리고, 이 처리에 관해서는 설명이 제33도에서 35도까지와 관련하여 설명된다.
CPU(1)는 우선 세그멘테이션처리(제3도에서 스텝 SP6)에 의해서 얻어진 세그멘트중에서 초기세그멘트를 취하여 세그멘트의 각 분석점에 관해서 시리즈길이(run(t))를 계산한다.
여기서, 제34도와 관련한 시리즈길이에 대한 설명이 주어진다. 피치정보에 있어서의 시간적변화가 제34도에 표시되고, 여기서 분석점(t)이 그것들의 피치정보가 수직축위에 주어지는 반면 수평축을 따라서 나타낸다.
한예로서, 분석점(tp)에서 시리즈의 길이가 아래에 설명되고 있다. 특정분석점(tp)위의 피치정보와 관련하여 각각 위로 혹은 아래로 향하여 매우 작은 범위(△h)만큼 편위하면서 피치정보(h0)와 (h2)사이의 값을 취하는 분석점의 범위는 제34도에 나타난바대로 분석점(to)에서 분석점(ts)까지의 범위이며 이 분석점(to)에서부터 분석점(ts)까지의 기간(L)은 분석점(tp)을 위한 시리즈의 길이로 언급된다.
시리즈의 길이(run(t))가 세그멘트에 있어서의 모든 분석점과 관련하여 이 방법으로 계산에 의해서 산출될때 CPU(1)는 시리즈의 길이(run(t))가 가장 길어지는 분석점을 추출한다(스텝 SP22).
그 이후에, CPU(1)는 시리즈의 길이(run(t))가 가장 긴 분석점에서 피치정보를 추출하며 피치정보에 가장 가까운 절대음정축 위의 음정을 특정세그멘트의 음정으로 식별한다(스텝 SP223).
더욱이, 음향신호의 각 세그멘트의 음정은 절대음정축위의 중간스텝만큼 서로서로 다른 음정중의 어느 하나로 식별된다.
그 다음에 CPU(1)는 그 위에서 수행된 이 처리과정의 결과로서 음정으로 식별된 세그멘트가 최종 세그멘트인지의 여부를 판단한다(스텝 SP224).
만약 CPU(1)가 이 작업의 결과로서 그 처리과정이 완결되었음을 발견한다면, 그것은 특정처리프로그램을 마무리지으며, 만약 그 처리가 아직 완결되지 않았다면 그것은 그 처리대상으로서 그다음 세그멘트를 취하여 상기한 스텝(SP221)으로 되돌아간다(스텝 SP225).
이 방법으로 스텝(SP221)에서 (SP225)까지를 이루고 있는 처리루우프의 반복으로, CPU(1)는 모든 세그멘트에 관련하여 세그멘트에서 가장 긴 시리즈의 길이를 주는 분석점위의 피치정보에 근거한 음정에 대한 식별을 실행한다.
이에 관해서, 시스템은 비록 음향신호가 변동이 있을지라도 그것들은 가수등이 똑같은 음정을 내기를 의도하는 경우에 좁은 범위에서 변동하고, 사실 가장긴 시리즈의 길이를 내는 분석점을 위한 피치정보와 의도한 음계 사이에 높은 상호관계가 있다고 확인되는 사실을 고려하여 음정을 식별하는 처리를 위하여 시리즈의 길이(run(t))를 이용하도록 설계되었다.
제35도에서는 이 처리과정에 의한 입력음향신호의 음정에 대한 식별의 한예가 주어지고 있다.
제35도에서는 분석사이클에 관한 피치정보에 대한 분포가 점선곡선(PIT)으로 나타나 있다.
수직선(VR1)(VR2)(VR3)그리고 (VR4)은 수평방향으로 있는 실선(HR)이 그 세그멘트에 가장 긴 시리즈길이를 내는 분석점에 대한 피치정보를 나타내는 동안 세그멘테이션처리에 의해서 만들어지는 세그멘트의 분할들을 나타낸다.
더욱이 점선(HP)은 피치정보에 의해서 식별된 음정을 나타낸다. 제35도에서 명백히 알수 있는 바와 같이, 가장 긴 시리즈의 길이를 내는 피치정보는 절대음정축위의 음정과 관련하여 매우 작은 편차가 있으며, 따라서 이 방법은 음정을 잘 식별할 수 있다.
따라서, 상기한 실시예는 그것이 세그멘트의 피치정보에 있어서의 변화가 작은 부분과 연속체, 즉 음정에 있어서의 변화가 작은 부분에 근거하여 각 세그멘트음정을 식별하도록 설계되었기 때문에 각 세그멘트를 분석점에 관하여 발견된 시리즈의 길이가 가장 크게되는 분석점을 추출하여 실수없이 음정의 식별을 수행할 수 있다.
그 다음은 상기한 스텝(SP7)에서의 음정식별처리에 의해서 식별된 음정을 수정하기 위한 처리과정에 관해서 제36도에 있는 순서도와 관련하여 상세히 설명한다.
음정을 수정하기 위한 그런 처리과정을 실행하기 전에, CPU(1)는 우선 예를 들면 세그멘테이션에 의해서 얻어진 세그멘트들에 관해서 특정세그멘트의 피치정보의 평균값을 얻고, 세그멘트의 피치정보의 얻어진 평균값에 가장 가까운 절대음정축위의 중간스텝만큼의 차이가 있는 음정들중의 하나와 세그멘트의 음정을 식별하고(스텝 SP230). 그 이후에 모든 피치정보를 위한 12스텝음계에 관한 히스토그램을 준비하며 조에 의한 음계에서 각 스텝을 위하여 측정된 무게계수와 각 음계 발생빈도수의 곱의 합을 구하고 특정음향 신호의 조로서 곱의 최대합을 나타내는 조를 결정한다(스텝 SP231).
수정처리에서 CPU(1)는 우선 최종세그멘트의 처리가 아직 완결되지 않았음을 확인하고, 그 다음에 처리대상으로서 취해진 세그멘트를 위해서 식별된 음정이 결정된 조(key)상의 음정에 서로 인접한 음정들로부터 중간스텝만큼 다른 음정둘(예를들어, C-장조상이라면, 미,파,시,도)중의 어떠한 것인지의 여부를 판단하고, 그것이 다른경우라면 CPU(1)는 음정에 어떠한 수정을 하지 않고 처리대상으로서 그다음 세그멘트를 취하여 스텝(SP232)으로 되돌아간다(스텝 SP232∼스텝 SP234).
다른한편, 만약 처리되고 있는 세그멘트에서 식별된 음정이 음정들중의 어떤 것이라면, CPU(1)는 세그멘트의 식별된 음정과 그렇게 측정된 조의 음정위에서 중간스텝만큼 거기로부터 다른 음정사이에 존재하는 피치정보의 요소들의 분류합을 산출한다(스텝 SP235).
예를 들면, 처리되고 있는 세그멘트의 음정이 C장조상에서 미인 경우에 CPU(1)는 처리되는 특정세그멘트에 있는 미와 파에 각각 대응하는 정보세트사이에 존재하는 피치정보의 분포를 발견한다.
이 때문에 이러한 중간스텝 사이에 존재하지 않은 피치정보는 비록 그것이 이 세그멘트내의 피치정보의 부분일지라도 분류합을 결정하기 위해 계산되지는 않게 된다.
그 다음에 CPU(1)는 이 중간스텝의 중간부분상의 피치정보보다 큰 다수의 피치정보요소가 있는지 혹은 이 중간스텝중간부분위의 피치정보보다 더작은 다수의 피치정보 요소가 있는지를 발견하고 절대 음정축위의 많은 요소안에 존재하는 피치정보에 더 가까운 음정을 세그멘트의 음정을 식별한다(스텝 SP236).
식별처리의 결과에 대한 재검토와 수정을 완결하자마자, CPU는 그 처리대상으로서 바로다음 세그멘트를 취하여 상기한 스텝(SP232)으로 되돌아간다.
식별된 음정들이 그것들을 위하여 결정된 조상의 인접한 음정들로부터 중간스텝의 차이가 있는 것들인 경우에 음정들을 검토하도록 시스템이 설계되고 있다는 것은 인접한 음정들로부터 중간스텝만큼의 차이 때문에 식별에 있어 실수의 가능성을 고려한 것이다.
상기한 처리과정의 반복으로, 마지막 세그멘트가 완결될때까지 모든 세그멘트들에 관한 음정들을 검토할 수있고 CPU(1)는 스텝(SP232)에 긍정적인 결과를 얻을 수 있으며 특정처리 프로그램을 끝낸다.
제37도는 한번 식별된 음정을 수정하는 한 예를 나타내며, 여기서 결정된 키이는 C장조이며 피치정보의 평균값에 근거하여 식별된 음정은 미이다.
이 세그멘트는 식별된 음정이 미가 되고 미와 파사이에 피치정보가 존재하고 결과적으로 기간(T1)에 있는 피치정보만이 분류합을 결정하도록 계산되고 미와파사이의 중간부분을 위한 피치정보(PC)의 위아래로 향한 피치정보가 분류합을 산출하도록 계산되도록 수정처리되어 피치정보값(PC)보다 더큰 피치정보가 이 기간(T1)에서 우세하므로 이 세그멘트에 대한 음정은 파에 대한 음정으로 재식별된다.
그러므로, 상기한 실시예는 그것이 인접한 음정들 사이의 차이가 식별된 음정을 위해서 결정된 조상의 중간스텝인 어떠한 음정인 경우에 세그멘트의 음정에 대한 더 상세한 검토를 수행하도록 고안되었기 때문에 각 세그멘트의 음정을 정확하게 식별할 수 있다.
더욱이, 상기한 실시예는 세그멘트를 피치정보의 평균값이 가장 가깝다고 발견되는 음정으로 식별하는 시스템을 나타내지만, 그것은 음정들을 식별하는 또 하나의 방법으로 식별된 음정들에 대한 유사한 검토방법을 적용하는 것도 가능하다.
또한 상기한 실시예는 검토의 대상으로 취해진 두개의 세그멘트들 사이의 중간부분에 있는 피치정보보다 더큰 피치정보와 더 작은 피치정보의 비교볼륨에 따라 음정을 재식별하도록 고안되고 있으나 또다른 방법이 그런 검토를 하기 위해서 이용될 수 도 있다. 예들들면 그 검토는 처리되는 특정세그멘트상의 피치정보로 그런 검토에 대한 대상으로 취해진 두개의 음정들 사이에 있는 피치정보의 가장 빈번한 값이나 평균값에 근거하여 실시될 수도 있다.
그 다음에, 자동채보방식등과 같은 것에 의해 음향신호에 있는 본래의 조를 결정하기 위한 처리에 관해서 제38도에 있는 순서도와 관련하여 상세히 설명한다.
CPU(1)는 상기한 튜닝처리(스텝 SP240)에 의해서 튜닝되는 모든 피치정보로부터 음계상의 히스토그램을 작성한다.
이때에 음계히스토그램은 절대음정축위의 12개의 음계와 관련한 히스토그램을 의미하는데, 즉 C(도), C샤프: D플랫(도#:레b), D(레),…,A(라),A샤프:B플랫(라#:시b), B(시) 그리고 피치정보가 절대음정축위에 존재하지 않는 경우에는 히스토그램은 피치정보가 음정들에 대한 거리에 비례하여 가장 가까운 절대음정축위의 두개의 음정위의 음계에 할당된 값들의 분류합을 나타낸다. 이 이유때문에 한옥타브씩 다른 음정은 똑같은 음정으로 처리되어진다.
그 다음에, CPU(1)는 제39도에서 예시된 각 조와 총계적으로 24키이의 모든것에 곤련한 상기한 음계히스토그램으로 결정된 바대로 무게계수의 곱의 합을 얻는데, 그것은 12개의 장조들인 C장조,D플랫장조,D장조,…,B플랫장조,B장조그리고 12개의 단조키이, A단조, B플랫단조, B단조, …, G단조, A플랫단조이다(스텝 SP241).
더욱이, 제39도는 첫째 칼럼(column)(COL1)에서는 C장조의 무게계수를, 둘째 칼럼(COL2)에서는 A단조의 무게계수를 , 셋째 칼럼(COL3)에서는 D플랫장조의 무게계수를 , 넷째 칼럼(COL4)에서는 B플랫단조의 무게계수를 가리킨다.
다른 조들은 위해서는 시스템은 장조를 위하여는 주음(key note)(도)에서부터 무게계수202021020201을 사용하고 단조를 위하여는 주음(라)에 서부터 무게계수 202201022010를 사용하는 똑같은 처리과정을 적용한다.
여기서, 무게계수는 0보다 다른 무게가 특별한 조를 위해서 임시부호(#,b)없이도 표현될 수 있는 음정들에 주어지고 또한 2는 장조키이와 단조키이에서의 5음계와 7음계의 조화를 위하여, 즉 주음이 장조와 단조 사이에서 일치가 될때 주음으로 부터의 음정차이에 있어서 일치가 있도록 사용되고, 1은 음정에 있어서 차이의 일치가 없는 음계를 위하여 사용되는 그런 방법으로 측정된다.
더욱이, 이런 무게계수는 특정조에서 개개의 음정의 중요도와 일치하는데에 있다.
CPU(1)가 이 방법으로 24조 모두에 대한 제곱함을 구했을때에 그것은 제곱함이 특정음향신호를 위한 조로서 가장 큰 조를 결정하며 그 조를 결정하기 위한 특별한 처리과정을 끝마친다(스텝 SP242).
따라서, 상기한 실시예는 음계 히스토그램을 작성하고 개개의 음정을 위한 음계에 관해서 발생빈도수를 포착하며 발생빈도수와 조에 따라 결정되는 음정의 중요성에 대한 파라미터로서 무게계수와 함께 제곱합을 구하고, 그 제곱합이 음향신호를 위한 조로서 가장 큰 조를 결정하며 결과적으로 시스템은 그런 신호를 위한 조를 정확하게 결정하고 그런 조에 근거하여 식별된 음정을 검토할 수 있으며 그것으로 악보데이타의 정밀성에 대하여 더 개선을 하게 된다 .
더욱이, 무게계수는 상기한 실시예에서 인용된 것들에만 한정되지 않으며, 예를들면 그것은 주음에 더 무거운 무게를 주는데 적당하다.
더욱이, 조를 결정하는 수단은 상기한 것들에만 제한되지 않으며 조의 결정은 제40도에 나타난 처리과정 절차에 의해서 실시될 수도 있다.
이 절차는 제38도에서 스텝(SP241)까지의 절차와 똑같기 때문에 설명을 생략하였다.
CPU(1)가 스텝(SP241)에서 24조를 위한 제곱합을 얻었을때 그것은 장조를 위한 가장 큰 제곱합이 있는 조와 단조를 위한 가장 큰 제곱합이 있는 조를 각각으로 추출한다(스텝 SP243).
그 이후에 CPU(1)는 후보키이에서 속음키이(키이노우트에서 5도 더 높은 키이)가 추출된 장조를 위한 주음의 조와 후보키이에서 하속음키이(즉 주음에서 5도 더 낮은 키이)가 추출된 장조키이를 위한 주음키이를 추출하며 후보키이에 있어서 속음키이(즉 주음으로부터 5도 더 높은 키이)가 추출된 단조키이를 위한 주음키이와 후보키이에서 하속음키이(즉 주음으로부터 5도 더 낮은 키이)가 추출된 단조키이를 위한 주음키이도 또한 추출한다(스텝 SP244).
CPU(1)는 마지막으로 최초 노우트와(즉, 최초 세그멘트의 음정) 마지막노우트(즉, 마지막 세그멘트의 음정)사이의 관계에 근거하여 이 방법으로 추출된 여섯 후보키이 총계중에서 하나의 키이를 선택함으로써 적당한 키이를 결정한다(스텝 SP245).
그 시스템은 주음과 속음과 하속음이 악보상의 멜러디에서 빈번하게 발생하며 그것은 주음으로부터 생성되려는 속음노우트와 하속음노우트를 위한 몇몇 경우에 있어서 매우 빈번할 수 있으며 단지 제곱함을 위한 가장 큰 값에 의한 키이의 결정이 실제키이가 아닌 실제키이에 있어서의 속음노우트 혹은 하속음노우트가 주음으로서 기여하는 키이가 되는 결과를 낼수 있다는 사실에 비추어 음향신호를 보유하는 키이로서 즉시 가장 큰 제곱합을 가지고 있는 키이를 결정하지 않도록 고안되어지고 있다.
따라서, 악보에 있어서 최초음과 마지막음이 상기한 바와 같이 키이에 관해서 유일한 관계를 가지고 있으므로, 이 관계에 근거하여 키이에 대한 마지막 결정을 내리도록 고안되어지고 있다.
C장조 키이의 경우에, 예를들면 음악이 노우트들 도, 미, 솔중의 어느하나의 빈번하게 시작하고 도로 끝나거나 또한 다른 키이에서 끝난다고 관찰된다면 음악은 종종 주음으로 끝난다. 따라서, 위에 주어진 실시예에 따른 시스템은 음계히스토그램을 작성하고, 그것으로 각 음계발생빈도수를 포착하며, 그 빈도수와 키이에 따라 결정된 음계의 중요도에 대한 파라미터로서 무게계수가 딸린 제곱합을 구하며, 제곱합에 근거하여 후보키이로서 여섯개의 키이를 뽑아내며, 마지막으로 악보에 있어서의 최초 노우트와 마지막 노우트와 관련된 키이를 결정하기 위하여 키이를 정확하게 결정할 수 있고 그런 키이에 근거하여 식별된 음정을 검토할 수 있으며 악보데이타의 정확성을 더 개선할 수 있다.
더욱이, 위에 언급된 실시예는 장조키이와 단조키이를 위한 최대 제곱합과 함께 키이를 추출하여 여섯개의 후보키이의 총계를 얻도록 고안되어지고 있으나, 장조키이와 단조키이 사이의 차이에 전혀 관계없이 추출되는 최대 제곱합외에 키이들 중에서 추출되는 세개의 후보키이의 총계외의 키이를 최종적으로 결정하는 것이 적당하다.
다음은, 이 처리의 실행으로 채보를 수행하는 자동채보방식에 있어서의 튜닝처리(제3도에 있어서 스텝 SP3)에 관해서 제41도에 있는 상세한 순서도와 관련하여 상세한 설명이 제시된다.
CPU(1)는 첫째 주파수단위인 ㎐로 표현된 입력피치정보를 음계단위인 센트(cent)로 표현된 피치데이타(그 베이스를 형성하는 대수 2로 표현되는 표준음정으로 주어진 음정의 주파수비율 1,200로 증가함으로써 파생된 값)로 전환한다.
이에 관해서는 100센트의 차이는 음정에 있어서 중간스텝차이와 상응한다.
그 이후에 CPU(1)는 센트값이 가장 낮은 두개의 디지트를 형성하는 동일한 수의 값으로 개개의 피치데이타세트의 분류합을 계산하는 제42도에 나타난 바와 같은 히스토그램을 작성한다(스텝 SP251).
특정 구간에 있어서, CPU(1)는 그것이 센트값 99,199,299가 딸린 데이타그룹의 분류합을 발견하기 위한 계산을 완결할 때까지 0,100,200…의 센트값이 있는 데이타를 동일한 데이타로 취급하고, 1,101,201,…의 센트값이 있는 데이타를 동일한 데이타로 취급하며, 2,102,202의 센트값이 있는 데이타를 동일한 데이타로 취급하면서 분류합을 산출하기 위하여 산술연산을 수행한다.
따라서, 시스템은 제42도에 예시된 바대로 일센트만큼 변하는 100센트의 충분한 폭이 있는 피치정보를 위한 히스토그램을 전개시킨다.
이때에, 모두 100센트만큼 다르지만 분류합의 계산을 위하여 동일하게 계산된 피치정보는 중간스텝의 통합시간에 의한 차이를 포함하며 음향신호는 음정에 있어서의 차이를 위한 표준으로서 중간스텝과 완전한 스텝 을 취한다.
따라서, 이 시스템에 의해서 전개된 히스토그램은 어떤 균일한 분포도 하지 않으나, 음향신호를 발생한 가수나 그런신호를 발생한 특수한 악기에 의해서 수용된 음정축에 대응하는 센트값 근처에서 주파수의 피크를 가리킨다.
그 다음은 CPU(1)는 파라미터(i)와 (j)를 0으로 클리어하고 충분한 커다란 값인 A에 파라미터(MIN)을 설정한다(스텝 SP252).
그 다음에 CPU(1)는 통계적분산, VAR을 측정하기 위한 산술연산을 수행하고 센트값(i)주위에 집중하며, 얻어진 히스토그램정보를 이용한다(스텝 SP253).
그 이후에 CPU(1)는 계산에 의해서 얻어진 분산값이 파라미터(MIN)보다 더 큰지의 여부를 판단하고 VAR값이 파라미터보다 작은 경우에 파라미터(MIN)의 값에서 분산값(VAR)을 새롭게 하며 또한 파라미터(i)의 값을 취하도록 파라미터(j)를 변형하고 그 이후에 스텝(SP256)으로 진행한다.
VAR값이 파라미터(MIN)보다 클 경우에는 CPU(1)는 새롭게 하는 작동(스텝 SP254)에서 SP256까지)을 수행하지 않고 스텝(SP256)으로 즉시 진행한다.
그 이후에 CPU(1)는 파라미터(i)가 값 99를 가지는지를 판단하며, 그것이 값에서 다를 경우에는 파라미터(i)를 증대시키며, 그 이후에 상기한 스텝(SP253)으로 되돌아간다(스텝 SP257).
이 방법으로 CPU(1)는 피치정보위에서 얻어진 분류합의 정보로부터 최소분산이 있는 센트정보(j)를 얻는다 .
여기서, 센트정보주위의 분산이 가장 작기 때문에 음향신호의 중심부를 형성하는 모든 중간스텝에 의해서 센트그룹(j,100+j,200+j…)으로 판단되어질 수 있다. 다시 말하면 그것은 센트그룹이 가수나 악기 등을 위하여 음정축을 나타낸다고 해석되어질 수 있다.
따라서, CPU(1)는 이 센트정보값에 의해서 음정축을 미끄러지며 그것에 의해서 이 축을 절대음정의 것에 맞춘다.
우선 CPU(1)는 파라미터(j)가 50센트보다 더 작은지를 판단하며, 즉, 파라미터(j)가 절대음정축과 더 높은 음조 혹은 더낮은 음조에 더가까운지를 판단하며, 파라미터가 더높은 음조의 축에 더가까울 경우에는 CPU(1)는 모든 피치정보를 얻어진 센트값(j)으로 더높은 음조의 축쪽으로 그것을 미끄러지게 함으로써 변형하며, 파라미터가 더낮은 음조의 축에 더가까울 경우에는 CPU(1)는 모든 피치정보를 센트(j)의 얻어진 값으로 더낮은 음조의 축쪽으로 그것을 미끄러지게 함으로써 변형한다.
이 방법으로 음향신호의 축은 절대음정축안으로 거의 정확하게 맞추어지며, 이 방법이로 전개된 피치정보는 다음과정을 위하여 이용된다.
따라서 위에 언급된 실시예는 그 시스템이 세그멘테이션처리나 음정의 식별처리에서 얻어진 정보를 적용하지 않지만 똑같은 축위의 모든 중간스텝에 의하셔 분류합을 발견하기 때문에 음향신호의 근원이 어떤 것일지라도 얻어지려는 악보데이타에 있어서 더높은 정밀성에 도달할 수 있으며, 파라미터로서 분산을 적용함으로써 분류합위의 정보로부터 절대음정축으로부터의 편차량을 탐지할 수 있으며, 편차량으로 음향신호의 음정축을 변형시킬 수 있으며, 따라서 변형된 피치정보는 다음 처리과정을 위해서 이용될 수도 있다.
상기한 실시예에서, 시스템은 분산을 적용시킴으로써 음향신호를 위한 음정축을 얻을 수 있으나, 또다른 통계기술이 축을 위한 탐지과정에 적용될 수도 있다.
더욱이, 상기한 실시예는 튜닝처리에서 통계처리과정에 지배된 피치정보를 위한 단위로서 센트를 이용하며 적용할 수 있는 단위는 이것에만 한정되지 않는다는 것은 말할 필요도 없다.
다음에는, 이 처리과정을 수행함으로써 채보를 수행하는 자동채보방식에 있어서의 피치정보추출(제3도에서 스텝(SP1)참조)에 관하여 더 상세한 설명이 되고 있다. 그런 피치정보추출과정을 위한 상세한 순서도가 제43도에 나타나 있다.
우선, 악보가 붙은 샘플링포인트(s)와 다음 샘플링포인트에 있는 분석창 내부에 위치되는 음향신호y(t)의 N부분(t=0,…,N-1; 여기서 t는 0으로 설정되는 샘플링포인트(s)가 샘플링 포인트수를 나타냄)으로부터, CPU(1)는 악보가 샘붙은 샘플링포인트(s)와 관련하여 γ부분의 양으로 음향신호를 미끄러지게 함으로써 얻어진 음향신호와 상기한 음향신호 y(t)을 나타내는 다음의 방정식에서
Figure kpo00004
나타나는 바와 자기상관함수 Ø(γ)(γ=0,…N-1; μ=0,…N--1γ)를 발견한다(스텝 SP270).
또 이 방법으로 얻어진 자기상관함수 곡선은 제44도에 나타난다.
다음에는 CPU(1)는 N부분을 위한 자기상관함수 Ø(γ)의 값으로부터 0과 다른 편차량으로 자기상관함수 Ø(γ)를 위하여 국부최대값인 최대값을 즉, 샘플링포인트수를 위함 음계로 표현된 바의 음향신호의 피치사이클을 주는 편차량(z)을 탐지하며, CPU(1)는 편차량(z)을 포함하는 총계에 있어서의 세개의 전후편차량 z-1, z, z+1에 관한 자기 상관 함수 Ø(z-1)Ø(z)Ø(z+1)를 추출한다(스텝 SP271).
이 추출을 완결하자마자, CPU(1)는 다음의 방정식에서
p1=Ø(z-1)/(N-z+1) (5)
p2=Ø(z)/(N-z) (6)
p3=Ø(z+1)/(N-z-1) (7)
표시된 방법으로 이러한 자기상관함수 Ø(z-1), Ø(z), Ø(z+1)를 정규화(noramlizing)하기 위한 보간처리를 수행한다(스텝 SP272).
이런 시스템이 이 절차를 이용하는 이유는 여기 설치된 분석창 때문에, 방정식(4)에 따른 장기상관함수를 발견하려는 산술연산이 수행된다면 산출합계의 계산에 있어서 추가되려는 부분의 수 (N-γ부분)는 편차량(γ)이 커짐에 따라 감소하며 편차량(γ)이 확대될 때 동등해져야 하는 자기상관함수를 위한 각 최대값이 가를 위한 부분의 수에 있어서 그런 감소의 영양하에서 제44도에 나타난 바대로 시간이 경과함에 따라 점점 기울어지기 때문이다. 따라서 정규화를 위한 보간처리는 그런영향을 제거하기 위해서 수행된다.
그 다음에 CPU(1)는 다음 방정식으로
γp=z-(p3-p1)/[2(p1-p2)(p2-p3)] (8)
수행된 산술연산을 통해서 제거된 샘플링포인트수의 음계위의 음향신호를 위해서 표현된 피치사이클을 얻는다(스텝 SP273).
여기서 방정식(8)은 편차량(z)을 위한 자기상관값을 통과하는 포물선으로서 그려진 포물선(CUR)위의 최대값을 주는 샘플링포인트수의 악보위에 표현된 바대로 편차량(γp)을 계산하기 위하여 이용되어지며, 그것은 한번 이어진 샘플링포인트수의 악보위에 표현된 음향신호와 편차량(z)전후 각각으로 편차량(z-1)와 (z+1)을 위한 피치사이클을 나타낸다고 간주된다(제44도 참조). 다시말하면, 시스템은 자기상관함수Ø(γ)를 위한 첫번째 최대값 근처의 곡선의 근사값에 있어서 포물선을 그림으로써 포물선에 담겨진 정보로 최대값을 주는 편차량을 추출한다.
이 특징은 최대값이 가장 크게 되는 피치사이클(z)이 만약 발견된다면, 샘플링포인트에서 그 위치만을 분명하게 하고 종래의 접근이 샘플링포인트 사이에 그것이 존재할 때 조차도 국부최대값을 탐지할 수 없었기 때문에 피치정보를 정확하게 추출하기란 지금까지 불가능하다는 부적합성을 피하기 위해서 채택되었으며, 따라서 결과되는 정보는 그 정도로 착오를 포함하며 자기상관함수 Ø(γ)가 각 샘플링포인트에서 얻어지기 때문이다. 더욱이, 자기상관함수 Ø(γ)는 코사인함수로 나타내어질 수 있으며, 그것은 거기에 적용된 매크로린급수전개로 우함수로 나타내어질 수 있고 편차량이 포물선에서 근사값으로 계산되어질지라도 실제 편차량으로부터 거의 차이가 없이도 국부최대값을 주는 편차량이 발견되어질 수 있다면 포물선함수에서와 똑같은 것을 나타내는 것이 가능하다.
fp=fs/γp (9)
샘플링포인트수를 위한 음정과 관련하여 표현된 음향신호의 피치사이클(γp)로부터 피치주파수(fp)를 계산하고 그 다음에 다음과정으로 이동한다(스텝 SP274). 더욱이, (fs)는 샘플링포인트주파수를 나타낸다.
따라서, 상기한 실시예는 최대값이 샘플링포인트 사이에 위치할지라도 자기상관함수의 국부최대값을 발견할 수 있으며 따라서 샘플링포인트주파수를 높이지 않고도 종래의 방법과 비교하여서 더 정확하게 피치주파수를 추출할 수 있으며, 그래서 시스템은 세그멘테이션, 음정식별 및 조결정과 같은 다음처리를 더 정확하게 실행할 수 있다.
상기한 실시예에서는 분석창들의 영향을 없애기 위한 정규화를 위해 보간처리가 피치사이클의 보간전에 수행되지만 그런 정규화 처리를 생략하는 동안 피치사이클의 보간을 실시하는 것도 받아들일 수 있다.
더욱이, 상기한 또다른 실시예는 포물선을 적용시켜서 피치사이클외 수정을 수행하는 시스템을 나타낸다. 그런 수정은 또하나의 함수로 이루어질 수 있다.
예를 들면, 그런 수정은 한번 얻어진 피치주파수에 대응하는 편차량의 다섯개의 전후점을 위한 자기상관함수를 적용시킴으로써 네번째 정도의 우함수로 이루어질 수도 있다. 더욱이, 피치정보를 추출하기 위한 처리과정(제3도에 있어서 스텝 SP1)은 제45도에서 순서도에 나타난 순서에 의해서 수행될 수도 있다. 우선, 악보가 붙은 샘플링포인트(s)와 다음 샘플링포인트에 있는 분석창들 내부에 놓여지는 음향신호 y(t)(t=0,…,N-1,여기서(t)는 0으로 설정되는 샘플링포인트가 있는 견본추출수를 나타냄)의 N-부분으로부터 CPU(1)는 자기상관함수를 발견하고 이 순서를 실시함으로써 CPU(1)는 우선 식(4)에서 표현된 자기상관함수 Ø(γ)(γ=0,…N-1; u=0,…,N-1-γ-1를 산술연산으로 발견한다)(스텝 SP280).
식(4)은 위에 언급된 음향신호(y(t))와 악보가 붙은 샘플링포인트(s)와 관련한(γ)부분의 양으로 음향신호를 미끄러지게 함으로써 얻어진 음향신호를 나타낸다. 더욱이 이 방법으로 얻어진 자기상관함수곡선은 제46A도와 46B도에 각각 나타나 있다.
그 다음에 CPU(1)는 편차량(z)을 탐지하며 그것은 0과 다른 이탈양으로 자기상관함수Ø(γ)를 위한 최대값, 즉 자기상관함수 Ø(γ)의 N-부분의 값으로부터 샘플링포인트수를 위한 악보로 표현된 음향신호를 위한 악보로 표현된 음향신호를 위한 피치사이클을 준다(스텝 SP281).
그 이후에 CPU(1)는 이 편차량(z)을 포함하면서 개개의 전후편차량 (z-1), (z), (z+1)을 위하여 자기상관함수Ø(z-1), Ø(z), Ø(z+1)를 추출하여 다음식으로 표현된 파라미터(A)를 계산한다(스텝 SP282와 283). 더욱이 파라미터(A)는 자기상관함수Ø(z-1), Ø(z), Ø(z-1)를 위한 중량평균이다.
AØ(z-1)+2Ø(z)+Ø(z+1)/4 (10)
이 과정을 완결한 후에 CPU(1)는 편차량(y)와 (y+1)을 위하여 상기상관 함수(0/(y)와 0/(y+1))를 취하고, 그것은 편차량(z)을 위하여 편차량(z/2)의 1/2에 가장 가까운 것이며 다음식에서 나타난 파라미터(B)를 산출한다(스텝 SP284와 SP285).
B={Ø(y)+Ø(y+1)/2} (11)
더욱이 파라미터(B)는 자기상관함수Ø(y)와 Ø(y+1)의 평균값을 나타낸다.
그 이후, CPU(1)는 파라미터(A)와 (B)중에서 어느것이 더큰값을 가지는지를 결정하기 위해서 두개를 비교하며 파라미터(A)가 파라미터(B)보다 더클 경우에는 CPU(1)는 편차량(γp)으로 편차량(z)을 선택한다(스텝 SP286과 SP287).
다른 한편, 파라미터(B)가 파라미터(A)보다 더클 경우에는 CPU(1)는 피치에 대응하는 편차량(γp)으로서 편차량(z/2)을 선택한다(스텝 SP288).
이 방법으로, 시스템은 실제 최대값을 내는 편차량보다 2배 큰 편차량이 샘플링포인트와 거의 정확하게 일치하고 실제 최대값을 내는 편차량은 그것이 파라미터(A)와 (B)의 실제 크기에 근거하여 판단되도록 처리되고 있는 정보가 상기한 그런경우 인지를 판단하기 위하여 사용될 수 있고 편차량의 1/2값이 실제최대값을 내는 편차량에 대응하지 않을 경우에 피치사이클에 대응하는 대로 취해지려한다면 첫째 국부최대값지점 근처에서 자기 상관 함수가 최대값을 내는 함수로서 탐지되는 것에 비추어 피치사이클로서 자기상관함수를 위하여 최대값을 내는 편차량을 직접적으로 이용하지 않도록 고안되어지고 있다.
더욱이, 제46(b)도는 첫째 국부최대값 근처의 값이 최대값으로 탐지되는 경우를 나타내며, 이 경우에 파라미터(A)는 제46(b)도에 나타난 파라미터(B)보다 항상 더크며, 얻어진 편차량(z)은 다음과정에서 이용되려는 피치사이클을 위한 것과 같이 이용된다.
CPU(1)는 이 방법으로 얻어진 샘플링포인트수를 위한 악보로 표현된 피치주파수(γp)로부터 식(9)에 따라 산술연산에 의해서 피치주파수(fp)를 발견한다.
그 다음에 CPU는 다음 과정으로 이동한다(스텝 SP289).
결과적으로 위에 언급된 실시예에서 시스템은 둘째 국부최대값 지점근처의 자기상관함수가 최대값에 도달할 때 조차도 최대값의 발생을 탐지하고 피치사이클에 보간법을 적용하기 위한 샘플링포인트 주파수를 위하여 고안되고 있으며, 따라서 시스템은 샘플링포인트 주파수를 높이지 않고도 과거의 상태와 비교하여 더 높이 정확하게 피치정보를 추출할 수 있으며, 그러므로 시스템은 세그멘테이션, 음정식별처리 그리고 조결정처리와 같은 다음 처리를 실행할 수 있다.
더욱이, 상기한 실시예는 최대값을 내는 편차량이 실제 피크근처의 어떤지점에 대응하는 것인지를 판단하기 위하여 사용된 파라미터(A)와 (B)가 중량평균값인 시스템으로 특징지우지만 다른 파라미터가 그런 판단을 위하여 이용될 수도 있다.
더욱이, 상기한 실시예는 자동채보방식에 적용된 본 발명을 나타내지만 본 발명은 음향신호로부터의 피치정보추출과정을 필요로 하는 여러종류에 장치에도 적용될 수 있다.
더욱이, 위에 언급된 실시예에서, CPU(1)는 주기억장치(3)에 기억된 프로그램에 따라 제3도에 나타난 모든 처리과정들을 실행하지만 시스템은 CPU(1)가 하드웨어구조로 모든 처리과정을 실행하도록 고안될 수도 있다.
예를들면, 제47도에 나타난 바대로, 제2도에서의 대응부와 대응하는 부분들은 똑같은 참조코드로 나타내어지며, 시스템은 음향신호입력장치(8)로부터 전달된 음향신호가 증폭회로(10)를 거쳐서 증폭되며 그 이후에 그것을 프리필터회로(11)를 거쳐서 디지탈/아날로그변환기(12)안으로 급송함으로써 디지탈 신호로 변환되고, 디지탈신호로 그렇게 변환된 음향신호는 피치정보를 추출하기 위한 시그널프로세서(13)에 의하여 자기상관분석을 위하여 처리되며 또한 소프트웨어와 작동하는 처리과정시스템으로 주어지는 파워정보를 추출하도록 제곱값의 합계를 발견하기 위하여 처리되도록 구성된다.
이처럼 하드웨어구성을 위하여 사용되는 서그널프로세서(13)를 위해서 목소리부분에서 신호의 실시간처리를 할 수 있고 주컴퓨터에 있는 CPU(1)를 위하여 설치된 인터페이싱신호를 보유하는 프로세서(예를들어, Nippon Electric Corporation제품 μ PD 7720)을 사용하는 것이 가능하다.
본 발명에 따른 시스템은 파워정보에서 비록 그것들이 있을지라도 소음이나 변동에 영향을 받지않고 매우 정확한 세그멘테이션을 수행하고 조를 잘 결정하며 각 세그멘트의 음정을 정확하게 식별하고 최종악보데이타를 정확하게 발생시킬 수 있다.
더욱이, 본 발명에 따른 시스템은 자기상관함수를 이용함으로 샘플링포인트주파수를 높이지 않고도 과거의 상태와 비교하여서 매우 정확하게 피치정보를 추출할 수 있는 피치추출방법과 피치추출장치를 설치할 수 있다.
더욱이, 본 발명에 따른 시스템은 음정을 식별하는 처리와 같은 후처리의 정확성을 더 개선할 수 있으며 그것에 의해서 최종적으로 작성된 악보데이타의 정확도를 개선할 수 있다 .

Claims (22)

  1. 음향신호를 입력하는 단계와, 전기한 음향신호루부터 피치정보와 파워정보를 추출하는 단계와, 절대음정축으로부터 전기한 음향신호의 편차량에 비례하여 전기한 피치정보를 수정하는 단계와, 전기한 수정된 피치정보에 기초하여 전기한 음향신호를 단일음의 세그멘트로 분할하는 제1분할단계와 전기한 파워정보의 변화에 기초하여 전기한 음향신호를 단일음의 세그멘트로 분할하는 제2분할단계와, 전기한 제1분할단계와 제2분할단계에서 구해진 전기한 양쪽의 세그멘트정보에 기초하여 전기한 음향신호를 분할하는 제3분할단계와, 전기한 피치정보에 대해 절대음정축을 따라 전기한 각각의 세그멘트내에서 전기한 음향신호의 음정을 식별하는 단계와, 연속적인 전기한 세그멘트의 식별된 음정이 동일한지의 여부를 기초로 하여 전기한 음정을 다시 단일음의 세그멘트로 분할하는 제4분할단계와, 전기한 추출된 피치정보에 기초하여 전기한 음향신호의 조를 결정하는 단계와, 전기한 피치정보에 기초하여 전기한 결정된 조에 대해 음계상의 소정음정을 수정하는 단계와, 전기한 세그멘트정보에 기초하여 전기한 음향신호의 박자와 템포를 결정하는 단계와, 전기한 결정된 음정, 음길이, 조, 박자 및 템포 등의 정보로부터 악보데이타를 작성하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  2. 제1항에 있어서, 전기한 피치정보와 파워정보의 전기한 추출후에 전기한 추출된 피치정보와 파워정보의 소음을 제거하는 단계와 보간하는 단계로 더 이루어져 있는 것을 특징으로 하는 자동채보방법.
  3. 제1항에 있어서, 전기한 제2분할단계는, 전기한 파워정보를 소정의 값과 비교하고 전기한 음향신호를 전기한 소정값보다 큰 제1부분으로 분할하여 제1부분을 유효부분으로 인식하고 전기한 음향신호를 전기한 소정값보다 작은 제2부분으로 분할하여 제2부분을 무효부분으로 인식하는 단계와, 전기한 유효부분에 대해 전기한 파워정보의 입상변화점을 추출하는 단계와, 전기한 입상변화점에서 전기한 유효세그멘트를 더작은 부분으로 분할하는 단계와, 전기한 유효부분 및 무효부분 양쪽의 세그멘트의 길이를 측정하는 단계와, 하나의 세그멘트를 형성하기 위해 소정길이보다 짧은 길이의 세그멘트를 다음 세그멘트와 연결하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  4. 제1항에 있어서, 전기한 제2분할단계는 전기한 유효부분에 대한 전기한 파워정보의 입상변화점을 추출하는 단계와, 전기한 추출된 입상변화점에 기초하여 전기한 음향신호를 분할하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  5. 제1항에 있어서, 전기한 제2분할단계는 전기한 음향신호를 소정값보다 큰 제1부분으로 분할하여 전기한 제1부분을 유효부분으로 인식하고 전기한 음향신호를 전기한 소정값보다 작은 제2부분으로 분할하여 전기한 제2부분을 무효부분으로 인식하는 단계와, 전기한 양쪽의 제1 및 제2부분의 길이를 측정하는 단계와, 소정길이보다 짧은 길이의 세그멘트를 앞의 세그멘트와 연결하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  6. 제1항에 있어서, 전기한 제2분할단계는 전기한 파워정보의 입상변화점을 추출하는 단계와 전기한 입상변화점에 대해 전기한 음향신호를 분할하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  7. 제1항에 있어서, 전기한 제2분할단계는 전기한 파워정보의 입상변화점을 추출하는 단계와 전기한 입상변화점에 대해 전기한 음향신호를 분할하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  8. 제1항에 있어서, 전기한 제1분할 단계는, 전기한 추출된 피치정보에 기초하여 각 샘플링포인트에 대하여 시리즈의 길이를 계산하는 단계와, 전기한 시리즈의 계산된 길이가 소정값을 초과하여 연속하는 부분을 검출하는 단계와, 전기한 각 검출된 부분에 관해서 최대시리즈길이를 보유하는 샘플링포인트를 추출하고 전기한 샘플링포인트를 대표점으로 인식하는 단계와, 민접한 두 대표점에서 전기한 리치정보차가 소정값을 초과할 때 그들 사이의 개개의 샘플링포인트에 대한 전기한 대표점사이의 전기한 파워정보의 변동차량을 검출하는 단계와, 변동량의 최대인 전기한 샘플링포인트에서 전기한 음향신호를 분할하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  9. 제1항에 있어서, 전기한 제3분할단계는 전기한 제1분할단계에서 분할된 전기한 각 세그멘트의 길이를 기초로 하여 음표박자의 소정구간에 대응하는 기준길이를 결정하는 단계와, 전기한 기준길이에 기초하여 전기한 제1분할세그멘트를 분할하고 전기한 음표박자의 소정구간보다 긴 분할세그멘트를 다시 세분하여 분할하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  10. 제1항에 있어서, 전기한 음정식별단계는 축상에서 전기한 피치정보의 각 세그멘트와 전기한 절대음정사이의 거리를 계산하는 단계와, 최소거리를 검출하는 단계와 전기한 최소거리의 음정을 전기한 세그멘트의 실제음정으로 인식하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  11. 제1항에 있어서, 전기한 음정식별단계는 전기한 세그멘트의 모든 피치정보의 평균값을 계산하는 단계와, 절대음정축상에서 구해지고 전기한 계산된 평균값에 가장 가까운 전기한 세그멘트의 음정을 특정세그멘트에 대한 실제음증으로 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  12. 제1항에 있어서, 전기한 음정식별단계는 각 세그멘트의 전기한 피치정보의 중간값을 추출하는 단계와, 절대음정축에 대해 전기한 중간값에 가장 가까운 축인 음정을 실제음정으로 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  13. 제1항에 있어서, 전기한 음정식별단계는 전기한 피치정보의 최빈값을 추출하는 단계와, 피치정보의 최빈값이 절대음정축에 가장 가까운 값인 음정을 실제음정으로 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  14. 제1항에 있어서, 전기한 음정식별단계는 각 세그멘트에 대한 전기한 파워정보의 입사이크점상의 피치정보를 추출하는 단계와, 음정축상에서 그 음정으로 전기한 세그멘트의 음정을 전기한 피크점을 보유하는 전기한 피치정보에 가장 가까운 것으로 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  15. 제1항에 있어서, 전기한 음정식별단계는, 각 세그멘트에 대한 분석점에 관해 구해진 시리즈의 길이를 계산하는 단계와, 시리즈의 최대길이를 보유하는 세그멘트를 추출하는 단계와, 전기한 시리즈의 최대길이에 대한 분석점을 보유하는 전기한 피치정보에 의해 절대음정에 대하여 추출된 음정을 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  16. 제1항에 있어서, 전기한 음정식별단계는, 소정값보다 낮은 길이의 세그멘트를 추출하는 단계와, 특정기울기의 피치정보변화의 세그멘트를 추출하는 단계와, 전기한 추출된 세그멘트와 인접 세그멘트 사이의 식별된 음정에 있어서의 차를 검출하는 단계와, 소정값보다 작은 차인 음정을 실제음정으로 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  17. 제1항에 있어서, 전기한 음정식별단계는 조의 음계상에 있어서 반응에 의해 인접음정으로부터 전기한 음정차의 세그멘트를 추출하는 단계와, 조의 음계에 있어서 반음에 의해 전기한 세그멘트의 전기한 식별된 음정과 전기한 음정 사이에 존재하는 전기판 피치정보요소의 합을 분류하는 단계와, 전기한 피치정보요소의 분류합에 의해 전기한 세그멘트의 실제음정을 실제음정을 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  18. 제1항에 있어서, 전기한 조결정단계는, 각각의 절대음정축에 대해 전기한 피치정보의 합을 분류하는 단계와, 전기한 음향신호내의 전기한 음정의 음계의 발생빈도를 추출하는 단계와, 전기한 모든 조에 대해 전기한 음정의 음계의 전기한 추출된 발생빈도와 소정의 무게계수의 제곱합을 계산하는 단계와 최대재곱합을 보유하는 전기한 조를 전기한 음향신호의 실제조로 식별하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  19. 제1항에 있어서, 전기한 피치정보추출단계는, 전기한 입력음향신호의 아날로그신호를 디지탈형태로 변환하는 단계와, 디지탈 형태의 전기한 음향신호의 자기상관함수를 계산하는 단계와, 0이외의 편차량에 의해 전기한 자기상관함수의 국부최대치의 극대치를 부여하는 편차량을 검출하는 단계와, 전기한 편차래스(pass)량을 부여하는 샘플링포인트를 포함하는 다수의 샘플링포인트의 전기한 자기상관함수를 통해 근사곡선을 검출하는 단계와, 전기한 계산된 근사곡선상에서 전기한 자기상관의 국부최대치를 부여하는 편차량을 결정하는 단계와, 전기한 결정된 편차량에 의해 피치주파수를 검출하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  20. 제1항에 있어서, 전기한 피치정보추출단계는, 전기한 입력음향신호의 아날로그신호를 디지탈형태로 변환하는 단계와, 디지탈 형태의 전기한 음향신호의 자기상관함수를 계산하는 단계와, 전기한 계산된 자기상관함수의 최대정보에 의해 피치정보를 검출하는 단계와, 전기한 자기상관함수의 국부최대점이 전기한 측정된 피치정보의 주파수성분의 거의 2배인지의 여부를 판단하는 단계와, 전기한 판단결과가 긍정적이면 전기한 국부최대에 대응하는 실제 피치정보를 출력하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  21. 제1항에 있어서, 전기한 피치정보수정단계는, 전기한 피치정보의 합을 분류하는 단계와, 전기한 분류합의 전기한 피치정보에서 절대음정축으로부터의 편차량을 검출하는 단계와, 전기한 편차량에 의해 전기한 음향신호의 전기한 수정하는 단계로 이루어진 것을 특징으로 하는 자동채보방법.
  22. 음향신호를 입력하는 장치(8)와, 전기한 음향신호를 증폭하는 장치(10)와, 아날로그음향신호를 디지탈형태로 변환하는 장치(12)와, 피치정보와 파워정보를 추출하기 위해 전기한 디지탈음향신호를 처리하는 장치(13)와, 처리프로그램을 기억하는 장치(3)와, 전기한 신호처리프로그램을 제어하는 장치(1)와, 채보를 표시하는 장치(5)로 구성되고, 전기한 신호증폭장치(10)와, 전기한 신호변환장치(12)와, 전기한신호처리장치(13)는 하드웨어구조로 형성되어 있는 것을 특징으로 하는 자동채보장치.
KR1019890002518A 1988-02-29 1989-02-28 자동채보(採譜) 방법 및 그 장치 KR970009939B1 (ko)

Applications Claiming Priority (21)

Application Number Priority Date Filing Date Title
JP63046125A JP2604410B2 (ja) 1988-02-29 1988-02-29 自動採譜方法及び装置
JP63046126A JPH01219889A (ja) 1988-02-29 1988-02-29 ピッチ抽出方法及び抽出装置
JP???63-?46128? 1988-02-29
JP???63-?46118? 1988-02-29
JP???63-?46126? 1988-02-29
JP4612888A JP2604412B2 (ja) 1988-02-29 1988-02-29 自動採譜方法及び装置
JP4611888A JP2604405B2 (ja) 1988-02-29 1988-02-29 自動採譜方法及び装置
JP63-46128 1988-02-29
JP???63-?46112? 1988-02-29
JP63-46127 1988-02-29
JP???63-?46127? 1988-02-29
JP63-46125 1988-02-29
JP???63-?46125? 1988-02-29
JP63-46126 1988-02-29
JP63-46111 1988-02-29
JP4612788A JP2604411B2 (ja) 1988-02-29 1988-02-29 自動採譜方法及び装置
JP63046112A JP2604401B2 (ja) 1988-02-29 1988-02-29 自動採譜方法及び装置
JP4611188A JP2604400B2 (ja) 1988-02-29 1988-02-29 ピッチ抽出方法及び抽出装置
JP63-46112 1988-02-29
JP63-46118 1988-02-29
JP???63-?46111? 1988-02-29

Publications (2)

Publication Number Publication Date
KR890013602A KR890013602A (ko) 1989-09-25
KR970009939B1 true KR970009939B1 (ko) 1997-06-19

Family

ID=27564636

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890002518A KR970009939B1 (ko) 1988-02-29 1989-02-28 자동채보(採譜) 방법 및 그 장치

Country Status (4)

Country Link
EP (1) EP0331107B1 (ko)
KR (1) KR970009939B1 (ko)
AU (1) AU614582B2 (ko)
DE (1) DE68907616T2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100991464B1 (ko) 2010-08-16 2010-11-04 전북대학교산학협력단 자동 노래 채보장치

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3047068B2 (ja) * 1988-10-31 2000-05-29 日本電気株式会社 自動採譜方法及び装置
DE10117870B4 (de) * 2001-04-10 2005-06-09 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren und Vorrichtung zum Überführen eines Musiksignals in eine Noten-basierte Beschreibung und Verfahren und Vorrichtung zum Referenzieren eines Musiksignals in einer Datenbank
JP4698606B2 (ja) 2004-12-10 2011-06-08 パナソニック株式会社 楽曲処理装置
JP2010518428A (ja) * 2007-02-01 2010-05-27 ミューズアミ, インコーポレイテッド 音楽転写
CN109979483B (zh) * 2019-03-29 2020-11-03 广州市百果园信息技术有限公司 音频信号的旋律检测方法、装置以及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4392409A (en) * 1979-12-07 1983-07-12 The Way International System for transcribing analog signals, particularly musical notes, having characteristic frequencies and durations into corresponding visible indicia
US4510840A (en) * 1982-12-30 1985-04-16 Victor Company Of Japan, Limited Musical note display device
GB2139405B (en) * 1983-04-27 1986-10-29 Victor Company Of Japan Apparatus for displaying musical notes indicative of pitch and time value
US4479416A (en) * 1983-08-25 1984-10-30 Clague Kevin L Apparatus and method for transcribing music

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100991464B1 (ko) 2010-08-16 2010-11-04 전북대학교산학협력단 자동 노래 채보장치

Also Published As

Publication number Publication date
EP0331107A3 (en) 1990-01-10
KR890013602A (ko) 1989-09-25
EP0331107B1 (en) 1993-07-21
EP0331107A2 (en) 1989-09-06
DE68907616T2 (de) 1994-03-03
DE68907616D1 (de) 1993-08-26
AU614582B2 (en) 1991-09-05
AU3079689A (en) 1989-08-31

Similar Documents

Publication Publication Date Title
US5038658A (en) Method for automatically transcribing music and apparatus therefore
US8742243B2 (en) Method and apparatus for melody recognition
Molina et al. Evaluation framework for automatic singing transcription
US20110214554A1 (en) Musical score position estimating apparatus, musical score position estimating method, and musical score position estimating program
Yoshii et al. Drum sound recognition for polyphonic audio signals by adaptation and matching of spectrogram templates with harmonic structure suppression
Klapuri Musical meter estimation and music transcription
Nishikimi et al. Musical Note Estimation for F0 Trajectories of Singing Voices Based on a Bayesian Semi-Beat-Synchronous HMM.
KR970009939B1 (ko) 자동채보(採譜) 방법 및 그 장치
JP2017161574A (ja) 音信号処理方法および音信号処理装置
WO2022038958A1 (ja) 楽曲構造解析装置および楽曲構造解析方法
JP2604410B2 (ja) 自動採譜方法及び装置
Viraraghavan et al. Precision of Sung Notes in Carnatic Music.
CN111782864B (zh) 演唱音频分类方法及计算机程序产品、服务器、存储介质
EP0367191B1 (en) Automatic music transcription method and system
Sinith et al. Pattern recognition in South Indian classical music using a hybrid of HMM and DTW
JP2017161572A (ja) 音信号処理方法および音信号処理装置
JP2604411B2 (ja) 自動採譜方法及び装置
JP2604407B2 (ja) 自動採譜方法及び装置
JP2604401B2 (ja) 自動採譜方法及び装置
JP2604414B2 (ja) 自動採譜方法及び装置
JP2713952B2 (ja) 自動採譜方法及び装置
JP2604400B2 (ja) ピッチ抽出方法及び抽出装置
JP2604405B2 (ja) 自動採譜方法及び装置
JPH01219888A (ja) 自動採譜方法及び装置
JP2604413B2 (ja) 自動採譜方法及び装置

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
NORF Unpaid initial registration fee