NL9001985A - Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen. - Google Patents
Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen. Download PDFInfo
- Publication number
- NL9001985A NL9001985A NL9001985A NL9001985A NL9001985A NL 9001985 A NL9001985 A NL 9001985A NL 9001985 A NL9001985 A NL 9001985A NL 9001985 A NL9001985 A NL 9001985A NL 9001985 A NL9001985 A NL 9001985A
- Authority
- NL
- Netherlands
- Prior art keywords
- segment
- samples
- signal
- encoded
- coded
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000003252 repetitive effect Effects 0.000 claims abstract description 3
- 238000005070 sampling Methods 0.000 claims description 13
- 230000007774 longterm Effects 0.000 abstract description 3
- 238000007792 addition Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 210000001260 vocal cord Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/09—Long term prediction, i.e. removing periodical redundancies, e.g. by using adaptive codebook or pitch predictor
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Investigating Or Analysing Materials By The Use Of Chemical Reactions (AREA)
- Investigating Or Analysing Biological Materials (AREA)
- Analogue/Digital Conversion (AREA)
- Nitrogen Condensed Heterocyclic Rings (AREA)
Description
Titel: Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen.
De uitvinding heeft betrekking op een werkwijze voor het coderen van een bemonsterd analoog signaal met een herhalend karakter, waarbij steeds voor een te coderen signaalsegment, bestaande uit een tevoren bepaald eerste aantal monsters, in een voorafgaand segment met een tevoren bepaald tweede aantal monsters, dat groter is dan het eerste aantal monsters, wordt gezocht naar een zo goed mogelijk overeenstemmend signaalsegment door, met stappen van één monsterinterval, het te coderen signaalsegment steeds te vergelijken met een segment met het eerste aantal monsters dat deel uitmaakt van het segment met het tweede aantal monsters en waarbij het verschilsignaal wordt bepaald tussen het gevonden, meest overeenstemmende segment en het te coderen segment alsmede het verschil tussen een referentietijdstip in het te coderen segment en een referentietijdstip in het gevonden, meest overeenstemmende segment, uitgedrukt in het aantal monsters D tussen beide tijdstippen.
Het is bekend dat analoge signalen met een sterk samenhangend karakter,zoals bijvoorbeeld spraaksignalen, na bemonstering op efficiënte wijze gecodeerd kunnen worden door op opeenvolgende segmenten van het signaal met elk een bepaalde tijdsduur, achtereenvolgens een aantal verschillende transformaties uit te voeren. Een van de daartoe bekende transformaties is de lineaire predictieve codering (LPC), voor een toelichting waarvan verwezen kan worden naar het boek "Digital Processing of Speech Signals" van L.R. Rabiner en R.W. Schafer; Prentice Hall, New Jersey; hoofdstuk 8. LPC wordt, zoals vermeld., steeds toegepast voor een signaalsegment met een bepaalde tijdsduur, bij spraaksignalen bijvoorbeeld 20 ms. en wordt gerekend tot de korte termijn codering. Het is tevens bekend om naast een korte termijn predictie,, gebruik te maken van lange termijn predictie (LTP), waarbij door een combinatie van deze beide technieken een zeer efficiënte codering verkregen wordt Het principe van LTP is beschreven in Frequenz, volume 42, no. 2-3, 1988; blz. 85-93; P.Vary 'et al.; "Sprachcodec für dass Europaische Funkfernsprechnetz".
Bij LTP wordt steeds voor een te coderen signaal segment gezocht naar een zo goed mogelijk gelijkend segment in een aan dat segment voorafgaande signaalperiode met een bepaalde duur en wordt een signaal dat representatief is voor het verschil tussen het te coderen segment en het gevonden segment, alsmede een signaal dat representatief is voor de tijdsduur die verlopen is sedert het gevonden segment, in gecodeerde vorm overgedragen, hetgeen tot een aanzienlijke reductie van de te verzenden informatie kan leiden. Omdat het basisprincipe van LTP niet in alle gevallen tot het vinden van een optimaalgelijkend signaalsegment blijkt te leiden, is onder de naam HLTP (Hoge Resolutie LTP) een verbetering van het LTP principe voorgesteld. Een mogelijke realisatie van HLTP is beschreven in Eurospeech 89, European Conference on Speech communication and Technology, Paris, sept. 1989, in het artikel "Pitch Prediction with Fractional Delays in CELP coding" van J. S. Marques et al.. Bij HLTP wordt, door een verhoging van de bemonsterfrequentie van de voorafgaande signaalperiode door middel van interpolatie, de kans vergroot dat het best gelijkende signaalsegment wordt gevonden. Een bezwaar van HLTP is echter dat, zoals onderstaand nader zal worden verduidelijkt, dat de complexiteit van de codering door een aanzienlijke toename van het aantal operaties veel groter is dan bij LTP.
De uitvinding beoogt te voorzien in een werkwijze waarbij een verbtering van het LTP principe wordt verkregen, doordat de kans dat het best gelijkende segment in een voorafgaande periode met een bepaalde duur wordt gevonden sterk toeneemt, zonder dat hierbij het benodigde aantal operaties in dezelfde mate toeneemt als bij HLTP.
De uitvinding voorziet hiertoe in een werkwijze van voornoemde soort, met het kenmerk, dat het aantal monsters in het te coderen segment met een tevoren bepaalde factor Ob wordt vergroot door steeds tussen twee opeenvolgende monsters (Ob - 1) monsters met een waarde gelijk aan 0 te plaatsen, dat het aantal monsters in het voorafgaande segment eveneens met de factor Ob wordt vergroot, dat in het voorafgaande segment deelsegmenten Cd worden bepaald waarvoor geldt, dat het aantal monsters Dd, uitgedrukt in aantallen monsters na overbemonstering, tussen het referentietijdstip in het te coderen segment en het referentie tijdstip in een deelsegment Cd voldoet aan: Dd = (D x Ob)/d, waarin d = 1,2,3,4 ...n, met n een geheel positief getal, en met Ob en n zodanig gekozen dat Dd altijd een geheel getal is, dat in de segmenten Cd door middel van een interpolatietechniek op tevoren bepaalde posities monsterwaarden worden bepaald, welke tevoren bepaalde posities op een afstand Dd gelegen zijn van de oorspronkelijke monsters in het te coderen segment, voordat het aantal monsters daarvan vergroot werd, en dat wordt bepaald welk deelsegment Cd het meest overeenkomt met het te coderen segment.
De uitvinding voorziet tevens in een inrichting voor het toepassen van de werkwijze volgens de uitvinding omvattende middelen voor het bemonsteren van het te coderen signaal; middelen voor het afsplitsen van een te coderen signaalsegment met een tevoren bepaald eerste aantal monsters; middelen voor het afsplitsen van een voorafgaand signaalsegment met een tweede aantal monsters, middelen voor het steeds met stappen van één monsterinterval vergelijken van de monsterwaarden van het eerste segment met overeenkomstige monsterwaarden van een deelsegment met het eerste aantal monsters, dat deel uitmaakt van het voorafgaande segment; middelen voor het bepalen van het deelsegment dat de beste overeenkomst vertoont met het te coderen signaalsegment; middelen voor het bepalen van een signaal dat representatief is voor het verschil tussen het te coderen segment en het gevonden deelsegment en middelen voor het bepalen van het aantal monsters D tussen een referentietijdstip in het te coderen segment en een referentietijdstip in het gevonden deelsegment, gekenmerkt door middelen voor het met een tevoren bepaalde factor Ob overbemonsteren van het te coderen signaalsegment, door middelen voor het bepalen van de waarde Dd = (D x Ob)/d met d = 2,3,4, ... n; door middelen voor het voor iedere waarde van d, door middel van interpolatie bepalen van de monsters op alle tijdstippen die Dd verschillen met de tijdstippen behorende bij de oorspronkelijke monsterwaarden; en door middelen voor het correleren van de monsterwaarden van het te coderen segment en de voor een waarde van d bepaalde monsterwaarden.
De uitvinding zal in het hiernavolgende worden toegelicht aan de hand van de tekening, hierin toont:
Figuur la-c: Diverse signaalvormen ter toelichting van het LTP principe en de daaraan verbonden bezwaren;
Figuur 2: Een stroomschema ter toelichting van een aspect van de uitvinding;
Figuur 3 a,b: Een blokschema van een uitvoeringsvoorbeeld van een inrichting volgens de uitvinding.
Figuur la toont in het tijddomein een voorbeeld van de bemonsterde versie van een signaal met een sterk herhalend karakter, zoals een spraaksignaal. Voor de toelichting van de principes van LTP en HLTP zal worden aangenomen, dat steeds voor een segment met een duur van 5ms in een voorafgaande periode van 15 ms gezocht wordt naar het best gelijkende segment van eveneens 5 ms en dat de bemonsterfrequentie 8kHz is.. Het te coderen segment zal daarbij segment A worden genoemd, de periode van 15 ms segment B en het gezochte, best gelijkende segment, segment C. Deze segmenten zijn in figuur la aangegeven. Het principe van LTP is nu dat voor het overdragen van segment A geen signalen worden overgedragen die direct gerelateerd zijn aan de monsters in segment A, maar in de eerste plaats signalen die gerelateerd zijn aan de monsterwaarden die ontstaan wanneer het verschilsignaal tussen segment A en segment C wordt bepaald en in de tweede plaats signalen die gerelateerd zijn aan het tijdsverschil tussen segment A en segment C, bijvoorbeeld uitgedrukt in het aantal monsters D tussen het begin van segment A en het begin van segment C. In een decoder, die dit overgedragen signaal ontvangt kan nu het segment A gevormd worden, doordat segment C in de decoder in principe reeds bekend is, bijvoorbeeld doordat steeds de monsters over de voorafgaande 15 ms. in een geheugen worden opgeslagen, zodat met het ontvangen signaal dat representatief is voor het verschil D in aantal monsters tussen het begin van de segmenten A en C, de monsters uit het segment uit het geheugen gelezen kunnen worden, waarna met het eveneens ontvangen signaal dat representatief is voor het verschil tussen de monsterwaarden van segment A en segment C, het segment A gevormd kan worden.
De complexiteit van het LTP principe kan als volgt worden bepaald. In segment A zijn 40 monsters aanwezig en in segment B 120 monsters.Het segment B is derhalve in 81 stappen te onderzoeken door het gehele segment A in stappen gelijk aan een monsterinterval over segment B te "schuiven" en bij iedere stap door middel van correlatietechnieken de mate van overeenkomst, uitgedrukt in een correlatiewaarde, te bepalen. Deze correlatiewaarde R(k) kan berekend worden door middel van de formule:
(1) waarin: N = 40, het aantal monsters in segment A; k = 0 ... 80, de startwaarde van een deelsegment (een mogelijk segment C) binnen segment B; en m = het monsternummer binnen segment A.
Voor een nadere toelichting van deze correlatie techniek kan worden verwezen naar blz. 147 van het bovengenoemde boek van L. R. Rabiner. Vanzelfsprekend zijn ook andere correlatietechnieken in principe toepasbaar, alsmede andere technieken voor het vaststellen van de overeenkomst tussen twee groepen monsterwaarden, welke andere technieken ook geacht worden te vallen onder het begrip correlatie.
Voor het berekenen van de correlatiewaarde zijn voor iedere waarde van k 40 vermenigvuldigingen en 39 optellingen nodig, zodat het totale aantal benodigde operaties gelijk is aan: 81 x 79 = 6399.
Zoals bovenstaand reeds is vermeld, is een probleem bij het toepassen van het LTP principe, dat niet altijd het best gelijkende segment C in segment A wordt gevonden. Dit is schematisch getoond in figuur lb, waaruit blijkt dat qua signaalvorm (de omhullende van de monsters) het segment Cl de meeste overeenkomst vertoont met het segment A, maar dat de monsterwaarden van segment C2 de meeste overeenkomst vertonen met die van segment Ά, zodat segment C2 ten onrechte als het meest geschikte segment gekozen wordt om van segment A af te trekken voor het vormen van een verschilsignaal. Door het HLTP principe wordt hierin verbetering gebracht, doordat de bemonsterfrequentie in het segment B met bijvoorbeeld een factor 12 wordt verhoogd. Hierdoor wordt de kans dat het juiste segment C wordt gevonden verhoogd. Zoals reeds is vermeld gaat dit ten koste van een aanzienlijke verhoging van de complexiteit, zoals als volgt kan worden berekend:
De bemonsterfrequentie van segment B wordt door middel van interpolatietechnieken verhoogd met een factor 12, waarbij ervan wordt uitgegaan, dat ieder tussenliggend monster berekend wordt uit 7 reeds bekende monsters.
Het segment B zal nu 12 x 120 = 1440 monsters bevatten. Voor het berekenen van de tussenliggende monsters zijn (120 x 11) x 7 = 9240 vermenigvuldigingen nodig en (120 x 11) x 6 = 7920 optellingen, dus 17160 operaties.
De bemonsterfrequentie van segment A wordt ook met een factor 12 verhoogd door steeds tussen een tweetal opeenvolgende bekende monsters 11 monsters met een waarde = 0 te voegen Het segment B van 1440 monsters is nu in 961 stappen te doorzoeken, door segment A weer over segment B te schuiven. Bij het berekenen van de correlatiewaarde R(k) kan de bovenstaand voor het LTP principe toegelichte formule gebruikt worden. Het is hierbij niet noodzakelijk om ook voor de tussenliggende monsterwaarden een correlatie waarde te berekenen, zodat voor iedere waarde van k (k= 0 ...960) evenals bij LTP 79 operaties nodig zijn.
Het totale aantal benodigde operaties bij HLTP bedraagt dus (961 x 79) + 17160 = 93097.
Dit betekent dat de complexiteit van het HLTP principe, onder de bovengenoemde (reëele) aannamen voor de verhoging van de bemonstertrequentie en de wijze van interpoleren, ongeveer 14,5 maal zo complex is als het LTP principe.
Bij het beschreven voorbeeld vean het HLTP principe, kan de afstand D tussen het begin van segment A en het begin van het gevonden segment C weer uitgedrukt worden in het aantal monsters tussen beide tijdstippen (maximaal 961) en kan dus in 10 bits worden weergegeven.
Volgens de uitvinding wordt op de onderstaand te beschrijven wijze, die minder complex is dan het HLTP principe naar het best gelijkende segment C gezocht, waarbij de kans dat het gevonden segment ook werkelijk het best gelijkende segment is, aanzienlijk groter is dan bij het LTP principe.
Volgens de uitvinding wordt eerst volgens het bovenstaand toegelichte LTP principe, in een aan een te coderen segment A voorafgaand segment B het, het meest op het segment A gelijkende segment C gezocht. Dit segment C ligt op een aantal D monsters van het segment A. Vervolgens wordt ook volgens de uitvinding de bemonsterfrequentie met een factor Ob verhoogd, bijvoorbeeld ook met een factor Ob = 12.
Hierdoor komt het gevonden segment C op een afstand gelijk aan (D x Ob) van segment A te liggen. Hierna wordt bepaald of wellicht een segment Cd op een afstand Dd = (D x Ob)/d van segment A meer overeenkomst met vertoont met segment A dan het met behulp van de LTP techniek voor de waarde d = 1 gevonden segment C, dat hierna dan ook Cl genoemd zal worden.
Mogelijke waarden d zijn: d = 1, 2, 3, 4 .....
Uit de lengtes van de segmenten A en B volgt voor welke waarden van d kan worden onderzocht of een segment Cd beter overeenstemt met segment A dan het segment Cl. De gevonden waarde van d waarbij de beste overeenstemming wordt geconstateerd wordt aangegeven met d0ptimaal·
De complexiteit van de werkwijze volgens de uitvinding ten opzichte van die van LTP en HLTP kan als volgt worden berekend:
Bij de werkwijze volgens de uitvinding zijn, wanneer wordt uitgegaan van dezelfde tijdsduur van de segmenten A en B (respectievelijk 5 en 15 ms.) en van dezelfde bemonsterfrequentie (8 kHz), als bij het bovenstaand beschreven voorbeeld van het LTP principe, voor het vinden van het segment Cl 6399 operaties nodig.
Voor het zoeken van de segmenten Cd, met in het onderhavige voorbeeld d= 2, 3 en 4, wordt de bemonsterfrequentie verhoogd met een factor 12 , bijvoorbeeld door tussen steeds twee opeenvolgende bekende monsters 11 monsterwaarden gelijk aan 0 te plaatsen en door slechts voor monsters op tevoren bepaalde posities bijvoorbeeld door middel van interpolatie van 7 reeds bekende monsters de feitelijke monsterwaarde te berekenen. Deze tevoren bepaalde posities zijn de posities van de monsters die op een afstand Dd gelegen zijn van de oorspronkelijke monsters in het segment A. Ook de bemonsterfrequentie van het segment A wordt verhoogd en evenals bij HLTP geschiedt dit door steeds tussen twee bekende monsters 11 monsters met een waarde gelijk aan 0 te plaatsen. Segment A bestaat dus uit 480 monsters waarvan er ten hoogste 40 ongelijk aan 0 zijn. Hierdoor behoeven in principe in segment Cd door interpolatie slechts ten hoogste 40 tussenliggende monsterwaarden berekend te worden en niet, zoals bij HLTP, 440 tussenliggende waarden. Voor de berekening door middel van interpolatie van de tussenliggende monsterwaarden zijn voor ieder segment Cd dus slechts ten hoogste 40 x ( 7 vermenigvuldigingen + 6 optellingen) = 520 operaties nodig. Voor 3 segmenten Cd betekent dit dus 1560 operaties. Het feitelijke vergelijken van het segment A met de segmenten Cd door middel van de bovenstaand toegelichte correlatie techniek vraagt per segment Cd: 40 vermenigvuldigingen + 39 optellingen = 79 operaties. Dus voor 3 segmenten Cd: 237 operaties.
Het totaal aantal benodigde operaties voor het bepalen van het segment Cl en het vervolgens vergelijken van 3 mogelijk geschikte segmenten Cd met segment A is met de werkwijze volgens de uitvinding dus 6399 + 1560 + 237 = 8197.
In het geval dat bepaalde waarden van Dd deelbaar zijn door 12, betekent dit dat het bijbehorende segment Cd reeds bij de eerste zoekprocedure volgens het LTP principe is onderzocht, zodat dit niet nogmaals behoeft te geschieden. In een dergelijk geval is het aantal benodigde operaties dus kleiner dan 8197.
Het zal duidelijk zijn dat met de werkwijze volgens de uitvinding een aanzienlijke vereenvoudiging wordt verkregen ten opzichte van het HLTP principe, terwijl toch de kans dat het meest overeenstemmende segment C gevonden wordt aanmerkelijk groter is dan bij het LTP principe. Zelfs indien, bij bijvoorbeeld andere lengtes van segment A en segment B, ook segmenten Cd zouden worden onderzocht voor grotere waarden van d dan 4, blijft de werwijze volgens de uitvinding eenvoudiger dan die volgens het HLTP principe. Wanneer het best gelijkende segment Cd gevonden is en dus doptimaai bekend is, kan ook de daarbij behorende Dd worden berekend. In het voorbeeld kan de waarde van Dd gelegen zijn tussen 1 en 120 en die van d0ptimaal tussen 1 en 4, zodat voor het overdragen van deze beide waarden totaal ten hoogste 9 bits nodig zijn, hetgeen opnieuw meer efficiënt is dan bij HLTP.
Volgens een verder aspect van de uitvinding kunnen, ter verdere vergroting van de kans dat het meest overeenstemmende segment C gevonden wordt, ook segmenten Cd op afstanden Dd = (D x Ob)/ d + eps worden beschouwd, met eps = -(Ob-1),.......,-2, -1, 1, 2, .......(Ob-1) of een gedeelte van deze waarden; in de praktijk volstaan bijvoorbeeld de waarden eps = -2, -1, 1, 2.
Zelfs in het geval het HLTP principe wordt toegepast, kan zich de situatie voordoen die getoond is in figuur lc. Het segment C2 lijkt meer gelijkenis te tonen met het segment A dan het dichterbij het segment A gelegen segment Cl. Bij nadere analyse blijkt echter dat dit laatste segment toch het gezochte segment is omdat de fundamentele regelmaat P, die in het signaal aanwezig is en die, bijvoorbeeld in het geval van spraak, wordt bepaald door de grondfrequentie van de stembanden, bepaald is door de afstand Dl tussen segment A en segment Cl en niet door de afstand D2 tussen segment A en segment C2. Dit verschijnsel kan bijvoorbeeld veroorzaakt worden door de aanwezigheid van ruis.
Het is van belang dat de fundamentele regelmaat P in het signaal iedere keer dat een segment C wordt gezocht ook zo dikwijls als mogelijk wordt gevonden, omdat aan de zijde waar het uitgezonden gecodeerde signaal wordt gedecodeerd deze regelmaat, uitgedrukt in de afstand D, door de decoder opnieuw in het gedecodeerde signaal wordt aangebracht. Indien tussen opeenvolgende gedecodeerde segmenten deze regelmaat te vaak wordt verstoord leidt dit ongewenste storingen in het gedecodeerde signaal. Genoemde storing is bij HLTP en bij LTP een bekend probleem.
Om ook hiervoor een oplossing te bieden wordt volgens een verder aspect van de uitvinding, nadat met behulp van de bovenstaand beschreven methode het meest gelijkende segment Cd gevonden is, hetgeen wordt vastgesteld, doordat voor dat segment bij het berekenen van de correlatiewaarde Rd met behulp van formule (1) de hoogste waarde wordt gevonden, hierna te noemen Rmax, onderzocht of er segmenten Cd zijn die op een kleinere afstand D van het segment A gelegen zijn en een correlatiewaarde Rd hebben die groter is aan q x Rmax., met q < 1* bijvoorbeeld q = 0,8. Van alle segmenten Cd waarvan de correlatiewaarde Rd aan deze voorwaarde voldoet wordt vervolgens het segment Cd dat het dichtst bij segment A gelegen is, dus het segment met de kleinste waarde voor D, als het meest geschikte segment gekozen, ondanks het feit dat er een of meer beter gelijkende segmenten zijn. Deze keuze is gebaseerd op het inzicht, dat een dergelijk dichter bij segment A gelegen segment C vanwege de kleinere waarde van D hoogstwaarschijnlijk gezien de specifieke eigenschappen van het te coderen (spraak)signaal het juiste is. Indien geen van de onderzochte segmenten Cd aan genoemde voorwaarde voldoet wordt het segment Cl gekozen. De in het voorgaande beschreven werkwijze voor het, met inachtneming van de regelmaat P in het signaal, zoeken naar het meest geschikte segment C is in figuur 2 in een stroomdiagram weergegeven. Opgemerkt wordt dat dit principe voor het zo goed mogelijk vaststellen van de fundamentele regelmaat ook kan worden toegepast bij de conventionele LTP en HLTP technieken. Daarbij dient dan te worden onderzocht welke correlatiewaarden Ri groter zijn dan q x Rmax; met q < 1, bijv. q = 0,8. Van de daarbij behorende afstanden Di, respectievelijk Di x Ob, wordt de kleinste afstand geselecteerd, die wordt aangeduid met Doptimaal · Doptimaal zal nooit groter zijn dan D omdat immers geldt Rmax > Rmax x q. De uitvinding heeft daarom ook betrekking op een werkwijze voor het coderen van een bemonsterd analoog signaal met een herhalend karakter, waarbij steeds voor een te coderen signaalsegment bestaande uit een tevoren bepaald eerste aantal monsters in een voorafgaand segment met een tevoren bepaald tweede aantal monsters, dat groter is dan het eerste aantal monsters, wordt gezocht naar een zo goed mogelijk overeenstemmend signaalsegment door, met stappen van één monsterinterval, het te coderen signaalsegment steeds te vergelijken met een segment met het eerste aantal monsters dat deel uitmaakt van het segment met het tweede aantal monsters en waarbij het verschilsignaal wordt bepaald tussen het gevonden, meest overeenstemmende segment en het te coderen segment alsmede het verschil tussen een referentietijdstip in het te coderen segment en een referentietijdstip in het gevonden, meest overeenstemmende segment, uitgedrukt in het aantal monsters D tussen beide tijdstippen, met het kenmerk, dat van de met het te coderen segment vergeleken deelsegmenten als het best overeenstemmende deelsegment dat segment wordt gekozen dat een correlatiewaarde R met de monsters van het te coderen segment heeft waarvoor geldt R > q. Rmax, met q < 1 en Rmax de maximale correlatiewaarde die is gevonden bij het correleren van de deelsegmenten uit het voorafgaande segment en het te coderen segment, en dat de kleinste bijbehorende waarde voor D oplevert.
Figuur 3a toont een blokschema van een codeer/decodeerstelsel voor het uitvoeren van de werkwijze volgens de uitvinding in het geval van een spraaksignaal omvattende een codeereenheid 10 en een decodeereenheid 30. Een door een microfoon 11 afgegeven analoog signaal wordt door een laagdoorlaatfilter 12 in bandbreedte beperkt en in een analoog/digitaalomzetter omgezet in een reeks bemonsterde waarden die representatief zijn voor het analoge signaal. Het uitgangssignaal van de omzetter 13 wordt toegevoerd aan de ingangen van een korte termijn predictiefilter 14 en van een korte termijn analyse eenheid 15. Deze twee eenheden verzorgen de bovenstaand genoemde korte termijn predictie en de analyse eenheid 15 verschaft een uitgangssignaal in de vorm van korte termijn predictie filtercoefficiënten, welk uitgangssignaal naar de decoder 30 wordt overgedragen. De opbouw en de functie van het filter 14 en de eenheid 15 zijn aan deskundigen op het gebied van spraakcodering welbekend en zijn verder voor het wezen van de onderhavige uitvinding niet van belang, zodat een verdere toelichting achterwege kan blijven.
Het uitgangssignaal van het filter 14, dat bestaat uit een reeks equidistante monsters van het analoge ingangssignaal wordt toegevoerd aan een keten 16 waarin van de binnenkomende reeks monsters steeds een tevoren bepaald aantal wordt afgesplitst ( 40 monsters in het bovenstaand gegeven voorbeeld) en aan een lange termijn predictie analyse-eenheid 17 waarin een gedeelte de werkwijze volgens de uitvinding wordt uitgevoerd. Deze eenheid 17 is in figuur 3b meer gedetaileerd getoond en omvat een eenheid 18 voor het afsplitsen van het segment A, eventueel kan hiervoor ook het uitgangssignaal van eenheid 16 worden gebruikt, alsmede een eenheid 19 voor het afsplitsen van het segment B. De uitgangssignalen van de eenheden 18 en 19 worden toegevoerd aan een keten 20 waarin op de bovenstaand geschetste wijze de correlatiewaarde Rci voor het segment Cl wordt berekend alsmede de waarde van D wordt vastgesteld. De berekende waarde van D wordt overgedragen naar de decoder 30 en wordt eveneens toegevoerd aan een eenheid 21 welke is ingericht om aan de hand van de tevoren gekozen waarden voor d en Ob de verschillende waarden van Dd te berekenen. De waarde van Dd en het segment B worden toegevoerd aan een eenheid 22 voor het berekenen van de segmenten Cd. De berekende Cd's worden toegevoerd aan een keten 23 die aan de hand van het eveneens daaraan toegevoerde segment A de correlatiewaarden Red voor de verschillende segmenten Cd berekent met behulp van formule (1). In een keten 24 worden de correlatiewaarden Rci en Red met elkaar vergeleken (zie ook figuur 2) en wordt d0ptimaal °P de bovenstaand beschreven wijze vastgesteld en overgedragen naar de decoder.
Het in de eenheid 25 vastgestelde optimale segment Cd wordt in een aftrekeenheid 26 monster na monster van overeenkomstige monsters van het segment A afgetrokken en het resulterende verschilsignaal wordt in een eenheid 27 op, op zich bekende wijze gekwantiseerd en in een eenheid 28 gecodeerd om overgedragen te worden naar de decodeereenheid 30.
In de decodeereenheid 30 wordt het ontvangen verschilsignaal in een decoder 31 gedecodeerd, terwijl in een eenheid 32 uit de ontvangen waarden van D en dopt en uit het vroeger ontvangen en gereconstrueerde signaalsegment B, het segment Cd0pt wordt gereconstueerd. In een opteller 33 worden het gedecodeerde verschilsignaal en het segment Cdopt monster voor monster opgeteld om zo het segment A te reconstrueren. Het gereconstrueerde segment A en de ontvangen korte termijn predictie filtercoefficiënten worden toegevoerd aan een invers korte termijn predictie filter, dat de verzonden signaalmonsters op op zich bekende wijze zo goed mogelijk reconstrueert. Het uitgangssignaal van het filter 34 wordt in een digitaal/analoog omzetter omgezet in een analoogsignaal, dat via een laagdoorlaat filter 36 wordt toegevoerd aan een luidspreker 37.
Claims (5)
1. Werkwijze voor het coderen van een bemonsterd analoog signaal met een herhalend karakter, waarbij steeds voor een te coderen signaalsegment, bestaande uit een tevoren bepaald eerste aantal monsters, in een voorafgaand segment met een tevoren bepaald tweede aantal monsters, dat groter is dan het eerste aantal monsters, wordt gezocht naar een zo goed mogelijk overeenstemmend signaalsegment door, met stappen van één monsterinterval, het te coderen signaalsegment steeds te vergelijken met een segment met het eerste aantal monsters dat deel uitmaakt van het segment met het tweede aantal monsters en waarbij het verschilsignaal wordt bepaald tussen het gevonden, meest overeenstemmende segment en het te coderen segment alsmede het verschil tussen een referentietijdstip in het te coderen segment en een referentietijdstip in het gevonden, meest overeenstemmende segment, uitgedrukt in het aantal monsters D tussen beide tijdstippen, met het kenmerk, dat het aantal monsters in het te coderen segment met een tevoren bepaalde factor Ob wordt vergroot door steeds tussen twee opeenvolgende monsters (Ob - 1) monsters met een waarde gelijk aan 0 te plaatsen, dat het aantal monsters in het voorafgaande segment eveneens met de factor Ob wordt vergroot, dat in het voorafgaande segment deelsegmenten Cd worden bepaald waarvoor geldt, dat het aantal monsters Dd, uitgedrukt in aantallen monsters na overbemonstering, tussen het referentietijdstip in het te coderen segment en het referentie tijdstip in een deelsegment Cd voldoet aan: Dd = (D x Ob)/d, waarin d = 1,2,3,4 ...n, met n een geheel positief getal, en met Ob en n zodanig gekozen dat Dd altijd een geheel getal is, dat in de segmenten Cd door middel van een interpolatietechniek op tevoren bepaalde posities monsterwaarden worden bepaald, welke tevoren bepaalde posities op een afstand Dd gelegen zijn van de oorspronkelijke monsters in het te coderen segment, voordat het aantal monsters daarvan vergroot werd, en dat wordt bepaald welk deelsegment Cd het meest overeenkomt met het te coderen segment.
2. Werkwijze volgens conclusie 1, met het kenmerk, dat de vergelijking tussen het te coderen segment en segmenten Cd ook wordt uitgevoerd voor segmenten waarvoor geldt dat Dd = (D x Ob)/d + eps, waarbij eps gelijk is aan ten minste een gedeelte van de waarden in het gebied eps = -(Ob - 1), . . .-2,-1,+1,+2 .. (Ob - 1) .
3. Werkwijze volgens conclusie 1 of 2, met het kenmerk, dat van de segmenten Cd als het best overeenstemmende segment dat segment Cd wordt gekozen dat een correlatiewaarde Rd met de monsters van het te coderen segment heeft waarvoor geldt Rd > q x Rjnax/ met q < 1 en Rmax de maximale correlatiewaarde die is gevonden bij het correleren van de segmenten Cd en het te coderen segment en dat de kleinste bijbehorende waarde van Dd oplevert.
4. Werkwijze voor het coderen van een bemonsterd analoog signaal met een herhalend karakter, waarbij steeds voor een te coderen signaalsegment bestaande uit een tevoren bepaald eerste aantal monsters in een voorafgaand segment met een tevoren bepaald tweede aantal monsters, dat groter is dan het eerste aantal monsters, wordt gezocht naar een zo goed mogelijk overeenstemmend signaalsegment door, met stappen van één monsterinterval, het te coderen signaalsegment steeds te vergelijken met een segment met het eerste aantal monsters dat deel uitmaakt van het segment met het tweede aantal monsters en waarbij het verschilsignaal wordt bepaald tussen het gevonden, meest overeenstemmende deelsegment en het te coderen segment alsmede het verschil tussen een referentietijdstip in het te coderen segment en een referentietijdstip in het gevonden, meest overeenstemmende deelsegment, uitgedrukt in het aantal monsters D tussen beide tijdstippen, met het kenmerk, dat van de met het te coderen segment vergeleken deelsegmenten als het best overeenstemmende deelsegment een segment wordt gekozen, dat een correlatiewaarde R met de monsters van het te coderen segment heeft waarvoor geldt R > q x Rmax/ met q < 1 en Rmax de maximale correlatiewaarde die is gevonden bij het correleren van de deelsegmenten uit het voorafgaande segment en het te coderen segment en dat de kleinste bijbehorende waarde voor D oplevert.
5. Inrichting voor het coderen van een analoog signaal met een herhalend karakter omvattende middelen voor het bemonsteren van het te coderen signaal; middelen voor het afsplitsen van een te coderen signaalsegment met een tevoren bepaald eerste aantal monsters; middelen voor het afsplitsen van een voorafgaand signaalsegment met een tweede aantal monsters, middelen voor het steeds met stappen van één monsterinterval vergelijken van de monsterwaarden van het eerste segment met overeenkomstige monsterwaarden van een deelsegment met het eerste aantal monsters, dat deel uitmaakt van het voorafgaande segment; middelen voor het bepalen van het deelsegment dat de beste overeenkomst vertoont met het te coderen signaalsegment; middelen voor het bepalen van een signaal dat representatief is voor het verschil tussen het te coderen segment en het gevonden deelsegment en middelen voor het bepalen van het aantal monsters D tussen een referentietijdstip in het te coderen segment en een referentietijdstip in het gevonden deelsegment, gekenmerkt door middelen voor het met een tevoren bepaalde factor Ob overbemonsteren van het te coderen signaalsegment en het voorafgaande segment; door middelen voor het bepalen van de waarde Dd = (D x Ob)/d met d = 2,3,4, ... n; door middelen voor het voor iedere waarde van d, door middel van interpolatie bepalen van de monsters op alle tijdstippen die Dd verschillen met de tijdstippen behorende bij de oorspronkelijke monsterwaarden; en door middelen voor het correleren van de monsterwaarden van het te coderen segment en de voor een waarde van d bepaalde monsterwaarden.
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL9001985A NL9001985A (nl) | 1990-09-10 | 1990-09-10 | Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen. |
NO913448A NO302549B1 (no) | 1990-09-10 | 1991-09-03 | Fremgangsmåte og anordning for koding av et samplet analogsignal av repeterende natur |
DK91202274.6T DK0475520T3 (da) | 1990-09-10 | 1991-09-06 | Fremgangsmåde til kodning af et analogt signal med en repetitiv karakter og en anordning til kodning ved den angivne fremgangsmåde |
DE69119005T DE69119005T2 (de) | 1990-09-10 | 1991-09-06 | Verfahren und Einrichtung zur Kodierung eines Analogsignals mit Wiederholeigenschaft |
ES91202274T ES2089113T3 (es) | 1990-09-10 | 1991-09-06 | Procedimiento para codificar una señal analogica que tiene naturaleza repetitiva y dispositivo para codificar por medio de dicho procedimiento. |
EP91202274A EP0475520B1 (en) | 1990-09-10 | 1991-09-06 | Method for coding an analog signal having a repetitive nature and a device for coding by said method |
AT91202274T ATE137354T1 (de) | 1990-09-10 | 1991-09-06 | Verfahren und einrichtung zur kodierung eines analogsignals mit wiederholeigenschaft |
CA002050979A CA2050979C (en) | 1990-09-10 | 1991-09-09 | Method for coding an analog signal having a repetitive nature and a device for coding by said method |
PT98900A PT98900B (pt) | 1990-09-10 | 1991-09-09 | Metodo para codificar um sinal analogico tendo uma natureza repetitiva e um dispositivo para codificar utilizando o referido metodo |
JP3307267A JP2640595B2 (ja) | 1990-09-10 | 1991-09-10 | 反復性をもつサンプル化されたアナログ信号のコード化方法およびその装置 |
FI914261A FI105624B (fi) | 1990-09-10 | 1991-09-10 | Menetelmä luonteeltaan toistuvan analogisen signaalin koodaamiseksi sekä laite sanotulla menetelmällä koodaamista varten |
US08/400,263 US5528629A (en) | 1990-09-10 | 1995-03-02 | Method and device for coding an analog signal having a repetitive nature utilizing over sampling to simplify coding |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL9001985A NL9001985A (nl) | 1990-09-10 | 1990-09-10 | Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen. |
NL9001985 | 1990-09-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
NL9001985A true NL9001985A (nl) | 1992-04-01 |
Family
ID=19857655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
NL9001985A NL9001985A (nl) | 1990-09-10 | 1990-09-10 | Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen. |
Country Status (11)
Country | Link |
---|---|
EP (1) | EP0475520B1 (nl) |
JP (1) | JP2640595B2 (nl) |
AT (1) | ATE137354T1 (nl) |
CA (1) | CA2050979C (nl) |
DE (1) | DE69119005T2 (nl) |
DK (1) | DK0475520T3 (nl) |
ES (1) | ES2089113T3 (nl) |
FI (1) | FI105624B (nl) |
NL (1) | NL9001985A (nl) |
NO (1) | NO302549B1 (nl) |
PT (1) | PT98900B (nl) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI116992B (fi) | 1999-07-05 | 2006-04-28 | Nokia Corp | Menetelmät, järjestelmä ja laitteet audiosignaalin koodauksen ja siirron tehostamiseksi |
US7388201B2 (en) | 2005-05-13 | 2008-06-17 | National University Of Singapore | Radiation detector having coated nanostructure and method |
WO2024194336A1 (en) * | 2023-03-21 | 2024-09-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Coding of granular synthesis databases |
CN117176177B (zh) * | 2023-11-03 | 2024-02-06 | 金乡县林业保护和发展服务中心(金乡县湿地保护中心、金乡县野生动植物保护中心、金乡县国有白洼林场) | 一种用于林业信息的数据共享方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5648688A (en) * | 1979-09-28 | 1981-05-01 | Hitachi Ltd | Sound analyser |
DE3783905T2 (de) * | 1987-03-05 | 1993-08-19 | Ibm | Verfahren zur grundfrequenzbestimmung und sprachkodierer unter verwendung dieses verfahrens. |
-
1990
- 1990-09-10 NL NL9001985A patent/NL9001985A/nl not_active Application Discontinuation
-
1991
- 1991-09-03 NO NO913448A patent/NO302549B1/no not_active IP Right Cessation
- 1991-09-06 AT AT91202274T patent/ATE137354T1/de not_active IP Right Cessation
- 1991-09-06 DE DE69119005T patent/DE69119005T2/de not_active Expired - Lifetime
- 1991-09-06 DK DK91202274.6T patent/DK0475520T3/da active
- 1991-09-06 ES ES91202274T patent/ES2089113T3/es not_active Expired - Lifetime
- 1991-09-06 EP EP91202274A patent/EP0475520B1/en not_active Expired - Lifetime
- 1991-09-09 PT PT98900A patent/PT98900B/pt not_active IP Right Cessation
- 1991-09-09 CA CA002050979A patent/CA2050979C/en not_active Expired - Lifetime
- 1991-09-10 FI FI914261A patent/FI105624B/fi not_active IP Right Cessation
- 1991-09-10 JP JP3307267A patent/JP2640595B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
ATE137354T1 (de) | 1996-05-15 |
NO302549B1 (no) | 1998-03-16 |
NO913448D0 (no) | 1991-09-03 |
NO913448L (no) | 1992-03-11 |
JPH05206955A (ja) | 1993-08-13 |
FI105624B (fi) | 2000-09-15 |
PT98900A (pt) | 1994-01-31 |
DE69119005D1 (de) | 1996-05-30 |
DE69119005T2 (de) | 1996-11-28 |
DK0475520T3 (da) | 1996-09-02 |
JP2640595B2 (ja) | 1997-08-13 |
PT98900B (pt) | 1999-02-26 |
EP0475520B1 (en) | 1996-04-24 |
CA2050979C (en) | 1996-05-21 |
ES2089113T3 (es) | 1996-10-01 |
EP0475520A3 (en) | 1992-09-30 |
EP0475520A2 (en) | 1992-03-18 |
FI914261A (fi) | 1992-03-11 |
FI914261A0 (fi) | 1991-09-10 |
CA2050979A1 (en) | 1992-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5140638A (en) | Speech coding system and a method of encoding speech | |
EP0898267B1 (en) | Speech coding system | |
EP0780831B1 (en) | Coding of a speech or music signal with quantization of harmonics components specifically and then of residue components | |
KR100426514B1 (ko) | 복잡성이감소된신호전송시스템 | |
EP0266620A1 (en) | Method of and device for speech signal coding and decoding by parameter extraction and vector quantization techniques | |
US7792679B2 (en) | Optimized multiple coding method | |
EP0501421B1 (en) | Speech coding system | |
US5179594A (en) | Efficient calculation of autocorrelation coefficients for CELP vocoder adaptive codebook | |
JP5506032B2 (ja) | ピッチ検索のための方法及び装置 | |
EP0834863B1 (en) | Speech coder at low bit rates | |
EP1159740B1 (en) | A method and apparatus for pre-processing speech signals prior to coding by transform-based speech coders | |
KR20040042903A (ko) | 일반화된 분석에 의한 합성 스피치 코딩 방법 및 그방법을 구현하는 코더 | |
NL9001985A (nl) | Werkwijze voor het coderen van een analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen. | |
JPS6356560B2 (nl) | ||
KR100323487B1 (ko) | 버스트여기선형예측 | |
US5809456A (en) | Voiced speech coding and decoding using phase-adapted single excitation | |
NL9002308A (nl) | Werkwijze voor het coderen en decoderen van een bemonsterd analoog signaal met een herhalend karakter en een inrichting voor het volgens deze werkwijze coderen en decoderen. | |
US6590946B1 (en) | Method and apparatus for time-warping a digitized waveform to have an approximately fixed period | |
US5528629A (en) | Method and device for coding an analog signal having a repetitive nature utilizing over sampling to simplify coding | |
KR100329876B1 (ko) | 의사주기신호용전송시스템 | |
FR2466826A1 (fr) | Synthetiseur de sons | |
Wu | Time-varying gradient algorithms for block implementation of adaptive digital filters | |
FR2960335A1 (fr) | Codage avec mise en forme du bruit dans un codeur hierarchique | |
JPH0736119B2 (ja) | 区分的最適関数近似方法 | |
Medan et al. | An accurate pitch detection algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A1B | A search report has been drawn up | ||
BV | The patent application has lapsed |