[go: up one dir, main page]

CZ20031500A3 - LPC vektorové kvantifikovací zařízení - Google Patents

LPC vektorové kvantifikovací zařízení Download PDF

Info

Publication number
CZ20031500A3
CZ20031500A3 CZ20031500A CZ20031500A CZ20031500A3 CZ 20031500 A3 CZ20031500 A3 CZ 20031500A3 CZ 20031500 A CZ20031500 A CZ 20031500A CZ 20031500 A CZ20031500 A CZ 20031500A CZ 20031500 A3 CZ20031500 A3 CZ 20031500A3
Authority
CZ
Czechia
Prior art keywords
vector
lpc
code
distortion
unit
Prior art date
Application number
CZ20031500A
Other languages
English (en)
Other versions
CZ304196B6 (cs
Inventor
Kazutoshi Yasunaga
Toshiyuki Morii
Hiroyuki Ehara
Kazunori Mano
Yusuke Hiwasaki
Original Assignee
Matsushita Electric Industrial Co., Ltd.
Nippon Telegraph And Telephone Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co., Ltd., Nippon Telegraph And Telephone Corporation filed Critical Matsushita Electric Industrial Co., Ltd.
Publication of CZ20031500A3 publication Critical patent/CZ20031500A3/cs
Publication of CZ304196B6 publication Critical patent/CZ304196B6/cs

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/06Determination or coding of the spectral characteristics, e.g. of the short-term prediction coefficients
    • G10L19/07Line spectrum pair [LSP] vocoders
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/02Speech 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 spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/032Quantisation or dequantisation of spectral components
    • G10L19/038Vector quantisation, e.g. TwinVQ audio
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • G10L2019/0001Codebooks
    • G10L2019/0004Design or structure of the codebook
    • G10L2019/0005Multi-stage vector quantisation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • G10L2019/0001Codebooks
    • G10L2019/0013Codebook search algorithms
    • G10L2019/0014Selection criteria for distances

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)

Description

