DE19609170B4 - Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung - Google Patents

Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung Download PDF

Info

Publication number
DE19609170B4
DE19609170B4 DE19609170A DE19609170A DE19609170B4 DE 19609170 B4 DE19609170 B4 DE 19609170B4 DE 19609170 A DE19609170 A DE 19609170A DE 19609170 A DE19609170 A DE 19609170A DE 19609170 B4 DE19609170 B4 DE 19609170B4
Authority
DE
Germany
Prior art keywords
search
pulse
depth
signal
level
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
DE19609170A
Other languages
English (en)
Other versions
DE19609170A1 (de
Inventor
Jean-Pierre Sherbrooke Adoul
Claude Sherbrooke Laflamme
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universite de Sherbrooke
Original Assignee
Universite de Sherbrooke
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=27017596&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE19609170(B4) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Universite de Sherbrooke filed Critical Universite de Sherbrooke
Publication of DE19609170A1 publication Critical patent/DE19609170A1/de
Application granted granted Critical
Publication of DE19609170B4 publication Critical patent/DE19609170B4/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • 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
    • 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/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • 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
    • 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
    • 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/0007Codebook element generation
    • G10L2019/0008Algebraic codebooks
    • 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/0011Long term prediction filters, i.e. pitch estimation
    • 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
    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/03Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
    • G10L25/06Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters the extracted parameters being correlation coefficients

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (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)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Complex Calculations (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, bei welchem das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Vielzahl unterschiedlicher Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, von denen jeder vorherbestimmten gültigen Positionen p des Codevektors zuordenbar ist;
dadurch gekennzeichnet, daß
die "Tiefe-Zuerst"-Suche Gebrauch macht von
a) einer Unterteilung der N Nicht-Null-Amplituden-Impulse in eine Anzahl M von Untersätzen, von denen jeder mindestens einen Nicht-Null-Amplituden-Impuls umfaßt, und
b) einer Baumstruktur (5), welche Knotenpunkte enthält, die die gültigen Positionen p der N Nicht-Null-Amplituden-Impulse darstellen, und eine Mehrzahl von Suchniveaus definieren, von denen jedes einem der M Untersätze zugeordnet ist, und wobei jedes Suchniveau außerdem einer vorgegebenen Impulsordnungsregel und einem vorgegebenen Auswahlkriterium zugeordnet ist; und
wobei das "Tiefe-Zuerst"-Codebuch-Suchverfahren folgende Schritte umfaßt:
– in einem ersten Suchniveau (Niveau 1) der Baumstruktur (5):
Wählen von mindestens einem der N...

