HUT58157A - System and method for coding speech - Google Patents

System and method for coding speech Download PDF

Info

Publication number
HUT58157A
HUT58157A HU904991A HU499190A HUT58157A HU T58157 A HUT58157 A HU T58157A HU 904991 A HU904991 A HU 904991A HU 499190 A HU499190 A HU 499190A HU T58157 A HUT58157 A HU T58157A
Authority
HU
Hungary
Prior art keywords
speech
code set
code
weighted
filtered
Prior art date
Application number
HU904991A
Other languages
English (en)
Other versions
HU904991D0 (en
Inventor
Timothy James Moulsley
Patrick William Elliott
Original Assignee
Philips Nv
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 Philips Nv filed Critical Philips Nv
Publication of HU904991D0 publication Critical patent/HU904991D0/hu
Publication of HUT58157A publication Critical patent/HUT58157A/hu

Links

Classifications

    • 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
    • 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/12Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a code excitation, e.g. in code excited linear prediction [CELP] vocoders
    • 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/0002Codebook adaptations
    • 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)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

A találmány tárgya beszédkódoló rendszer és eljárás a beszéd kódolására, azaz egy kódgeneráló beszédkódoló, amely digitális beszéd/átviteli rendszerben kap alkalmazást .
Amikor digitalizált beszédet továbbítunk, az a probléma merül fel, hogyan nyerhetünk jó minőségű beszédet egy sávhatárolt átviteli csatornán. Az elmúlt évek egy ígéretes megoldásának bizonyult a kód-generáló lineáris predikció /a továbbiakban CELP/, amely alkalmas jó minőségű mesterséges beszéd kis bit-sűrűségű előállítására. Az első ábrán a CELP egy példaképpen! megvalósításának vázlatos blokkdiagramja van, amely pl. az Algebrai kódokon alapuló gyors CELP kódolás /J-P Adóul, P. Mabilleau, M. Delprat és S. Morissette/ című konferencia anyagból /ICASSP, 1987/; 1957-196o. oldal/ ismerhető meg. Összegezve a CELP egy beszédkódolási eljárás, amely egy reziduális jelet egy optimális rövid idejű hulláipalakkal, egy kódkészlet igénybevételével reprezentál, figyelembe véve a szubjektív hibára vonatkozó kritériumot is. A kódxkészlet egy Cjj. sorozata kerül kiválasztásra, amely minimalizálja az energiát a hallás karakterisztikának megfelelően súlyozott y /n/ jelben, pl. négyzetes közép-hiba számítással. Az 1, ábrán egy kétdimenziós 10 kódkészlet tárolja a véletlen c^ /n/ vektorokat, és a 12 erősítő fokozathoz csatlakozik. A r /n/ kimenet a 12 erősítő fokozatból az első inverz 14 szűrőre csatlakozik egy hosszú távú prediktort képezve 1/B/z/ karakterisztikával, a 14 szűrő szolgál a pitch előállítására. Egy második inverz 16 szűrő egy rövid távú prediktort képez 1/A/z/ karakterisztikával, és fogadja az első 14 szűrő e/n/ kimenetét. A második 16 szűrő állítja elő a spéktrális burkoló görbét, és biztosítja az s/n/ kimenetet, amely a 18 összegző fokozatra kerül. Az eredeti 20 beszéd forrása van a 18 összegző fokozat nem invertáló bemenetére kötve. Az x/n/ kimenet a hallásgörbének megfelelően súlyozó, W/z/ karakterisztikájú 22 szűrőre jut, melynek y/n/ kimenetét nyerik.
Működés közben a viszonylag jó minőségű beszédet kis bit-sűrűséggel lehet nyerni egy analízis-szintézis eljárással, rövid és hosszú távú predikcióval. Ez az eljárás magában foglalja a legjobb sorozat megtalálását a kódkészletben, amely a szubjektív hiba szempontjából optimális. Minden egyes kódszó vagy sorozat egy Gk erősítési együtthatóval van súlyozva, és az első és második inverz 14, 16 szűrőkkel van alakítva. Az x/n/ diferencia az eredeti és az előállított jel között, azaz s/n/ és s/n/ között, ezután a hallás görbe szerint súlyozó 22 szűrő által kerül további feldolgozásra, és a legjobb” sorozat kerül kiválasztásra, hogy a hallás szerinti y/n/ hibajelet minimalizálja. Az 1. ábra szerinti megoldás hátránya a nagy számítási igény, amely a legjobb sorozat megkereséséből fakad, valamint abból a szükségszerűségből, hogy mindegyik sorozatot hosszú és rövid távú prediktorokkal kell szűrni.
A fent említett konferencia anyag ötleteket ad a számításigény. csökkentésére.
Ezen ötletek egyikének kivitelezését célzó összeállítás blokkdiagramja látható a 2. ábrán, ahol az előző ábrának megfelelő részek azonos hivatkozási jeleket viselnek. Az össze•állítás azon alapul, miszerint a hallásgörbe szerint súlyozó 22 szűrő karakterisztikája a következető:
ahol a hallásgörbe szerinti súlyozó együttható /0,8 körüli érték/, és A/z/ egy lineárispredikciós szűrő:
Összevetve az 1. ábrával a hallásgörbe szerint súlyozó 77/z/ szűrő a 18 összegző fokozat bemeneti jel útjába helyezhető át. így a 20 beszédforrás jele egy A/z/ karakterisztikájú analízis 24 szűrőn keresztül hagyja a reziduális e/n/ jelet, amelyből a pitch paraméter származtatható. A reziduális é/n/ jel egy inverz 26 szűrőn 1/A/z/^1/ karakterisztika szerint szűrve az s»/n/ jelet adja, amely a 18 összegző fokozat nem' invertáló bemenetét képezi.
A másik jelútbán a 16 szűrő alkotta rövid távú predik' tor /1. ábra/ egy l/A/z/j»/ karakterisztikájú inverz 28 szű/Xc rővel van helyettesítve, melynek kimenete s»/n/.
A hosszú távú prediktor, a 14 szűrő, egy-leágazású prediktorként válaszható:
Bíz2--/-tz‘T/</ ahol b az erősítés és T az u.n. pitch periódus. Az 1/B/z/ pitch prediktor e/n/ kimenő jelének kifejezése a fenti /1/ egyenlőségből származik.
•e(n) * ^(n) + be(n-T)/2*1 ahol r/n/= G^ /n/, ahol n=0, és N a blokk-mérete vagy hoszsza a kódszavaknak, ahol k a kódkészlet index és G^ az erősítési együttható.
A keresési eljárás alatt az e/n-T/ jel ismert, és nem
- 5 függ az éppen vizsgált kódszótól, ha T mindig nagyobb, mint K. így az 1/B/z/ pitch prediktor kivehető a kétdimenziós 10 kódkészlet jelútjából, ha a Le/n-T/ jelet kivonjuk a 20 beszédforrás jelűtjának reziduális jeléből. A /2/ egyenlőséggel, az e/n-T/ jel a késleltetett r/n-T/ jelből nyerhető az 1/B/z/ pitch prediktoron keresztül; és rn_qj a már ismert kódszavakból számítható, amely kódszavak a megelőző blokkok számára kerültek kiválasztásra, feltéve, hogy a T pitch periódus értéke mindig nagyobb, mint a N blokk méret. A pitch prediktor működése szintén a dinamikusan adaptív kódkészlet alapján követhető nyomon.
Ez a leírás szintén egy hosszú távú 1/B/z/ prediktort ismertet, és a rövid távú l/A/z/jp/ prediktor memóriája ki van véve a 10 kódkészlet jelútjából. Következésképpen meg lehet takarítani két szűrési lépést minden egyes kódszónál egy egyszeres emlékezet nélküli szűréssel kódszavanként, a számítás igényt jelentősen csökkentve.
Egy másik publikáció, melynek címe ”Egy különböző vektorokon alapuló prediktiv kódolás és ennek alkalmazása kis bitsűrűségű beszédkódoláshoz” /F. Bottan, C. Baland, M. Rosso és J. Menez, 871.-374. old. GURASIP 1988/ egy CELP kódolást ismertet, amely lehetővé teszi a beszéd minőségének egy adott szinten való tartását bizonyos számítási komplexitás mellett, a memória méretének növelése nélkül.
Mindazonáltal ez a publikáció kevésbé releváns a jelen találmányra vonatkoztatva, mint a már idézett, ezért nem is részletezzük.
Bár mindkét publikáció a CELP technika bizonyos javitá- 6 sát célozta, maradt a további fejlesztések számára tér.
Találmányunk célkitűzése ezért az volt, hogy tovább javítsuk a már ismertetett CELP technikán alapuló eljárásokat, ill. azok megvalósítására alkalmas rendszertechnikai elrendezéseket alakítsunk ki.
Ennek megfelelően célkitűzésünk általános megvalósítására olyan beszédkódoló rendszert hoztunk létre, amely tartalmaz a digitalizált beszédmintákat szűrő, hallásgörbe szerint súlyozó szűrő és súlyozó elemeket, egy egydimenziós kódkészletet, a kódkészletből kiolvasott kódokat szűrő elemeket, és a kódkészlet szűrt kódjait a hallásgörbe szerint súlyozó beszédjelekkel komparáló és igy a beszéd visszaállításakor minimális hallásgörbe szerint súlyozó hibájú kódkészletben kódjainak indexét meghatározó elemeket.
Másrészt az általunk kidolgozott eljárás, összhangban az előző elrendezéssel, egy olyan beszédkódolására szolgáló eljárás, melynek során digitalizált beszédmintákat szűrünk’, igy hallásgörbe szerint súlyozd#,beszédmintákat állítunk elő, azzal jellemezve, hogy a kódokat egy egydimenziós kódkészletből választjuk ki, majd megszűrjük azokat, és ezzel egy szűrt kódkészletet állítunk elő, a hallásgörbe szerint súlyozotfbeszédmintákat komparáijuk a szűrt kódkészlet kódjaival, és kiválasztjuk a kódkészlet azon indexét, amely a beszéd visszaállításakor a minimális hallásgörbe szerint súlyozoíhibát eredményezi.
Egydimenziós kódkészlet alkalmazásával a számítási igény jelentősen csökkenthető a CELP kódernél, mivelZfeldolgozási eljárás ezen kódkészlet szűréséből áll, a megfelelő belépési pontokon belépve a kódkészletbe, mint táblázatba, azaz a megfelelő kódokon végrehajtva a szűrést. Ekkor a hallásgörbe szerint súlyozott szintézis szűrőt minden egyes, a digitalizált beszédminták lineáris predikciós analízise útján nyert szűrőegyüttható készletre egyszer alkalmazzuk. A szűrőegyütthatók újólag történő megállapítása a digitalizált beszédminták minden negyedik keretmennyiségénél történhet meg egyszer. Ezek a keretek pl. 5 msec időtartamot képviselhetnek. A szűrt kódkészletet azután keresési műveletnek vethetjük alá, hogy megtaláljuk az optimális kerethosszúságnyi sorozatot, amelyik a kiválasztott sorozat és a hallásgörbe szerint súlyozott bemeneti beszéd közötti hibát minimalizálja.
Ha szükséges, minden p-edik kód a szűrt kódkészletből kiválasztható, p nagyobb 1-nél. A szomszédos kódok a szűrt kódkészletben korreláltak ebben az esetben akkor is, ha nem keresünk ki minden egyes kódot, a számítás igény lecsökken és a beszéd minősége nem romlik, avagy másként egy nagyobb terjedelmű kódkészlet kezelése válik lehetővé, lehetővé téve a beszéd minőségének a javítását.
A jelen találmány egyik kivitele esetén a komparálás a következő keresztszorzatok összegének számításával hajtható végre:
/ N-i \z
Σ. *M
A = Σ x2w - [·^—--n‘° X ííw ahol Ejc a hibatényező, n a minták száma, x a kódkészlettel megfeleltetett jel, m egy kis értékű egész, §k eSY súlyozatlan megszűrt kódkészlet sorozat, k a kódkészlet index,
N az egy keretben levő digitalizált minták száma.
Ez megfelel a kódkészlet k indexe keresésének a következő kifejezés maximumára
A számítás csökkenthető /némi beszéd minőség romlása számításával és maxiárán/ minden m-edik értékre történő
ahol m egy kis egész szám.
A beszédkódoló rendszer továbbá tartalmazhat hosszú távú prediktort alkotó elemeket, amelyek a megszűrt kódkészlet kiválasztott, súlyozott kódjaiból egy dinamikus adaptív kódkészletet képző eleme van, a dinamikus adaptív kódkészlet egyes kódjait a hallásgörbe szerint súlyozott beszéd/mintákkal komparáló eleme van, továbbá a dinamikus adaptív kódkészlet kódjainak és a hallásgörbe szerint súlyozcíf'beszéd • · minták legkisebb különbségeihez tartozó indexeket meghatározó eleme van, a meghatározodindexeket a hallásgörbe szerint súlyozótbeszédmintákból kivonó eszköze van, és a kivonással nyert különbségi jeleket a megszűrt kódkészlet kódjaival komparáló, a legjobb illesztést adó megszűrt kódkészlet indexeket kinyerő eleme van.
fiz elrendezésnek lehet továbbá a hallásgörbe szerint súlyozott beszédmintákat kódolt formában előállított megfelelő dinamikus adaptív kódkészlet kódokkal való legjobb illesztést adó szűrt kódkészlet kódok kombinációit előállító eleme, és a szintetizált beszédet előállító, a kódolt hallásgörbe szerint súlyozott beszédmintákat megszűrő szűrője.
A dinamikus adaptív kódkészlet egy adott kapacitású fifo-tárolóval van megvalósítva, és a tároló bemenő jelei a kódolt hallásgörbe szerint súlyozóttbeszédmintákat foglalják magukba.
Lehetséges, hogy a kódolt hallásgörbe szerint súlyozott beszédmintákat megszűrő szűrő tartalmaz egy a hallásgörbe szerint súlyozoitbeszédmintákat előállító átviteli függvény inverzét előállító elemet.
t
A jelen találmány más megközelítésben olyan beszé dolására szolgáló eljárást tudunk nyújtani, mely során digitalizált beszédmintákat szűrünk, igy hallásgörbe szerint súlyozott beszédmintákat állítunk elő, azzal jellemezve, hogy a kódokat egy egydimenziós kódkészletből választjuk ki, majd megszűrjük azokat, és ezzel egy szűrt kódkészletet állítunk elő, a hallásgörbe szerint súlyozcitbeszédmintákat komparáljuk a szűrt kódkészlet kódjaival, és kiválasztjuk a kódkész• ·
-lóiét azon indexét, amely a beszéd visszaállításakor a minimális hallásgörbe szerint súlyozcjfhibát erdményezi.
A jelen találmányt a továbbiakban rajzokon ismertetjük.
1. és 2. ábra az ismert GELP rendszerek sematikus blokkdiagramja.
3. ábra találmányunk kiviteli alakjának sematikus blo kkdiagramj a.
4. ábra egy vevő sematikus blokkdiagramja.
A rajzokon azonos hivatkozási jelekkel jelöltük az egymásnak megfelelő elemeket.
A 3. ábrán a 20 beszédforrás a 30 fokozathoz van csatolva, amely kvantálja és 5 msec-os időtartamú keretekre bontja a beszédet. Az eképpen szegmentált s/n/ jel egy analízis 24 szűrőre kerül, amelynek A/z/ átviteli függvénye van), és egy’ 32 lineáris predikciós kódolása /LPC/, amely az a-j_ szűrőegyütthatókat számítja. Az r/n/ reziduális jel a 24 szűrőről a hallásgörbe szerint súlyozó szintézis 26 szűrőre kerül, melynek c átviteli függvénye l/A/z/jf/. A hallásgörbe szerint súlyozott sw/n/ reziduális jel a 34 kivonó fokozat nem-invertáló bemenetére jut /ez összegző fokozatként van megvelósitva, invertáló és nem-invertáló bemenetel révén/. A 34 kivonó fokozat egy másik 36 kivonó fokozat nem-invertáló bemenetéhez csatlakozik. Egy egydimenziós /1-D/ 110 kódkészlet Gaus eloszlású fehér zajnak megfelelően tartalmaz véletlen számsorozatokat, és a hallásgörbe szerint súlyozó szintézis 28 szűrőhöz kapcsolódik, amely a kódkészlet kódjait megszűri, és az eredmények egy 1-D szúrt 37 kódkészletbe kerülnek, amely egy ideiglenes mester kódkészletet alkot. A kódkészlet sorozatok vi• »
- 11 szőni a G erősítésű 12 erősítő fokozatba kerülnek. A súlyozott kódolt sorozatok a 12 erősítő fokozatról a 36 kivonó fokozat invertáló bemenetére, és egy 38 összegző fokozat bemenetére kerülnek a 38 összegző fokozat kimenete egy pitch predikciós jel, amely egy 40 pitch késleltető fokozatra kerül, amely végrehajtja az előre meghatározott T késleltetést, és a 42 fokozatra, amely dekódolja a beszédet. A 40 pitch késleltető fokozat tartalmazhat egy fifó-tárolót. A késleltetett pitch predikciós jel egy 44 erősítő fokozatra kerül, melynek erősítése b. A súlyozott pitch predikciós jel a 38 összegző fokozat bemenetére, és a 34 kivonó fokozat invertáló bemenetére van vezetve. Az első négyzetes középhibát képező 46 fokozat szintén a 34 kivonó fokozat kimenetére van kötve, és egy hibajelet állít elő, amely a variancia minimalizálására szolgál tekintettel a pitch predikcióra. Egy második négyzetes középhibát képező 48 fokozat kapcsolódik a 36 kivonó fokozat kimenetére, hogy hallásgörbe szerinti Eg hibajelet hozzon létre, amely a variancia minimalizálására szolgál tekintettel a szűrt 37 kódkészletre.
A vázolt kivitelnél a 20 beszédforrás jele 40 db mintából álló keretekre van felosztva, minden keret 5 msec-os. Minden egyes keret átjut az analízis és súlyozó 24, 26 szűrőkön; a szűrők a^ együtthatói a digitalizált beszédminták lineáris predikciós analíziséből származnak. Tipikus felhasználási esetben 10 db predikciós együtthatóra van szükség, és ezeket 20 msec-onként kell frissíteni /blokksebesség/. A súlyozó szűrő szubjektív súlyozást visz be a kódolási eljárásba. A ^=0,65 érték kísérletileg jónak bizonyult. A 34 kivonó . fokozatban a súlyozott /hosszú távú/ pitch predikció kivonásra kerül a hallásgörbe szerint súlyozott sw/n/ rezinduális jelből. Ameddig a súlyozott pitch predikció csak az előzőleg feldolgozott beszéd információjából dolgozik, az optimális T pitch késleltetés és b erősítés /44 fokozat/ számítható az hiba minimalizálására a 46 fokozat kimenetelénél.
Az 1-D 110 kódkészlet 1024 kódelemet tartalmaz, amelyek mindegyike egyszer kerül megszűrésre a hallásgörbével súlyozó 28 szűrő egy 20 msec-os blokk ideje alatt. A 28 szűrő együtthatói megfelelnek a 26 szűrőéinek. A kódkészletben való keresés végrehajtása úgy történik, hogy a szűrt 37 kódkészlet beli 40 db szomszédos elemből alkotott vektort vizsgálunk. A keresés alatt a vektor kezdőpontját egyesével vagy nagyobb lépésekkel növeljük minden egyes, a kódkészletből való kód hozzáférés alkalmával, és a S erősítés értékét /12 erősítő fokozat/ - úgy számítjuk, hogy az E3 hiba minimális legyen a 48 fokozat kimenetelénél. így a kódkészlet index és a G erősítés a minimális hallásgörbe szerinti hibára előáll. Ez az információ később a kimeneti beszéd szintézisénél használható, pl. a 42 fokozatnál, amely tartalmazza az inverz súlyozó analízis 50 szűrőt, egy inverz szintézis 52 szűrőt, egy kimeneti 54 átalakítót és opcionálisan egy általános célú 56 utószűrőt. Az 50 és 52 szűrők együtthatói a 32 LPC-ből származnak. A gyakorlatban a továbbított információ tartalmazza az LPC együtthatókat a kódkészlet indexet, a kódkészlet erősítést, a pitch prediktor indexet és a pitch prediktor erősítést. Az átviteli csatorna végén egy vevő, amely a szüretien 1-D kódkészlet birtokában van, minden egyes beszédblokkra elő tudja állítani a szűrt kód- 13 készletet a vett szűrő együtthatókból, és azután szintetizálni tudja az eredeti beszédet.
Azért, hogy csökkentsük az LPC együtthatókat reprezentáló bitek számát, ezek az együtthatók logaritmikusán lettek kvantálva, ami a kvantálási torziiással szembeni érzékenységet is csökkenti. Másképpen ezek az együtthatók kvantálhatóak LSP vagy inverz szinusz együtthatók alkalmazásával. A jelen példában egy 10 db LPC együtthatós blokk van logaritmikusán kvantálva, és 20 msec-onként 40 biten ábrázolva. A 40 bites szám úgy jön ki, hogy az első és második LPC együtthatót 6 biten, a harmadikat és a negyediket 5 biten, az ötödiket és hatodikat 4 biten, a hetediket és a nyolcadikat 3 biten, és a kilencediket és a tizediket 2 biten kódoljak, így a másodpercenkénti bitek száma 2000.
Továbbá a keretfrekvencia, amely 5 msec-onkénti frissítést jelent, kódkészlet indexet tartalmaz - 10 bit, kódkészlet erősítés, ami logaritmikusán van kvantálva, - 5 bit + 1 előjelbit, pitch predikciós index - 7 bit és pitch predikciós erősítés - 4 bit. Ez összesen 27 bit, ami másodpercenként 5400 bitnek felel meg. így a helyes bitsebesség 1000 + 5400 = 7.400 bit másodpercenként.
Az 1. és 2. ábrákon bemutatott kétdimenziós kódkészlet a következőképpen jelölhető:
c/i,j/=d/i,j/ ahol c/i,j/ az i-edik kódkészlet j-edik elem, és d egy kétdimenziós véletlen számokból álló mátrix. Ellenben a 3. ábra kódkészletét igy Írhatjuk fel:
c/i,j/=d/i+j/, • 9t *··« ♦
- 14 • ahol d egy egydimenziós, véletlen számokból álló vektor.
Tipikusan
ΚΚ1024 és l<j<40.
A számítások zöme kódkészletekben való keresést jelent a CELP technikánál, és ezek jelentős mennyiségét a kódkészletek szűrése teszi szükségessé. Az egydimenziós kódkészlet használata csökkenti a kódkészlet szűrést a beszédszegmens hosszának megfelelő tényezővel.
A szűrt kódkészlet sorozatok és a pitch nélküli hallásgörbe szerint súlyozott reziduális, a 34 kivonó fokozaton megjelenő kimeneti jel komparálását végrehajtjuk a következőz keresztszorzatok összegének kiszámításán alapuló egyenlőség szerint:
ahol Ejc a hibatényező, n a minták száma, x a kódkészlettel megfeleltetett jel, m egy kis értékű egész, gk egy súlyozatlan megszűrt kódkészlet sorozat, k a kódkészlet index,
N az egy keretben levő digitalizált minták száma.
Az egyenlőség származtatását a fent említett EURASIP konferencia anyagból kapjuk.
A teljesség kedvéért a 4. ábrán a vevőt vázoljuk. Mivel ·· ···» ·· • 4 ·· *♦· «4 • · ·4 •t ·»4*4 a vevő olyan tulajdonságokkal bir, amelyek a 3. ábra kiviteli alakjából is kitűnnek, a megfelelő komponensek a korábbi hivatkozási jelekkel vannak azonosítva. A vevő által vett adatok magukban foglalják a 60 csatoló ponton az LPC együtthatókat, a kódkészlet indexet és az erősítést, amelyek a 62, 64 csatoló pontokon jelennek meg, és a pitch predikciós indexet és erősítést, amelyek rendre a 66, 68 csatoló pontokon észlelhetőek. Az egydimenziós 110*kódkészlet a hallásgörbe szerinti súlyozású 28’ szűrőn kerül megszűrésre, és az eredmény a 37’ szűrt kódkészlet. A megfelelő 37’ szűrt kódkészletbeli sorozat a kódkészlet index jelnek megfelelően kerül kiválasztásra, és az erősítő fokozatra kerül, melynek az erősítése a vett jel által van meghatározva. A beállított erősítésű sorozat a 40* pitch prediktorra jut, melynek késleltetését a pitch prediktor index határozza meg, továbbá ennek kimenő jele a 44’ erősítő fokozatba kerül, melynek erősítése a pitch predikciós erősítés jel által van meghatározva. A pitch predikciós visszaállított sorozat az inverz súlyozó analízis 50’ szűrőre kerül, melynek átviteli karakterisztikája A/z/^P/. Az rjw/n/ kimenete az 50’ szűrőnek az inverz szintézis 52’ szűrőre jut, melynek átvitele 1/A/z/. Az 50’, 52’ szűrők együtthatói a vett jelben kerülnek definiciálásra, és frissítve vannak blokkonként, ill. keretenként.
Az 52’ szűrő kimenete közvetlenül az 54* kimeneti átalakítóra jut, vagy közvetetten egy 56’ utószűrőn keresztül, amely javítja a beszéd minőségét azáltal, hogy fokozza a zajelnyomást némi torzítás árán.
A 3. ábra szerinti kivitel módosítható a konstrukció
- 16 egyszerűsítése céljából, hogy csökkentsük a számítás igényt, vagy javítsuk a beszéd minőségét a számitásmennyiség növelése nélkül.
Példaképpen az analízis és súlyozó szűrők összevonhatók.
Az egydimenziós kódkészlet mérete csökkenthető.
A hallásgörbe szerinti hiba becslése megtehető a hallásgörbe szerinti hibajel alul-mintavételezett analizise alapján. Ez csökkenti mind a hosszú távú prediktor, mind a kódkészletbeli keresés számítás igényét.
A szűrt kódkészleten végzett teljeskörű keresés nem szükséges, mivel a szomszédos kódok /kódtáblázatba való belépések/ korreláltak. Másként egy hosszabb kódkészletbeli keresés hajtható végre, jobb beszédminőség elérése mellett. Bármelyik esetben a p-edik kód kerül kikeresésre, aholis p nagyobb, mint
1. A szűrési számítások volumene csökkenthető, ha két fele hosszúságú kódkészletet alkalmazunk. Az egyik az aktuális kerétből származó súlyozó szűréssel kerül megszűrésre, a másik hasonlóan, de az előző keretből származóan. Hasonlóan az ilyen félhosszúságú kódkészlet; az előzőleg kiválasztásra ke- í rült kód.készletbeli kódokból tevődik össze.
Ha szükséges, egy adott, rögzített súlyozó szűrő felel meg a kódkészlet megszűrésére.
A találmány 3. ábra szerinti kiviteli alakja feltételezi, hogy a hallásgörbe szerinti súlyozású szintézis 26, 28 szűrők átviteli függvénye azonos. Mindazonáltal azt találtuk, hogy jobb beszéd minőség érhető el, ha eien szűrők átviteli függvénye különböző. Azaz a 26 és 50 szűrők értéke azonos, de a 28 szűrődétől különböző.
- 17 Természetszerűleg a jelen leírásban ismertetett találmány nem korlátozható pusztán az ismertetett előnyös kiviteli alakokra. Mindazon szakember számára nyilvánvaló kombinativ, ill. kézenfekvő megoldásokkal kiegészített eljárások és rendszertechnikai elrendezések, amelyek az eddigiekben ismertetett újszerű technikai megoldásokat tartalmazzák, kétséget kizáróan beletartoznak a jelen találmány szerinti megoldások körébe.