Oblast techniky
Předložený vynález se týká LPC vektorového kvantifikovacího zařízení aplikovatelného na kodér/dekodér řeči používaný pro zvýšení efektivity vysílání signálu řeči v oblasti paketového komunikačního systému reprezentovaného Internetovou komunikací a mobilním komunikačním systémem, atd.
Dosavadní stav techniky
Je-li signál řeči vysílán v paketovém komunikačním systému reprezentovaném Internetovou komunikací nebo mobilním komunikačním systémem, pak je často používána technologie zhušťování/kódování dat pro zvýšení efektivity vysílání signálu řeči. Doposud bylo vyvinuto mnoho systémů kódování řeči, a mnohé ze systémů kódování řeči s nízko bitovou rychlostí vyvinuté v posledních letech rozdělují signál řeči na spektrální obálkové informace a na zvukové zdrojové informace, a zhušťuj i/kóduj i rozdělené části informací. Jedním z takových příkladů je například CELP systém popsaný v Dokumentu 1 (M.R.Schroeder, B.S.Atal: „Code Excited Linear Prediction: High Quality Speech at Low Bit Rate - Kódově Excitovaná Lineární Předpověď: Řeč s Vysokou Kvalitou při Nízké Bitové Rychlosti, IEEE proč.,ICASSP'85, str.937-940) .
Dále bude vysvětlen kodér řeči založený na CELP použitím obr.l. Předpokládejme, že vstupní signál řeči je přiváděn na vstup kodéru řeči postupně v každé zpracovávané stránce ohraničené časovým intervalem přibližně 20ms.
Vstupní signál řeči přiváděný do kodéru řeči pro každou zpracovávanou stránku je nejprve předáván do jednotky pro LPC • · • · · · • · · · tt» · · • · • · · • ·
analýzu 11. Jednotka pro LPC analýzu 11 vykonává LPC (Linear Predictive Coding - Kódování s Lineární Předpovědí) analýzu vstupního signálu řeči, získává LPC vektor obsahující LPC koeficienty jako vektorové složky, vektorově kvantifikuje získaný LPC vektor pro získání LPC kódu, a dekóduje tento LPC kód pro získání dekódovaného LPC vektoru obsahujícího dekódované LPC koeficienty jako vektorové složky.
Jednotka pro generování excitačního vektoru 14 čte adaptivní kódový vektor a pevný kódový vektor z příslušného adaptivního kódového seznamu 12 a z pevného kódového seznamu 13 a -vysílá tyto kódové vektory do LPC syntetizačního filtru 15. LPC syntetizační filtr 15 vykonává syntetizační filtrování adaptivního kódového vektoru a pevného kódového vektoru poskytovaného z jednotky pro generování excitačního vektoru 14 použitím vše-pólového modelu syntetizačního filtru obsahujícího dekódované LPC koeficienty předávané z jednotky pro LPC analýzu 11 jako filtrovací koeficienty a získává příslušný syntetizovaný adaptivní kódový vektor a syntetizovaný pevný kódový vektor.
Porovnávací jednotka 16 analyzuje vzájemný vztah mezi syntetizovaným adaptivním kódovým vektorem, syntetizovaným pevným kódovým vektorem předávaným z LPC syntetizačního filtru 15 a vstupním signálem řeči, a vypočítává příslušné optimální zesílení adaptivního kódového seznamu, kterým má být vynásoben syntetizovaný adaptivní kódový vektor, a optimální zesílení pevného kódového seznamu, kterým má být vynásoben syntetizovaný pevný kódový vektor. Porovnávací jednotka 16 dále sčítá vektor získaný vynásobením syntetizovaného adaptivního kódového vektoru optimálním zesílením adaptivního kódového seznamu a vektor získaný vynásobením syntetizovaného pevného kódového vektoru optimálním zesílením pevného kódového seznamu pro získání syntetizovaného vektoru řeči a vypočítává zkreslení mezi získaným syntetizovaným vektorem řeči a vstupním signálem řeči.
-3 Porovnávací jednotka 16 dále vypočítává zkreslení mezi mnoha syntetizovanými vektory řeči získanými činností jednotky pro generování excitačního vektoru 14 a syntetizačního filtru 15 při všech možných kombinacích adaptivních kódových vektorů uložených v adaptivním kódovém seznamu 12 a pevných kódových vektorů uložených v pevném kódovém seznamu 13, a vstupním signálem řeči, určuje index adaptivního kódového vektoru a index pevného kódového vektoru, který minimalizuje zkreslení, ze všech těchto kódových vektorů, a vysílá indexy kódových vektorů předávané z příslušných kódových seznamů, kódové vektory odpovídající indexům a optimální zesílení adaptivního kódového seznamu a optimální zesílení pevného kódového seznamu odpovídající indexům do jednotky pro kódování parametru 17.
Jednotka pro kódování parametru 17 kóduje optimální zesílení adaptivního kódového seznamu a optimální zesílení pevného kódového seznamu pro získání kódů zesílení, a předává získané kódy zesílení, LPC kód převzatý z jednotky pro LPC analýzu 11 a indexy příslušných kódových seznamů společně pro každou zpracovávanou stránku.
Jednotka pro kódování parametru 17 dále přičítá dva vektory; vektor získaný vynásobením adaptivního kódového vektoru odpovídajícího indexu adaptivního kódového seznamu zesílením adaptivního kódového seznamu odpovídajícím kódu zesílení a vektor získaný vynásobením pevného kódového vektoru odpovídajícího indexu pevného kódového seznamu zesílením pevného kódového seznamu odpovídajícím kódu zesílení, čímž je získáván excitační vektor a aktualizuje starý adaptivní kódový vektor v adaptivním kódovém seznamu 12 získaným excitačním vektorem.
Pro syntetizační filtrování pomocí LPC syntetizačního filtru 15 je obecnou praxí, aby lineární předpovídací koeficienty, vysoko-frekvenční filtr a perceptuální váhový filtr používající dlouhodobý předpovídací koeficient získaný vykonáním dlouhodobé předpovídací analýzy vstupní řeči byly • · · · · · • · · · · ·
-4používány společně. Obecnou praxí je také to, aby vyhledávání optimálních indexů adaptivního kódového seznamu a pevného kódového seznamu, výpočet optimálních zesílení a kódovací zpracování optimálních zesílení bylo vykonáváno v jednotkách dílčích stránek získaných dílčím rozdělením stránky.
Dále bude detailně vysvětlen s odkazem na obr.2 přehled zpracování „vektorového kvantifikování LPC vektoru vykonávaného pomocí jednotky pro LPC analýzu 11. Předpokládejme, že LPC kódový seznam 22 ukládá skupinu vstupů typických LPC vektorů získaných předem aplikováním LBG algoritmu na mnoho LPC vektorů získaných skutečným vykonáváním LPC analýzy vstupních signálů řeči mnoha zpracovávaných stránek. S odkazem na LBG algoritmus, detaily této technologie byly předloženy v Dokumentu 2 (Y.Lindě, A.Buzo, R.M.Gray, „An Algorithm for Vektor Quantizer Design, IEEE trans.Comm., Vol. COM-28, č.l, str.84-95, Leden, 1980).
Kvantifikovací cílový vektor vstupující do vektorového kvantifikátoru na obr.2 (LPC vektor získaný vykonáním LPC analýzy signálu řeči v jednotce pro zpracování stránky odpovídající kvantifikovačímu cíli) je předáván do jednotky pro výpočet zkreslení 21. Jednotka pro výpočet zkreslení 21 dále vypočítává Euklidovo zkreslení mezi LPC kódovým vektorem uloženým v LPC kódovém seznamu 22 a kvantifikovacím cílovým vektorem podle následující Rovnice (1) :
dm = Ll/MO-cJi))2 Rovnice (1) kde v Rovnici (1) xT představuje kvantifikovací cílový vektor, Cm je m-tý (l<=m<=M) LPC kódový vektor v LPC kódovém seznamu, i je číslo složky vektoru, N je řád vektoru (odpovídá řádu LPC analýzy) a dm je Euklidovo zkreslení mezi XT a Cm.
Jednotka pro výpočet zkreslení 21 postupně počítá Euklidovo zkresleni mezi všemi LPC kódovými vektory uloženými v LPC kódovém seznamu 22 a kvantifikovacím cílovým vektorem, dále následně předává výsledky výpočtů (příslušná Euklidova zkreslení) do jednotky pro vyhledávání v LPC kódovém seznamu • · · · · • · • ·
-5zpracovávané dekódované LPC
23. Jednotka pro vyhledávání v LPC kódovém seznamu 23 porovnává příslušná Euklidova zkreslení poskytovaná z jednotky pro výpočet zkreslení 21 a předává index LPC kódového vektoru, který minimalizuje Euklidovo zkreslení, jako LPC kód (kódově vyjádřené spektrální obálkové informace o stránce).
Na druhou stranu je možné získat koeficienty (dekódovat LPC koeficienty) přečtením LPC kódového vektoru odpovídajícího indexu indikovanému LPC kódem z LPC kódového seznamu. Zpracování pro generování dekódovaných LPC koeficientů, které jsou používány pro vytvoření vše-pólového modelu LPC syntetizačního filtru, z LPC kódu je obecně vykonáváno jak v kodéru řeči tak i v dekodéru řeči.
V mnoha kodérech/dekodérech řeči vyvinutých v poslední době LPC vektor není kvantifikován takový jaký je, a je obecnou praxí, že LPC vektor je převáděn na LSF (Line Spectral Frequency - Linková Spektrální Frekvence) vektor obsahující jako složky vektoru LSF parametry nebo na LSP (Line Spectral Pairs - Linkové Spektrální Páry) vektor obsahující jako složky vektoru LSP parametry, které představují vzájemně převoditelné frekvenční doménové vektory, a poté je vektorověkvantifikován. Toto je uskutečněno proto, že kvantifikovaný LPC vektor má po převodu na frekvenční doméně v porovnání s přímou vektorovou-kvantifikací LPC vektoru v časové doméně vyšší efektivitu kvantifikování a vyšší interpolační charakteristiku. Vlastnosti LSF (nebo LSP) vektoru a způsob pro vzájemný převod na LPC vektor jsou popsány v Dokumentu 3 (F.Itakura, „Line Spectrum Representation of Linear Predictive Coefficients of Speech Signals, J.Acoust.Soc.Amer., vol 157, str.S35, Duben 1975) nebo v Dokumentu 4 (L.K.Paliwal a B.S.Atal, „Efficient Vector Quantization of LPC Parametr at 24 Bits/Frame, IEEE trans. On Speech and Audio Processing, vol.l, str.3-14, Leden 1993).
vektorověvektor ve
-6Je-li například kvantifikován LSF vektor, pak LSF vektor LSFT[i] (i=l,...,N) ve frekvenční doméně získaný převodem LPC vektoru vstupuje do vektorového kvantifikátoru jako kvantifikovací cílový vektor. V tomto případě LPC kódový seznam ukládá kandidáty LSF kódových vektorů LSFmti] (i=l,...,N), kde každý vektor obsahuje LSF parametry jako složky vektoru, a je možné vektorově-kvantifikovat cílový LSF vektor použitím stejného postupu jako v případě vektorovéhokvantifikování cílového LPC vektoru. V případě kvantifikování LSF (nebo LSP) vektoru je však jako měřítko pro vyhledávání v kódovém seznamu často používáno níže uvedené váhové Euklidovo zkreslení dm podle Rovnice (2) namísto podle výše uvedené Rovnice (1).
dmRovnice (2 )
Váhové Euklidovo zkreslení je detailně popsáno například v Dokumentu 4 nebo v Dokumentu 5 (A.Kataoka, T.Moriya a S.Hayashi, „An 8-kb/s Conjugate Structure CELP (CS-CELP) Speech Coder, IEEE trans. Speech and Audio Processing, vol.4, č.6, str.401-411, Listopad 1996) nebo v Dokumentu 6 (R.Hagen, E.Paksoy a A.Gersho, „Voicing-Specific LPC Quantization for Variable-Rate Speech Coding, IEEE trans. Speech and Audio Processing, vol.7, č.5, str.485-494, Září 1999).
Dekódované LSF parametry (dekódovat LSF parametry) je možno získávat přečtením LSF kódového vektoru odpovídajícího indexu indikovanému LPC kódem z LPC kódového seznamu použitím stejného způsobu jako pro získávání dekódovaných LPC koeficientů z LPC kódů, to znamená přečtením dekódovaného LPC kódového vektoru odpovídajícího LPC kódu z kódového seznamu. V tomto případě však dekódované LSF parametry přečtené na základě LPC kódu představují parametry ve frekvenční doméně. Z tohoto důvodu je požadováno další zpracování pro převod dekódovaných LSF parametrů ve frekvenční doméně na dekódované LPC koeficienty v časové doméně pro vytvoření vše-pólového modelu LPC syntetizačního filtru.
• 9 · ♦ · · · • · · ·· ·
999 9 9 9 9
9 9 9
99 9
S ohledem na kodér/dekodér řeči podle CELP systému, atd., jsou LPC parametry reprezentující krátké-časové spektrální obálkové informace signálu řeči (v tomto případě LPC koeficienty a parametry jako LSF, které jsou vzájemně převoditelné s LPC koeficienty budou obecně označovány jako „LPC parametry) obecně zhušťovány/kódovány pomocí vektorového kvantifikátoru. Je-li však vektorový kvantifikátor v jednoduché konfiguraci zobrazené na obr.2 aplikován takový jaký je, pak se bude zvyšovat kvantifikovací zkreslení vygenerované každou zpracovávanou stránkou, což povede k chybě při získávání přednostní syntetizované řeči. Z tohoto důvodu bylo doposud vykonáno mnoho výzkumů, jako jsou například „předpovídací vektorová kvantifikovací technologie, „vícestavová vektorová kvantifikovací technologie a „rozdělená vektorová kvantifikovací technologie, pro zlepšení vektorového kvantifikovacího výkonu. Za účelem navržení vektorového kvantifikátoru s vysokým výkonem je nezbytné použití více z těchto technologií v kombinaci.
Je-li nově navržen (nebo vylepšen) vektorový kvantifikátor LPC vektoru, pak je požadováno vyhodnocovací měřítko pro porovnání/vyhodnocení výkonu kvantifikátoru. Při vyhodnocování výkonu je přednostně používáno vyhodnocovací měřítko, ve kterém se uvažuje, že LPC parametry jsou původně parametry pro vyjádření krátkodobých spektrálních obálkových informací signálu řeči. Proto je pro vyhodnocovací měřítko výkonu často používáno CD (Cepstral Distortion - Cepstrální Zkreslení) měřítko podle níže uvedené Rovnice (3), které vyhodnocuje zkreslení v LPC cepstrum doméně odpovídající LPC spektrálnímu modelu nebo SD (Spectral Distortion - Spektrální Zkreslení) měřítko podle níže uvedené Rovnice (4) , které vyhodnocuje zkreslení ve FFT (Fast Fourier Transformátion Rychlá Fourierova Transformace) spektrální doméně:
Rovnice (3)
-849 ··
9 4 9
9 9
9 99 9 ·
9444 49 ♦< *·*· • · ··· ·
4 9
9 * • · · · • · 4 ·
99 kde v Rovnici (3) představuje L počet datových stránek používaných pro vyhodnocení, 1 je číslo stránky, Nc je řád LPC cepstra (má-li LPC analýza hodnotu N 10-tého řádu, Nc často dosahuje hodnoty 16-tého řádu), CEPt (1)(i) je cílové LPC cepstrum získané převodem kvantifikovacího cíle první zpracovávané stránky a CEPq (1) (i) je LPC cepstrum získané převodem dekódovaného LPC vektoru první zpracovávané stránky. Technologické detaily vlastností LPC cepstra a způsob vzájemného převodu mezi LPC vektorem a LPC cepstrem jsou popsány například v Dokumentu (7) (M R.Shroeder, „Direct (Nonrecursive) Relations Between Cepstrum and Predictor Coefficients, IEEE trans, on vol. ASSP-29, č.2, str.297-301,
Duben 1981).
SD =
ZSD (1)
K/2
1=1
1=1 logio VK h
2(log,o[SP,>(co,)]-log,0[SP®(oi)])!
... Rovnice (4) kde v Rovnici (4) představuje L počet datových stránek používaných pro vyhodnocení, 1 je číslo stránky, K je počet FFT bodů, SPt(1) (roj ) je FFT výkonové spektrum kvantif ikovacího cíle první zpracovávané stránky, SPq (1> ( roj ) je FFT výkonové spektrum dekódovaného LPC vektoru první zpracovávané stránky a roj = 2Kj/K. Technologické detaily vlastností SĎ jsou popsány například ve výše uvedeném Dokumentu (4).
Jak CD Rovnice (3), tak i SD Rovnice (4) jsou získány přičtením kvantifikačního zkreslení vygenerovaného v každé zpracovávané stránce během vyhodnocování dat a poté zprůměrováním výsledku součtu pomocí počtu datových stránek ve vyhodnocovaných datech, což znamená, čím menší je CD nebo SD, tím je vyšší výkon vektorového kvantifikátoru.
Je-li LPC vektor vektorově kvantifikován, pak je jako referenční měřítko pro vyhledávání v LPC kódovém seznamu používána Rovnice (1) pro Euklidovo zkreslení nebo Rovnice (2) pro váhové Euklidovo zkreslení. Naopak, výkon LPC vektorového
0 φφ • 0 · <
φφ φφ·φ ·· «φφφ
ΦΦΦΦ ΦΦ • ΦΦΦΦ
0 ΦΦ Φ
Φ Φ « ΦΦ ·· kvantifikátoru je obecně vyhodnocován použitím CD popsaného v Rovnici (3) vyhodnocovacího (4) j ako v doposud referenční vektorovou vektorovou nebo SD popsaného v Rovnici měřítko výkonu. To znamená, vyvinutých LPC vektorových kvantifikátorech je měřítko používané pro vyhledávání v LPC kódovém seznamu odlišné od referenčního měřítka používaného pro vyhodnocování výkonu vektorového kvantifikátoru. Z tohoto důvodu LPC kód vybraný pomocí vyhledávání v LPC kódovém seznamu nepředstavuje vždy index pro minimalizaci CD nebo SD měřítka. Toto vyvolává problémy při navrhování vektorového kvantifikátoru s vysokým výkonem.
Jako nejjednodušší způsob řešení výše uvedeného problému může být rozumné převádět kandidáta LPC vektorů na vzájemně převoditelná LPC cepstra (nebo FFT výkonová spektra) a ukládat je předem v kódovém seznamu, poté převádět cílový LPC vektor vkládaný v každé stránce na cílové LPC cepstrum (nebo na cílové FFT výkonové spektrum) a vybírat LPC cepstrální kódový vektor (nebo FFT výkonový spektrální kódový vektor) použitím CD (nebo SD) jako měřítka zkreslení. Výše uvedený způsob řešení však způsobuje drastické zvýšení paměťové kapacity pro ukládání kandidátů kódových vektorů. Dále, je-li uvažován vektorový kvantifikátor, který využívá „předpovídací technologii nebo „vícestavovou technologii často používanou v kódovacím systému řeči s nízkou bitovou rychlostí, pak je nezbytné ukládat vektory bez vzájemné převoditelnosti s LPC cepstrem (například předpovídací reziduální vektor nebo kvantifikovací chybový vektor) předem do kódového seznamu, a z tohoto důvodu nemůže být výše uvedený způsob aplikován.
kvantifikovací kvant i f ikovac í • ·
-10• 4 4 4 4 4 ·· ·· · · • 4 4 4 4 · 4 · ·
44444· ·· 4 44 44
Podstata vynálezu
Cílem předloženého vynálezu poskytování LPC vektorového kvantifikovacího zařízení schopného zvýšení kvantifikovacího výkonu LPC vektorového kvantifikátoru a zlepšení kvality syntetizované řeči v kodéru/dekodéru řeči.
Cíle je dosaženo, je-li cílový LSF vektor vektorověkvantifikován pomocí předvolby pro vybírání přednastaveného malého počtu kódových vektorů pro mnoho kandidátů vstupů LSF kódových vektorů uložených v LSF kódovém seznamu podle měřítka váhového Euklidova zkreslení, a dále konečným vyhledáváním pro výběr konečného kódu z malého počtu předvolených LSF kódových vektorů podle CD nebo SD měřítka.
Přehled obrázků na výkresech
Obr.l je blokový diagram ukazující konfiguraci kodéru řeči na základě CELP;
Obr. 2 je blokový diagram ukazující základní konfiguraci konvenčního LPC vektorového kvantifikovacího zařízení;
Obr.3 je blokový diagram ukazující konfiguraci LPC vektorového kvantifikovacího zařízení podle Provedení 1 předloženého vynálezu;
Obr.4 je blokový diagram představující způsob pro vytváření dekódovaného LPC vektoru podle Provedení 1 předloženého vynálezu;
Obr. 5 je blokový diagram ukazující konfiguraci LSF vektorového kvantifikovacího zařízení podle Provedení 2 předloženého vynálezu;
Obr. 6 je blokový diagram ukazující konfiguraci LSF vektorového kvantifikovacího zařízení podle Provedení 3 předloženého vynálezu;
φφφφ • ΦΦΦ ·· · · φ · • ••ΦΦΦ φφφ φ φφφφφ φφ φφ · φ
-1 -1 Φ φφφφ ΦΦΦΦ
- 11 - φφφ· φφ φφ · ·· ··
Obr.7 je blokový diagram ukazující konfiguraci vysílacího zařízení signálu řeči a přijímacího zařízení signálu řeči podle Provedení 4 předloženého vynálezu;
Obr. 8 je blokový diagram ukazující konfiguraci kodéru řeči podle Provedení 4 předloženého vynálezu; a
Obr. 9 je blokový diagram ukazující konfiguraci dekodéru řeči podle Provedení 4 předloženého vynálezu.
Příklady provedení vynálezu
S odkazem na připojené obrázky budou nyní níže popsána provedení předloženého vynálezu.
Provedení 1
LPC vektorové kvantifikovací zařízení podle předloženého vynálezu bude popsáno s odkazem na obr.3. Obr.3 je blokový diagram ukazující konfiguraci LPC vektorového kvantifikovacího zařízení podle Provedení 1 předloženého vynálezu.
Toto vektorové kvantifikovací zařízení je vybaveno LSF kódovým seznamem 101, který ukládá vstupy LSF kódového vektoru, jednotkou pro výpočet zkreslení 102, která vypočítává zkreslení mezi vstupy LSF kódového vektoru v LSF kódovém seznamu 101 a cílovým LSF vektorem, jednotkou pro předvolbu LPC kódu 103, která předběžně vybírá přednastavený malý počet LPC kódů na základě zkreslení vypočtených v jednotce pro výpočet zkreslení 102, LSF/LPC převodními jednotkami 104 a 106, které převádějí LSF vektor na LPC koeficienty, LPC koeficient/LPC cepstrum převodními jednotkami 105 a 107, které převádějí LPC koeficienty na LPC cepstrum, a jednotkou pro konečné vyhledávání LPC kódu 108, která na závěr vybírá LPC kód na základě výsledků vyhodnocení zkreslení v LPC cepstrum doméně.
• · • ·
-12 Předpokládejme, že LSF kódový seznam 101 vektorového kvantifikovacího zařízení ve výše popsané konfiguraci ukládá M kandidátů vstupů kódového vektoru získaných předem pomocí LBG algoritmu. Dále předpokládejme, že LPC vektorové kvantifikovací zařízení podle tohoto provedení -vykonává LPC analýzu signálu řeči v jednotce pro zpracování stránky pro získání LPC koeficientů, dále převádí získané LPC koeficienty na LSF vektor a získaný LSF vektor přivádí na vstup jako kvantifikovací cílový vektor. Kvantifikovací cílový vektor může být dále vyjádřen pomocí výrazu LSFT[i] (i=l,...,N), kde N představuje řád LPC analýzy.
Kvantifikovací cílový vektor LSFT[i] (i=l,...,N) přiváděný na vstup vektorového kvantifikovacího zařízení je nejprve předáván do jednotky pro výpočet zkreslení 102 a do LSF/LPC převodní jednotky 106. Na druhou stranu, LSF kódový seznam 101 poskytuje LSF kódový vektor LSFm[i] (i=l,...,N) odpovídající instrukčním informacím (index m je poskytován jako informace) dodávaným z jednotky pro předvolbu LPC kódu 103 do jednotky pro výpočet zkreslení 102.
Jednotka pro výpočet zkreslení 102 vypočítává váhové Euklidovo zkreslení mezi kvantifikovacím cílovým vektorem LSFT[i] (i=l,...,N) a LSF kódovým vektorem LSFm[i] (i=l,...,N) podle výše popsané Rovnice (2) a předává výsledek výpočtu Dm do jednotky pro předvolbu LPC kódu 103 . Jednotka pro předvolbu LPC kódu 103 po přijmutí zkreslení dm odpovídajícího indexu m instruuje LSF kódový seznam 101 o tom, že má předat další LSF kódový vektor odpovídající následujícímu indexu (m+1).
V případě, že LSF kódový seznam 101 ukládá M kandidátů LSF kódových vektorů, zpracování v jednotce pro předvolbu LPC kódu 103 se opakuje M krát, dokud není získáno M zkreslení mezi LSF kvantifikovacím cílovým vektorem a M kandidáty LSF vektoru, a M zkreslení je předáváno do jednotky pro předvolbu LPC kódu 103. Tímto způsobem je na vstup jednotky pro předvolbu LPC kódu 103 přivedeno M zkreslení dm (m=l,...,M)
-13 ··· · · · o ·· ·· v časovém okamžiku ukončení zpracování pomocí jednotky pro předvolbu LPC kódu 103.
Jednotka pro předvolbu LPC kódu 103 porovnává hodnoty M vstupů váhových Euklidových zkreslení, a vybírá S kandidátů indexů s nejmenší hodnotou váhového Euklidova zkreslení (v tomto provedení předpokládejme, že číslo S je přednastaveno) a zaznamenává indexy vybraných S kandidátů do Ncand[j] (j=l,...,S) (libovolný z indexů 1 až M je zaznamenán do Ncand[j]). Poté instruuje LSF kódový seznam 101 o indexech zaznamenaných do Ncand[j] (j=l,...,S) a přijímá odpovídající LSF kódové vektory LSFNcandtj] [i] (i=l, . . . ,N, j=l, . . . , S) z LSF kódového seznamu 101. Poté je S přijatých LSF kódových vektorů předáváno do LSF/LPC převodní jednotky 104.
LSF/LPC převodní jednotka 104 převádí S předběžně vybraných LSF kódových vektorů LSFNcand[j] [i] (i=l,...,N,j=l,..·,S) dodávaných z jednotky pro předvolbu LPC kódu 103 na jejich příslušné LPC koeficienty pro získání LPCNcand[j] [i] (i=l,...,N,j=l,...,S) a předává S sad získaných
LPC koeficientů do LPC koeficient/LPC cepstrum převodní jednotky 105.
LPC koeficient/LPC cepstrum převodní jednotka 105 převádí S sad LPC koeficientů LPCNcandtj] [i] (i=l, . . . ,N, j=l, . . . , S) předávaných z LSF/LPC převodní jednotky 104 na jejich příslušná LPC cepstra, CEPNcand[j] [i] (i=l, . . . ,Nc, j=l, . . . , S) , kde Nc je řád LPC cepstra, a předává S získaných LPC cepster do jednotky pro konečné vyhledávání LPC kódu 108.
Na druhou stranu, LSF/LPC převodní jednotky 106 převádí kvantifikovací cíl LSFT[i] (i=l,...,N) na LPC koeficienty pro získání LPCT[i] (i=l,...,N) a předává získané koeficienty do LPC koeficient/LPC cepstrum převodní jednotky 107. LPC koeficient/LPC cepstrum převodní jednotka 107 převádí LPC koeficienty LPCT[i] (i=l,...,N) předávané z LSF/LPC převodní jednotky koeficientů 106 na LPC cepstrum pro získání CEPT[i] • · · · ·
-14(i=l,...,Nc) a předává získané LPC cepstrum do jednotky pro konečné vyhledávání LPC kódu 108.
Jednotka pro konečné vyhledávání LPC kódu 108 poté vypočítává zkreslení mezi S kandidáty LPC cepstra CEPNcand[j] [i] (i=l,...,Nc,j=l,...,S) poskytovanými LPC koeficient/LPC cepstrum převodní jednotkou 105 a cílovým LPC cepstrem CEPT[i] (i=l,...,Nc,j=l,...,S) poskytovaným LPC koeficient/LPC cepstrum převodní jednotkou 107 podle níže uvedené Rovnice (5) a ukládá příslušné výsledky výpočtů do Dj (j=l,... S).
Dj = £(CEPT[i]-CEPNcand(j][i])2, j = l,...,S Rovnice (5) i=l
Poté jednotka pro konečné vyhledávání LPC kódu 108 porovnává hodnoty Dj (j=l,...S), specifikuje jeden index j, který minimalizuje Dj (specifikované j je zde vyjádřeno jako J) a předává Ncandtj] odpovídající specifikovanému J jako LPC kód relevantní zpracovávané stránky (kód pro vyjádření spektrálních obálkových informací signálu řeči relevantní zpracovávané stránky). Ze vzájemného vztahu mezi Rovnicí (5) a Rovnicí (3) je zřejmé, že „J vybrané použitím výše uvedené minimalizační Rovnice (5) je shodné s LPC kódem (označovaným jako ,,J') vybraným použitím minimalizační Rovnice (3).
Pro zobecnění vysvětlení toto provedení předpokládá, že počet LSF kódových vektorů uložených v LSF kódovém seznamu 101 je M a počet kódových vektorů předběžně vybraných pomocí jednotky pro předvolbu LPC kódu 103 je S. Výše popsaná hodnota M je určena počtem bitů přiřazených LPC parametrovému vektorovému kvantifikovacímu zařízení. Je-li například vektorovému kvantifikovacímu zařízení zobrazenému na obr. 3 přiřazeno 21 bitů na stránku, hodnota M dosahuje extrémně vysoké hodnoty 221. Dále, výše popsaná hodnota S může být volně nastavena, ale často je nastavena na hodnotu 8, 16 nebo 32 empiricky nebo pomocí předem vykonávaného vyhodnocovacího testu výkonu.
• ·
-15Dále bude vysvětleno zpracování pro generování dekódovaných LPC koeficientů (také nazývané „dekódovací zpracování LPC parametru) z LPC kódu (Ncand[J]) předávaného z vektorového kvantifikovacího zařízení zobrazeného na obr.3 použitím LPC vektorového dekodéru zobrazeného na obr.4. Dekodér zobrazený na obr.4 je vybaven stejným LSF kódovým seznamem 201 jako v případě vektorového kvantifikovacího zařízení a jednotkou pro čtení kódového vektoru 202, která čte LSF kódový vektor z LSF kódového seznamu 201.
LPC kód NcandfJ] převáděný na vstup LPC vektorového dekodéru zobrazeného na obr.4 je nejprve předáván do jednotky pro čtení kódového vektoru 202. Jednotka pro čtení kódového vektoru 202 poté instruuje LSF kódový seznam 201 o tom, že má předat LSF kódový vektor odpovídající LPC kódu Ncand[J]. LSF kódový seznam 201 poté předává LSFNcand[j] [i] (i=l,...,N) do jednotky pro čtení kódového vektoru 202. Jednotka pro čtení kódového vektoru 202 předává vektor poskytovaný z LSF kódového seznamu 201 jako dekódovaný LSF vektor.
Protože dekódovaný LSF vektor předávaný z výše uvedeného LPC vektorového dekodéru představuje parametry v LSF-doméně, pro konstrukci vše-pólového modelu LPC syntetizačního filtru je vyžadováno další zpracování pro převod dekódovaného LSF vektoru z LSF-domény na dekódované LPC koeficienty v LPC doméně.
Podle výše popsaného LPC vektorového kvantifikovacího zařízení, je-li cílový LSF vektor, který je cílem kvantifikace, vektorově kvantifikován, je možné předběžně vybrat přednastavený malý počet LSF kódových vektorů ze všech kandidátů LSF kódových vektorů uložených v LSF kódovém seznamu použitím váhového Euklidova zkreslení jako měřítka, a je možné plně vybrat konečný kód z malého počtu předvolených kandidátů LSF kódových vektorů na základě výsledku předvolby použitím CD minimalizace jako měřítka.
• 4 · 4 •4 4444 • ·
4444 4«
Použití vektorového kvantifikovacího zařízení podle výše popsaného provedení proto umožňuje omezit problém konvenční technologie (problém spočívající v tom, že LPC kód vybraný pomocí vektorového kvantifikovacího zařízení často nesouhlasí s indexem kódového vektoru, který minimalizuje CD) bez drastického zvýšení počtu výpočtů požadovaném na LPC kódovém seznamu a umožňuje zvýšení výkonu LPC vektorového kvantifikovacího zařízení.
Podle tohoto provedení, kvantifikovací zařízení podle porovnáme-1i předloženého s vektorovým kvantifikovacím zařízením popsaným vektorové vynálezu v části dosavadní stav techniky, vektorové kvantifikovací zařízení mírné v LPC zvyšuje kódovém výpočtů může podle předloženého vynálezu požadovaný pro vyhledávání odpovídající zvýšení počtu v následujících šesti bodech:
(1) Množství výpočtů pro převod kvantifikovacího cíle na cílové LPC koeficienty (2) Množství výpočtů pro převod cílového LPC vektoru v (1) na cílové LPC cepstrum (3) Množství výpočtů pro převod předběžně vybraného malého počtu LPC kódových vektorů na malý počet LPC koeficientů (4) Množství výpočtů pro převod malého počtu LPC vektorů v (3) na malý počet LPC cepster (5) Množství výpočtů pro výpočet zkreslení mezi cílovým LPC cepstrem v (2) a malým počtem LPC cepster v (4) (6) Množství výpočtů pro porovnání zkreslení v (5) a specifikování indexu kódového vektoru, který minimalizuje zkreslení.
V tomto případě je obecně možné řídit zvyšování výše popsaného množství výpočtů pomocí počtu kandidátů předběžně vybraných a vyloučených kódových vektorů (to proto, že (3), (4), (5) a (6) podstatně dominují množství výpočtů v (1) až (6) a tyto jsou přímo závislé na počtu kandidátů v předvolbě).
počet výpočtů seznamu. Část být shrnuta
-17·· · · • 44 · • · · · · · · 4 • · · 4 4
4444 44 44 4
To znamená, že ve vektorovém kvantifikovacím zařízení podle předloženého vynálezu je možné volně nastavovat dohodnutý vzájemný vztah mezi zvyšováním počtu výpočtů vyžadovaných pro vyhledávání v kódovém seznamu a zlepšováním výkonu zvyšováním/ snižováním počtu předběžně vybraných kandidátů nastavených v jednotce pro předvolbu LPC kódu 103 . Toto provedení tak umožňuje zvýšit výkon vektorového kvantifikovacího zařízení při uvažování zvýšení počtu výpočtů požadovaných pro vyhledávání v LPC kódovém seznamu.
Toto provedení dále popisuje případ, ve kterém je počet kandidátů LSF kódových vektorů povolených jednotkou pro předvolbu LPC kódu předdefinován, ale je také možné požívat jiné způsoby předvolby, jako například nastavení prahové hodnoty pro váhové Euklidovo zkreslení a ponechat kandidáta, jehož váhové Euklidovo zkreslení je menší než nastavená prahová hodnota, jako kandidáta po vykonání předvolby, a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém jednotka pro předvolbu LPC kódu vykonává předvolbu LSF kódového vektoru použitím váhového Euklidova zkreslení podle Rovnice (2) jako měřítka, ale předložený vynález může být také realizován, jeli použito váhové Euklidovo zkreslení odlišné od výše uvedené Rovnice (2), jako například podle Rovnice (8) nebo Rovnice (10) ve výše uvedeném Dokumentu 4, a v tomto případě může být také dosaženo stejného účinku/funkce.
S odkazem na „váhové ve váhovém Euklidově zkreslení byly doposud navrženy různé způsoby výpočtů (například způsob popsaný v Dokumentu 5, kde jsou váhy vypočteny podle vzdáleností mezi sousedními prvky LSF parametrů, a způsob popsaný v Dokumentu 6, kde jsou váhy vypočteny podle výkonového spektra kvantifikovacího cíle), ale předložený vynález je aplikovatelný nezávisle na způsobu výpočtu „váhy a v tomto případě může být také dosaženo stejného účinku/funkce.
• · · · · · · · ·
-18·· • · ···· ·« ···· ··
Toto provedení dále popisuje případ, ve kterém je LPC vektorem přiváděným na vstup vektorového kvantifikovacího zařízení LSF, ale předložený vynález je také aplikovatelný na případ, ve kterém je na vstup vektorového kvantifikovacího zařízení přiváděn jiný vektor vyjadřující krátkodobé spektrální obálkové informace než je LPC vektor, jako například LSP vektor nebo PARCOR vektor obsahující PARCOR parametry jako vektorové složky, a v tomto případě může být také dosaženo stejného účinku/funkce.
Je-li však jako kvantif ikovací cíl přiváděn na vstup například LSP, je nezbytné změnit LSF/LPC převodní jednotky 104 a 106 na LSP/LPC převodní jednotky a změnit LSF kódový seznam 101 na LSP kódový seznam.
Toto provedení dále popisuje případ, ve kterém jednotka pro konečné vyhledávání LPC kódu specifikuje konečný LPC kód použitím CD měřítka, ale jestliže jsou LPC koeficient/LPC cepstrum převodní jednotky (105, 107) nahrazeny LPC koeficient/FFT výkonové spektrum výpočetní jednotkou, která má funkci vypočítávání FFT výkonového spektra z LPC koeficientů, a výše uvedená Rovnice (5) vykonávaná pomocí jednotky pro konečný výběr LPC kódu 108 je nahrazena výpočetní rovnicí obsaženou v části druhé mocniny Rovnice (4) , pak může být použito také SD (Spectral Distortion - Spektrální Zkreslení) jako měřítko pro specifikování konečného LPC kódu a v tomto případě může být také dosaženo stejného účinku/funkce.
Jak bylo vysvětleno výše, je pochopitelné, že vektorové kvantifikovací zařízení podle tohoto provedení je přednostně aplikovatelné v případech, ve kterých jsou krátkodobé spektrální obálkové informace signálu řeči kódovány/dekódovány kodérem/dekodérem řeči na základě CELP systému nebo Vocoder systému.
4444 ·· ··
444· ·· 4 44 4
444 44 4 4 4 ♦ • ····· · · · 4 4 4
Provedení 2
Toto provedení popisuje konfiguraci vektorového kvantifikovacího zařízení, zpracovávací proceduru a jeho účinek/funkci v případě, že technologie podle předloženého vynálezu je aplikována na LPC kvantifikovací zařízení použitím předpovídací vektorové kvantifikovací technologie, vícestavové vektorové kvantifikovací technologie a rozdělené vektorové kvantifikovací technologie dohromady.
Konfigurace vektorového kvantifikovacího zařízení silně závisí na bitové rychlosti celého kodéru/dekodéru řeči a na počtu bitů přiřazených LPC vektorovému kvantifikovacímu zařízení. V tomto případě bude pro zjednodušení vysvětlování níže popsáno vektorové kvantifikovací zařízení s 21-bitovou bitovou informací na zpracovávanou stránku s přiřazeným časovým intervalem 20ms.
Pro zpřesnění dále předpokládejme, že vektorový kvantifikovací přístroj používaný při vysvětlování používá MA (Moving Average - Pohyblivý průměr) předpovídací technologii třetího řádu, a že používá 4 sady MA předpovídacích koeficientů na zpracovávanou stránku (pro přepínání MA předpovídacích koeficientů jsou vyžadovány 2-bitové informace). Dále předpokládejme, že vektorové kvantifikovací zařízení použité pro vysvětlení používá 2-stavovou vektorovou kvantifikovací technologii. Dále předpokládejme, že vektorové kvantifikovací zařízení použité pro vysvětlení používá rozdělenou vektorovou kvantifikovací technologii ve druhém stavu 2-stavového vektorového kvantifikovacího zařízení. Vektorovému kvantifikátoru prvního stavu, prvkům vektorového kvantifikátoru druhého stavu s nižší frekvencí a prvkům vektorového kvantifikátoru druhého stavu s vyšší frekvencí je přiřazeno příslušných 7 bitů, 6 bitů a 6 bitů.
Obr. 5 je blokový diagram ukazující konfiguraci vektorového kvantifikovacího zařízení podle Provedení 2
-2099 *999
9999
99999 9 9
9 9 9 9
9999 99 99 · předloženého vynálezu. Jak je zobrazeno na obr.5, vektorové kvantifikovací zařízení ve 2-stavové rozdělené konfiguraci používající MA předpovídání třetího řádu, na které je aplikována technologie podle předloženého vybaveno váhovou výpočetní jednotkou (WC) vynálezu, je 301, kódovým seznamem předpovidacích koeficientů (PCC) 302, MA předpovídací jednotkou (MP) 303, předpovídací zbytkovou výpočetní jednotkou (PRC) 304, kódovým seznamem prvního stavu (FSC) 305, jednotkou pro výpočet zkreslení prvního stavu (FSDCS) 306, VQ předvolbovou jednotkou prvního stavu (FSVPS) 307, jednotkou pro VQ zbytkový výpočet prvního stavu (FSVRC) 308, kódovým seznamem druhého stavu s nižší frekvencí (SSLFC) 309, jednotkou pro výpočet zkreslení druhého stavu s nižší frekvencí (SSLFD) 310, jednotkou pro výpočet zkreslení druhého stavu s vyšší frekvencí (SSHFD) 311, kódovým seznamem druhého stavu s vyšší frekvencí (SSHFC) 312, jednotkou pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí (SSLFC) 313, jednotkou pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí (SSHFC) 314, předpovídací zbytkovou dekódovací jednotkou (PRD) 315, jednotkou pro generování dekódovaného LSF (DLG) 316, převodními jednotkami LSF/LPC koeficientů (LSF/LPC) 317 a 319, převodními jednotkami LPC koeficient/LPC cepstrum (LC/LC) 318 a 320 a jednotkou pro konečné vyhledávání LPC kódu (LCFS) 321.
Při vysvětlování obr.5 bude detailně popsáno zpracování od přivedení LSF vektoru na vstup do získání cílového vektoru vektorového kvantifikátoru prvního stavu (zpracování odpovídající váhové výpočetní jednotce 301, kódovému seznamu předpovidacích koeficientů 302, MA předpovídací jednotce 303 a předpovídací zbytkové výpočetní jednotce 304.
LSF vektor přiváděný na vstup vektorového kvantifikovaciho zařízení na obr.5 je předáván do váhové výpočetní jednotky 301, do předpovídací zbytkové výpočetní jednotky 304 a do LSF/LPC převodní jednotky 319. Váhová • ·
·· ··· · •·· · · · • · ·
4 9 9 ♦ · 94 výpočetní jednotka 301 vypočítává „váhu používanou pro výpočet váhového Euklidova zkreslení na základě LSF vektoru a předává tuto váhu (váhy) do jednotky pro výpočet zkreslení prvního stavu 306, do jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311.
Jako způsob pro výpočet „váhy ve váhové výpočetní jednotce 301 může být použit způsob popsaný v Dokumentu 5 pro výpočet „váhy podle vzdálenosti mezi sousedícími prvky LSF parametrů nebo způsob popsaný v Dokumentu 6 pro výpočet „váhy podle výkonového spektra LSF vektoru, atd. V tomto provedení se předpokládá, že pro výpočet „váhy není nastaveno žádné speciální omezení.”
MA předpovídací jednotka 303 vypočítává předpovídací vektory použitím dekódovaných předpovídacích zbytkových vektorů odpovídajících posledním 3 stránkám uloženým v jednotce pro ukládání dekódovaného předpovídacího zbytku (DPRS) 322 a MA předpovídacích koeficientů třetího řádu uložených v kódovém seznamu předpovídacích koeficientů 302 a předává vypočtený předpovídací vektor do předpovídací zbytkové výpočetní jednotky 304.
Předpokládá se, že výše popsané zpracování výpočtu/ předávání předpovídacího vektoru je vykonáváno pro každou ze 4 sad MA předpovídacích vektorů třetího řádu uložených v kódovém seznamu předpovídacích koeficientů 302. Z tohoto důvodu jsou z MA předpovídací jednotky 303 předávány celkem čtyři sady předpovídacích vektorů. Dále, tyto čtyři sady předpovídacích koeficientů uložené v MA předpovídací jednotce 303 jsou získávány předem aplikováním zobecněného Lloydova algoritmu uvedeného v Dokumentu 8 (S.P.Lloyd, „Least Square Quantization in PCM, IEEE trans.Inform. Theory IT-28, str.129-137, 1982), atd., na čtyři sady libovolně inicializovaných MA předpovídacích koeficientů. Pro zjednodušení vysvětlení v tomto případě předpokládáme, že čtyři sady MA předpovídacích ·· ·»Η ·· ···· •« · výrazy sady MA koeficientů třetího řádu budou reprezentovány Mak[j][i].
Výše popsané označení k(=l,...,4) odpovídá číslu předpovídacích koeficientů třetího řádu, j(=1,...,3) odpovídá číslu stránky (j = 0 odpovídá aktuálně zpracovávané stránce, j=l odpovídá stránce zpracovávané o jednu stránku před aktuálně zpracovávanou stránkou, j=2 odpovídá stránce zpracovávané o dvě stránky před aktuálně zpracovávanou stránkou, j=3 odpovídá stránce zpracovávané o tři stránky před aktuálně zpracovávanou stránkou), i (=1,...,N: N představuje řád LPC analýzy) odpovídá počtu vektorových složek předpovídacích koeficientů.
Předpovídací zbytková výpočetní jednotka 304 odděluje průměrné LSF parametry (AV[i], i=l,...,N) uložené v jednotce pro ukládání průměrného LSF (ALS) 323 od LSF parametrů. Výše uvedené průměrné LSF parametry (AV[i], i=l,...,N) jsou parametry získané předem ve stavu předcházejícím skutečnému kódovacímu/dekódovacímu zpracování pomocí zprůměrování celých sad LSF parametrů cvičného signálu řeči, a uložené v jednotce pro ukládání průměrného LSF 323. Poté předpovídací zbytková výpočetní jednotka 304 odděluje předpovídací vektory poskytované z MA předpovídací jednotky 303 od vektoru získaného výše uvedeným rozdělením, vypočítává předpovídací zbytkový vektor a předává vypočtený předpovídací zbytkový vektor jako cílový vektor vektorového kvantifikátoru prvního stavu do jednotky pro výpočet zkreslení prvního stavu 306, do jednotky pro VQ zbytkový výpočet prvního stavu 308 a do jednotky pro generování dekódovaného LSF 316.
Výše popsané zpracování výpočtu/předávání předpovídacího zbytkového vektoru je vykonáváno pro každou ze čtyř sad MA předpovídacích koeficientů. Z tohoto důvodu jsou z předpovídací zbytkové výpočetní jednotky 304 předávány celkem čtyři vstupy cílových vektorů vektorového kvantifikátoru prvního stavu.
• 4 #444
-23 4 4 44.
4 4 4 4 4 · · 4 4
4t···· 4 · 4 • · »4 · 4 «4 44 4 4 • 4444 4444
444 444 44 4 44 44
Doposud bylo detailně popsáno zpracování po přivedení LSF parametru na vstup až do získání cílového vektoru vektorového kvantifikátoru prvního stavu. Dále bude detailně popsáno zpracování vektorového kvantifikátoru prvního stavu dvoustavového vektorového kvantifikátoru (zpracování odpovídající kódovému seznamu prvního stavu 305, jednotce pro výpočet zkreslení prvního stavu 306, VQ předvolbové jednotce prvního stavu 307 a jednotce pro VQ zbytkový výpočet prvního stavu 308) .
Kódová jednotka prvního stavu 305 ukládá 128 vstupů předpovídacích zbytkových kódových vektorů. Těchto 128 vstupů předpovídacích zbytkových kódových vektorů je získáno předem vykonáním sérií výše popsaných zpracování až do okamžiku, kdy je vypočten kvantifikovací cíl signálu řeči ve velkém počtu zpracovávaných stránek, získáním velkého počtu předpovídacích zbytkových vektorů, aplikováním LBG algoritmu na získaný velký počet předpovídacích zbytkových vektorů, vybráním 128 vstupů typických vzorků předpovídacích zbytkových vektorů a další aplikací zobecněného Lloydova algoritmu popsaného ve výše uvedeném Dokumentu 8, atd.
Jednotka pro výpočet zkreslení prvního stavu 306 vypočítává váhové Euklidovo zkreslení mezi cílovým vektorem (XK[i],i=l,...,N) vektorového kvantifikátoru prvního stavu poskytovaným z předpovídací zbytkové výpočetní jednotky 304 a vektorem (MAktO] [i]*Cm[i] , i=l, ...,N) získaným vynásobením předpovídacího zbytkového vektoru (Cm[i],i=l, ...,N) s indexem m přečteným z kódového seznamu prvního stavu 305 aktuálním prvkem zpracovávané stránky MA předpovídacího koeficientu (MAk[0] [i] , i = l, ...,N) podle níže uvedené Rovnice (6) a předává hodnotu vypočteného zkreslení do VQ předvolbové jednotky prvního stavu 307.
dk,m = i=l
Rovnice (6)
-2400 ♦ · • 4 0 · ♦ 0 * • · *0 0 • 0 • •4 · 0·
0 *·«-*
0 9
0 0 · ·
0 0
0« 0 «0 0009 • 0 0
0··
0· ·
0 0 0
0« 04 kde v Rovnici (6) w[i] označuje váhu vypočtenou pomocí váhové výpočetní jednotky 301, k je číslo sady (k=l,...4) MA předpovídacích koeficientů, m je index (m=l,...,128) předpovídacího zbytkového kódového vektoru v kódovém seznamu prvního stavu.
Výše popsané váhové Euklidovo zkreslení je vypočteno v jednotce pro -výpočet zkreslení prvního stavu 306 pro 512 (=128*4) kombinací 128 vstupů (m=l,...,128) předpovídacích kódových vektorů (Cm[i],i=l, ...,N) uložených v kódovém seznamu prvního stavu 305 a čtyř sad (k=l,...,4) MA předpovídacích koeficientů používaných pro vygenerování cílových vektorů (XK[i],i=l,...,N) poskytovaných z předpovídací zbytkové výpočetní jednotky 304. Z jednotky pro výpočet zkreslení prvního stavu 306 je proto předáváno 512 zkreslení dk,m (k=l, ... ,4, m=l, ...,128) do VQ předvolbové jednotky prvního stavu 307.
VQ předvolbová jednotka prvního stavu 307 porovnává výše uvedených 512 zkreslení dk(in (k=l,...,4, m=l,...,128) poskytovaných z jednotky pro výpočet zkreslení prvního stavu 306, vybírá Nl typů kombinovaných informací k (kterému odpovídá sada MA předpovídacích koeficientů třetího řádu ze čtyř sad MA předpovídacích koeficientů třetího řádu) a m (kterému odpovídá kódový vektor ze 128 vstupů kódových vektorů kódového seznamu prvního stavu 305), a zaznamenává vybraná k a m do příslušných Nlcand_k[j] a do Nlcand_m[j], a předává zaznamenané Nlcand_k[j] a Nlcand_m[j] (j=l,...,Nl) do jednotky pro VQ zbytkový výpočet prvního stavu 308, do předpovídací zbytkové dekódovací jednotky 315 a do jednotky pro generování dekódovaného LSF 316.
Použitím sady předpovídacích koeficientů třetího řádu (přečtených z kódového seznamu předpovídacích koeficientů 302) odpovídající informacím o Nl kombinacích Nlcand_k[j] a Nlcand_m[j] (j=l,...,Nl) poskytovaných z VQ předvolbové jednotky prvního stavu 307 a kódového vektoru (přečteného ·· ···· ·· ····
-25»9·· ·· ► * · r · · «· · • · · 4 • 9 · 4 ·« ·· z kódového seznamu prvního stavu 305) v kódovém seznamu prvního stavu, vypočítává jednotka pro VQ zbytkový výpočet prvního stavu 308 NI zbytkových vektorů prvního stavu Xj<2) [i] (i=l,...,N, j=l,...,Nl), které zbývají po předvolbovém zpracování, podle níže uvedené Rovnice (7) a předává vypočtených Nl vektorů do jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311.
Xj )[Í] = XNicand_k[j]W~^^Nlcand_k[j]CTW:Í:^-Nl€and_ni|j]n]ď = 1,···,Ν, j = 1,...,N1
Rovnice (7)
Vektorový kvantifikátor druhého stavu podle tohoto provedení přebírá rozdělenou konfiguraci, rozkládající (rozdělující) VQ zbytkový vektor prvního stavu na prvky s nižší frekvencí (i=l,...,NL) a na prvky s vyšší frekvencí (i=NL+l,...,N) a vektorově kvantifikující příslušné získané vektory pomocí vzájemného rozdělení.
Vypočtený Xj(2)[i] (i=l,...,N, j=l, ,ni;
je proto předáván jednotkou pro VQ zbytkový výpočet prvního stavu 308 do jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311 v souladu s konfigurací vektorového kvantifikátoru druhého stavu. Přesněji, X
3<2) [i] (i = l, . . . ,NL, j=l, . . . ,N1) je předáván do jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a X(2) [i] vektorového vektorového zpracování (i=NL+l,...,N, j=l,...,N1) je předáván do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311.
Dosud bylo detailně popsáno zpracování kvantifikátoru prvního stavu dvou-stavového kvantifikátoru. Dále bude detailně popsáno vektorového kvantifikátoru druhého stavu dvou-stavového vektorového kvantifikátoru (zpracování odpovídající kódovému seznamu druhého stavu s nižší frekvencí 309, jednotce pro výpočet zkreslení druhého stavu s nižší frekvencí 310, jednotce pro výpočet zkreslení druhého stavu s vyšší frekvencí • · · ·
26• · · · · ·
311, kódovému seznamu druhého stavu s vyšší frekvencí 312, jednotce pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 a jednotce pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí 314).
Kódový seznam druhého stavu s nižší frekvencí 309 ukládá 64 vstupů kódových vektorů druhého stavu s nižší frekvencí (C2Lm2L [i] , i=l, - · · , NL, m2L=l, . . . , 64) . Výše uvedených 64 vstupů kódových vektorů je získáno předem vykonáním zpracování až do posledního zpracování vektorového kvantifikátoru prvního stavu, které vypočítává VQ zbytkové vektory prvního stavu v signálu řeči ve velkém počtu zpracovávaných stránek, získáním velkého počtu prvků s nižší frekvencí mnoha VQ zbytkových vektorů prvního stavu, aplikováním LBG algoritmu na tento velký počet získaných prvků s nižší frekvencí mnoha VQ zbytkových vektorů prvního stavu, vybráním 64 vstupů typických prvků s nižší frekvencí VQ zbytkových vektorů prvního stavu a dalším aplikováním zobecněného Llyodova algoritmu uvedeného v Dokumentu 8, atd., na těchto vybraných 64 vstupů typických prvků s nižší frekvencí VQ zbytkových vektorů prvního stavu.
Naopak, kódový seznam druhého stavu s vyšší frekvencí 312 ukládá 64 vstupů kódových vektorů druhého stavu s vyšší frekvencí (C2Hm2H[i] , i=NL+l, . . . ,N, m2H=l, . . . , 64) získaných aplikováním stejného způsobu jako je používán kódovým seznamem druhého stavu s nižší frekvencí 309 pro získání prvků s nižší frekvencí VQ zbytkových kódových vektorů prvního stavu.
Jednotka pro výpočet zkreslení druhého stavu s nižší frekvencí 310 vypočítává váhové Euklidovo zkreslení mezi prvky s nižší frekvencí Xj<2) [i] (i=l, . . . , NL, j =1, . . . ,Nl) VQ zbytkového kódového vektoru prvního stavu dodávaného z jednotky pro VQ zbytkový výpočet prvního stavu 308 a vektorem (MANlcand_k[j] [0] [i] *C2Lm2l[Í] z 1 = 1/ · · · z NL) kódového vektoru druhého stavu (C2Lm2L[i] z i=l/· · ·,NL) , s indexem m2L získaným vynásobením s nižší frekvencí přečteným z kódového seznamu druhého stavu s nižší frekvencí 309, prvkem aktuálně • · • · ·· ···· ·· ···· ···· ·· · · · · • ····· w · · · * · __ · ···· ····
- 27 - ···· ·· ·· · ·· ·· zpracovávané stránky (MANlcand_k[j] [0] [i] , i=l,...,NL) MA předpovídacích koeficientů podle níže uvedené Rovnice (8) a předává vypočtenou hodnotu zkreslení d2Lj,m2L do jednotky pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 .
NL d2LJ.^L=£('>'[i]*(XS!>[i]-MAN1^l[||[0][i]*C2LmIL[i]))2, .
i=i Rovnice (8) j = l.....NI, m2L = 1,...,64 kde w[i] v Rovnici (8) představuje stejnou „váhu jako v Rovnici (6) .
Předpokládáme, že jednotka pro výpočet zkreslení druhého stavu s nižší frekvencí 310 vykonává výpočet zkreslení podle výše uvedené Rovnice (8) pro 64 vstupů kódových vektorů uložených v kódovém seznamu druhého stavu s nižší frekvencí
309 pro každé j a předává všechna získaná váhová Euklidova zkreslení d2Lj(m2L (j=l, . . . , Nl, m2L=l, . . . , 64) do jednotky pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí
313 (celkem je předáváno Nl*64 d2Lj,m2L) ·
Jednotka pro výpočet zkreslení druhého stavu s vyšší frekvencí 311 vykonává stejné zpracování složky vektoru s vyšší frekvencí jako jednotka pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a předává váhové Euklidovo zkreslení d2Hj,m2H (j=l,...,Nl, m2H=l, . . . ,64) do jednotky pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí
314 (celkem je předáváno Nl*64 d2H-j,m2H) ·
Jednotka pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 specifikuje jeden index m2L, který minimalizuje zkreslení pro každé j pro váhové Euklidovo zkreslení d2Lj(m2L (j=l,...,Nl, m2L=l,...,64) dodávané z jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí
310 a zaznamenává specifikované Nl (j=l,...,Nl) indexy do příslušných N2Lcand[j] (j=l,...,Nl) a předává zaznamenaných Nl částí N2Lcand[j] (j=l,...,Nl) do předpovídací zbytkové dekódovací jednotky 315.
-28Jednotka pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí 314 specifikuje jeden index m2H, který minimalizuje zkreslení pro každé j pro váhové Euklidovo zkreslení d2Hj,m2H (j=l, . - . ,N1, m2H=l, . . . , 64) dodávané z jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311, zaznamenává specifikované NI (j=l,...,N1) indexy do příslušných N2Hcand[j] (j=l,...,Nl) a předává zaznamenaných Nl části N2Hcand[j] (j=l,...,Nl) do předpovídací zbytkové dekódovací jednotky 315.
Dosud bylo detailně popsáno zpracování vektorového kvantifikátoru druhého stavu dvou-stavového vektorového kvantifikátoru. V okamžiku, kdy je zpracování výše uvedeného vektorového kvantifikátoru druhého stavu hotovo, do předpovídací zbytkové dekódovací jednotky 315 bylo dodáno Nl (j=l,...,Nl) kombinací následujících čtyř částí informací:
(1) Nlcand_k[j]: Která ze čtyř sad MA předpovídacích koeficientů byla předběžně vybrána (2) Nlcand_m[j]: Který ze 128 vstupů kódových vektorů prvního stavu byl předběžně vybrán (3) N2Lcand[j]: Který ze 64 vstupů kódových vektorů druhého stavu s nižší frekvencí byl předběžné vybrán (4) N2Hcand[j]: Který ze 64 vstupů kódových vektorů druhého stavu s vyšší frekvencí byl předběžně vybrán.
Následující popis tohoto provedení se bude detailně zabývat zpracováním pro specifikaci čísla kombinace kombinačních informací, které minimalizuje CD, z Nl částí kombinovaných informací do tohoto okamžiku dodaných do předpovídací zbytkové dekódovací jednotky 315 (zpracování odpovídající předpovídací zbytkové dekódovací jednotce 315, jednotce pro generování dekódovaného LSF 316, převodním jednotkám LSF/LPC koeficientů 317 a 319, převodním jednotkám LPC koeficient/LPC cepstrum 318 a 320 a jednotce pro konečné vyhledávání LPC kódu 321).
• · • · · · · · • · · · · * · · ·· ·
Předpovídací zbytková dekódovací jednotka 315 čte kódové vektory (CNicand_jn[ j ], C2LN2Lcand[ j ] a C2Hjj2Hcand[ J ]) odpovídající třem vstupům indexových informací (Nlcand_m[j], N2Lcand[j] a N2Hcand[j]) z příslušného kódového seznamu prvního stavu 305, z kódového seznamu druhého stavu s nižší frekvencí 309 a z kódového seznamu druhého stavu s vyšší frekvencí 312, vypočítává Nl (J=l,...,N1) dekódovaných předpovídacích zbytkových vektorů Cqj[i] (i=l,...,N) podle níže uvedené Rovnice (9) použitím těchto kódových vektorů, zaznamenává/ zachovává vypočtené dekódované předpovídací zbytkové vektory a předává dekódované předpovídací zbytkové vektory do jednotky pro generování dekódovaného LSF 316.
Cqj[i] = ú-Nlcand_m[i]tÍ] + C2LN2Lcand|j][Í] + C2HN2Hcandg][Í], j = l,...,Nl,i = Ι,.,.,Ν
Rovnice (9) kde v Rovnici (9) C2LN2Lcand[j] [i] =0 · 0 (I=NL+1,...,N),
C2HN2Hcand[ j ] [ i 1 · θ (1 = 1NL) .
Předpovídací zbytková dekódovací jednotka 315 předává do jednotky pro generování dekódovaného LSF 316 také Nlcand_k[j] (j=l,...,N1).
Jednotka pro generování dekódovaného LSF 316 čte MA.Nicand_k[j] [0] [í ] odpovídající Nlcand_k[j] (j = l,...,Nl) dodávanému z předpovídací zbytkové dekódovací jednotky 315 z kódového seznamu předpovídacích koeficientů 302, vypočítává Nl (j=l,...,Nl) dekódovaných LSF parametrů (zde nadále označované jako ,,LSFqj[i], j=l, . . . , Nl, i = l,...,N) podle níže uvedené Rovnice (10) použitím výše přečteného MANicand_k[j) [0] [i] < průměrného LSF parametru AV[i] (i=l, . . . ,N) přečteného z jednotky pro ukládání průměrného LSF 323, XNicand_k[j] [j 1 odpovídajícího Nlcand_k[j] kvantifikovacího cílového vektoru dodávaného z předpovídací zbytkové výpočetní jednotky 304 a Cqj[i] (i=l,...,N) dodávaného z předpovídací zbytkové dekódovací jednotky 315 a předává vypočtené dekódované LSF parametry do převodní jednotky LSF/LPC koeficientů 317.
-30tf tf······ · · · · • tf tftftf tf··· ····· tftf · · · ··
LSFq j [i] = A V [i]+X NlcandJt[j] [i] + MA Nlcand_k[j] [0] [i] * Cq. [i], j = 1., Ν1, i = 1,..., N
Rovnice (10)
Převodní jednotka LSF/LPC koeficientů 317 převádí Nl (j=l,...,Nl) dekódovaných LSF parametrů (LSFqjfi], j=l,...,Nl, i=l,...,N) dodávaných z jednotky pro generování dekódovaného LSF 316 na příslušné dekódované LPC koeficienty (zde nadále označované jako „LPCqj[i], j=l,...,N1, i=l,...,N), a předává dekódované LPC koeficienty do převodní jednotky LPC koeficient/LPC cepstrum 318.
Převodní jednotka LPC koeficient/LPC cepstrum 318 převádí Nl (j=l,...,Nl) dekódovaných LPC koeficientů (LPCqj [i], i=l,...,N) dodávaných z převodní jednotky LSF/LPC koeficientů 317 na dekódovaná LPC cepstra (zde nadále označovaná jako „QCEPj [i], i=l,...,Nc, j=l,...,Nl) a předává dekódovaná LPC cepstra do jednotky pro konečné vyhledávání LPC kódu 321.
Převodní jednotka LSF/LPC koeficientů 319 převádí LSF parametry na LPC koeficienty a předává LPC koeficienty do převodní jednotky LPC koeficient/LPC cepstrum 320. Převodní jednotka LPC koeficient/LPC cepstrum 320 převádí LPC koeficienty dodávané z převodní jednotky LSF/LPC koeficientů 319 na LPC cepstrum (zde nadále označované jako ,,CEPt[i], i=l,...,Nc) a předává LPC cepstrum do jednotky pro konečné vyhledávání LPC kódu 321.
Jednotka pro konečné vyhledávání LPC kódu 321 vypočítává zkreslení DISj (j=l,...Nl) mezi LPC cepstrem (CEPt[i], i=l,...,Nc) dodávaným z převodní jednotky LPC koeficient/LPC cepstrum 320 a Nl (j=l,...,Nl) dekódovanými LPC cepstry (QCEPj [i] , i=l, ...,Nc, j=l, . . . ,Nl) dodávanými z převodní jednotky LPC koeficient/LPC cepstrum 318 podle níže uvedené Rovnice (11) a poté porovnává velikosti DISj (j=l,...,N1) a specifikuje jeden index J, který minimalizuje zkreslení.
DISj =^(CEPt(i)-QCEPj(i))2, j = l,...,Nl i=l
Rovnice (11) • 4 • ♦ • · · ·
-31• · 4 4 · 4
4 4 · «·
Ze vzájemného vztahu mezi Rovnicí (11) a Rovnicí (3) je zřejmé, že je vybrán stejný index, je-li minimalizace podle výše uvedené Rovnice (11) použita jako referenční měřítko pro specifikování indexu a je-li minimalizace CD v Rovnici (3) použita jako referenční měřítko pro specifikování indexu.
Poté jsou 21-bitové informace kombinující následující čtyři položky informací odpovídající specifikovanému indexu „J, to znamená:
(1) Nlcand_k[j]: Která ze čtyř sad MA předpovídacích koeficientů je optimální (používá 2 bity) (2) Nlcand_m[j]: Který ze 128 vstupů kódových vektorů prvního stavu je optimální (používá 7 bitů) (3) N2Lcand[j]: Který ze 64 vstupů kódových vektorů druhého stavu s nižší frekvencí je optimální (používá 6 bitů) (4) N2Hcand[j]: Který ze 64 vstupů kódových vektorů druhého stavu s vyšší frekvencí je optimální (používá 6 bitů) předávány jako LPC kód relevantní zpracovávané stránky (kód pro vyjádření spektrálních obálkových informací v jednotce pro zpracování stránky).
Vyhledávání v LPC kódovém seznamu dodává index J, který minimalizuje DISj, do předpovídací zbytkové dekódovací jednotky 315. Poté předpovídací zbytková dekódovací jednotka 315 vybírá vektor Cqj[i] (i=l,...,N) odpovídající indexu J z NI (j=l,...,Nl) zachovaných/uložených dekódovaných předpovídacích zbytkových vektorů Cqj[i] (i=l,...,N) a předává jej do jednotky pro ukládání dekódovaného předpovídacího zbytku 322.
Jednotka pro ukládání dekódovaného předpovídacího zbytku 322 vymazává nej starší dekódovaný předpovídací zbytkový vektor z dekódovaných předpovídacích zbytkových vektorů odpovídajících skupině v minulosti uložených stránek (protože toto provedení vykonává MA předpovídání třetího řádu, jsou uloženy dekódované předpovídací zbytkové vektory odpovídající posledním třem stránkám) a nově zachovává Cqj[i] (i=l,...,N) • · · · · · • ·
-32 (Nlcand_k[J], krok výpočtu
Nlcand_m[J], dekódovaného každé části nově dodaný z předpovídací zbytkové dekódovací jednotky 315 pro MA předpovídání následující zpracovávané stránky.
Výklad dosud popisoval obsah sérií zpracování po přivedení LSF parametru na vstup vektorového kvantifikovacího zařízení až do předání LPC kódu. Na druhou stranu, dekodér LSF parametrů předávaných z vektorového kvantifikovacího zařízení (také dekodér LPC koeficientů získaných převodem LSF parametrů) může obsahovat krok rozkládání LPC kódu na čtyři části indexových informací
N2Lcand[J] a N2Hcand[J]), předpovídacího zbytkového vektoru na základě indexových informací získaných v kroku rozkládání LPC kódu a krok vygenerování dekódovaného LSF vektoru na základě dekódovaného předpovídacího zbytkového vektoru získaného v kroku vypočítávání dekódovaného předpovídacího zbytkového vektoru. Přesněji, v kroku rozkládání LPC kódu je LPC kód nejprve rozkládán na čtyři části indexových informací (Nlcand_k[J], Nlcand_m[J], N2Lcand[J] a N2Hcand[J]). Poté je možno v kroku vypočítávání dekódovaného předpovídacího zbytkového vektoru získat dekódovaný předpovídací zbytkový vektor Cqj[i] (i=l,...,N) odpovídající LPC kódu přečtením kódového vektoru prvního stavu CNicand_m[j] z kódového seznamu prvního stavu 305 na základě indexových informací Nlcand_m[J], poté přečtením kódového vektoru druhého stavu s nižší frekvencí C2LN2Lcand[j] z kódového seznamu druhého stavu s nižší frekvencí 309 na základě indexových informací N2Lcand[J], přečtením kódového vektoru druhého stavu s vyšší frekvencí C2HN2Hcand[j] z kódového seznamu druhého stavu s vyšší frekvencí 312 na základě indexových informací N2Hcand[J] a vykonáním dalšího zpracování popsaným v Rovnici (9) těchto tří přečtených vektorů. Poté je možné v kroku vytváření dekódovaného LSF vektoru získat konečný dekódovaný LSF parametr (zde nadále označovaný jako ,,LSFqj[i], i=l,...,N) přečtením MANicand_k[j] [0] [i] odpovídajícího indexovým informacím ·· · · · A
-33 • · · · A A A A • · A · · • ••A · · ·· ·
Nlcand_k[J] z kódového seznamu předpovídacích koeficientů 302 a použitím přečteného MANicana_k[jj [0] [i] , průměrného LSF parametru AV[i] (i=l,...,N) přečteného z jednotky pro ukládání průměrného LSF 323, XNicand_k[j] odpovídajícího Nlcand_k[J] kvantifikovacího cílového vektoru poskytovaného z předpovídací zbytkové výpočetní jednotky 304 a Cqj[i] (i=l,...,N) poskytovaného z předpovídací zbytkové dekódovací jednotky 315, podle Rovnice (10). Je-li dekódovaný LSF parametr dále převáděn na dekódovaný LPC koeficient, je možné poskytovat krok obsahující stejné funkce jako má převodní jednotka LSF/LPC koeficientů 317 po výše popsaném kroku vygenerování dekódovaného LSF vektoru.
Jsou-li LSF parametry vektorově kvantifikovány, vektorové kvantifikovací zařízení s dvou-stavovou rozdělenou strukturou používající MA předpovídání třetího řádu, které již bylo detailně popsáno, předběžně vybírá kódy použitím váhového Euklidova zkreslení jako měřítka, a může tak vybírat optimální kódy pro zbývající kandidáty po předvolbě použitím CD (Cepstral Distortion - Cepstrální Zkreslení) jako referenčního měřítka.
Použití vektorového kvantifikovacího zařízení podle výše uvedeného provedení proto může vyřešit problém konvenční technologie (problém spočívající v tom, že LPC kód vybraný vektorovým kvantifikovacím zařízením nesouhlasí s indexem kódového vektoru, který minimalizuje CD) bez drastického zvýšení množství výpočtů požadovaných pro vyhledávání v LPC kódovém seznamu, a může zvýšit výkon vektorového kvantifikovacího zařízení LPC parametru.
Ve vektorovém kvantifikovacím zařízení podle předloženého vynálezu VQ předvolbová jednotka prvního stavu 307 řídí počet kódových vektorů, které mají být předběžně vybrány, a tím může volně řídit zvyšování množství výpočtů požadovaných pro vyhledávání v LPC kódovém seznamu obdobně jako v případě Provedení 1. To znamená, předložený vynález může zvýšit výkon
-34• ····« · · · · · · 9 9 9 9 9 9 9 9 9
9999 99 99 9 99 9 9 vektorového kvantifikátoru, přičemž bere v úvahu množství výpočtů požadovaných pro vyhledávání v LPC kódovém seznamu.
Toto provedení dále popisuje případ, ve kterém je počet kandidátů kódových vektorů Nl vybraných VQ předvolbovou jednotkou prvního stavu 307 předdefinován (Nl je často nastaveno pomocí experimentů nebo empiricky na hodnoty jako je 8, 16, 32 a 64), ale je také možné používat jiné způsoby předvolby, například nastavení prahové hodnoty jako váhového Euklidova zkreslení a ponechání kandidátů, jejichž váhové Euklidovo zkreslení je menší než nastavená prahová hodnota, jako kandidátů po provedení předvolby, a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém VQ předvolbová jednotka prvního stavu 307 předběžně vybírá kódové vektory použitím váhového Euklidova zkreslení podle výše uvedené Rovnice (2) jako měřítka, ale předložený vynález může být také realizován, je-li použito váhové Euklidovo zkreslení, jehož matematické vyjádření se liší od výše uvedené Rovnice (2), jako například Rovnice (8) nebo Rovnice (10) ve výše uvedeném Dokumentu 4, a v takovém případě může být také dosaženo podobného účinku/funkce jako v tomto provedení.
S odkazem na „váhové ve váhovém Euklidově zkreslení byly doposud navrženy různé způsoby výpočtů (například způsob vykonávání vážení podle zkreslení mezi sousedními prvky LSF parametrů popsaný v Dokumentu 5, nebo způsob vykonávání vážení podle výkonového spektra kvantifikovaciho cíle popsaný v Dokumentu 6), ale předložený vynález je aplikovatelný nezávisle na způsobu výpočtu „váhy a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém je vstupním vektorem LSF vektor, ale toto provedení je také aplikovatelné na případy, ve kterých jsou vektorově kvantifikovány jiné parametry vyjadřující krátkodobé spektrální obálkové informace signálu řeči, jako například LSP • ·
-35·«
4444 • «44 4 4 4 4 • 4 4 4 4
4444 44 44 4 vektor, PARCOR koeficienty nebo LPC vektor, a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém jednotka pro konečné vyhledávání LPC kódu 321 specifikuje konečný LPC kód použitím CD (Cepstral Distortion - Cepstrální Zkreslení) jako měřítka, ale je také možné nahradit LPC koeficient/LPC cepstrum převodní jednotky 318 a 320 LPC koeficient/FFT výkonové spektrum výpočetní jednotkou, která má funkci vypočítávání FFT výkonového spektra z LPC koeficientu, a dále změnit výpočtovou rovnici vykonávanou jednotkou pro konečné vyhledávání LPC kódu 321 z výše uvedené Rovnice (11) na výpočtovou rovnici obsaženou v části druhé mocniny výše uvedené Rovnice (4) pro použití SD (Spectral Distortion Spektrální Zkreslení) jako konečného měřítka jednotky pro vyhledávání LPC kódu, a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ vektorového kvantifikátoru majícího pro zjednodušení vysvětlení specifickou strukturu nazývanou „Dvou-stavová rozdělená struktura používající MA předpovídání třetího řádu, ale toto provedení je také aplikovatelné na vektorové kvantifikovaci zařízení LPC parametru mající jinou strukturu než v tomto příkladě a v takovém případě může být také dosaženo stejného účinku/funkce.
Toto výše uvedené provedení je přednostně aplikovatelné na kódování/dekódování krátkodobých spektrálních obálkových informací signálu řeči v kodéru/dekodéru řeči založeném na CELP systému nebo na Vocoder systému.
Provedení 3
Obr. 6 je blokový diagram ukazující konfiguraci vektorového kvantifikovacího zařízení podle Provedení 3 předloženého vynálezu. Prvky vektorového kvantifikovacího
-36·· ···· ·· ···· zařízení zobrazené na obr.6 shodné s prvky na obr.5 vysvětlenými v Provedení 2 mají přiřazeny stejné odkazové značky a jejich detailní popis zde bude vynechán.
Vektorové kvantifikovací zařízení zobrazené na obr. 6 přebírá konfiguraci, ve které jsou k vektorovému kvantifikovacímu zařízení podle obr.5 přidány kódový seznam váhových faktorů s nižší frekvencí 350 a kódový seznam váhových faktorů s vyšší frekvencí 360. Prvky 301 až 306 a 316 až 323 jsou na obr.6 pro zlepšení přehlednosti obrázku vynechány.
Stejně jako v případě Provedení 2 je konfigurace vektorového kvantifikovacího zařízení silně závislá na bitové rychlosti celého kodéru/dekodéru řeči a na počtu bitů přiřazených vektorovému kvantifikovacímu zařízení LPC parametru. V tomto případě předpokládáme pro zjednodušení vysvětlení, že jsou přiřazeny informace s 21 bity na zpracovávanou stránku o časovém intervalu 20ms.
Dále předpokládáme, že vektorové kvantifikovací zařízení, které bude vysvětleno v tomto provedení, také používá MA (Mooving Avarage - Pohyblivý Průměr) předpovídací technologii třetího řádu a používá 4 sady (2 bity jsou požadovány jako přepínací informace) MA předpovídacích koeficientů na zpracovávanou stránku. Dále předpokládáme, že vektorové kvantifikovací zařízení, které bude vysvětleno v tomto provedení, používá dvou-stavovou vektorovou kvantifikovací technologii. Dále předpokládáme, že vektorové kvantifikovací zařízení, které bude vysvětleno v tomto provedení, používá rozdělenou vektorovou kvantifikovací technologii pro druhý stav dvou-stavového vektorového kvantifikovacího zařízení. Předpokládáme, že vektorovému kvantifikátoru prvního stavu, složce vektorového kvantifikátoru druhého stavu s nižší frekvencí a složce vektorového kvantifikátoru druhého stavu s vyšší frekvencí je přiřazeno příslušných 7 bitů, 6 bitů a 6 bitů.
-37Vektorové kvantifikovací zařízení na obr.6 vykonává zpracování po přijmutí LSF parametru na vstupu až do získání cílového vektoru vektorového kvantifikátoru prvního stavu (zpracování odpovídající váhové výpočetní jednotce 301, kódovému seznamu předpovídacích koeficientů 302, MA předpovídací jednotce 303 a předpovídací zbytkové výpočetní jednotce 304) . Detaily zpracování jsou shodné jako v případě zpracování v odpovídajících jednotkách v Provedení 2 a vysvětlení bude z tohoto důvodu v tomto provedení vynecháno.
Poté vektorové kvantifikovací zařízení na obr.6 vykonává zpracování pomocí vektorového kvantifikátoru prvního stavu dvou-stavového vektorového kvantifikátoru (zpracování odpovídající kódovému seznamu prvního stavu 305, jednotce pro výpočet zkreslení prvního stavu 306, VQ předvolbové jednotce prvního stavu 307 a jednotce pro VQ zbytkový výpočet prvního stavu 308).
Níže bude popsáno zpracování vektorového kvantifikátoru prvního stavu pomocí dvou-stavového vektorového kvantifikátoru vektorového kvantifikovacího zařízení podle tohoto provedení.
Kódová jednotka prvního stavu 305 ukládá 128 vstupů předpovídacích zbytkových kódových vektorů. Těchto 128 vstupů předpovídacích zbytkových kódových vektorů je získáno předem vykonáním sérií výše popsaných zpracování až do okamžiku, kdy je vypočten kvantifikovací cíl signálu řeči ve velkém počtu zpracovávaných stránek, získáním velkého počtu předpovídacích zbytkových vektorů, aplikováním LBG algoritmu na získaný velký počet předpovídacích zbytkových vektorů, vybráním 128 vstupů typických vzorků předpovídacích zbytkových vektorů a aplikací zobecněného Lloydova algoritmu popsaného ve výše uvedeném Dokumentu 8, atd., na vybraných 128 vstupů typických vektorů.
Jednotka pro výpočet zkreslení prvního stavu 306 vypočítává váhové Euklidovo zkreslení mezi cílovým vektorem (XK[i] , i=l,...,N) vektorového kvantifikátoru prvního stavu poskytovaným z předpovídací zbytkové výpočetní jednotky 304 a • ·
-38 00 0·« 0 ····
00000 00 ·0 0 · 0 0000 0000
0000 00 00 · 00 ·0 vektorem (MAk[0] [i]*Cm[i] , i=l,...,N) získaným vynásobením předpovídacího zbytkového vektoru (Cm[i],i=l, . . . ,N) s indexem m přečteným z kódového seznamu prvního stavu 305 aktuálním prvkem zpracovávané stránky MA předpovídacího koeficientu (MAk[0] [i] , i=l,...,N) podle Rovnice (6) a předává hodnotu vypočteného zkreslení do VQ předvolbové jednotky prvního stavu 307. Váhové Euklidovo zkreslení je vypočteno v jednotce pro výpočet zkreslení prvního stavu 306 stejným způsobem jako v případě Provedení 2, to znamená, je vykonán výpočet všech kombinací (512=128*4) čtyř sad (k=l,...,4) MA předpovídacích koeficientů používaných pro vygenerování 128 vstupů (m=l,...,128) předpovídacích zbytkových kódových vektorů (Cm[i] , i=l,...,N) uložených v kódovém seznamu prvního stavu 305 a cílových vektorů (XK[i], i=l,...,N) poskytovaných z předpovídací zbytkové výpočetní jednotky 304. Z jednotky pro výpočet zkreslení prvního stavu 306 je proto v tomto provedení také předáváno celkem 512 zkreslení dk,m (k=l,...,4, m=l,...,128) do VQ předvolbové jednotky prvního stavu 307.
VQ předvolbová jednotka prvního stavu 307 porovnává výše uvedených 512 zkreslení dk,m (k=l,...,4, m=l, . . . , 128) poskytovaných z jednotky pro výpočet zkreslení prvního stavu 306, vybírá Nl typů kombinovaných informací k (kterému odpovídá sada MA předpovídacích koeficientů třetího řádu ze čtyř sad MA předpovídacích koeficientů třetího řádu) a m (kterému odpovídá kódový vektor ze 128 vstupů kódových vektorů kódového seznamu prvního stavu 305), a zaznamenává vybraná k a m do příslušných Nlcand_k[j] a do Nlcand_m[j], a předává zaznamenané Nlcand_k[j] a Nlcand_m[j] (j=l,...,N1) do jednotky pro VQ zbytkový výpočet prvního stavu 308, do předpovídací zbytkové dekódovací jednotky 315 a do jednotky pro generování dekódovaného LSF 316.
Podle tohoto provedení VQ předvolbová jednotka prvního stavu 307 dále předává Nlcand_m[j] (j=l,...,Nl) do kódového φφ Φ··Φ •Φ φφφφ
Φ φφφφ φ φ φφφφ φ φ seznamu váhových faktorů s nižší frekvencí 350 a do kódového seznamu váhových faktorů s vyšší frekvencí 360.
Jednotka pro VQ zbytkový výpočet prvního stavu 308
Nl zbytkových vektorů prvního stavu Xj(2) [i] vypočítává (i=l,...,N, j=l,...,Nl), které zbývají po předvolbovém zpracování, použitím sady předpovídacích koeficientů třetího řádu (přečtených z kódového seznamu předpovídacích koeficientů 302) odpovídající informacím o Nl kombinacích Nlcand_k[j] a Nlcand_m[j] (j=l,...,Nl) poskytovaných z VQ předvolbové jednotky prvního stavu 307 a kódových vektorů (přečtených z kódového seznamu prvního stavu 305) v kódovém seznamu prvního stavu podle Rovnice (7) a předává vypočtených Nl vektorů do jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311.
Stejně jako v Provedení 2 předpokládáme, že vektorový kvantifikátor druhého stavu podle tohoto provedení má také rozdělenou strukturu, rozkládající (rozdělující) VQ zbytkový vektor prvního stavu na složky s nižší frekvencí (i=l, .. . ,NL) a na složky s vyšší frekvencí (i=NL+l,...,N) a vektorověkvantifikující příslušné vektory odděleně.
Vektor Xj(2)[i] (i=l,...,N, j = l, . . . ,N1) vypočtený jednotkou pro VQ zbytkový výpočet prvního stavu 308 je proto předáván do jednotky pro výpočet zkreslení druhého stavu frekvencí 310 a do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311 v souladu s konfigurací vektorového kvantifikátoru druhého stavu. Přesněji, Xj(2> [i] (i=l,...,NL, j=l,...,Nl) je předáván do jednotky pro výpočet (2) [í:
zkreslení druhého stavu s nižší frekvencí 310 a X-j (i=NL+l,..., N, j=l,...,N1) je předáván do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311.
Toto je vysvětlení zpracování pomocí vektorového kvantifikátoru prvního stavu dvou-stavového vektorového kvantifikátoru.
• 9 «« 4 41 4
4*44
-404*
4 4
44444 44 44 4 4 • 4 444 4444
444444 99 9 99 99
Vektorové kvantifikovací zařízení na obr.6 dále vykonává zpracování vektorového kvantifikátoru druhého stavu dvoustavového vektorového kvantifikátoru (zpracování odpovídající kódovému seznamu druhého stavu s nižší frekvencí 309, kódovému seznamu váhových faktorů s nižší frekvencí 350, jednotce pro výpočet zkreslení druhého stavu s nižší frekvencí 310, jednotce pro výpočet zkreslení druhého stavu s vyšší frekvencí 311, kódovému seznamu váhových faktorů s vyšší frekvencí 360, kódovému seznamu druhého stavu s vyšší frekvencí 312, jednotce pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 a jednotce pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí 314) . Toto provedení bude proto také detailně vysvětlovat níže uvedené zpracování pomocí výše uvedeného vektorového kvantifikátoru druhého stavu dvoustavového vektorového kvantifikátoru.
Předpokládáme, že kódový seznam druhého stavu s nižší frekvencí 309 ukládá 64 vstupů kódových vektorů druhého stavu s nižší frekvencí (C2Lm2L[i] > i=l, · · · ,NL, m2L=l, . . . , 64) a kódový seznam druhého stavu s vyšší frekvencí 312 ukládá 64 vstupů kódových vektorů druhého stavu s vyšší frekvencí (C2Hm2H[i], i=NL+l, . . . , N, m2H=l, . . . , 64) .
Kódový seznam váhových faktorů s nižší frekvencí 350 má funkci ukládání takového počtu (v tomto provedení 128 vstupů) váhových faktorů s nižší frekvencí (SF_low[j], j=l, 2,...,NI) jako je počet předpovídacích zbytkových kódových vektorů uložených v kódovém seznamu prvního stavu 305 a funkci předávání váhových faktorů s nižší frekvencí (SF_low[Nlcand_m[j]]) odpovídajících Nlcand_m[j] dodávaným z VQ předvolbové jednotky prvního stavu 307 do jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310 a do předpovídací zbytkové dekódovací jednotky 315. Kódový seznam váhových faktorů s vyšší frekvencí 360 má funkci ukládání takového počtu (v tomto provedení 128 vstupů) váhových faktorů s vyšší frekvencí (SF_high[j], j=l, 2,...,N1) jako je počet
9 9 9 9 «
9 9 9 β
99999 I φ 9 9«
9*9« 91 99
-41•9 «««9 ·· 99*9 předpovidacích zbytkových kódových vektorů uložených v kódovém seznamu prvního stavu 305 a funkci předávání váhových faktorů s vyšší frekvencí (SF_high[Nlcand_m[j]]) odpovídajících Nlcand_m[j] dodávaným z VQ předvolbové jednotky prvního stavu 307 do jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311 a do předpovídací zbytkové dekódovací jednotky 315. Předpokládáme, že váhové faktory s nižší frekvencí (SF_low[j], j=l, 2,...,N1) a váhové faktory s vyšší frekvencí (SF_high[j], j=l, 2,...,N1) ukládají hodnoty v rozsahu 0,5 až 2,0 získané předem pomocí cvičení skládajících se z LBG algoritmu a zobecněného Lloydova algoritmu.
Jednotka pro výpočet zkreslení druhého stavu s nižší frekvencí 310 vypočítává váhové Euklidovo zkreslení mezi prvkem s nižší frekvencí Xj(2) [i] (i=l, . . . ,NL, j=l,...,Nl) VQ zbytkového vektoru prvního stavu dodávaného z jednotky pro VQ
308 a vektorem i=l,..., NL) zbytkový výpočet prvního stavu _ (MANlcand_k[j] [0] [i] *SF_low[Nlcand_m[j] ] *C2Lm2L[i] , získaným vynásobením kódového vektoru druhého stavu s nižší frekvencí (C2Lm2L[iL· i=l,...,NL) s indexem m2L přečteným z kódového seznamu druhého stavu s nižší frekvencí 309, váhovým faktorem SF_low[Nlcand_m[j]] dodávaným z kódového seznamu váhových faktorů s nižší frekvencí 350 a prvkem aktuálně zpracovávané stránky (MANicand_k[j] [0] [i] , i=l, . . . ,NL) MA předpovidacích koeficientů podle níže uvedené Rovnice (12) a předává vypočtenou hodnotu zkreslení d2Lj/in2i, do jednotky pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 .
NL d2Lj,m2L = Σ t WW * (XΓ’ M - MA Nlcand_klj] [0] [i] * SFlow [Nlcand_m|j]] * [i])}2, i=l j = l,...,Nl, m2L = l,...,64
Rovnice (12) kde w[i] v Rovnici (12) představuje stejnou „váhu jako v Rovnici (6).
Předpokládáme, že jednotka pro výpočet zkreslení druhého stavu s nižší frekvencí 310 vykonává výpočet zkreslení podle
-42• · · · · · • · · · · ··· · · · • · · 4
9444 4» 44 ·« ···· ·· ···« <r 4 e
9 4 · • * · · < • 9 · 9 4 výše uvedené Rovnice (12) pro 64 vstupů kódových vektorů uložených v kódovém seznamu druhého stavu s nižší frekvencí 309 pro každých Nl částí j specifikovaných VQ předvolbovou jednotkou prvního stavu 307 a předává všechna vypočtená váhová Euklidova zkreslení d2Lj,m2L (j =1 Nl, m2L=l,...,64) do jednotky pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 (celkem je předáváno Nl*64 d2Lj,m2L) Jednotka pro výpočet zkreslení druhého stavu s vyšší frekvencí 311 vypočítává váhové Euklidovo zkreslení mezi prvkem s vyšší frekvencí Xj<2) [i] (i=NL+l, . . . ,N, j=l,...,Nl) VQ zbytkových vektorů prvního stavu dodávaných z jednotky pro VQ zbytkový výpočet prvního stavu 308 a vektorem (MANlcand_k[j] [0] [i] *SF_high[Nlcand_m[j ] ] *C2Hm2H[i] , i=NL+l, . . . ,N) získaným vynásobením kódového vektoru druhého stavu s vyšší frekvencí (C2Hm2H[i], i=NL+l,...,N) s indexem m2H přečteným z kódového seznamu druhého stavu s vyšší frekvencí 312, váhovým faktorem SF_high[Nlcand_m[j]] dodávaným z kódového seznamu váhových faktorů s vyšší frekvencí 360 a prvkem aktuálně zpracovávané stránky (MANicand_k[j] [0] [i] , i=NL+l, . . . ,N) MA předpovídacích koeficientů podle níže uvedené Rovnice (13) a předává vypočtenou hodnotu zkreslení d2Hj;m2H do jednotky pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí 314.
d2H.m2H= ^{w[i]*(Xj2)[i]-MANlcand k|j][0][i]*SF_high[Nlcand_m|j]]*C2Hm2H[i])}2, i=NL+l j = l,...,Nl, m2H = l,...,64
Rovnice (13) kde w[i] v Rovnici (13) představuje stejnou „váhu jako v Rovnici (6).
Jednotka pro výpočet zkreslení druhého stavu s vyšší frekvencí 311 vykonává výpočet zkreslení podle výše uvedené Rovnice (13) pro 64 vstupů kódových vektorů uložených v kódovém seznamu druhého stavu s vyšší frekvencí 312 pro každých Nl částí j specifikovaných VQ předvolbovou jednotkou prvního stavu 307 a předává všechna vypočtená váhová Euklidova
-43 «4 4 4 zkreslení d2Hj<nl2H (j = l, . . . ,Nl, m2H=l, . . . , 64) do jednotky pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí 314 (celkem je předáváno Nl*64 d2Hj,m2H) ·
Jednotka pro vyhledávání v kódovém seznamu druhého stavu s nižší frekvencí 313 specifikuje jeden index m2L, který minimalizuje zkreslení pro každé j pro váhové Euklidovo zkreslení d2Lj,m2L (j=l,...,Nl, m2L=l,...,64) dodávané z jednotky pro výpočet zkreslení druhého stavu s nižší frekvencí 310, zaznamenává specifikované Nl (j=l,...,Nl) indexy do N2Lcand[j] (j=l,...,Nl) a předává zaznamenaných Nl částí N2Lcand[j] (j=l,...,Nl) do předpovídací zbytkové dekódovací jednotky 315.
Jednotka pro vyhledávání v kódovém seznamu druhého stavu s vyšší frekvencí 314 specifikuje jeden index m2H, který minimalizuje zkreslení pro každé j pro váhové Euklidovo zkreslení d2Hj,m2H (j=l,...,Nl, m2H=l, . . . , 64) dodávané z jednotky pro výpočet zkreslení druhého stavu s vyšší frekvencí 311, zaznamenává specifikované Nl (j=l, . . . ,N1) indexy do příslušných N2Hcand[j] (j=l,...,Nl) a předává zaznamenaných Nl částí N2Hcand[j] (j=l,...,Nl) do předpovídací zbytkové dekódovací jednotky 315.
Toto je vysvětlení zpracování vektorového kvantifikátoru druhého stavu dvou-stavového vektorového kvantifikátoru. V okamžiku, kdy je zpracování výše uvedeného vektorového kvantifikátoru druhého stavu hotovo, do předpovídací zbytkové dekódovací jednotky 315 je dodáno Nl (j=l,...,Nl) částí kombinovaných informací s následujícími čtyřmi informačními položkami:
(1) Nlcand_k[j]: Která ze čtyř sad MA předpovídacích koeficientů je předběžné vybrána (2) Nlcand_m[j]: Který ze 128 vstupů kódových vektorů prvního stavu je předběžně vybrán (3) N2Lcand[j]: Který ze 64 vstupů kódových vektorů druhého stavu s nižší frekvencí je předběžně vybrán • 000
-44(4) N2Hcand[j]: Který ze 64 vstupů kódových vektorů druhého stavu s vyšší frekvencí je předběžně vybrán.
Následující popis tohoto, provedení se bude detailně zabývat zpracováním pro specifikaci čísla kombinace kombinačních informací, které minimalizuje CD, z Nl částí kombinačních informací dodaných do předpovídací zbytkové dekódovací jednotky 315 (zpracování odpovídající předpovídací zbytkové dekódovací jednotce 315, jednotce pro generování dekódovaného LSF 316, převodním jednotkám LSF/LPC koeficientů 317 a 319, převodním jednotkám LPC koeficient/LPC cepstrum 318 a 320 a jednotce pro konečné vyhledávání LPC kódu 321).
Předpovídací zbytková dekódovací jednotka 315 čte kódový vektor prvního stavu CNicand_m [ j ] , váhový faktor s nižší frekvencí SF_low[Nlcand_m[j]] a váhový faktor s vyšší frekvencí SF_high [Nlcand__m[ j ] ] z příslušného kódového seznamu prvního stavu 305, z kódového seznamu váhových faktorů s nižší frekvencí 350 a z kódového seznamu váhových faktorů s vyšší frekvencí 360, na základě dodaných indexových informací Nlcand_m[j] a dále čte kódový vektor druhého stavu s nižší frekvencí C2LN2Lcanatj 1 z kódového seznamu druhého stavu s nižší frekvencí 309 na základě dodaných indexových informací N2Lcand[j], dále čte kódový vektor druhého stavu s vyšší frekvencí C2HN2Hcand[j 1 z kódového seznamu druhého stavu s vyšší frekvencí 312 na základě dodaných indexových informaci N2Hcand[j], a vypočítává Nl (J=l,...,N1) dekódovaných předpovídacích zbytkových vektorů Cqj [ i ] (i=l,...,N) podle níže uvedené Rovnice (14) použitím těchto kódových vektorů, zaznamenává/zachovává vypočtené dekódované předpovídací zbytkové vektory a předává je do jednotky pro generování dekódovaného LSF 316.
Cq j [i] = CNlcandm[j] [i] + SFlow [Nlcand_m(j]] * C2LN2Lcand[j] [i] + SFJligh[Nlcand_m[j]]*C2HN2Hcand(j][i], j = i = l,...,N
Rovnice (14)
-4599
9 9 kde v Rovnici (14) C2LN2Lcand[j] [i] =0.0 (I=NL+1, . . . ,N) , C2HN2Hcand[ j ] [i]=θ · θ (Í=1,···, NL) .
Předpovídací zbytková dekódovací jednotka 315 předává do jednotky pro generování dekódovaného LSF 316 také Nlcand_k[j] (j=l,...,N1).
Jednotka pro generování dekódovaného LSF 316 čte MANicand_k[j] [0] [i] odpovídající Nlcand_k[j] (j=l,...,Nl) dodávanému z předpovídací zbytkové dekódovací jednotky 315 z kódového seznamu předpovídacích koeficientů 302, vypočítává Nl (j=l,...,Nl) dekódovaných LSF parametrů (zde nadále označované jako ,,LSFq-j[i], j=l,...,Nl, i=l,...,N) podle Rovnice (10) použitím přečteného MANlcand_k[j] [0] [i] , průměrného LSF parametru AV[i] (i=l,...,N) přečteného z jednotky pro ukládání průměrného LSF 323, XNicand_k[j] Ci] odpovídajícího Nlcand_k[j] kvantifikovacího cílového vektoru dodávaného z předpovídací zbytkové výpočetní jednotky 304 a Cq-j[i] (i=l,...,N) dodávaného z předpovídací zbytkové dekódovací jednotky 315 a předává vypočtené dekódované LSF parametry do převodní jednotky LSF/LPC koeficientů 317.
Převodní jednotka LSF/LPC koeficientů 317 převádí Nl (j=l,...,Nl) dekódovaných LSF parametrů (LSFq-j[i], j=l,...,Nl, i=l,...,N) dodávaných z jednotky pro generování dekódovaného LSF 316 na dekódované LPC koeficienty (zde nadále označované jako ,,LPCq-j[i], j = l,...,Nl, i=l,...,N), a předává dekódované LPC koeficienty do převodní jednotky LPC koeficient/LPC cepstrum 318.
Stejně jako v případě Provedení 2, převodní jednotka LPC koeficient/LPC cepstrum 318 převádí Nl (j=l, .. .,N1) dekódovaných LPC koeficientů (LPCq-j[i], i=l,...,N) dodávaných z převodní jednotky LSF/LPC koeficientů 317 na dekódovaná LPC cepstra (zde nadále označovaná jako ,,QCEPj[i], i=l,...,Nc, j=l,...,Nl) a předává dekódovaná LPC cepstra do jednotky pro konečné vyhledávání LPC kódu 321.
• · · ·
-46Převodní jednotka LSF/LPC koeficientů 319 převádí LSF parametry na LPC koeficienty a předává LPC koeficienty do převodní jednotky LPC koeficient/LPC cepstrum 320. Převodní jednotka LPC koeficient/LPC cepstrum 320 převádí LPC koeficienty dodávané z převodní jednotky LSF/LPC koeficientů 319 na LPC cepstra (zde nadále označovaná jako ,,CEPt[i], i=l,...,Nc) a předává LPC cepstra do jednotky pro konečné vyhledávání LPC kódu 321.
Jednotka pro konečné vyhledávání LPC kódu 321 nejprve vypočítává zkreslení DISj (j=l,...Nl) mezi LPC cepstrem (CEPt[i], i=l,...,Nc) dodávaným z převodní jednotky LPC koeficient/LPC cepstrum 320 a Nl (j=l,...,Nl) dekódovanými LPC cepstry (QCEPj[i], i=l,...,Nc, j=l,...,Nl) dodávanými z převodní jednotky LPC koeficient/LPC cepstrum 318 podle Rovnice (11), porovnává velikosti vypočtených Nl částí DISj, specifikuje jeden index J, který minimalizuje DISj, a předává 21-bitové informace kombinující následující čtyři položky informací odpovídající specifikovanému indexu „J, to znamená:
(1) Nlcand_k[J]: Která ze čtyř sad MA předpovídacich koeficientů je optimální (používá 2 bity) (2) Nlcand_m[J]: Který ze 128 vstupů kódových vektorů prvního stavu je optimální (používá 7 bitů) (3) N2Lcand[J]: Který ze 64 vstupů kódových vektorů druhého stavu s nižší frekvencí je optimální (používá 6 bitů) (4) N2Hcand[J]: Který ze 64 vstupů kódových vektorů druhého stavu s vyšší frekvencí je optimální (používá 6 bitů) jako LPC kód relevantní zpracovávané stránky (kód pro vyjádření spektrálních obálkových informací v jednotce pro zpracování stránky).
Stejně jako v Provedení 2, jednotka pro konečné vyhledávání LPC kódu 321 také dodává index J, který minimalizuje DISj, do předpovídací zbytkové dekódovací jednotky 315.
-474 44444 44 44 4 4
4444 4444
444444 44 4 44 44
Poté předpovídací zbytková dekódovací jednotka 315 vybírá vektory Cqj[i] (i=l,...,N) odpovídající indexu J z NI (j=1, ··.,NI) zachovaných/uložených dekódovaných předpovídacích zbytkových vektorů Cqj[i] (i=l,...,N) a předává vektory do jednotky pro ukládání dekódovaného předpovídacího zbytku 322.
Jednotka pro ukládání dekódovaného předpovídacího zbytku 322 vymazává nej starší dekódovaný předpovídací zbytkový vektor z dekódovaných předpovídacích zbytkových vektorů odpovídajících skupině v minulosti uložených stránek (protože toto provedení vykonává MA předpovídání třetího řádu, jsou uloženy dekódované předpovídací zbytkové vektory odpovídající poslední třem stránkám) a nově zachovává Cqj(i] (i=l,...,N) nově dodaný z předpovídací zbytkové dekódovací jednotky 315 pro MA předpovídání v následující zpracovávané stránce.
Výklad dosud popisoval obsah sérií zpracování po přivedení LSF parametru na vstup vektorového kvantifikovacího zařízení až do předání LPC kódů.
Na druhou stranu, dekodér LSF parametrů předávaných z vektorového kvantifikovacího zařízení (také dekodér LPC koeficientů získaných převodem LSF parametrů) může obsahovat krok rozkládání LPC kódu na čtyři části indexových informací (Nlcand_k[J], Nlcand_m[J] , N2Lcand[J] a N2Hcand[J]), krok výpočtu dekódovaných předpovídacích zbytkových vektorů na základě každé části indexových informací získaných v kroku rozkládání LPC kódu a krok vygenerování dekódovaných LSF vektorů na základě dekódovaných předpovídacích zbytkových vektorů získaných v kroku vypočítávání dekódovaných předpovídacích zbytkových vektorů. Přesněji, v kroku rozkládání LPC kódu je LPC kód nejprve rozkládán na čtyři části indexových informací (Nlcand_k[J], Nlcand_m[J], N2Lcand[J] a N2Hcand[J]) . Poté je možno v kroku vypočítávání dekódovaných předpovídacích zbytkových vektorů získat dekódovaný předpovídací zbytkový vektor Cqj[i] (i=l,...,N) • ·
odpovídající LPC kódu přečtením kódového vektoru prvního stavu CNicand_m[j], váhového faktoru s nižší frekvencí SF_low[Nlcand_m[j]] a váhového faktoru s vyšší frekvencí SF_high[Nlcand_m[j]] z kódového seznamu prvního stavu 305, z kódového seznamu váhových faktorů s nižší frekvencí 350 a z kódového seznamu váhových faktorů s vyšší frekvencí 360 na základě indexových informací Nlcand_m[J], poté přečtením kódového vektoru druhého stavu s nižší frekvencí C2LN2Lcand[J] z kódového seznamu druhého stavu s nižší frekvencí 309 na základě indexových informací N2Lcand[J], dále přečtením kódového vektoru druhého stavu s vyšší frekvencí C2HN2Hcand[J] z kódového seznamu druhého stavu s vyšší frekvencí 312 na základě indexových informací N2Hcand[J] a použitím přečtených tří vstupů vektorů a dvou vstupů váhových faktorů pro vykonání součtu produktů zpracování podle Rovnice (14). Poté je možno získat konečný dekódovaný LSF parametr (zde nadále označovaný jako ,,LSFqj[i], i=l,...,N) přečtením MANlcand_k[J] [ 0 ] [ i ] odpovídajícího indexovým informacím Nlcand_k[J] z kódového seznamu předpovídacích koeficientů 302 a použitím přečteného MANiCand_k[j] [0] [i] z průměrného LSF parametru AV[i] (i=l, . . . ,N) přečteného z jednotky pro ukládání průměrného LSF 323, XNicand_k[j] odpovídajícího Nlcand_k[j] kvantif ikovacího cílového vektoru poskytovaného z předpovídací zbytkové výpočetní jednotky 304 a Cqj[i] (i=l,...,N) poskytovaného z předpovídací zbytkové dekódovací jednotky 315, podle Rovnice (10). Je-li dekódovaný LSF parametr dále převáděn na dekódovaný LPC koeficient, je možno dále poskytovat krok obsahující stejné funkce jako má převodní jednotka LSF/LPC koeficientů 317 po výše popsaném kroku vygenerování dekódovaného LSF vektoru.
Použitím vektorového kvantifikovacího zařízení obsahujícího dvou-stavovou rozdělenou strukturu používající MA předpovídání třetího řádu a dále vybaveného kódovým seznamem váhových faktorů s nižší frekvencí 350 a kódovým seznamem váhových faktorů s vyšší frekvencí 360 popsanými detailně
-49 4 0 0 0 0 0 · · · 0 0 0 « 0 000 0000 00000 00 4 ·* ·· výše, je možno přizpůsobit rozdělení kódového vektoru druhého stavu v celém dekódovaném vektoru kódovému vektoru CNicana_m[j] (ve skutečnosti index Nlcand_m[j]) odpovídajícímu kódovému vektoru CNicana_m[j] vybranému při kvantif ikovacím zpracování vektoru prvního stavu a řídit jej, a tím snížit kvantifikovací zkreslení, vykonávat předvolbu kódu použitím váhového Euklidova zkreslení jako měřítka a vybírat optimální kód použitím CD (Cepstral Distortion - Cepstrální Zkreslení) jako referenčního měřítka pro kandidáty zbývající po předvolbě, což umožňuje vektorové kvantifikování LSF parametru s vysokou přesností v porovnání s konvenčním vektorovým kvantifikovacím zařízením.
Použitím vektorového kvantifikovacího zařízení podle tohoto provedení, stejně jako v případě Provedení 2, je možné volně řídit přírůstek množství výpočtů požadovaných pro vyhledávání v LPC kódovém seznamu řízením počtu kódových vektorů, které mají být předběžně vybrány pomocí VQ předvolbové jednotky prvního stavu 307. To znamená, toto provedení umožňuje zvýšení výkonu vektorového kvantifikátoru, přičemž bere v úvahu přírůstek množství výpočtů požadovaných pro vyhledávání v LPC kódovém seznamu.
Toto provedení dále popisuje případ, ve kterém je počet kandidátů kódových vektorů Nl vybraných VQ předvolbovou jednotkou prvního stavu 307 předdefinován (Nl je často nastaveno pomocí experimentů nebo empiricky na hodnoty jako je 8, 16, 32 a 64), ale je také možné používat jiné způsoby předvolby, jako je například nastavení prahové hodnoty pro váhového Euklidovo zkreslení a ponechání kandidátů, jejichž váhové Euklidovo zkreslení je menší než nastavená prahová hodnota, jako kandidáty po provedení předvolby, a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém VQ předvolbová jednotka prvního stavu 307 předběžně vybírá kódové vektory použitím váhového Euklidova zkreslení podle Rovnice • · • · · · · · · · AAAA • · · · ·· · · · A ·«··«· · · · « · · A · A * A · * A · r-A · · · A · ···· “ OU - ···· ·· AA A A· AA (2) jako měřítka, ale toto provedení může být také realizováno, je-li použito váhové Euklidovo zkreslení podle rovnic odlišných od Rovnice (8) nebo Rovnice (10) ve výše uvedeném Dokumentu 4, a v takovém případě může být také dosaženo podobného účinku/funkce jako v tomto provedení.
S odkazem na „váhové ve váhovém Euklidově zkreslení byly doposud navrženy různé způsoby výpočtů (například způsob vykonávání vážení podle zkreslení mezi sousedními prvky LSF parametrů popsaný v Dokumentu 5 nebo způsob vykonávání vážení podle výkonového spektra kvantifikovacího cíle popsaný v Dokumentu 6), ale předložený vynález je aplikovatelný nezávisle na způsobu výpočtu „váhy a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém jsou vstupními vektory LSF parametry, ale toto provedení je také aplikovatelné na případ, ve kterých jsou vektorově kvantifikovány jiné parametry vyjadřující krátkodobé spektrální obálkové informace signálu řeči, jako například LSP parametr, PARCOR koeficient nebo LPC koeficient, a v tomto případě může být také dosaženo stejného účinku/funkce.
Toto provedení dále popisuje případ, ve kterém jednotka pro konečné vyhledávání LPC kódu 321 specifikuje konečný LPC kód použitím CD (Cepstral Distortion - Cepstrální Zkreslení) jako měřítka, ale je také možné nahradit LPC koeficient/LPC cepstrum převodní jednotky 318 a 320 LPC koeficient/FFT výkonové spektrum výpočetní jednotkou, která má funkci vypočítávání FFT výkonového spektra z LPC koeficientů, a dále změnit výpočtovou rovnici používanou v jednotce pro konečné vyhledávání LPC kódu 321 z Rovnice (11) na výpočtovou rovnici obsaženou v části druhé mocniny Rovnice (4) pro použití SD (Spectral Distortion - Spektrální Zkreslení) jako konečného měřítka jednotky pro vyhledávání LPC kódu, a v tomto případě může být také dosaženo stejného účinku/funkce.
···· · · · · · • ··· · · · · · · · • · · · ·· ··· ·
Toto provedení dále popisuje vektorový kvantifikátor mající specifickou strukturu nazývanou například „dvou-stavová rozdělená struktura používající MA předpovídání třetího řádu doplněná váhovými faktory, ale toto provedení je také aplikovatelné na vektorové kvantifikovací zařízení LPC parametru mající jinou strukturu než v tomto příkladě a v takovém případě může být také dosaženo stejného účinku/funkce.
Toto výše popsané provedení je přednostně aplikovatelné na kódování/dekódování krátkodobých spektrálních obálkových informací signálů řeči v kodéru/dekodéru řeči založeném na CELP systému nebo na Vocoder systému.
Provedení 4
Obr.7 je blokový diagram ukazující konfiguraci vysílacího zařízení signálu řeči a přijímacího zařízení signálu řeči podle Provedení 4 předloženého vynálezu. Na obr.7 je signál řeči převáděn na elektrický signál pomocí vstupního zařízení 401 vysílacího zařízení a je předáván do A/D převodního zařízení 402. A/D převodní zařízení 402 převádí (analogový) signál řeči předávaný ze vstupního zařízení 401 na digitální signál a předává tento signál do kodéru řeči 403.
Kodér řeči 403 kóduje digitální signál řeči předávaný z A/D převodního zařízení 402 použitím způsobu kódování řeči, který bude popsán později, a předává kódované informace do RF modulačního zařízení 404. RF modulační zařízení 404 převádí kódované informace řeči předávané z kodéru řeči 403 na signál určený k přenosu v přenosovém médiu, jako například v rádiovém frekvenčním pásmu, a předává signál do vysílací antény 405. Vysílací anténa 405 vysílá výstupní signál předávaný z RF modulačního zařízení 404 jako rádiový signál (RF signál).
RF signál vysílaný z vysílacího zařízení je přijímán pomocí přijímací antény 406 přijímacího zařízení a je předáván ·· 4 4··
• ·
- 52 4 ♦ ·· 4 4 ·· • · · ·
44·· 4· · do RF demodulačního zařízení 407. RF demodulační zařízení 407 demoduluje kódované informace řeči z RF signálu předávaného z přijímací antény 406 a předává je do dekodéru řeči 408.
Dekodér řeči 408 dekóduje signál řeči podle způsobu dekódování řeči, který bude popsán později, použitím kódovaných informací řeči předávaných z RF demodulačního zařízení 407 a předává jej do D/A převodního zařízení 409. D/A převodní zařízení 409 převádí digitální signál řeči předávaný z dekodéru řeči 408 na analogový elektrický signál a předává jej do výstupního zařízení 410. Výstupní zařízení 410 převádí elektrický signál na vibrace vzduchu a přenáší jej jako zvukovou vlnu slyšitelnou lidským uchem.
Poskytováním alespoň jednoho z vysílacího zařízení signálu řeči a přijímacího zařízení signálu řeči ve výše popsané konfiguraci je možno vytvořit zařízení pro základnovou stanici a komunikační koncové zařízení v mobilním komunikačním systému.
Výše popsané vysílací zařízení signálu řeči se vyznačuje kodérem řeči 403. Obr.8 je blokový diagram ukazující konfiguraci kodéru řeči 403. Na obr.8 je vstupním signálem řeči signál předávaný z A/D převodního zařízení 402 na obr.7 a tento signál je přiváděn na vstup předzpracovávací jednotky 501. Předzpracovávací jednotka 501 vykonává vysokofrekvenční filtrovací zpracování pro odstranění stejnosměrných složek, zpracování pro tvarování průběhu vlny a předzesilovací zpracování, které povede ke zvýšení výkonu následujícího kódovacího zpracování vstupního signálu řeči, a předává zpracovaný signál do jednotky pro LPC analýzu 502, do sčítače 505 a do jednotky pro určování parametru 513 (Xin).
Jednotka pro LPC analýzu 502 vykonává lineární předpovídací analýzu použitím Xin a předává výsledek (LPC vektor/LPC koeficienty) do LPC kvantifikovací jednotky 503. LPC kvantifikovací jednotka 503 převádí LPC vektor předávaný z jednotky pro LPC analýzu 502 na LSF parametr a vektorově-53 4 444 4 4 44 « 4 4 4 4
4444 44 44 4 kvantifikuje LSF vektor získaný pomocí převodu použitím způsobu zobrazeného v Provedeních 1, 2 a 3, a předává LPC kód (L) získaný vektorovou kvantifikací do multiplexovací jednotky 514.
LPC kvantifikovací jednotka 503 dále získává dekódovaný LPC vektor v LSF doméně použitím dekódovacího způsobu LPC vektoru zobrazeného v Provedeních 1, 2 a 3, převádí získaný dekódovaný LPC (LSF) vektor na dekódované LPC koeficienty a předává dekódované LPC koeficienty získané převodem do syntetizačního filtru 504.
Syntetizační filtr 504 vykonává filtrovací syntézu použitím dekódovaných LPC koeficientů a excitačního vektoru předávaného ze sčítače 511 a předává syntetizovaný signál do sčítače 505. Sčítač 505 vypočítává chybový signál mezi Xin a syntetizovaným signálem a předává chybový signál do perceptuální váhové jednotky 512.
Perceptuální váhová jednotka 512 vykonává perceptuální vážení chybového signálu předávaného ze sčítače 505, vypočítává zkreslení mezi Xin a syntetizovaným signálem v perceptuální váhové doméně a předává jej do jednotky pro určování parametru 513. Jednotka pro určování parametru 513 určuje signál, který má být vygenerován z adaptivního excitačního kódového seznamu kódového seznamu 508 a kvantifikovaného zesílení 507 předávané z perceptuální minimalizováno.
506, z pevného excitačního z jednotky pro generování tak, aby kódovací zkreslení váhové jednotky 512 bylo
Kódovací výkon je také možno dále zvýšit nejenom pomocí minimalizace kódovacího zkreslení předávaného z perceptuální váhové jednotky 512, ale také pomocí určování signálu, který má být vygenerován ze zmíněných tří prostředků využitím jiného kódovacího zkreslení používajícího Xin.
Adaptivní excitační kódový seznam 506 ukládá do vyrovnávací paměti excitační signály předávané v minulosti ze
4444
4·· 4444 444 4
444 4444 «« 4 44 44 sčítače 511, získává adaptivní excitační vektory z pozice specifikované signálem (A) předávaným z jednotky pro určování parametru 513 a předává je do násobiče 509. Pevný excitační kódový seznam 508 předává vektory mající tvar specifikovaný signálem (F) předávaným z jednotky pro určování parametru 513 do násobiče 510.
Jednotka pro generování kvantifikovaného zesílení 507 předává adaptivní excitační zesílení a pevné excitační zesílení specifikované signálem (G) předávaným z jednotky pro určování parametru 513 do příslušných násobičů 509 a 510.
Násobič 509 násobí adaptivní excitační vektor předávaný z adaptivního excitačního kódového seznamu 506 kvantifikovaným adaptivním excitačním zesílením předávaným z jednotky pro generování kvantifikovaného zesílení 507 a předává výsledek vynásobení do sčítače 511. Násobič 510 násobí pevný excitační vektor předávaný z pevného excitačního kódového seznamu 508 pevným excitačním zesílením předávaným z jednotky pro generování kvantifikovaného zesílení 507 a předává výsledek vynásobení do sčítače 511.
Sčítač 511 získává na vstupu adaptivní excitační vektor a pevný excitační vektor po vynásobení zesílením z příslušných násobičů 509 a 510, vykonává vektorové sčítání a předává výsledek součtu do syntetizačního filtru 504 a do adaptivního excitačního kódového seznamu 506.
Konečně multiplexovací jednotka 514 získává na vstupu kód L reprezentující kvantifikovaný LPC kód z LPC kvantifikovací jednotky 503, kód A reprezentující adaptivní excitační vektor, kód F reprezentující pevný excitační vektor a kód G reprezentující kvantifikované zesílení z jednotky pro určování parametru 513 a multiplexuje tyto části informací a předává multiplexované informace jako kódované informace do přenosové cesty.
Obr. 9 je blokový diagram ukazující konfiguraci dekodéru řeči 408 na obr.7. Na obr.9 jsou multiplexované kódované • · « · • · ··Α ·
-55• · · ·· informace předávané z RF demodulační jednotky 407 démultiplexovány na jednotlivé části kódovaných informací v demultiplexovací jednotce 601.
Dému ltiplexo váný LPC kód L je předáván do LPC dekódovací jednotky 602, kód A demultiplexovaného adaptivního excitačního vektoru je předáván do adaptivního excitačního kódového seznamu 605, kód G demultiplexovaného excitačního zesílení je předáván do jednotky pro generování kvantifikovaného zesílení 606 a kód F demultiplexovaného pevného excitačního vektoru je předáván do pevného excitačního kódového seznamu 607.
LPC dekódovací jednotka 602 získává dekódovaný LPC vektor z kódu L (který odpovídá LPC kódu v Provedeních 1, 2 a 3) předávaného z demultiplexovací jednotky 601 použitím způsobu generování LPC vektoru zobrazeného v Provedeních 1, 2 a 3, převádí získaný dekódovaný LPC vektor na dekódované LPC koeficienty a předává dekódované LPC koeficienty získané převodem do syntetizačního filtru 603.
Adaptivní excitační kódový seznam 605 získává adaptivní excitační vektor z pozice specifikované kódem A předávaným z demultiplexovací jednotky 601 a předává jej do násobiče 608. Pevný excitační kódový seznam 607 generuje pevný excitační vektor specifikovaný kódem F předávaným z demultiplexovací jednotky 601 a předává jej do násobiče 609.
Jednotka pro generování kvantifikovaného zesílení 606 dekóduje adaptivní excitační vektorové zesílení a pevné excitační vektorové zesílení specifikované kódem G excitačního zesílení předávaným z demultiplexovací jednotky 601 a předává zesílení do příslušných násobičů 608 a 609. Násobič 608 násobí adaptivní kódový vektor zesílením adaptivního kódového vektoru a předává výsledek vynásobení do sčítače 610. Násobič 609 násobí pevný kódový vektor zesílením pevného kódového vektoru a předává výsledek vynásobení do sčítače 610.
Sčítač 610 sčítá adaptivní excitační vektor a pevný excitační vektor po vynásobení zesílením předávané z násobičů
-56»0 ··»♦ •4 ··<·
608 a 609 a předává výsledek součtu do syntetizačního filtru
603. Syntetizační filtr 603 vykonává filtrovací syntézu použitím excitačního vektoru předávaného ze sčítače 610 jako signálu zvukového zdroje a použitím syntetizačního filtru vytvořeného pomocí dekódovaných LPC koeficientů dodávaných z LPC dekódovací jednotky 602 jako filtrovacího koeficientu, a předává syntetizovaný signál do jednotky následného zpracování
604.
Jednotka následného zpracování 604 vykonává zpracování pro zlepšení subjektivní kvality řeči jako je například formantní zvýraznění a/nebo krokové zvýraznění, a zpracování pro zlepšení subjektivní kvality řeči segmentů stacionárního šumu, atd., a předává zpracovaný signál jako konečný dekódovaný signál řeči.
Aplikací LPC vektorového kvantifikovacího zařízení podle předloženého vynálezu na kodér/dekodér řeči je tak možno získat syntetizovanou řeč s vyšší kvalitou než v případě kodéru/dekodéru používaného v konvenčním vektorovém kvantifikovacím zařízení.
Výše popsaný kodér/dekodér je dále aplikovatelný také na komunikační zařízení jako je například zařízení základnové stanice a mobilní stanice v digitálním rádiovém komunikačním systému. To umožňuje získání syntetizované řeči s vyšší kvalitou než v případě použití konvenčního vektorového kvantifikovacího zařízení v digitálním rádiovém komunikačním systému.
Předložený vynález není omezen výše uvedenými Provedeními 1 až 3, ale může být také realizován jejich modifikacemi různými způsoby. Vektorové kvantifikování/dekódování LPC vektoru podle Provedení 1, 2 a 3 bylo například vysvětleno jako vektorové kvantifikovací zařízení nebo kodér řeči/dekodér řeči, ale vektorové kvantifikování/dekódování LPC vektoru může být také realizováno pomocí software. Výše popsaný LPC vektorový kvantifikovací/dekódovací program je například možno
-5700 ·0 0 0 0 0 • 000 ·
«000 ** »· 0*0*
000 0 uložit do ROM a program je možno spouštět pomocí příkazů z CPU. Dále je možno ukládat LPC vektorový kvantifikovací/dekódovací program na paměťové médium čitelné počítačem, nahrávat LPC vektorový kvantifikovací/dekódovací program z tohoto média do paměti RAM počítače a spouštět jej podle vektorového kvantifikovacího programu. V tomto případě může být také dosaženo podobného účinku/funkce jako v Provedeních 1, 2 a 3.
Jak je zřejmé z výše uvedených vysvětlení, jsou-li LPC parametry reprezentující krátkodobé spektrální obálkové informace signálu řeči vektorově kvantifikovány, předložený vynález může předběžně vybírat malé množství kódových vektorů použitím (váhového) Euklidova zkreslení jako měřítka, vykonávat vyhledávání v kódovém seznamu (specifikaci konečného LPC kódu) použitím hodnot zkreslení spektrálního prostoru jako například CD (Cepstral Distortion - Cepstrální Zkreslení) nebo SD (Spectral Distortion - Spektrální Zkreslení) jako referenčního měřítka, a následně poskytovat vektorový kvantifikátor s vyšším výkonem než v případě konvenčního vektorového kvantifikovacího zařízení používajícího pouze (váhové) Euklidovo měřítko jako referenční měřítko pro vyhledávání v kódovém seznamu (zkreslení ve spektrálním prostoru jako například CD a SD je menší než v konvenčním případě).
Aplikace LPC vektorového kvantifikovacího zařízení podle předloženého vynálezu na kodér/dekodér řeči dále umožňuje získávat syntetizovanou řeč s vyšší kvalitou než v případě kodéru/dekodéru používaném v konvenčním vektorovém kvantifikovacím zařízení.
Přihláška je založena na Japonské Patentové Přihlášce č. 2000-366191 podané 30.listopadu 2000, jejíž celý obsah je zde výslovně uveden jako odkaz.
···· «4 · 4 »44 4 ·
4 «« ···· ·
·
Průmyslová využitelnost
Předložený vynález je přednostně aplikovatelný na kodér/dekodér řeči používaný pro zlepšení účinnosti vysílání signálu řeči v oblasti paketového komunikačního systému reprezentovaného Internetovou komunikací a mobilním komunikačním systémem, atd.