Description

  • Die Erfindung betrifft ein Verfahren zur Durchführung einer "Tiefe-Zuerst" ("Depth-First")-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, eine Vorrichtung zur Durchführung dieses Verfahrens sowie ein zellulares Kommunikationssystem mit einer derartigen Vorrichtung.
  • Allgemein befaßt sich die vorliegende Erfindung mit einem verbesserten Verfahren zur digitalen Codierung eines Geräusch- bzw. Klangsignales, insbesondere, aber nicht ausschließlich, eines Sprachsignales, welches übertragen und synthetisiert werden soll.
  • Für zahlreiche Anwendungsfälle, beispielsweise für die Übertragung von Stimmen über Sateliten, beweglichen Landfunk, digitales Radio oder gepackt arbeitende Netze ("packed networks"), für die Sprachspeicherung, Spracherkennung und -steuerung sowie drahtloses Telefonieren, besteht ein zunehmender Bedarf an effizienten digitalen Sprachcodierverfahren mit gutem Kompromiß zwischen subjektiver Qualität und Bitrate.
  • Eines der besten bekannten Verfahren, mit welchem sich ein guter Kompromiß zwischen Qualität und Bitrate erzielen läßt, ist das sogenannte "Code-Excited-Linear-Prediction (CELP)"-Verfahren. Bei diesem Verfahren wird das Sprach signal abgetastet und in aufeinanderfolgenden Blocks von L Proben (genannt: Vektoren) verarbeitet. L ist dabei eine vorherbestimmte Zahl. Das CELP-Verfahren verwendet ein Codebuch.
  • Ein Codebuch ist im CELP-Kontext ein mit Indices versehener Satz von L Proben langen Folgen, die als L-dimensionale Codevektoren bezeichnet werden. Das Codebuch umfaßt einen Index k, der von 1 bis W läuft. Dabei stellt W die Größe des Codebuchs dar, die manchmal als Bitzahl b ausgedrückt wird: W = 2b
  • Ein Codebuch kann in einem physischen Speicher (beispielsweise einer Nachschlagtabelle) gespeichert werden oder einem Mechanismus Gebrauch machen, welcher den Index mit einem entsprechenden Codevektor verknüpft (beispielsweise von einer Formel).
  • Zur Synthetisierung von Sprache nach dem CELP-Verfahren wird jeder Block von Sprachproben dadurch synthetisiert, daß der entsprechende Codevektor aus dem Codebuch durch zeitvariierende Filter, welche die spektralen Charakteistika des Sprachsignals modellieren, gefiltert wird. Am Codierende wird das synthetische Ausgangssignal für alle Codevekroren oder einen Untersatz der Codevektoren aus dem Codebuch errechnet (Codebuch-Suche). Der erhaltene Codevektor ist derjenige, der dasjenige synthetische Ausgangssignal erzeugt, welches nach einem durch Wahrnehmung gewichteten Verzerrungsmaßstab dem ursprünglichen Sprachsignal am nächsten kommt.
  • Eine erste Art Codebuch sind die sogenannten "stochastischen" Codebücher. Ein Nachteil derartiger Codebücher besteht darin, daß sie häufig einen erheblichen physischen Speicherbedarf haben. Sie sind stochastisch, das heißt in dem Sinne zufällig, daß der Weg von dem Index zu dem zugeordneten Codevektor über Nachschlagtabellen läuft, die das Ergebnis zufällig erzeugter Zahlen oder statistischer Verfahren sind, die auf große Sprach-Trainingssätze angewandt werden. Die Größe von stochastischen Codebüchern wird im wesentlichen durch die Komplexität der Speicherung und/oder Suche beschränkt.
  • Eine zweite Art Codebuch sind die algebraischen Codebücher. Im Gegensatz zu stochastischen Codebüchern sind algebraische Codebücher nicht zufällig und erfordern keinen wesentlichen Speicherplatz. Ein algebraisches Codebuch ist ein Satz von mit Indices versehenen Codevektoren, wobei die Amplituden und Positionen der Impulse des k-ten Codevektors durch eine Regel aus einem entsprechenden Index k abgeleitet werden kann, die keine oder nur minimale physische Speicherung erfordert. Demzufolge ist die Größe von algebraischen Codebüchern nicht durch die Anforderungen an den Speicherplatz beschränkt. Algebraische Codebücher können also für eine effiziente Suche ausgelegt werden.
  • Aufgabe der vorliegenden Erfindung ist es daher, ein Verfahren, eine Vorrichtung und ein zellulares Kommunikations- system der eingangs genannten Art zu schaffen, mit welchen die Komplexität der Codebuch-Suche beim Codieren eines Geräusch- bzw. Klangsignales reduziert ist, wobei dieses Verfahren, diese Vorrichtung und dieses zellulare Kommunikationssystem bei einer großen Klasse von Codebüchern anwendbar sein sollen.
  • Diese Aufgabe wird erfindungsgemäß gelöst durch ein Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, bei welchem:
    das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Vielzahl unterschiedlicher Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, von denen jeder einer vorherbestimmten gültigen Position p des Codevektors zuordenbar ist;
    wobei die "Tiefe-Zuerst"-Suche eine Baumstruktur benutzt, die eine Anzahl M geordneter Niveaus definiert, von denen jedes Niveau m einer vorherbestimmten Anzahl Nm von Nicht-Null-Amplituden-Impulsen, Nm > 1, zugeordnet ist, wobei die Summe der vorherbestimmten Zahlen, die allen M Niveaus zugeordnet sind, gleich der Zahl N der Nicht-Null-Amplituden-Impulse ist, die sich in den Codevektoren befinden, und wobei ferner jedes Niveau m der Baumstruktur außerdem einem Weg-Aufbau-Vorgang zugeordnet ist mit einer vorgegebenen Impulsordnungsregel und mit einem vorgegebenen Auswahlkriterium;
    wobei das "Tiefe-Zuerst"-Codebuch-Suchverfahren die folgenden Schritte umfaßt
    • – in einem Niveau 1 der Baustruktur besteht der zugeordnete Weg-Aufbau-Vorgang in folgendem: eine Zahl N1 der N Nicht-Null-Amplituden-Impulse wird entsprechend der zugeordneten Impulsordnungsregel gewählt; mindestens eine der gültigen Positionen p der N1 Nicht-Null-Amplituden-Impulse wird entsprechend dem zugeordneten Auswahlkriterium so gewählt, daß mindestens ein Kandidatenweg auf dem Niveau 1 definiert wird;
    • – in einem Niveau m der Baumstruktur definiert der zugeordnete Weg-Aufbau-Vorgang rekursiv einen Kandidatenweg auf dem Niveau m, indem ein Kandidatenweg auf dem Niveau (m–1) durch die folgenden Unterschritte verlängert wird: Nm der Nicht-Null-Amplituden-Impulse, die nicht schon zuvor im Verlaufe des Aufbaues des Weges auf dem Niveau (m–1) ausgewählt wurden, werden entsprechend der zugeordneten Impulsordnungsregel gewählt; mindestens eine der gültigen Positionen p der Nm Nicht-Null-Amplituden-Impulse wird entsprechend dem zugeordneten Auswahlkriterium so ausgewählt, daß mindestens ein Kandidatenweg auf dem Niveau m gebildet wird; wobei ein Kandidatenweg auf dem Niveau M, der auf dem Niveau 1 entstanden ist und bei den Weg-Aufbau-Vorgängen, welche darauffolgenden Niveaus der Baumstruktur zugeordnet sind, verlängert wurde, die entsprechenden Positionen p der N Nicht-Null-Amplituden-Impulse eines Codevektors bestimmt und auf diese Weise einen Kandidaten-Codevektor Ak definiert.
  • Diese Aufgabe wird außerdem gelöst durch ein Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignals, bei dem:
    das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Mehrzahl unterschiedlicher Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, von denen jeder vorherbestimmten gültigen Positionen p des Codevektors zuordenbar ist;
    wobei die "Tiefe-Zuerst"-Suche Gebrauch macht von (a) einer Unterteilung der N Nicht-Null-Amplituden-Impulse in eine Anzahl M von Untersätzen, von denen jeder mindestens einen Nicht-Null-Amplituden-Impuls umfaßt, und (b) einer Baumstruktur, welche Knotenpunkte enthält, welche für die gültigen Positionen p der N Nicht-Null-Amplituden-Impulse repräsentativ sind und eine Mehrzahl von Suchniveaus definieren, von denen jedes einem der M Untersätze zugeordnet ist, und wobei jedes Suchniveau außerdem einer vorgegebenen Impulsordnungsregel und einem vorgegebenen Selektionskriterium zugeordnet ist;
    wobei das "Tiefe-Zuerst"-Codebuch-Suchverfahren folgende Schritte umfaßt:
    • – in einem ersten Suchniveau der Baumstruktur: Wählen von mindestens einem der N Nicht-Null-Amplituden-Impulse entsprechend der zugeordneten Impulsordnungsregel zur Bildung des zugeordneten Untersatzes; Auswählen von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend dem zugeordneten Auswahlkriterium, wodurch mindestens ein Weg durch die Knotenpunkte der Baumstruktur definiert wird;
    • – in jedem darauffolgenden Suchniveau der Baumstruktur: Wählen von mindestens einem der Nicht-Null-Amplituden-Impulse, die nicht zuvor schon ausgewählt wurden, entsprechend der zugeordneten Impulsordnungsregel zur Bildung des zugeordneten Untersatzes; und Auswählen von mindestens einer der gültigen Positionen p des mindestens einem Nicht-Null-Amplituden-Impulses des zugeordneten Untersatzes entsprechend dem zugeordneten Auswahlkriterium, wodurch der mindestens eine Weg durch die Knotenpunkte der Baumstruktur verlängert wird;
    wobei jeder Weg, der an dem ersten Suchniveau definiert und bei den darauffolgenden Suchniveaus verlängert wurde, die entsprechenden Positionen p der N Nicht-Null-Amplituden Impulse eines Codevektors Ak bestimmt, der einen Kanditaten-Codevektor für die Codierung des Geräusch- bzw. Klangsignales bildet.
  • Die oben geschilderte Aufgabe wird ferner gelöst durch eine Vorrichtung zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- oder Klangsignals, bei der:
    das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Mehrzahl unterschiedlicher Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, von denen jeder vorherbestimmten gültigen Positionen p des Codevektors zuordenbar ist;
    die "Tiefe-Zuerst"-Suche Gebrauch macht von (a) der Unterteilung der N Nicht-Null-Amplituden-Impulse in eine Anzahl M von Untersätzen, von denen jeder mindestens einen Nicht-Null-Amplituden-Impuls umfaßt, und (b) einer Baumstruktur, welche Knotenpunkte enthält, welche für die gültigen Positionen p der N Nicht-Null-Amplituden-Impulse repräsentativ sind und eine Mehrzahl von Suchniveaus definieren, von denen jedes einem der M Untersätze zugeordnet ist und außerdem einer vorgegebenen Pulsordnungsregel und einem vorgegebenen Auswahlkriterium zugeordnet ist;
    wobei die "Tiefe-Zuerst"-Codebuch-Suchvorrichtung umfaßt:
    • – für ein erstes Suchniveau der Baumstruktur: eine erste Einrichtung zum Wählen von mindestens einem der N Nicht-Null-Amplituden-Impulse entsprechend der zugeordneten Impulsordnungsregel zur Bildung des zugeordneten Untersatzes; eine erste Einrichtung zur Auswahl von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend dem zugeordneten Auswahlkriterium zum Definieren von mindestens einem Weg durch die Knotenpunkte der Baumstruktur;
    • – für jedes darauffolgende Suchniveau der Baumstruktur: eine zweite Einrichtung zm Wählen von mindesten einem der Nicht-Null-Amplituden-Impulse, die nicht zuvor schon gewählt wurde, entsprechend der zugeordneten Impulsordnungsfunktion zur Bildung des zugeordneten Untersatzes; eine zweite Einrichtung zur Auswahl in dem darauffolgenden Suchniveau von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses des zugeordneten Untersatzes entsprechend dem zugeordneten Auswahlkriterium, wodurch der mindestens eine Weg durch die Knotenpunkte der Baumstruktur verlängert wird,
    wobei jeder Weg, der in dem ersten Suchniveau definiert und bei den darauffolgenden Suchniveaus verlängert wurde, die entsprechenden Positionen p der N Nicht-Null-Amplituden-Impulse eines Codevektors Ak bestimmt, der einen Kandidaten-Codevektor zur Codierung des Geräusch- bzw. Klangsig nales bildet.
  • Schließlich wird die oben geschilderte Aufgabe gelöst durch ein zellulares Kommunikationssystem zur Bedienung eines großen geografischen Gebietes, welches in eine Mehrzahl von Zellen unterteilt ist, mit:
    mobilen Transmitter/Empfänger-Einheiten;
    zellularen Basisstationen, die jeweils in den Zellen angeordnet sind;
    Einrichtungen zur Steuerung der Kommunikation zwischen den zellularen Basisstationen;
    einem bidirektionen Funk-Kommunikations-Untersystem zwischen jeder mobilen Einheit, die in einer Zelle angeordnet ist, und der zellularen Basisstation dieser einen Zelle, welches sowohl in der mobilen Einheit als auch in der zellularen Basisstation umfaßt: (a) einen Sender, der eine Einrichtung zur Codierung eines Sprachsignales und eine Einrichtung zum Senden des codierten Sprachsignales enthält; und (b) einen Empfänger, der eine Einrichtung zum Empfang eines gesendeten codierten Sprachsignales und eine Einrichtung zur Decodierung des empfangenen codierten Sprachsignales enthält;
    wobei die Codiereinrichtung für das Sprachsignal eine Vorrichtung umfaßt, welche eine "Tiefe-Zuerst"-Suche in einem Codebuch für die Codierung des Sprachsignales durchführt, bei welcher
    das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Mehrzahl von unterschiedlichen Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, die jeweils bestimmten gültigen Positionen p des Codevektors zuordenbar sind;
    die "Tiefe-Zuerst"-Codebuch-Suche Gebbrauch macht von: (a) einer Unterteilung der N Nicht-Null-Amplituden-Impulse in eine Anzahl M von Untersätzen, die jeweils mindestens einen Nicht-Null-Amplituden-Impuls umfassen; und (b) einer Baumstruktur, welche Knotenpunkte enthält, die für die gültigen Positionen p der N Nicht-Null-Amplituden-Impulse repräsentativ sind und eine Mehrzahl von Suchniveaus definieren, die jeweils einem der M Untersätze und außerdem einer vorgegebenen Impuls-Ordnungsregel und einem vorgegebenen Auswahlkriterium zugeordnet sind;
    wobei die "Tiefe-Zuerst"-Codebuch-Suchvorrichtung umfaßt:
    • – für ein erstes Suchniveau der Baumstruktur: eine erste Einrichtung zum Wählen von mindestens einem der N Nicht-Null-Amplituden-Impulse entsprechend der zugeordneten Impulsordnungsregel zur Bildung des zugeordneten Untersatzes; eine erste Einrichtung zur Auswahl von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend dem zugeordneten Auswahlkriterium zum Definieren von mindestens einem Weg durch die Knotenpunkte der Baumstruktur;
    • – für jedes darauffolgende Suchniveau der Baumstruktur: eine zweite Einrichtung zum Wählen von mindestens einem der Nicht-Null-Amplituden-Impulse, die nicht schon zuvor gewählt wurden, entsprechend der zugeordneten Impuls-Ordnungsregel zur Bildung des zugeordneten Untersatzes; und eine zweite Einrichtung zur Auswahl von mindestens einer der gültige Positionen p des mindestens einen Nicht-Null-Ammplituden-Impulses des zugeordneten Untersatzes in dem darauffolgenden Suchniveau entsprechend dem zugeordneten Auswahlkriterium, wodurch der mindestens eine Weg durch die Knotenpunkte der Baumstruktur verlängert wird;
    wobei jeder Weg, der an dem ersten Suchniveau definiert und bei den darauffolgenden Suchniveaus verlängert wurde, die entsprechenden Positionen p der N Nicht-Null-Amplituden-Impulse eines Codevektors Ak bestimmt, welcher zur Codierung des Geräusch- bzw. Klangsignales einen Kandidaten-Codevektor bildet.
  • Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen unter Bezug auf die Zeichnung näher erläutert; es zeigen
  • 1: ein schematisches Blockdiagramm eines bevorzugten Ausführungsbeispieles eines erfindungsgemäßen Codiersystemes, welches eine Impulspositions-Wahrscheinlichkeitsschätzeinrichtung und eine optimierende Steuereinrichtung umfaßt;
  • 2: ein schematisches Blockdiagramm eines Decodiersystemes, welches dem Codiersystem von 1 zugeordnet ist;
  • 3: eine schematische Darstellung einer Mehrzahl von verschachtelten Schleifen, die bei der optimierenden Kontrolleinrichtung des Codiersystemes von 1 zur Errechnung optimaler Codevektoren verwendet wird;
  • 4a: eine Baumstruktur, an der beispielhaft einige Merkmale des "verschachtelten Schleifen"-Such verfahrens von 3 erläutert werden;
  • 4b: die Baumstruktur von 4a, wenn die Verarbeitung auf tieferen Niveaus davon abhängig gemacht wird, daß bestimmte Schwellwerte überschritten werden; dies ist ein schnelleres Verfahren zur Erforschung des Baumes, indem man sich nur auf die vielversprechendsten Gebiete dieses Baumes konzentriert;
  • 5: die Art, wie das "Tiefe-Zuerst"-Suchverfahren durch eine Baumstruktur zu bestimmten Kombinationen von Impulspositionen fortschreitet; das Beispiel betrifft ein 10-Impuls-Codebuch mit 40-Positions-Codevektoren, entworfen nach verschachtelten Einfach-Impuls-Permutationen;
  • 6: ein schematisches Flußdiagramm, welches die Funktionsweise der Impulspositions-Wahrscheinlichkeitsschätzeinrichtung und der optimierenden Steuereinrichtung von 1 zeigt;
  • 7: ein schematisches Blockdiagramm, welches die Infrastruktur eines typischen zellularen Kommunikationssystemes darstellt.
  • Nachfolgend wird die Anwendung des erfindungsgemäßen "Tiefe-Zuerst"-Codebuch-Suchverfahrens und der erfindungsgemäßen Vorrichtung bei einem zellularen Kommunikationssystem als nicht beschränkendes Beispiel erläutert. Es sei jedoch darauf hingewiesen, daß dieses Verfahren und diese Vorrichtung mit denselben Vorteilen bei vielen anderen Arten von Kommunikationssystemen eingesetzt werden können, wo eine Codierung von Geräusch- bzw. Klangsignalen erforderlich ist.
  • Bei einem zellularen Kommunikationssystem, wie es mit dem Bezugszeichen 1 (7) bezeichnet ist, wird die Telekommunikation über große geographische Gebiet hinweg dadurch gewährleistet, daß ein großes Gebiet in eine Anzahl kleinerer Zellen unterteilt wird. Jede Zelle hat eine zellulare Basisstation 2, welche Radio-Signalkanäle sowie Audio- und Datenkanäle bereitstellt.
  • Die Radio-Signalkanäle werden dazu verwendet, mobile Radiotelefone (mobile Transmitter/Empfängereinheiten), wie mit 3 bezeichnet, innerhalb der Grenzen der Erfassungszone (Zelle) der zellularen Basisstation zu "pagen" und Rufe zu anderen Radiotelefonen 3 entweder innerhalb oder außerhalb der Zelle der Basisstation oder auf ein anderes Netzwerk, wie beispielsweise das öffentliche Telefonnetz (PSTN) 4 zu plazieren.
  • Sobald ein Radiotelefon 3 einen Ruf erfolgreich plaziert oder empfangen hat, wird mit der zellularen Basisstation 2, welche der Zelle entspricht, in der das Radiotelefon 3 sich befindet, ein Audio- oder Datenkanal eingerichtet. Über diesen Audio- oder Datenkanal findet die Kommunikation zwischen der Basisstation 2 und dem Radiotelefon 3 statt. Das Radiotelefon 3 kann außerdem Steuer- oder Zeitinformationen über den Signalkanal erhalten, während ein Ruf abgewickelt wird.
  • Wenn ein Radiotelefon 3 während eines Anrufes eine Zelle verläßt und in eine andere Zelle eintritt, übergibt das Radiotelefon den Ruf an einen verfügbaren Audio- oder Datenkanal in der neuen Zelle. Wenn kein Anruf abgewickelt wird, wird in ähnlicher Weise eine Kontrollbotschaft über den Signalkanal gesandt, so daß das Radiotelefon 3 sich bei der Basisstation 2, die der neuen Zelle zugeordnet ist, anmeldet. Auf diese Weise ist eine mobile Kommunikation über große geografische Gebiete hinweg möglich.
  • Das zellulare Kommunikationssystem 1 umfaßt außerdem ein Terminal 5, welches die Kommunikation zwischen den zellularen Basisstationen 2 und dem PSTN 4, beispielsweise während einer Kommunikation zwischen einem Radiotelefon 3 und dem PSTN 4, oder zwischen einem Radiotelefon 3 in einer ersten Zelle und einem Radiotelefon 3 in einer zweiten Zelle steuert.
  • Natürlich ist ein bidirektionales Funkradio-Subkommunikationssystem erforderlich, welches eine Kommunikation zwischen jedem Radiotelefon 3, das sich in einer Zelle befindet, und der zellularen Basisstation 2 dieser Zelle ermöglicht. Ein derartiges bidirektionales Funkradio-Kommunikationssystem umfaßt typischerweise sowohl im Radiotelefon 3 als auch in der zellularen Basisstation 2 (a) einen Sender, welcher das Sprachsignal codiert und das codierte Sprachsignal über Antennen, wie sie beispielsweise mit den Bezugszeichen 6 oder 7 gekennzeichnet sind, überträgt, und (b) einen Empfänger, welcher gesendete, codierte Sprachsignale über dieselben Antennen 6 bzw. 7 empfängt und die empfangenen codierten Sprachsignale decodiert. Die Stimmcodierung ist, wie dem Fachmann bekannt, notwendig, um die Bandbreite zu reduzieren, die zur Übertragung von Sprache über das bidirektionale Funkradio-Kommunikationssystem, das heißt, zwischen einem Radiotelefon 3 und einer Basisstation 2, erforderlich ist.
  • Das Ziel der vorliegenden Erfindung besteht darin, ein effizientes digitales Sprachcodierverfahren zu schaffen, welches einen guten Kompromiß zwischen subjektiver Qualität und Bitrate erzielt, beispielsweise für die bidirektionale Übertragung von Sprachsignalen zwischen einer zellularen Basisstation 2 und einem Radiotelefon 3 über einen Audio- oder Datenkanal. 1 ist ein schematisches Blockdiagramm einer digitalen Sprachcodiervorrichtung, die zur Ausführung dieses effizienten Verfahrens geeignet ist.
  • Das Sprachcodiersystem von 1 ist dieselbe Codiervorrichtung, wie sie in 1 der US-Patentanmeldung 07/927 528 dargestellt ist, welcher jedoch gemäß der vorliegenden Erfindung eine Impulspositions-Schätzeinrichtung 112 hinzugefügt ist. Die US-Patentanmeldung 07/927 528 wurde am 10. September 1992 für eine Erfindung eingereicht, welche den Titel trägt "Dynamic Code Book for Efficient Speech Coding Based on Algebraic Codes".
  • Das analoge Eingangs-Sprachsignal wird abgetastet und blockweise verarbeitet. Allerdings sei angemerkt, daß die vorliegende Erfindung nicht auf die Anwendung bei Sprachsignalen beschränkt ist. Es kommt auch die Codierung anderer Arten von Geräusch- bzw. Klangsignalen in Frage.
  • Bei dem dargestellten Ausführungsbeispiel umfaßt der Block der eingegebenen Sprachprobe S (1) L aufeinanderfolgende Proben. In der CELP-Literatur wird L als die "Unterrahmen"(subframe)-Länge bezeichnet; sie liegt typischerweise zwischen 20 und 80. Die Blocks aus L Proben werden als L-dimensionale Vektoren bezeichnet. Verschiedene L-dimensionale Vektoren werden im Verlauf des Codiervorganges erzeugt. Eine Liste dieser Vektoren, die in den 1 und 2 erscheinen, sowie eine Liste gesendeter Parameter, folgen unten:
  • Liste der wichtigsten L-dimensionalen Vektoren
    • S Eingangs-Sprachvektor
    • R' Höhen-entfernter Restvektor
    • X Zielvektor
    • D rückwärts gefilterter Zielvektor
    • Ak Codevektor des Index k aus dem algebraischen Codebuch; und
    • Ck Innovationsvektor (gefilterter Codevektor).
  • Liste der gesendeten Paramter
    • k Codevektor-Index (Eingangssignal des algebraischen Codebuchs);
    • g Verstärkung;
    • STP Kurzzeit-Vorhersageparameter (welche A(z) definieren); und
    • LTP Langzeit-Vorhersageparameter (welche eine Höhenverstärkung b und eine Höhenverzögerung T definieren).
  • Es erscheint zweckmäßig, zunächst die Sprachcodiereinrichtung von 2 zu beschreiben, in welcher die verschiedenen Schritte dargestellt sind, die zwischen dem digitalen Eingangssignal (Eingangssignal des Demultiplexors 205) und der ausgegebenen Sprachprobe (Ausgang des Synthesefilters 204) ausgeführt werden.
  • Der Demultiplexor 205 extrahiert vier unterschiedliche Parameter aus der binären Information, die über einen digitalen Eingangskanal empfangen werden, nämlich den Index k, die Verstärkung g, die Kurzzeit-Vorhersagepara meter STP und die Langzeit-Vorhersageparameter LTP. Der laufende L-dimensionale Vektor S des Sprachsignales wid auf der Basis dieser vier Parameter synethetisiert, wie nachfolgend erläutert wird.
  • Die Sprachcodiervorrichtung von 2 umfaßt ein dynamisches Codebuch 208, welches sich aus einem algebraischen Codegenerator 201 und einem adaptiven Vorfilter 202 zusammensetzt, einen Verstärker 206, einen Addierer 207, eine Langzeit-Vorhersageeinrichtung 203 und ein Synethesefilter 204.
  • Im ersten Schritt erzeugt der algebraische Codegenerator 201 einen Codevektor Ak entsprechend dem empfangenen Index k.
  • Im zweiten Schritt wird der Codevektor Ak durch das adaptive Vorfilter 202 verarbeitet, welches mit den Kurzzeit-Vorhersageparametern STP versorgt ist. Dabei wird ein Ausgangs-Innovationsvektor Ck erzeugt. Der Zweck des adaptiven Vorfilters 202 besteht darin, den Frequenzgehalt des Ausgangs-Innovationsvektors Ck dynamisch zu kontrollieren, um die Sprachqualität zu verbessern, das heißt, um die hörbare Verzerrung zu reduzieren, die durch Frequenzen verursacht werden, welche dem menschlichen Ohr unangenehm sind. Typische Übertragungsfunktionen F(z) für das adaptive Vorfilter 202 sind unten angegeben:
    Figure 00170001
  • Fa(z) ist ein Formanten-Vorfilter, bei welchem 0 < τ1 < τ2 < 1 Konstanten sind. Dieses Vorfilter verstärkt die Formantenbereiche und arbeitet insbesondere bei Coderaten unterhalb von 5 kbit/s sehr effektiv.
  • Fb(z) ist ein Höhen-Vorfilter, wobei T die zeitvariierende Höhen-Verzögerung und b0 entweder eine Konstante oder gleich dem quantisierten Langzeit-Höhen-Vorhersageparameter aus dem laufenden oder vorhergehenden Unterrahmen ist. Fb(z) verstärkt harmonische Höhenfrequenzen bei allen Übertragungsraten effektiv. Daher enthält F(z) typischerweise ein Höhen-Vorfilter, welches manchmal mit einem Formanten-Vorfilter, nämlich F(z) = Fa(z)Fb(z) kombiniert ist. Andere Formen von Vorfiltern können jedoch ebenfalls mit Nutzen eingesetzt werden.
  • Gemäß der CELP-Technik wird die Ausgangs-Sprachsignalprobe S ^ dadurch erhalten, daß zuerst der Innovationsvektor Ck aus dem Codebuch 208 mit der Verstärkung g durch den Verstärker 206 skaliert wird. Der Addierer 207 addiert dann die skalierte Wellenform gCk zu dem Ausgangssignal E (der Langzeit-Vorhersagekomponente der Signalerregung des Synthesefilters 204) einer Langzeit-Vorhersageeinrichtung 203, welcher die LTP-Parameter zugeführt werden und die in einer Rückkopplungsschleife liegt und eine Transferfunktion B(z) aufweist, die folgendermaßen definiert ist: B(z) = bz–T
  • Hierbei sind b und T die oben definierte Höhenverstärkung bzw. -verzögerung.
  • Die Vorhersageeinrichtung 203 ist ein Filter mit einer Transferfunktion, welche in Übereinstimmung mit den zuletzt empfangenen LTP-Parametern b und T ist. Sie modelliert die Höhen-Periodizität der Sprache. Sie führt die geeig nete Höhenverstärkung b und -verzögerung T der Proben ein. Das zusammengesetzte Signal E + gCk bildet die Signalerregung des Synethesefilters 204, welches eine Transferfunktion 1/A(z) aufweist. Das Filter 204 sorgt für die korrekte Spektrum-Formung entsprechend den zuletzte empfangenen STP-Parametern. Genauer modelliert das Filter 204 die resonanten Frequenzen (Formanten) der Sprache. Der Ausgangsblock S ^ ist das synthetisierte abgetastete Sprachsignal, welches mit einer geeigneten anti-pseudonymisierenden Filterung nach bekannten Verfahren in ein analoges Signal umgewandelt werden kann.
  • Es gibt viele Arten, ein algebraisches Codebuch 208 zu entwerfen. Bei der vorliegenden Erfindung setzt sich das algebraische Codebuch 208 aus Codevektoren zusammen, welche N Impulse mit einer von 0 abweichenden Amplitude (kurz: Nicht-Null-Impulse) aufweisen.
  • Pi und Spi seien die Position bzw. die Amplitude des i-ten Nicht-Null-Impulses. Es sei weiter angenommen, daß die Amplitude Spi bekannt ist, entweder weil die i-te Amplitude fest ist oder weil es eine Methode gibt, vor der Codevektor-Suche Spi zu wählen.
  • Mit "Track i", kurz als Ti bezeichnet, sei der Satz von Positionen gemeint, den pi zwischen 1 und L einnehmen kann. Typische Sätze von "Tracks" sind unten angegeben, wobei L mit 40 angenommen ist.
  • Das erste Beispiel ist eine Konstruktionsweise, die in der oben erwähnten US-Patentanmeldung 07/927 528 erstmals eingeführt wurde und als "Interleaved Single Pulse Permutations" (ISPP) bezeichnet wird. Bei dem ersten Ausführungsbeispiel dieser-Konstruktionsweise, die mit ISPP (40, 5) bezeichnet ist, wird ein Satz von 40 Positionen in 5 wechselseitig verzahnte "Tracks" von jeweils 40/5 = 8 gültigen Positionen unterteilt. Um die 8 = 23 gültigen Positionen eines gegebenen Impulses zu spezifizieren, werden 3 Bits benötigt. Demzufolge werden insgesamt 5 × 3 = 15 Codierbits benötigt, um für diese spezielle algebraische Codebuch-Struktur Impulspositionen zu spezifizieren.
  • Figure 00200001
  • Dieses ISPP ist in dem Sinne vollständig, als jede der 40 Positionen mit einem und nur einem "Track" verknüpft ist. Es gibt viele Arten, eine Codebuch-Struktur aus einem oder mehreren ISPP so abzuleiten, daß bestimmten Anforderungen hinsichtlich der Anzahl von Impulsen oder Codierbits entsprochen werden kann. Beispielsweise läßt sich. ein 4-Impuls-Codebuch aus dem ISPP (40, 5) dadurch ableiten, daß einfach der "Track" 5 ignoriert wird oder daß die Vereinigung der "Tracks" 4 und 5 als einziger "Track" betrachtet wird. Die Konstruktionsbeispiele 2 und 3 zeigen weitere Möglichkeiten vollständiger ISPP-Bauweisen.
  • Figure 00200002
  • Figure 00210001
  • Dabei ist zu beachten, daß bei der Konstruktionsweise 3 die letzte Impulsposition der "Tracks" T5 bis T12 außerhalb der Unterrahmen-Länge L = 40 fällt. In einem derartigen Falle wird der letzte Impuls einfach ignoriert.
  • Figure 00210002
  • Bei dem Konstruktionsbeispiel 4 lassen die "Tracks" T1 und T2 jede beliebige der 40 Positionen zu. Zu beachten ist, daß die Positionen der "Tracks" T1 und T2 überlappen. Wenn mehrere Impulse denselben Platz einnehmen, werden ihre Amplituden einfach addiert.
  • Eine große Vielzahl von Codebüchern kann um das allgemeine Thema der ISPP-Bauweise herum gebaut werden.
  • Es folgt eine Erläuterung des Kodierprinzips.
  • Das abgetastete Sprachsignal S wird auf einer Block-für-Block-Basis durch das Codiersystem von 1 codiert, welches in 11 mit dem Bezugszeichen 102 bis 112 versehene Moduln unterteilt ist. Die Funktion und Wirkungsweise der meisten dieser Moduln sind gegenüber dem, was in der US-Patentanmeldung 07/927 528 beschrieben ist, unverändert. Demzufolge konzentriert sich die nachfolgende Beschreibung auf das, was gegenüber der Offenbarung der US-Patentanmeldung 07/ 927 528 neu ist, wenn auch zumindest kurz Funktion und Wirkungsweise von jedem Modul erläutert werden.
  • Für jeden Block von L Proben des Sprachsignales wird ein Satz linearer Vorhersage-Codeparameter (LPC), genannt Kurzzeit-Vorhersageparameter (STP), nach einem bekannten Verfahren durch eine LPC-Spektrum-Analysiereinrichtung 102 erzeugt. Genauer modelliert die Analysiereinrichtung 102 die spektralen Charakteristiken von jedem Block S von L-Proben.
  • Der eingegebene Block S von L Proben wird durch ein Aufhellungsfilter 103 aufgehellt, welches die folgende Transferfunktion, basierend auf den laufenden Werten der STP-Parameter, aufweist:
    Figure 00230001
  • Hierin ist a0 = 1 und Z die übliche Variable der sogenannten z-Transform. Wie in 1 dargestellt, erzeugt das Aufhellfilter 103 einen Restvektor R.
  • Eine Höhen-Extraktionseinrichtung 104 wird dazu verwendet, die LTP-Parameter, nämlich die Höhen-Verzögerung T und die Hähen-Verstärkung g, zu errechnen und zu quantisieren. Der Anfangszustand der Extraktionseinrichtung 104 wird ebenfalls auf einen Wert FS aus einer Anfangszustands-Extraktionseinrichtung 110 eingestellt. Eine detaillierte Prozedur zur Errechnung und Quantisierung der LTP-Parameter ist in der US-Patentanmeldung 07/927 528 beschrieben; es wird unterstellt, daß diese dem Fachmann bekannt ist. Demzufolge wird sie vorliegend nicht näher erklärt.
  • Eine Filterantwort-Charakterisiereinrichtung 105 (1) wird mit den STP- und LTP-Parametern versorgt und errechnet eine Filterantwort-Charakterisierung FRC zur Verwendung in den nachfolgenden Schritten. Die FRC-Information besteht aus den nachfolgenden drei Komponenten, wobei n = 1, 2, ... L.
    • – f(n): Antwort von F(z). Beachte, daß F(z) allgemein das Höhen-Vorfilter enthält.
    • – h(n): Antwort von
      Figure 00230002
      auf f(n), wobei τ ein Wahrnehmungsfaktor ist. Allgemeiner ist h(n) die Impulsantwort von F(z) W(z)/A(z), wobei es sich um die Kaskade des Vorfilters F(z), des Wahrnehmungs-Gewichtungsfilters W(z) und des Synthesefilters 1/A(z) handelt. Beachte, daß F(z) und 1/A(z) dieselben Filter sind, wie sie im Decoder eingesetzt werden.
    • – U(ij): Autokorrelation von h(n) entsprechend dem nachfolgenden Ausdruck:
      Figure 00240001
      für 1 ≤ i ≤ L und i ≤ j ≤ L; h(n) = 0 für n 1.
  • Die Langzeit-Vorhersageeinrichtung 106 wird mit dem vergangenen Erregungssignal (das heißt, E + gCk des vorhergehenden Unterrahmens) versorgt und bildet die neue E-Komponente unter Verwendung der richtigen Höhenverzögerung T und -verstärkung b.
  • Der Anfangszustand des Wahrnehmungsfilters 107 wird auf den Wert FS eingestellt, der von der Anfangszustand-Extraktionseinrichtung 110 zur Verfügung gestellt wird. Der Höhen-entfernte Restvektor R' = R – E, der von einer Subtraktionseinrichtung 121 (1) errechnet wird, wird dann dem Wahrnehmungsfilter 107 zugeführt, an dessen Ausgang ein Zielvektor X erhalten wird. Wie in 1 dargestellt, werden die STP-Parameter dem Filter 107 zugeführt, wodurch dessen Transferfunktion entsprechend diesen Parametern variiert wird. Grundsätzlich gilt X = R' – P, wobei P den Anteil der Langzeitvorhersage (LTP) einschließlich des "Klingelns" ("Ringing") aus vergangenen Erregungen darstellt. Das MSE-Kriterium, welches auf den Fehler Δ anzuwenden ist, kann nunmehr in der folgenden Matrix-Darstellung festgehalten werden:
    Figure 00250001
  • Hierin sind Δ = S' ^ – S' und S' ^ bzw. S' sind S ^ bzw. S nach der Verarbeitung durch ein Wahrnehmungs-Gewichtungsfilter, welches die folgende Übertragungsfunktion aufweist:
    Figure 00250002
  • Hier ist τ = 0,8 eine Wahrnehmungskonstante; H ist eine niedrigere dreieckige L × L-Töplitz-Matrix, die aus der h(n)-Antwort folgendermaßen gebildet wird: Der Ausdruck h(0) nimmt die Matrix-Diagonale ein und die Ausdrücke h(1), h(2), ... und h(L – 1) nehmen die entsprechenden tieferen Diagonalen ein.
  • Durch das Filter 108 von 1 wird ein Rückwärts-Filterschritt ausgeführt. Setzt man die Ableitung der obigen Gleichung nach der Verstärkung g gleich 0, ergibt sich die optimale Verstärkung wie folgt:
    Figure 00260001
  • Für diesen Wert von g wird die Minimalisierung:
    Figure 00260002
  • Ziel ist es, den speziellen Index k zu finden, für welchen die Minimalisierung erreicht wird. Dabei ist zu beachten, daß derselbe Index auch durch Maximierung der folgenden Größe erreicht werden kann, da X2 eine feste Größe ist:
  • Figure 00260003
  • Dabei ist D = (XH) und αk 2 = ∥AkHT2.
  • In dem Rückwärtsfilter 108 wird ein rückwärts gefilterter Zielvektor D = (XH) errechnet. Der Ausdruck "Rückwärtsfilterung" für diesen Vorgang rührt aus der Interpretation von (XH) als Filterung des zeitumgekehrten X.
  • Der Zweck der optimierenden Steuereinrichtung 109 besteht darin, die in dem algebraischen Codebuch verfügbaren Codevektoren zu suchen und den besten Codevektor zur Codierung des laufenden L-Proben-Blockes auszuwählen. Das Hauptkriterium zum Auswählen der besten Codevektoren aus einem Satz von Codevektoren, die jeweils N Nicht-Null-Impulse aufweisen, läßt sich in Form eines zu maximierenden Verhältnisses angeben:
    Haupt-Auswahlkriterium:
    Figure 00270001
  • Dabei ist
  • Figure 00270002
  • Hierin hat Ak N Nicht-Null-Amplituden-Impulse. Der Zähler in der obigen Gleichung ist das Quadrat von
    Figure 00270003
  • Hier ist D der rückwärts gefilterte Zielvektor und Ak ist der algebraische Codevektor mit N Nicht-Null-Impulsen der Amplituden Spi.
  • Der Nenner ist ein Energieterm, der folgendermaßen ausgedrückt werden kann:
    Figure 00280001
  • Hier ist U(pi, pj) die Korrelation, die zwei Einheits-Amplituden-Impulsen, einer am Ort pi und der andere am Ort pj, zugeordnet ist. Diese Matrix wird entsprechend der obigen Gleichung in dem Filterantwort-Charakterisiermodul 105 errechnet und ist in dem Satz von Parametern enthalten, die in dem Blockdiagramm von 1 als FRC bezeichnet sind.
  • Eine schnelle Methode zur Errechnung dieses Nenners macht von den N-fach verschachtelten Schleifen Gebrauch, die in 4 dargestellt sind. In dieser wird die vereinfachte Notation S(i) und SS(i, j) anstelle der entsprechenden Größen "Spi" und "SpiSpj" verwendet. Die Errechnung des Nenners αk 2 ist der am meisten Zeit verbrauchende Vorgang. Die Rechenvorgänge, die zu αk 2 beitragen und in jeder Schleife der 4 ausgeführt werden, können auf getrennten Zeilen von der äußersten Schleife zur innersten Schleife folgendermaßen niedergeschrieben werden:
    Figure 00280002
  • Dabei ist pi die Position des i-ten Nicht-Null-Impulses.
  • Die obige Gleichung kann vereinfacht werden, wenn durch die optimierende Steuereinrichtung 109 eine gewisse Vorberechnung durchgeführt wird, bei welcher die Matrix U(i, j), welche von der Filterantwort-Charakterisiereinrichtung 105 bereitgestellt wird, in eine Matrix U'(i, j) entsprechend der folgenden Beziehung umgewandelt wird: U'(j, k) = Sj Sk U(j, k)
  • Hier ist Sk die Amplitude, die für einen individuellen Impuls an der Position k nach der Quantisierung der entsprechenden Amplitudenschätzung (wie weiter unten beschrieben) gewählt wird. Der Faktor 2 wird in dem Rest der Diskussion ignoriert, um die Gleichungen zu vereinfachen.
  • Mit der neuen Matrix U'(j, k) läßt sich der Rechenvorgang (vergl. 3) für jede Schleife des schnellen Algorithmus auf einer getrennten Zeile, von der äußeren zur innersten Schleife, wie folgt niederschreiben: αk 2 = U'(p1, p1) + U'(p2, p2) + U'(p1, p2) + U'(p3, p3) + U'(p1, p3) + U'(p2, p3) + U'(pN, pN) + U'(p1, pN) + U'(p2, pN) + .. + U'(pN–1, pN)
  • 4a und 4b zeigen zwei Beispiele einer Baumstruktur, anhand derer einige Merkmale der "verschachtelte-Schleifen-Suche"-Technik illustriert werden, die soeben beschrieben und in 3 dargestellt wurde, um sie in Gegensatz zur vorliegenden Erfindung zu stellen. Die Endknotenpunkte an der Unterseite des Baumes von 4a zeigen alle möglichen Kombinationen von Impulspositionen für ein Beispiel mit 5 Impulsen (N = 5), wobei jeder Impuls eine von vier möglichen Positionen einnehmen kann. Die erschöpfende "verschachtelte-Schleifen-Suche"-Technik verläuft durch die Baumknotenpunkte im wesentlichen von links nach rechts, wie angedeutet. Ein Nachteil des "verschachtelte-Schleifen-Suche"-Lösungsweges besteht darin, daß die Komplexität der Suche als Funktion der Anzahl von Impulsen N anwächst. Um Codebücher mit einer größeren Anzahl N von Impulsen verarbeiten zu können, muß man sich mit einer Partialdurchsuchung des Codebuches begnügen. 4b zeigt denselben Baum, wobei eine schnellere Suche dadurch erzielt wird, daß man sich nur auf das vielversprechendste Gebiet des Baumes konzentriert. Genauer ist das Fortschreiten zu den tieferen Niveaus nicht systematisch sondern davon abhängig, ob bestimmte vorgegebene Schwellwerte überschritten werden.
  • Nunmehr sei die Aufmerksamkeit dem alternativen schnelleren Verfahren zugewandt, welches Gegenstand der vorliegenden Erfindung ist und durch die Impulspositions-Wahrscheinlichkeitsschätzeinrichtung 112 und die optimierende Steuereinrichtung 109 von 1 durchgeführt wird. Zunächst werden die allgemeinen Merkmale dieses Verfahrens beschrieben. Danach wird eine Anzahl typischer Illustrationsbeispiele für das schnellere Verfahren erläutert.
  • Ziel der Suche ist es, den Codevektor mit dem besten Satz von N Impulspositionen zu bestimmen, wobei angenommen wird, daß die Amplituden der Impulse entweder fest sind oder aufgrund eines signalbasierenden Mechanismus vor der Suche ausgewählt wurden, wie dies in der US-Patentanmeldung 08/383 968, eingereicht am 6. Februar 1995, beschrieben ist. Das Haupt-Auswahlkriterium ist die Maximie rung des oben erwähnten Verhältnisses Qk.
  • Um die Komplexität der Suche zu reduzieren, werden die Impulspositionen jeweils als Nk Impulse zu einer bestimmten Zeit bestimmt. Genauer werden die N verfügbaren Impulse in M nicht-leere Untersätze von Nm Impulse aufgeteilt (Schritt 601 von 1), derart, daß N1 + N2 ... + Nm ... + NM = N. Eine bestimmte Wahl von Positionen für die ersten J = N1 + N2 ... + Nm–1 betrachteten Impulse wird als "Niveau-m"-Weg bzw. Weg der Länge J bezeichnet. Das Hauptkriterium für einen Weg von J Impuls-Positionen ist das Verhältnis Qk(J), wenn nur die J relevanten Impulse betrachtet werden.
  • Die Suche beginnt mit dem Untersatz Nr. 1 und schreitet mit darauffolgenden Untersätzen entsprechend einer Baumstruktur fort, wobei der Untersatz m an dem m-ten Niveau des Baumes durchsucht wird.
  • Der Zweck der Suche am Niveau 1 besteht darin, die N1 Impulse des Untersatzes Nr. 1 zu betrachten sowie deren gültige Positionen, um einen oder eine Anzahl von Kandidatenwegen der Länge N1 zu bestimmen, bei welchen es sich um die Baum-Knotenpunkte im Niveau 1 handelt.
  • Der Weg an jedem Endknotenpunkt des Niveaus m–1 wird auf die Länge N1 + N2 ... + Nm am Niveau m verlängert, indem Nm neue Impulse und deren gültige Positionen betrachtet werden. Ein oder eine ganze Anzahl von verlängerten Kandidatenwegen werden betrachtet und bilden so die Niveau-m-Knotenpunkte.
  • Der beste Codevektor entspricht demjenigen Weg der Länge N, welcher das Kriterium Qk(N) hinsichtlich aller Niveau-M-Knotenpunkte maximiert.
  • Während in der oben erwähnten US-Patentanmeldung 08/927 528 die Impulse (oder "Tracks") in einer vorherbestimmten Reihenfolge (i = 1, 2, ... N) erforscht werden, werden sie in der vorliegenden Erfindung in unterschiedlicher Reihenfolge betrachtet. Tatsächlich können sie entsprechend derjenigen Reihenfolge betrachtet werden, welche unter den besonderen Umständen zu einer beliebigen Zeit während der Suche für die erfolgversprechendste gehalten wird. Hierzu wird ein neuer chronologischer Index n (n = 1, 2, ... N) verwendet, und die ID(Identifikations)-Zahl des n-ten betrachteten Impulses in der Suche wird durch die "Impulsordnungsfunktion": i = i(n) angegeben. Beispielsweise könnte der Suchweg bei einem 5-Impuls-Codebuch zu einer bestimmten Zeit entsprechend der nachfolgenden Impulsordnungsfunktion verlaufen:
    n = 1 2 3 4 5 chronologischer Index
    i = 4 3 1 5 2 Impuls-(oder "Track"-)ID
  • Um in intelligenter Weise zu raten, welche Impulsordnung zu einer belibigen Zeit vielversprechender ist, führt die vorliegende Erfindung einen "Impulspositions-Wahrscheinlichkeitsschätzvektor" B ein. Dieser basiert auf sprachbezogenen Signalen. Die p-te Komponente Bp dieses Schätzvektors B charakterisiert die Wahrscheinlichkeit, daß ein Impuls die Position p (p = 1, 2, ... L) in dem besten Codevektor, nach dem gesucht wird, einnimmt. Dieser beste Codevektor ist noch immer unbekannt, und es ist der Zweck der vorliegenden Erfindung zu offenbaren, wie auf einige Eigenschaften dieses besten Codevektors von den sprachbezogenen Signalen geschlossen werden kann.
  • Der Schätzvektor B kann folgendermaßen verwendet werden:
    Zunächst dient der Schätzvektor B als Basis, um zu bestimmen, für welche "Tracks" i oder j die Impulsposition leichter zu erraten ist. Der "Track", für welchen die Impulsposition leichter zu erraten ist, sollte als erster verarbeitet werden. Diese Eigenschaft wird in der Impulsordnungsregel beim Auswählen der Nm Impulse in den ersten Niveaus der Baumstruktur häufig verwendet.
  • Der Schätzvektor B gibt zweitens für einen bestimmten "Track" die relative Wahrscheinlichkeit jeder gültigen Position an. Diese Eigenschaft wird vorteilhafterweise als Auswahlkriterium in den paar ersten Niveaus der Baumstruktur anstelle des Haupt-Auswahlkriteriums Qk(j) verwendet, welches in den ersten paar Niveaus ohnehin auf zu wenige Impulse einwirkt, um bei der Auswahl gültiger Positionen verläßlich zu arbeiten.
  • Die bevorzugte Methode, den Impulspositions-Wahrscheinlichkeits-Schätzvektor B aus sprachbezogenen Signalen zu ermitteln, besteht darin, die Summe des normalisierten rückwärts-gefilterten Zielvektors D;
    Figure 00330001
    sowie des normalisierten Höhen-entfernten Restsignals R':
    Figure 00330002
    zu errechnen, wodurch der Impulspositions-Wahrscheinlichkeitsschätzvektor B erhalten wird:
    Figure 00340001
  • Hier ist β eine feste Konstante mit einem typischen Wert von 1/2 (β wird zwischen 0 und 1 gewählt, je nach dem Prozentsatz von Nicht-Null-Impulsen, die in dem algebraischen Code verwendet werden).
  • An dieser Stelle sei darauf hingewiesen, daß derselbe Schätzvektor in einem unterschiedlichen Kontext und zu einem anderen Zweck in der anhängigen US-Patentanmeldung 08/383 968 verwendet wird, die am 6. Februar 1995 für eine Erfindung mit dem Titel "Algebraic Codebook with Signal-Selected Pulse Amplitudes for Fast Coding of Speech" hinterlegt wurde. Diese beschreibt ein Verfahren, a priori eine nahezu optimale Kombination von Impulsamplituden auszuwählen. Dies kann im Kontext einer algebraischen Codebuch-Konstruktion verwendet werden, wo Nicht-Null-Impulsamplituden einen von q Werten annehmen können, wobei q > 1 ist. Diese Beobachtung bestätigt, daß die Entdeckung von guten Schätzern, wie dies B ist und die von dem Signal selbst abgeleitet werden können, für eine effiziente Sprachcodierung von tiefer Bedeutung ist. Tatsächlich gibt es über die Schätzer für entweder die Positionen oder die Amplituden hinaus Schätzer für den Codevektor Ak selbst. Daher liegt jedes Suchverfahren, welches sowohl die Prinzipien der anhängigen US-Patentanmeldung 08/383 968 als auch diejenigen der vorliegenden Anmeldung anwendet, eindeutig innerhalb des Grundgedankens der vorliegenden Erfindung. Nachfolgend wird ein Beispiel für ein typisches kombiniertes Verfahren innerhalb des Grundgedankens der vorliegenden Erfindung gegeben. Weiter oben wurde bereits darauf hingewiesen, daß dann, wenn zwei oder mehr Impulse aus einander überlappenden "Tracks" dieselbe Position im Rahmen teilen, diese addiert werden sollten. Dieser Kompromiß zwischen Position und Amplitude kann durch eine gitterartige Suche gemeinsam optimiert werden.
  • Aus Zweckmäßigkeitsgründen werden sowohl die Konstanten als auch die Variablen, die bereits definiert wurden, unten aufgelistet.
  • Liste der Konstanten
    Figure 00350001
  • Liste der Variablen
    Figure 00350002
  • Nunmehr sei eine Anzahl typischer Beispiele für "Tiefe-Zuerst"-Suchen betrachtet:
  • SUCHVERFAHREN Nr. 1
    Figure 00360001
  • Regel R1:
  • Die zehn Wege, eine erste Impulsposition pi(1) für den Weg-Aufbauvorgang im Niveau 1 zu wählen, besteht darin, jeden der 5 "Tracks" der Reihe nach zu betrachten und für jeden "Track" der Reihe nach eine der beiden Positionen zu wählen, welche Bp für den jeweils betrachteten "Track" maximieren.
  • Regel R2:
  • Regel 2 definiert die Impulsordnungsfunktion, die für vier an den Niveaus 2 und 3 betrachtete Impulse zu benutzen ist, wie folgt: Lege die vier verbleibenden Indices auf einem Kreis aus und numeriere diese im Uhrzeigersinn um, wobei rechts von dem i(1)-Impuls (das heißt, der Impulszahl des speziellen betrachteten Knotenpunktes auf dem Niveau –1) begonnen wird.
  • Nunmehr wenden wir uns einem zweiten Beispiel der "Tiefe-Zuerst"-Codebuchsuche zu, die Suchverfahren Nr. 2 genannt wird und die deutlich die "Tiefe-Zuerst"-Grundsätze veranschaulicht.
  • SUCHVERFAHREN Nr. 2
    Figure 00370001
  • Figure 00380001
  • Regel R3:
  • Wähle den Impuls i(1) und wähle dessen Position entsprechend dem Maximum von Bp über alle p. Wähle für i(2) der Reihe nach jeden der verbleibende 9 Impulse. Das Auswahlkriterium für ein vorgegebenen i(2) besteht darin, die Position zu wählen, welche Bp innerhalb seines "Tracks" maximiert.
  • Regel R4:
  • Am Ende des Niveaus 1. Die gesamte Impulsordnungsfunktion wird dadurch bestimmt, daß die 8 verbleibenden Indices n auf einem Kreis ausgelegt und im Uhrzeigersinn umnumeriert werden, wobei rechts von i(2) begonnen wird.
  • Das Suchverfahren Nr. 2 ist in den 5 und 6 veranschaulicht. 5 zeigt die Baumstruktur des "Tiefe-Zuerst"-Suchverfahrens Nr. 2, welches auf ein 10-Impuls-Codebuch von 40 Positions-Codevektoren angewandt wird, konstruiert nach wechselseitig verzahnten Einzel-Impuls-Permutationen. Das entsprechende Flußdiagramm ist in 6 dargestellt.
  • Die L = 40 Positionen werden in 10 "Tracks" unterteilt, die jeweils einem der N = 10 Nicht-Null-Amplituden-Impulse der Codevektoren zugeordnet sind. Die 10 "Tracks" sind entsprechend den N wechselseitig verzahnten Einzel-Impuls-Permutationen verzahnt.
  • Schritt 601
  • Der oben beschriebene Impulspositons-Wahrscheinlichkeitsschätzvektor B wird errechnet.
  • Schritt 602
  • Die Position p des maximalen Absolutwertes des geschätzten Bp wird errechnet.
  • Schritt 603 (Beginn der Wegaufbau-Vorgänge auf dem Niveau –1)
  • Wähle den Impuls (i.e. "Track") i(1) und wähle dessen gültige Position so aus, daß diese der im Schritt 602 (vergl. 501 in 5) gefundenen Position entspricht.
  • Schritt 604 (Ende der Wegaufbau-Vorgänge auf dem Niveau –1)
  • Wähle für i(2) der Reihe nach jeden der verbleibenden 9 Impulse. Das Auswahlkriterium für ein gegebenes i(2) besteht darin, die Position auszuwählen, welche Bp innerhalb des "Tracks" des genannten vorgegebenen i(2) maximiert. Auf diese Weise werden 9 unterschiedliche Kandidatenwege auf dem Niveau –1 erzeugt (vergl. 502 in 5). Jeder der Kandidatenwege auf dem Niveau –1 wird danach durch darauffolgende Niveaus der Baumstruktur so verlängert, daß 9 unterschiedliche Kandidaten-Codevektoren gebildet werden. Der Zweck des Niveaus –1 besteht offensichtlich darin, 9 gute Startpaare von Impulsen herauszugreifen, die auf der B-Schätzung basieren. Aus diesem Grunde werden die Wegaufbau-Vorgänge auf dem Niveau –a "signalbasierendes Impulssieben" in 5 genannt.
  • Schritt 605 (Regel R4)
  • Um Rechenzeit zu sparen, wird die in den darauffolgenden 4 Niveaus zu verwendende Impulsordnung voreingestellt. Die Impulsordnungsfunktion i(n) für n = 3, 4, ... 10 wird dadurch bestimmt, daß die 8 verbleibenden Indices n auf einem Kreis ausgelegt und im Uhrzeigersinn umnumeriert werden, wobei rechts von i(2) begonnen wird. Entsprechend dieser Ordnung werden die Impulse i(3) und i(4) für das Niveau –2 gewählt, wobei die Impulse i(5) und i(6) bereits für das Niveau –3 gewählt sind, usw.
  • Schritte 606, 607, 608, 609 (Niveaus 2 bis 5)
  • Die Niveaus 2 bis 5 sind auf Effizienz ausgelegt und folgen identischen Prozeduren. Eine erschöpfende Suche wird auf alle 16 Kombinationen der 4 Positionen der beiden betrachteten Impulse (vergl. 503 in 5) entsprechend dem zugeordneten Auswahlkriterium Qk(2m) angewandt, wobei m = 2, 3, 4, 5 die Niveaunummer ist.
  • Da aus jedem Wegaufbau-Vorgang (vergl. 504 in 5), der mit den Niveaus 2 bis 5 (i.e. Verzweigungsfaktor 1) verknüpft ist, nur ein einziger Kandidatenweg resultiert, wächst die Komplexität der Suche im wesentlichen nur linear mit der Gesamtzahl von Impulsen. Aus diesem Grunde läßt sich die in den Niveaus 2 bis 5 durchgeführte Suche genau als "Tiefe-Zuerst"-Suche charakterisieren. Baumsuch techniken variieren stark in ihren Strukturen, in den Kriterien und den Problemdomänen. Im Gebiet der künstlichen Intelligenz ist es jedoch gebräuchlich, zwei breite Klassen von Suchphilosophien zu unterscheiden, nämlich "Breite-Zuerst"-Suchen und "Tiefe-Zuerst"-Suchen.
  • Schritt 610
  • Die 9 unterschiedlichen Kandidatenwege auf dem Niveau 1, die im Schritt 604 erzeugt und durch die Niveaus 2 bis 5 (d.h. Schritt 605 bis 609) verlängert wurden, bilden 9 Kandidaten-Codevektoren Ak (vergl. 505 in 5).
  • Der Zweck des Schrittes 610 besteht darin, die 9 Kandidaten-Codevektoren Ak zu vergleichen und den besten entsprechend dem Auswahlkriterium, welches dem letzten Niveau zugeordnet ist, nämlich Qk(10) auszuwählen.
  • Es folgt ein drittes Ausführungsbeispiel für die "Tiefe-Zuerst"-Codebuchsuche, genannt "Suchverfahren Nr. 3". Hierdurch soll ein Fall illustriert werden, in dem mehr als ein Impuls dieselbe Position einnehmen können.
  • SUCHVERFAHREN Nr. 3
    Figure 00410001
  • Figure 00420001
  • Regel R5:
  • Beachte, daß zwei Impulse dieselbe Position einnehmen können; deshalb addieren sich ihre Amplituden, was einen Impuls mit doppelter Amplitude ergibt. Regel R5 bestimmt die Art, in welcher die ersten zwei Impulspositionen ausgewählt werden, um zum Satz von Wegkandidaten auf dem Niveau –1 zu kommen. Die
    Figure 00420002
    Knotenpunkte der Kandidatenwege auf dem Niveau –1 entsprechen einem Impuls mit doppelter Amplitude an jeder Position, welche Bp in den 5 unterschiedlichen "Tracks" maximiert, und allen Kombinationen von 2 Impulspositionen aus dem Pool von 10 Impulspositionen, die dadurch ausgewählt werden, daß diejenigen beiden Positionen herausgegriffen werden, welche Bp in jedem der 5 unterschiedlichen "Tracks" maximieren.
  • Regel R6: ähnlich der Regel R4
  • Oben wurden im Detail bevorzugte Ausführungsbeispiele der vorliegenden Erfindung beschrieben. Diese Ausführungs- beispiele können jedoch innerhalb des Umfanges der anlie- genden Ansprüche nach Gutdünken modifiziert werden, ohne von dem Grundgedanken der Erfindung abzuweichen. Die Erfindung ist auch nicht auf die Behandlung von Sprachsignalen beschränkt; andere Arten von Geräusch- oder Klangsignalen, beispielsweise Audiosignale, können in gleicher Weise verarbeitet werden. Derartige Modifikationen, welche das Grundprinzip beibehalten, liegen offensichtlich innerhalb des Umfanges der vorliegenden Erfindung.