Claims (20)

  1. IGÉNYPONTOK
    1. Beszédkódoló rendszer , azzal jellemezve, hogy tartalmaz digitalizált beszédmintákat szűrő, hallásgörbe szerint súlyozó és szűrő elemeket, egy egydimenziós kódkészletet, a kódkészletből kiolvasott kódokat szűrő elemeket, és a kódkészlet szűrt kódjait a hallásgörbe szerint súlyozó, beszédjelekkel komparáló és igy a beszéd visszaállításakor minimális hallásgörbe szerint súlyozott hibájú kódkészletbeli kódjainak indexét meghatározó elemeket.
  2. 2. Az 1. vagy 2. igénypont szerinti rendszer azzal jellemezve, hogy a kódkészlet kiválasztott kódjait szűrő elem tartalmaz egy hallásgörbe szerint súlyozó szűrőt.
  3. 3. Az 1. igénypont szerinti rendszer azzal jellemezve, hogy a digitalizált beszédmintákat szűrő elem tartalmaz egy rövidtávú prediktort, és egy másik hallásgörbe szerint súlyozó szűrőt, és hogy ezek számára a digitalizált beszédminták lineáris predikciós analízise által szolgáltatott együtthatókat képző elemei vannak.
  4. 4. A 3. igénypont szerinti rendszer azzal jellemezve, hogy a két hallásgörbe szerint súlyozó szűrő átviteli függvénye különböző.
  5. 5. A 4. igénypont szerinti rendszer azzal jellemezve, hogy kódkészlet kiválasztott és megszűrt kódjait a hallásgörbe szerint súlyozott beszédjelekkel komparáló elem minden p-edik kódot
    *··« • · © ♦ • · · «· ·♦··
    kikereső kialakítású, aholis p nagyobb 1-nél.
  6. 6. Az 1-5. igénypontok bármelyike szerinti rendszer azal jellemezve, hogy a komparáló elem keresztszorzat összegek számításával komparáló kialakítású, a következő kifejezés szerint
    N-l / m / Σ2 x(nm) gk(nm) n=0
    N-l m 9
    ΣΣ gk (nm) n=0 ahol N az egy keretben levő digitalizált minták száma, n a minták száma, x a kódkészlettel megfeleltetett jel, m egy kis értékű egész szám, gk ©gy súlyozatlan, megszűrt kódkészletbeli sorozat, és k a kódkészlet index.
  7. 7. Az 1-6. igénypontok bármelyike szerinti rendszer azzal jellemezve, hogy a megszűrt kódkészlet kiválasztott, súlyozott kódjaiból egy dinamikus adaptív kódkészletet képző eleme van, a dinamikus adaptív kódkészlet egyes kódjait a hallásgörbe szerint súlyozott beszédmintákkal komparáló eleme van, továbbá a dinamikus adaptív kódkészlet kódjainak és a hallásgörbe szerint súlyozott beszédmintáknak a legkisebb különbségeihez tartozó indexe meghatározó eleme van, a meghatározó indexeket a hallásgörbe szerint súlyozott beszédmintákból kivonó eszköze van, és a kivonással nyert különbségi jeleket a megszűrt kódkészlet kódjaival komparáló, a legjobb illesztést adó, megszűrt «· ···«99 • · 99
    9 9 99
    99 99999 kódkészletbeli indexeket kinyerő eleme van.
  8. 8. A 7. igénypont szerinti rendszer azzal jellemezve, hogy a hallásgörbe szerint súlyozott beszédmintákat kódolt formában előállított megfelelő dinamikus adaptív kódkészlet kódokkal való legjobb illesztést adó szűrt kódkészlet kódok kombinációit előállító eleme van, és a szintetizált beszédet előállító, a kódolt hallásgörbe szerint súlyozott beszédmintákat megszűrő szűrője van.
  9. 9. A 8. igénypont szerinti rendszer azzal jellemezve, hogy a dinamikus adaptív kódkészlet egy adott kapacitású fifo-tárolóval van megvalósítva, és a tároló bemenő jelei a kódolt hallásgörbe szerint súlyozott beszédmintákat foglalják magukba.
  10. 10. A 8. vagy 9. igénypont szerinti rendszer azzal jellemezve, hogy a kódolt, hallásgörbe szerint súlyozott beszédmintákat megszűrő szűrő tartalmaz egy a hallásgörbe szerint súlyozott beszédmintákat előállító átviteli függvény inverzét előállító elemet.
  11. 11. Eljárás beszéd kódolására, melynek során digitalizált beszédmintákat szűrünk, így hallásgörbe szerint súlyozott beszédmintákat állítunk elő, azzal jellemezve, hogy a kódokat egy egydimenziós kódkészletből választjuk ki, majd megszűrjük azokat, és ezzel egy szűrt kódkészletet állítunk elő, a hallásgörbe szerint súlyozott beszédmintákat komparáijuk a szűrt kódkészlet kódjaival, és kiválasztjuk a kódkészlet azon indexét, amely a beszéd visszaállításakor a minimális hallásgörbe szerint súlyozott hibát eredményezi.
  12. 12. A 11. igénypont szerinti eljárás azzal jellemezve, hogy a kódkészlet kódjait hallásgörbe szerint súlyozó szűrővel szűrjük.
  13. 13. A 11. vagy 12. igénypont szerinti eljárás azzal jellemezve, hogy a digitalizált beszédmintákat rövidtávú prediktor, és egy másik hallásgörbe szerint súlyozó szűrő alkalmazásával szűrjük, és hogy ezek együtthatóit a digitalizált beszédminták lineáris predikciós analízisével nyerjük.
  14. 14. A 13. igénypont szerinti eljárás azzal jellemezve, hogy a két hallásgörbe szerint súlyozó szűrő együtthatói különbözőek.
  15. 15. A 14. igénypont szerinti eljárás azzal jellemezve, hogy a szűrt kódkészlet minden egyes p-edik kódját keressük meg, ahol p nagyobb, mint 1.
  16. 16. A 11 15. igénypontok bármelyike szerinti eljárás azzal jellemezve, hogy a hallásgörbe szerint súlyozott beszédmintáknak a szűrt kódkészlet kódjaival való komparálását a következő keresztszorzat összeg kiszámításával végezzük
    N-l x (nm) gk (nm)
    N-l m 0
    ΣΙ gk (nm) n=0 ahol N az egy keretben levő digitalizált minták száma, n a minták száma, gk egy súlyozatlan megszűrt kódkészlet sorozat, k a kódkészlet index, m egy kisértékű egész szám.
  17. 17. A 11-16. igénypontok bármelyike szerinti eljárás azzal jellemezve, hogy a szűrt kódkészletből kiválasztott súlyozott kódokból dinamikus adaptív kódkészletet képezünk, komparáijuk a dinamikus adaptív kódkészlet kódjait a hallásgörbe szerint súlyozott beszédmintákkal, így meghatározunk egy indexet, amelyik a dinamikus adaptív kódkészlet kódja, és a hallásgörbe szerint súlyozott beszédminták közötti legkisebbkülönbséget adja, kivonjuk az így meghatározott kódot a hallásgörbe szerint súlyozott beszédmintákból, és komparáljuk a kivonással nyert különbségi jelet a szűrt kódkészlet kódjaival, és így meghatározzuk a szűrt kódkészlet legjobb illesztést adó indexét.
  18. 18. A 17. igénypot szerinti eljárás azzal jellemezve, hogy a szűrt kódkészlet legjobb illesztést adó kódjait kombináljuk a megfelelő dinamikus adaptív kódkészletbeli kódokkal, így nyerjük a kódolt hallásgörbe szerint súlyozott beszédmintákat, és ez utóbbiakat megszűrve állítjuk elő a szintetizált beszédet.
  19. 19. A 18. igényport szerinti eljárás azzal jellemezve, hogy a kódolt, hallásgörbe szerint súlyozott beszédmintákat egy olyan szűrövei állítjuk elő, amelynek átviteli függvénye a hallásgörbe szerint súlyozott beszédmintákat előállító szűrő átviteli függvényének az inverze.
  20. 20. Eljárás beszéd előállítására azzal jellemezve, hogy egy szűrt kódkészletet állítunk elő egy egydimenziós kódkészlet olyan szűrővel történő szűrésével, amely szűrő együtthatói egy bemenő jel által vannak meghatározva, kiválasztunk egy adott, a bemenő jelben levő kódkészlet index által meghatározott sorozatot, beállítjuk a kiválasztott sorozat amplitúdóját egy bemenő erősítésjelnek megfelelően, visszaállítjuk a kiválasztott adott sorozat pitch paraméterét a bemenő jelben levő pitch prediktor indexnek és erősítés jelnek megfelelően, és a pitch paraméterében visszaállított sorozatot az inverz súlyozó és inverz szintézis szűrőkre vezetve beszédjelet álltunk elő.
