DE69118465T2 - Einrichtung und Verfahren zur Datenkomprimierung durch Quantisierung von in einem Binärbaum gesuchten Vektoren - Google Patents
Einrichtung und Verfahren zur Datenkomprimierung durch Quantisierung von in einem Binärbaum gesuchten VektorenInfo
- Publication number
- DE69118465T2 DE69118465T2 DE69118465T DE69118465T DE69118465T2 DE 69118465 T2 DE69118465 T2 DE 69118465T2 DE 69118465 T DE69118465 T DE 69118465T DE 69118465 T DE69118465 T DE 69118465T DE 69118465 T2 DE69118465 T2 DE 69118465T2
- Authority
- DE
- Germany
- Prior art keywords
- vector
- vectors
- tree
- input
- memory
- 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
Links
- 239000013598 vector Substances 0.000 title claims description 164
- 238000000034 method Methods 0.000 title claims description 17
- 238000013139 quantization Methods 0.000 title claims description 13
- 238000013144 data compression Methods 0.000 title claims description 11
- 238000004364 calculation method Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 6
- 238000012549 training Methods 0.000 description 7
- 238000009825 accumulation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3082—Vector coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/008—Vector quantisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/94—Vector quantisation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Description
- Diese Erfindung betrifft eine Vorrichtung und ein Verfahren zur Datenkomprimierungsverarbeitung durch Quantisierung von in einem Binärbaum gesuchten Vektoren (TSVQ).
- Vektorquantisierung (VQ) ist eine Technik zur Datenkomprimierung (Codierung). Quantisierung von in einem Binärbaum gesuchten Vektoren (TSVQ) ist eine besondere Form von VQ, in welcher jeder Eingangsvektor mit zwei Vektoren in einem Codebuch verglichen wird, um die Richtung einer Verzweigung an jedem Verzweigungspunkt oder Knoten des Baumes zu bestimmen (IEEE Transactions on Communications, Vol. 30, Nr. 2, Seiten 381-389).
- Vektorquantisierung (VQ) ist eine bekannte herkömmliche Datenkomprimierungstechnik. Diese wird nun unter Bezugnahme auf die begleitenden Zeichnungen beschrieben, in welchen:
- Figur 1 ein Blockdiagramm der Grundstruktur eines herkömmlichen Vollsuche-Vektorquantisierers ist, und
- Figur 2 ein Diagramm ist, welches einen herkömmlichen Quantisierer von in einem Binärbaum gesuchten Vektoren veranschaulicht.
- Wie in Fig. 1 gezeigt ist, wird eine Anzahl von Bildproben zuerst gruppiert, um einen Eingangsvektor Xn zu bilden. Ein VQ-Codierer 1 vergleicht dann diesen Vektor Xn mit Einträgen in einem Codebuch-Speicher 2, der sowohl für den Codierer 1 als auch einen Decodierer 3 zur Verfügung steht. Das Codebuch 2 wird durchsucht, um die größte Übereinstimmung mit dem Eingangsvektor zu finden. Der Index des Vektors Un größter Übereinstimmung wird zum Decodierer 3 übertragen (siehe Fig. 1), um einen rekonstruierten Vektor Zn zu erzeugen. Der Decodierer 3 schlägt einfach den Vektor größter Übereinstimmung im Codebuch 2 unter Verwendung des übertragenen Index Un nach. Dieses Verfahren von Vektorquantisierung ist als Vollsuche-VQ bekannt. Für eine Komprimierung von B Bits pro Probe und N Proben im Vektor ist ein Codebuch von 2BN Vektoren erforderlich. Eine Vollsuche-VQ erfordert 2BN Vektorvergleiche.
- Vektorcodebücher können erzeugt werden, indem ein Anfangscodebuch erzeugt und dann dessen Leistung bei einer Trainingssequenz von Daten optimiert wird, die den Typ von Daten repräsentieren, auf welchen der Vektorguantisierer verwendet werden soll.
- Alternativ kann das Codebuch erzeugt werden, indem zuerst der Schwerpunkt der Trainingssequenz gefunden wird. Der Schwerpunkt ist effektiv ein einzelner Vektor, der die gesamte Trainingssequenz optimal repräsentiert. Dieser Vektor wird in zwei Teile geteilt, indem eine kleine Störung aufgebracht wird, um den zweiten Vektor zu erzeugen. Diese zwei Vektoren werden optimiert unter Verwendung der vollen Trainingssequenz, was zwei Codevektoren ergibt, welche die Trainingssequenz optimal beschreiben. Jeder dieser Codevektoren wird geteilt, um eine Gesamtheit von vier Codevektoren zu erzeugen, die wieder unter Verwendung der Trainingssequenz optimiert werden. Der Prozeß der Codevektor-Teilung und -Optimierung wird wiederholt, bis ein Codebuch der erforderlichen Größe erzeugt worden ist. Dieses Verfahren von Codebucherzeugung ist als die Teilungstechnik bekannt.
- Verschiedene Modifizierungen der Grund-VQ-Technik sind möglich, welche die Berechnungs- und/oder Speichererfordernisse der Vollsuche-Technik verbessern.
- Eine davon ist die Quantisierung von in einem Binärbaum gesuchten Vektoren (TSVQ). TSVQ entsteht auf natürliche Weise aus dem Teilungsverfahren der Codebucherzeugung. Herkömmlicherweise wird ein Probevektor mit zwei Codebuch-Vektoren verglichen (jenen, die nach dem Teilen und Optimieren des anfänglichen Trainingsseguenzschwerpunkts erzeugt wurden). In Abhängigkeit von dem Ausgang wird einer von zwei Zweigen des Codierbaumes genommen (siehe Fig. 2). Der Probevektor wird dann mit einem weiteren Paar von Codebuch-Vektoren am nächsten Verzweigungspunkt des Baumes verglichen. Diese Codevektoren sind jene, die im zweiten Niveau der Codebuch- Erzeugung erzeugt wurden. Wieder wird einer von zwei Zweigen des Codierbaumes genommen. Dieser Prozeß dauert an, bis das unterste Niveau des Baumes erreicht ist, wo der Codevektorindex übertragen wird.
- Baumsuche-VQ ist effektiver als Vollsuche-VQ. Sie erfordert weniger Vektorvergleiche, das heißt BN Vektorvergleiche im Vergleich zu 2BN für das Vollsuche-Verfahren. Jedoch ist die Baumsuche-VQ nicht optimal und kann lediglich auf geeignet strukturierte Codebücher angewendet werden. Zusätzlich erfordert die herkömmliche Quantisierung von in einem Baum gesuchten Vektoren nach wie vor einen relativ großen Umfang an Verarbeitungsleistung, etwa sechs Vergleichsoperationen an jeder Verzweigungspunktstufe. Baumsuche-VQ erfordert außerdem einen größeren Vektorcodebuch-Speicher als herkömmliche Vollsuche-VQ.
- Es besteht somit ein Bedarf für ein allgemein verbessertes Verfahren und eine allgemein verbesserte Anordnung zur Datenkomprimierungsverarbeitung durch Quantisierung von in einem Binärbaum gesuchten Vektoren, die vorzugsweise weniger Verarbeitungsleistung und/oder weniger Speicherkapazität als herkömmliche Techniken zur Quantisierung von in einem Binärbaum gesuchten Vektoren erfordert.
- Gemäß der vorliegenden Erfindung wird eine Datenkomprimierungsverarbeitung durch Quantisierung von in einem Binärbaum gesuchten Vektoren geschaffen, wie im angefügten Anspruch 1 definiert ist.
- Vorzugsweise ist das Vergleichsmittel eine Berechnungseinheit, die betreibbar ist, das innere Produkt eines Quellenvektors mit dem Codevektor an einem besonderen Verzweigungspunkt zum zugeordneten skalaren Wert für diesen Verzweigungspunkt zu addieren und dann das Resultat zu testen, wobei der eine Zweig des Baumes genommen wird, wenn das Resultat negativ ist, und der andere Zweig des Baumes, wenn es positiv oder null ist.
- Alternativ ist das Vergleichsmittel eine Berechnungseinheit, die betreibbar ist, den skalaren Wert eines besonderen Verzweigungspunktes zum inneren Produkt eines Quellenvektors mit dem Codevektor für diesen Verzweigungspunkt zu addieren und dann das Resultat zu testen, wobei der eine Zweig des Baumes genommen wird, wenn das Resultat negativ ist, und der andere Zweig des Baumes, wenn es positiv oder null ist.
- Als eine weitere Alternative ist das Vergleichsmittel eine Berechnungseinheit, die betreibbar ist, das innere Produkt eines Quellenvektors mit dem Codevektor an einem besonderen Verzweigungspunkt zu berechnen und dann das Resultat mit dem skalaren Wert für diesen Verzweigungspunkt zu vergleichen, wobei der eine Zweig des Baumes genommen wird, wenn der skalare Wert größer als das innere Produkt ist, und der andere Zweig des Baumes, wenn der skalare Wert gleich oder kleiner als das innere Produkt ist.
- Geeigneterweise ist die Berechnungseinheit eine einzelne Multiplizierer-Akkumulator-Einheit.
- Alternativ ist die Berechnungseinneit eine Vielzahl von Multiplizierer-Akkumulator-Einheiten.
- Vorteilhafterweise ist die Berechnungseinheit ein systolischer Feldprozessor oder ein Wellenfrontfeldprozessor.
- Vorzugsweise ist der Vektorspeicher ein verschachtelter Speicher, der so betreibbar ist, daß ein neuer Eingangsvektor geladen werden kann, während der vorherige Eingangsvektor verarbeitet wird.
- Geeigneterweise ist der Vektorcodebuch-Speicher ein Direktzugriffsspeicher (RAM) oder ein Nur-Lese-Speicher (ROM).
- Vorteilhafterweise umfaßt die Anordnung einen Probenzähler, der auf die Eingangsproben im Vektorspeicher und auf die Elemente des Codevektors im Vektorcodebuch-Speicher zugreift.
- Vorteilhafterweise umfaßt die Anordnung einen Probenzähler, der auf die Eingangsproben im Vektorspeicher und auf Elemente des Codevektors im Vektorcodebuch-Speicher zugreift.
- Vorzugsweise umfaßt die Anordnung einen Niveauzähler, der betreibbar ist, auf die relevanten Bereiche des Vektorcodebuch-Speichers zuzugreifen, die den unterschiedlichen Niveaus der Quantisierung von in einem Baum gesuchten Vektoren entsprechen.
- Geeigneterweise umfaßt die Anordnung ein Codeindexregister, das betreibbar ist, einen gegenwärtigen Wert eines Codeindex zu halten, wenn er durch das Mittel zum Vergleichen von Eingangsvektoren und Codebuchvektoren berechnet wird, und direkt auf geeignete Codevektoren im Codebuch-Speicher zuzugreifen.
- Die Anordnung kann auch einen Systemcontroller zum Leiten des Betriebs der Anordnung umfassen.
- Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein Verfahren zur Datenkomprimierungsverarbeitung unter Verwendung von Quantisierung von in einem Binärbaum gesuchten Vektoren geschaffen, in welchem die Richtung einer Verzweigung an jedem Verzweigungspunkt des Baumes durch Vergleich eines Eingangsvektors mit einem einzelnen Codevektor und einem zugeordneten skalaren Wert bestimmt wird.
- Für ein besseres Verständnis der vorliegenden Erfindung, und um zu zeigen, wie dieselbe wirksam ausgeführt werden kann, wird nun beispielhaft auf die begleitenden Zeichnungen Bezug genommen, in welchen:
- Figur 3 ein Blockdiagramm einer Datenkomprimierungsverarbeitungs-Anordnung zur Quantisierung von in einem Binärbaum gesuchten Vektoren gemäß einer ersten Ausführungsform der vorliegenden Erfindung ist.
- Unter Bezugnahme auf die begleitenden Zeichnungen wird ein herkömmlicher Quantisierer von in einem Baum gesuchten Vektoren betrachtet, der N Proben pro Vektor und eine Codebuch- Größe von 2BN aufweist, wobei B die Anzahl von Bits pro Probe ist. Es sind BN Stufen für den entsprechenden Quantisierer von in einem Baum gesuchten Vektoren erforderlich. An jeder Stufe muß der Eingangsvektor mit den möglichen Codevektoren verglichen werden, um zu bestimmen, welchem Zweig des Baumes beim Ableiten des endgültigen Codevektorindex zu folgen ist. So ist eine Gesamtheit von 2. BN Vektorvergleichen erforderlich.
- Ein Vektorvergleich ist normalerweise eine Summe von Quadraten von Differenzen, gegeben durch
- wobei c(n) ein Codebuchvektor und s(n) der Eingangsvektor ist. Bei jeder Stufe besteht das Problem darin, zu bestimmen, welcher von zwei Codevektoren die größte Übereinstimmung mit dem Eingangsvektor aufweist. Wenn c&sub1;(n) der eine Codevektor und c&sub2;(n) der andere ist, dann ist c&sub1;(n) der gewählte Vektor, falls
- Um die Beziehung (2) direkt auszuwerten, sind 2N Subtraktionen, 2N Multiplikationen, 2(N-1) Additionen und ein Vergleich erforderlich. Eine Gesamtheit von näherungsweise 6N Operationen pro Vektor pro Stufe der TSVQ. Das ist äquivalent zu 6BN Operationen pro Probe für die gesamte TSVQ.
- Umordnen von Beziehung (2) erzeugt
- die entwickelt werden kann zu und
- Nun
- Wobei A eine Konstante (skalarer Wert) für irgendein gegebenes Paar von Codevektoren ist, d.h. irgendein Verzweigungspunkt der TSVQ. Außerdem kann die Codevektor-Differenz c&sub2;(n) - c&sub1;(n) ersetzt werden durch einen anderen Vektor
- b(n) = 2[c&sub2;(n) - c&sub1;(n)] (7)
- Einsetzen der Beziehungen (6) und (7) in Beziehung (5) erzeugt den Vergleich
- Die Datenkomprimierungsverarbeitungs-Anordnung zur Quantisierung von in einem Binärbaum gesuchten Vektoren der vorliegenden Erfindung, auf die allgemein bei 4 in Figur 3 der begleitenden Zeichnungen verwiesen wird, ist im Grunde ein Codierer mit einem Vektorspeicher 5 zum Empfangen und Speichern von Eingangsproben 6, die einen Eingangsvektor bilden, einem Vektorcodebuch-Speicher 7 (vorzugsweise ein Direktzugriffsspeicher) zum Halten von Einträgen jeweils in der Form eines einzelnen Codevektors B(n) und eines zugeordneten skalaren Wertes A, und Mitteln zum Vergleichen des Eingangsvektors mit dem einzelnen Codevektor B(n) und dem skalaren Wert A, um die Richtung einer Verzweigung an jedem Verzweigungspunkt des Baumes zu bestimmen.
- Somit sind in dem Codierer oder der Anordnung 4 zur Quantisierung von in einem Baum gesuchten Vektoren (TSVQ) die zwei herkömmlichen Codevektoren (c&sub1;(n) und c&sub2;(n)) an jedem Verzweigungspunkt ersetzt durch einen Codevektor (z.B. B(n) = 2[c&sub2;(n) - c&sub1;(n)]) und einen skalaren Wert (z.B.
- Dies bedeutet, daß mit dem Verfahren der Erfindung die Richtung einer Verzweigung an jedem Verzweigungspunkt des Baumes durch Vergleich eines Eingangsvektors mit einem einzelnen Codevektor und einem zugeordneten skalaren Wert bestimmt wird.
- Das Vergleichsmittel ist vorzugsweise eine Berechnungseinheit, die betreibbar ist, das innere Produkt (auch bekannt als das Punktprodukt) eines Quellenvektors mit dem Codebuchvektor B(n) an einem besonderen Verzweigungspunkt zum skalaren Wert für diesen Verzweigungspunkt zu addieren (d.h.
- und dann das Resultat zu testen, wobei der eine Zweig des Baumes genommen wird (wie in Figur 2), wenn das Resultat negativ ist, und der andere Zweig des Baumes, wenn es positiv oder null ist.
- Das innere Produkt ist gegeben durch die Summe von Produkten
- snBn = s&sub1; b&sub1; + s&sub2; b&sub2; + ---- + sn bn wobei s&sub1;, s&sub2;, --, sn die Proben des Vektors S und b&sub1;, b&sub2;, --, bn die Proben des Vektors B sind.
- Alternativ kann das Vergleichsmittel eine Berechnungseinheit sein, die betreibbar ist, den skalaren Wert eines besonderen Verzweigungspunktes zum inneren Produkt eines Quellenvektors mit dem Codevektor B(n) für diesen Verzweigungspunkt zu addieren (d.h.
- und dann das Resultat zu testen, wobei der eine Zweig des Baumes genommen wird, wenn das Resultat negativ ist, und der andere Zweig des Baumes, wenn es positiv oder null ist.
- In noch einer weiteren Alternative ist das Vergleichsmittel eine Berechnungseinheit, die betreibbar ist, das innere Produkt des Quellenvektors mit dem Codebuchvektor B(n) an einem besonderen Verzweigungspunkt zu berechnen, (d.h.
- und dann das Resultat mit dem skalaren Wert A für diesen Verzweigungspunkt zu vergleichen, wobei der eine Zweig des Baumes genommen wird, wenn A größer als das innere Produkt ist, und der andere Zweig des Baumes, wenn es gleich oder kleiner als das innere Produkt ist.
- Die Berechnungseinheit ist vorzugsweise eine einzelne Multiplizierer-Akkumulator-Einheit, die allgemein bei 8 angedeutet ist.
- Alternativ kann die Berechnungseinheit eine Vielzahl von der artigen Multiplizierer-Akkumulator-Einheiten 8, ein systolischer Feldprozessor oder ein Wellenfrontfeldprozessor sein.
- Mit der Anordnung 1 der Erfindung kann der Vergleich
- erzielt werden unter Verwendung der Multiplizierer-Akkumulator-Einheit-8-Struktur mit einem Multiplizierer 8a und einem Akkumulator, der einen Addierer 8b, eine Auswahleinrichtung 8c und ein Register 8d umfaßt, indem zuerst das Akkumulatorregister 8d mit A vor-geladen und dann in dieses die Summe von s(n).B(n) über alle N Proben des Vektors, das heißt das innere Produkt des Quellenvektors S(n) und des Codebuchvektors B(n), akkumuliert wird. Das Vorzeichen-Bit des Akkumulators wird dann getestet, um festzustellen, ob das Resultat negativ (< 0) ist, wobei in diesem Fall der TSVQ-Zweig entsprechend dem Codevektor c&sub1;(n) gewählt wird.
- Jeder Knoten der TSVQ erfordert nun N Multiplikationen und N Additionen, d.h. 2N Operationen - ein Drittel der 6N Operationen, die für die direkte TSVQ-Implementierung erforderlich sind. Dies entspricht N Mehrfach-Akkumulierungsoperationen pro Vektor, was äquivalent zu BN Mehrfach-Akkumulierungs- Operationen pro Probe ist. Es sollte auch bemerkt werden, daß der Speicherraum oder Speicher 7, der für das Codebuch erforderlich ist, reduziert worden ist.
- Mit der Anordnung 1 werden die einen Vektor bildenden Eingangsproben 6 im Vektorspeicher 5 angeordnet. Der Vektorspeicher 5 kann ein verschachtelter Speicher sein, so daß ein neuer Vektor geladen werden kann, während der vorherige Vektor verarbeitet wird. Das Vektorcodebuch-Glied 7 ist vorzugsweise ein RAM, kann jedoch ein Nur-Lese-Speicher (ROM) sein. Jeder Eintrag im Codebuch umfaßt die skalare Konstante A und den Vektor B(n).
- Auf die Elemente des Vektors B(n) wird durch einen Probenzähler 9 zugegriffen, der auch auf die Proben im Vektorspeicher 5 zugreift. Ein Niveauzähler 10 wird verwendet, um auf die relevanten Bereiche des Codebuches zuzugreifen, die den unterschiedlichen Niveaus der TSVQ entsprechen, und ein Codeindexregister 11 wird verwendet, um den gegenwärtigen Wert des Codeindex (wenn er durch die TSVQ berechnet wird) zu halten, welches auch zum direkten Zugreifen auf die geeigneten Codevektoren im Codebuch verwendet wird.
- Alternativ können der Niveauzähler und das Codeindexregister als ein Adressengenerator kombiniert sein.
- Der Multiplizierer-Akkumulator weist eine Vor-Ladung über die Auswahleinrichtung 8c auf. Ein Systemcontroller 12 bildet den verbleibenden Teil des TSVQ-Verarbeitungselementes.
- Der Systemcontroller 12 leitet den Betrieb der Anordnung 1. Sobald ein neuer Vektor in den Vektorspeicher 5 geladen worden ist, werden das Codeindexregister 11, der Probenzähler 9 und der Niveauzähler 10 zurückgesetzt, so daß der Wurzel-Vektor des Codebuches adressiert wird. Der entsprechende konstante A-Wert wird in das Akkumulatorregister 8d geladen. Dann greift der Probenzähler 9 auf jede Vektorprobe und jedes Codebuchvektorelement B(n) der Reihe nach zu. Diese werden vom Multiplizierer 8a miteinander multipliziert und durch die Akkumulatorkomponenten 8b, 8c und 8d akkumuliert. Wenn die letzte Probe des Vektors erreicht ist, wird das Vorzeichen-Bit 14 des Akkumulatorregisters 8d durch den Systemcontroller 12 überprüft, und das Codeindexregister 11 wird demgemäß eingestellt. Der Stichprobenzähler 9 wird zurückgesetzt, der Niveauzähler 10 wird inkrementiert, und der ganze Vektor-Mehrfach-Akkumulierungsbetrieb wird wiederholt, und zwar dieses Mal für den ausgewählten zweiten Niveau-Verzweigungspunkt. Der Betrieb wird auf diese Weise fortgesetzt, bis alle Niveaus der TSVQ durchlaufen worden sind. Der Codeindexausgang 13 wird dann aus dem Codeindexregister 11 ausgelesen, und der nächste Probenvektor 6 wird verarbeitet.
- Der Systemcontroller 12 umfaßt Vorrichtungen zur Vorzeichen- Bit-14-, Multiplizierer/Akkumulator-Steuerung 15, Vektorspeichersteuerung 16, Probenzählersteuerung 17, Niveauzählersteuerung 18 und Codeindexsteuerung 19.
Claims (15)
1. Eine Vorrichtung zur Datenkomprimierungsverarbeitung
durch Quantisierung von in einem Binärbaum gesuchten
Vektoren zum Codieren von Eingangsvektoren (s(n)) als
Codebuch-Vektoren (c(n)) zur Übertragung der jeweiligen
Indizes der Codebuch-Vektoren zu einem Decodierer, um
rekonstruierte Vektoren entsprechend den
Codebuch-Vektoren zu erzeugen,
dadurch gekennzeichnet,
daß ein Vektorspeicher (5) zum Empfangen und Speichern
von einen Eingangsvektor bildenden Eingangsproben, ein
Vektorspeicher (7) zum Halten von Eingängen jeweils in
der Form eines einzelnen Vektors (B(n)), der zur
Differenz zwischen zwei Codebuch-Vektoren (c(n)) in Beziehung
steht, und eines zugeordneten skalaren Wertes (A), und
Mittel (8) vorgesehen sind, die den Eingangsvektor
(s(n)) mit dem einzelnen Differenzvektor (B(n)) und dem
zugeordneten skalaren Wert (A) vergleichen, um die
Verzweigungsrichtung an jedem Verzweigungspunkt des
Baumes zu bestimmen.
2. Eine Vorrichtung nach Anspruch 1,
in welcher das Vergleichsmittel (8) eine
Berechnungseinheit ist, die betreibbar ist, das innere Produkt eines
Eingangsvektors (s(n)) mit dem Differenzvektor (B(n)) an
einem besonderen Verzweigungspunkt zu dem zugeordneten
skalaren Wert (A) für diesen Verzweigungspunkt zu
addieren und dann das Resultat zu testen, wobei der eine
Zweig des Baumes genommen wird, wenn das Resultat
negativ ist, und der andere Zweig des Baumes, wenn es
positiv oder null ist.
3. Eine Vorrichtung nach Anspruch 1,
in welcher das Vergleichsmittel (8) eine
Berechnungseinheit ist, die betreibbar ist, den skalaren Wert (A)
eines besonderen Verzweigungspunktes zu dem inneren
Produkt eines Eingangsvektors (s(n)) mit dem
Differenzvektor (B(n)) für diesen Verzweigungspunkt zu addieren und
dann das Resultat zu testen, wobei der eine Zweig des
Baumes genommen wird, wenn das Resultat negativ ist, und
der andere Zweig des Baumes, wenn es positiv oder null
ist.
4. Eine Vorrichtung nach Anspruch 1,
in welcher das Vergleichsmittel (8) eine
Berechnungseinheit ist, die betreibbar ist, das innere Produkt eines
Eingangsvektors (s(n)) mit dem Codevektor (B(n)) an
einem besonderen Verzweigungspunkt zu berechnen und dann
das Resultat mit dem skalaren Wert (A) für diesen
Verzweigungspunkt zu vergleichen, wobei der eine Zweig
des Baumes genommen wird, wenn der skalare Wert (A)
größer als das innere Produkt ist, und der andere Zweig des
Baumes, wenn der skalare Wert gleich oder kleiner als
das innere Produkt ist.
5. Eine Vorrichtung nach einem der Ansprüche 2 bis 4,
in welcher die Berechnungseinheit (8) eine einzelne
Multiplizierer-Akkumulator-Einheit ist.
6. Eine Vorrichtung nach einem der Ansprüche 2 bis 4,
in welcher die Berechnungseinheit (8) eine Vielzahl von
Multiplizierer-Akkumulator-Einheiten ist.
7. Eine Vorrichtung nach einem der Ansprüche 2 bis 4,
in welcher die Berechnungseinheit (8) ein systolischer
Feldprozessor ist.
8. Eine Vorrichtung nach einem der Ansprüche 2 bis 4,
in welcher die Berechnungseinheit (8) ein
Wellenfrontfeldprozessor ist.
9. Eine Vorrichtung nach einem der Ansprüche 1 bis 8,
in welcher der Vektorspeicher (5) ein verschachtelter
Speicher ist, der so betreibbar ist, daß ein neuer
Eingangsvektor (6) geladen werden kann, während der
vorherige Eingangsvektor (6) verarbeitet wird.
10. Eine Vorrichtung nach einem der Ansprüche 1 bis 9,
in welcher der Differenzvektorspeicher (7) ein
Direktzugriffsspeicher (RAM) oder ein Nur-Lese-Speicher (ROM)
ist.
11. Eine Vorrichtung nach einem der Ansprüche 1 bis 10,
in welcher ein Probenzähler (9) vorgesehen ist, um auf
die Eingangsproben (6) im Eingangsvektorspeicher (5) und
auf Elemente des Differenzvektors (B(n)) im
Differenzvektorspeicher (7) zuzugreifen.
12. Eine Vorrichtung nach einem der Ansprüche 1 bis 11,
in welcher ein Niveauzähler (10) vorgesehen ist, der
betreibbar ist, auf die relevanten Bereiche des
Differenzvektorspeichers (7) zuzugreifen, die den
unterschiedlichen Niveaus der Quantisierung von in einem Baum
gesuchten Vektoren entspricht.
13. Eine Vorrichtung nach einem der Ansprüche 1 bis 12,
in welcher ein Codeindexregister (11) vorgesehen ist,
das betreibbar ist, einen gegenwärtigen Wert eines
Codeindex zu halten, wenn er durch das Mittel (8) zum
Vergleichen von Eingangsvektoren (s(n)) und
Differenzvektoren (B(n)) berechnet wird, und direkt auf geeignete
Differenzvektoren (B(n)) im Differenzvektorspeicher (7)
zuzugreifen.
14. Eine Vorrichtung nach einem der Ansprüche 11, 12 und 13,
in welcher ein Systemcontroller (12) zum Leiten des
Betriebs der Vorrichtung (4) vorgesehen ist.
15. Ein Verfahren zur Datenkomprimierungsverarbeitung unter
Verwendung von Quantisierung von in einem Binärbaum
gesuchten Vektoren, in welchem Eingangsvektoren (s(n)) als
Codebuch-Vektoren (c(n)) zur Übertragung der jeweiligen
Indizes der Codebuch-Vektoren zu einem Decodierer
codiert werden, um rekonstruierte Vektoren entsprechend
den Codebuch-Vektoren zu erzeugen,
gekennzeichnet durch die Schritte,
daß einen Vektoreingang (s(n)) bildende Eingangsproben
empfangen und gespeichert werden, daß der Eingangsvektor
mit einem einzelnen Differenzvektor (B(n)), der zur
Differenz zwischen zwei Codebuch-Vektoren (c(n)) in
Beziehung steht, und mit einem zugeordneten skalaren Wert (A)
verglichen wird, und daß die Verzweigungsrichtung an
jedem Verzweigungspunkt des Baumes bestimmt wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB909017600A GB9017600D0 (en) | 1990-08-10 | 1990-08-10 | An assembly and method for binary tree-searched vector quanisation data compression processing |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69118465D1 DE69118465D1 (de) | 1996-05-09 |
DE69118465T2 true DE69118465T2 (de) | 1996-08-08 |
Family
ID=10680489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69118465T Expired - Lifetime DE69118465T2 (de) | 1990-08-10 | 1991-07-17 | Einrichtung und Verfahren zur Datenkomprimierung durch Quantisierung von in einem Binärbaum gesuchten Vektoren |
Country Status (7)
Country | Link |
---|---|
US (1) | US5396625A (de) |
EP (1) | EP0472283B1 (de) |
JP (1) | JPH05210400A (de) |
CA (1) | CA2047941A1 (de) |
DE (1) | DE69118465T2 (de) |
ES (1) | ES2085428T3 (de) |
GB (1) | GB9017600D0 (de) |
Families Citing this family (165)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5592667A (en) * | 1991-05-29 | 1997-01-07 | Triada, Ltd. | Method of storing compressed data for accelerated interrogation |
EP0681236B1 (de) * | 1994-05-05 | 2000-11-22 | Conexant Systems, Inc. | Raumzeigersdatenpfad |
US5598505A (en) * | 1994-09-30 | 1997-01-28 | Apple Computer, Inc. | Cepstral correction vector quantizer for speech recognition |
US5889891A (en) * | 1995-11-21 | 1999-03-30 | Regents Of The University Of California | Universal codebook vector quantization with constrained storage |
US8645137B2 (en) | 2000-03-16 | 2014-02-04 | Apple Inc. | Fast, language-independent method for user authentication by voice |
ITFI20010199A1 (it) | 2001-10-22 | 2003-04-22 | Riccardo Vieri | Sistema e metodo per trasformare in voce comunicazioni testuali ed inviarle con una connessione internet a qualsiasi apparato telefonico |
US6891500B2 (en) * | 2002-03-18 | 2005-05-10 | Christopher J. Hall | Method and apparatus for geolocating a wireless communications device |
US6798360B1 (en) * | 2003-06-27 | 2004-09-28 | Canadian Space Agency | Method and system for compressing a continuous data flow in real-time using recursive hierarchical self-organizing cluster vector quantization (HSOCVQ) |
US6839005B1 (en) * | 2003-11-07 | 2005-01-04 | Broadcom Corporation | Low memory and MIPS efficient technique for decoding Huffman codes using multi-stage, multi-bits lookup at different levels |
US7769770B2 (en) * | 2004-07-14 | 2010-08-03 | Microsoft Corporation | Secondary index and indexed view maintenance for updates to complex types |
US7587098B2 (en) * | 2005-07-14 | 2009-09-08 | Mavs Lab. Inc. | Pixel data generating method |
US8677377B2 (en) | 2005-09-08 | 2014-03-18 | Apple Inc. | Method and apparatus for building an intelligent automated assistant |
US7633076B2 (en) | 2005-09-30 | 2009-12-15 | Apple Inc. | Automated response to and sensing of user activity in portable devices |
US7917176B2 (en) | 2006-02-14 | 2011-03-29 | Nec Laboratories America, Inc. | Structured codebook and successive beamforming for multiple-antenna systems |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US20080129520A1 (en) * | 2006-12-01 | 2008-06-05 | Apple Computer, Inc. | Electronic device with enhanced audio feedback |
US7477192B1 (en) | 2007-02-22 | 2009-01-13 | L-3 Communications Titan Corporation | Direction finding system and method |
US8977255B2 (en) | 2007-04-03 | 2015-03-10 | Apple Inc. | Method and system for operating a multi-function portable electronic device using voice-activation |
US9053089B2 (en) | 2007-10-02 | 2015-06-09 | Apple Inc. | Part-of-speech tagging using latent analogy |
US8620662B2 (en) | 2007-11-20 | 2013-12-31 | Apple Inc. | Context-aware unit selection |
US10002189B2 (en) * | 2007-12-20 | 2018-06-19 | Apple Inc. | Method and apparatus for searching using an active ontology |
US9330720B2 (en) | 2008-01-03 | 2016-05-03 | Apple Inc. | Methods and apparatus for altering audio output signals |
US8065143B2 (en) | 2008-02-22 | 2011-11-22 | Apple Inc. | Providing text input using speech data and non-speech data |
US8996376B2 (en) | 2008-04-05 | 2015-03-31 | Apple Inc. | Intelligent text-to-speech conversion |
US10496753B2 (en) | 2010-01-18 | 2019-12-03 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US8464150B2 (en) | 2008-06-07 | 2013-06-11 | Apple Inc. | Automatic language identification for dynamic text processing |
US20100030549A1 (en) | 2008-07-31 | 2010-02-04 | Lee Michael M | Mobile device having human language translation capability with positional feedback |
US8768702B2 (en) | 2008-09-05 | 2014-07-01 | Apple Inc. | Multi-tiered voice feedback in an electronic device |
US8898568B2 (en) | 2008-09-09 | 2014-11-25 | Apple Inc. | Audio user interface |
US8583418B2 (en) | 2008-09-29 | 2013-11-12 | Apple Inc. | Systems and methods of detecting language and natural language strings for text to speech synthesis |
US8712776B2 (en) | 2008-09-29 | 2014-04-29 | Apple Inc. | Systems and methods for selective text to speech synthesis |
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
WO2010067118A1 (en) | 2008-12-11 | 2010-06-17 | Novauris Technologies Limited | Speech recognition involving a mobile device |
US8862252B2 (en) | 2009-01-30 | 2014-10-14 | Apple Inc. | Audio user interface for displayless electronic device |
US8380507B2 (en) | 2009-03-09 | 2013-02-19 | Apple Inc. | Systems and methods for determining the language to use for speech generated by a text to speech engine |
US10241644B2 (en) | 2011-06-03 | 2019-03-26 | Apple Inc. | Actionable reminder entries |
US10706373B2 (en) * | 2011-06-03 | 2020-07-07 | Apple Inc. | Performing actions associated with task items that represent tasks to perform |
US9858925B2 (en) | 2009-06-05 | 2018-01-02 | Apple Inc. | Using context information to facilitate processing of commands in a virtual assistant |
US10241752B2 (en) | 2011-09-30 | 2019-03-26 | Apple Inc. | Interface for a virtual digital assistant |
US10540976B2 (en) * | 2009-06-05 | 2020-01-21 | Apple Inc. | Contextual voice commands |
US9431006B2 (en) | 2009-07-02 | 2016-08-30 | Apple Inc. | Methods and apparatuses for automatic speech recognition |
US8682649B2 (en) | 2009-11-12 | 2014-03-25 | Apple Inc. | Sentiment prediction from textual data |
US8600743B2 (en) | 2010-01-06 | 2013-12-03 | Apple Inc. | Noise profile determination for voice-related feature |
US8381107B2 (en) | 2010-01-13 | 2013-02-19 | Apple Inc. | Adaptive audio feedback system and method |
US8311838B2 (en) | 2010-01-13 | 2012-11-13 | Apple Inc. | Devices and methods for identifying a prompt corresponding to a voice input in a sequence of prompts |
US10276170B2 (en) | 2010-01-18 | 2019-04-30 | Apple Inc. | Intelligent automated assistant |
US10705794B2 (en) | 2010-01-18 | 2020-07-07 | Apple Inc. | Automatically adapting user interfaces for hands-free interaction |
US10679605B2 (en) | 2010-01-18 | 2020-06-09 | Apple Inc. | Hands-free list-reading by intelligent automated assistant |
US10553209B2 (en) | 2010-01-18 | 2020-02-04 | Apple Inc. | Systems and methods for hands-free notification summaries |
DE202011111062U1 (de) | 2010-01-25 | 2019-02-19 | Newvaluexchange Ltd. | Vorrichtung und System für eine Digitalkonversationsmanagementplattform |
US8682667B2 (en) | 2010-02-25 | 2014-03-25 | Apple Inc. | User profiling for selecting user specific voice input processing information |
US8713021B2 (en) | 2010-07-07 | 2014-04-29 | Apple Inc. | Unsupervised document clustering using latent semantic density analysis |
US8719006B2 (en) | 2010-08-27 | 2014-05-06 | Apple Inc. | Combined statistical and rule-based part-of-speech tagging for text-to-speech synthesis |
US8719014B2 (en) | 2010-09-27 | 2014-05-06 | Apple Inc. | Electronic device with text error correction based on voice recognition data |
US10762293B2 (en) | 2010-12-22 | 2020-09-01 | Apple Inc. | Using parts-of-speech tagging and named entity recognition for spelling correction |
US10515147B2 (en) | 2010-12-22 | 2019-12-24 | Apple Inc. | Using statistical language models for contextual lookup |
US8781836B2 (en) | 2011-02-22 | 2014-07-15 | Apple Inc. | Hearing assistance system for providing consistent human speech |
US9262612B2 (en) | 2011-03-21 | 2016-02-16 | Apple Inc. | Device access using voice authentication |
US10057736B2 (en) | 2011-06-03 | 2018-08-21 | Apple Inc. | Active transport based notifications |
US10672399B2 (en) | 2011-06-03 | 2020-06-02 | Apple Inc. | Switching between text data and audio data based on a mapping |
US8812294B2 (en) | 2011-06-21 | 2014-08-19 | Apple Inc. | Translating phrases from one language into another using an order-based set of declarative rules |
US8706472B2 (en) | 2011-08-11 | 2014-04-22 | Apple Inc. | Method for disambiguating multiple readings in language conversion |
US8994660B2 (en) | 2011-08-29 | 2015-03-31 | Apple Inc. | Text correction processing |
US8762156B2 (en) | 2011-09-28 | 2014-06-24 | Apple Inc. | Speech recognition repair using contextual information |
US10134385B2 (en) | 2012-03-02 | 2018-11-20 | Apple Inc. | Systems and methods for name pronunciation |
US9483461B2 (en) | 2012-03-06 | 2016-11-01 | Apple Inc. | Handling speech synthesis of content for multiple languages |
US9280610B2 (en) | 2012-05-14 | 2016-03-08 | Apple Inc. | Crowd sourcing information to fulfill user requests |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
US8775442B2 (en) | 2012-05-15 | 2014-07-08 | Apple Inc. | Semantic search using a single-source semantic model |
US9721563B2 (en) | 2012-06-08 | 2017-08-01 | Apple Inc. | Name recognition system |
US10019994B2 (en) | 2012-06-08 | 2018-07-10 | Apple Inc. | Systems and methods for recognizing textual identifiers within a plurality of words |
US9495129B2 (en) | 2012-06-29 | 2016-11-15 | Apple Inc. | Device, method, and user interface for voice-activated navigation and browsing of a document |
US9576574B2 (en) | 2012-09-10 | 2017-02-21 | Apple Inc. | Context-sensitive handling of interruptions by intelligent digital assistant |
US9547647B2 (en) | 2012-09-19 | 2017-01-17 | Apple Inc. | Voice-based media searching |
US8935167B2 (en) | 2012-09-25 | 2015-01-13 | Apple Inc. | Exemplar-based latent perceptual modeling for automatic speech recognition |
KR20240132105A (ko) | 2013-02-07 | 2024-09-02 | 애플 인크. | 디지털 어시스턴트를 위한 음성 트리거 |
US10652394B2 (en) | 2013-03-14 | 2020-05-12 | Apple Inc. | System and method for processing voicemail |
US10572476B2 (en) | 2013-03-14 | 2020-02-25 | Apple Inc. | Refining a search based on schedule items |
US9977779B2 (en) | 2013-03-14 | 2018-05-22 | Apple Inc. | Automatic supplementation of word correction dictionaries |
US9368114B2 (en) | 2013-03-14 | 2016-06-14 | Apple Inc. | Context-sensitive handling of interruptions |
US10642574B2 (en) | 2013-03-14 | 2020-05-05 | Apple Inc. | Device, method, and graphical user interface for outputting captions |
US9733821B2 (en) | 2013-03-14 | 2017-08-15 | Apple Inc. | Voice control to diagnose inadvertent activation of accessibility features |
AU2014233517B2 (en) | 2013-03-15 | 2017-05-25 | Apple Inc. | Training an at least partial voice command system |
US10748529B1 (en) | 2013-03-15 | 2020-08-18 | Apple Inc. | Voice activated device for use with a voice-based digital assistant |
WO2014144579A1 (en) | 2013-03-15 | 2014-09-18 | Apple Inc. | System and method for updating an adaptive speech recognition model |
CN112230878B (zh) | 2013-03-15 | 2024-09-27 | 苹果公司 | 对中断进行上下文相关处理 |
CN105190607B (zh) | 2013-03-15 | 2018-11-30 | 苹果公司 | 通过智能数字助理的用户培训 |
WO2014197336A1 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for detecting errors in interactions with a voice-based digital assistant |
US9582608B2 (en) | 2013-06-07 | 2017-02-28 | Apple Inc. | Unified ranking with entropy-weighted information for phrase-based semantic auto-completion |
WO2014197334A2 (en) | 2013-06-07 | 2014-12-11 | Apple Inc. | System and method for user-specified pronunciation of words for speech synthesis and recognition |
WO2014197335A1 (en) | 2013-06-08 | 2014-12-11 | Apple Inc. | Interpreting and acting upon commands that involve sharing information with remote devices |
US10176167B2 (en) | 2013-06-09 | 2019-01-08 | Apple Inc. | System and method for inferring user intent from speech inputs |
KR101772152B1 (ko) | 2013-06-09 | 2017-08-28 | 애플 인크. | 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스 |
EP3008964B1 (de) | 2013-06-13 | 2019-09-25 | Apple Inc. | System und verfahren für durch sprachsteuerung ausgelöste notrufe |
DE112014003653B4 (de) | 2013-08-06 | 2024-04-18 | Apple Inc. | Automatisch aktivierende intelligente Antworten auf der Grundlage von Aktivitäten von entfernt angeordneten Vorrichtungen |
US10296160B2 (en) | 2013-12-06 | 2019-05-21 | Apple Inc. | Method for extracting salient dialog usage from live data |
US9489338B1 (en) * | 2014-01-24 | 2016-11-08 | Altera Corporation | Systolic array based architecture for branch and bound algorithms |
US9620105B2 (en) | 2014-05-15 | 2017-04-11 | Apple Inc. | Analyzing audio input for efficient speech and music recognition |
US10592095B2 (en) | 2014-05-23 | 2020-03-17 | Apple Inc. | Instantaneous speaking of content on touch devices |
US9502031B2 (en) | 2014-05-27 | 2016-11-22 | Apple Inc. | Method for supporting dynamic grammars in WFST-based ASR |
US10289433B2 (en) | 2014-05-30 | 2019-05-14 | Apple Inc. | Domain specific language for encoding assistant dialog |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10078631B2 (en) | 2014-05-30 | 2018-09-18 | Apple Inc. | Entropy-guided text prediction using combined word and character n-gram language models |
CN110797019B (zh) | 2014-05-30 | 2023-08-29 | 苹果公司 | 多命令单一话语输入方法 |
US9785630B2 (en) | 2014-05-30 | 2017-10-10 | Apple Inc. | Text prediction using combined word N-gram and unigram language models |
US9842101B2 (en) | 2014-05-30 | 2017-12-12 | Apple Inc. | Predictive conversion of language input |
US9734193B2 (en) | 2014-05-30 | 2017-08-15 | Apple Inc. | Determining domain salience ranking from ambiguous words in natural speech |
US9633004B2 (en) | 2014-05-30 | 2017-04-25 | Apple Inc. | Better resolution when referencing to concepts |
US9760559B2 (en) | 2014-05-30 | 2017-09-12 | Apple Inc. | Predictive text input |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9430463B2 (en) | 2014-05-30 | 2016-08-30 | Apple Inc. | Exemplar-based natural language processing |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
US10659851B2 (en) | 2014-06-30 | 2020-05-19 | Apple Inc. | Real-time digital assistant knowledge updates |
US10446141B2 (en) | 2014-08-28 | 2019-10-15 | Apple Inc. | Automatic speech recognition based on user feedback |
US9818400B2 (en) | 2014-09-11 | 2017-11-14 | Apple Inc. | Method and apparatus for discovering trending terms in speech requests |
US10789041B2 (en) | 2014-09-12 | 2020-09-29 | Apple Inc. | Dynamic thresholds for always listening speech trigger |
US10127911B2 (en) | 2014-09-30 | 2018-11-13 | Apple Inc. | Speaker identification and unsupervised speaker adaptation techniques |
US10074360B2 (en) | 2014-09-30 | 2018-09-11 | Apple Inc. | Providing an indication of the suitability of speech recognition |
US9668121B2 (en) | 2014-09-30 | 2017-05-30 | Apple Inc. | Social reminders |
US9646609B2 (en) | 2014-09-30 | 2017-05-09 | Apple Inc. | Caching apparatus for serving phonetic pronunciations |
US9886432B2 (en) | 2014-09-30 | 2018-02-06 | Apple Inc. | Parsimonious handling of word inflection via categorical stem + suffix N-gram language models |
US10552013B2 (en) | 2014-12-02 | 2020-02-04 | Apple Inc. | Data detection |
US9711141B2 (en) | 2014-12-09 | 2017-07-18 | Apple Inc. | Disambiguating heteronyms in speech synthesis |
US9865280B2 (en) | 2015-03-06 | 2018-01-09 | Apple Inc. | Structured dictation using intelligent automated assistants |
US10567477B2 (en) | 2015-03-08 | 2020-02-18 | Apple Inc. | Virtual assistant continuity |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US9721566B2 (en) | 2015-03-08 | 2017-08-01 | Apple Inc. | Competing devices responding to voice triggers |
US9899019B2 (en) | 2015-03-18 | 2018-02-20 | Apple Inc. | Systems and methods for structured stem and suffix language models |
US9842105B2 (en) | 2015-04-16 | 2017-12-12 | Apple Inc. | Parsimonious continuous-space phrase representations for natural language processing |
US10083688B2 (en) | 2015-05-27 | 2018-09-25 | Apple Inc. | Device voice control for selecting a displayed affordance |
US10127220B2 (en) | 2015-06-04 | 2018-11-13 | Apple Inc. | Language identification from short strings |
US10101822B2 (en) | 2015-06-05 | 2018-10-16 | Apple Inc. | Language input correction |
US11025565B2 (en) | 2015-06-07 | 2021-06-01 | Apple Inc. | Personalized prediction of responses for instant messaging |
US10255907B2 (en) | 2015-06-07 | 2019-04-09 | Apple Inc. | Automatic accent detection using acoustic models |
US10186254B2 (en) | 2015-06-07 | 2019-01-22 | Apple Inc. | Context-based endpoint detection |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10671428B2 (en) | 2015-09-08 | 2020-06-02 | Apple Inc. | Distributed personal assistant |
US9697820B2 (en) | 2015-09-24 | 2017-07-04 | Apple Inc. | Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks |
US10366158B2 (en) | 2015-09-29 | 2019-07-30 | Apple Inc. | Efficient word encoding for recurrent neural network language models |
US11010550B2 (en) | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US11587559B2 (en) | 2015-09-30 | 2023-02-21 | Apple Inc. | Intelligent device identification |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US10049668B2 (en) | 2015-12-02 | 2018-08-14 | Apple Inc. | Applying neural network language models to weighted finite state transducers for automatic speech recognition |
US10223066B2 (en) | 2015-12-23 | 2019-03-05 | Apple Inc. | Proactive assistance based on dialog communication between devices |
US10446143B2 (en) | 2016-03-14 | 2019-10-15 | Apple Inc. | Identification of voice inputs providing credentials |
US9934775B2 (en) | 2016-05-26 | 2018-04-03 | Apple Inc. | Unit-selection text-to-speech synthesis based on predicted concatenation parameters |
US9972304B2 (en) | 2016-06-03 | 2018-05-15 | Apple Inc. | Privacy preserving distributed evaluation framework for embedded personalized systems |
US10249300B2 (en) | 2016-06-06 | 2019-04-02 | Apple Inc. | Intelligent list reading |
US10049663B2 (en) | 2016-06-08 | 2018-08-14 | Apple, Inc. | Intelligent automated assistant for media exploration |
DK179588B1 (en) | 2016-06-09 | 2019-02-22 | Apple Inc. | INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT |
US10490187B2 (en) | 2016-06-10 | 2019-11-26 | Apple Inc. | Digital assistant providing automated status report |
US10067938B2 (en) | 2016-06-10 | 2018-09-04 | Apple Inc. | Multilingual word prediction |
US10586535B2 (en) | 2016-06-10 | 2020-03-10 | Apple Inc. | Intelligent digital assistant in a multi-tasking environment |
US10509862B2 (en) | 2016-06-10 | 2019-12-17 | Apple Inc. | Dynamic phrase expansion of language input |
US10192552B2 (en) | 2016-06-10 | 2019-01-29 | Apple Inc. | Digital assistant providing whispered speech |
DK179343B1 (en) | 2016-06-11 | 2018-05-14 | Apple Inc | Intelligent task discovery |
DK179049B1 (en) | 2016-06-11 | 2017-09-18 | Apple Inc | Data driven natural language event detection and classification |
DK179415B1 (en) | 2016-06-11 | 2018-06-14 | Apple Inc | Intelligent device arbitration and control |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
JP6688485B2 (ja) * | 2016-07-15 | 2020-04-28 | 株式会社リコー | サービス提供システム、サービス授受システム、サービス提供方法、及びプログラム |
US10593346B2 (en) | 2016-12-22 | 2020-03-17 | Apple Inc. | Rank-reduced token representation for automatic speech recognition |
DK179745B1 (en) | 2017-05-12 | 2019-05-01 | Apple Inc. | SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT |
DK201770431A1 (en) | 2017-05-15 | 2018-12-20 | Apple Inc. | Optimizing dialogue policy decisions for digital assistants using implicit feedback |
US10846016B2 (en) * | 2017-10-20 | 2020-11-24 | Hewlett Packard Enterprise Development Lp | Enforcement of memory reference object loading indirection |
CN109615080B (zh) * | 2018-09-20 | 2020-05-26 | 阿里巴巴集团控股有限公司 | 无监督模型评估方法、装置、服务器及可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4670851A (en) * | 1984-01-09 | 1987-06-02 | Mitsubishi Denki Kabushiki Kaisha | Vector quantizer |
DE3685238D1 (de) * | 1985-02-28 | 1992-06-17 | Mitsubishi Electric Corp | Adaptive zwischenbild-vektorquantisier-kodiereinrichtung. |
US4727354A (en) * | 1987-01-07 | 1988-02-23 | Unisys Corporation | System for selecting best fit vector code in vector quantization encoding |
US4849810A (en) * | 1987-06-02 | 1989-07-18 | Picturetel Corporation | Hierarchial encoding method and apparatus for efficiently communicating image sequences |
JPH0221727A (ja) * | 1988-07-11 | 1990-01-24 | Victor Co Of Japan Ltd | ベクトル量子化復号化方式 |
US5010574A (en) * | 1989-06-13 | 1991-04-23 | At&T Bell Laboratories | Vector quantizer search arrangement |
US5021971A (en) * | 1989-12-07 | 1991-06-04 | Unisys Corporation | Reflective binary encoder for vector quantization |
-
1990
- 1990-08-10 GB GB909017600A patent/GB9017600D0/en active Pending
-
1991
- 1991-07-17 EP EP91306481A patent/EP0472283B1/de not_active Expired - Lifetime
- 1991-07-17 ES ES91306481T patent/ES2085428T3/es not_active Expired - Lifetime
- 1991-07-17 DE DE69118465T patent/DE69118465T2/de not_active Expired - Lifetime
- 1991-07-30 CA CA002047941A patent/CA2047941A1/en not_active Abandoned
- 1991-08-09 JP JP3200402A patent/JPH05210400A/ja active Pending
-
1994
- 1994-04-01 US US08/221,444 patent/US5396625A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0472283A3 (en) | 1992-06-03 |
GB9017600D0 (en) | 1990-09-26 |
ES2085428T3 (es) | 1996-06-01 |
DE69118465D1 (de) | 1996-05-09 |
JPH05210400A (ja) | 1993-08-20 |
US5396625A (en) | 1995-03-07 |
EP0472283A2 (de) | 1992-02-26 |
EP0472283B1 (de) | 1996-04-03 |
CA2047941A1 (en) | 1992-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69118465T2 (de) | Einrichtung und Verfahren zur Datenkomprimierung durch Quantisierung von in einem Binärbaum gesuchten Vektoren | |
DE3750791T2 (de) | Sehr schnelle Transformationsvorrichtung. | |
DE69032551T2 (de) | Einrichtung zur Sprachkodierung | |
DE4397106B4 (de) | Schnelles auf einer Baumstruktur basierendes Verfahren zur Vektorquantisierung | |
DE3883701T2 (de) | Verfahren und Vorrichtung für multiplexierte Vektorquantifizierung. | |
DE3875979T2 (de) | Schaltung zur berechnung des quantisierten koeffizienten der diskreten cosinustransformation von digitalen signalabschnitten. | |
DE69030485T2 (de) | Binärreflexivkodierer zur Vektorquantifizierung | |
DE3854453T2 (de) | CELP Vocoder und Anwendungsverfahren. | |
DE3874427T2 (de) | Linearer praediktionsvocoder mit code-anregung. | |
DE69422406T2 (de) | Verfahren zum Durchführen eines Vergleichs von Datenketten | |
DE69528685T2 (de) | Vorrichtung zur Vektorquantifizierung | |
DE3789116T2 (de) | Prozessor zur zweidimensionalen diskreten cosinustransformation. | |
DE69232431T2 (de) | Vorrichtung zur Lösung von linearen Gleichungssystem | |
DE69320669T2 (de) | Geometrische Vektorquantisierung | |
DE69023411T2 (de) | Vektorquantizierungskodierer und Dekodierer. | |
DE69329569T2 (de) | Digitale Kodierung von Sprachsignalen | |
DE69526017T2 (de) | Vorrichtung zur Vektorquantisierung | |
DE1925428A1 (de) | Anordnung zur Zeichenerkennung | |
DE69124210T2 (de) | Einrichtung zur Signalcodierung | |
DE69103757T2 (de) | Ausführung eines sin/cos generators. | |
DE69527078T2 (de) | Verfahren zur vektorkodierung und entsprechender kodierer/dekodierer | |
DE3018508C2 (de) | Sprachanalysiervorrichtung | |
DE69129385T2 (de) | Sprachkodiersystem | |
DE102020114046A1 (de) | Neuronales Maschinenübersetzungsverfahren, neuronales Maschinenübersetzungssystem, Lernverfahren, Lernsystem und Programm | |
DE2133638B2 (de) | Verfahren zum Betrieb eines lernfähigen Systems aus in Kaskade geschalteten, zur nicht linearen Datenverarbeitung geeigneten lernfähigen Datenverarbeitungseinheiten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: EADS ASTRIUM LTD., STEVENAGE, HERTFORDSHIRE, GB |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: ASTRIUM LTD., STEVENAGE, HERTFORDSHIRE, GB |