Claims (24)

  1. Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, bei welchem das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Vielzahl unterschiedlicher Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, von denen jeder vorherbestimmten gültigen Positionen p des Codevektors zuordenbar ist; dadurch gekennzeichnet, daß die "Tiefe-Zuerst"-Suche Gebrauch macht von a) einer Unterteilung der N Nicht-Null-Amplituden-Impulse in eine Anzahl M von Untersätzen, von denen jeder mindestens einen Nicht-Null-Amplituden-Impuls umfaßt, und b) einer Baumstruktur (5), welche Knotenpunkte enthält, die die gültigen Positionen p der N Nicht-Null-Amplituden-Impulse darstellen, und eine Mehrzahl von Suchniveaus definieren, von denen jedes einem der M Untersätze zugeordnet ist, und wobei jedes Suchniveau außerdem einer vorgegebenen Impulsordnungsregel und einem vorgegebenen Auswahlkriterium zugeordnet ist; und wobei das "Tiefe-Zuerst"-Codebuch-Suchverfahren folgende Schritte umfaßt: – in einem ersten Suchniveau (Niveau 1) der Baumstruktur (5): Wählen von mindestens einem der N Nicht-Null-Amplituden-Impulse (i(1), i(2)) entsprechend der zugeordneten Impulsordnungsregel zur Bildung des zugeordneten Untersatzes (603, 604); Auswählen von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend dem zugeordneten Auswahlkriterium, wodurch mindestens ein Weg (501, 502) durch die Knotenpunkte der Baumstruktur (603, 604) definiert wird; – in jedem darauffolgenden Suchniveau (Niveau 2 bis Niveau 5) der Baumstruktur (5): Wählen, entsprechend der zugeordneten Impulsordnungsregel, von mindestens einem der Nicht-Null-Amplituden-Impulse (i(3) bis i(10)), die nicht zuvor schon ausgewählt wurden, zur Bildung des zugeordneten Untersatzes (605), und Auswählen von mindestens einer der gültigen Positionen p des mindestens einem Nicht-Null-Amplituden-Impulses des zugeordneten Untersatzes entsprechend dem zugeordneten Auswahlkriterium, wodurch der mindestens eine Weg (501, 502) durch die Knotenpunkte der Baumstruktur verlängert wird (Schritt 606, 607, 608 oder 609); wobei jeder Weg (501, 502), der an dem ersten Suchniveau (Niveau 1) definiert und bei den darauffolgenden Suchniveaus (Niveaus 2 bis 5) verlängert (504) wurde, die entsprechenden Positionen p der N Nicht-Null-Amplituden-Impulse eines Codevektors Ak bestimmt, der einen Kanditaten-Codevektor (505) für die Codierung des Geräusch- bzw. Klangsignales bildet.
  2. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 1, bei welchem der mindestens eine Weg (501, 502, 504) eine Mehrzahl von Wegen umfaßt und bei welchem die Suchniveaus (Niveaus 1 bis 5) der Baumstruktur (5) ein letztes Suchniveau (Niveau 5) enthalten und das Verfahren im letzten Suchniveau (Niveau 5) der Baumstruktur den Schritt umfaßt, daß, entsprechend dem zugeordneten Auswahlkriterium, einer der Kandidaten-Vektoren Ak (505) ausgewählt (610) wird, der von den Wegen definiert wird, zur Codierung des Geräusch- bzw. Klangsignales.
  3. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 1, welches außerdem den Schritt umfaßt, daß die vorherbestimmten gültigen Positionen p der N Nicht-Null-Amplituden-Impulse in Übereinstimmung mit mindestens einem verzahnten ("interleaved") Einzel-Impuls-Permutationsdesign abgeleitet werden.
  4. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 1, bei welchem der Auswahlschritt in jedem der nachfolgenden Suchniveaus (Niveau 2, 3, 4 oder 5) der Baumstruktur umfaßt: das Errechnen eines vorgegebenen mathematischen Verhältnisses für jeden Weg, der durch die Impulsposition(en) p definiert ist, der oder die in dem oder den früheren Suchniveau(s) ausgewählt wurde(n) und durch jede gültige Position p von dem mindestens einen Impuls des Untersatzes, der dem nachfolgenden Suchniveau zugeordnet ist, verlängert wurde(n); und das Beibehalten des verlängerten Weges, der durch die Impulspositionen p definiert ist, welche das vorgegebene Verhältnis maximieren.
  5. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 1, bei welchem an dem ersten Suchniveau (Niveau 1) der Baumstruktur (5) die Wähl- und Auswahlschritte in folgender Weise ausgeführt werden: Errechnen (601) eines Impulspositions-Wahrscheinlichkeitsschätzvektors B bezüglich des Geräusch- bzw. Klangsignales; und Auswahl (602; 603, 604) des mindestens einen Nicht-Null-Amplituden-Impuls des zugeordneten Untersatzes und der mindestens einen gültigen Position p hiervon entsprechend dem Impulspositions-Wahrscheinlichkeitsschätzvektor B.
  6. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 5, bei welchem der Schritt zur Errechnung des Impulspositions-Wahrscheinlichkeitsschätzvektors B folgende Schritte umfaßt: das Geräusch- bzw. Klangsignal wird so verarbeitet, daß ein Zielsignal X, ein rückwärts gefiltertes Zielsignal D und ein Höhen-("Pitch"-)entferntes Restsignal R' erzeugt werden; und der Impulspositions-Wahrscheinlichkeitsschätzvektor B wird auf mindestens eines der nachfolgenden Signale hin errechnet: Zielsignal X, rückwärts gefiltertes Zielsignal D und Höhen-entferntes Restsignal R'.
  7. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 6, bei welchem der Schritt der Errechnung des Impulspositions-Wahrscheinlichkeitsschätzvektors B auf mindestens eines der nachfolgenden Signale hin: Zielsignal X, rückwärts gefiltertes Zielsignal D und Höhen-entferntes Restsignal R', umfaßt: das Addieren des rückwärts gefiltertes Zielsignales D in normalisierter Form:
    Figure 00480001
    zu dem Höhen-entfernten Restsignal R' in normalisierter Form:
    Figure 00480002
    wodurch ein Impulspositions-Wahrscheinlichkeitsschätzvektor B der Form
    Figure 00480003
    erhalten wird, worin β eine feste Konstante ist.
  8. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 7, bei welchem β eine feste Konstante mit einem Wert zwischen 0 und 1 ist.
  9. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 8, bei welchem β eine feste Konstante ist, die den Wert 1/2 aufweist.
  10. "Tiefe-Zuerst"-Codebuch-Suchverfahren nach Anspruch 1, bei welchem die N Nicht-Null-Amplituden-Impulse entsprechende Indices aufweisen und bei welchem in jedem der nachfolgenden Suchniveaus (Niveau 2, 3, 4 oder 5) der Baumstruktur 5) der Schritt des Wählens von mindestens einem der Nicht-Null-Amplituden-Impulse, die nicht schon zuvor gewählt wurden, entsprechend der zugeordneten Impulsordnungsfunktion umfaßt: das Auslegen der Indices der zuvor nicht gewählten Impulse auf einem Kreis, und das Wählen des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend einer Folge der Indices im Uhrzeigersinn, wobei rechts von dem letzten Nicht-Null-Amplituden-Impuls begonnen wird, welcher in dem früheren Suchniveau der Baumstruktur ausgewählt wurde.
  11. Vorrichtung zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignals, bei der das Codebuch einen Satz von Codevektoren Ak umfaßt, die jeweils eine Mehrzahl unterschiedlicher Positionen p definieren und N Nicht-Null-Amplituden-Impulse umfassen, von denen jeder vorherbestimmten gültigen Positionen p des Codevektors zuordenbar ist; dadurch gekennzeichnet, daß die "Tiefe-Zuerst"-Suche Gebrauch macht von: (a) der Unterteilung der N Nicht-Null-Amplituden-Impulse in eine Anzahl M von Untersätzen, von denen jeder mindestens einen Nicht-Null-Amplituden-Impuls umfaßt, und (b) einer Baumstruktur (5), welche Knotenpunkte enthält, die die gültigen Positionen p der N Nicht-Null-Amplituden-Impulse darstellen, und eine Mehrzahl von Suchniveaus definieren, von denen jedes einem der M Untersätze zugeordnet ist- und wobei jedes Suchniveau außerdem einer vorgegebenen Iumplsordnungsregel und einem vorgegebenen Auswahlkriterium zugeordnet ist; wobei die "Tiefe-Zuerst"-Codebuch-Suchvorrichtung umfaßt: – für ein erstes Suchniveau (Niveau 1) der Baumstruktur (1): eine erste Einrichtung zum Wählen von mindestens einem der N Nicht-Null-Amplituden-Impulse (i(1), i(2)) entsprechend der zugeordneten Impulsordnungsregel zur Bildung des zugeordneten Untersatzes (603, 604); eine erste Einrichtung zur Auswahl von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend dem zugeordneten Auswahlkriterium zum Definieren von mindestens einem Weg (501, 502) durch die Knotenpunkte der Baumstruktur (603, 604); – für jedes darauffolgende Suchniveau (Niveaus 2 bis 5) der Baumstruktur (5): eine zweite Einrichtung zm Wählen von mindesten einem der Nicht-Null-Amplituden-Impulse (i(3) bis i(10)), der/die nicht zuvor schon gewählt wurde(n), entsprechend der zugeordneten Impulsordnungsregel, zur Bildung des zugeordneten Untersatzes (605); eine zweite Einrichtung zur Auswahl von mindestens einer der gültigen Positionen p des mindestens einen Nicht-Null-Amplituden-Impulses des zugeordneten Untersatzes entsprechend dem zugeordneten Auswahlkriterium, wodurch der mindestens eine Weg (501, 502) durch die Knotenpunkte der Baumstruktur (606, 607, 608 oder 609) verlängert wird, wobei jeder Weg (501, 502, 504), der in dem ersten Suchniveau (Niveau 1) definiert und bei den darauffolgenden Suchniveaus (Niveaus 2 bis 5) verlängert (504) wurde, die entsprechenden Positionen p der N Nicht-Null-Amplituden-Impulse eines Codevektors Ak bestimmt, der einen Kandidaten-Codevektor (505) zur Codierung des Geräusch- bzw. Klangsignalen bildet.
  12. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 11, dadurch gekennzeichnet, daß der mindestens eine Weg (501, 502, 504) eine Mehrzahl von Wegen umfaßt, die Suchniveaus (Niveaus 1 bis 5) der Baumstruktur (5) ein letztes Suchniveau (Niveau 5) enthalten, und die Vorrichtung eine Einrichtung umfaßt zur Auswahl (610) von mindestens einem der Kandidaten-Codevektoren Ak (505), die von diesen Wegen definiert sind, in dem letzten Suchniveau (Niveau 5) der Baumstruktur entsprechend dem zugeordneten Auswahlkriterium für die Codierung des Geräusch- bzw. Klangsignals.
  13. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 12, welche außerdem eine Einrichtung umfaßt, welche die vorherbestimmten gültigen Positionen p der N Nicht-Null-Amplituden-Impulse entsprechend mindestens einem verzahnten ("interleaved") Einfach-Impuls-Permutationsdesign ableitet.
  14. "Tiefe-zuerst"-Codebuch-Suchvorrichtung nach Anspruch 11, bei welcher die zweite Auswahleinrichtung umfaßt: eine Einrichtung, welche ein vorgegebenes mathematisches Verhältnis für jeden Weg errechnet, der durch die Impuls position(en) p, der bzw. die in dem bzw. den früheren Suchniveau(s) ausgewählt wurden(n), definiert und durch jede gültige Position p des mindestens einen Impulses des Untersatzes, welcher dem darauffolgenden Suchniveau zugeordnet ist, verlängert wurde; und eine Einrichtung, welche den verlängerten Weg, der durch die Impulspositionen p, welche das vorgegebene Verhältnis maximieren, definiert ist, beibehält.
  15. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 11, bei welcher die erste Wähleinrichtung und die erste Auswahleinrichtung umfassen: eine Einrichtung zur Errechnung (601) eines Impulspositions-Wahrscheinlichkeitsschätzvektors in Bezug auf das Geräusch- bzw. Klangsignal; und eine Einrichtung zur Auswahl (602, 603, 604) des mindestens einen Nicht-Null-Amplituden-Impulses des zugeordneten Untersatzes und der mindestens einen gültigen Position p hiervon entsprechend dem Impulspositions-Wahrscheinlichkeitsschätzvektor.
  16. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 15, bei welcher die Einrichtung zur Errechnung des Impulspositions-Wahrscheinlichkeitsschätzvektors umfaßt: eine Einrichtung zur Verarbeitung des Geräusch- bzw. Klangsignales derart, daß ein Zielsignal X, ein rückwärts gefiltertes Zielsignal D und ein Höhen-("Pitch"-)-entferntes Restsignal R' erzeugt werden; und eine Einrichtung, welche den Impulspositions-Wahrscheinlichkeitsschätzvektor B auf mindestens eines der nachfolgenden Signale hin errechnet: Zielsignal X, rückwärts gefiltertes Zielsignal D und Höhen-entferntes Restsignal R'.
  17. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 16, bei welcher die Einrichtung zur Errechnung des Impulspositions-Wahrscheinlichkeitsschätzvektors B auf mindestens eines der nachfolgenden Signale hin: Zielsignal X, rückwärts gefiltertes Signal D und Höhen-entferntes Restsignal R', umfaßt: eine Einrichtung, welche das rückwärts gefilterte Zielsignal D in normalisierter Form:
    Figure 00530001
    zu dem Höhen-entfernten Restsignal R' in normalisierter Form:
    Figure 00530002
    addiert, wodurch ein Impulspositions-Wahrscheinlichkeitsschätzvektor B der Form:
    Figure 00530003
    erhalten wird, worin β eine feste Konstante ist.
  18. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 17, bei welcher β eine feste Konstante mit einem Wert zwischen 0 und 1 ist.
  19. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 18, bei welcher β eine feste Konstante mit dem Wert 1/2 ist.
  20. "Tiefe-Zuerst"-Codebuch-Suchvorrichtung nach Anspruch 11, bei welcher die N Nicht-Null-Amplituden-Impulse entsprechende Indices aufweisen und die zweite Wähleinrichtung umfaßt: eine Einrichtung zum Auslegen der Indices der zuvor nicht gewählten Impulse auf einem Kreis; und eine Einrichtung zum Wählen des mindestens einen Nicht-Null-Amplituden-Impulses entsprechend einer im Uhrzeigersinn laufenden Folge der Indices, beginnend rechts von dem letzten Nicht-Null-Amplituden-Impuls, der in dem früheren Suchniveau der Baumstruktur ausgewählt wurde.
  21. Zellulares Kommunikationssystem (1) zur Bedienung eines großen geographischen Gebietes, welches in eine Mehrzahl von Zellen unterteilt ist, mit: mobilen Transmitter/Empfänger-Einheiten (3); zellularen Basisstationen (2), die jeweils in den Zellen angeordnet sind; Einrichtungen zur Steuerung (5) der Kommunikation zwischen den zellularen Basisstationen (2); einem bidirektionalen Funk-Kommunikations-Untersystem zwischen jeder mobilen Einheit (3), die in einer Zelle angeordnet ist, und der zellularen Basisstation (2) dieser einen Zelle, welches sowohl in der mobilen Einheit (3) als auch in der zellularen Basisstation (2) umfaßt: a) einen Sender, der eine Einrichtung zur Codierung eines Sprachsignales und eine Einrichtung zum Senden des codierten Sprachsignales enthält; und b) einen Empfänger, der eine Einrichtung zum Empfang eines gesendeten codierten Sprachsignales und eine Einrichtung zur Decodierung des empfangenen codierten Sprachsignales enthält; dadurch gekennzeichnet, daß die Codiereinrichtung für das Sprachsignal eine Vorrichtung umfaßt, welche in Abhängigkeit von dem Sprachsignal Sprachsignal-Codierungsparameter erzeugt, und die Vorrichtung zur Erzeugung von Sprachsignal-Codierungsparametern eine Vorrichtung aufweist gemäß einem der Ansprüche 11 bis 20, um eine "Tiefe-Zuerst"-Suche in einem Codebuch durchzuführen für die Codierung des Sprachsignales, welche dann das Sprachsignal darstellt.
  22. Zellulare Basisstation (2) mit a) einem Transmitter einschließlich Einrichtungen zur Codierung eines Sprachisgnals sowie Einrichtungen zur Übermittlung desselben; und b) einem Empfänger einschließlich Einrichtungen zum Empfang eines codierten Sprachsinales sowie Einrichtungen zur Decodierung desselben; dadurch gekennzeichnet, daß die Codiereinrichtungen für das Sprachsignal eine Vorrichtung umfasst, welche in Abhängigkeit von dem Sprachsignals Sprachsignal-Codierungsparameter erzeugt, und die Vorrichtung zur Erzeugung der Sprachsignal-Codierungsparameter eine Vorrichtung aufweist gemäß einem der Ansprüche 11 bis 20 zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch für die Codierung des Sprachsignals, welche dann das Sprachsignal darstellt.
  23. Zellulare mobile Transmitter/Empfängereinheit (3) mit a) einem Transmitter einschließlich Einrichtungen zur Codierung eines Sprachsignals sowie Einrichtungen zur Übermittlung desselben; und b) einem Empfänger einschließlich Einrichtungen zum Empfang eines codierten Sprachsignals sowie Einrichtungen zur Decodierung desselben; dadurch gekennzeichnet, daß die Codiereinrichtung für das Sprachsignal eine Vorrichtung umfasst, welche in Abhängigkeit von dem Sprachsignal Sprachsignal-Codierungsparameter erzeugt, und die Vorrichtung zur Erzeugung der Sprachsignal-Codierungsparameter eine Vorrichtung gemäß einem der Ansprüche 11 bis 20 aufweist zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch für die Codierung des Sprach signals, welche dann das Sprachsignal darstellt.
  24. Bidirektionales Funk-Kommunikations-Untersystem in einem zellularen Kommunikationssystem (1) zur Bedienung eines großen geographischen Gebietes, welches in eine Mehrzahl von Zellen unterteilt ist, wobei das zellulare Kommunikationssystem (1) umfaßt: mobile Transmitter/Empfänger-Einheiten (3); zellulare Basisstationen (2), die jeweils in den Zellen angeordnet sind; sowie Einrichtungen zur Steuerung (5) der Kommunikation zwischen den zellularen Basisstationen (2); wobei das bidirektionale Funk-Kommunikations-Untersystem die Kommunikation zwischen jeder mobilen Einheit (3), die in einer Zelle angeordnet ist, und der zellularen Basisstation (2) dieser einen Zelle bewirkt, und sowohl in der mobilen Einheit (3) als auch in der zellularen Basisstation (2) umfaßt a) einen Sender, der eine Einrichtung zur Codierung eines Sprachsignales und eine Einrichtung zum Senden des codierten Sprachsignales enthält; und b) einen Empfänger, der eine Einrichtung zum Empfang eines gesendeten codierten Sprachsignales und eine Einrichtung zur Decodierung des empfangenen codierten Sprachsignales enthält; dadurch gekennzeichnet, daß die Codiereinrichtung für das Sprachsignal eine Vorrichtung umfaßt, welche in Abhängigkeit von dem Sprachsignal Sprach signal-Codierungsparameter erzeugt, und die Vorrichtung zur Erzeugung von Sprachsignal-Codierungsparametern eine Vorrichtung aufweist gemäß einem der Ansprüche 11 bis 20, um eine "Tiefe-Zuerst"-Suche in einem Codebuch durchzuführen für die Codierung des Sprachsignals, welche dann das Sprachsignal darstellt.