Claims (25)

  1. PATENTOVÉ
    NÁROKY
    Vektorové kvantifikovací zařízení LPC parametru, vyznačující se tím, že obsahuje: první výpočetní jednotku, která vypočítává zkreslení mezi skupinou kódových vektorů přečtených postupně z kódového seznamu ukládajícího velký počet kódových vektorů a kvantifikovacím cílem používajícím první vyhodnocovací měřítko zkreslení;
    předvolbovou jednotku, která předběžně vybírá kódové vektory zmenšující velikost zkreslení podle zmíněného prvního vyhodnocovacího měřítka zkreslení ze zmíněného velkého počtu kódových vektorů;
    druhou výpočetní jednotku, která vypočítává zkreslení mezi předběžně vybranými kódovými vektory a zmíněným kvantifikovacím cílem použitím druhého vyhodnocovacího měřítka zkreslení, které je odlišné od zmíněného prvního vyhodnocovacího měřítka zkreslení; a jednotku pro konečné vyhledávání, která specifikuje kódový vektor minimalizující velikost zkreslení podle zmíněného druhého vyhodnocovacího měřítka zkreslení z předběžně vybraných kódových vektorů a předává indexové informace specifikovaného kódového vektoru.
    Vektorové kvantifikovací zařízení LPC parametru podle nároku 1, vyznačující se tím, že kvantifikovacím cílem je LPC parametr, který reprezentuje krátkodobé spektrální obálkové informace signálu řeči.
    Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že LPC parametrem je LPC koeficient získaný vykonáním lineární předpovídací analýzy signálu řeči v jednotce zpracovávané stránky.
    • ·
    - 604. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že LPC parametrem je parametr získaný převodem LPC koeficientu získaného vykonáním lineární předpovídací analýzy signálu řeči v jednotce zpracovávané stránky na parametr ve frekvenční oblasti.
  2. 5. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznaču j ící se tím, že LPC parametrem je LSF parametr získaný převodem LPC koeficientu získaného vykonáním lineární předpovídací analýzy signálu řeči v jednotce zpracovávané stránky.
  3. 6. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že LPC parametrem je LSP parametr získaný převodem LPC koeficientu získaného vykonáním lineární předpovídací analýzy signálu řeči v jednotce zpracovávané stránky.
  4. 7. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2,vyznačující setím, že prvním vyhodnocovacím měřítkem zkreslení používaným pro výpočet zkreslení mezi kódovými vektory přečtenými postupně z kódového seznamu a kvantifikovacím cílem je Euklidovo zkreslení.
  5. 8. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že prvním vyhodnocovacím měřítkem zkreslení používaným pro výpočet zkreslení mezi kódovými vektory přečtenými postupně z kódového seznamu a kvantifikovacím cílem je váhové Euklidovo zkreslení.
    - 619. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že druhým vyhodnocovacím měřítkem zkreslení používaným pro výpočet zkreslení mezi předběžně vybranými kódovými vektory a kvantifikovacím cílem je měřítko pro vyhodnocení velikosti zkreslení ve frekvenčním spektrálním prostoru.
  6. 10. Vektorové kvantifikovací zařízení LPC parametru podle nároku 9, vyznačující se tím, že druhým vyhodnocovacím měřítkem zkreslení používaným pro výpočet zkreslení mezi předběžně vybranými kódovými vektory a kvantifikovacím cílem je cepstrální zkreslení (CD) .
  7. 11. Vektorové kvantifikovací zařízení LPC parametru podle nároku 9, vyznačující se tím, že druhým vyhodnocovacím měřítkem zkreslení používaným pro výpočet zkreslení mezi předběžně vybranými kódovými vektory a kvantifikovacím cílem je spektrální zkreslení (SD) .
  8. 12. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že počet kódových vektorů předběžně vybraných v předvolbové jednotce je specifikován předem.
  9. 13. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že předvolbová jednotka přednastavuje prahovou hodnotu jako velikost zkreslení pomocí prvního vyhodnocovacího měřítka zkreslení a předběžně vybírá kódové vektory, jejichž velikost zkreslení daná prvním vyhodnocovacím měřítkem je menší než zmíněná prahová hodnota.
    • ·
    - 62
  10. 14. Dekodér LPC parametru obsahující:
    vstupní jednotku, která přijímá na vstupu indexové informace předávané vektorovým kvantifikovacím zařízením podle nároku 2; a čtecí jednotku, která čte libovolný kódový vektor ze stejného kódového seznamu jako je kódový seznam ve zmíněném kvantifikovacím zařízení a skupina kódových vektorů uložených ve zmíněném kódovém seznamu;
    vyznačující se tím, že kódový vektor odpovídající zmíněným indexovým informacím je přečten ze zmíněného kódového seznamu a přečtený kódový vektor je předáván jako dekódovaný LPC parametr.
  11. 15. Vektorové kvantifikovací zařízení LPC parametru, vyznačující se tím, že obsahuje: výpočetní jednotku zkreslení, která vypočítává Euklidovo zkreslení mezi kódovými vektory přečtenými postupně z LSF kódového seznamu ukládajícího velký počet LSF kódových vektorů a kvantifikovacím cílem;
    předvolbovou jednotku LPC kódu, která předběžně vybírá zmenšující zmíněné Euklidovo dekódované LSF indexy kódových vektorů zkreslení a generuje parametry vybraným jejich příslušným předběžně odpovídaj ící indexům;
    první převodní jednotku LSF/LPC koeficientů, která převádí zmíněné dekódované LSF parametry na jejich příslušné dekódované LPC koeficienty;
    první převodní jednotku LPC koeficient/LPC cepstrum, která převádí zmíněné dekódované LPC koeficienty na jejich příslušná LPC cepstra;
    druhou převodní jednotku LSF/LPC koeficientů převádějící
    LSF parametr, který je kvantifikovacím cílem, na LPC koeficient;
    - 63 druhou převodní jednotku LPC koeficient/LPC cepstrum převádějící LPC koeficient získaný převodem zmíněného kvantifikovacího cíle na LPC cepstrum;
    jednotku pro konečné vyhledávání LPC kódu, která vypočítává cepstrální zkreslení (CD) mezi LPC cepstry získanými převodem kvantifikovacích cílů dodávaných ze zmíněné první a druhé převodní jednotky LPC koeficient/ LPC cepstrum a LPC cepstry získanými převodem dekódovaných LSF parametrů, a předává index LSF kódového vektoru odpovídajícího LPC cepstru, které minimalizuje zmíněné cepstrální zkreslení, jako LPC kód.
  12. 16.
    Vektorové kvantifikovací zařízení LPC parametru, vyznačující se tím, že obsahuje: výpočetní jednotku zkreslení, která vypočítává Euklidovo zkreslení mezi kódovými vektory přečtenými postupně z LSF kódového seznamu ukládajícího velký počet LSF kódových vektorů a kvantifikovacím cílem;
    předvolbovou jednotku LPC kódu, která předběžně vybírá indexy kódového vektoru zmenšující zmíněné Euklidovo zkreslení a generuje dekódované LSF parametry odpovídající jejich příslušným předběžně vybraným indexům;
    převodní jednotku LSF/LPC koeficientů, která převádí zmíněné dekódované LSF parametry na jejich příslušné dekódované LPC koeficienty;
    první výpočetní jednotku LPC koeficient/FFT výkonové spektrum, která vypočítává FFT výkonová spektra ze zmíněných dekódovaných LPC koeficientů;
    převodní jednotku LSF/LPC koeficientů převádějící LSF parametr, který je kvantifikovacím cílem, na LPC koeficient;
    druhou výpočetní jednotku LPC koeficient/FFT výkonové spektrum vypočítávající FFT výkonové spektrum z LPC • · • 444
    4 4 4 4
    -64koeficientu získaného převodem zmíněného kvantifikovacího cíle; a jednotku pro konečné vyhledávání LPC kódu, která vypočítává spektrální zkreslení (SD) mezi FFT výkonovými spektry získanými převodem kvantifikovacích cílů dodávaných ze zmíněné první a druhé výpočetní jednotky LPC koeficient/FFT výkonové spektrum a FFT výkonovými spektry získanými převodem dekódovaných LSF parametrů, a předává index LSF kódového vektoru odpovídáj ícího FFT výkonovému spektru, které minimalizuje zmíněné spektrální zkreslení, jako LPC kód.
  13. 17. Dekodér LPC parametru obsahující:
    vstupní jednotku, která přijímá na vstupu LPC kód předávaný vektorovým kvantifikovacím zařízením LSF parametru podle nároku 15; a čtecí jednotku, která čte libovolný kódový vektor ze stejného kódového seznamu jako je kódový seznam používaný pro vektorovou kvantifikaci a skupina kódových vektorů uložená ve zmíněném kódovém seznamu;
    vyznačující se tím, že kódový vektor odpovídající zmíněnému vstupnímu kódu je přečten ze zmíněného kódového seznamu a předáván jako dekódovaný LPC parametr.
  14. 18. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že vykonává předpovídací vektorovou kvantifikaci.
  15. 19. Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že vykonává rozdělenou vektorovou kvantifikaci.
    -6520.
    Vektorové nároku 2, vykonává rozdělenou kvantifikovací zařízení LPC parametru podle vyznačující se tím, že předpovídací vektorovou kvantifikaci a vektorovou kvantifikaci.
    21.
    22.
    Vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že vykonává MA předpovídací vektorovou kvantifikaci třetího řádu, dvou-stavovou vektorovou kvantifikaci a rozdělenou vektorovou kvantifikaci, vektorově kvantifikuje LPC parametr přiváděný na vstup jako kvantifikovací cíl a na výstupu předává LPC kód.
    Vektorové kvantifikovací zařízení LPC parametru mající dvou-stavovou rozdělenou konfiguraci, které vypočítává rozdílový vektor odečtením předem uloženého průměrného LSF parametru od vstupního LSF parametru, vypočítává předpovídací vektor odpovídající zmíněnému rozdílovému vektoru, vypočítává předpovídací zbytkový vektor dalším odečtením zmíněného předpovídacího vektoru od zmíněného rozdílového vektoru, vektorově kvantifikuje předpovídací zbytkový vektor a předává LPC kód, vyznačuj ící se tím, že obsahuje:
    vektorovou kvantifikovací jednotku prvního stavu, která vektorově kvantifikuje zmíněný předpovídací zbytkový vektor použitím skupiny předpovídacích zbytkových vektorů uložených v kódovém seznamu prvního stavu a použitím váhového Euklidova zkreslení jako vyhodnocovacího měřítka zkreslení; a vektorovou kvantifikovací jednotku druhého stavu, která vektorově kvantifikuje VQ zbytkový vektor prvního stavu vygenerovaný pomocí zmíněné vektorové kvantifikovací jednotky prvního stavu použitím skupiny složek VQ zbytkových vektorů prvního stavu s nižší frekvencí • tf • tf
    - 66uložených v kódovém seznamu druhého stavu s nižší frekvencí a složek VQ zbytkových vektorů prvního stavu s vyšší frekvencí uložených v kódovém seznamu druhého stavu s vyšší frekvencí a použitím cepstrálního zkreslení (CD) jako vyhodnocovacího měřítka zkreslení.
  16. 23. Vektorové kvantifikovací zařízení LPC parametru mající dvou-stavovou rozdělenou konfiguraci, které vypočítává rozdílový vektor odečtením předem uloženého průměrného LSF parametru od vstupního LSF parametru, vypočítává předpovídací vektor odpovídající zmíněnému rozdílovému vektoru, vypočítává předpovídací zbytkový vektor dalším odečtením zmíněného předpovídacího vektoru od zmíněného rozdílového vektoru, vektorově kvantifikuje předpovídací zbytkový vektor a předává LPC kód, vyznačuj ící se tím, že obsahuje:
    vektorovou kvantifikovací jednotku prvního stavu, která vektorově kvantifikuje zmíněný předpovídací zbytkový vektor použitím skupiny předpovídacích zbytkových vektorů uložených v kódovém seznamu prvního stavu a použitím váhového Euklidova zkreslení jako vyhodnocovacího měřítka zkreslení; a vektorovou kvantifikovací jednotku druhého stavu, která vektorově kvantifikuje VQ zbytkový vektor prvního stavu vygenerovaný pomocí zmíněné vektorové kvantifikovací jednotky prvního stavu použitím stejného počtu vstupů váhových faktorů s nižší frekvencí jako je počet předpovídacích zbytkových vektorů uložených v kódovém seznamu váhových faktorů s nižší frekvencí, stejného počtu vstupů váhových faktorů s vyšší frekvencí jako je počet předpovídacích zbytkových vektorů uložených v kódovém seznamu váhových faktorů s vyšší frekvencí a kódových vektorů s vyšší frekvencí uložených v kódovém seznamu druhého stavu s vyšší frekvencí a použitím ·· ·« ·· • · · · 9 · · · · · • ····· · · · · · · rn · ···· ··♦♦
    -ο/- ·«···« ♦·· ·* · ·
    Μ · ·· · cepstrálního zkreslení (CD) jako vyhodnocovacího měřítka zkreslení.
  17. 24. Dekodér LPC parametru, vyznačující se tím, že na vstupu přijímá LPC kód předávaný vektorovým kvantifikovacím zařízením LPC parametru podle nároku 21 a na základě zmíněného vstupního LPC kódu generuje dekódovaný LPC parametr.
  18. 25. Dekodér LSF parametru, který rozkládá LPC kód předávaný vektorovým kvantifikovacím zařízení podle nároku 22 na indexové informace, vypočítává dekódovaný předpovídací zbytkový vektor na základě těchto indexových informací a generuje dekódovaný LSF parametr na základě tohoto dekódovaného předpovídacího zbytkového vektoru, vy značující se tím, že zmíněný dekodér LSF parametru čte kódový vektor prvního stavu odpovídající zmíněným indexovým informacím, kódový vektor druhého stavu s nižší frekvencí a kódový vektor druhého stavu s vyšší frekvencí z jejich příslušných kódových seznamů, sčítá dohromady zmíněné tři přečtené kódové vektory a tím generuje dekódovaný předpovídací zbytkový vektor.
  19. 26. Dekodér LSF parametru, který rozkládá LPC kód předávaný vektorovým kvantifikovacím zařízení podle nároku 23 na indexové informace, vypočítává dekódovaný předpovídací zbytkový vektor na základě těchto indexových informací a generuje dekódovaný LSF parametr na základě tohoto dekódovaného předpovídacího zbytkového vektoru, vy značující se tím, že zmíněný dekodér LSF parametru čte kódový vektor prvního stavu odpovídající zmíněným indexovým informacím, kódový vektor druhého stavu s nižší frekvencí, kódový vektor druhého stavu s vyšší frekvencí a váhový faktor s nižší frekvencí a
    - 68váhový faktor s vyšší frekvencí z jejich příslušných kódových seznamů, vypočítává součet produktů zmíněných tří přečtených kódových vektorů a dvou váhových faktorů a tím generuje dekódovaný předpovídací zbytkový vektor.
  20. 27. Dekodér LPC koeficientu, vyznačující se tím, že obsahuje funkci pro převod dekódovaného LSF parametru vygenerovaného pomocí dekodéru LSF parametru podle nároku 25 na dekódovaný LPC koeficient.
  21. 28. Dekodér LPC koeficientu, vyznačující se tím, že převádí dekódovaný LSF parametr vygenerovaného pomocí dekodéru LSF parametru podle nároku 26 na dekódovaný LPC koeficient.
  22. 29. Počítačově-čitelné záznamové médium ukládající vektorově kvantifikovací program LPC parametru, vyznačuj í cí se tím, že zmíněný vektorově kvantifikovací program LPC parametru obsahuje:
    krok vypočítávání zkreslení mezi skupinou kódových vektorů přečtených postupně z kódového seznamu ukládajícího velký počet kódových vektorů a kvantifikovacím cílem používajícím první vyhodnocovací měřítko zkreslení;
    krok předběžného výběru kódového vektoru zmenšující velikost zkreslení podle zmíněného prvního vyhodnocovacího měřítka zkreslení ze zmíněného velkého počtu kódových vektorů;
    krok vypočítávání zkreslení mezi předběžně vybranými kódovými vektory a zmíněným kvantif ikovacím cílem použitím druhého vyhodnocovacího měřítka zkreslení, které je odlišné od zmíněného prvního vyhodnocovacího měřítka zkreslení; a • 0 • · · · 0 0 ·
    00 ··· ·
    - 69 • 400 · · · · • 0 0 0 0
    00 0 0 4 4 4 0 · krok specifikování kódového vektoru minimalizujícího velikost zkreslení podle zmíněného druhého vyhodnocovacího měřítka zkreslení z předběžně vybraných kódových vektorů a předávání indexových informací specifikovaného kódového vektoru.
    Počítačově-čitelné záznamové médium ukládající vektorový dekódovací program LPC parametru, vyznačuj ící se tím, že zmíněný vektorový dekódovací program LPC parametru obsahuje:
    krok přečtení kódových vektorů odpovídajících indexovým informacím předávaným vektorově kvantifikovacím programem podle nároku 23 z kódového seznamu; a krok předávání přečteného kódového vektoru jako dekódovaného LPC parametru.
  23. 31. Kodér řeči používající vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že obsahuje:
    jednotku, která kvantifikuje/kóduje spektrální charakteristiky vstupního signálu řeči;
    adaptivní excitační kódový seznam, který reprezentuje periodické složky vstupního signálu řeči; pevný excitační kódový seznam;
    jednotku, který syntetizuje syntetizovaný signál řeči použitím excitačních vektorů vygenerovaných ze zmíněného pevného excitačního kódového seznamu a ze zmíněného adaptivního excitačního kódového seznamu, a zmíněných parametrů; a jednotku, která určuje výstupy ze zmíněného pevného kódového seznamu a ze zmíněného adaptivního kódového seznamu tak, aby zkreslení mezi vstupním signálem řeči a zmíněným syntetizovaným signálem řeči klesalo.
    -7044
  24. 32. Kodér řeči používající dekodér LPC parametru podle nároku 14,vyznačující se tím, že obsahuje: jednotku, která dekóduje parametry reprezentující spektrální charakteristiky zakódované pomocí kodéru řeči; pevný excitační kódový seznam;
    adaptivní excitační kódový seznam, který reprezentuje periodické složky syntetizovaného signálu řeči; a jednotku, která dekóduje excitační vektory určené pomocí zmíněného kodéru řeči ze zmíněného pevného excitačního kódového seznamu a ze zmíněného adaptivního excitačního kódového seznamu a syntetizuje syntetizovaný signál řeči z dekódovaného excitačního vektoru a zmíněného parametru.
  25. 33. Vysílací zařízení signálu řeči vybavené kodérem řeči, zmíněný kodér řeči používá vektorové kvantifikovací zařízení LPC parametru podle nároku 2, vyznačující se tím, že obsahuje:
    jednotku, která kvantifikuje/kóduje spektrální charakteristiky vstupního signálu řeči;
    adaptivní excitační kódový seznam, který reprezentuje periodické složky vstupního signálu řeči; pevný excitační kódový seznam;
    jednotku, který syntetizuje syntetizovaný signál řeči použitím excitačních vektorů vygenerovaných ze zmíněného pevného excitačního kódového seznamu a ze zmíněného adaptivního excitačního kódového seznamu, a zmíněných parametrů; a jednotku, která určuje výstupy ze zmíněného pevného kódového seznamu a ze zmíněného adaptivního kódového seznamu tak, aby zkreslení mezi vstupním signálem řeči a zmíněným syntetizovaným signálem řeči klesalo.
    Přijímací zařízení signálu řeči vybavené dekodérem řeči, zmíněný dekodér řeči používá dekodér LPC parametru podle ·· ·· ··*· ♦ · · · · · ·
    -71• ··· · ♦ · · • · · · · ······ ·· · nároku 14, vyznačující se tím, ze obsahuj e:
    jednotku, která dekóduje parametry reprezentující spektrální charakteristiky zakódované pomocí kodéru řeči; pevný excitační kódový seznam;
    adaptivní excitační kódový seznam, který reprezentuje periodické složky syntetizovaného signálu řeči; a jednotku, která dekóduje excitační vektory určené pomocí zmíněného kodéru řeči ze zmíněného pevného excitačního kódového seznamu a ze zmíněného adaptivního excitačního kódového seznamu a syntetizuje syntetizovaný signál řeči z dekódovaného excitačního vektoru a zmíněného parametru.
