KR100322706B1 - 선형예측부호화계수의부호화및복호화방법 - Google Patents
선형예측부호화계수의부호화및복호화방법 Download PDFInfo
- Publication number
- KR100322706B1 KR100322706B1 KR1019950031676A KR19950031676A KR100322706B1 KR 100322706 B1 KR100322706 B1 KR 100322706B1 KR 1019950031676 A KR1019950031676 A KR 1019950031676A KR 19950031676 A KR19950031676 A KR 19950031676A KR 100322706 B1 KR100322706 B1 KR 100322706B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- codebook
- lsf
- learning
- quantization
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 239000013598 vector Substances 0.000 claims abstract description 145
- 238000013139 quantization Methods 0.000 claims abstract description 70
- 238000001228 spectrum Methods 0.000 claims abstract description 15
- 238000000926 separation method Methods 0.000 claims description 5
- 230000003595 spectral effect Effects 0.000 claims description 5
- 230000001186 cumulative effect Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 12
- 101100328883 Arabidopsis thaliana COL1 gene Proteins 0.000 description 3
- 101100328892 Arabidopsis thaliana COL4 gene Proteins 0.000 description 3
- 101100237842 Xenopus laevis mmp18 gene Proteins 0.000 description 3
- 101100328890 Arabidopsis thaliana COL3 gene Proteins 0.000 description 2
- 101100328886 Caenorhabditis elegans col-2 gene Proteins 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 238000005311 autocorrelation function Methods 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- HLUXBGATERNGEH-UHFFFAOYSA-N n'-(5-methoxy-3,4-dihydro-2h-chromen-3-yl)-n-(4-nitro-2,1,3-benzoxadiazol-7-yl)-n'-propylbutane-1,4-diamine Chemical compound C1OC2=CC=CC(OC)=C2CC1N(CCC)CCCCNC1=CC=C([N+]([O-])=O)C2=NON=C12 HLUXBGATERNGEH-UHFFFAOYSA-N 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/06—Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
- G10L19/07—Line spectrum pair [LSP] vocoders
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
본 발명은 음성신호의 부호화 및 복호화에 관한 것으로, 선형예측부호화(LPC)계수를 n차 선스펙트럼주파수(LSFs) 계수로 변환하고 상기 LSFs계수를 양자화하는 방법에 있어서, 상기 n차 LSFs벡터를 하위, 중위, 상위 3개의 부벡터로 나누는 단계; 중위부벡터를 중위코드북을 사용하여 양자화하는 단계; 중위부벡터의 최하위 LSF값과 하위부벡터의 LSF값에 따라 복수의 하위코드북 중에 하나의 하위코드북을 결정하고, 결정된 하위코드북을 사용하여 하위부벡터를 양자화하는 단계; 중위부벡터의 최상위 LSF값과 상위부벡터의 LSF값에 따라 복수의 상위코드북 중에 하나의 상위코드북을 결정하고, 결정된 상위코드북을 사용하여 상위부벡터를 양자화하는 단계를 포함한다.
본 발명에 의하면, LSVQ를 사용하여 LSFs를 양자화함으로써, 효율적인 코드북 탐색을 통하여 종래의 24비트/프레임 분리벡터양자화(SVQ)에 비하여 23비트/프레임에서도 평균 스펙트럼왜곡(SD)도 적고 아웃라이어(outlier)에서도 우수한 성능을 나타낸다.
Description
본 발명은 음성신호의 부호화 및 복호화에 관한 것으로, 특히 선형예측부호화 계수의 양자화와 관련된 선스펙트럼주파수 계수의 부호화 및 복호화방법에 관한 것이다.
아날로그신호를 양자화하는 방법에는 스칼라양자화와 벡터양자화가 있다. 스칼라양자화는 PCM, DPCM, ADPCM 등돠 같이 입력신호를 개별적인 값으로 양자화하는 것을 말하며, 벡터양자화는 입력신호를 몇 개의 관련성있는 신호의 열로 보고 이 벡터 자체를 하나의 양자화 기본단위로 삼는 양자화기법을 말한다. 그 벡터양자화의 출력은 입력벡터를 코드북과 비교한 결과인 코드북 인덱스열이다.
벡터양자화는 데이타를 하나의 블럭으로 묶은 벡터 단위로 양자화함으로써 강력한 데이타 압축효과를 얻는 기법으로 영상처리, 음성처리, 팩시밀리 전송, 그리고 기상위성 등을 포함하여 넓은 범위에 걸쳐 유용함을 보여왔다.
보통 벡터양자화를 사용하는 많은 응용분야들은 많은 데이타량의 저장과 큰 전송대역폭을 필요로 한다. 그리고 데이타 압축을 위하여 약간의 손실은 묵인한다. 비율왜곡(Rate Distortion)이론에 의하면 벡터양자화는 스카라양을 양자화하는 종래의 기술에 비하여 훨씬 더 나은 압축성능을 얻을 수 있음을 알 수 있다.
그래서 벡터양자화에 대해 광범위한 연구가 계속해서 진행되고 있다. 벡터양자화기의 성능은 주로 데이타 벡터를 대표할 수 있는 코드북(codebook)에 의존하기 때문에 벡터양자화에 대한 연구는 코드북 작성에 큰 비중을 두고 있다.
코드북 작성기법의 효시는 모든 입력벡터에 대해 K개 코드벡터의 전체 평균왜곡이 규정치 이하가 되도록 코드북을 작성하는 K-means 알고리즘이라 할 수 있으며, 그 후 K-means 알고리즘의 성능을 개선시킨 LBG알고리즘이 나왔다. K-means 알고리즘은 코드북의 크기가 초기에 정해지는 반면에, LBG알고리즘은 전체 평균왜곡이 규정치 이하가 될 때까지 코드북의 크기를 늘여가면서 원하는 크기의 코드북을 작성하는 방식으로, K-means 알고리즘보다 규정왜곡치로 향한 수렴성이 빠르다.
최근의 음성코딩(SPEECH CODING) 분야에서는, 적은 비트를 할당하여 선형예측부호화(Linear Predictive Coding; LPC) 계수를 양자화하려는 많은 연구가 이루어졌다. LPC계수는 직접 양자화하기에는 너무 변화가 심하므로 이를 선스펙트럼주파수(Line Spectrum Frequencies; LSFs)계수로 변환시킨 후 양자화하며, 이를 양자화하는 방법은 다음과 같이 다양하다.
우선 스칼라(Scalar) 양자화방법은 각 LSFs를 개별적으로 양자화하며, 이에 따라 양질의 음성을 나타내기 위해서는 적어도 32비트/프레임(bits/frame)이 요구된다. 하지만 4.8K bps(bits per sec) 이하의 대부분의 음성부호화기(speech coder)들은 LSFs에 24비트/프레임 이상을 할당하지 않는다.
따라서, 비트수를 줄이기 위하여 여러 가지 벡터양자화(Vector Quantization) 알고리즘이 개발되었다. 벡터양자화를 위해서는 먼저 학습데이타로 기준코드북을 만들어야 하므로, 벡터양자화 기법은 프레임당 비트의 수는 줄일 수 있으나, 다음과 같은 두가지 제약이 따른다.
(1) 코드북을 저장하는데 사용되는 메모리의 양
(2) 코드벡터를 찾아내는데 사용되는 시간
위의 두가지 문제를 해결하기 위해서 Paliwal과 Atal은 분리벡터양자화(Split Vector Quantization; SVQ) 방법을 제안하였다. 이 방법에서는 LSFs를 세 개의 부분으로 나누고, 각 부분을 독립적으로 양자화함으로써, 메모리와 시간을 절약할 수 있었다.
분리벡터양자화(SVQ) 방법에서는 10차 LSFs 벡터를 다음과 같이하위(lower), 중위(middle), 및 상위(upper) 3개의 부벡터로 나눈다.
{(ω1, ω2, ω3), (ω4, ω5, ω6), (ω7, ω8, ω9, ω10)}
각 부벡터들의 양자화된 형태는 다음과 같이 표기된다.
분리벡터양자화는 다음의 두 단계에 의하여 LSFs 벡터를 양자화한다.
(1) 우선 중위코드벡터를 양자화한다.
(2) 하위 및 상위코드벡터는 코드북(coodbook) 내에서 다음의 식과 같은 순차성을 만족하는 것만을 선택하여 양자화한다.
따라서 중위코드벡터이 결정된 후에는 하위코드벡터들 중에서인 것과 상위코드벡터들 중에서인 것은 사용되지 않으며, 결과적으로 벡터양자화 탐색공간을 줄여 음질이 저하되는 문제점이 있었다. 즉, 분리벡터양자화(SVQ)에서는 LSFs의 순차성(the ordering property of LSFs)이 무시되는 코드벡터가 다수 존재하여 벡터양자화 탐색공간이 좁아지는 단점이 있었다.
탐색공간의 효율적인 사용을 위하여 인접한 LSFs 간의 차이를 양자화하는 방법도 제안되었으나, 양자화 에러가 상위 LSFs로 전파되면서 좋지 못한 성능을 나타내었다.
따라서, 본 발명의 목적은 음성부호화에서, 선형예측부호화(LPC)계수를 n차의 선스펙트럼주파수(LSFs) 계수로 변환하고, 그 LSFs 계수를 벡터양자화하기 위해요구되는 코드북을 학습하는 방법을 제공하는데 있다.
본 발명의 다른 목적은 복수의 부벡터로 분할된 LSFs를 양자화함에 있어서 LSFs들 서로간의 연관성에 의존하여 부호화되도록 하기 위한 부호화방법을 제공하는데 있다.
본 발명의 또 다른 목적은 LSFs 서로간의 연관성에 의존하여 부호화된 코드북 인덱스를 LSFs로 복원하기 위한 복호화방법을 제공하는데 있다.
상기의 목적을 달성하기 위한 본 발명에 의한 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법은,
음성부호화에서, 선형예측부호화(LPC) 계수를 n차의 선스펙트럼주파수(LSFs) 계수로 변환하고, 상기 LSFs 계수를 벡터양자화하기 위해 요구되는 코드북을 학습하는 방법에 있어서,
상기 n차 LSFs벡터를 하위, 중위, 및 상위 3개의 부벡터로 분리하는 벡터분리단계; 중위부벡터를 중위코드북(COM)으로 학습하는 COM학습단계; 중위부벡터의 최하위 LSF값과 하위부벡터의 LSF값의 연관성에 의존하여 하위부벡터를 복수의 하위코드북(COL)으로 학습하는 COL학습단계; 및 중위부벡터의 최상위 LSF값과 상위부벡터의 LSF값의 연관성에 의존하여 상위부벡터를 복수의 상위코드북(COU)으로 학습하는 COU학습단계를 포함함을 특징으로 한다.
상기의 다른 목적을 달성하기 위한 본 발명에 의한 선형예측부호화계수의 부호화방법은,
음성부호화에서, 선형예측부호화(LPC) 계수를 n차의 선스펙트럼주파수(LSFs)계수로 변환하고, 상기 LSFs 계수를 양자화하는 방법에 있어서,
상기 n차 LSFs벡터를 하위, 중위, 및 상위 3개의 부벡터로 나누는 벡터분리단계; 중위부벡터를 중위코드북(COM)을 사용하여 양자화하여 제1인덱스를 생성하는 중위부벡터양자화단계; 중위부벡터의 최하위 LSF값과 하위부벡터의 LSF값에 따라 복수의 하위코드북 중에 하나의 하위코드북을 결정하고, 결정된 하위코드북을 사용하여 하위부벡터를 양자화하여 제2인덱스를 생성하는 하위부벡터양자화단계; 중위부벡터의 최상위 LSF값과 상위부벡터의 LSF값에 따라 복수의 상위코드북 중에 하나의 상위코드북을 결정하고, 결정된 상위코드북을 사용하여 상위부벡터를 양자화하여 제3인덱스를 생성하는 상위부벡터양자화단계; 및 상기 제1, 제2, 및 제3인덱스를 전송하는 단계를 포함함을 특징으로 한다.
상기의 또 다른 목적을 달성하기 위한 본 발명에 의한 선형예측양자화계수의 복호화방법은,
부호화기에서 n차 LSFs벡터를 하위, 중위, 및 상위부벡터로 나누어 각각 양자화하여 생성된 제1, 제2, 및 제3인덱스를 이용하여 선스펙트럼주파수(LSFs) 계수로 복원시키기 위한 복호화방법에 있어서,
중위코드북을 사용하여 제1인덱스에 해당하는 코드벡터를 선택하여 양자화된 중위부벡터를 생성하는 중위부벡터생성단계; 상기 중위부벡터생성단계에서 생성된 중위부벡터의 최하위 LSF값에 따라 복수의 하위코드북 중에 하나의 하위코드북을 결정하고, 결정된 하위코드북을 사용하여 제2인덱스에 해당하는 코드벡터를 선택하여 양자화된 하위부벡터를 생성하는 하위부벡터생성단계; 및 상기 중위부벡터생성단계에서 생성된 중위부벡터의 최상위 LSF값에 따라 복수의 상위코드북 중에 하나의 상위코드북을 결정하고, 결정된 상위코드북을 사용하여 제3인덱스에 해당하는 코드벡터를 선택하여 양자화된 상위부벡터를 생성하는 상위부벡터생성단계를 포함함을 특징으로 한다.
이하에서 첨부한 도면을 참조하여, 본 발명을 더욱 자세하게 설명하고자 한다.
제1도는 본 발명에 의한 부호화 및 복호화에 사용되는 제1분류기(first classifier)를 도시한 도면이다. 제1분류기(11)는 입력X의 값에 따라 네 개의 코드북 (COL1∼COL4)(13) 중에서 하나의 코드북을 선택하도록 하는 역할을 하며, 학습(training), 부호화(encoding), 및 복호화(decoding) 과정에서 공통으로 사용된다.
즉 제1분류기에서 X가라 할 때, 제1분류기는가 1080Hz보다 작으면 COL1을 선택하게 하고,가 1080Hz보다 같거나 크고 1200Hz보다 작으면 COL2를 선택하게 하고,가 1200Hz보다 같거나 크고 1321Hz보다 작으면 COL3를 선택하게 하고, 그리고가 1321Hz보다 같거나 크면 COL4를 선택하게 한다.
제2도는 본 발명에 의한 부호화 및 복호화에 사용되는 제2분류기(second classifier)를 도시한 도면이다. 제2분류기(21)도 입력 Y의 값에 따라 네 개의 코드북(COU1∼COU4)(23) 중에서 하나의 코드북을 선택하도록 하는 역할을 하며, 학습,부호화 및 복호화과정에서 공통으로 사용된다.
즉 제2분류기에서 Y가라 할 때, 제2분류기는가 1818Hz보다 작으면COU1을 선택하게 하고,가 1818Hz보다 같거나 크고 1947Hz보다 작으면 COU2를 선택하게 하고,가 1947Hz보다 같거나 크고 2079Hz보다 작으면 COU3를 선택하게 하고, 그리고가 2079Hz보다 같거나 크면 COU4를 선택하게 한다.
제3도는 본 발명에 의한 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법을 설명하기 위한 도면이다.
먼저 학습데이타에 대한 LSFs의 결합분포(joint distribution)를 알아보기 위하여, 제6A도 및 제6B도를 참조한다. 제6A도는 학습데이타에대한 ω4와 ω3의 결합분포를 나타내는 도면이며, 제6B도는 학습데이타에 대한 ω6와 ω7의 결합분포를 나타내는 도면이다.
제6A도에 도시된 바와 같이 ω3값은 ω4값에 따라서 상대적으로 변화한다. 예를 들어, ω4값이 1,080Hz보다 작은 구간에 존재하면 ω3값은 399Hz와 1,004Hz 사이에서 변화하며, ω4값이 1,080Hz와 1,200Hz 사이에 존재하면 ω3값은 486Hz와 1,095Hz 사이에서 변화한다. 따라서 ω3값이 ω4값의 구간에 따라 제한을 받으므로, 이미 ω4값을 알고 있으면 ω3값의 모든 범위를 탐색할 필요없이 제한된 범위만을 탐색하면 된다.
표1은 ω4값의 범위에 따른 ω1, ω2,ω3의 평균값을 나타낸다. 표1에 나타낸 바와 같이 ω1,ω2,ω3각각의 평균값은 ω4값의 범위에 따라 다름을 알 수 있다. 따라서 (ω1,ω2,ω3)을 독자적으로 학습시키기보다는 ω4값의 범위와 연결(link)시켜 학습시키는 것이 훨씬 효율적임을 알 수 있다.
표 1
따라서, 본 발명에서는 ω4값의 범위를 NL개의 클래스로 나누고(NL=4), ω4의 값이 속하는 클래스에 따라 (ω1,ω2,ω3)을 학습하는 방식을 따른다.
ω4값의 범위를 4개의 클래스로 나누는 기준은 다음의 식과 같이 각 클래스에서의 ω4값의 범위에 대한 누적분포확률이 같아지도록 한다.
P(ω4< 1080Hz) = P(1080Hz ≤ ω4< 1200Hz)
= P(1200Hz ≤ ω4< 1321Hz) = P(1321Hz ≤ ω4)
상기의 식에서 P(xHz ≤ ω4< yHz)는 ω4의 값이 x Hz와 y Hz 사이에 존재할 확률을 말한다.
또한, 제6B도에 도시된 바와 같이 ω7값도 ω6값에 따라서 상대적으로 변화하며, (ω7,ω8,ω9,ω10) 각각의 평균값도 ω6값의 범위에 따라 다르게 나타난다. 따라서, (ω7,ω8,ω9,ω10)도 독자적으로 학습시키기보다는 상기에 설명한 방법과 동일한 방법으로 ω6값의 범위와 연결(link)시켜 학습시키는 것이 훨씬 효율적임을 알 수 있다.
따라서, 본 발명에서는 ω6값의 범위도 Nu개의 클래스로 나누고(Nu=4), ω6의 값이 속하는 클래스에 따라 (ω7,ω8,ω9,ω10)을 학습하는 방식을 따른다. ω6값의 범위를 4개의 클래스로 나누는 기준은 다음의 식과 같이 각 클래스에서의 ω6값의 범위에 대한 누적분포확률이 같아지도록 한다.
P(ω6< 1818 Hz) =P(1818 Hz ≤ω6< 1947 Hz)
= P(1947 Hz ≤ ω6< 2079 Hz) = P(2079 Hz ≤ω6)
여기서, P(xHz ≤ ω6< yHz)는 ω6의 값이 x Hz와 y Hz 사이에 존재할 확률을 말한다.
본 발명에 의한 벡터양자화의 학습방법을 제3도를 참조하여 설명하면 다음과 같다.
(1) 입력 LSFs를 하위부벡터(307), 중위부벡터(301), 및 상위부벡터(309)로 분류한다.
(2) 중위 LSFs 부벡터(301)를 LBG알고리즘을 이용하여 중위코드북인COM(Codebook of Middle subvectors)(31)으로 학습한다.
(3) 학습데이타의 ω4값의 범위를 NL개의 클래스로 나누고(NL=4), 각 클래스에 해당하는 (ω1,ω2,ω3)을 분류한다.
(4) ω4값(303)에 따라 제1분류기(33)에 의하여 선택된 클래스에 따라 (ω1,ω2,ω3)(307)을 NL개의 하위코드북인 COL(Codebook of Lower subvector)(37)로 학습한다.
(5) 학습데이타의 ω6값의 범위를 Nu개의 클래스로 나누고(Nu=4), 각 클래스에 해당하는 (ω7,ω8,ω9,ω10)을 분류한다.
(6) ω6값(303)에 따라 제2분류기(35)에 의하여 선택된 클래스에 따라 (ω7,ω8,ω9,ω10)(309)을 NU개의 상위코드북인 COU(Codebook of Upper subvector)(39)로 학습한다.
즉, 중위코드북인 COM은 LBG알고리즘에 의하여 일반적인 분리벡터양자화와 마찬가지로 형성되며, 하위 및 상위코드북인 COL 및 COU는 제1분류기 및 제2분류기에 의하여 ω4값 및 ω6값의 범위에 따라 각각 선택되는 4가지 종류의 코드북으로 나누어 형성된다.
제4도는 본 발명에 의한 부호화방법을 설명하기 위한 도면이다.
부호화기는 입력된 10차 LSFs(401,407,409)를 세 개의 코드북 인덱스(제1,제2, 제3인덱스)(411,412,413)로 변환시키고, 그 코드북 인덱스를 전송하는 역할을 한다.
우선 10차 LSFs를 (3,3,4)차의 부벡터로 나누고, 가운데 3개의 LSFs (ω4,ω5,ω6)(401)를 양자화하여을 결정한다. (ω1,ω2,ω3)(407) 및 (ω7,ω8,ω9,ω10)(409)은값 및값에 따라서 제1분류기(43) 및 제2분류기(45)에 의하여 각각 알맞은 코드북이 선택된 후 양자화된다.
COL(47)과 COU(49)는 각각 4가지 종류가 존재하며, 그들 중에서 어떤 코드북이 사용될지는 COM 내의 어떤 코드벡터가 결정되는가에 따라 달라진다.
첫째로, 중간 LSFs(ω4,ω5,ω6)(401)는 COM(41)을 사용하여 양자화되고, 그에 해당하는 코드워드인덱스(제1인덱스)(411)를 얻는다. 가장 근접한 코드벡터를 구하기 위해서 다음과 같은 가중 유클리드 거리치(weighted Euclidean distance measure) d(ω,)를 사용한다.
여기서, ω는 양자화되기 전의 본래의 LSFs이고,는 양자화 후에 얻게 될 COM 내에 보관된 코드벡터의 값이며, ωi와 i는 ω와의 i번째 LSF이다.
여기서, if COL : i = 1,2,3
if COM : i = 4,5,6
if COU : i = 7,8,9,10
i번째 LSF의 가변가중치함수(variable weight function) v(i)는 다음과 같다.
여기서, ω0= 0이고 ωp+1= fs/2 (fs는 샘플링 주파수)이다. 이 함수는 포만트주파수(formant frequencies)에 가중치를 두어, 이 함수를 사용하지 않은 경우에 비해서 음질을 향상시킨다.
둘째로, 이미 양자화된를 이용하여 제1분류기(43)를 통하여 어떤 COL을 사용할지를 결정한다. COL의 종류가 결정된 후에는 첫 번째 과정과 유사하게 (ω1,ω2,ω3)을 양자화하여 제2인덱스(412)를 구할 수 있다.
값에 따른 COL의 결정은 제1도에 도시된 제1분류기에 의하여 수행되며, 제1도에 표기된 X는를 의미한다. 즉 제1분류기는가 1080Hz보다 작으면 COL1을 선택하고,가 1080Hz보다 같거나 크고 1200Hz보다 작으면 COL2를 선택하고,가 1200Hz보다 같거나 크고 1321Hz보다 작으면 COL3를 선택하고, 그리고가 1321Hz보다 같거나 크면 COL4를 선택한다.
마지막으로, 상기와 같은 방법으로과 제2도에 도시된 제2분류기를 사용하여 어떤 COU를 사용할지를 결정하고, 그에 따라 제3인덱스(413)를 구하여, 제1, 제2, 및 제3인덱스를 전송한다. 또한 어떤 COL과 COU가 선택되어지는가는 제1인덱스(411)를 통하여 구할 수 있으므로 부가적인 비트를 전송할 필요가 없다.
즉, 제4도를 참조하여, 본 발명에 의한 양자화과정을 요약하면 다음과 같다.
(1) 우선 중위코드벡터(401)를 양자화하여을 결정한다.
(2) 하위 및 상위코드벡터(407,409)는 각각와의 범위에 따라 그에 해당하는 종류의 코드북(47,49)을 선택하여 양자화한다.
제5도는 본 발명에 의한 복호화방법을 설명하기 위한 도면이다. 복호화기는 부호화기로부터 전송된 세 개의 코드북 인덱스(제1, 제2, 제3인덱스)(511,512,513)를 양자화된 10차 LSFs(501,507,109)로 복원시키는 역할을 한다.
우선 제1인덱스(511)로 COM(51)을 이용하여 가운데 3개의 LSFs(501)를 결정하고,(507)과(509)은와을 제1분류기(53)와 제2분류기(55)에 각각 통과시켜 알맞은 코드북(57,59)을 선택한 후, 선택된 코드북을 이용하여 제2인덱스(512)와 제3인덱스(513)에 의하여 복원된다.
즉, 복호화과정을 설명하면 다음과 같다. COM(51) 내의 제1인덱스 코드벡터를 선택함으로써(501)을 쉽게 구할 수 있다.가 결정되면 어떤 COL을 사용할지를 제1분류기(53)에 의해서 알 수 있고,가 결정되면 어떤 COU를 사용할지를 제2분류기(55)에 의해서 알 수 있으므로. 제2인덱스(512)와 제3인덱스(513)에 해당하는 코드벡터를 선택하면 복호화과정을 마칠 수 있다.
다음으로, 본 발명에 의한 효과를 설명하기 위한 시험데이타가 제시된다. 본 발명에 의한 벡터양자화를 링크된 분리벡터양자화(Linked Split VectorQuantization; LSVQ)라 칭한다.
LSVQ의 성능을 측정하기 위하여, 10명으로부터 수집한 250개의 한국어 음성(20분)을 학습용 음성데이타로 사용하였으며, 잡음이 있는 한국어 음성과 영어 음성, 그리고 잡음이 없는 한국어 음성(1분)을 시험데이타로 사용한다. 음성데이타는 20ms마다 자기상관함수(autocorrelation function)에 근거한 10차 LPC분석을 거치며, 다시 LPC계수는 LSFs로 변환된다. LSFs는 효율적인 양자화를 위하여 (3,3,4) 차원을 갖는 3개의 부벡터로 분리된다.
LSVQ의 성능을 종래의 분리벡터양자화(SVQ)와 차등LSF 분리벡터양자화(differential LSFs split vector quantizer; DSVQ) 등과 비교하였다. 성능평가는 스펙트럼왜곡치(Spectral Distortion(SD) measure)를 사용하였다. i번째 프레임의 스펙트럼왜곡치(SD)는 다음과 같이 표시된다.
여기서, Pj는 원레 LSF의 전력스펙트럼(power spectrum of the original LSF)을 나타내며,는 양자화된 LSF의 전력스펙트럼(power spectrum of the quantized LSF)을 나타낸다. 사람 귀의 특성에 맞춰서 a는 125Hz, b는 3400Hz가 선택된다.
표2는 LSVQ의 성능을 평가하기 위하여 여러 가지 비트율(bit rate)에 대하여 평균SD(dB) 및 아우트라이어 퍼센트(outlier percentage)를 측정한 값을 나타낸 표이다. COL과 COU는 COM 내의 어떤 코드벡터가 결정되는가에 따라 민감하게 변화하므로, COM에는 COL과 COU에서보다 더 많은 비트를 할당하였다. 예를 들어, 24비트/프레임의 경우 COL과 COU에는 각각 8비트와 7비트를 할당했지만, COM에는 9비트를 할당하여 정확한 중간코드벡터가 선택되도록 한다.
표2
표3
표3은 본 발명에 의한 LSVQ와 종래의 다른 분리벡터양자화 알고리즘과의 성능을 비교하기 위하여, 24비트/프레임에서의 LSVQ와 다른 분리벡터양자화 알고리즘의 평균SD(dB) 및 아우트라이어 퍼센트를 측정한 값을 나타낸 표이다. 본 발명에 의한 LSVQ의 평균SD는 다른 알고리즘에 비하여 더 낮고, 아우트라이어 퍼센트(outlier percentage)에서도 더 우수함을 알 수 있다.
표2와 표3을 통하여 LSVQ는 23비트/프레임에서 24비트/프레임의 분리벡터양자화나 차등분리벡터양자화보다 성능이 더 우수함을 알 수 있다.
표4는 24비트/프레임에서의 분리벡터양자화(SVQ)와 LSVQ의 코드북 사용율을 나타낸 표이다. 분리벡터양자화는 코드북의 86.93% 뿐이 사용되지 않았으나 LSVQ는 97.77%를 사용함으로써 훨씬 정확한 코드벡터로 양자화됨을 알 수 있어, LSVQ가 분리벡터양자화보다 우수한 성능을 나타내는 근거가 된다. 즉, 본 발명에 의한 벡터양자화방법(LSVQ)에서는 분리벡터양자화에서 시용하지 못하던 공간도 탐색 가능하도록 함으로써 성능향상을 얻을 수 있다.
표4
상술한 바와 같이 본 발명에 의하면, LSVQ를 사용하여 LSFs를 양자화함으로써, 효율적인 코드북 탐색을 통하여 종래의 24비트/프레임 분리벡터양자화(SVQ)에 비하여 23비트/프레임에서도 평균 스펙트럼왜곡(SD)도 적고 아웃라이어(outlier)에서도 우수한 성능을 나타낸다.
제1도는 본 발명에 의한 제1분류기(first classifier)를 도시한 도면
제2도는 본 발명에 의한 제2분류기(second classifier)를 도시한 도면
제3도는 본 발명에 의한 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법을 설명하기 위한 도면
제4도는 본 발명에 의한 부호화방법을 설명하기 위한 도면
제5도는 본 발명에 의한 복호화방법을 설명하기 위한 도면
제6A도는 학습데이타에 대한 ω4와 ω3의 결합분포를 나타내는 도면
제6B도는 학습데이타에 대한 ω6와 ω7의 결합분포를 나타내는 도면
Claims (10)
- 음성부호화에서, 선형예측부호화(LPC) 계수를 n차의 선스펙트럼주파수(LSFs) 계수로 변환하고, 상기 LSFs 계수를 벡터양자화하기 위해 요구되는 코드북을 학습하는 방법에 있어서,상기 n차 LSFs벡터를 하위, 중위, 및 상위 3개의 부벡터로 분리하는 벡터분리단계;중위부벡터를 중위코드북(COM)으로 학습하는 COM학습단계;중위부벡터의 최하위 LSF값과 하위부벡터의 LSF값의 연관성에 의존하여 하위부벡터를 복수의 하위코드북(COL)으로 학습하는 COL학습단계; 및중위부벡터와 최상위 LSF값과 상위부벡터와 LSF값의 연관성에 의존하여 상위부벡터를 복수의 상위코드북(COU)으로 학습하는 COU학습단계를 포함함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 제1항에 있어서, 프레임당 코드북에 대한 비트할당은하위코드북, 중위코드북, 및 상위코드북 중에 중위코드북에 제일 많은 비트를 할당함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 제1항에 있어서, 상기 COM학습단계는LBG알고리즘을 이용함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 제1항에 있어서, 상기 COL학습단계는중위부벡터의 최하위 LSF값의 범위를 복수개의 클래스로 분류하는 제1단계; 및상기 분류된 각 클래스에 해당하는 중위부벡터의 최하위 LSF값과 하위부벡터의 LSF값과의 결합분포에 따라, 하위부벡터를 클래스 개수만큼의 하위코드북(COL)으로 학습하는 제2단계를 포함함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 제4항에 있어서, 상기 제1단계는분류된 각 클래스에서 중위부벡터의 최하위 LSF값의 범위에 대한 누적분포확률이 서로 같도록 클래스를 분류함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 제1항에 있어서, 상기 COU학습단계는중위부벡터의 최상위 LSF값의 범위를 복수개의 클래스로 분류하는 제1단계; 및상기 분류된 각 클래스에 해당하는 중위부벡터의 최상위 LSF값과 상위부벡터의 LSF값과의 결합분포에 따라, 상위부벡터를 클래스 개수만큼의 상위코드북(COU)으로 학습하는 제2단계를 포함함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 제6항에 있어서, 상기 제1단계는분류된 각 클래스에서 중위부벡터의 최상위 LSF값의 범위에 대한 누적분포확률이 서로 같도록 클래스를 분류함을 특징으로 하는 선형예측부호화계수의 벡터양자화를 위한 코드북 학습방법.
- 음성부호화에서, 선형예측부호화(LPC) 계수를 n차의 선스펙트럼주파수(LSFs) 계수로 변환하고, 상기 LSFs 계수를 양자화하는 방법에 있어서,상기 n차 LSFs벡터를 하위, 중위, 및 상위 3개의 부벡터로 나누는 벡터분리단계;중위부벡터를 중위코드북(COM)을 사용하여 양자화하여 제1인덱스를 생성하는 중위부벡터양자화단계;중위부벡터의 최하위 LSF값과 하위부벡터의 LSF값에 따라 복수의 하위코드북 중에 하나의 하위코드북을 결정하고, 결정된 하위코드북을 사용하여 하위부벡터를 양자화하여 제2인덱스를 생성하는 하위부벡터양자화단계;중위부벡터의 최상위 LSF값과 상위부벡터의 LSF값에 따라 복수의 상위코드북 중에 하나의 상위코드북을 결정하고, 결정된 상위코드북을 사용하여 상위부벡터를양자화하여 제3인덱스를 생성하는 상위부벡터양자화단계; 및상기 제1, 제2, 및 제3인덱스를 전송하는 단계를 포함함을 특징으로 하는 선형예측부호화계수의 부호화방법.9
- 제8항에 있어서, 상기 제1, 제2, 및 제3인덱스를 생성하는 양자화단계에서가장 근접한 코드벡터를 구하기 위해서 다음의 식과 같은 가중 유클리드 거리치 d(ω,)를 사용함을 특징으로 하는 선형예측부호화계수의 부호화방법.여기서, v(i)는 i번째 LSF의 가변가중치함수, ω는 양자화되기 전의 LSFs,는 양자화 후에 코드북 내에 보관된 코드벡터의 값, 그리고 ωi와는 ω와의 i번째 LSF이며,여기서, ω0= 0, ωp+1= fs/2 (fs는 샘플링 주파수)이다.
- 부호화기에서 n차 LSFs벡터를 하위, 중위, 및 상위부벡터로 나누어 각각 양자화하여 생성된 제1, 제2, 및 제3인덱스를 이용하여 선스펙트럼주파수(LSFs) 계수로 복원시키기 위한 복호화방법에 있어서,중위코드북을 사용하여 제1인덱스에 해당하는 코드벡터를 선택하여 양자화된 중위부벡터를 생성하는 중위부벡터생성단계;상기 중위부벡터생성단계에서 생성된 중위부벡터의 최하위 LSF값에 따라 복수의 하위코드북 중에 하나의 하위코드북을 결정하고, 결정된 하위코드북을 사용하여 제2인덱스에 해당하는 코드벡터를 선택하여 양자화된 하위부벡터를 생성하는 하위부벡터생성단계; 및상기 중위부벡터생성단계에서 생성된 중위부벡터의 최상위 LSF값에 따라 복수의 상위코드북 중에 하나의 상위코드북을 결정하고, 결정된 상위코드북을 사용하여 제3인덱스에 해당하는 코드벡터를 선택하여 양자화된 상위부벡터를 생성하는 상위부벡터생성단계를 포함함을 특징으로 하는 선형예측양자화계수의 복호화방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019950031676A KR100322706B1 (ko) | 1995-09-25 | 1995-09-25 | 선형예측부호화계수의부호화및복호화방법 |
US08/710,943 US5822723A (en) | 1995-09-25 | 1996-09-24 | Encoding and decoding method for linear predictive coding (LPC) coefficient |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019950031676A KR100322706B1 (ko) | 1995-09-25 | 1995-09-25 | 선형예측부호화계수의부호화및복호화방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR970019119A KR970019119A (ko) | 1997-04-30 |
KR100322706B1 true KR100322706B1 (ko) | 2002-06-20 |
Family
ID=19427767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019950031676A KR100322706B1 (ko) | 1995-09-25 | 1995-09-25 | 선형예측부호화계수의부호화및복호화방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5822723A (ko) |
KR (1) | KR100322706B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100647290B1 (ko) | 2004-09-22 | 2006-11-23 | 삼성전자주식회사 | 합성된 음성의 특성을 이용하여 양자화/역양자화를선택하는 음성 부호화/복호화 장치 및 그 방법 |
US8630849B2 (en) | 2005-11-15 | 2014-01-14 | Samsung Electronics Co., Ltd. | Coefficient splitting structure for vector quantization bit allocation and dequantization |
KR101512320B1 (ko) | 2008-01-02 | 2015-04-23 | 삼성전자주식회사 | 양자화 및 역양자화 방법 및 장치 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6889185B1 (en) * | 1997-08-28 | 2005-05-03 | Texas Instruments Incorporated | Quantization of linear prediction coefficients using perceptual weighting |
JP3357829B2 (ja) * | 1997-12-24 | 2002-12-16 | 株式会社東芝 | 音声符号化/復号化方法 |
WO1999041736A2 (en) * | 1998-02-12 | 1999-08-19 | Motorola Inc. | A system and method for providing split vector quantization data coding |
US6148283A (en) * | 1998-09-23 | 2000-11-14 | Qualcomm Inc. | Method and apparatus using multi-path multi-stage vector quantizer |
US6285994B1 (en) | 1999-05-25 | 2001-09-04 | International Business Machines Corporation | Method and system for efficiently searching an encoded vector index |
US6959274B1 (en) * | 1999-09-22 | 2005-10-25 | Mindspeed Technologies, Inc. | Fixed rate speech compression system and method |
KR100324204B1 (ko) | 1999-12-24 | 2002-02-16 | 오길록 | 예측분할벡터양자화 및 예측분할행렬양자화 방식에 의한선스펙트럼쌍 양자화기의 고속탐색방법 |
KR20020075592A (ko) * | 2001-03-26 | 2002-10-05 | 한국전자통신연구원 | 광대역 음성 부호화기용 lsf 양자화기 |
US7003454B2 (en) * | 2001-05-16 | 2006-02-21 | Nokia Corporation | Method and system for line spectral frequency vector quantization in speech codec |
CA2415105A1 (en) * | 2002-12-24 | 2004-06-24 | Voiceage Corporation | A method and device for robust predictive vector quantization of linear prediction parameters in variable bit rate speech coding |
WO2006009075A1 (ja) * | 2004-07-20 | 2006-01-26 | Matsushita Electric Industrial Co., Ltd. | 音声符号化装置および音声符号化方法 |
US7630902B2 (en) * | 2004-09-17 | 2009-12-08 | Digital Rise Technology Co., Ltd. | Apparatus and methods for digital audio coding using codebook application ranges |
KR100791545B1 (ko) * | 2006-12-29 | 2008-01-04 | (주)엘비티솔루션 | 동영상 압축방법 |
KR101866806B1 (ko) * | 2012-06-28 | 2018-06-18 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 개선된 확률 분포 추정을 이용한 선형 예측 기반 오디오 코딩 |
WO2019091576A1 (en) * | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5384891A (en) * | 1988-09-28 | 1995-01-24 | Hitachi, Ltd. | Vector quantizing apparatus and speech analysis-synthesis system using the apparatus |
US5012518A (en) * | 1989-07-26 | 1991-04-30 | Itt Corporation | Low-bit-rate speech coder using LPC data reduction processing |
JPH0365822A (ja) * | 1989-08-04 | 1991-03-20 | Fujitsu Ltd | ベクトル量子化符号器及びベクトル量子化復号器 |
JP3151874B2 (ja) * | 1991-02-26 | 2001-04-03 | 日本電気株式会社 | 音声パラメータ符号化方式および装置 |
JP3224955B2 (ja) * | 1994-05-27 | 2001-11-05 | 株式会社東芝 | ベクトル量子化装置およびベクトル量子化方法 |
JPH08272395A (ja) * | 1995-03-31 | 1996-10-18 | Nec Corp | 音声符号化装置 |
-
1995
- 1995-09-25 KR KR1019950031676A patent/KR100322706B1/ko not_active IP Right Cessation
-
1996
- 1996-09-24 US US08/710,943 patent/US5822723A/en not_active Expired - Lifetime
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100647290B1 (ko) | 2004-09-22 | 2006-11-23 | 삼성전자주식회사 | 합성된 음성의 특성을 이용하여 양자화/역양자화를선택하는 음성 부호화/복호화 장치 및 그 방법 |
US8630849B2 (en) | 2005-11-15 | 2014-01-14 | Samsung Electronics Co., Ltd. | Coefficient splitting structure for vector quantization bit allocation and dequantization |
KR101393301B1 (ko) * | 2005-11-15 | 2014-05-28 | 삼성전자주식회사 | 선형예측계수의 양자화 및 역양자화 방법 및 장치 |
KR101512320B1 (ko) | 2008-01-02 | 2015-04-23 | 삼성전자주식회사 | 양자화 및 역양자화 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
US5822723A (en) | 1998-10-13 |
KR970019119A (ko) | 1997-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100322706B1 (ko) | 선형예측부호화계수의부호화및복호화방법 | |
Juang et al. | Distortion performance of vector quantization for LPC voice coding | |
US5271089A (en) | Speech parameter encoding method capable of transmitting a spectrum parameter at a reduced number of bits | |
US6148283A (en) | Method and apparatus using multi-path multi-stage vector quantizer | |
US5966688A (en) | Speech mode based multi-stage vector quantizer | |
US6269333B1 (en) | Codebook population using centroid pairs | |
CA2202825C (en) | Speech coder | |
EP0833305A2 (en) | Low bit-rate pitch lag coder | |
US20010053972A1 (en) | Method and apparatus for an encoding and decoding a speech signal by adaptively changing pulse position candidates | |
JP3344962B2 (ja) | オーディオ信号符号化装置、及びオーディオ信号復号化装置 | |
CA2115185C (en) | Device for encoding speech spectrum parameters with a smallest possible number of bits | |
US5651026A (en) | Robust vector quantization of line spectral frequencies | |
US6199040B1 (en) | System and method for communicating a perceptually encoded speech spectrum signal | |
JP4359949B2 (ja) | 信号符号化装置及び方法、並びに信号復号装置及び方法 | |
CA2233896C (en) | Signal coding system | |
Kim et al. | Linked split-vector quantizer of LPC parameters | |
KR101393301B1 (ko) | 선형예측계수의 양자화 및 역양자화 방법 및 장치 | |
CA2054849C (en) | Speech parameter encoding method capable of transmitting a spectrum parameter at a reduced number of bits | |
KR100446594B1 (ko) | 음성선스펙트럼주파수의부호화/복호화장치및그방법 | |
KR100389897B1 (ko) | 분할된 lsf 벡터의 예측-연결 양자화 방법 | |
JPH08237136A (ja) | 広帯域信号符号化装置 | |
KR102539165B1 (ko) | 협력 양자화에 기초한 lpc 계수의 잔차 신호 코딩 방법 및 상기 방법을 수행하는 컴퓨팅 장치 | |
KR100446595B1 (ko) | 국소화특성을이용한선스펙트럼주파수의벡터양자화방법 | |
KR100327476B1 (ko) | 분할선스펙트럼쌍의벡터양자화방법 | |
KR100300963B1 (ko) | 연결스칼라양자화기 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20081224 Year of fee payment: 8 |
|
LAPS | Lapse due to unpaid annual fee |