DE19609170A 1995-03-10 1996-03-09 Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung Expired - Lifetime DE19609170B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US509525 1990-04-16
US40178595A 1995-03-10 1995-03-10
US401785 1995-03-10
US08/509,525 US5701392A (en) 1990-02-23 1995-07-31 Depth-first algebraic-codebook search for fast coding of speech

Publications (2)

Publication Number Publication Date
DE19609170A1 DE19609170A1 (de) 1996-09-19
DE19609170B4 true DE19609170B4 (de) 2004-11-11

Family

ID=27017596

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19609170A Expired - Lifetime DE19609170B4 (de) 1995-03-10 1996-03-09 Verfahren zur Durchführung einer "Tiefe-Zuerst"-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung

Country Status (24)

Country Link
US (1) US5701392A (de)
EP (1) EP0813736B1 (de)
JP (1) JP3160852B2 (de)
KR (1) KR100299408B1 (de)
CN (1) CN1114900C (de)
AR (1) AR001189A1 (de)
AT (1) ATE193392T1 (de)
AU (1) AU707307B2 (de)
BR (1) BR9607144A (de)
CA (1) CA2213740C (de)
DE (1) DE19609170B4 (de)
DK (1) DK0813736T3 (de)
ES (1) ES2112808B1 (de)
FR (1) FR2731548B1 (de)
GB (1) GB2299001B (de)
HK (1) HK1001846A1 (de)
IN (1) IN187842B (de)
IT (1) IT1285305B1 (de)
MX (1) MX9706885A (de)
MY (1) MY119252A (de)
PT (1) PT813736E (de)
RU (1) RU2175454C2 (de)
SE (1) SE520554C2 (de)
WO (1) WO1996028810A1 (de)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5701392A (en) * 1990-02-23 1997-12-23 Universite De Sherbrooke Depth-first algebraic-codebook search for fast coding of speech
JP3273455B2 (ja) * 1994-10-07 2002-04-08 日本電信電話株式会社 ベクトル量子化方法及びその復号化器
DE69516522T2 (de) * 1995-11-09 2001-03-08 Nokia Mobile Phones Ltd Verfahren zur Synthetisierung eines Sprachsignalblocks in einem CELP-Kodierer
DE19641619C1 (de) * 1996-10-09 1997-06-26 Nokia Mobile Phones Ltd Verfahren zur Synthese eines Rahmens eines Sprachsignals
KR20030096444A (ko) * 1996-11-07 2003-12-31 마쯔시다덴기산교 가부시키가이샤 음원 벡터 생성 장치 및 방법
US6161086A (en) * 1997-07-29 2000-12-12 Texas Instruments Incorporated Low-complexity speech coding with backward and inverse filtered target matching and a tree structured mutitap adaptive codebook search
DE69840008D1 (de) * 1997-10-22 2008-10-23 Matsushita Electric Ind Co Ltd Verfahren und Vorrichtung für die Erzeugung von gestreuten Vektoren
US6385576B2 (en) * 1997-12-24 2002-05-07 Kabushiki Kaisha Toshiba Speech encoding/decoding method using reduced subframe pulse positions having density related to pitch
JP3199020B2 (ja) 1998-02-27 2001-08-13 日本電気株式会社 音声音楽信号の符号化装置および復号装置
JP3180762B2 (ja) * 1998-05-11 2001-06-25 日本電気株式会社 音声符号化装置及び音声復号化装置
US6556966B1 (en) * 1998-08-24 2003-04-29 Conexant Systems, Inc. Codebook structure for changeable pulse multimode speech coding
US6714907B2 (en) * 1998-08-24 2004-03-30 Mindspeed Technologies, Inc. Codebook structure and search for speech coding
JP3824810B2 (ja) * 1998-09-01 2006-09-20 富士通株式会社 音声符号化方法、音声符号化装置、及び音声復号装置
CA2252170A1 (en) * 1998-10-27 2000-04-27 Bruno Bessette A method and device for high quality coding of wideband speech and audio signals
US6295520B1 (en) 1999-03-15 2001-09-25 Tritech Microelectronics Ltd. Multi-pulse synthesis simplification in analysis-by-synthesis coders
JP4005359B2 (ja) 1999-09-14 2007-11-07 富士通株式会社 音声符号化及び音声復号化装置
US6959274B1 (en) 1999-09-22 2005-10-25 Mindspeed Technologies, Inc. Fixed rate speech compression system and method
WO2001024166A1 (en) * 1999-09-30 2001-04-05 Stmicroelectronics Asia Pacific Pte Ltd G.723.1 audio encoder
CA2290037A1 (en) 1999-11-18 2001-05-18 Voiceage Corporation Gain-smoothing amplifier device and method in codecs for wideband speech and audio signals
KR100576024B1 (ko) * 2000-04-12 2006-05-02 삼성전자주식회사 에이켈프 음성 압축기의 코드북 검색 장치 및 방법
CA2327041A1 (en) * 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
US7206739B2 (en) * 2001-05-23 2007-04-17 Samsung Electronics Co., Ltd. Excitation codebook search method in a speech coding system
US6766289B2 (en) * 2001-06-04 2004-07-20 Qualcomm Incorporated Fast code-vector searching
CA2388439A1 (en) * 2002-05-31 2003-11-30 Voiceage Corporation A method and device for efficient frame erasure concealment in linear predictive based speech codecs
CA2392640A1 (en) * 2002-07-05 2004-01-05 Voiceage Corporation A method and device for efficient in-based dim-and-burst signaling and half-rate max operation in variable bit-rate wideband speech coding for cdma wireless systems
KR100463559B1 (ko) * 2002-11-11 2004-12-29 한국전자통신연구원 대수 코드북을 이용하는 켈프 보코더의 코드북 검색방법
KR100463418B1 (ko) * 2002-11-11 2004-12-23 한국전자통신연구원 Celp 음성 부호화기에서 사용되는 가변적인 고정코드북 검색방법 및 장치
US7698132B2 (en) * 2002-12-17 2010-04-13 Qualcomm Incorporated Sub-sampled excitation waveform codebooks
US7249014B2 (en) * 2003-03-13 2007-07-24 Intel Corporation Apparatus, methods and articles incorporating a fast algebraic codebook search technique
KR100556831B1 (ko) * 2003-03-25 2006-03-10 한국전자통신연구원 전역 펄스 교체를 통한 고정 코드북 검색 방법
WO2004090870A1 (ja) * 2003-04-04 2004-10-21 Kabushiki Kaisha Toshiba 広帯域音声を符号化または復号化するための方法及び装置
US20050256702A1 (en) * 2004-05-13 2005-11-17 Ittiam Systems (P) Ltd. Algebraic codebook search implementation on processors with multiple data paths
SG123639A1 (en) 2004-12-31 2006-07-26 St Microelectronics Asia A system and method for supporting dual speech codecs
US8000967B2 (en) 2005-03-09 2011-08-16 Telefonaktiebolaget Lm Ericsson (Publ) Low-complexity code excited linear prediction encoding
KR100813260B1 (ko) 2005-07-13 2008-03-13 삼성전자주식회사 코드북 탐색 방법 및 장치
JP5159318B2 (ja) * 2005-12-09 2013-03-06 パナソニック株式会社 固定符号帳探索装置および固定符号帳探索方法
US20070150266A1 (en) * 2005-12-22 2007-06-28 Quanta Computer Inc. Search system and method thereof for searching code-vector of speech signal in speech encoder
US8255207B2 (en) * 2005-12-28 2012-08-28 Voiceage Corporation Method and device for efficient frame erasure concealment in speech codecs
JP3981399B1 (ja) * 2006-03-10 2007-09-26 松下電器産業株式会社 固定符号帳探索装置および固定符号帳探索方法
US20080120098A1 (en) * 2006-11-21 2008-05-22 Nokia Corporation Complexity Adjustment for a Signal Encoder
US20080147385A1 (en) * 2006-12-15 2008-06-19 Nokia Corporation Memory-efficient method for high-quality codebook based voice conversion
MX2009009229A (es) * 2007-03-02 2009-09-08 Panasonic Corp Dispositivo de codificacion y metodo de codificacion.
CN100530357C (zh) * 2007-07-11 2009-08-19 华为技术有限公司 固定码书搜索方法及搜索器
RU2458413C2 (ru) * 2007-07-27 2012-08-10 Панасоник Корпорэйшн Устройство кодирования аудио и способ кодирования аудио
BRPI0814129A2 (pt) * 2007-07-27 2015-02-03 Panasonic Corp Dispositivo de codificação de áudio e método de codificação de áudio
CN101842833B (zh) * 2007-09-11 2012-07-18 沃伊斯亚吉公司 语音和音频编码中快速代数码本搜索的方法和设备
CN100578619C (zh) * 2007-11-05 2010-01-06 华为技术有限公司 编码方法和编码器
CN101931414B (zh) * 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
ES2686889T3 (es) * 2009-12-14 2018-10-22 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Dispositivo de cuantificación vectorial, dispositivo de codificación de voz, procedimiento de cuantificación vectorial y procedimiento de codificación de voz
CN103250206B (zh) * 2010-10-07 2015-07-15 弗朗霍夫应用科学研究促进协会 用于比特流域中的编码音频帧的强度估计的装置及方法
CN102623012B (zh) * 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
US11256696B2 (en) * 2018-10-15 2022-02-22 Ocient Holdings LLC Data set compression within a database system
CN110247714B (zh) * 2019-05-16 2021-06-04 天津大学 集伪装与加密于一体的仿生隐蔽水声通信编码方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0138061A1 (de) * 1983-09-29 1985-04-24 Siemens Aktiengesellschaft Verfahren zur Bestimmung von Sprachspektren für die automatische Spracherkennung und Sprachcodierung
WO1991013432A1 (en) * 1990-02-23 1991-09-05 Universite De Sherbrooke Dynamic codebook for efficient speech coding based on algebraic codes
EP0446817A2 (de) * 1990-03-15 1991-09-18 Gte Laboratories Incorporated Methode zur Verminderung der Schwierigkeit der Suchen in Analyse-durch-Synthese-Kodierung
US5701392A (en) * 1990-02-23 1997-12-23 Universite De Sherbrooke Depth-first algebraic-codebook search for fast coding of speech

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4401855A (en) * 1980-11-28 1983-08-30 The Regents Of The University Of California Apparatus for the linear predictive coding of human speech
CA1164569A (en) * 1981-03-17 1984-03-27 Katsunobu Fushikida System for extraction of pole/zero parameter values
EP0107659A4 (de) * 1982-04-29 1985-02-18 Massachusetts Inst Technology Sprachcodierer und synthetisator.
US4625286A (en) * 1982-05-03 1986-11-25 Texas Instruments Incorporated Time encoding of LPC roots
US4520499A (en) * 1982-06-25 1985-05-28 Milton Bradley Company Combination speech synthesis and recognition apparatus
JPS5922165A (ja) * 1982-07-28 1984-02-04 Nippon Telegr & Teleph Corp <Ntt> アドレス制御回路
EP0111612B1 (de) * 1982-11-26 1987-06-24 International Business Machines Corporation Verfahren und Einrichtung zur Kodierung eines Sprachsignals
US4764963A (en) * 1983-04-12 1988-08-16 American Telephone And Telegraph Company, At&T Bell Laboratories Speech pattern compression arrangement utilizing speech event identification
US4669120A (en) * 1983-07-08 1987-05-26 Nec Corporation Low bit-rate speech coding with decision of a location of each exciting pulse of a train concurrently with optimum amplitudes of pulses
US4799261A (en) * 1983-11-03 1989-01-17 Texas Instruments Incorporated Low data rate speech encoding employing syllable duration patterns
CA1236922A (en) * 1983-11-30 1988-05-17 Paul Mermelstein Method and apparatus for coding digital signals
CA1223365A (en) * 1984-02-02 1987-06-23 Shigeru Ono Method and apparatus for speech coding
CA1226946A (en) * 1984-04-17 1987-09-15 Shigeru Ono Low bit-rate pattern coding with recursive orthogonal decision of parameters
US4680797A (en) * 1984-06-26 1987-07-14 The United States Of America As Represented By The Secretary Of The Air Force Secure digital speech communication
US4742550A (en) * 1984-09-17 1988-05-03 Motorola, Inc. 4800 BPS interoperable relp system
CA1252568A (en) * 1984-12-24 1989-04-11 Kazunori Ozawa Low bit-rate pattern encoding and decoding capable of reducing an information transmission rate
US4858115A (en) * 1985-07-31 1989-08-15 Unisys Corporation Loop control mechanism for scientific processor
IT1184023B (it) * 1985-12-17 1987-10-22 Cselt Centro Studi Lab Telecom Procedimento e dispositivo per la codifica e decodifica del segnale vocale mediante analisi a sottobande e quantizzazione vettorariale con allocazione dinamica dei bit di codifica
US4720861A (en) * 1985-12-24 1988-01-19 Itt Defense Communications A Division Of Itt Corporation Digital speech coding circuit
US4797926A (en) * 1986-09-11 1989-01-10 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech vocoder
US4771465A (en) * 1986-09-11 1988-09-13 American Telephone And Telegraph Company, At&T Bell Laboratories Digital speech sinusoidal vocoder with transmission of only subset of harmonics
US4873723A (en) * 1986-09-18 1989-10-10 Nec Corporation Method and apparatus for multi-pulse speech coding
US4797925A (en) * 1986-09-26 1989-01-10 Bell Communications Research, Inc. Method for coding speech at low bit rates
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
US4868867A (en) * 1987-04-06 1989-09-19 Voicecraft Inc. Vector excitation speech or audio coder for transmission or storage
CA1337217C (en) * 1987-08-28 1995-10-03 Daniel Kenneth Freeman Speech coding
US4815134A (en) * 1987-09-08 1989-03-21 Texas Instruments Incorporated Very low rate speech encoder and decoder
IL84902A (en) * 1987-12-21 1991-12-15 D S P Group Israel Ltd Digital autocorrelation system for detecting speech in noisy audio signal
US4817157A (en) * 1988-01-07 1989-03-28 Motorola, Inc. Digital speech coder having improved vector excitation source
DE68922134T2 (de) * 1988-05-20 1995-11-30 Nec Corp Überträgungssystem für codierte Sprache mit Codebüchern zur Synthetisierung von Komponenten mit niedriger Amplitude.
US5008965A (en) * 1988-07-11 1991-04-23 Kinetic Concepts, Inc. Fluidized bead bed
KR920701438A (ko) * 1989-04-04 1992-08-11 원본미기재 재조합 트리코산틴 및 코딩 서열
SE463691B (sv) * 1989-05-11 1991-01-07 Ericsson Telefon Ab L M Foerfarande att utplacera excitationspulser foer en lineaerprediktiv kodare (lpc) som arbetar enligt multipulsprincipen
US5097508A (en) * 1989-08-31 1992-03-17 Codex Corporation Digital speech coder having improved long term lag parameter determination
US5307441A (en) * 1989-11-29 1994-04-26 Comsat Corporation Wear-toll quality 4.8 kbps speech codec
US5293449A (en) * 1990-11-23 1994-03-08 Comsat Corporation Analysis-by-synthesis 2,4 kbps linear predictive speech codec
US5396576A (en) * 1991-05-22 1995-03-07 Nippon Telegraph And Telephone Corporation Speech coding and decoding methods using adaptive and random code books
US5233660A (en) * 1991-09-10 1993-08-03 At&T Bell Laboratories Method and apparatus for low-delay celp speech coding and decoding
JP3089769B2 (ja) * 1991-12-03 2000-09-18 日本電気株式会社 音声符号化装置
US5457783A (en) * 1992-08-07 1995-10-10 Pacific Communication Sciences, Inc. Adaptive speech coder having code excited linear prediction
US5667340A (en) * 1995-09-05 1997-09-16 Sandoz Ltd. Cementitious composition for underwater use and a method for placing the composition underwater

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0138061A1 (de) * 1983-09-29 1985-04-24 Siemens Aktiengesellschaft Verfahren zur Bestimmung von Sprachspektren für die automatische Spracherkennung und Sprachcodierung
WO1991013432A1 (en) * 1990-02-23 1991-09-05 Universite De Sherbrooke Dynamic codebook for efficient speech coding based on algebraic codes
US5444816A (en) * 1990-02-23 1995-08-22 Universite De Sherbrooke Dynamic codebook for efficient speech coding based on algebraic codes
US5701392A (en) * 1990-02-23 1997-12-23 Universite De Sherbrooke Depth-first algebraic-codebook search for fast coding of speech
EP0446817A2 (de) * 1990-03-15 1991-09-18 Gte Laboratories Incorporated Methode zur Verminderung der Schwierigkeit der Suchen in Analyse-durch-Synthese-Kodierung