CZ2003-1500A 2000-11-30 2001-11-29 Vektorové kvantizační zařízení LPC parametru, kodér řeči a přijímací zařízení signálu řeči CZ304196B6 (cs)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000366191 2000-11-30

Publications (2)

Publication Number Publication Date
CZ20031500A3 true CZ20031500A3 (cs) 2003-10-15
CZ304196B6 CZ304196B6 (cs) 2013-12-27

Family

ID=18836849

Family Applications (1)

Application Number Title Priority Date Filing Date
CZ2003-1500A CZ304196B6 (cs) 2000-11-30 2001-11-29 Vektorové kvantizační zařízení LPC parametru, kodér řeči a přijímací zařízení signálu řeči

Country Status (9)

Country Link
US (1) US7392179B2 (cs)
EP (2) EP1339040B1 (cs)
KR (2) KR100910282B1 (cs)
CN (1) CN1200403C (cs)
AU (1) AU2002218501A1 (cs)
CA (2) CA2429832C (cs)
CZ (1) CZ304196B6 (cs)
DE (1) DE60137359D1 (cs)
WO (1) WO2002045077A1 (cs)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7453936B2 (en) * 2001-11-09 2008-11-18 Sony Corporation Transmitting apparatus and method, receiving apparatus and method, program and recording medium, and transmitting/receiving system
JP3887598B2 (ja) * 2002-11-14 2007-02-28 松下電器産業株式会社 確率的符号帳の音源の符号化方法及び復号化方法
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
EP1755109B1 (en) * 2004-04-27 2012-08-15 Panasonic Corporation Scalable encoding and decoding apparatuses and methods
KR100647290B1 (ko) * 2004-09-22 2006-11-23 삼성전자주식회사 합성된 음성의 특성을 이용하여 양자화/역양자화를선택하는 음성 부호화/복호화 장치 및 그 방법
KR100721537B1 (ko) * 2004-12-08 2007-05-23 한국전자통신연구원 광대역 음성 부호화기의 고대역 음성 부호화 장치 및 그방법
ATE482449T1 (de) 2005-04-01 2010-10-15 Qualcomm Inc Verfahren und vorrichtungen zum kodieren und dekodieren eines hochbandteils eines sprachsignals
WO2006116024A2 (en) 2005-04-22 2006-11-02 Qualcomm Incorporated Systems, methods, and apparatus for gain factor attenuation
US7693921B2 (en) * 2005-08-18 2010-04-06 Texas Instruments Incorporated Reducing computational complexity in determining the distance from each of a set of input points to each of a set of fixed points
KR100735246B1 (ko) * 2005-09-12 2007-07-03 삼성전자주식회사 오디오 신호 전송 장치 및 방법
DE102006022346B4 (de) * 2006-05-12 2008-02-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Informationssignalcodierung
US20100049508A1 (en) * 2006-12-14 2010-02-25 Panasonic Corporation Audio encoding device and audio encoding method
US8260613B2 (en) * 2007-02-21 2012-09-04 Telefonaktiebolaget L M Ericsson (Publ) Double talk detector
RU2469421C2 (ru) * 2007-10-12 2012-12-10 Панасоник Корпорэйшн Векторный квантователь, инверсный векторный квантователь и способы
WO2009090876A1 (ja) * 2008-01-16 2009-07-23 Panasonic Corporation ベクトル量子化装置、ベクトル逆量子化装置、およびこれらの方法
KR101604774B1 (ko) * 2008-07-10 2016-03-18 보이세지 코포레이션 멀티-레퍼런스 lpc 필터 양자화 및 역 양자화 장치 및 방법
CN101630510B (zh) * 2008-07-18 2012-03-28 上海摩波彼克半导体有限公司 Amr语音编码中lsp系数量化的快速码本搜索的方法
CN101409075B (zh) * 2008-11-27 2011-05-11 杭州电子科技大学 一种g.729标准中线谱对系数转换及量化的改进方法
US8493244B2 (en) * 2009-02-13 2013-07-23 Panasonic Corporation Vector quantization device, vector inverse-quantization device, and methods of same
CN102906812B (zh) * 2010-04-08 2016-08-10 Lg电子株式会社 处理音频信号的方法和装置
US20110313756A1 (en) * 2010-06-21 2011-12-22 Connor Robert A Text sizer (TM)
RU2013111526A (ru) * 2010-09-17 2014-10-27 Панасоник Корпорэйшн Устройство квантования и способ квантования
KR101747917B1 (ko) 2010-10-18 2017-06-15 삼성전자주식회사 선형 예측 계수를 양자화하기 위한 저복잡도를 가지는 가중치 함수 결정 장치 및 방법
PL2831757T3 (pl) * 2012-03-29 2019-11-29 Ericsson Telefon Ab L M Wektorowy kwantyzator
CN106847296B (zh) * 2012-07-12 2021-01-22 诺基亚技术有限公司 矢量量化
EP2869299B1 (en) * 2012-08-29 2021-07-21 Nippon Telegraph And Telephone Corporation Decoding method, decoding apparatus, program, and recording medium therefor
AU2014350366B2 (en) * 2013-11-13 2017-02-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Encoder for encoding an audio signal, audio transmission system and method for determining correction values
CN111105807B (zh) * 2014-01-15 2023-09-15 三星电子株式会社 对线性预测编码系数进行量化的加权函数确定装置和方法
CN106233383B (zh) * 2014-04-24 2019-11-01 日本电信电话株式会社 频域参数串生成方法、频域参数串生成装置以及记录介质
CN106463137B (zh) * 2014-05-01 2019-12-10 日本电信电话株式会社 编码装置、及其方法、记录介质
KR102298767B1 (ko) * 2014-11-17 2021-09-06 삼성전자주식회사 음성 인식 시스템, 서버, 디스플레이 장치 및 그 제어 방법
JP6517924B2 (ja) * 2015-04-13 2019-05-22 日本電信電話株式会社 線形予測符号化装置、方法、プログラム及び記録媒体
EP3555886B1 (en) * 2016-12-16 2020-05-13 Telefonaktiebolaget LM Ericsson (PUBL) Methods, encoder and decoder for handling line spectral frequency coefficients
CN112669857B (zh) * 2021-03-17 2021-05-18 腾讯科技(深圳)有限公司 一种语音处理的方法、装置及设备

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0650440B2 (ja) 1985-05-02 1994-06-29 日本電気株式会社 Lsp型パタンマツチングボコ−ダ
JP2562037B2 (ja) * 1987-10-07 1996-12-11 サカタインクス株式会社 プレス加工用被覆剤組成物
JPH01154699A (ja) 1987-12-11 1989-06-16 Hitachi Ltd 無線テレメータ
JP2702157B2 (ja) * 1988-06-21 1998-01-21 三菱電機株式会社 最適音源ベクトル探索装置
JP3296363B2 (ja) 1991-04-30 2002-06-24 日本電信電話株式会社 音声の線形予測パラメータ符号化方法
US5495555A (en) * 1992-06-01 1996-02-27 Hughes Aircraft Company High quality low bit rate celp-based speech codec
US5651026A (en) * 1992-06-01 1997-07-22 Hughes Electronics Robust vector quantization of line spectral frequencies
US5734789A (en) * 1992-06-01 1998-03-31 Hughes Electronics Voiced, unvoiced or noise modes in a CELP vocoder
SG47025A1 (en) * 1993-03-26 1998-03-20 Motorola Inc Vector quantizer method and apparatus
AU7960994A (en) * 1993-10-08 1995-05-04 Comsat Corporation Improved low bit rate vocoders and methods of operation therefor
JP3144194B2 (ja) * 1993-12-27 2001-03-12 日本電気株式会社 音声符号化装置
JP3471889B2 (ja) 1994-04-01 2003-12-02 株式会社東芝 音声符号化方法及び装置
JP3224955B2 (ja) * 1994-05-27 2001-11-05 株式会社東芝 ベクトル量子化装置およびベクトル量子化方法
JP3179291B2 (ja) * 1994-08-11 2001-06-25 日本電気株式会社 音声符号化装置
JP3285072B2 (ja) 1994-12-28 2002-05-27 日本電信電話株式会社 重み付きベクトル量子化法
US5732389A (en) * 1995-06-07 1998-03-24 Lucent Technologies Inc. Voiced/unvoiced classification of speech for excitation codebook selection in celp speech decoding during frame erasures
US5664055A (en) * 1995-06-07 1997-09-02 Lucent Technologies Inc. CS-ACELP speech compression system with adaptive pitch prediction filter gain based on a measure of periodicity
JP3238063B2 (ja) 1996-01-31 2001-12-10 株式会社東芝 ベクトル量子化方法および音声符号化方法
EP0788091A3 (en) 1996-01-31 1999-02-24 Kabushiki Kaisha Toshiba Speech encoding and decoding method and apparatus therefor
JPH09234797A (ja) 1996-03-01 1997-09-09 Muto Kasei Kogyosho:Kk 密閉容器の成形方法
JP3707153B2 (ja) * 1996-09-24 2005-10-19 ソニー株式会社 ベクトル量子化方法、音声符号化方法及び装置
JPH1152994A (ja) 1997-08-05 1999-02-26 Kokusai Electric Co Ltd 音声符号化装置
US6104992A (en) * 1998-08-24 2000-08-15 Conexant Systems, Inc. Adaptive gain reduction to produce fixed codebook target signal
AU1445100A (en) * 1998-10-13 2000-05-01 Hadasit Medical Research Services & Development Company Ltd Method and system for determining a vector index to represent a plurality of speech parameters in signal processing for identifying an utterance
EP1103953B1 (en) 1999-11-23 2006-08-16 Texas Instruments Incorporated Method for concealing erased speech frames