HU904991A 1989-08-16 1990-08-13 System and method for coding speech HUT58157A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB8918677A GB2235354A (en) 1989-08-16 1989-08-16 Speech coding/encoding using celp

Publications (2)

Publication Number Publication Date
HU904991D0 HU904991D0 (en) 1991-01-28
HUT58157A true HUT58157A (en) 1992-01-28

Family

ID=10661702

Family Applications (1)

Application Number Title Priority Date Filing Date
HU904991A HUT58157A (en) 1989-08-16 1990-08-13 System and method for coding speech

Country Status (11)

Country Link
US (1) US5140638B1 (hu)
EP (1) EP0413391B1 (hu)
JP (1) JP3392412B2 (hu)
KR (1) KR100275054B1 (hu)
AU (1) AU648479B2 (hu)
BR (1) BR9003987A (hu)
CA (1) CA2023167C (hu)
DE (1) DE69029232T2 (hu)
FI (1) FI903990A0 (hu)
GB (1) GB2235354A (hu)
HU (1) HUT58157A (hu)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5451951A (en) * 1990-09-28 1995-09-19 U.S. Philips Corporation Method of, and system for, coding analogue signals
DE69233502T2 (de) * 1991-06-11 2006-02-23 Qualcomm, Inc., San Diego Vocoder mit veränderlicher Bitrate
US5694519A (en) * 1992-02-18 1997-12-02 Lucent Technologies, Inc. Tunable post-filter for tandem coders
CA2105269C (en) * 1992-10-09 1998-08-25 Yair Shoham Time-frequency interpolation with application to low rate speech coding
JP2953238B2 (ja) * 1993-02-09 1999-09-27 日本電気株式会社 音質主観評価予測方式
FR2702590B1 (fr) * 1993-03-12 1995-04-28 Dominique Massaloux Dispositif de codage et de décodage numériques de la parole, procédé d'exploration d'un dictionnaire pseudo-logarithmique de délais LTP, et procédé d'analyse LTP.
JP3224955B2 (ja) * 1994-05-27 2001-11-05 株式会社東芝 ベクトル量子化装置およびベクトル量子化方法
TW271524B (hu) 1994-08-05 1996-03-01 Qualcomm Inc
US5742734A (en) * 1994-08-10 1998-04-21 Qualcomm Incorporated Encoding rate selection in a variable rate vocoder
US6263307B1 (en) 1995-04-19 2001-07-17 Texas Instruments Incorporated Adaptive weiner filtering using line spectral frequencies
JP3616432B2 (ja) * 1995-07-27 2005-02-02 日本電気株式会社 音声符号化装置
FR2742568B1 (fr) * 1995-12-15 1998-02-13 Catherine Quinquis Procede d'analyse par prediction lineaire d'un signal audiofrequence, et procedes de codage et de decodage d'un signal audiofrequence en comportant application
EP0788091A3 (en) * 1996-01-31 1999-02-24 Kabushiki Kaisha Toshiba Speech encoding and decoding method and apparatus therefor
WO1997030524A1 (en) * 1996-02-15 1997-08-21 Philips Electronics N.V. Reduced complexity signal transmission system
TW317051B (hu) * 1996-02-15 1997-10-01 Philips Electronics Nv
US5751901A (en) * 1996-07-31 1998-05-12 Qualcomm Incorporated Method for searching an excitation codebook in a code excited linear prediction (CELP) coder
US6463405B1 (en) 1996-12-20 2002-10-08 Eliot M. Case Audiophile encoding of digital audio data using 2-bit polarity/magnitude indicator and 8-bit scale factor for each subband
US6516299B1 (en) 1996-12-20 2003-02-04 Qwest Communication International, Inc. Method, system and product for modifying the dynamic range of encoded audio signals
US5845251A (en) * 1996-12-20 1998-12-01 U S West, Inc. Method, system and product for modifying the bandwidth of subband encoded audio data
US5864820A (en) * 1996-12-20 1999-01-26 U S West, Inc. Method, system and product for mixing of encoded audio signals
US5864813A (en) * 1996-12-20 1999-01-26 U S West, Inc. Method, system and product for harmonic enhancement of encoded audio signals
US6782365B1 (en) 1996-12-20 2004-08-24 Qwest Communications International Inc. Graphic interface system and product for editing encoded audio data
US6477496B1 (en) 1996-12-20 2002-11-05 Eliot M. Case Signal synthesis by decoding subband scale factors from one audio signal and subband samples from different one
FI113571B (fi) * 1998-03-09 2004-05-14 Nokia Corp Puheenkoodaus
US7072832B1 (en) * 1998-08-24 2006-07-04 Mindspeed Technologies, Inc. System for speech encoding having an adaptive encoding arrangement
US6691084B2 (en) 1998-12-21 2004-02-10 Qualcomm Incorporated Multiple mode variable rate speech coding
KR100341398B1 (ko) * 2000-01-27 2002-06-22 오길록 씨이엘피형 보코더의 코드북 검색 방법
US6879955B2 (en) * 2001-06-29 2005-04-12 Microsoft Corporation Signal modification based on continuous time warping for low bit rate CELP coding
JP2010034794A (ja) * 2008-07-28 2010-02-12 Fujitsu Ltd オーディオ符号化装置、オーディオ符号化プログラム及びオーディオ符号化方法
DE602008000303D1 (de) * 2008-09-03 2009-12-31 Svox Ag Sprachsynthese mit dynamischen Einschränkungen
EP2737479B1 (en) * 2011-07-29 2017-01-18 Dts Llc Adaptive voice intelligibility enhancement

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3335358A1 (de) * 1983-09-29 1985-04-11 Siemens AG, 1000 Berlin und 8000 München Verfahren zur bestimmung von sprachspektren fuer die automatische spracherkennung und sprachcodierung
DE3779351D1 (hu) * 1986-03-28 1992-07-02 American Telephone And Telegraph Co., New York, N.Y., Us
IT1195350B (it) * 1986-10-21 1988-10-12 Cselt Centro Studi Lab Telecom Procedimento e dispositivo per la codifica e decodifica del segnale vocale mediante estrazione di para metri e tecniche di quantizzazione vettoriale
GB8630820D0 (en) * 1986-12-23 1987-02-04 British Telecomm Stochastic coder