Also Published As

Publication number Publication date
MY119252A (en) 2005-04-30
GB2299001A (en) 1996-09-18
DE19609170A1 (de) 1996-09-19
ES2112808A1 (es) 1998-04-01
CN1114900C (zh) 2003-07-16
AR001189A1 (es) 1997-09-24
EP0813736B1 (de) 2000-05-24
CA2213740C (en) 2003-01-21
ITTO960174A0 (de) 1996-03-08
CN1181151A (zh) 1998-05-06
ITTO960174A1 (it) 1997-09-08
CA2213740A1 (en) 1996-09-19
JP3160852B2 (ja) 2001-04-25
IN187842B (de) 2002-07-06
WO1996028810A1 (en) 1996-09-19
AU4781196A (en) 1996-10-02
EP0813736A1 (de) 1997-12-29
GB9605123D0 (en) 1996-05-08
KR19980702890A (ko) 1998-08-05
BR9607144A (pt) 1997-11-25
US5701392A (en) 1997-12-23
SE9600918D0 (sv) 1996-03-08
ES2112808B1 (es) 1998-11-16
SE520554C2 (sv) 2003-07-22
ATE193392T1 (de) 2000-06-15
DK0813736T3 (da) 2000-10-30
RU2175454C2 (ru) 2001-10-27
HK1001846A1 (en) 1998-07-10
GB2299001B (en) 1997-08-06
FR2731548A1 (fr) 1996-09-13
JPH11501131A (ja) 1999-01-26
AU707307B2 (en) 1999-07-08
IT1285305B1 (it) 1998-06-03
FR2731548B1 (fr) 1998-11-06
PT813736E (pt) 2000-11-30
SE9600918L (sv) 1996-09-11
MX9706885A (es) 1998-03-31
KR100299408B1 (ko) 2001-11-05