Also Published As

Publication number Publication date
KR100910282B1 (ko) 2009-08-03
CA2733453A1 (en) 2002-06-06
WO2002045077A1 (en) 2002-06-06
CA2733453C (en) 2014-10-14
KR20080074234A (ko) 2008-08-12
EP1339040B1 (en) 2009-01-07
CN1200403C (zh) 2005-05-04
EP1339040A1 (en) 2003-08-27
CZ304196B6 (cs) 2013-12-27
CA2429832A1 (en) 2002-06-06
DE60137359D1 (de) 2009-02-26
CN1488135A (zh) 2004-04-07
EP1860650A1 (en) 2007-11-28
EP1339040A4 (en) 2005-09-14
KR20030062361A (ko) 2003-07-23
US7392179B2 (en) 2008-06-24
KR100872538B1 (ko) 2008-12-08
US20040015346A1 (en) 2004-01-22
CA2429832C (en) 2011-05-17
AU2002218501A1 (en) 2002-06-11

Similar Documents

Publication Publication Date Title
CZ20031500A3 (cs) LPC vektorové kvantifikovací zařízení
USRE49363E1 (en) Variable bit rate LPC filter quantizing and inverse quantizing device and method
US6122608A (en) Method for switched-predictive quantization
US5787391A (en) Speech coding by code-edited linear prediction
US5675702A (en) Multi-segment vector quantizer for a speech coder suitable for use in a radiotelephone
CA2061832C (en) Speech parameter coding method and apparatus
EP0443548B1 (en) Speech coder
KR100427752B1 (ko) 음성부호화방법 및 장치
US6345255B1 (en) Apparatus and method for coding speech signals by making use of an adaptive codebook
US5426718A (en) Speech signal coding using correlation valves between subframes
CZ20031465A3 (cs) Způsob, kodér a dekodér, a programy pro kódování a dekódování parametrů řeči, a způsob, kodér a dekodér, a programy pro kódování a dekódování řeči
US6889185B1 (en) Quantization of linear prediction coefficients using perceptual weighting
EP0899720B1 (en) Quantization of linear prediction coefficients
JP2003044099A (ja) ピッチ周期探索範囲設定装置及びピッチ周期探索装置
JPH05265496A (ja) 複数のコードブックを有する音声符号化方法
CN100367347C (zh) 话音信号编码器和话音信号解码器
JPH06282298A (ja) 音声の符号化方法
JP3192051B2 (ja) 音声符号化装置
JP3230380B2 (ja) 音声符号化装置
EP0910064B1 (en) Speech parameter coding apparatus
JPH09120300A (ja) ベクトル量子化装置

Legal Events

Date Code Title Description
MM4A Patent lapsed due to non-payment of fee

Effective date: 20161129