Also Published As

Publication number Publication date
CA2023167A1 (en) 1991-02-17
FI903990A0 (fi) 1990-08-13
US5140638A (en) 1992-08-18
CA2023167C (en) 2002-01-29
JPH0395600A (ja) 1991-04-19
GB2235354A (en) 1991-02-27
KR100275054B1 (ko) 2000-12-15
AU6100090A (en) 1991-02-21
BR9003987A (pt) 1991-09-03
EP0413391A3 (en) 1991-07-24
EP0413391B1 (en) 1996-11-27
KR910005589A (ko) 1991-03-30
AU648479B2 (en) 1994-04-21
GB8918677D0 (en) 1989-09-27
DE69029232T2 (de) 1997-04-30
EP0413391A2 (en) 1991-02-20
JP3392412B2 (ja) 2003-03-31
HU904991D0 (en) 1991-01-28
US5140638B1 (en) 1999-07-20
DE69029232D1 (de) 1997-01-09

Similar Documents

Publication Publication Date Title
HUT58157A (en) System and method for coding speech
US5012518A (en) Low-bit-rate speech coder using LPC data reduction processing
US4975956A (en) Low-bit-rate speech coder using LPC data reduction processing
EP0409239B1 (en) Speech coding/decoding method
EP0698877B1 (en) Postfilter and method of postfiltering
EP0443548B1 (en) Speech coder
EP1224662B1 (en) Variable bit-rate celp coding of speech with phonetic classification
EP0422232B1 (en) Voice encoder
EP0802524B1 (en) Speech coder
KR100304682B1 (ko) 음성 코더용 고속 여기 코딩
US6978235B1 (en) Speech coding apparatus and speech decoding apparatus
AU653969B2 (en) A method of, system for, coding analogue signals
US20050114123A1 (en) Speech processing system and method
EP1367565A1 (en) Sound encoding apparatus and method, and sound decoding apparatus and method
US5797119A (en) Comb filter speech coding with preselected excitation code vectors
JP2970407B2 (ja) 音声の励振信号符号化装置
JP3531780B2 (ja) 音声符号化方法および復号化方法
JP3153075B2 (ja) 音声符号化装置
JP3089967B2 (ja) 音声符号化装置
EP1355298A2 (en) Code Excitation linear prediction encoder and decoder
JP3192051B2 (ja) 音声符号化装置
JP3471542B2 (ja) 音声符号化装置
EP0984433A2 (en) Noise suppresser speech communications unit and method of operation
JP3212123B2 (ja) 音声符号化装置
JP3092654B2 (ja) 信号符号化装置

Legal Events

Date Code Title Description
DFD9 Temporary prot. cancelled due to non-payment of fee