Similar Documents

Publication Publication Date Title
DE19609170B4 (de) Verfahren zur Durchführung einer &#34;Tiefe-Zuerst&#34;-Suche in einem Codebuch zur Codierung eines Geräusch- bzw. Klangsignales, Vorrichtung zur Durchführung dieses Verfahrens sowie zellulares Kommunikationssystem mit einer derartigen Vorrichtung
DE19604273C5 (de) Verfahren und Vorrichtung zum Durchführen einer Suche in einem Kodebuch im Hinblick auf das Kodieren eines Klangsignales, Zellkommunikationssystem, Zellnetzwerkelement und mobile Zell-Sender-/Empfänger-Einheit
DE69814517T2 (de) Sprachkodierung
DE69836624T2 (de) Audiokodierer und -dekodierer
DE69932460T2 (de) Sprachkodierer/dekodierer
DE69910239T2 (de) Verfahren und vorrichtung zur adaptiven bandbreitenabhängigen grundfrequenzsuche für die kodierung breitbandiger signale
DE19647298C2 (de) Kodiersystem
DE60215807T2 (de) Verfahren zur decodierung einer sequenz von codeworten variabler länge
DE60121405T2 (de) Transkodierer zur Vermeidung einer Kaskadenkodierung von Sprachsignalen
DE60120766T2 (de) Indizieren von impulspositionen und vorzeichen in algebraischen codebüchern zur codierung von breitbandsignalen
DE60029990T2 (de) Glättung des verstärkungsfaktors in breitbandsprach- und audio-signal dekodierer
DE69633944T2 (de) Verfahren und gerät zum kodieren von digitalen daten
DE60021083T2 (de) Verfahren zur verbesserung der kodierungseffizienz eines audiosignals
DE69731588T2 (de) Coderienrichtung mit verringerter komplexität für ein signalübertragungssystem
DE69033510T3 (de) Numerischer sprachcodierer mit verbesserter langzeitvorhersage durch subabtastauflösung
DE4491015C2 (de) Verfahren zum Erzeugen eines Spektralrauschbewertungsfilters zur Verwendung in einem Sprachcoder
DE69827313T2 (de) Verfahren zur Kodierung des Zufallskomponenten-Vektors in einem ACELP-Kodierer
EP1080464A1 (de) Verfahren und anordnung zur sprachcodierung
DE60016305T2 (de) Verfahren zum Betrieb eines Sprachkodierers
DE69732746T2 (de) Signalübertragungssystem mit verringerter komplexität
DE69827545T2 (de) Vorrichtung zur Erzeugung von Hintergrundrauschen
DE69830816T2 (de) Mehrstufige Audiodekodierung
DE60030069T2 (de) Verschleierungsverfahren bei Verlust von Sprachrahmen
DE60304520T2 (de) Kodier-/Dekodiervorrichtung und -verfahren
EP0697125B1 (de) Verfahren zur vektorquantisierung, insbesondere von sprachsignalen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R071 Expiry of right