DE69527770T2 - Bildkodierungsverfahren und -vorrichtung mit Schätzung der Datenmenge - Google Patents
Bildkodierungsverfahren und -vorrichtung mit Schätzung der DatenmengeInfo
- Publication number
- DE69527770T2 DE69527770T2 DE69527770T DE69527770T DE69527770T2 DE 69527770 T2 DE69527770 T2 DE 69527770T2 DE 69527770 T DE69527770 T DE 69527770T DE 69527770 T DE69527770 T DE 69527770T DE 69527770 T2 DE69527770 T2 DE 69527770T2
- Authority
- DE
- Germany
- Prior art keywords
- image data
- data
- circuit
- code
- input
- 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
- 238000000034 method Methods 0.000 title claims description 16
- 238000013139 quantization Methods 0.000 claims description 183
- 238000012545 processing Methods 0.000 claims description 13
- 230000003111 delayed effect Effects 0.000 claims description 11
- 230000001186 cumulative effect Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 14
- 230000001934 delay Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000016776 visual perception Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
Classifications
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
- H04N19/126—Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/15—Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- 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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf eine Codiervorrichtung und ein -verfahren, wobei eine Codierlänge zur Längenfestlegung während längenvariablen Codierens errechnet wird.
- In einem herkömmlichen Verfahren hocheffizienten Codierens von Daten werden die Bilddaten eingeteilt in kleine Blöcke jeweils mit i · j Pixeln, wobei ein kleiner Block orthogonal transformiert wird (das heißt, zweidimensionale diskrete Kosinustransformation (DCT)), die orthogonal transformierten Koeffizienten quantisiert werden, während menschliche visuelle Wahrnehmungseigenschaften berücksichtigt werden, und wobei die quantisierten Koeffizienten in einen längenvariablen Code transformiert werden (das heißt, in einen Huffman-Code, der eine Kombination einer Lauflänge mit 0 Koeffizienten und Amplituden signifikanter Koeffizienten ist).
- Beim Aufzeichnen längenvariabel codierter Daten in einem VTR (videobandrecorder) oder dergleichen werden k kleine Blöcke (k ≥ 1, ganzzahlig) codiert, um so eine Aufzeichnungs- oder Übertragungsrate anzupassen, und die Codemenge nach Codieren wird gesteuert, um höchstens auf RK zu kommen.
- Fig. 1 zeigt eine herkömmliche Codiervorrichtung, die eine derartige Codemengensteuerung ausführt.
- In Fig. 1 bedeutet Bezugszeichen 1300 einen Bildeingabeanschluß zur Eingabe von Daten, die orthogonal zu transformieren sind. Bezugszeichen 1302&sub0; bis 1302N-1 stellen eine Tabellennummer einer jeden Quantisierungstabelle dar oder einen Eingangsanschluß für einen Quantisierungsschritt, Bezugszeichen 1304 bedeutet einen FIFO zum Verzögern von eingegebenen Bilddaten um eine Zeit, die erforderlich ist, um eine Quantisierungstabelle zu bestimmen, durch die die eingegebenen Bilddaten quantisiert werden.
- Bezugszeichen 1306&sub0; bis 1306N-1 stellen eine Quantisierungsschaltung dar, die orthogonal transformierte Bilddaten quantisiert, Bezugszeichen 1308&sub0; bis 1308N-1 stellen eine Codelängeerzeugungsschaltung dar, die eine Codelänge von Bilddaten erzeugt, die quantisiert und längenvariabel codiert sind. Bezugszeichen 1310&sub0; bis 1310N-1 stellen eine Addierschaltung dar zum Addieren von Codelängen, und Bezugszeichen 1312&sub0; bis 1312N-1 stellen eine Zwischenspeicherschaltung dar, um eine Codelänge zeitweilig zu speichern, die jedesmal hinzugefügt wird, wenn ein Code erzeugt wird.
- Bezugszeichen 1314 stellt eine Auswahlschaltung dar, die aus N Codemengen, gewonnen durch längenvariables Codieren von k kleinen Blöcken durch N Quantisierungstabellen, die Codemenge auswählt, die einer gewünschten Menge Rk am nächsten kommt, und eine entsprechende Quantisierungstabelle Qn oder deren Quantisierungstabellennummer n (0 ≤ n ≤ N-1) aus einem Ausgangsanschluß 1318 ausgibt. Bezugszeichen 1316 bedeutet einen Ausgangsanschluß für verzögerte Bilddaten aus dem FIFO 1304.
- Die Arbeitsweise der in der zuvor Weise strukturierten Codiervorrichtung ist nachstehend beschrieben.
- Bilddaten werden eingeteilt in kleine Blöcke. Jeder kleine Block wird orthogonal transformiert (das heißt, zweidimensionale DCT), und die transformierten Bilddaten beaufschlagen den Eingangsanschluß 1300. Die Quantisierungsschaltungen 1306&sub0; bis 1306N-1 teilen zweidimensionale orthogonale transformierte Bilddaten eines jeden kleinen Blockes in M Bereiche ein im Bereich von niedrigen bis hohen Frequenzen, wie beispielsweise in Fig. 2 dargestellt, und quantisieren in einer vorbestimmten Schrittgröße, die grob eingeteilt wird vom Bereich 0 bis zum Bereich N-1 hin zum hochfrequenten Bereich, während die menschlichen visuellen Wahrnehmungseigenschaften berücksichtigt werden, wie beispielsweise in Fig. 3 gezeigt.
- Die Quantisierungsschaltung 1306&sub0; wird beliefert mit einer Quantisierungstabelle Q&sub0; aus dem Eingangsanschluß 1302&sub0;, und quantisiert orthogonal transformierte Bilddaten eines kleinen Blockes mit einer Schrittgröße von 1/16 für den Bereich 0, 1/16 für den Bereich 1, ..., und 1/64 für den Bereich M-1 gemäß der Quantisierungstabelle Q&sub0;. Die Bilddaten vom kleinen Block, quantisiert von der Quantisierungsschaltung 1306&sub0; unter Verwendung der Quantisierungstabelle Q&sub0;, werden geliefert an die Codelängenerzeugungsschaltung 1308&sub0;. Die Codelängenerzeugungsschaltung 1308&sub0; erzeugt eine Codelänge eines Codes variabler Länge, die geeignet ist für die quantisierten Bilddaten, und liefert diese an die Addierschaltung 1310&sub0;. Der variable Längecode ist beispielsweise ein zweidimensionaler Huffman-Code, der eine Kombination einer Lauf länge von 0 Werten quantisierter Bilddaten und signifikanter Werte ist.
- Die Addierschaltung 1310&sub0; wird beliefert mit einer Codelänge aus der Codelängenerzeugungsschaltung 1308&sub0; und mit einem kumulativen Wert vergangener Codelänge aus der Zwischenspeicherschaltung 1312&sub0;, und addiert die beiden Werte, wobei das Ergebnis an die Zwischenspeicherschaltung 1312&sub0; geliefert wird. Die Zwischenspeicherschaltung 1312&sub0; speichert den addierten Wert aus der Addierschaltung 1312&sub0; zeitweilig und liefert ihn an die Addierschaltung 1310&sub0; und ebenfalls an die Auswahlschaltung 1314. Der in der Zwischenspeicherschaltung 1312&sub0; zeitweilig gespeicherte Wert wird zurückgesetzt auf "0" jedesmal, wenn ein Satz von k kleinen Blöcken von der Längenfestlegungseinheit verarbeitet worden ist.
- Ebenso wie oben quantisieren die Quantisierungsschaltungen 1306&sub1; bis 1306N-1 die orthogonal transformierten Bilddaten unter Verwendung von Quantisierungstabellen Q bis QN-1, und Codelängenerzeugungsschaltungen 1308&sub1; bis 1308N-1, Addierschaltungen 1310&sub1; bis 1319N-1 und die Zwischenspeicherschaltungen 1312&sub1; bis 1312N-1 arbeiten in derselben Weise wie zuvor für die quantisierten Bilddaten. Jede Zwischenspeicherschaltung 1312&sub1; bis 1312N-1 wird auf "0" zu einer gleichen Zeit in der Einheit von k kleinen Blöcken zurückgesetzt. Auf diese Weise errechnet die Zwischenspeicherschaltung 1312&sub0; bis 1312N-1 Codemengen RQ0 bis RQZN-1 Codes von den orthogonal transformierten k kleinen Blöcken, die unter Verwendung der Quantisierungstabellen Q&sub0; bis QN-1 quantisiert worden sind.
- Die Auswahlschaltung 1314 wird beliefert mit N Codemengen RQ&sub0;, RQ&sub1;, RQN-1 für Jeden Satz von k kleinen Blöcken aus den Zwischenspeicherschaltungen 1312&sub0;, 1312&sub1;, ..., 1312N-1. Die Auswahlschaltung 1314 wählt aus diesen N Codemengen das größte RQn aus, das der Bedingung RQN ≤ RK genügt, welche bestimmt wird, die Codemenge des feststehenden Längencodes zu sein, und gibt eine entsprechende Quantisierungstabelle Qn oder deren Quantisierungstabellennummer n (0 ≤ n ≤ N-1) aus dem Ausgangsanschluß 1318 ab. Der FIFO 1304 verzögert orthogonal transformierte Bilddaten um die Zeit, die für die Auswahl Schaltung 1314 erforderlich ist, um die Quantisierungstabelle zu bestimmen.
- Nachdem die Quantisierungstabelle bestimmt ist, quantisiert eine Schaltung (nicht dargestellt) die Bilddaten, die der FIFO 1304 verzögert hat, unter Verwendung der bestimmten Quantisierungstabelle Qn, und codiert die quantisierten Bilddaten in Codes variabler Länge, um die gewünschten Codes zu erhalten.
- Um jedoch mit der zuvor beschriebenen herkömmlichen Codiervorrichtung k kleine Blöcke in eine gewünschte Codemenge RK oder geringer zu komprimieren, sind N Quantisierungsschaltungen und N Codemengenrechenschaltungen entsprechend der Anzahl von N Quantisierungstabellen erforderlich. Die Codiervorrichtung wird folglich einen sperrigen Umfang an Hardware haben.
- Da k kleine Blöcke quantisiert werden unter Verwendung derselben Quantisierungstabelle Qn, wird die Codemenge RQN nach der Längenfestlegung abhängig von Bilddaten zu klein, und eine Differenz RK-RQN aus der Zielcodemenge RK wird zu groß.
- Folglich wird ein Leerbereich in einem Aufzeichnungs- oder Übertragungsbereich erzeugt, der nicht effizient ist, und ein Bild wird verschlechtert.
- Das Dokument US-A-5 291 282 offenbart eine Bilddatencodiervorrichtung, bei der Informationen hinsichtlich der Zielmenge des Codes einem Bildschirm entsprechend ausgegeben werden und der Quantisierungsschritt auf der Grundlage der beschriebenen Zielmenge vorhergesagt wird.
- Eine erste Aufgabe eines Ausführungsbeispiels nach der vorliegenden Erfindung ist es, eine Codiervorrichtung zu schaffen, die in der Lage ist, eine Länge einer Codemenge mit geringem Hardwareaufwand festzulegen.
- Es ist eine Aufgabe eines anderen Ausführungsbeispiels der vorliegenden Erfindung, eine Codiervorrichtung zu schaffen, die in der Lage ist, einen Aufzeichnungs- oder Übertragungsbereich durch Reduzieren eines Leerbereichs effizient zu verwenden, und die in der Lage ist, eine Bildqualität durch Reduzieren einer Differenz RK-RQN aus der Zielcodemenge RK soweit wie möglich zu verbessern.
- Nach einem ersten Aspekt der vorliegenden Erfindung vorgesehen ist eine Codiervorrichtung, mit: einem Eingabemittel zum Eingeben von Bilddaten; einem Erzeugungsmittel zum Quantisieren der vom Eingabemittel eingegeben Bilddaten durch einen vorbestimmten Quantisierungsschritt und Erzeugen von Codemengendaten gemäß dem Umfang des Codes, der vorgesehen ist, wenn das Codieren der quantisierten Bilddaten erfolgt; einem Wandlermittel zum Empfangen der Codemengendaten und Umsetzen der Codemengendaten in Prädiktionsdaten, die den Quantisierungsschritt aufzeigen, durch den eine Codemenge innerhalb eines vorbestimmten Bereichs erzielbar ist; einem Quantisierungsmittel zum Quantisieren der Bilddaten unter Verwendung des Quantisierungsschrittes; und einem Codiermittel zum Codieren der Bilddaten, dadurch gekennzeichnet, daß: das Eingabemittel bestimmt ist zur Eingabe von Bilddaten unterschiedlicher Arten; das Wandlermittel eingerichtet ist zum Ausführen unterschiedlicher Verarbeitung auf der Grundlage der Art der eingegebenen Bilddaten; und darin, daß das Gerät ausgestattet ist mit: einem Verzögerungsmittel zum Verzögern der Bilddaten, die das Eingabemittel eingegeben hat; wobei das Codiermittel eingerichtet ist zum Codieren der vom Verzögerungsmittel verzögerten und vom Quantisierungsmittel unter Verwendung des Quantisierungsschrittes quantisierten Bilddaten, aufgezeigt durch die während der Verzögerung erzeugten Prädiktionsdaten, um so zu bestätigen, ob die codierten Daten innerhalb des vorbestimmten Bereichs liegen.
- Nach einem zweiten Aspekt der vorliegenden Erfindung vorgesehen ist ein Codierverfahren, mit den Verfahrensschritten: Eingeben von Bilddaten; Quantisieren der eingegebenen Bilddaten durch einen vorbestimmten Quantisierungsschritt und Erzeugen von Codemengedaten gemäß der Codemenge, die beim Codieren der quantisierten Bilddaten vorgesehen ist; Empfangen der Codemengendaten und Umsetzen der Codemengendaten in Prädiktionsdaten (n), die den Quantisierungsschritt aufzeigen, durch den eine Codemenge innerhalb des vorbestimmten Bereichs erzielbar ist; Quantisieren der Bilddaten unter Verwendung des Quantisierungsschrittes; und Codieren der Bilddaten, dadurch gekennzeichnet, daß: Bilddaten unterschiedlicher Arten eingebbar sind mit unterschiedlicher Verarbeitung, die ausführbar ist auf der Grundlage der Art der eingegebenen Bilddaten; und darin, daß das Verfahren die Verfahrensschritte umfaßt: Verzögern der vom Eingabemittel eingegebenen Bilddaten; wobei die vom Verzögerungsmittel verzögerten Bilddaten eine Codierung im Verfahrensschritt des Codierens und ein Quantisieren vom Quantisierungsmittel unter Verwendung des Quantisierungsschrittes erfahren, der von den während der Verzögerung erzeugten Prädiktionsdaten aufgezeigt ist, um so zu bestätigen, ob die codierten Daten innerhalb des vorbestimmten Bereichs liegen.
- Ausführungsbeispiele der vorliegenden Erfindung sind nachstehend anhand der beiliegenden Zeichnung beschrieben.
- Fig. 1 ist ein Blockdiagramm, das eine herkömmliche Codiervorrichtung zeigt.
- Fig. 2 ist ein Diagramm, das einen Bereich eines jeden Quantisierungsschrittes darstellt, der verwendet wird zum Quantisieren orthogonal transformierter Bilddaten (zweidimensionale DCT-Daten).
- Fig. 3 ist eine Tabelle, die Beispiele von Schrittgrößen veranschaulicht, die von der Quantisierungsschaltung verwendet werden.
- Fig. 4 ist ein Blockdiagramm, das ein erstes Ausführungsbeispiel nach der Erfindung veranschaulicht.
- Fig. 5 ist ein Graph, der statistische Werte zeigt, die eine Quantisierungsschaltung erzeugt hat.
- Fig. 6 ist ein Blockdiagramm, das ein zweites Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht.
- Fig. 7 ist ein Graph, der statistische Werte zeigt, die eine Quantisierungsschaltung erzeugt hat.
- Fig. 8A bis 8D sind Diagramme, die Teilungen einer Quantisierungsschaltungsgruppe veranschaulichen.
- Fig. 9 ist ein Blockdiagramm, das ein drittes Ausführungsbeispiel der vorliegenden Erfindung veranschaulicht.
- Fig. 10 ist ein Diagramm, das die Beziehung zwischen einer Längenfestlegungseinheit und einer adaptiven Quantisierungsschaltungseinheit zeigt.
- Fig. 11 ist ein Blockdiagramm, das eine Abwandlung des dritten Ausführungsbeispiels nach der Erfindung zeigt.
- Fig. 12 ist ein Blockdiagramm, das ein viertes Ausführungsbeispiel nach der Erfindung veranschaulicht.
- Fig. 13 ist ein Blockdiagramm, das eine Abwandlung des vierten Ausführungsbeispiels nach der Erfindung zeigt.
- Fig. 4 ist ein Blockdiagramm, das das erste Ausführungsbeispiel nach der Erfindung zeigt. In Fig. 4 bedeutet Bezugszeichen 100 einen Eingangsanschluß für orthogonal transformierte Bilddaten (das heißt, für zweidimensionale DCT- Daten). Bezugszeichen 102 bedeutet einen Eingangsanschluß für eine Quantisierungstabellenzahl (oder Quantisierungsschrittgröße). Bezugszeichen 104 bedeutet einen Eingangsanschluß für ein Modussignal (hochauflösendes Bild oder normalauflösendes Bild) eingegebener Bilddaten. Bezugszeichen 106 bedeutet eine Quantisierungsschaltung zum Quantisieren orthogonal transformierter Bilddaten. Bezugszeichen 108 stellt einen FIFO dar zum Verzögern orthogonal transformierter Bilddaten. Bezugszeichen 110 stellt eine Codelängenerzeugungsschaltung dar, die eine Codelänge eines längenvariablen Codes der quantisierten Bilddaten erzeugt (beispielsweise ein zweidimensionaler Huffman-Code, der eine Kombination ist zwischen einer Lauflänge von 0 Daten und einem Wert signifikanter Daten). Bezugszeichen 112 bedeutet eine Addierschaltung zum kumulativen Addieren einer Codelänge, immer wenn ein Code erzeugt wird. Bezugszeichen 114-bedeutet eine Zwischenspeicherschaltung, die eine kumulative Codelänge zeitweilig speichert. Bezugszeichen 116 bedeutet eine Vergleicherschaltung, die einen Quantisierungstabellen- Prädiktionsschwellwert mit einer kumulativen Codelänge vergleicht. Bezugszeichen 118 bedeutet eine Zählschaltung, die den Wert nach unten zählt, wenn die Vergleicherschaltung 116 feststellt, daß der kumulative Wert ein Überschreiten des Prädiktionsschwellwertes darstellt. Bezugszeichen 120 bedeutet eine Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung, die einen Quantisierungstabellen- Prädiktionsschwellwert gemäß der Zählung der Zählschaltung 118 und gemäß dem Modussignal erzeugt. Bezugszeichen 122 stellt eine Zwischenspeicherschaltung dar, die die vorhergesagte Quantisierungstabellennummer zeitweilig speichert.
- Bezugszeichen 124, 126 und 128 bedeuten Eingangs-/Ausgangsanschlüsse für FIFO 108, Zwischenspeicherschaltung 122 und für ein Modussignal. Bezugszeichen 130 bedeutet eine Quantisierungsschaltung, die der Quantisierungsschaltung 106 zur Quantisierung orthogonal transformierter Bilddaten gleicht. Bezugszeichen 132 bedeutet einen FIFO, der dem FIFO 108 zur Verzögerung orthogonal transformierter Bilddaten gleicht. Bezugszeichen 134 bedeutet eine Erzeugungsschaltung für längenvariablen Code, die in derselben arbeitet wie die Erzeugungsschaltung 110 für längenvariablen Code. Bezugszeichen 136 bedeutet eine Addierschaltung, die der Addierschaltung 112 zum kumulativen Addieren einer Codelänge gleicht. Bezugszeichen 138 bedeutet eine Zwischenspeicherschaltung, die der Zwischenspeicherschaltung 114 zum zeitweiligen Speichern der kumulativen Code länge gleicht. Bezugszeichen 140 bedeutet eine Zwischenspeicherschaltung, die die kumulative Codelänge für jede Längenfestlegungseinheit zeitweilig speichert (k kleine Blöcke). Bezugszeichen 142 bedeutet eine Vergleicherschaltung, die die kumulative Codelänge mit einem Zielcodebetrag RK vergleicht. Bezugszeichen 144 bedeutet einen Eingangsanschluß für die Zielcodemenge R. Bezugszeichen 148, 150, 154 und 156 bedeuten Ausgangsanschlüsse für FIFO 132, Vergleicherschaltung 142, Zwischenspeicherschaltung 122 und für ein Modussignal hoher Auflösung (HD) oder Standardauflösung (SD).
- Als nächstes beschrieben ist die Arbeitsweise der Codiervorrichtung, die in der zuvor beschriebenen Weise aufgebaut ist.
- Orthogonal transformierte Bilddaten (zweidimensionale DCT- Daten) für jeden kleinen Block beaufschlagen den Eingangsanschluß und werden geliefert an die Quantisierungsschaltung 106 und an den FIFO 108. Die Quantisierungsschaltung 106 wird beliefert mit einer Quantisierungstabelle QP (0 ≤ p ≤ N-1, das heißt, p = N/2) unter jenen in den Fig. 8A bis 8D gezeigten Quantisierungstabellen, quantisiert die orthogonal transformierten Bilddaten gemäß der gelieferten Quantisierungstabelle QP und liefert die Ergebnisse an die Codelängenerzeugungsschaltung 110. Die Codelängenerzeugungsschaltung 110 erzeugt eine Codelänge mit längenvariablem Code (mit zweidimensionalem Huffman-Code), der bestimmt ist gemäß den auf der Quantisierungsschaltung 106 gelieferten quantisierten Bilddaten, und liefert diese an die Addierschaltung 112. Die Addierschaltung 112 fügt die Codelänge, die aus der Codelängenerzeugungsschaltung 110 kommt, dem kumulativen Wert vergangener Codelängen hinzu, die aus der Zwischenspeicherschaltung 114 kommen, und liefert das Additionsergebnis an die Zwischenspeicherschaltung 114. Die Zwischenspeicherschaltung 114 speichert das addierte Ergebnis aus der Addierschaltung 112 zeitweilig und liefert es an die. Vergleicherschaltung 116 und an die Addierschaltung 112. Die Zwischenspeicherschaltung 114 setzt den zwischengespeicherten Wert auf "0" für jeden Satz von k kleinen Blöcken zurück, welches eine Längenfestlegungseinheit ist. Die Vergleicherschaltung 116 vergleicht den kumulativen Wert der aus der Zwischenspeicherschaltung 114 gelieferten Codelänge mit dem aus der Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 120 gelieferten Wert.
- Der aus, der Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 120 gelieferte Prädiktionsschwellwert ist nachstehend beschrieben. Bilddaten aus k kleinen Blöcken werden mit der Quantisierungstabelle QP quantisiert, und die Codemenge IQP wird errechnet. Zur selben Zeit wird auch eine Quantisierungstabelle Qn für feststehende Länge errechnet, diese Quantisierungstabelle Qn hat eine maximale Codemenge RQn' die der Beziehung R ≤ RK genügt, wobei R eine Zielcodemenge ist und R eine codierte Codemenge ist. Eine Quantisierungstabelle Q'n gemäß der Zielcodemenge RK wird gewonnen durch Interpolation von RQn und RQn+1.
- Werte (IQP, Q'n) für verschiedene in der zuvor beschriebenen Weise errechnete Bilddaten haben eine hohe Korrelation, wie in Fig. 5 gezeigt, und können angenähert werden durch eine Kurve Q'n = f(IQP). Unter Verwendung der Kurve Q'n = L(IQP); wie in Fig. 5 gezeigt, wird die Quantisierungstabelle Q adaptiv zur Längenfestlegung vorhergesagt gemäß der Codemenge IQP, die gewonnen wird durch Quantisieren von Bilddaten aus k kleinen Blöcken unter Verwendung der Quantisierungstabelle QP. Wenn die Codemenge SP(N-1) oder weniger ist, wird eine Quantisierungstabelle QN-1 vorhergesagt, und wenn die Codemenge SP(N-2) oder weniger ist, wird eine Quantisierungstabelle QN-2 vorhergesagt. Auf diese Weise wird die Quantisierungstabelle adaptiv zur Längenfestlegung vorhergesagt.
- Wenn der erste Block von k kleinen Blöcken der Längenfestlegungseinheit die Verarbeitung durch die Quantisierungsschaltung 106 beginnt, wird die Zwischenspeicherschaltung 114 zurückgesetzt auf "0", und die Zählschaltung 118 wird auf einen Zählwert von N-1 gesetzt. Nach Empfang eines Wertes N-1 aus der Zählschaltung 118 liefert die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 120 zuerst einen Prädiktionsschwellwert SP(N-1) an die Vergleicherschaltung 116. Die Vergleicherschaltung 116 vergleicht den Prädiktionsschwellwert SP(N-1) sequentiell mit der aus der Zwischenspeicherschaltung 114 gelieferten kumulativen Codelänge. Wenn der kumulative Wert SP(N-1) oder weniger ist, wird ein L-Pegelsignal an die Zahlschaltung 118 geliefert, und wenn der kumulative Wert SP(N-1)) überschreitet, wird ein H-Pegelsignal an die Zählschaltung 118 geliefert.
- Wenn das aus der Vergleicherschaltung 116 gelieferte Signal das H-Pegelsignal ist, wird die Zählschaltung 118 zum Herunterzählen der Werte auf N-2 veranlaßt und liefert diese an die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 120. Nach Empfang dieses Wertes N-2 liefert die Schaltung 120 den nächsten Prädiktionsschwellwert SP(N-2) an die Vergleicherschaltung 116. Dann vergleicht die Vergleicherschaltung 116 den kumulativen Wert mit SP(N-2) Auf diese Weise vergleicht die Vergleicherschaltung 116 die kumulative Codemenge, die die Zwischenspeicherschaltung 114 liefert, mit dem Prädiktionsschwellwert, den die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 120 liefert, und gibt das L-Pegelsignal, wenn der kumulative Wert der Prädiktionsschwellwert oder kleiner ist, und das H-Pegelsignal, wenn es sich um ein Überschreiten des Prädiktionsschwellwertes handelt, jeweils an Zählschaltung 118 ab. Wenn, das L-Pegelsignal aus der Vergleicherschaltung 116 geliefert wird, hält die Zählschaltung 118 den gegenwärtigen Zählwert, und wenn das H-Pegelsignal geliefert wird, erfolgt Dekrementieren um -1 (Herunterzählen), und das Ergebnis wird an die Quantisierungstabellen-Schwellwerterzeugungsschaltung 120 geliefert. Dann erzeugt diese Schaltung 120 den Prädiktionsschwellwert gemäß der Zählung, die aus der Zählschaltung 118 geliefert wird, und liefert diesen an die Vergleichsschaltung 116.
- Nachdem die Bilddaten des k-ten kleinen Blockes verarbeitet sind, stellt der Zählwert n, der in der Zählschaltung 118 gehalten wird, die Zahl der Prädiktionsquantisierungstabelle Qn dar. Wenn die Bilddaten von k kleinen Blöcken verarbeitet sind, speichert die Zwischenspeicherschaltung 122 den Ausgangswert n der Zählschaltung 118 und liefert ihn an die Quantisierungsschaltung 130. Der FIFO 108 verzögert die orthogonal transformierten Bilddaten um eine Zeit, die erforderlich ist zur Verarbeitung von k kleinen Blöcken. Danach werden die Zwischenspeicherschaltung 114 und die Zählerschaltung 118 erneut initialisiert, um die Verarbeitung der nächsten k kleinen Blöcke zu beginnen.
- Nach Empfang der vom FIFO 108 verzögerten Bilddaten quantisiert die Quantisierungsschaltung 130 die Bilddaten unter Verwendung der Quantisierungstabelle Q gemäß dem Ausgangswert n der Zwischenspeicherschaltung 122 und liefert die quantisierten Bilddaten an die Codelängenerzeugungsschaltung 134. Ebenso wie die Codelängenerzeugungsschaltung 110 erzeugt die Codelängenerzeugungsschaltung 134 eine Codelänge eines längenvariablen codierten Codes (das heißt zweidimensionalen Huffman-Code) quantisierter Bilddaten und liefert diese an die Addierschaltung 136. Ebenso wie die Addierschaltung 112 addiert die Addierschaltung 136 den Ausgangswert der Codelängenerzeugungsschaltung 134 mit dem Wert, der aus der Zwischenspeicherschaltung 138 kommt, und liefert das Additionsergebnis an die Zwischenspeicherschaltung 138. Die Zwischenspeicherschaltung 138 speichert zeitweilig den addierten Wert, den die Addierschaltung 136 liefert, und überträgt diesen zur Addierschaltung 136. Sowohl die Zwischenspeicherschaltung 138 als auch die Zwischenspeicherschaltung 114 werden zurückgesetzt auf "0", wenn der erste kleine Block unter k kleinen Blöcken als die Längenfestlegungseinheit beginnt verarbeitet zu werden.
- Wenn die k kleinen Blöcken als die Längenfestlegungseinheit verarbeitet werden, erfolgt das Zwischenspeichern des kumulativen Wertes RQn von in der Zwischenspeicherschaltung 138 zwischengespeicherten Codelängen durch die Zwischenspeicherschaltung 140, die wiederum diese an die Vergleicherschaltung 142 abgibt. Der kumulative Wert RQn ist eine Codemenge der Bilddaten von k kleinen Blöcken, die nach der Prädiktionsquantisierungstabelle Qn quantisiert und durch die Längenfestlegung codiert wurden. Die Vergleicherschaltung 142 vergleicht die kumulative Codemenge RQn' die die Zwischenspeicherschaltung 140 liefert, mit der Zielcodemenge RK, die aus dem Eingangsanschluß 144 kommt, und gibt ein L- Pegelsignal ab, wenn RQn ≤ RK ist, und gibt ein H-Pegelsignal ab, wenn RQn ≤ RK ist, jeweils aus dem Ausgangsanschluß 150.
- Das FIFO 132 verzögert die orthogonal transformierten Bilddaten (die zweidimensionalen DCT-Daten) um eine Zeit, die erforderlich ist zur Verarbeitung von k kleinen Blöcken, und gibt diese aus dem Ausgangsanschluß 148 ab. Ausgegeben aus dem Ausgangsanschluß 154 wird die Zahl n gemäß der Prädiktionsquantisierungstabelle Qn, die zu verwenden ist für die Längenfestlegung und geliefert wird aus der Zwischenspeicherschaltung 122.
- Eingegeben aus dem Eingangsanschluß 104 ist ein Modussignal, das aufzeigt, ob die eingegebenen Bilddaten für ein hochauflösendes Bild (HD) oder für ein normalauflösendes Bild (SD) sind. Dieses Modussignal wird an die Quantisierungsschaltungen 106 und 130 und an die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 120 geliefert. Die Quantisierungsschaltungen 106 und 130 wählen entweder die Quantisierungstabelle für das hochauflösende Bild (HD) oder die Quantisierungstabelle für das normalauflösende Bild (SD) gemäß dem aus dem Eingangsanschluß 104 gelieferten Modussignal aus. Die Quantisierungstabellen- Prädiktionsschwellwert-Erzeugungsschaltung 120 wählt entweder die Quantisierungstabelle für das hochauflösende Bild (HD) oder die Quantisierungstabelle für das normalauflösende Bild (SD) gemäß dem Modussignal aus, das über den Eingangsanschluß 104 geliefert wird. Die von der Quantisierungsschaltung 130 quantisierten Bilddaten könnten geliefert werden an die nächstfolgende Stufe einer Codierschaltung (nicht dargestellt), um diese in einen längenvariablen Code zu codieren (das heißt in einen zweidimensionalen Huffman-Code).
- Gemäß dem zuvor beschriebenen Ausführungsbeispiel werden eingegebene orthogonal transformierte Bilddaten (zweidimensionale DCT-Bilddaten) nach einer Quantisierungstabelle QP unter jenen Quantisierungstabellen quantisiert, die Codemenge RQP des Codes variabler Länge wird errechnet, und eine Quantisierungstabelle Qn, die zur Längenfestlegung adaptiv ist, wird aus der Codemenge RQP vorhergesagt. Als nächstes werden die orthogonal transformierten Bilddaten unter Verwendung der Prädiktionsquantisierungstabelle Qn quantisiert, um zu bestätigen, ob der Zielcodemenge RK entsprochen wird. Der Umfang an Hardware läßt sich folglich beträchtlich reduzieren im Vergleich zu dem herkömmlichen in Fig. 1 gezeigten Gerät.
- Die Modussignale für das hochauflösende Bild (HD) und das normalauflösende Bild (SD) werden bereitgestellt zur Auswahl der jeweiligen Quantisierungstabellen und dem Schwellwert, Das Codiergerät dieses Ausführungsbeispiels kann folglich sowohl für das Bild mit hoher Auflösung (HD) als auch für das Bild mit normaler Auflösung (SD) verwendet werden.
- Fig. 6 ist ein Blockdiagramm, das das zweite Ausführungsbeispiel nach der Erfindung darstellt. Elemente mit gleichen Funktionen wie jene des ersten Ausführungsbeispiels von Fig. 4 sind mit den identischen Bezugszeichen versehen.
- Lediglich unterschiedliche Punkte gegenüber dem ersten Ausführungsbeispiel sind beschrieben.
- Unter Bezug auf Fig. 6 liefert die Zwischenspeicherschaltung 138 sequentiell die kumulative Codelänge der Bilddaten, die nach einer Quantisierungstabelle quantisiert sind, die in der zuvor beschriebenen Weise vorhergesagt ist, und in variabler Länge codiert sind (beispielsweise zweidimensionaler Huffman-Code), zur Vergleicherschaltung 200, die die kumulative Codelänge mit dem vorhergesagten Schwellwert vergleicht, der aus einer Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204 geliefert wird.
- Als nächstes beschrieben sind drei Arten des Betriebs der Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204.
- (1) Die Zählschaltung 202 setzt ihren Zähler auf N-1 und liefert den Zählwert an die Quantisierungstabellen- Prädiktionsschwellwert-Erzeugungsschaltung 204, wenn die vorhergehende Schaltung B die Verarbeitung k kleiner Blöcke als die Längenlängenfestlegungseinheit abschließt, wenn die Zwischenspeicherschaltung 122 die Anzahl n gemäß der Prädiktionsquantisierungstabelle Qn zeitweilig speichert und abgibt, und wenn die Quantisierungsschaltung 130 die Verarbeitung der k kleinen Blöcke startet, verzögert vom FIFO 108 unter Verwendung der Quantisierungstabelle Qn. Die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204 wird beliefert mit dem Ausgangswert n der Zwischenspeicherschaltung 122 und dem Zählwert N-1 aus der Zählschaltung 202 und erzeugt einen Prädiktionsschwellwert Sn(N-1), er an die Vergleicherschaltung 200 geliefert wird.
- Die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204 speichert, wie in Fig. 7 gezeigt, Prädiktionsschwellwert Sn0, Sn1, ..., Sn(N-1) (n = 0, 1, ..., N-1) für jede der Quantisierungstabellen Q&sub0;, Q&sub1;, ...,QN-1, erzeugt einen Prädiktionsschwellwert Snn' gemäß einem Zählwert n' (n' = 0, 1, ..., N-1) und den Ausgangswert n (n = 0, 1, ..., N-1) des Zählers 202 und gibt den Wert Snn' an den Vergleicher 200 ab. Die Vergleicherschaltung 200 arbeitet in derselben Weise wie die Vergleicherschaltung 116 vom ersten Ausführungsbeispiel. Wenn die Vergleicherschaltung 116 ein L-Pegelsignal abgibt, hält die Zähl Schaltung 202 ihren gegenwärtigen Zählwert, und wenn die Vergleicherschaltung 116 ein H-Pegelsignal abgibt, dekrementiert die Zählschaltung 202 um -1 (Herunterzählen) und liefert das Ergebnis an die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204.
- Wenn die k kleinen Blöcke als Längenfestlegungseinheifc verarbeitet sind, speichert die Zwischenspeicherschaltung 206 zeitweilig den Zählwert n' von der Zählschaltung 202 und gibt diesen an den Ausgangsanschluß 208 ab. Dieser Wert n' zeigt die Quantisierungstabelle Qn auf, die für die Längenfestlegung verwendet wird.
- (2) Im Beispiel (1) speichert die Quantisierungstabellen- Prädiktionsschwellwert-Erzeugungsschaltung 204 den Prädiktionsschwellwert Sn0, Sn1, ..., Sn(N-1) (n = 0, ..., N-1) für jede der Quantisierungstabellen Q0, Q1, ..., QN-1. Da jedoch die erste Prädiktion bereits ausgeführt worden ist von der Prädiktionsschaltung B, können die Prädiktionsschwellwerte beispielsweise die in Fig. 7 gezeigten sein, wie Sn(n+u), ..., Sn(n+1), Snn' Sn(n-1), ..., Sn(n-v) bezüglich des vorhergesagten Wertes n. Beispielsweise ist u = 2 und v = 2, oder es sind andere Werte. In diesem Falle setzt die Zählschaltung 202 nicht einen Wert N-1 sondern einen Wert n + u gemäß dem Wert n, der aus der Zwischenspeicherschaltung 122 kommt. Auf diese Weise kann der Umfang an Hardware der Quantisierungstabellen- Prädiktionsschwellwert-Erzeugungsschaltung 204 reduziert werden.
- (3) In den Beispielen (1) und (2) speichert die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204 die Prädiktionsschwellwerte für jede der Quantisierungstabellen Q&sub0;, Q&sub1;, ..., QN-1, wie in Fig. 8A gezeigt. Wenn im Beispiel (3) die Zwischenspeicherschaltung 122 als erstes Prädiktionsergebnis N-7 abgibt, wird die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204 beispielsweise, wie in Fig. 8C gezeigt, einen Prädiktionsschwellwert unter Verwendung der Quantisierungstabelle QN-6 erzeugen. Insbesondere wird der Prädiktionsschwellwert erzeugt durch QN-2, wenn der Ausgangswert n der Zwischenspeicherschaltung 122 N-4 ≤ n ≤ N-1 ist, durch QN-6, wenn der Ausgangswert n N-8 ≤ n ≤ N-5, ... ist, und durch Q&sub2;, wenn der Ausgangswert n 0 ≤ n ≤ 3 ist. Auf diese Weise kann der Umfang an Hardware der Quantisierungstabellen- Prädiktionsschwellwert-Erzeugungsschaltung 204 weiter reduziert werden. Das Teilen der Quantisierungstabellen kann so erfolgen, wie in den Fig. 8B und 8D zusätzlich zu Fig. 8C gezeigt ist.
- Die Quantisierungstabellen-Prädiktionsschwellwert- Erzeugungsschaltung 204 wählt ebenso wie im ersten Ausführungsbeispiel den Prädiktionsschwellwert für entweder die Quantisierungstabelle für das Bild hoher Auflösung (HD) oder für die Quantisierungstabelle für das Bild normaler Auflösung (SD) aus gemäß dem Bildmodussignal für hohe Auflösung (HD) oder gemäß dem Bildmodussignal für normale Auflösung (SD), die aus dem Eingangsanschluß 104 geliefert werden.
- Gemäß dem ersten Prädiktionswert n gemäß diesem Ausführungsbeispiel, gewonnen durch die erste Quantisierungstabelle, wird die zweite Quantisierungstabelle vorhergesagt. Die Quantisierungstabelle n', die zu der präzisen Längenfixierung adaptiver ist, kann folglich vorhergesagt werden.
- Fig. 9 ist ein Blockdiagramm, das das dritte Ausführungsbeispiel dieser Erfindung darstellt. Elemente mit gleichen Funktionen wie jene des ersten und zweiten Ausführungsbeispiels von den Fig. 4 und 6 sind mit identischen Bezugszeichen versehen. Nur abweichende Punkte gegenüber dem ersten und zweiten Ausführungsbeispiel werden beschrieben.
- Unter Bezug auf Fig. 9 quantisiert eine Quantisierungsschaltung 300 orthogonal transformierte Bilddaten (zweidimensionale DCT-Bilddaten), die vom FIFO 132 verzögert wurden unter Verwendung der Quantisierungstabelle Q, gemäß dem Wert n', der die vorhergesagte Quantisierungstabelle aufzeigt, geliefert aus der Zwischenspeicherschaltung 206. Die quantisierten Bilddaten werden geliefert an die Codelängenerzeugungsschaltung 304, die den Codelängeerzeugungsschaltungen 110 und 134 gleicht, erzeugt eine Codelänge längenvariablen Codes (zweidimensionaler Huffman- Code), der den quantisierten Bilddaten adaptiv ist, und liefert ihn an die Addierschaltungen 306 und 320. Die Addierschaltung 306 fügt die Codelänge, die aus der Codelängenerzeugungsschaltung 304 kommt, dem kumulativen Wert hinzu, der aus einer Zwischenspeicherschaltung 308 geliefert wird, und liefert das Additionsergebnis an die Zwischenspeicherschaltung 308.
- Die Zwischenspeicherschaltung 308 speichert das addierte Ergebnis zeitweilig, das aus der Addierschaltung 306 kommt, und liefert es an die Addierschaltungen 306 und 316. Die Zwischenspeicherschaltung 308 wird ebenso wie die Zwischenspeicherschaltungen 114 und 138 zurückgesetzt auf "0", immer wenn die k kleinen Blöcke als Längenfixiereinheit verarbeitet sind. Nachdem k kleine Blöcke als Längenfixiereinheit verarbeitet wurden, speichert folglich die Zwischenspeicherschaltung 8 zeitweilig die Codemenge RQn der k kleinen Blöcke, die nach der vorhergesagten Quantisierungstabelle Qn quantisiert und in Längenfixierung codiert sind. Die Codemenge RQn der k kleinen Blöcke, zwischengespeichert von der Zwischenspeicherschaltung 308, werden geliefert an einen Vergleicher 310, der ebenfalls beliefert wird mit der Zielcodemenge RK über einen Eingangsanschluß 314. Wenn RQn' ≤ RK ist, gibt die Vergleicherschaltung 310 "0" ab (L-Pegelsignal), und wenn RQn' > RK ist, gibt die Vergleicherschaltung 310 "1" ab (H-Pegelsignal), jeweils an eine Zwischenspeicherschaltung 312. Die Zwischenspeicherschaltung 312 speichert zeitweilig das Vergleichsergebnissignal von der Vergleicherschaltung 310. Mit anderen Worten, die Zwischenspeicherschaltung 312 speichert zeitweilig ein Signal, das aufzeigt, ob die Codemenge innerhalb der Zielcodemenge liegt oder ob ein Überlauf vorliegt. Ein Ausgangssignal der Zwischenspeicherschaltung 308 wird auch an die Addierschaltung 316 geliefert.
- Die Addierschaltung 316 gibt eine Differenz zwischen dem Ausgangssignal der Zwischenspeicherschaltung 308 und der Zielcodemenge RK ab, die geliefert wird über den Eingangsanschluß 314. Die Zwischenspeicherschaltung 318 speichert zeitweilig und gibt eine Differenz def Qn' = RK-RQn' zwischen der Zielcodemenge RK, die von der Addierschaltung 316 kommt, und der Codemenge RQn' der Bilddaten ab, die nach der Quantisierungstabelle Qn' quantisiert und in Längenfixierung codiert sind. Eine Addierschaltung 320 addiert die Codelänge, erzeugt von der Codelängenerzeugungsschaltung 304, zum kumulativen Wert, der geliefert aus einer Zwischenspeicherschaltung 3232, und liefert den addierten Wert an die Zwischenspeicherschaltung 322.
- Beim Senden oder Aufzeichnen codierter Daten wird es auf der Decodierseite erforderlich zu wissen, welche Quantisierungstabelle auf der Codierseite verwendet worden ist. Die zur Quantisierung verwendete Quantisierungstabelle wird folglich gesendet oder aufgezeichnet gemeinsam mit den codierten Daten durch irgendeines der Sende- oder Aufzeichnungsverfahren. Es wird angenommen, daß, wie in Fig. 10 gezeigt. Bilddaten gesandt werden in die h kleine Blockeinheit (1 ≤ h ≤ k, wobei h ein Divisor von k ist), dann wird die Zwischenspeicherschaltung 322 auf "0" zurückgesetzt, immer wenn h kleine Blöcke (jeder in Fig. 10 gezeigter Punkt) während der Verarbeitungsdauer der k kleinen Blöcke als Längenfixiereinheit verarbeitet sind. Mit anderen Worten, die Zwischenspeicherschaltung 322 gibt die Codemenge RQn'r (0 ≤ r ≤ k/(h-1)) alle h kleinen Blöcke ab.
- Ein FIFO 324 empfängt einen Wert der Zwischenspeicherschaltung 322, bevor er auf "0" zurückgesetzt wird, das heißt/ er empfängt die Codemenge RQn'r (Codemenge für h kleine Blöcke) am b-Punkt, der in Fig. 10 gezeigt ist. Der FIFO 324 empfängt nämlich einen Wert für k/h kleine Blöcke während der Verarbeitungsdauer der k/h kleinen Blöcke als Längenfestlegungseinheit. Ein FIFO 302 verzögert die orthogonal transformierten Bilddaten (zweidimensionale DCT-Daten) um eine Zeit, die für die obigen Prozesse erforderlich ist.
- Als nächstes quantisiert, gemäß dem Wert n', der die vorhergesagte Quantisierungstabelle aufzeigt und aus der Zwischenspeicherschaltung 206 und mit dem Ausgangssignal aus der Zwischenspeicherschaltung 312 geliefert wird, eine Quantisierungsschaltung 338 die vom FIFO 302 gelieferten verzögerten Bilddaten durch Auswahl der Quantisierungstabelle Qn'+1, die eins kürzeren Quantisierungsschritt als die Quantisierungstabelle Qn' hat, wenn das Signal der Zwischenspeicherschaltung auf "0" ist (L-Pegelsignal), und durch Auswahl der Quantisierungstabelle Qn'-1, die einen längeren Quantisierungsschritt als die Quantisierungstabelle Q, hat, wenn das Signal der Zwischenspeicherschaltung 312 auf "1" ist (H- Pegelsignal). Nachdem die verzögerten Bilddaten von der Quantisierungsschaltung 338 quantisiert sind, werden sie geliefert an die Codelängenerzeugungsschaltung 342. Wie auch bei den Codelängenerzeugungsschaltungen 110, 134 und 304, erzeugt die Codelängenerzeugungsschaltung 342 eine Codelänge eines längenvariablen Codes und liefert diese an eine Addierschaltung 344.
- Die Addierschaltung 344 addiert die Codelänge, die von der Codelängenerzeugungsschaltung 342 geliefert wird, zur kumulativen Codelänge, die aus einer Zwischenspeicherschaltung 346 geliefert wird, und liefert den addierten Wert an die Zwischenspeicherschaltung 346. Die Zwischenspeicherschaltung 346 speichert zeitweilig das Ausgangssignal der Addierschaltung 344 und gibt es an die Addierer 344, 348 und 352 ab. Ebenso wie die Zwischenspeicherschaltung 322 wird die Zwischenspeicherschaltung 346 auf "0" zurückgesetzt, immer wenn h (1 ≤ h ≤ k) kleine Blöcke während der Verarbeitungsdauer von k kleinen Blöcken verarbeitet sind als die Längenfestlegungseinheit. Zur der Zeit/ wenn die Zwischenspeicherschaltung 346 zeitweilig die Codemenge RQ(n'+1)r (0 ≤ r ≤ k/h(h-1)) speichert, wenn das Ausgangssignal der Zwischenspeicherschaltung 312 "0" ist, oder die Codemenge RQ(n'-1)r speichert, wenn das Ausgangssignal der Zwischenspeicherschaltung 312 gleich "1" ist, wird die Codemenge RQn'r aus dem FIFO 224 gelesen zum Errechnen einer Differenz von RQ(n'+1)r-RQn'r (oder RQ(n'-1)r-RQn'r) in er Addierschaltung 352. Eine Zwischenspeicherschaltung 354 speichert zeitweilig die errechnete Differenz von RQ(n'+1)r-RQn'r (der RQ(n'-1)r-RQn'r) und liefert sie an einen FIFO 356, der sie lädt. Als nächstes beschrieben ist die Arbeitsweise dieses Codiergerätes für die Fälle, bei denen das Ausgangssignal der Zwischenspeicherschaltung 312 gleich "0" oder gleich "1" ist.
- (1) Wenn das Ausgangssignal der Zwischenspeicherschaltung 312 gleich "0" ist (L-Pegel), wählt ein Schalter 364 einen Anschluß b aus, um eine Ausgangssignal def Qn' = RK-RQn' der Zwischenspeicherschaltung 318 an eine Zwischenspeicherschaltung 362 zu liefern. Die Zwischenspeicherschaltung 362 lädt def Qn'. Nachdem das Errechnen der Codelänge der Bilddaten von k kleinen Blöcken abgeschlossen ist und die k/h Werte RQ(n'+1)0-n'0, RQ(n'+1)1-RQn'1, ..., RQ(n'+1)(k/h-1))-RQn'(k/(h-1)) in den FIFO 356 geladen wurden, erfolgt zunächst das Lesen von RQ(n'+1)0-RQn'0 aus dem FIFO 356 und dessen Ausgabe an eine Addierschaltung 358. Die Addierschaltung 358 subtrahiert RQ(n'+1)0-RQn'0 vom Ausgangssignal def Qn, der Zwischenspeicherschaltung 362 und liefert das Ergebnis def Qn'-RQ(n'+1)0-RQn'0 an einen Anschluß a des Schalters 360 und an eine Quantisierungstabellenentscheidungsschaltung 366.
- Die Quantisierungstabellenentscheidungsschaltung 366 entscheidet die Quantisierungstabelle Qn'+1 für die h kleinen Blöcke in diesem Abschnitt (A&sub0;-Abschnitt in Fig. 10), wenn das Ausgangssignal def Qn'-(RQ(n'+1)0RQn'0) gleich "0" oder größer ist, und steuert zur Auswahl des Anschlusses a den Schalter 360. Die Zwischenspeicherschaltung 362 speichert zeitweilig das Ausgangssignal def Qn'-(RQ(n'+1)0-n'0) und liefert dieses an die Addierschaltung 358. Im entgegengesetzten Falle entscheidet die Quantisierungstabellenentscheidungsschaltung 366 die Quantisierungstabelle Qn' für die h kleinen Blöcke in diesem Abschnitt (A0-Abschnitt in Fig. 10), wenn das Ausgangssignal def Qn'-(RQ(n'+1)0-RQn'0) negativ ist, und steuert die Auswahl des Anschlusses b den Schalter 360. Die Zwischenspeicherschaltung 362 speichert zeitweilig erneut das Ausgangssignal def Qn' und liefert dieses an die Addierschaltung 358.
- Als nächstes wird RQ(n'+1)1-RQn'1 aus dem FIFO 356 gelesen und ausgegeben an die Addierschaltung 358. Die Addierschaltung 358 subtrahiert RQ(n'+1)1-RQn'1 vom Ausgangssignal der Zwischenspeicherschaltung 362 und liefert das Ergebnis an den Anschluß a des Schalters 360 und an die Quantisierungstabellenentscheidungsschaltung 366. Ebenso wie oben entscheidet die Quantisierungstabellenentscheidungsschaltung 366 die Quantisierungstabelle Qn'+1 für die h kleinen Blöcke in diesem Abschnitt (A&sub1;-Abschnitt in Fig. 10), wenn das Ausgangssignal der Addierschaltung 358 gleich "0" oder größer ist, und steuert die Auswahl des Anschlusses a vom Schalter 360. Die Zwischenspeicherschaltung 362 speichert zeitweilig das Ausgangssignal der Addierschaltung. Im entgegengesetzten Falle entscheidet die Quantisierungstabellenentscheidungsschaltung 366 die Quantisierungstabelle Q, für die h kleinen Blöcke in diesem Abschnitt (A&sub1;-Abschnitt in Fig. 10), wenn das Ausgangssignal der Addierschaltung 358 negativ ist, und steuert die Auswahl des Anschlusses b des Schalters 360. Die Zwischenspeicherschaltung 362 speichert zeitweilig erneut das Ausgangssignal def Qn'.
- In der zuvor beschriebenen Weise werden Quantisierungstabellen für die Abschnitte A&sub0;, A&sub1;, ..., A(k/(h-1)) sequentiell entschieden. Wenn beispielsweise k = 30 und h = 6 ist, werden Quantisierungstabellen Qn'+1, Qn', Qn'+1, Qn', Qn+1 Qn') für die Abschnitte (A&sub0;, A&sub1;, A&sub2;, A&sub3;, A&sub4;) entschieden. Die Quantisierungstabelle, auf die entschieden wurde, wird über einen Anschluß 370 gesendet. Ein FIFO 340 verzögert die orthogonal transformierten Bilddaten um eine Zeit, die erforderlich ist, die Quantisierungstabelle zu entscheiden.
- (2) Als nächstes wird die Operation beschrieben, wenn die Zwischenspeicherschaltung 312 "1" (H-Pegel beim Zugriff der Zielcodemenge R) ausgibt.
- Zu Beginn der Verarbeitung der k kleinen Blöcke als die Mengenfestlegungseinheit wird die Zwischenspeicherschaltung 350 geladen mit der Zielcodemenge RK über den Eingangsanschluß 314. Wenn die Codemenge in der Zwischenspeicherschaltung 346 einen Wert von RQ(n'-1)0 gemäß dem Abschnitt A&sub0; annimmt, der in Fig. 10 gezeigt ist, errechnet die Addierschaltung 348 RK-R(n'-1)0 und liefert das Ergebnis an die Zwischenspeicherschaltung 350, die das Ausgangssignal RK-R(n'-1)0 der Addierschaltung 348 zeitweilig speichert. Wenn die Codemenge der Zwischenspeicherschaltung 346 einen Wert von RQ(n'-1)1 gemäß dem Abschnitt A&sub1; annimmt, der in Fig. 10 gezeigt ist, subtrahiert die Addierschaltung 348 den Wert RQ(n'-1)1 aus dem Ausgangssignal RK-R(n'-1)0 der Zwischenspeicherschaltung 350 und gibt RK-R(n'-1)0 an die Zwischenspeicherschaltung 350 ab, die das Ausgangssignal RK-R(n'-1)0-RQ(n'-1)1 der Addierschaltung 348 zeitweilig speichert.
- Wenn die k kleinen Blöcke verarbeitet werden, ist der von der Zwischenspeicherschaltung 350 zeitweilig gespeicherte Wert gleich def Q(n'-1) = RK-R(n'-1)0-RQ(n'-1)1- ... - R(n'-1)(k/(h-2) -Rn'-1)(k/(h-1)). Wenn der Wert def Q(n'-1) gewonnen ist, wird der Anschluß a des Schalters 364 ausgewählt und der Wert def Q(n'-1) wird in die Zwischenspeicherschaltung 362 geladen. Ebenso wie im Beispiel (1) werden die k/h-Werte RQ(n'-1)0-RQn'0, Q(n'-1)1- RQn'1, ..., RQ(n'-1)(k/(h-1))- RQn-(k/(h-1)) in den FIFO 356 geladen.
- Im Beispiel (1) subtrahiert die Addierschaltung 358 den vom FIFO 356 gelesenen Wert aus dem Ausgang der Zwischenspeicherschaltung 362. Die in den FIFO in diesem Beispiel (2) eingegebenen Werte einschließlich der k/h-Werte RQ(n'-1)0-RQn'0, RQ(n'-1)1-RQn', ..., RQ(n'-1)(k/(h-1))- RQn'(k/(h-1)) sind negativ. Die Addierschaltung 358 addiert das Ausgangssignal der Zwischenspeicherschaltung 362 zum Ausgangssignal vom FIFO 356, und die anderen Operationen sind dieselben wie im Beispiel (1). Auf diese Weise werden die Quantisierungstabellen für die Abschnitte A&sub0;, A&sub1;, ..., Ak/(h-1) entschieden. Wenn beispielsweise k = 30 und h = 6 ist, werden die Quantisierungstabellen (Qn', Qn', Qn'-1, Qn'-1, Qn'-1) für die Abschnitte (Ag, A&sub1;, A&sub2;, A&sub3;, A&sub4;) entschieden.
- Die Quantisierungsschaltungen 300, 338 wählen entweder die Quantisierungstabelle für das Bild hoher Auflösung (HD) oder die Quantisierungstabelle für das Bild mit normaler Auflösung (SD) aus gemäß dem Bildmodussignal für hohe Auflösung (HD) oder gemäß dem Bildmodussignal für normale Auflösung (SD), die geliefert werden über den Eingangsanschluß 104.
- Gemäß diesem Ausführungsbeispiel, wie es zuvor beschrieben ist, werden die k kleinen Blöcke als Längenfestlegungseinheit quantisiert unter Verwendung der vorhergesagten Quantisierungstabelle, und die Codemenge wird errechnet. Die Bilddaten werden weiter quantisiert unter Verwendung der Quantisierungstabelle mit einer Schrittweite, die kürzer als die andere Quantisierungstabelle ist, die durch die Differenz aus der Zielcodemenge vorhergesagt wurde, oder unter Verwendung einer Quantisierungstabelle mit einer längeren Schrittweite. Auf diese Weise wird die Quantisierungstabelle entschieden, um so den Unterschied zwischen der Zielcodemenge für die h (1 ≤ h ≤ k) kleinen Blockeinheit so klein wie möglich zu machen. Geringer verschlechterte und hochgenaue Bilder lassen sich folglich erzeugen. Darüber hinaus kommt man zurecht mit einem Überlauf, der aufgrund eines Fehlers der Prädiktion entstanden ist.
- Dieses Ausführungsbeispiel läßt sich auch durch die in Fig. 11 gezeigte Struktur realisieren. Die in Fig. 11 gezeigte Schaltung beseitigt die Schaltung von Fig. 9, die zwischen die Anschlüsse 124, 126 und 128 und die Anschlüsse 148, 208 und 156 geschaltet ist. Die Arbeitsweise dieser Schaltung ist dieselbe wie beim obigen Ausführungsbeispiel, und eine Beschreibung dieser ist hier fortgelassen. Der Umfang an Hardware kann mit dieser Schaltung weiter reduziert werden.
- Fig. 12 ist ein Blockdiagramm, das das vierte Ausführungsbeispiel nach der Erfindung zeigt. Elemente, die dieselben Funktionen wie jene des ersten bis dritten Ausführungsbeispiels haben, sind mit identischen Bezugszeichen versehen. Lediglich abweichende Punkte gegenüber dem ersten bis dritten Ausführungsbeispiel werden hier beschrieben.
- Unter Bezug auf Fig. 12 sortiert eine Sortierschaltung 500 die von der Zwischenspeicherschaltung 354 zeitweilig gespeicherten Werte in absteigender Reihenfolge von ihren Absolutwerten. Es wird angenommen, daß k = 30 und h = 6 ist und das Ausgangssignal der Zwischenspeicherschaltung 312 auf "0" (L-Pegel) ist, und die Arbeitsweise dieser Schaltung wird beschrieben. Die Sortierschaltung 500 sortiert die von der Zwischenspeicherschaltung 354 zeitweilig gespeicherten Werte, einschließlich der Werte RQ(n'+1)0-RQn'0, RQ(n'+1)1-RQn'1, ..., RQ(n'+1)4-RQn'4n absteigender Reihenfolge von ihren Absolutwerten, beispielsweise in RQ(n'+1)2RQn'2, RQ(n'+1)0- RQn'0, RQ(n'+1)3-RQn'3, RQ(n'+1)1-RQn'1 und RQ(n'+1)4-RQn'4. Der Wert wird in der sortierten Reihenfolge gelesen, zuerst der Wert in RQ(n'+1)2-RQn'2, und die gleichen Verarbeitungen wie im dritten Ausführungsbeispiel kommen zur Ausführung. In diesem Falle empfängt die Quantisierungstabellenentscheidungsschaltung 502 eine Sortierinformation aus der Sortierschaltung 500 und entscheidet für die Quantisierungstabelle in der Reihenfolge der Abschnitte (A&sub2;, A&sub0;, A&sub3;, A&sub1;, A&sub4;), die in Fig. 10 gezeigt sind. Die Arbeitsweisen der Sortierschaltung 500 und der Quantisierungstabellenentscheidungsschaltung 502 sind grundsätzlich gleich auch für den Fall, bei dem das Ausgangssignal der Zwischenspeicherschaltung 312 auf "1" (H-Pegel) ist, und so wird die Beschreibung darüber hier fortgelassen. Ebenso wie das dritte Ausführungsbeispiel ist dieses Ausführungsbeispiel auch kompatibel sowohl mit den Bildern für hohe Auflösung (HD) als auch für Bilder mit normaler Auflösung (SD).
- Wie zuvor gemäß dem vierten Ausführungsbeispiel beschrieben, werden die k kleinen Blöcke als Längenfestlegungseinheit quantisiert unter Verwendung der vorhergesagten Quantisierungstabelle, und die Codemenge wird errechnet. Die Bilddaten wird weiter quantisiert unter Verwendung einer Quantisierungstabelle mit einer Schrittweite, die kürzer ist als andere Quantisierungstabellen, die durch die Differenz zwischen der Zielcodemenge vorhergesagt wurden, oder durch Verwendung einer Quantisierungstabelle mit einer längeren Schrittweite. Ein Unterschied zwischen der Codemenge bezüglich der Quantisierungstabelle, die durch die h (1 ≤ h ≤ k) kleine Blockeinheit vorhergesagt wurde, wird errechnet. Je größer der Absolutwert der Differenz ist, um so größer ist die Codemenge, die zugeordnet ist, um so die Codemenge nahe an die Zielcodemenge zu bringen. Geringere Verschlechterung und genauere Bilder können folglich erzeugt werden. Darüber hinaus kann man zurecht kommen mit einem Überlauf, der verursacht wird durch einen Fehler der Prädiktion.
- Dieses Ausführungsbeispiel läßt sich auch realisieren durch die in Fig. 13 gezeigte Struktur. Die in Fig. 13 gezeigte Schaltung ersetzt die Schaltung von Fig. 12, die zwischen die Anschlüsse 124, 126 und 128 und die Anschlüsse 148, 208 und 156 geschaltet ist. Die Arbeitsweise dieser Schaltung ist dieselbe wie die des obigen Ausführungsbeispiels, und somit wird eine Beschreibung dieser hier fortgelassen. Mit dieser Schaltung kann der Umfang an Hardware weiter reduziert werden.
- In diesem Ausführungsbeispiel in den FIFO 324 eingegebenen Werte RQn'r(0 ≤ r ≤ k/(h-1)) oder die ausgegebenen Werte RQ(n'+1)r oder RQ(n'-1)r er Zwischenspeicherschaltung 346 können in absteigender Reihenfolge sortiert werden, und die Quantisierungstabelle wird in dieser Reihenfolge entschieden.
- Die soweit beschriebenen Strukturen der obigen Ausführungsbeispiele stellen einen Quantisierer bereit, der in der Lage ist zur Längenfestlegung mit einem kleinen Umfang an Hardware, und es können Bilder mit geringerer Verschlechterung und hoher Qualität erzeugt werden.
- Wenn die errechnete Codemenge die Zielcodemenge oder weniger ist, wird der Quantisierer mit einem feineren Quantisierungsschritt als beim vorhergesagten Quantisierer verwendet. Wenn die errechnete Codemenge die Zielcodemenge überschreitet, wird der Quantisierer mit einem gröberen Quantisierungsschritt als beim vorhergesagten Quantisierer verwendet. Die zwei Quantisierer werden adaptiv ausgewählt in der Längenfestlegungseinheit (in k kleinen Blöcken). Auf diese Weise kann die Längenfestlegung mit geringerer Differenz von der Zielcodemenge ausgeführt werden, und es lassen sich Bilder hoher Qualität erzeugen.
Claims (13)
1. Codiervorrichtung, mit:
einem Eingabemittel (100) zum Eingeben von Bilddaten;
einem Erzeugungsmittel (106) zum Quantisieren der vom
Eingabemittel eingegeben Bilddaten durch einen vorbestimmten
Quantisierungsschritt und Erzeugen von Codemengendaten (IQP)
gemäß dem Umfang des Codes, der vorgesehen ist, wenn das
Codieren der quantisierten Bilddaten erfolgt;
einem Wandlermittel (116, 118, 120, 122) zum Empfangen der
Codemengendaten (IQP) und Umsetzen der Codemengendaten (IQP) in
Prädiktionsdaten (n), die den Quantisierungsschritt aufzeigen,
durch den eine Codemenge innerhalb eines vorbestimmten Bereichs
erzielbar ist;
einem Quantisierungsmittel (130) zum Quantisieren der
Bilddaten unter Verwendung des Quantisierungsschrittes; und
einem Codiermittel (134) zum Codieren der Bilddaten,
dadurch gekennzeichnet, daß:
das Eingabemittel (100) bestimmt ist zur Eingabe von
Bilddaten unterschiedlicher Arten;
das Wandlermittel (116, 118) eingerichtet ist zum Ausführen
unterschiedlicher Verarbeitung auf der Grundlage der Art der
eingegebenen Bilddaten;
und darin, daß das Gerät ausgestattet ist mit:
einem Verzögerungsmittel (108) zum Verzögern der Bilddaten,
die das Eingabemittel (100) eingegeben hat;
wobei das Codiermittel (134) eingerichtet ist zum Codieren
der vom Verzögerungsmittel (108) verzögerten und vom
Quantisierungsmittel (130) unter Verwendung des
Quantisierungsschrittes quantisierten Bilddaten, aufgezeigt
durch die während der Verzögerung erzeugten Prädiktionsdaten
(n)
, um so zu bestätigen, ob die codierten Daten innerhalb des
vorbestimmten Bereichs (R) liegen.
2. Vorrichtung nach Anspruch 1, bei der das Eingabemittel (100)
eingerichtet ist zur Eingabe der Bilddaten in Blöcken, wobei
jeder Block eine vorbestimmte Anzahl von Pixeln umfaßt.
3. Vorrichtung nach Anspruch 2, bei der die Codemenge für jeden
von m Blöcken von Bilddaten steuerbar ist, wobei m eine Ganzzahl
ist.
4. Vorrichtung nach einem der vorstehenden Ansprüche, bei der
die Prädiktionsdaten Daten in einer Tabelle (Qn) sind, die
Quantisierungsschrittdaten speichert, um die Codemenge in den
vorbestimmten Bereich zu bringen, wenn das Codieren der Daten
erfolgt.
5. Vorrichtung nach Anspruch 4, bei der die Tabelle auf der
Grundlage der Art von eingegebenen Bilddaten unterschiedlich
ist.
6. Vorrichtung nach einem der vorstehenden Ansprüche, bei der
das Eingabemittel eingerichtet ist zur Eingabe von Bilddaten
hoher Auflösung oder Bilddaten in Normauflösung.
7. Codierverfahren, mit den Verfahrensschritten:
Eingeben von Bilddaten;
Quantisieren der eingegebenen Bilddaten durch einen
vorbestimmten Quantisierungsschritt und Erzeugen von
Codemengedaten (IQP) gemäß der Codemenge, die beim Codieren der
quantisierten Bilddaten vorgesehen ist;
Empfangen der Codemengendaten (IQP) und Umsetzen der
Codemengendaten (IQP) in Prädiktionsdaten (n), die den
Quantisierungsschritt aufzeigen, durch den eine Codemenge
innerhalb des vorbestimmten Bereichs erzielbar ist;
Quantisieren der Bilddaten unter Verwendung des
Quantisierungsschrittes; und
Codieren der Bilddaten,
dadurch gekennzeichnet, daß:
Bilddaten unterschiedlicher Arten eingebbar sind mit
unterschiedlicher Verarbeitung, die ausführbar ist auf der
Grundlage der Art der eingegebenen Bilddaten;
und darin, daß das Verfahren die Verfahrensschritte umfaßt:
Verzögern der vom Eingabemittel (100) eingegebenen
Bilddaten;
Wobei die vom Verzögerungsmittel (108) verzögerten Bilddaten
eine Codierung im Verfahrensschritt des Codierens und ein
Quantisieren vom Quantisierungsmittel (130) unter Verwendung des
Quantisierungsschrittes erfahren, der von den während der
Verzögerung erzeugten Prädiktionsdaten (n) aufgezeigt ist, um so
zu bestätigen, ob die codierten Daten innerhalb des
vorbestimmten Bereichs (R) liegen.
8. Verfahren nach Anspruch 7, bei dem die Eingabe der Bilddaten
blockweise erfolgt, wobei jeder Block über eine vorbestimmte
Anzahl von Pixeln verfügt.
9. Verfahren nach Anspruch 8, bei dem die Codemenge steuerbar
ist für jeden der Blöcke von Bilddaten und wobei m eine Ganzzahl
ist.
10. Verfahren nach wenigstens einem der Ansprüche 7 bis 9, bei
dem die Prädiktionsdaten Daten in einer Tabelle (Qn) sind, die
Quantisierungsschrittdaten speichert, um die Codemenge im
vorbestimmten Bereich zu erhalten, wenn das Codieren der Daten
erfolgt.
11. Verfahren nach Anspruch 10, bei dem sich die Tabelle auf der
Grundlage der Art eingegebener Bilddaten unterscheidet.
12. Verfahren nach wenigstens einem der Ansprüche 7 bis 11, bei
dem das Eingabemittel eingerichtet ist zur Eingabe von Bilddaten
hoher Auflösung oder von Bilddaten in genormter Auflösung.
13. Signal, das codierte Bilddaten trägt, die eine Vorrichtung
nach wenigstens einem der Ansprüche 1 bis 6 erzeugt, oder nach
einem Verfahren gemäß wenigstens einem der Ansprüche 7 bis 12.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP32011894A JPH08181987A (ja) | 1994-12-22 | 1994-12-22 | 符号化装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE69527770D1 DE69527770D1 (de) | 2002-09-19 |
| DE69527770T2 true DE69527770T2 (de) | 2003-04-03 |
Family
ID=18117901
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE69527770T Expired - Lifetime DE69527770T2 (de) | 1994-12-22 | 1995-12-20 | Bildkodierungsverfahren und -vorrichtung mit Schätzung der Datenmenge |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5905578A (de) |
| EP (1) | EP0719052B1 (de) |
| JP (1) | JPH08181987A (de) |
| DE (1) | DE69527770T2 (de) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100626994B1 (ko) * | 1997-07-29 | 2006-09-22 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 가변 비트 레이트 비디오 코딩 방법 및 대응 비디오 코더 |
| CN1192632C (zh) * | 1997-07-29 | 2005-03-09 | 皇家菲利浦电子有限公司 | 可变比特率视频编码方法和相应的视频编码器 |
| GB2356510B (en) * | 1999-11-18 | 2004-04-21 | Sony Uk Ltd | Data compression |
| EP1173025A1 (de) * | 2000-07-10 | 2002-01-16 | STMicroelectronics S.r.l. | Verfahren zum Komprimieren Digitaler Bilder |
| EP1391121B1 (de) | 2001-03-23 | 2012-08-15 | Nokia Corporation | Codierung variabler länge |
| JP2003032677A (ja) * | 2001-07-18 | 2003-01-31 | Hitachi Ltd | 動画像圧縮符号化装置 |
| US7418148B2 (en) * | 2003-09-29 | 2008-08-26 | Casio Computer Co., Ltd. | Image compression method and image compression device |
| EP1632902B1 (de) | 2004-09-03 | 2007-12-05 | STMicroelectronics S.r.l. | System und Verfahren zur Bildkodierung und zugehöriges Rechnerprogrammprodukt |
| JP4794987B2 (ja) * | 2005-11-09 | 2011-10-19 | キヤノン株式会社 | 映像信号処理装置 |
| JP5484083B2 (ja) | 2010-01-14 | 2014-05-07 | 株式会社メガチップス | 画像処理装置 |
| JPWO2013154028A1 (ja) * | 2012-04-13 | 2015-12-17 | ソニー株式会社 | 画像処理装置および方法 |
Family Cites Families (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2638926A1 (fr) * | 1988-11-10 | 1990-05-11 | Labo Electronique Physique | Procede, dispositif de codage numerique d'images de tele a haute definition; dispositif de decodage correspondant, systeme de transmission d'images equipe d'un etage d'emission et d'un de reception incluant un tel dispositif de codage ou de decodage; etages d'emission et de reception comprenant de tels dispositifs |
| US5170264A (en) * | 1988-12-10 | 1992-12-08 | Fuji Photo Film Co., Ltd. | Compression coding device and expansion decoding device for a picture signal |
| US5073821A (en) * | 1989-01-30 | 1991-12-17 | Matsushita Electric Industrial Co., Ltd. | Orthogonal transform coding apparatus for reducing the amount of coded signals to be processed and transmitted |
| DE69026143T2 (de) * | 1989-06-07 | 1996-08-22 | Canon Kk | Kodefehler korrigierende Vorhersage-Decodiervorrichtung |
| US5086488A (en) * | 1989-08-19 | 1992-02-04 | Mitsubishi Denki Kabushiki Kaisha | Transform coding apparatus |
| JP3071205B2 (ja) * | 1990-01-23 | 2000-07-31 | オリンパス光学工業株式会社 | 画像データの符号化装置および符号化方法 |
| US5542008A (en) * | 1990-02-28 | 1996-07-30 | Victor Company Of Japan, Ltd. | Method of and apparatus for compressing image representing signals |
| JP3093233B2 (ja) * | 1990-03-16 | 2000-10-03 | キヤノン株式会社 | 画像符号化装置及びその方法 |
| US5291282A (en) * | 1990-04-19 | 1994-03-01 | Olympus Optical Co., Ltd. | Image data coding apparatus and method capable of controlling amount of codes |
| DE69130275T2 (de) * | 1990-07-31 | 1999-04-08 | Canon K.K., Tokio/Tokyo | Verfahren und Gerät zur Bildverarbeitung |
| JP2839339B2 (ja) * | 1990-08-06 | 1998-12-16 | 松下電器産業株式会社 | 直交変換符号化装置および直交変換符号化方法 |
| US5150208A (en) * | 1990-10-19 | 1992-09-22 | Matsushita Electric Industrial Co., Ltd. | Encoding apparatus |
| US5625714A (en) * | 1991-01-10 | 1997-04-29 | Olympus Optical Co., Ltd. | Image signal decoding device capable of removing block distortion with simple structure |
| DE69231426T2 (de) * | 1991-02-07 | 2001-02-22 | Canon K.K., Tokio/Tokyo | Vorrichtung zum Kodieren von Bildern |
| US5568278A (en) * | 1991-03-19 | 1996-10-22 | Olympus Optical Co., Ltd. | Image data coding and decoding method and apparatus with a plurality of DCT's, quantizers, and VLC's |
| US5168375A (en) * | 1991-09-18 | 1992-12-01 | Polaroid Corporation | Image reconstruction by use of discrete cosine and related transforms |
| JPH05103212A (ja) * | 1991-10-03 | 1993-04-23 | Sony Corp | データ伝送装置 |
| JPH05236427A (ja) * | 1992-02-25 | 1993-09-10 | Sony Corp | 画像信号の符号化装置及び符号化方法 |
| JP2797159B2 (ja) * | 1992-03-02 | 1998-09-17 | カシオ計算機株式会社 | 画像データ圧縮装置及び画像データ圧縮方法 |
| JP2914549B2 (ja) * | 1993-09-17 | 1999-07-05 | 富士ゼロックス株式会社 | 画像符号化方法 |
| DE69523363T2 (de) * | 1994-04-13 | 2002-05-16 | Matsushita Electric Industrial Co., Ltd. | Verfahren und Einrichtung zur Quantisierungsschätzung in der Datenkompression |
| JPH08102943A (ja) * | 1994-09-30 | 1996-04-16 | Fuji Xerox Co Ltd | 画像符号化装置 |
-
1994
- 1994-12-22 JP JP32011894A patent/JPH08181987A/ja active Pending
-
1995
- 1995-12-20 DE DE69527770T patent/DE69527770T2/de not_active Expired - Lifetime
- 1995-12-20 US US08/575,577 patent/US5905578A/en not_active Expired - Lifetime
- 1995-12-20 EP EP19950309301 patent/EP0719052B1/de not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP0719052A3 (de) | 1997-12-17 |
| DE69527770D1 (de) | 2002-09-19 |
| US5905578A (en) | 1999-05-18 |
| EP0719052B1 (de) | 2002-08-14 |
| JPH08181987A (ja) | 1996-07-12 |
| EP0719052A2 (de) | 1996-06-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69132063T2 (de) | Bildcodierung mit Optimierung der erzeugten Codemenge | |
| DE69015695T2 (de) | Einrichtung zur Transformationskodierung. | |
| DE69028221T2 (de) | System zum Steuern einer Menge kodierter Ausgangsdaten | |
| DE3751416T2 (de) | Bildcodiersystem zum Ueberwachen einer Informationsmenge durch Bildung eines Histogramms. | |
| DE69316439T2 (de) | Methode und Vorrichtung zur Kodierung und Dekodierung von Videodaten | |
| DE69125329T2 (de) | Kodiervorrichtung für digitale Bilddaten | |
| DE69425047T2 (de) | Adaptives variables längenkodierungs- und -dekodierungsverfahren für bilddaten | |
| DE69424591T2 (de) | Verfahren zur Kontrolle der Datenmenge und Kodierer zur Durchführung desselben. | |
| DE69116869T2 (de) | Digitale bildkodierung mit einer zufallsabtastung der bilder | |
| DE69132017T2 (de) | Kodierungsvorrichtung | |
| DE69735680T2 (de) | Verfahren zur Bilddecodierung | |
| DE69032177T2 (de) | Kodierungsgerät | |
| DE69029436T2 (de) | Kodiergerät mit hoher Wirksamkeit | |
| DE3855648T2 (de) | Verfahren und vorrichtung für eine hierarchische kodierung zum wirksamen übertragen von bildfolgen | |
| DE69029317T2 (de) | Steuerungssystem für die bildkodierung | |
| DE69227970T2 (de) | Signalprozessor zur Kodierung | |
| DE69517283T2 (de) | Bildsignalkodierungsvorrichtung die zwischen variabler Längenkodierung und fester Längenkodierung wechselt | |
| DE69718687T2 (de) | Vorrichtung und verfahren zur bildvorhersage und -codierung/ -decodierung. | |
| EP0201679B1 (de) | Verfahren zur Bilddatenreduktion für digitale Fernsehsignale | |
| DE69225621T2 (de) | Vorrichtung zur Kodierung eines Videosignals | |
| DE3851468T2 (de) | Kodierungsverfahren von Bildsignalen. | |
| DE69315174T2 (de) | Mehrzweckkodierer von Abbruchkoden und Lauflängen/Amplituden für eine Vorrichtung zum Verarbeiten eines digitalen Videosignals | |
| DE69126940T2 (de) | Blockadaptive lineare prädiktionskodierung mit adaptiver verstärkung und vorspannung | |
| DE69323156T2 (de) | Bilddatenkomprimierungs/Dekomprimierungssystem | |
| DE69228841T2 (de) | Vorrichtung zum Kodieren von Bildern |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8364 | No opposition during term of opposition |