KR0179248B1 - High-speed ALP-VISIELPI speech coding method - Google Patents
High-speed ALP-VISIELPI speech coding method Download PDFInfo
- Publication number
- KR0179248B1 KR0179248B1 KR1019960044269A KR19960044269A KR0179248B1 KR 0179248 B1 KR0179248 B1 KR 0179248B1 KR 1019960044269 A KR1019960044269 A KR 1019960044269A KR 19960044269 A KR19960044269 A KR 19960044269A KR 0179248 B1 KR0179248 B1 KR 0179248B1
- Authority
- KR
- South Korea
- Prior art keywords
- vector
- pulse
- backward
- pulse position
- position index
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 239000013598 vector Substances 0.000 claims abstract description 82
- 238000005070 sampling Methods 0.000 claims 1
- 238000001914 filtration Methods 0.000 abstract description 7
- 230000015572 biosynthetic process Effects 0.000 abstract description 5
- 238000003786 synthesis reaction Methods 0.000 abstract description 5
- 230000007774 longterm Effects 0.000 abstract 1
- 239000011159 matrix material Substances 0.000 description 13
- 238000004364 calculation method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 102000005717 Myeloma Proteins Human genes 0.000 description 1
- 108010045503 Myeloma Proteins Proteins 0.000 description 1
- 238000005311 autocorrelation function Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
Classifications
-
- 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/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/12—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
- G10L19/135—Vector sum excited linear prediction [VSELP]
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
본 발명의 고속 VSELP 음성부호화 방법은, M개의 Q차원 상호정규 직교레귤러 펄스 크기벡터 Bm(1≤m≤M)를 구하여 코드북에 저장하는 단계와, 레귤러 펄스 크기 벡터의 요소들 사이에 D-1(단, D≥4)개의 0을 삽입하여 첫펄스가 M개의 베이시스 벡터의 첫 번째 성분(k=0)에 위치함과 동시에 D샘플 간격으로 위치되는 M개의 상호 정규직교 레귤러 펄스 베이시스 벡터(Vk,m)을 만드는 단계와, 장구간 예측후 목적 벡터 y를 가중합성 필터(H)를 사용 역방향 필터링(Backward-filtering)하여 역방향 필터링된 목적벡터를 구하는 단계와, 상기 역방향 필터링된 목적벡터와, 상기 상호 정규직교 레귤러 펄스 베이시스 벡터(Vk,m)와의 내적 (Ψk(m)을 구하는 단계와, 상기 내적 Ψk(m)의 부호를 코드북 인덱서의 성분 θk(m)의 값으로 취하는 단계와, Ψk(m)의 절대값을 구하고 1≤m≤M에 대하여 모두 합한 값 Ck를 구하는 단계와, 상기 펄스 위치 인덱스 k가 상기 베이시스 벡터의 최종 펄스위치 인덱스인 K-1인가를 체크하는 단계와, k=K-1이 아니라면 펄스 위치 인덱스에 1을 추가하여 k=k+1로 하고 상기 역방향 필터링된 목적벡터를 D/K 샘플간격만큼 좌측으로 이동시킨후 상기 목적벡터 y의 역방향 필터링 단계 다음으로 루틴하여 펄스 위치 인덱스 k가 최종펄스 위치인덱스인 K-1이 될 때까지 반복 수행하는 단계와, 상기 펄스 위치 인덱스 k가 K-1인 경우에 상기 합한 값 Ck를 최대로 하는 펄스 위치 인덱스 k와 그때의 코드북 인덱스의 성분 θk(m)를 찾아 최적 베이시스 벡터를 선택하는 단계를 구비함을 특징으로 한다.A high-speed VSELP speech encoding method of the present invention includes: obtaining M Q-dimension mutually orthogonal regular orthogonal regular pulse magnitude vectors Bm (1? M? M) and storing them in a codebook; (Where D > = 4) 0's are inserted so that the first pulse is located at the first component (k = 0) of the M basis vectors, and at the same time the M mutually orthogonal regular pulse basis vectors Vk , m), and a step of backward-filtering the target vector y using the weighted synthesis filter H after the long-term prediction, Obtaining an inner product Ψk (m) of the backward-filtered filtered vector and a normal vector normal pulse basis vector (Vk, m); obtaining a sign of the inner product Ψk (m) (M), obtaining an absolute value of? K (m) and obtaining a sum Ck for 1? M? M, and determining whether the pulse position index k is a final pulse position of the basis vector 1 is added to the pulse position index, if k = K-1, and if k = k + 1, the backward filtered target vector To the left by a D / K sample interval and then to the next step of backward filtering the target vector y until the pulse position index k becomes a final pulse position index K-1; And selecting an optimal basis vector by searching a pulse position index k for maximizing the sum Ck and a component? K (m) of the codebook index at that time when the index k is K-1.
Description
본 발명은 코드검색과 메모리면에서 매우 효과적인 새로운 벡터합(Vector-Sum) 코드북을 이용한 고속 음성부호화 방법에 관한 것으로, 특히 상호정규 레귤러 펄스 크기 벡터로 구성된 벡터합 코드북 및 목적벡터의 역방향 필터링 기법을 이용하여 기존의 VSELP 부호화기의 음질을 유지함과 동시에 VSELP(Vector Sum Excited Linear Prediction) 부호화기에 있어서 코드북 검색에 필요한 계산량을 대폭적으로 줄일 수 있는 고속 RP-VSELP(Fast Regular Pulse Vector Sum Excited Linear Prediction) 음성부호화 방법에 관한 것이다.The present invention relates to a high-speed speech coding method using a new vector sum codebook, which is very effective in code search and memory. More particularly, the present invention relates to a vector sum codebook composed of mutually regular regular pulse size vectors and a reverse vector- (Fast Regular Pulse Vector Sum Excited Linear Prediction) speech coding which can greatly reduce the amount of calculation required for a codebook search in VSELP (Vector Sum Excited Linear Prediction) coder while maintaining the sound quality of the existing VSELP coder ≪ / RTI >
종래의 CELP(Code Excited Linear Prediction)는 4800bps 이하의 낮은 비트율에서 고음질을 내는 가장 유망한 방법으로 인식되어 왔다. 그러나 상기 CELP는 계산량이 대단히 많다는 단점이 있었다. 이들 단점을 극복하기 위하여 터네리(Ternary) 코드북, 오버랩핑 스파스(Overlapping Sparse) 코드북(W. B. Kleijin, D. J. Krasinsky and R. II. Ketchum, An Efficient Stochastically Excited Linear Predictive Coding Algorithm for High Quality Low Bit Rate Transmission of Speech, Speech Communication, Vol. 7, NO. 3, pp.305-316, Oct. 1988. 참조), 알지브라익(Algebraic) 코드북(J. P. Adoul, P. Mabilleau, M. Delprat and S. Morisette, Fast CELP Coding Based on Algebraic Codes, IEEE Proc. Int. Conf. Acoust. Speech and Signal Proc., pp.1957-1960, 1987. 참조), 벡터합(Vector-sum) 코드북(I. A. Gerson, and M. A. Jasuik, Vector Sum Excited Linear Prediction(VSELP). Advances in Speech Coding, Kluwer Academic Publisher pp.69-79, 1991. 참조) 및 바이너리 코드북(R. A. Salami, Binary Pulse Exciatation : A Novel Approach to Low Complexity CELP Coding, Advances in Speech Coding Kluwer Academic Publisher pp.145-156. 1991. 참조)의 방법이 제안되었다. 이들 방법중에서 벡터합 코드북을 사용하는 VSELP는 계산량과 음질 그리고 채널에러에 대한 강인함의 모든 점에서 두드러진 성능을 보이고 있다.Conventional Code Excited Linear Prediction (CELP) has been recognized as the most promising method for producing a high quality sound at a low bit rate of 4800 bps or less. However, the CELP has a disadvantage that the calculation amount is very large. In order to overcome these drawbacks, a Ternary codebook, an Overlapping Sparse codebook (WB Kleijin, DJ Krasinsky and R. Ketchum, An Efficient Stochastically Excited Linear Predictive Coding Algorithm for High Quality Low Bit Rate Transmission M. Alperbratic codebook (JP Adoul, P. Mabilleau, M. Delprat and S. Morisette, eds., "Speech Communication, Vol. 7, No. 3, pp.305-316, Oct. 1988.) (See, for example, I Gerson, and MA Jasuik, "Fast CELP Coding Based on Algebraic Codes, IEEE Proc. Int. Conf. Acoust. Speech and Signal Proc., Pp.1957-1960, RA Sumami, Binary Pulse Exciatation: A Novel Approach to Low Complexity CELP Coding, Advances in Speech (in Japanese), Vol. Coding Kluwer Academic Publisher pp.145-156, 1991.). Among these methods, VSELP using a vector sum codebook has shown remarkable performance in all aspects of computational complexity, sound quality, and robustness against channel errors.
즉 종래의 VSELP 음성부호화 방법은 제1도의 코드북 검색과정의 블럭도에 도시되어 있는 바와 같이, ① 랜덤 가우시안(Gaussian) 베이시스벡터의 선형조합이 구성되도록 M개의 N차원 베이시스 벡터를 코드북에 저장하는 과정과, ② M×1 행렬의 베이시스벡터를 가중합성 필터를 통하여 필터링된 여기신호를 만들어내는 과정과, ③ M개의 N차원의 필터링된 여기신호에 코드북 인데스 θ에 해당하는 M×1 이진벡터의 요소를 곱한후 모두 합산하는 과정과, ④ 상기 합산결과에 이득을 곱하여 N차원의 합성신호를 만드는 과정과, ⑤ 목표 데이터 신호와 상기 합성신호와의 차이로 에러를 구하는 과정과, ⑥ 모든 경우의 이진벡터에 대하여 상기 ①-⑤ 과정을 반복하여 상기 에러가 최소가 되는 이진벡터θ를 구하는 과정으로 되어 있다.That is, as shown in the block diagram of the codebook search process of FIG. 1, the conventional VSELP speech coding method comprises the steps of (1) storing M N-dimensional basis vectors in a codebook so that a linear combination of random Gaussian basis vectors is formed (2) generating an excitation signal filtered through a weighted synthesis filter of the basis matrix of the M × 1 matrix, and (3) generating M × 1 binary vectors corresponding to the codebook index θ ④ multiplying the signals by the multiplication factors and multiplying the signals by the multiplication factors and multiplying them by the gain and multiplying the result by the gain to obtain an N-dimensional synthesized signal; ⑤ obtaining an error by the difference between the target data signal and the synthesized signal; The above process is repeated for the binary vector to obtain the binary vector? That minimizes the error.
상기 과정으로 되는 VSELP 음성부호화 방법에 의하면 최적 코드워드는 상기 에러가 최소가 되도록 수학식 1로 나타내는 척도함수를 최대화 하는 것으로 선택된다.According to the VSELP speech coding method as described above, the optimal codeword is selected by maximizing the scaling function expressed by Equation (1) such that the error is minimized.
상기 수학식 1에서 y는 과거 장구간 예측후의 심리 가중된 신호인 목표 데이터신호를 나타내고, H는 가중합성 필터 1/A(2/λ)의 N×N Toepliz 임펄스 응답행렬이다.In Equation (1), y represents a target data signal that is a psycho-weighted signal after past long section prediction, and H is an NxN Toepliz impulse response matrix of weighted synthesis filter 1 / A (2 /?).
VSELP 음성부호화 방법에서 코드워드 검색은 상술한 과정을 통하여 수학식 1을 계산함으로써 수행되는데, 벡터합 코드북의 특성을 이용하여 검색과정을 단순화하였고, 코드북 검색과정은 검색할 코드북 인덱스가 바로 이전의 코드북 인덱스와 단 한비트만 다르게 구조화 함으로써 이진 그레이 코드를 사용하여 코드북 검색이 간단하게 이루어지도록 하였다.The code word search in the VSELP speech coding method is performed by calculating Equation 1 through the above procedure. The search procedure is simplified using the characteristics of the vector sum codebook. In the codebook search process, By structuring the index and the single bit differently, we have made the codebook search using binary gray codes simple.
그러나 전술한 VSELP 음성부호화 방법은 CELP 방법에 비하여 계산량이 크게 줄어들었지만 상기 수학식 1에서 확인할 수 있는 바와 같이 코드워드 검색과정은 분모와 분자를 모두 계산하여야 하고 이 계산에 필요한 연산량은 아직도 상당히 많다는 문제점이 있다.However, the above-described VSELP speech coding method has a greatly reduced computational complexity compared with the CELP method. However, as can be seen from Equation (1), the codeword retrieval process requires both denominator and numerator to be computed, .
따라서 본 발명의 목적은 VSELP의 베이시스 벡터를 상호정규 직교 레귤러 펄스 크기벡터로 설계하고 역방향 필터링된 장구간 예측후 목적베터를 사용하여 코드북 검색을 수행함으로써 VSLEP 부호화기의 음질을 유지함과 동시에 코드북 검색에 필요한 계산량을 대폭적으로 줄인 상호 정규직교 레귤러 베이시스 벡터를 이용한 고속 RP-VSELP 음성부호화 방법을 제공하기 위한 것이다.Accordingly, an object of the present invention is to design a basis vector of a VSELP as a mutually regular orthogonal regular pulse size vector and perform a codebook search using a target vector after a backward-filtered long section prediction to maintain the sound quality of a VSLEP encoder, The present invention is to provide a high-speed RP-VSELP speech coding method using a regular basis regular basis vector with a considerably reduced calculation amount.
제1도는 종래의 벡터합 여기선형 예측에 의한 음성부호화 방법의 모델링을 나타낸 도면.FIG. 1 is a diagram illustrating modeling of a speech encoding method by conventional vector sum-excitation linear prediction; FIG.
제2도는 본 발명의 레귤러 펄스 벡터합 여기선형 예측에 의한 고속 음성부호화 방법의 모델링을 나타낸 도면.FIG. 2 is a diagram illustrating modeling of a high-speed speech coding method by regular pulse vector sum-excitation linear prediction of the present invention;
제3도는 본 발명의 고속 음성부호화 방법의 과정을 모식적으로 나타낸 도면.FIG. 3 schematically shows a process of the high-speed speech encoding method of the present invention. FIG.
제4도는 본 발명의 고속 음성부호화 방법의 플로우챠트를 나타낸 도면이다.FIG. 4 is a flowchart showing a high-speed speech coding method according to the present invention.
이와 같은 목적을 달성하기 위한 본 발명의 고속 음성부호화 방법은, M개의 Q차원 상호 정규직교 레귤러 펄스 크기 벡터 Bm(1≤m≤M)을 구하여 코드북에 저장하는 단계와, 레귤러 펄스 크기벡터의 요소들 사이에 D-1(단, D≥4)개의 0을 삽입하여 첫펄스가 각 M개의 상기 베이시스 벡터의 첫 번째 성분(k=0)에 위치함과 동시에 D샘플 간격으로 위치되는 M개의 상호 정규직교 레귤러 펄스 베이시스 벡터(Vk,m)을 만드는 단계와, 장구간 예측후 목적베터 y를 가중합성 필터(H)를 사용 역방향 필터링(Backward-filtering)하여 역방향 필터링된 목적벡터를 구하는 단계와, 상기 역방향 필터링된 목적벡터와 상기 상호 정규직교 레귤러 펄스 베이시스 벡터(Vk,m)와의 내적 Ψk(m)을 구하는 단계와, 상기 내적 Ψk(m)의 부호를 코드북 인덱서의 성분 θk(m)의 값으로 취하는 단계와, Ψk(m)의 절대값을 구하고 1≤m≤M에 대하여 모두 합한 값 Ck을 구하는 단계와, 상기 펄스위치 인덱스 k가 상기 베이시스 벡터의 최종 펄스위치 인덱스인 K-1인가를 체크하는 단계와, k=K-1이 아니라면 펄스 위치 인덱스에 1을 추가하여 k=k+1로 하고 상기 역방향 필터링된 목적베터를 D/K 샘플간격만큼 좌측으로 이동시킨후 상기 목적벡터의 y의 역방향 필터링 단계 다음으로 루틴하여 펄스 위치 인덱스 k가 최종펄스 위치인덱스인 K-1이 될 때까지 반복 수행하는 단계와, 상기 펄스 위치 인덱스 k가 K-1인 경우에 상기 합한 값을 Ck를 최대로 하는 펄스 위치 인덱스 k와 그때의 코드북 인덱스의 성분θk(m)를 찾아 최적의 베이시스 벡터를 선택하는 단계를 구비함을 특징으로 하고 있다.According to another aspect of the present invention, there is provided a high-speed speech encoding method comprising the steps of: obtaining M Q-dimension normal regularity regular pulse size vectors Bm (1? M? M) (Where D > = 4) 0s are inserted between the M components of the basis vectors, and the first pulse is located at the first component (k = 0) of each of the M basis vectors and at the same time, (Vk, m), generating a normalized regular pulse basis vector (Vk, m), and backward-filtering the target vector y by using a weighted synthesis filter (H) (M) of the backward filtered filtered object vector and the mutually orthogonal regular pulse basis vector (Vk, m); obtaining a sign of the inner product Ψk (m) as a component of the codebook indexer (m), obtaining an absolute value of? k (m) and obtaining a sum Ck for 1? m? M, and calculating a sum Ck as a value of the pulse position index k K-1, and if k = K-1, adding 1 to the pulse position index to set k = k + 1 and outputting the backward- Repeatedly until the pulse position index k becomes K-1, which is the last pulse position index, after the backward filtering step of y of the target vector after shifting to the left by the D / K sample interval, And selecting an optimal basis vector by finding a pulse position index k that maximizes the sum Ck and a component θk (m) of the codebook index at that time when the position index k is K-1. .
이하 첨부도면을 근거하여 본 발명에 대하여 상세히 설명한다.BRIEF DESCRIPTION OF THE DRAWINGS Fig.
제2도는 본 발명의 고속 레귤러 펄스 벡터합 여기 선형예측(Fast Regular Pulse -vector-sum Excited Linear Prediction : RP-VSELP)의 고속음성 부호화 방법의 모델링을 도시한 것으로서 본 발명의 고속 RP-VSELP 음성부호화 방법에서 베이시스 벡터를 M개의 Q차원 상호 정규직교 레귤러 펄스 크기 벡터로 구성한다.FIG. 2 illustrates modeling of a high-speed speech coding method of Fast Regular Pulse-Vector-Sum Excited Linear Prediction (RP-VSELP) of the present invention. The high speed RP-VSELP speech coding In the method, the basis vectors are composed of M Q-dimension reciprocal regular periodic pulse magnitude vectors.
즉 본 발명에서 칼럼 벡터 B가 상호 정규직교인 Q×M의 영이 아닌 레귤러 펄스 크기 행렬이라 정의하고 레귤러 형태로 설계된 베이시스 벡터는 공지의 Gram-Schmidt(GS) 방법을 사용하여 정규직교화 된다.That is, in the present invention, a regular vector matrix B is defined as a regular pulse size matrix that is not a zero-order constant Q × M matrix, and a basis vector designed in a regular form is regularized using a known Gram-Schmidt (GS) method.
D와 K를 각각 펄스간격과 첫 번째 위치의 최대 가능수, 그리고 Q를 펄스수라고 정의하고 Pk = [Pij]를 다음(수학식 2)과 같이 주어진 인덱스 k에서 레귤러 펄스 위치를 나타내는 N×Q 행렬이라 정의한다.Let D and K denote the pulse interval and the maximum possible number of the first position, and Q is the number of pulses, and Pk = [Pij] is NxQ indicating the regular pulse position at a given index k, Matrix.
따라서, 수학식 1과 수학식 2을 사용하여 주어진 펄스위치 인덱스에 대하여 베이시스 행렬 Vk는 다음과 같이 모델링 된다.Therefore, for a given pulse position index using equations (1) and (2), the basis matrix Vk is modeled as follows.
이 모델에서 베이시스 벡터는 미리 정해진 펄스위치에 있는 통계적 펄스로 구성되며, 길이 N의 베이시스 벡터는 D-1개의 영으로 분리된 Q개의 펄스로 구성된다. 여기서 Q=[N/D]이며, [x]는 x보다 같거나 작은 최대 정수이다. 레귤러 펄스여기(Regular Pulase Excitation : RPE) 접근방법을 이용하여 펄스위치 인덱스와 코드북 인덱스를 순차적으로 결정하여 수학식 3에 의해 모델링된 최적 코드를 찾는다. 수학식 3을 수학식 1에 대입하고 Hk = HPk라 하면 수학식 1은 수학식 4와 같이 된다.In this model, the basis vector consists of statistical pulses at predetermined pulse positions, and the basis vector of length N consists of Q pulses separated by D-1 zeros. Where Q = [N / D] and [x] is the largest integer less than or equal to x. A pulse position index and a codebook index are sequentially determined using a regular pulse excitation (RPE) approach to find an optimal code modeled by Equation (3). Equation (3) is substituted into Equation (1) and Equation (1) becomes Equation (4) if Hk = HPk.
여기서 T는 전치행렬을 의미한다. 그리고 본 발명에서는 가중합성 필터의 임펄스 응답의 자기상관 함수를 수학식 5와 같이 정의한다.Where T denotes transpose matrix. In the present invention, the autocorrelation function of the impulse response of the weighted synthesis filter is defined as Equation (5).
그러면 i≥4에 대하여 γ(i)≪γ(0)인 것을 실험을 통하여 관찰할 수 있으며 행렬의 곱은 펄스간격 D4에 대하여 γ(0)I로 근사화 될 수 있다.Then, it can be observed through experiments that γ (i) «γ (0) for i≥4, and the product of the matrix Can be approximated to < RTI ID = 0.0 > y (0) < / RTI >
여기서 γ(0)은 임펄스 응답의 에너지이고 I는 단위 행렬이다. 따라서 수학식 4로 수학식 6와 같이 간략화 된다.Where γ (0) is the energy of the impulse response and I is the unit matrix. Therefore, Equation (4) is simplified as shown in Equation (6).
상기 수학식 6에서 B는 상호 정규직교 행렬로서이고,이 되므로 수학식 6은 다음과 같이 더욱 간략해진다.In Equation (6), B is a mutually orthogonal matrix ego, , Equation (6) becomes more simplified as follows.
본 발명의 최적코드 벡터는 주어진 레귤러 펄스위치 인덱스 k에 대하여 수학식 7에를 삽입하여 유도되는 수학식 8과 같은 척도함수(Cost function) ε를 최대로 하는 것으로 선택된다.The optimal codevector of the present invention is shown in Equation 7 for a given regular pulse position index k Is selected to maximize the cost function < RTI ID = 0.0 > e, < / RTI >
여기서는 코드북 검색전에 목적신호 y를 역방향-필터링(Backward-filtering)을 하여 미리 구한다.here The target signal y is back-filtered before searching the codebook.
ε의 분모가 이진 벡터 θk에 상관없이 상수이므로 척도함수 εk는 수학식 9에 나타낸 바와 같이 이진벡터 θk가로 정의된 벡터 Ψk의 부호를 취하게 함으로써 최대화 될 수 있다.Since the denominator of epsilon is constant regardless of the binary vector [theta] k, the scaling function [epsilon] Lt; RTI ID = 0.0 > Pk. ≪ / RTI >
최적펄스 위치 k는 수학식 8에서의 εk를 최대화함으로써 선택될 수 있다. θk(m)과 Ψk(m)의 부호가 같으므로 최적펄스 위치는 양의 값 Ck를 최대화함으로써 얻어진다.The optimal pulse position k can be selected by maximizing? K in equation (8). Since the signs of θk (m) and Ψk (m) are the same, the optimum pulse position is obtained by maximizing the positive value Ck.
Ck를 계산하기 위해 필요한 Ψk는 수학식 11과 같이 구할 수 있다.Ck can be obtained as shown in Equation (11).
여기서 Z는 지연 행렬이고,이다.Where Z is a delay matrix, to be.
수학식 11에서 목적신호 y를 역방향-필터링(Backward-filtering)을 하여 구한가 k에 상관없는 벡터이고, 상호 정규직교 레귤러 펄스 베이시스 벡터가를 영입력으로 갖고 D/K 샘플 만큼 우측-이동(right-shift)한 것이므로 다음과 같이 데이터화 될 수 있다.In Equation (11), the object signal y is obtained by backward-filtering Is a vector irrespective of k, and a mutually orthogonal regular pulse basis vector end (Right-shifted) by the D / K sample and can be converted into data as follows.
수학식 11과 수학식 12로 부터 Ψk를 구하는 과정은 수학식 13에 나타낸 바와 같이 공식화 될 수 있다.The process of obtaining? K from Equations (11) and (12) can be formulated as shown in Equation (13).
즉 상기 수학식 13은 역방향 필터링된 목적벡터와와 상호 정규직교 레귤러 펄스 베이시스 벡터와의 내적을 구함에 있어서 0값에 대항하는 위치는 내적계산시 제외되어야 함을 나타낸다.In other words, Equation (13) represents a backward-filtered object vector And the normalized regular pulse basis vector, the position against the zero value should be excluded in the inner product calculation.
이와 같은 본원 발명의 구성원리에 근거하여 본 발명의 실시예에 대하여 첨부도면을 근거하여 상세히 설명한다.The embodiments of the present invention will be described in detail with reference to the accompanying drawings on the basis of the constitution principle of the present invention.
제3도는 본 발명의 고속 RP-VSELP 음성부호화 방법을 모식적으로 나타낸 도면이고, 제4도는 본 발명의 고속 RP-VSELP 음성부호화 방법의 플로우챠트를 나타낸 것이다.FIG. 3 is a diagram schematically illustrating a high-speed RP-VSELP speech encoding method of the present invention, and FIG. 4 is a flowchart of a high-speed RP-VSELP speech encoding method of the present invention.
먼저, M개의 Q차원(크기가 다른 Q개 펄스) 상호 정규직교 레귤러 펄스 크기 벡터가 Bm(1≤m≤M)를 만들어 코드북에 저장한다.First, M Q dimension (Q pulses of different size) mutually orthogonal regular pulse size vectors are made Bm (1? M? M) and stored in the codebook.
이어 상기 벡터 Bm의 각 요소를 사이에 D-1(단 D≥4)개의 0의 크기를 갖는 펄스를 삽입하여 첫 펄스가 각 베이시스 벡터의 첫 번째 성분(k=0)에 위치함과 동시에 D의 샘플간격으로 위치시킨 각각 크기가 다른 Q개의 펄스로 되는 M개의(M행)의 상호 정규직교 레귤러 펄스 베이시스 벡터 Vm(1≤m≤M)을 만든다.Then, a pulse having a size of D-1 (D? 4) 0s is inserted between each element of the vector Bm, so that the first pulse is located at the first component (k = 0) of each basis vector and D (M rows) of mutually orthogonal regular pulse basis vectors Vm (1? M? M) having Q pulses of different sizes, which are located at the sample intervals of?
장구간 예측후 목적벡터 y를 역방향 필터링하여 역방향 필터링된 목적벡터을 구한다.After the long interval prediction, the target vector y is backward filtered to obtain the backward filtered target vector y .
역방향 필터링된 목적벡터와 상호 정규직교 베이시스 펄스 V0,m의 내적 Ψ0(m)을 구한다. 이때 펄스 사이의 0값에 해당되는 위치는 계산량을 줄이도록 내적계산시 제외하여의 조건에 따라 내적 Ψ0(m)을 구한다.The backward filtered target vector And the inner product Ψ 0 (m) of the mutual orthogonal basis pulse V 0 , m. At this time, the position corresponding to the 0 value between the pulses is excluded in the internal calculation so as to reduce the calculation amount Depending on the conditions of the dot product calculated Ψ 0 (m).
이어 Ψ0(m)의 부호를 코드북 인덱스 성분 θ0(m)의 값으로 한다. 그리고 Ψ0(m)의 절대값을 (1≤m≤M)에 대하여 모두합한 값을 구한다.Following is the sign of Ψ 0 (m) to the value of the codebook index component θ 0 (m). And the sum of the absolute values of? 0 (m) for (1? M? M) .
그다음 펄스위치 인덱스 k=1에 대한 내적 절대값의 합 C1과 그때의 코드북 인덱스의 성분 θ1(m)을 구하도록 위치인덱스 k에 1를 더 추가한후 역방향 필터링된 목적벡터를 D/K(예를들어 D=K=4인 경우 D/K=1) 샘플간격만큼 좌측으로 이동시켜 k=1에 대한 역방향 필터링된 목적벡터를 구하고, 상술한 바와 같이, 상호 정규직교 레귤러 펄스 베이시스 벡터 V0,m의 내적 Ψ1(m)을 계산할 때 0값에 해당되는 위치는 내적계산시에 제외한다.Then pulse position index k = 1 dot product sum of the absolute values C 1 and then the code book and then add 1 more to the position index k so as to obtain the composition θ 1 (m) of the index object backward filtered vector of the Is shifted to the left by a sample interval of D / K (for example, D / K = 1 in the case of D = K = 4) to obtain a backward filtered target vector As described above, when calculating the inner product Ψ 1 (m) of the regular regular basis pulse basis vector V 0 , m, the position corresponding to the zero value is excluded in the inner product calculation.
이어 내적 Ψ1(m)의 부호를 코드북 인덱스의 성분 θ1(m)의 값으로 취한다. Ψ1(m)의 절대값을 구하여 1≤m≤M에 대하여 모두 합한 값을 구한다.The sign of the inner product Ψ 1 (m) is taken as the value of the component θ 1 (m) of the codebook index. The absolute value of? 1 (m) is obtained, and the sum of all the values of 1 ? M? M .
그다음 k=2에 대하여서도 k=1의 경우와 같이 펄스 위치인덱스 k에 1을 더 추가한후 역방향 필터링된 목적벡터를 D/K 샘플간격만큼 좌측으로 이동시켜 k=2에 대한 역방향 필터링된 목적벡터를 구하고 전술한 k=1의 경우와 동일하게 상술한 상호정규 직교 레귤러 베이시스 벡터 V0,m의 내적 Ψ2(m)과 이에 상응하는 코드북 인덱스의 성분 θ2(m) 및 Ψ2(m)의 절대값의 합을 구한다.Next, k = 2 is added to the pulse position index k as in the case of k = 1, and then the backward filtered target vector k Is shifted to the left by the D / K sample interval and the backward filtered target vector for k = 2 To obtain a regular in the same manner described above in the case of the above-mentioned k = 1 mutually orthonormal basis vector V 0, inner Ψ 2 (m) and the corresponding components of the codebook index in the m θ 2 (m) and Ψ 2 (m) Sum of absolute values of .
k=K-1에 대하여서도 동일 방식으로 역방향 필터링된 목적벡터와 상호 정규직교 레귤러 펄스 베이시스 벡터 V0,m의 내적 Ψk(m)과 이에 상응하는 코드북 인덱스 성분θk(m)을 구하고, 내적 Ψk(m)의 절대값을 취하며 1≤m≤M에 대하여 모두 합한값 Ck를 구한다.and k = K-1, the target vector (M) and the corresponding codebook index component θk (m) of the regular regular basis interval vector V 0 , m, taking the absolute value of the inner product Ψk (m) Thereby obtaining the sum Ck.
최종의 펄스위치 인덱스인 k=K-1가 되면, Ck를 최대로 하는 펄스 위치 인덱스 k와 그때의 모드북 인덱스의 성분 θk(m)을 찾아 최적 베이시스 벡터를 선택한다.When the final pulse position index k = K-1, the optimum basis vector is selected by finding the pulse position index k that maximizes Ck and the component? K (m) of the mode book index at that time.
본 실시예에서는 펄스위치 인덱스가 k가 1씩 증가될 때마다 바로 이전의 역방향 필터링된를 D/K 샘플간격만큼 좌측으로 이동시켜 새로운 역방향 필터링된를 구하여 내적을 구하였으나 베이시스 벡터 Vk를 우측으로 D/K 샘플간격만큼 이동시키는 방식을 취하여 내적을 구하여도 된다.In this embodiment, whenever the pulse position index k is incremented by 1, the previous reverse-filtered Is shifted to the left by the D / K sample interval and a new reverse-filtered And the inner product is obtained, but the inner product may be obtained by adopting a scheme of moving the basis vector Vk to the right by the D / K sample interval.
이상과 같은 본 발명의 목적벡터의 역방향 필터링을 이용한 고속 RP-VSELP 음성부호화 방법과 종래의 VSELP 방식 및 베이시스 벡터의 순방향 필터링을 이용한 레귤러 펄스 벡터합 여기 선형예측(RP-VSELP) 방식(별도로 특허출원)의 코드북 검색과정의 계산량과 소요되는 메모리를 비교하여 보면 표 1과 같다.A high-speed RP-VSELP speech coding method using the backward filtering of the object vector of the present invention and a regular pulse vector sum-excitation linear prediction (RP-VSELP) method using the conventional VSELP scheme and forward filtering of basis vectors Table 1 compares the computation amount of the codebook search process and the memory required.
상기 표 1에서 예를들어 N=60, M=11, D=4, Q=15, K=4일 때, VSELP, RP-VSELP, 그리고 본 발명의 고속 RP-VSELP 음성부호화 방법의 코드북 연산과정의 연산수는 34660, 8088과 2578로서 본 발명은 VSELP, 및 RP-VSELP 방법보다 각각 약 13배 및 약 3배로 계산량이 감소되었으며 메모리에 있어서는 VSELP, RP-VSELP, 본 발명의 방법이 각각 660, 165 및 165로서 본 발명은 종래 VSELP 방법 보다 4배로 감소됨을 알 수 있다.VSELP, RP-VSELP, and the codebook operation procedure of the fast RP-VSELP speech encoding method of the present invention when N = 60, M = 11, D = 4, Q = 15 and K = The number of calculations was 34660, 8088, and 2578, respectively. In the present invention, the amount of calculation was reduced to about 13 times and about 3 times that of the VSELP method and the RP-VSELP method, respectively. 165 and 165, the present invention is shown to be four times less than the conventional VSELP method.
이상과 같이 본 발명은, VSELP의 베이시스 벡터를 상호 정규직교 레귤러 펄스 베이시스 벡터로 설계함과 동시에 목적벡터를 역방향 필터링하여 상기 상호 정규직교 레귤러 펄스 베이시스 벡터와의 내적을 각 펄스위치 인덱스에 대하여 구하여 내적절대값의 합을 최대로 하는 펄스위치 인덱스와 그때의 코드북 인덱스의 성분을 찾아 최적 베이시스 벡터를 선택함으로써 종래의 VSELP 방식과는 음질면에 있어서 동등하면서도 코드북 검색에 있어서의 계산량 및 메모리가 대폭적으로 경감되는 뛰어난 효과가 있다.As described above, according to the present invention, the basis vectors of the VSELP are designed as mutually regular regular basis pulse basis vectors, and the inner product with the normal regular basis pulse basis vectors is reverse filtered by the target vector, By selecting the optimum basis vector by searching the pulse position index that maximizes the sum of the absolute values and the components of the codebook index at that time, the amount of calculation and the memory in the codebook search are equivalent to those of the conventional VSELP method, There is an excellent effect.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960044269A KR0179248B1 (en) | 1996-10-07 | 1996-10-07 | High-speed ALP-VISIELPI speech coding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019960044269A KR0179248B1 (en) | 1996-10-07 | 1996-10-07 | High-speed ALP-VISIELPI speech coding method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980025948A KR19980025948A (en) | 1998-07-15 |
KR0179248B1 true KR0179248B1 (en) | 1999-04-01 |
Family
ID=19476426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019960044269A KR0179248B1 (en) | 1996-10-07 | 1996-10-07 | High-speed ALP-VISIELPI speech coding method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR0179248B1 (en) |
-
1996
- 1996-10-07 KR KR1019960044269A patent/KR0179248B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19980025948A (en) | 1998-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0296763B1 (en) | Code excited linear predictive vocoder and method of operation | |
EP0296764B1 (en) | Code excited linear predictive vocoder and method of operation | |
KR100872246B1 (en) | Orthogonal search method and speech coder | |
EP0788091A2 (en) | Speech encoding and decoding method and apparatus therefor | |
EP0802524A2 (en) | Speech coder | |
CN103348597A (en) | Low Bit Rate Signal Encoder and Decoder | |
KR100556831B1 (en) | How to retrieve fixed codebooks with global pulse replacement | |
KR20050020728A (en) | Speech processing system and method | |
US6094630A (en) | Sequential searching speech coding device | |
KR0179248B1 (en) | High-speed ALP-VISIELPI speech coding method | |
KR100510399B1 (en) | Method and Apparatus for High Speed Determination of an Optimum Vector in a Fixed Codebook | |
KR100465316B1 (en) | Speech encoder and speech encoding method thereof | |
US7337110B2 (en) | Structured VSELP codebook for low complexity search | |
KR0179249B1 (en) | High-speed Alfie-Brisey Elsevier speech coding method | |
KR100319924B1 (en) | Method for searching Algebraic code in Algebraic codebook in voice coding | |
AU637927B2 (en) | A method of coding a sampled speech signal vector | |
KR100813260B1 (en) | Method and apparatus for searching codebook | |
CN101202046A (en) | Voice signal encoder and voice signal decoder | |
Xydeas et al. | Theory and Real Time Implementation of a CELP Coder at 4.8 and 6.0 kbits/second Using Ternary Code Excitation | |
Cookey et al. | Seismic deconvolution by multipulse methods | |
JPH0784600A (en) | Vector quantizing device | |
Choi et al. | Fast vector-sum codebook search method for low bit rate speech coding | |
Shimodaira | A method for selecting similar learning data in the prediction of time series using neural networks | |
JP2918021B2 (en) | Vector quantizer | |
Kim et al. | A FAST METHOD FOR CODEBOOK SEARCH IN VSELP CODING |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 19961007 |
|
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 19961007 Comment text: Request for Examination of Application |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 19981031 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 19981126 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 19981126 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20010926 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20020927 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20030930 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20040923 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20050912 Start annual number: 8 End annual number: 8 |
|
PR1001 | Payment of annual fee |
Payment date: 20060911 Start annual number: 9 End annual number: 9 |
|
FPAY | Annual fee payment |
Payment date: 20070918 Year of fee payment: 10 |
|
PR1001 | Payment of annual fee |
Payment date: 20070918 Start annual number: 10 End annual number: 10 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20091010 |