DE69935564T2 - Kodiervorrichtung und -verfahren - Google Patents

Kodiervorrichtung und -verfahren Download PDF

Info

Publication number
DE69935564T2
DE69935564T2 DE1999635564 DE69935564T DE69935564T2 DE 69935564 T2 DE69935564 T2 DE 69935564T2 DE 1999635564 DE1999635564 DE 1999635564 DE 69935564 T DE69935564 T DE 69935564T DE 69935564 T2 DE69935564 T2 DE 69935564T2
Authority
DE
Germany
Prior art keywords
quantization
quantization matrix
matrix
data
complexity
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE1999635564
Other languages
English (en)
Other versions
DE69935564D1 (de
Inventor
Kanji Mihara
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Application granted granted Critical
Publication of DE69935564D1 publication Critical patent/DE69935564D1/de
Publication of DE69935564T2 publication Critical patent/DE69935564T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf Kodiervorrichtungen und –verfahren zum Kodieren von Daten, wie Videodaten.
  • Auf dem Gebiet einer Aufzeichnung und einer Wiedergabe von Videodaten in Videokassettenrekordern und Videoservern für Rundfunkstationen und eine praktische Anwendung ist es mit der Einrichtung eines Komprimierungskodierens basierend auf dem Standard der Moving Picture Experts Group Two (MPEG-2) üblich geworden, dass Videodaten, die basierend auf dem MPEG-2-Standard komprimiert sind, aufgezeichnet und wiedergegeben werden.
  • 1 zeigt die Struktur eines allgemeinen Kodieren 10, der ein Komprimierungskodieren ausführt. Wie in 1 gezeigt ist, werden in einem Kodierer 10 Bildsignale in einen Abtastumwandlungs-Makroblockerzeuger 11 eingegeben. Der Abtastumwandlungs-Makroblockerzeuger 11 wandelt die Einheiten der Bildsignale von Teilbildern (engl: fields) in Rahmen (engl.: frames) um und erzeugt die Reihenfolge von Makroblöcken mit 16 × 16 Pixeln durch Ausführen einer Umwandlung basierend auf der Reihenfolge von Abtastzeilen. Ein Addierer 12 addiert in Einheiten von Blöcken mit 8 × 8 Pixeln (DCT-Blöcken), die die Makroblöcke bilden, die Signale in den Makroblockeinheiten und Vorhersagesignale, die aus einem Bewegungskompensator 21 ausgegeben werden, und gibt die Summen in eine Einheit 13 für eine diskrete Kosinustransformation (engl.: Discrete Cosine Transform; DCT) ein.
  • Die DCT-Einheit 13 berechnet DCT-Koeffizienten durch Ausführen eines Verarbeitens für eine diskrete Kosinustransformation für jeden Block. Die DCT-Koeffizienten werden in einen Quantisierer 14 eingegeben. Durch Teilen von jedem eingegebenen DCT-Koeffizienten durch das Produkt eines Quantisierungsindexsignals, das aus einer Ratensteuerung 17 ausgegeben wird, und einer vorbestimmten Quantisierungsmatrix wird jeder Koeffizient quantisiert. Die Quantisierungsresultate werden aus dem Quantisierer 14 ausgegeben, während dieselben im Zickzack abgetastet werden. Die ausgegebenen quantisierten Daten werden in eine Variabellängencode- (engl.: Variable Length Code; VLC) Einheit 15 eingegeben. Nachdem die Daten in Kodes mit einer variablen Länge transformiert sind, werden dieselben als ein Strom über einen Ausgangspuffer 16 ausgegeben. Die Menge der erzeugten Kodes des Stroms wird in die Ratensteuerung 17 eingegeben, und dieselbe berechnet Quantisierungsindizes, die zu dem Quantisierer 14 auszugeben sind.
  • Für die Erzeugung (das teilweise Dekodieren) von Vorhersagesignalen werden die quantisierten Daten, die aus dem Quantisierer 14 ausgegeben werden, durch einen Inversquantisierer 18 invers quantisiert. Die inverse DCT der invers quantisierten Daten wird durch eine Invers-DCT-Einheit 19 ausgeführt, und die erhaltenen Daten werden in einen Addierer 20 eingegeben. Der Addierer 20 addiert Ausgangssignale aus der Invers-DCT-Einheit 19 und Bewegungskompensationsvorhersagesignale, die aus einem Bewegungskompensator 21 ausgegeben werden, und gibt die Summen in den Bewegungskompensator 21 ein bzw. speichert dieselben in demselben. Ein Bewegungsvorhersager 22 erzeugt basierend auf Ausgangssignalen aus dem Abtastumwandlungs-Makroblockerzeuger 11 Bewegungsvektoren und gibt dieselben zu dem Bewegungskompensator 21 aus. Der Bewegungskompensator 21 erzeugt basierend auf den Bewegungsvektoren Bewegungskompensationsvorhersagesignale für teilweise dekodierte Bilddaten.
  • Die durch den Kodierer 10 kodierten (komprimierten) Signale werden durch einen Dekodierer 30 dekodiert, wie in 2 gezeigt ist. Mit anderen Worten, der Strom wird über einen Eingangspuffer 31 in einen Variabellängen- (engl.: Variable Length; VL) Dekodierer (Invers-VLC-Einheit) 32 eingegeben. Nach einem Dekodieren des Eingangsstroms gibt der Variabellängen-Dekodierer 32 Bildsignalkomponenten zu einem Inversquantisierer 33 aus und gibt Bewegungsvektoren zu einem Bewegungskompensator 37 aus. Der Inversquantisierer 33 transformiert die eingegebenen Bildsignalkomponenten gemäß einer Inversquantisierungsmatrix in DCT-Koeffizienten. Eine Invers-DCT-Einheit 34 implementiert eine inverse DCT der DCT-Koeffizienten, und der Bewegungskompensator 37 erzeugt Vorhersagesignale durch Ausführen einer Bewegungskompensation für die bereits dekodierten Bildsignale gemäß den Bewegungsvektoren. Ausgangssignale aus der Invers-DCT- Einheit 34 werden in einen Addierer 35 eingegeben und werden zu dem Vorhersagesignal, das aus dem Bewegungskompensator 37 ausgegeben wird, addiert, wodurch ein Dekodieren ausgeführt wird. Die dekodierten Signale werden ausgegeben und in dem Bewegungskompensator 37 gespeichert und werden zu einem Formatumwandler 36 ausgegeben. Der Formatumwandler 36 wandelt die dekodierten Signale in Einheiten von Makroblöcken in Bildsignale in Einheiten von Abtastzeilen um.
  • Damit Informationen über die Quantisierungsmatrix, die in dem Quantisierer 14 angewendet wird, für eine inverse Quantisierung durch den Inversquantisierer 33 in dem Dekodierer 30 verwendet werden können, werden die Informationen in einem Strom, der in der Ausgangsstufe des Quantisierers 14 quantisiert wird, beschrieben. Dies liegt daran, dass bei dem MPEG-Standard eine Syntax zum Beschreiben von Quantisierungsmatrizen definiert ist. Wenn der Dekodierer 30 den kodierten Strom dekodiert, führt der Inversquantisierer 33 durch Anwenden der quantisierten Matrixinformationen, die in Kodes beschrieben sind, eine inverse Quantisierung aus. Mit anderen Worten, bei einem allgemeinen Kodieren und Dekodieren basierend auf dem MPEG-Standard sind die Quantisierungsmatrizen, die durch die Quantisierungseinheit 14 angewendet werden, und die Inversquantisierungsmatrizen, die durch die inverse Quantisierung 33 angewendet werden, völlig gleich.
  • Bei einem gewöhnlichen Bearbeiten, das bei Rundfunkstationen und Videoproduktionen ausgeführt wird, wird eine Vielzahl von Videoquelldaten wiederholt durch Anwenden von Bearbeitungsverfahren, wie Synthesisieren und Spezialeffekte, verarbeitet, wodurch bearbeitete Videodaten erzeugt werden. Mit anderen Worten, um bearbeitete Videodaten zu erzeugen, muss wiederholt ein Aufzeichnen auf und eine Wiedergabe von einem Aufzeichnungsmedium ausgeführt werden. Als ein Resultat werden ein Kodieren durch den Kodierer 10 und ein Dekodieren durch den Dekodierer 30 wiederholt ausgeführt. Dies akkumuliert Bildverzerrungen, die durch Quantisierungsfehler, die bei einer Bildquantisierung und Inversquantisierung erzeugt werden, bewirkt werden, was eine große Bildverschlechterung bewirken kann.
  • Der Grund dafür, dass sich die Bildqualität aufgrund eines Rauschens, das bei einer wiederholten Implementierung des MPEG-Kodierens und -Dekodierens akkumuliert wird, verschlechtert, ist im Folgenden beschrieben.
  • Das Konzept des gewöhnlichen Quantisierers 14 und das Konzept des Inversquantisierers 33 sind einfach beschrieben. Sämtliche quantisierten Daten, die aus dem Quantisierer 14 ausgegeben werden, sind durch den folgenden Ausdruck ausgedrückt: Q_data = DCT_coefficient/(Q-coefficient × Q_step) (1)wobei "Q_data" alle der quantisierten Daten, die aus dem Quantisierer 14 ausgegeben werden, repräsentiert, „DCT_coefficient" einen DCT-Koeffizienten, der aus der DCT-Einheit 13 ausgegeben wird und der zu dem Quantisierer 14 weitergegeben wird, repräsentiert, „Q_coefficient" einen Quantisierungskoeffizienten in der Quantisierungsmatrix, die zu dem Quantisierer 14 weitergegeben wird, repräsentiert, und „Q_step" den Quantisierungsschritt, der von der Ratensteuerung 17 zu dem Quantisierer 14 weitergegeben wird, repräsentiert. Mit anderen Worten, alle der quantisierten Daten, die aus dem Quantisierer 14 ausgegeben werden, sind ein Wert, der durch Teilen des DCT-Koeffizienten durch das Produkt des Quantisierungskoeffizienten und des Quantisierungsschritts erhalten wird. Beispielsweise gibt der Quantisierer 14 bei dem Fall, bei dem das Produkt des Quantisierungskoeffizienten und des Quantisierungsschritts 100 ist, Werte, die durch 100 geteilt sind, als quantisierte Daten aus.
  • Der Inversquantisierer 33 in dem Dekodierer 30 führt an dem DCT-Koeffizienten, der von dem Variabellängen-Dekodierer 32 weitergegeben wird, eine Verarbeitung aus, die invers zu derselben ist, die durch den Quantisierer 14 ausgeführt wird. Ein DCT-Koeffizient „DCT_coefficient", der aus dem Inversquantisierer 33 ausgegeben wird, ist durch den folgenden Ausdruck ausgedrückt: DCT_coefficient = Q_data × (Q_coefficient × Q_step) (2)
  • Mit anderen Worten, der DCT-Koeffizient „DCT_coefficient" ist ein Wert, der durch Multiplizieren des DCT-Koeffzienten mit dem Quantisierungskoeffizienten und dem Quantisierungsschritt erhalten wird. Bezug nehmend auf das im Vorhergehenden beschriebene Beispiel gibt der Inversquantisierer 33 bei dem Fall, bei dem das Produkt des Quantisierungskoeffizienten und des Quantisierungsschritts 100 ist, Werte, die mit 100 multipliziert sind, als DCT-Koeffizienten aus.
  • Obwohl gesagt werden kann, dass die inverse Quantisierung basierend auf dem Ausdruck (2) ein Verfahren zum Wiederherstellen der Quantisierung, die basierend auf dem Ausdruck (1) ausgeführt wird, ist, wird keine vollständige Wiederherstellung von 100 Prozent ausgeführt. Dies liegt daran, dass die Ziffern nach dem Dezimalkomma in den Daten, die basierend auf dem Ausdruck (1) berechnet werden, gestrichen und nicht zu dem Dekodierer 30 gesendet werden. Daher sind Fehler, die zwischen der Quantisierungsberechnung und der Inversquantisierungsberechnung erzeugt werden, als ein Rauschen in den dekodierten Videodaten enthalten.
  • Bei einem Kodieren und Dekodieren basierend auf dem MPEG-Standard werden mehr Kodierungsbits zu einem Rauschen mit einer hohen räumlichen Frequenz zugewiesen als zu Videokomponenten mit einem einfachen Videobild. Ein kodierter Strom, der durch das Kodieren erzeugt wird, hat daher mehr Rauschen als dasselbe von Videoquelldaten. Die Hauptursache einer Bildqualitätsverschlechterung besteht darin, dass sich ein Rauschen („Moskitorauschen” genannt) mit Hochfrequenzkomponenten erhöht.
  • Anschließend verarbeitet der Inversquantisierer 33 den kodierten Strom, der das Rauschen aufweist, durch Anwenden der inversen Quantisierung basierend auf dem Ausdruck (2). Der Inversquantisierer 33 inversquantisiert nicht nur die Videokomponenten des kodierten Stroms, sondern auch die Rauschkomponenten. Daher werden auch die Rauschkomponenten ähnlich wie die Videokomponenten wiederhergestellt. Offensichtlich sind die wiederhergestellten Rauschkomponenten größer als die Rauschkomponenten, die die Videoquelldaten in sich aufweisen, bevor dieselben kodiert werden.
  • Demgemäß summiert sich bei einer wiederholten Implementierung des Kodieren und Dekodieren basierend auf einem gewöhnlichen MPEG-Standard ein Rauschen, das durch Rechenfehler, die zwischen der Quantisierung und der inversen Quantisierung auftreten, erzeugt wird, was eine Verschlechterung der Bildqualität bei den dekodierten Videodaten bewirkt. Zusätzlich tritt bei der gewöhnlichen inversen Quantisierung basierend auf dem MPEG-Standard insofern ein Problem dahingehend auf, dass sich die Bildqualität verschlechtert, da nicht nur Videokomponenten, die der kodierte Strom in sich aufweist, sondern auch Rauschkomponenten invers quantisiert werden.
  • Die im Vorhergehenden beschriebene bekannte MPEG-Anordnung liefert, wie im Vorhergehenden beschrieben ist, eine Kodiervorrichtung zum Kodieren von Videoquelldaten, umfassend
    ein Quantisierungsmittel zum Ausgeben von quantisierten Daten durch Anwenden einer Quantisierungsmatrix zum Quantisieren der Videoquelldaten; und
    ein Kodiermittel zum Ausgeben eines kodierten Stroms durch Kodieren der quantisierten Daten, wobei der kodierte Strom Daten umfasst, die die Quantisierungsmatrix, die in dem Quantisierungsmittel angewendet ist, beschreiben, so dass die gleiche Quantisierungsmatrix angewendet wird, sobald eine inverse Quantisierung bei dem Dekodieren von Videodaten implementiert wird.
  • Die europäische Patentanmeldung Veröffentlichungs-Nr. EP-A-0 735 771 offenbart eine Kodiervorrichtung zum Kodieren von Bildquelldaten, umfassend ein Quantisierungsmittel zum Ausgeben von quantisierten Daten durch Anwenden einer Quantisierungsmatrix, um die Quellbilddaten zu quantisieren;
    ein Kodiermittel zum Kodieren der quantisierten Daten aus dem Quantisierungsmittel; und
    ein Mittel zum Beschreiben, in einem kodierten Strom, der durch das Quantisierungsmittel ausgegeben wird, von Daten in einer Quantisierungsmatrix, die anzuwenden ist, sobald eine inverse Quantisierung bei dem Dekodieren von Bilddaten implementiert wird;
    wobei sich die Quantisierungsmatrizen voneinander unterscheiden.
  • Die Europäische Patentanmeldung Veröffentlichungs-Nr. EP-A-0 740 472 offenbart einen Bilddatenprozessor, der eine Quantisierungsmatrix mit höheren Werten und eine Matrix für eine Entquantisierung mit niedrigeren Werten verwendet. Dies erfolgt durch ein Nichtverarbeiten der nicht-signifikanten (höherfrequenten) Elemente.
  • Die Internationale (PCT-) Patentanmeldung Veröffentlichungs-Nr. WO-A-9 835 503 offenbart ein Transformationskodierverfahren für Stand- und Bewegtbilder, bei dem aus einer Standardquantisierungsmatrix und einer besonderen Quantisierungsmatrix, die mehrere Quantisierungselemente mit ausgewählten Werten aufweist und in einem vorbestimmten Zickzackmuster gelesen wird, eine synthetisierte Quantisierungsmatrix gebildet wird.
  • Die vorliegende Erfindung schafft eine Kodiervorrichtung und ein Kodierverfahren, die versuchen, zu verhindern, dass sich eine Bildqualität verschlechtert, indem dieselben für eine Quantisierung eine Quantisierungsmatrix anwenden, die sich, anstatt die gleiche wie die Quantisierungsmatrix für eine inverse Quantisierung zu sein, wie durch die relevanten Daten in dem kodierten Strom beschrieben ist, von der Quantisierungsmatrix für eine inverse Quantisierung unterscheidet. Genauer gesagt, die Kodiervorrichtung und das Kodierverfahren unterdrücken Komponenten mit hohen räumlichen Frequenzen, wie ein Rauschen, indem dieselben, in einer Quantisierungsmatrix für eine Quantisierung, Quantisierungskoeffizienten zum Quantisieren von relativ hohen räumlichen Frequenzen größer einstellen als dieselben für eine inverse Quantisierung.
  • Ausführungsbeispiele der Erfindung liefern eine Kodiervorrichtung und ein Kodierverfahren, die unterschiedliche Quantisierungsmatrizen für eine Quantisierung nach dem Kodieren und eine inverse Quantisierung nach dem Dekodieren verwenden, wodurch, wenn eine Quantisierung und eine inverse Quantisierung wiederholt ausgeführt werden, eine Bildqualitätsverschlechterung bei Videodaten verhindert werden kann.
  • Genauer gesagt, die Erfindung schafft eine Kodiervorrichtung und ein Kodierverfahren, wie in den Ansprüchen 1 bzw. 8 hierin dargelegt ist. Eine Auswahl der Quantisierungsmatrix, die für eine Quantisierung angewendet wird, aus einer Vielzahl von Matrizen gemäß der bestimmten Bildkomplexität wird so duchgeführt, wie in diesen Ansprüchen dargelegt ist.
  • Die Erfindung ist nun mittels eines Beispiels unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, in denen durchgehend auf gleiche Teile durch gleiche Bezüge Bezug genommen ist und in denen
  • 1 ein Blockdiagramm ist, das einen allgemeinen Kodierer 10 zeigt;
  • 2 ein Blockdiagramm ist, das einen allgemeinen Dekodierer 30 zeigt;
  • 3 ein Blockdiagramm ist, das einen Kodierer 10 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 4 eine Darstellung einer ersten Quantisierungsmatrix ist;
  • 5 eine Darstellung einer zweiten Quantisierungsmatrix ist;
  • 6 eine Darstellung einer dritten Quantisierungsmatrix ist;
  • 7 eine graphische Darstellung ist, die die Funktion eines Bestimmens der Änderung von Quantisierungsmatrizen darstellt;
  • 8 ein Flussdiagramm ist, das ein Verfahren zum Ändern von Quantisierungsmatrizen darstellt;
  • 9 eine graphische Darstellung ist, die ein Beispiel einer Funktion von sich stufenweise ändernden Quantisierungskoeffizienten in einer Quantisierungsmatrix zeigt;
  • 10 ein Blockdiagramm ist, das einen Kodierer 10 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung zeigt;
  • 11 eine Darstellung eines kodierten Bitstroms ist;
  • 12 eine Darstellung einer Sequenzschicht in einem kodierten Bitstrom ist;
  • 13 ein Blockdiagramm ist, das einen Kodierer 10 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung zeigt; und
  • 14 ein Blockdiagramm ist, das einen Kodierer 10 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung zeigt.
  • Bezug nehmend auf das Blockdiagramm, das in 3 gezeigt ist, weist ein Kodierer 10 gemäß einem Ausführungsbeispiel der vorliegenden Erfindung einen Abtastumwandlungs-Makroblockerzeuger 11, eine DCT-Einheit 13, einen Quantisierer 14, eine VLC-Einheit 15, eine Matrixeinheit 41, einen Ausgangspuffer 16, eine Ratensteuerung 17 und einen Matrixwähler 42 auf. Obwohl bei dem Kodierer 10, der in 3 gezeigt ist, eine Bewegungskompensationssteuerungsfunktion (der Addierer 12, der Inversquantisierer 18 und der Bewegungskompensator 22), wie in 1 gezeigt ist, der Einfachheit einer Beschreibung halber weggelassen ist, hat der Kodierer 10, der in 3 gezeigt ist, tatsächlich diese Funktion.
  • Der Kodierer 10, der in 3 gezeigt ist, unterscheidet sich von dem Kodierer, der in 1 gezeigt ist, dahingehend, dass der Kodierer 10, der in 3 gezeigt ist, den Matrixwähler 42, der eine Quantisierungsmatrix, die in einem kodierten Strom beschrieben ist, auswählt, und die Matrixeinheit 41, die die Quantisierungsmatrix neu schreibt, so dass sich eine Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird, und eine Quantisierungsmatrix, die durch den Inversquantisierer 33 angewendet wird (in 2 gezeigt) unterscheiden, aufweist.
  • Die Matrixeinheit 41 hat eine Funktion eines Neuschreibens einer Quantisierungsmatrix, die in einem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben ist, mit einer Quantisierungsmatrix mit weniger Quantisierungskoeffizienten als Quantisierungskoeffizienten in der Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird. Die neue Quantisierungsmatrix für ein Neuschreiben wird basierend auf Quantisierungsindizes, die von der Ratensteuerung 17 eingegeben werden, bestimmt. Die Quantisierungsindizes sind der Hauptfaktor zum Bestimmen des Quantisierungsschritts, der im Vorhergehenden beschrieben ist. Wenn die Quantisierungsindizes größer sind, verringert sich der Quantisierungsschritt, während sich der Quantisierungsschritt erhöht, wenn die Quantisierungsindizes kleiner sind. Der Matrixwähler 42 steuert basierend auf den Quantisierungsindizes die Werte der Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird.
  • Bei dem Fall, bei dem sich ein Bildrauschen, das durch Quantisierungstransformationsfehler, die bei einer Berechnung für eine Quantisierung und eine inverse Quantisierung von Videodaten erzeugt werden, bewirkt wird, erhöht, stellt die Matrixeinheit 41 eine Quantisierungsmatrix, die sich von der Quantisierungsmatrix, die in dem Quantisierer 14 angewendet ist, unterscheidet, als eine Quantisierungsmatrix, die in dem Inversquantisierer 33 (2) des Dekodierers 30 anzuwenden ist, ein. (Die Hochfrequenzkomponenten der Quantisierungsmatrix, die in dem Quantisierer 14 angewendet wird, sind eingestellt, um größere Werte zu haben als die Hochfrequenzkomponenten der Quantisierungsmatrix, die in dem Inversquantisierer 33 angewendet wird.) Die anderen Komponenten sind zu denselben, die in 1 gezeigt sind, identisch.
  • Unter Bezugnahme auf 4 bis 6 sind im Folgenden spezifische Quantisierungsmatrizen beschrieben.
  • Der Quantisierer 14 wendet entweder die erste, die zweite oder die dritte Quantisierungsmatrix, die in 4 bis 6 gezeigt sind, an. Der Inversquantisierer 33 wendet die erste Quantisierungsmatrix, die in 4 gezeigt ist, an. Unter den Werten der Quantisierungsmatrix in 5 sind Komponenten von niedrigen räumlichen Frequenzen, die nicht schraffiert sind, die gleichen wie die Werte der ersten Quantisierungsmatrix, die in 4 gezeigt ist, und Komponenten von mittleren und hohen räumlichen Frequenzen, die dünn schraffiert sind, sind größer als die Werte der Quantisierungsindizes in der ersten Quantisierungsmatrix, die in 4 gezeigt ist. In der dritten Quantisierungsmatrix, die in 6 gezeigt ist, sind die Werte von Quantisierungskoeffizienten mit mittleren und hohen räumlichen Frequenzen größer als Quantisierungskoeffizienten in der zweiten Quantisierungsmatrix und sind breiter als der dünn schraffierte Bereich, der in 5 gezeigt ist.
  • Die Ratensteuerung 17 empfängt von dem Ausgangspuffer 16 Informationen über die Menge von erzeugten Bits und berechnet basierend auf der Menge von erzeugten Bits den Mittelwert von Quantisierungsindizes. Die Informationen über die Menge von erzeugten Bits werden jedes Mal zu der Ratensteuerung 17 weitergegeben, wenn ein Bild kodiert wird. Die Informationen über die Menge von erzeugten Bits werden als eine Anzeige verwendet, um zu bestimmen, ob das kodierte Bild komplex oder einfach war.
  • Ein relativ kleiner Mittelwert der Quantisierungsindizes zeigt, dass das Bildmuster von Videoquelldaten relativ einfach ist und dass der Mittelwert von räumlichen Frequenzen in dem Bildrahmen der Videoquelldaten niedrig ist. Der Fall, bei dem das Bildmuster der Videoquelldaten in diesem Zustand ist, ist als „Komplexitätsniveau 1" definiert.
  • Ein mittlerer Mittelwert der Quantisierungsindizes zeigt, dass das Bildmuster der Videoquelldaten weder einfach noch komplex ist, d. h. gewöhnlich ist, und dass der Mittelwert von räumlichen Frequenzen in dem Bildrahmen der Videoquelldaten mittel ist. Der Fall, bei dem das Bildmuster der Videoquelldaten in diesem Zustand ist, ist als „Komplexitätsniveau 2" definiert.
  • Ein sehr großer Mittelwert der Quantisierungsindizes zeigt, dass das Bildmuster der Videoquelldaten sehr komplex ist und dass der Mittelwert von räumlichen Frequenzen in dem Bildrahmen der Videoquelldaten sehr hoch ist. Der Fall, bei dem das Bildmuster der Videoquelldaten in diesem Zustand ist, ist als „Komplexitätsniveau 3" definiert.
  • Die Ratensteuerung 17 empfangt von dem Ausgangspuffer 16 jedes Mal Informationen über die Menge von erzeugten Bits, wenn ein Bild kodiert wird, und berechnet basierend auf der Menge von erzeugten Bits den Mittelwert von Quantisierungsindizes. Die Ratensteuerung 17 bestimmt eines der im Vorhergehenden beschriebenen Kompiexitätsniveaus durch Vergleichen des berechneten Mittelwerts von Ratenquantisierungsindizes und eines vorbestimmten Schwellenwerts. Genauer gesagt, wenn das Bildmuster des kodierten Bildes einfach ist, bestimmt die Ratensteuerung 17 ein Komplexitätsniveau 1. Wenn das Bildmuster des kodierten Bildes gewöhnlich ist, bestimmt die Ratensteuerung 17 ein Komplexitätsniveau 2. Wenn das Bildmuster des kodierten Bildes komplex ist, bestimmt die Ratensteuerung 17 ein Komplexitätsniveau 3. Informationen über die Komplexitätsniveaus werden zu dem Matrixwähler 42 weitergegeben.
  • Die Ratensteuerung 17 bestimmt ferner jedes Mal basierend auf der Menge von erzeugten Bits den Quantisierungsschritt, wenn ein Bild kodiert wird. Genauer gesagt, wenn die Menge von erzeugten Kodes für ein Bild größer als eine vorbestimmte Menge ist, oder wenn sich die Menge von Daten, die in dem Ausgangspuffer 16 gespeichert sind, erhöht, erhöht die Ratensteuerung 17 den Quantisierungsschritt, um die Menge von erzeugten Kodes für die folgenden Bilder zu unterdrücken. Wenn die Menge von erzeugten Kodes für ein Bild geringer als die vorbestimmte Menge ist, oder wenn sich die Menge von Daten, die in dem Ausgangspuffer 16 gespeichert sind, verringert, reduziert die Ratensteuerung 17 den Quantisierungsschritt, um die Menge von erzeugten Kodes für die folgenden Bilder zu erhöhen. Informationen über den Quantisierungsschritt, der durch die Ratensteuerung 17 bestimmt wird, werden zu dem Quantisierer 14 weitergegeben.
  • Der Matrixwähler 42 weist einen Speicher, der die erste, die zweite und die dritte Quantisierungsmatrix, die in 4 bis 6 gezeigt sind, speichert, auf. Der Matrixwähler 42 empfangt die Informationen über das Komplexitätsniveau von der Ratensteuerung 17 und wählt unter der ersten, der zweiten und der dritten Quantisierungsmatrix, die in dem Speicher gespeichert sind, gemäß dem Komplexitätsniveau eine Quantisierungsmatrix, die zu dem Quantisierer 14 weiterzugeben ist, aus.
  • Steuerungsoperationen bei den Komplexitätsniveaus 1, 2 und 3 sind im Folgenden der Reihe nach beschrieben.
  • Bei dem Fall des Komplexitätsniveaus 1 wählt der Matrixwähler 42 die erste Quantisierungsmatrix (in 4 gezeigt) aus und gibt dieselbe zu dem Quantisierer 14 weiter. Der Matrixwähler 42 gibt ferner Informationen über die erste Quantisierungsmatrix als eine Quantisierungsmatrix, die für eine inverse Quantisierung anzuwenden ist, zu der Matrixeinheit 41 weiter. Der Quantisierer 14 führt durch Anwenden der ersten Quantisierungsmatrix, die von dem Matrixwähler 42 weitergegeben wird, eine Quantisierung aus.
  • Die Matrixeinheit 41 schreibt die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, durch die Informationen der ersten Quantisierungsmatrix, die von dem Matrixwähler 42 weitergegeben werden, neu. Offensichtlich sind in diesem Fall (bei Komplexitätsniveau 1) die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, die Informationen der ersten Quantisierungsmatrix. Demgemäß können die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, ausgegeben werden, um unverändert zu sein, ohne neu geschrieben zu werden.
  • Als ein Resultat des Kodierens sind in dem kodierten Strom, der zu dem Dekodierer 30 weiterzugeben ist, Informationen über eine Quantisierungsmatrix, die identisch zu der ersten Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird, ist, beschrieben. Demgemäß wendet der Inversquantisierer 33 die erste Quantisierungsmatrix an, um Daten, die durch Ausführen eines Dekodierens mit variabler Länge in dem Variabellängen-Dekodierer 32 verarbeitet werden, invers zu quantisieren. Die Quantisierungsmatrix, die durch den Inversquantisierer 33 angewendet wird, ist identisch zu der ersten Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird.
  • Bei dem Fall des Komplexitätsniveaus 2 wählt der Matrixwähler 42 die zweite Quantisierungsmatrix (in 5 gezeigt) aus und gibt dieselbe zu dem Quantisierer 14 weiter. Der Matrixwähler 42 gibt ferner Informationen über die erste Quantisierungsmatrix als eine Quantisierungsmatrix, die für eine inverse Quantisierung anzuwenden ist, zu der Matrixeinheit 41 weiter. Der Quantisierer 14 führt durch Anwenden der zweiten Quantisierungsmatrix, die von dem Matrixwähler 42 weitergegeben wird, eine Quantisierung aus.
  • Die Matrixeinheit 41 schreibt die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, durch die Informationen der ersten Quantisierungsmatrix, die von dem Matrixwähler 42 weitergegeben werden, neu. Dies liegt daran, dass, da sich die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, auf die zweite Quantisierungsmatrix beziehen, wenn die Matrixeinheit 41 den kodierten Strom ausgibt, ohne denselben neu zu schreiben, der Inversquantisierer 33 in dem Dekodierer 30 die zweite Quantisierungsmatrix anwendet, um eine inverse Quantisierung auszuführen.
  • Als ein Resultat des Kodieren sind in dem kodierten Strom, der zu dem Dekodierer 30 weiterzugeben ist, Informationen über die erste Quantisierungsmatrix, die sich von der zweiten Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird, unterscheidet, beschrieben. Der Inversquantisierer 33 wendet die erste Quantisierungsmatrix an, um Daten, die durch Ausführen eines Dekodieren mit variabler Länge in dem Variabellängen-Dekodierer 32 verarbeitet werden, invers zu quantisieren. Mit anderen Worten, die Quantisierungsmatrix, die durch den Inversquantisierer 33 angewendet wird, unterscheidet sich von der zweiten Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird.
  • Bei dem Fall des Komplexitätsniveaus 3 wählt der Matrixwähler 42 die dritte Quantisierungsmatrix (in 6 gezeigt) aus und gibt dieselbe zu dem Quantisierer 14 weiter. Der Matrixwähler 42 gibt ferner Informationen über die erste Quantisierungsmatrix als eine Quantisierungsmatrix, die für eine inverse Quantisierung anzuwenden ist, zu der Matrixeinheit 41 weiter. Der Quantisierer 14 führt durch Anwenden der dritten Quantisierungsmatrix, die von dem Matrixwähler 42 weitergegeben wird, eine Quantisierung aus.
  • Die Matrixeinheit 41 schreibt die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, durch die Informationen der ersten Quantisierungsmatrix, die von dem Matrixwähler 42 weitergegeben werden, neu. Dies liegt daran, dass, da sich die Quantisierungsmatrixinformationen, die in dem kodierten Strom, der aus der VLC-Einheit 15 ausgegeben wird, beschrieben sind, auf die dritte Quantisierungsmatrix beziehen, wenn die Matrixeinheit 41 den kodierten Strom ausgibt, ohne denselben neu zu schreiben, der Inversquantisierer 33 in dem Dekodierer 30 die dritte Quantisierungsmatrix anwendet, um eine inverse Quantisierung auszuführen.
  • Als ein Resultat des Kodierens sind in dem kodierten Strom, der zu dem Dekodierer 30 weiterzugeben ist, Informationen über die erste Quantisierungsmatrix, die sich von der dritten Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird, unterscheidet, beschrieben. Der Inversquantisierer 33 wendet die erste Quantisierungsmatrix an, um Daten, die durch Ausführen eines Dekodieren mit variabler Länge in dem Variabellängen-Dekodierer 32 verarbeitet werden, invers zu quantisieren. Mit anderen Worten, die Quantisierungsmatrix, die durch den Inversquantisierer 33 angewendet wird, ist die erste Quantisierungsmatrix, die sich von der dritten Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird, unterscheidet.
  • Der Grund dafür, dass die zweite oder die dritte Quantisierungsmatrix angewendet wird, um eine Quantisierung auszuführen, bevor eine inverse Quantisierung unter Anwendung der ersten Quantisierungsmatrix mit Quantisierungskoeffizienten, die weniger als dieselben der zweiten oder der dritten Quantisierungsmatrix sind, ausgeführt wird, und Wirkungen der Quantisierung und der inversen Quantisierung sind im Folgenden beschrieben. Die folgende Beschreibung basiert auf der Bedingung, dass unter 64 DCT-Koeffizienten in dem 8 × 8-DCT-Block ein DCT-Koeffizient mit der höchsten räumlichen Frequenz quantisiert und invers quantisiert wird und dass der Wert eines DCT-Koeffizienten „DCT_coefficient" 280 ist und der Wert eines Quantisierungsschritts „Q_step" 1 ist.
  • Die Quantisierungsmatrix, die für eine Quantisierung, die in dem Quantisierer 14 ausgeführt wird, angewendet wird, ist die zweite Quantisierungsmatrix, die in 5 gezeigt ist, oder die dritte Quantisierungsmatrix, die in 6 gezeigt ist. Bei der zweiten oder der dritten Quantisierungsmatrix ist ein Quantisierungskoeffizient zum Quantisieren eines DCT-Koeffizienten mit der höchsten räumlichen Frequenz 140. Daher werden, basierend auf dem Ausdruck (1), Daten „Q_data", die durch den Quantisierer 14 quantisiert werden, durch den folgenden Ausdruck ausgedrückt: Q_data = DCT_coefficient/(Q_coefficient × Q_step) = 280/(140 × 1) = 2 (3)
  • Quantisierte Daten, die durch eine Quantisierungsberechnung basierend auf dem Ausdruck (3) berechnet werden, sind in dem kodierten Strom, der aus dem Kodierer 10 ausgegeben wird, beschrieben.
  • Nachfolgend, wenn der kodierte Strom invers quantisiert wird, wird die erste Quantisierungsmatrix, die in 4 gezeigt ist, angewendet. Ein Quantisierungskoeffizient zum Quantisieren eines DCT-Koeffizienten in der ersten Quantisierungsmatrix, der die höchste räumliche Frequenz hat, ist 70. Ein DCT-Koeffizient „DCT_coefficient", der durch den Inversquantisierer 33 invers quantisiert ist, wird durch den folgenden Ausdruck ausgedrückt: DCT_coefficient = Q_data × (Q_coefficient × Q_step) = 2 (70 + 1) = 140 (4)
  • Mit anderen Worten, der DCT-Koeffizient, der zu dem Quantisierer 14 weitergegeben wird, ist 280, und der DCT-Koeffizient, der aus dem Inversquantisierer 33 ausgegeben wird, ist 140, was die Hälfte des DCT-Koeffizienten, der nicht quantisiert wurde, ist. Dies zeigt, dass das Niveau des invers quantisierten DCT-Koeffizienten das Niveau des DCT-Koeffizienten, der nicht quantisiert wurde, vermindert. Dies zeigt ferner, dass das Niveau des invers quantisierten DCT-Koeffizienten, verglichen mit dem Niveau des DCT-Koeffizienten, der nicht quantisiert wurde, unterdrückt wird. Das Verminderungsverhältnis des invers quantisierten DCT-Koeffizienten zu dem DCT-Koeffizienten, der nicht quantisiert wurde, wird durch die Differenz zwischen dem DCT-Koeffizienten der ersten Quantisierungsmatrix und dem DCT-Koeffizienten der zweiten oder der dritten Quantisierungsmatrix bestimmt.
  • Betreffend die DCT-Koeffizienten in niedrigen bis mittleren Bereichen einer räumlichen Frequenz haben die erste Quantisierungsmatrix und die zweite oder die dritte Quantisierungsmatrix die gleichen Quantisierungskoeffizienten. Es gibt daher fast keine Änderungen zwischen DCT-Koeffizienten, die nicht quantisiert wurden, und invers quantisierten DCT-Koeffizienten. Betreffend die DCT-Koeffizienten in mittleren bis hohen Bereichen einer räumlichen Frequenz haben die erste Quantisierungsmatrix und die zweite oder die dritte Quantisierungsmatrix unterschiedliche Quantisierungskoeffizienten. Das Verminderungsverhältnis des invers quantisierten DCT-Koeffizienten zu dem DCT-Koeffizienten, der nicht quantisiert wurde, wird daher gemäß der Differenz bestimmt. Bei der ersten Quantisierungsmatrix, die in 4 gezeigt ist, und der zweiten Quantisierungsmatrix, die in 5 gezeigt ist, ist das Verminderungsverhältnis des invers quantisierten DCT-Koeffizienten größer, da ein DCT-Koeffizient eine höhere räumliche Frequenz hat.
  • Demgemäß kann das Niveau von DCT-Koeffizienten, die von Komponenten mit einer hohen räumlichen Frequenz, wie einem Rauschen, erhalten werden, durch Reduzieren von Quantisierungskoeffizienten in einer Quantisierungsmatrix für eine inverse Quantisierung, so dass dieselben kleiner als Quantisierungskoeffizienten in einer Quantisierungsmatrix für eine Quantisierung sind, unterdrückt werden. Daher kann, selbst wenn Videoquelldaten, die Komponenten mit einer hohen räumlichen Frequenz, wie ein Rauschen, aufweisen, wiederholt kodiert und dekodiert werden, eine Verstärkung des Rauschens verhindert werden.
  • Die Auswahl der Quantisierungsmatrix ist im Folgenden beschrieben.
  • Wie im Vorhergehenden beschrieben ist, wird die Quantisierungsmatrix, die durch den Quantisierer 14 angewendet wird, basierend auf der Menge von erzeugten Kodes, die aus der VLC-Einheit 15 ausgegeben werden, geändert. Bei dem Fall, bei dem die Menge von erzeugten Kodes in der Nachbarschaft eines vorbestimmten Schwellenwerts variiert, werden Quantisierungsmatrizen jedoch häufig geändert, was verhindert, dass sich der Rauschbeseitigungszustand von Bilddaten qualitativ ändert (Es tritt eine Unregelmäßigkeit bei der Rauschbeseitigung auf, die durch häufiges Ändern des Quantisierungsschritts für Komponenten mit einer hohen räumlichen Frequenz bestimmt wird).
  • Demgemäß wird die angewendete Quantisierungsmatrix, um zu verhindern, dass die Quantisierungsmatrizen häufig geändert werden, nicht einfach bei einem Schwellenwert geändert, sondern die Änderungsoperation der Quantisierungsmatrix kann eingestellt werden, um Hysteresemerkmale wie dieselben, wie in 7 gezeigt ist, zu haben.
  • Ein Verfahren zum Neuschreiben der Quantisierungsmatrix ist unter Bezugnahme auf das Flussdiagramm, das in 8 gezeigt ist, beschrieben. Zunächst stellt der Matrixwähler 42 anfänglich bei einem Schritt S1 das Niveau einer Komplexität auf ein Komplexitätsniveau 1 ein. Bei einem Schritt S2 wählt der Matrixwähler 42 die erste Quantisierungsmatrix, die dem Komplexitätsniveau 1 entspricht, aus. Bei einem Schritt S3 wendet der Quantisierer 14 die erste Quantisierungsmatrix an, um jedes Bild (einen Videorahmen) zu quantisieren. Bei einem Schritt S4 berechnet die Steuerung 17 basierend auf der Menge von erzeugten Kodes, die vorübergehend in dem Ausgangspuffer 16 gespeichert ist, den Mittelwert „MEAN-Q" der Quantisierungsindizes als eine Anzeige der Komplexität des kodierten Bildes.
  • Bei einem Schritt S5 bestimmt der Matrixwähler 42 das Komplexitätsniveau durch Vergleichen des Mittelwerts MEAN-Q und des Quantisierungsmatrix-Neuschreibe-Schwellenwerts Thij, wobei Thij einen Schwellenwert repräsentiert, bei dem sich die Komplexität der Quantisierungsmatrix von einem Komplexitätsniveau j zu einem Komplexitätsniveau i ändert. Jedes Mal, wenn ein Bild kodiert wird, werden die Schritte S2 bis S5 wiederholt ausgeführt.
  • Die Komplexitätsniveaubestimmung bei dem Schritt S5 des Flussdiagramms in 8 ist unter Bezugnahme auf 7 weiter beschrieben. Wenn sich der Mittelwert von Quantisierungsindizes bei dem Komplexitätsniveau 1 auf einen Schwellenwert Th21 (ein eingestellter Wert zum Ändern der Komplexität der Quantisierungsmatrix von dem Komplexitätsniveau 1 zu dem Komplexitätsniveau 2) erhöht, wird die Quantisierungsmatrix für das Komplexitätsniveau 1 in die Quantisierungsmatrix für das Komplexitätsniveau 2 geändert. Umgekehrt wird bei dem Fall, bei dem sich der Mittelwert von Quantisierungsindizes bei dem Komplexitätsniveau 2 auf den Schwellenwert Th21 verringert, wenn sich der Mittelwert auf einen kleineren Schwellenwert Th12 verringert (ein eingestellter Wert zum Ändern der Komplexität der Quantisierungsmatrix von dem Komplexitätsniveau 2 zu dem Komplexitätsniveau 1), wobei das Niveau einer Komplexität nicht von dem Komplexitätsniveau 2 zu dem Komplexitätsniveau 1 geändert ist, das Niveau einer Komplexität von dem Komplexitätsniveau 2 zu dem Komplexitätsniveau 1 geändert. Der Abstand zwischen dem Schwellenwert Th12 und dem Schwellenwert Th21 wird „Hystereseabstand" genannt. Durch Einstellen des Hystereseabstands kann die Komplexität einer Quantisierungsmatrix nicht einfach geändert werden, selbst wenn der Mittelwert der Quantisierungsindizes in der Nachbarschaft eines Schwellenwerts (z. B. Th21) variiert. Der Hystereseabstand wird basierend auf dem Mittelwert von Quantisierungsindizes etc. voreingestellt. Dies gilt ähnlich für eine Bestimmung in dem Fall, bei dem ein Komplexitätsniveau 2 zu einem Kompiexitätsniveau 3 geändert wird, eine Bestimmung in dem Fall, bei dem ein Komplexitätsniveau 1 zu einem Komplexitätsniveau 3 geändert wird, und in dem umgekehrten Fall.
  • Anstelle eines Einstellens der Hysteresemerkmale, wie im Vorhergehenden beschrieben ist, können die Quantisierungskoeffizienten stufenweise (fein) geändert werden, um dem Mittelwert der Quantisierungsmatrizen zu entsprechen.
  • Die stufenweise Änderung der Quantisierungskoeffizienten wird realisiert, indem bewirkt wird, dass der Matrixwähler 42 als die Funktion, die in 9 gezeigt ist, die Beziehung zwischen den Quantisierungskoeffizienten und den Quantisierungsindizes hat.
  • Bei dem Fall, der in 9 gezeigt ist, werden durch Liefern von drei Funktionen für räumliche Frequenzen, die Quantisierungsschritten in einer Quantisierungsmatrix entsprechen, so dass die Mittelwerte von Quantisierungsindizes mit den Quantisierungsschritten korreliert sind, die Quantisierungsschritte gemäß den Mittelwerten der Quantisierungsindizes stufenweise geändert. In diesem Fall werden die Quantisierungsschritte nicht rasch geändert. Dies beseitigt daher die Notwendigkeit zum Ausführen einer Bestimmung unter Berücksichtigung von Hysteresemerkmalen, wie in 7 gezeigt ist.
  • Ein Ändern der Quantisierungsmatrizen soll bewirken, dass sich die Quantisierungsmatrizen, die in dem Quantisierer 14 und dem Inversquantisierer 33 angewendet werden, unterscheiden. Demgemäß ist es nicht unvermeidlich, in dem Kodierer 10 die Funktion (z. B. die Matrixeinheit 41, die in 3 gezeigt ist) eines Änderns von Quantisierungsmatrizen vorzusehen.
  • Beispielsweise kann die Funktion eines Ändern der Quantisierungsmatrizen außerhalb des Kodierers 10 vorgesehen sein, wie in 10 gezeigt ist.
  • Bei dem Kodierer 10, der in 10 gezeigt ist, ist die Matrixeinheit 41, die in 1 gezeigt ist, weggelassen, und eine zentrale Verarbeitungseinheit (CPU) 50 zum Senden einer Änderungsquantisierungsmatrix zu einem Bitstromprozessor 51 ist in einer Stufe nach dem Ausgangspuffer 16 vorgesehen. Der Bitstromprozessor 51 findet durch Analysieren des Stroms, der aus dem Ausgangspuffer 16 ausgegeben wird, Daten einer Quantisierungsmatrix, die in einer Sequenzschicht (engl.: sequence layer) beschrieben ist, und schreibt die Quantisierungsmatrix durch eine Quantisierungsmatrix, die durch den Matrixwähler 42 ausgewählt wird, unter Verwendung der CPU 50 neu.
  • Der Bitstrom besteht aus sechs Schichten von gemultiplexten Daten, wie in 11 gezeigt ist. Unter den sechs Datenschichten speichert eine Sequenzschicht Daten einer Gruppe von Bildern mit einer Reihe gleicher Eigenschaften (z. B. Bildgröße, Bildrate, etc.); eine GOP-Schicht (engl.: GOP layer) speichert Daten in einer minimalen Einheit (z. B. einer Zeit ab dem Start einer Sequenz) einer Bildgruppe, die eine Einheit eines Direktzugriffs ist; eine Bildschicht (engl.: picture layer) speichert Daten mit gemeinsamen Eigenschaften (z. B. Bildtyp) eines Bildes; eine Scheibenschicht (engl.: slice layer) speichert gemeinsame Daten (z. B. Quantisierungsmerkmalwerte) von kleinen Bildern, die durch Teilen eines Bildes gebildet werden, um eine beliebige Länge zu haben; eine Makroblockschicht (engt.: macroblock layer) speichert gemeinsame Daten (z. B. Bewegungsvektoren) von Makroblöcken, die durch weiteres Teilen der Scheibenschichten gebildet werden; und eine Blockschicht (engl.: block layer) speichert Transformationskoeffizienten.
  • Die Sequenzschicht speichert ferner Daten von achtzehn Typen, wie in 12 gezeigt ist. Der Startkode der Sequenzschicht ist in einem Sequenzkopfkode (engl.: Sequence Header Code; SHC) gespeichert. Die Zahl von horizontalen Pixeln eines Bildes ist in einer horizontalen Größe (engl.: Horizontal Size, HS) gespeichert. Die Zahl von vertikalen Zeilen von Pixeln ist in einer vertikalen Größe (engl.: Vertical Size; VS) gespeichert. Ein Seitenverhältnis von Pixelabständen ist in einem Pixel-Seitenverhältnis (engl.: Pel Aspect Ratio; PAR) gespeichert. Der Anzeigezyklus von Bildern ist in einer Bildrate (engl.: Picture Rate; PR) gespeichert. Die Zahl von Bits pro Sekunde ist in einer Bitrate (engl.: Bit Rate; BR) gespeichert. Ein Markierungsbit „1" ist in einem Markierungsbit (engl.: Marker Bit; MB) gespeichert. Ein Parameter zum Bestimmen der Größe eines virtuellen Puffers zum Steuern der Menge von erzeugten Kodes ist in einer Videopufferverifizierer- (engl.: Video Buffering Verifyer; VBV) Puffergröße (engl.: Buffer Size; VBS) gespeichert. Ein Flag, das anzeigt, dass jeder Parameter innerhalb einer Grenze liegt, ist in einem Parametereinschränkungsflag (engl.: Constrained Parameters Flag; CPF) gespeichert. Ein Flag, das die Existenz einer Quantisierungsmatrix für Inner-Makroblöcke anzeigt, ist in einer Lade-Inner-Quantisierungsmatrix (engl.: Load Intra Quantize Matrix; LIQM) gespeichert. Ein Flag, das die Existenz einer Quantisierungsmatrix für Nicht-Inner-Makroblöcke anzeigt, ist in einer Lade-Nicht-Inner-Quantisierungsmatrix (engl.: Load Non-Intra Quantizer Matrix; LNIQM) gespeichert. Eine Quantisierungsmatrix für Nicht-Inner-Makroblöcke ist in einer Nicht-Inner-Quantisierungsmatrix (engl.: Non-Intra Quantizer Matrix; NIQM) gespeichert. Der Startkode von erweiterten Daten ist in einem Erweiterungsstartkode (engl.: Extension Start Code; ESC) gespeichert. Der Startkode von Benutzerdaten ist in einem Benutzerdatenstartkode (engl.: User Data Start Code; UDSC) gespeichert. Benutzerdaten sind in Benutzerdaten (engl.: User Data; UD) gespeichert. Der Beendigungskode einer Sequenz ist in einem Sequenzendkode (engl.: Sequence End Code; SEC) gespeichert.
  • Daten über Quantisierungsmatrixdaten sind in der IQM und NIQM, die in 12 gezeigt sind, gespeichert.
  • Mit anderen Worten, der Bitstromprozessor 51 führt ein Verarbeiten zum Anwenden einer Quantisierungsmatrix, die von der äußeren CPU 50 gesendet wird, aus, um die Quantisierungsmatrixdaten, die in der IQM oder der NIQM gespeichert sind, neu einzustellen.
  • Die Daten, die durch den Kodierer 10, der im Vorhergehenden beschrieben ist, kodiert werden, werden durch einen Dekodierer mit einer Struktur ähnlich zu derselben des herkömmlichen Dekodierers 30, der in 2 gezeigt ist, dekodiert.
  • Bei einem allgemeinen Dekodierer, bei dem die Quantisierungsmatrix, die bei dem Inversquantisierer 33 angewendet wird, fest ist, kann die Funktion eines Neuschreibens der Quantisierungsmatrix im Wesentlichen weggelassen sein. Die Struktur desselben ist unter Bezugnahme auf 13 beschrieben. Eine außen vorgesehene CPU 61 stellt für den Inversquantisierer 33 eine Quantisierungsmatrix, die in dem Inversquantisierer 33 anzuwenden ist, direkt ein, während eine Quantisierungsmatrix, die durch einen Quantisierer 14 angewendet wird und in dem Bitstrom gespeichert ist, ignoriert wird. Dies ermöglicht ferner die Ausführung eines Verarbeiten ähnlich zu demselben bei dem Fall, der im Vorhergehenden beschrieben ist.
  • Obwohl Kodierer zum Implementieren eines Inner-Kodieren beschrieben sind, können die vorliegenden Verfahren auch auf einen allgemeinen Kodierer angewendet sein, um auch P-Bilder und B-Bilder zu implementieren. Die Struktur dieses Beispiels ist unter Bezugnahme auf 14 beschrieben.
  • Ein Kodierer 10, der in 14 gezeigt ist, unterscheidet sich von dem Kodierer 10, der in 1 gezeigt ist, dahingehend, dass der Kodierer 10 (in 14 gezeigt) eine Bewegungskompensationsvorhersagefunktion (einen Addierer 12, einen Inversquantisierer 18 und einen Bewegungsvorhersager 22) hat. Da diese Funktion bei dem Dekodierer 30, der unter Bezugnahme auf 2 beschrieben ist, ähnlich ist, ist die Beschreibung derselben weggelassen. Bei der Bewegungskompensationsvorhersagefunktion werden quantisierte Daten, die aus dem Quantisierer 14 ausgegeben werden, invers quantisiert und für eine Bewegungskompensationsvorhersage verwendet. Damit die Differenz zwischen der Quantisierungsmatrix, die zum Kodieren angewendet wird, und der Quantisierungsmatrix, die zum Dekodieren angewendet wird, nicht eine Abweichung (Fehlersummierung) bei einer Bewegungskompensationsvorhersage erzeugen kann, ist es demgemäß notwendig, auch die Quantisierungsmatrix, die durch den Inversquantisierer 18 angewendet wird, in eine Änderungsquantisierungsmatrix (identisch zu der Quantisierungsmatrix, die durch den Inversquantisierer 33 in dem Dekoder 30, der in 2 gezeigt ist, angewendet wird) zum Neuschreiben durch die Matrixeinheit 41 zu ändern. Diese Funktion wird derart realisiert, dass der Matrixschalter 41 die neu geschriebene Quantisierungsmatrix auch für den Inversquantisierer 18 einstellt.
  • In der vorhergehenden Beschreibung wird der Mittelwert von Quantisierungsindizes, der basierend auf der Menge von erzeugten Kodes eines Bitstroms, der aus früheren Bilddaten erzeugt wird, berechnet wird, verwendet, um die Quantisierungsmatrix, die durch den Quantisierer 14 anzuwenden ist, zu bestimmen. Es können jedoch Daten, die die Schwierigkeit eines Bildkodierens repräsentieren, verwendet werden.
  • Es ist die Schwierigkeit eines Bildkodierens beschrieben. Die Schwierigkeit eines Bildkodierens repräsentiert die Schwierigkeit eines Bildkodierens, die, mit anderen Worten, ein Faktor der Menge von Daten, die erforderlich ist, um die gleiche Bildqualität aufrechtzuerhalten, wenn ein Kodieren ausgeführt wurde, ist. Es gibt Typen einer Weise zum Ausdrücken der Schwierigkeit eines Kodieren in Ziffern. Parameter zum Berechnen der Schwierigkeit eines Kodieren umfassen einen Bewegungsschätzungs- (engl.: Motion Estimation; ME) Rest, eine Inner-AC, eine Aktivität und eine Flachheit.
  • Die Inner-AC ist als die Summe des Quadrats von jedem Pixelniveau in einem 8 × 8-Pixel-DCT-Block und des Quadrats einer Differenz des Pixelniveaus von dem Mittelwert des Pixelniveaus definiert. Dieselbe repräsentiert eine Komplexität eines Bildmusters und wird basierend auf beispielsweise der Verteilung von Pixelniveaus für Helligkeitssignale basierend auf einem Originalbild berechnet. Dieselbe wird verwendet, um quantisierte Werte von Makroblöcken in dem TM5 (Test Model Edition Committee: „Test Model 5"; ISO/IEC JTC/SC292/WG11/N0400 (April 1993)) etc. zu berechnen.
  • Eine Flachheit hat eine Korrelation zwischen der Schwierigkeit (dem Schwierigkeitsniveau) eines räumlichen Videobildmusters und der Menge von komprimierten Daten. Wie im Vorhergehenden beschrieben ist, repräsentieren die Inner-AC und die Aktivität die Komplexität eines Bildmusters. Der ME-Rest repräsentiert die Geschwindigkeit einer Videobewegung und die Komplexität eines Bildmusters. Die Flachheit repräsentiert eine räumliche Videoflachheit. Da diese Faktoren stark mit dem Schwierigkeitsniveau eines Kodieren korreliert sind, ermöglicht die Verwendung einer linearen Funktion mit diesen Faktoren als Variablen eine Berechnung des Schwierigkeitsniveaus eines Kodieren. Die Inner-AC ist hier statistisch durch den folgenden Ausdruck ausgedrückt: Inner_AC = Σ|(f curr(x,y) – (Σ f curr)/N)|wobei Inner_AC die Inner-AC repräsentiert, f curr(x,y) das Niveau von jedem Pixel in einem DCT-Block repräsentiert, Σ f curr eine Summe von Pixelebenen in dem DCT-Block repräsentiert, N die Zahl von Pixeln in dem DCT-Block repräsentiert, und Σ eine Summe von Pixelebenen in dem DCT-Block repräsentiert.
  • Die vorliegenden Ausführungsbeispiele haben als ein Verfahren zum Ausdrücken des Schwierigkeitsniveaus eines Kodieren in genaueren Ziffern ein Verfahren zum jederzeitigen Aktualisieren einer Umwandlungsformel für eine Umwandung in das Schwierigkeitsniveau eines Kodieren von einer globalen Komplexität als ein Parameter, der z. B. in dem TM5 definiert ist, der eine Bildkomplexität bei dem gleichen Bildtyp, der vorher kodiert wurde, repräsentiert, vorgeschlagen. Der Erfinder hat ferner Statistiken (den ME-Rest, die Aktivität, die Flachheit und die Inner-AC), die vor einem Implementieren des Kodieren erfasst (im Folgenden als „vorher gelesen" bezeichnet) werden, vorgeschlagen. Bei diesem Verfahren werden beispielsweise jedes Mal, wenn ein Bild komprimiert wird, Gewichtungskoeffizienten für eine Näherung von kodierten Schwierigkeitsniveaudaten durch Reduzieren der globalen Komplexität durch vorher gelesene Statistiken berechnet, und Gewichtungskoeffizienten, die für arithmetische Operationen verwendet werden, werden aktualisiert. Durch Aktualisieren des Gewichtungskoeffizienten kann ein Gewichtungskoeffizient, der sich am besten für das Muster von Videodaten eignet, verwendet werden, und unter Verwendung von vorher gelesenen Statistiken kann eine hochpräzise Näherung des Schwierigkeitsniveaus eines Kodierens ausgeführt werden.
  • Insofern, als die Ausführungsbeispiele der im Vorhergehenden beschriebenen Erfindung zumindest teilweise unter Verwendung einer softwaregesteuerten Datenverarbeitungsvorrichtung implementiert sind, ist offensichtlich, dass ein Computerprogramm, das eine solche Softwaresteuerung liefert, und ein Speichermedium, durch das ein solches Computerprogramm gespeichert ist, als Aspekte der vorliegenden Erfindung angesehen werden.

Claims (12)

  1. Kodiervorrichtung (10) zum Kodieren von Videoquelldaten, welche umfasst: ein Quantisierungsmittel (14) zum Ausgeben von quantisierten Daten durch Anwenden einer Quantisierungsmatrix zum Quantisieren von Videoquelldaten; ein Kodiermittel (15) zum Kodieren der quantisierten Daten aus dem Quantisierungsmittel (14); ein Mittel zum Beschreiben von Daten, in einem kodierten Strom, der durch das Quantisierungsmittel (14) ausgegeben ist, in eine Quantisierungsmatrix, welche angewendet wird, sobald eine inverse Quantisierung (33) bei dem Dekodieren (30) von Videodaten implementiert wird; wobei sich die Quantisierungsmatrizen voneinander dadurch unterscheiden, dass die Werte von Hochfrequenz-Quantisierungskoeffizienten in der Quantisierungsmatrix, welche zur Quantisierung (14) angewendet wird, größer sind als die Werte der Hochfreguenz-Quantisierungskoeffizienten in der Quantisierungsmatrix, welche durch die Daten des kodierten Stroms beschrieben wurde, welche angewendet wird, sobald eine inverse Quantisierung (33) bei der Dekodierung implementiert wird; und ein Quantisierungsmatrixsteuerungsmittel (17, 42) mit der Funktion, basierend auf der Kodemenge, welche von dem kodierten Strom, der durch das Kodiermittel (15) ausgegeben ist, erzeugt wird, ein Komplexitätsniveau zu bestimmen, welches die Komplexität eines kodierten Bildes repräsentiert, und mit der Funktion, basierend auf dem bestimmten Komplexitätsniveau, aus einer Vielzahl von Quantisierungsmatrizen eine Quantisierungsmatrix auszuwählen, welche zu dem Quantisierungsmittel (14) weitergegeben wird, wobei das Quantisierungsmatrixsteuerungsmittel (17, 42) außerdem die Funktion besitzt, den Mittelwert von Quantisierugsindizes zu berechnen, welche von der Quantisierungmatrix zum Quantisieren verwendet werden, und das Komplexitätsniveau, welches die Komplexität des kodierten Bildes repräsentiert, basierend auf dem berechneten Mittelwert zu bestimmen.
  2. Kodiervorrichtung gemäß Anspruch 1, welche ein Mittel (13) für eine diskrete Kosinustransformation umfasst, zum Ausgeben von Koeffizienten einer diskreten Kosinustransformation, indem eine Verarbeitung für eine diskrete Kosinustransformation der Videoquelldaten implementiert wird, bevor die Videoquelldaten zu denn Quantisierungsmittel (14) weitergegeben werden.
  3. Kodiervorrichtung gemäß Anspruch 2, wobei das Quantisierungsmatrixsteuerungsmittel (17, 42) eine derartige Funktion besitzt, dass mit Zunahme der räumlichen Frequenzen der Koeffizienten der diskreten Kosinustransformation die Werte der Quantisierungskoeffiezienten in der Vielzahl von Quantisierungsmatrizen, aus welchen die Quantisierungsmatrix ausgewählt wird, welche für eine Quantisierung angewendet wird, sich relativ zu den Werten der Quantisierungskoeffizienten in der Quantisierungsmatrix erhöhen, welche angewendet wird, sobald eine inverse Quantisierung bei der Dekodierung implementiert wird.
  4. Kodiervorrichtung gemäß Anspruch 1, wobei das Quantisierungsmatrixsteuerungsmittel (17, 42) die Funktion besitzt, im Verhältnis zu der Anzahl der räumlichen Frequenzkomponenten eines Bildes, welches durch das Kodiermittel (15) kodiert ist, eine Quantisierungsmatrix mit höheren Quantisierungskoeffizienten auszuwählen.
  5. Kodiervorrichtung gemäß einen der vorherigen Anspruche, wobei das Quantisierungsmatrixsteuerungsmittel (17, 42) die Funktion besitzt, ein Komplexitätsniveau basierend auf Hysteresemerkmalen mit der Annahme zu bestimmen, dass ein einzelnes Komplexitätsniveau jedem einer Vielzahl von Wertebereichen des Mittelwerts der Quantisierungsindizes entspricht.
  6. Kodiervorrichtung gemäß einem der vorherigen Anspruche, welche ein Mittel (41, 50, 51) zum Ausführen eines Neuschreibens umfasst, sodass die Daten einer Quantisierungsmatrix, welche bei dem kodiertem Strom, der von dem Kodiermittel (15) ausgegeben ist, beschrieben wurde, in Daten geändert werden, welche die Quantisierungsmatrix beschreiben, welche angewendet wird, sobald eine inverse Quantisierung bei der Dekodierung implementiert wird.
  7. Kodierverfahren zum Kodieren von Viedeoquelldaten, welches nachfolgende Schritte umfasst: das Anwenden einer Quantisierungsmatrix zum Quantisieren (14) von Videoquelldaten; das Kodieren (15) von quantisierten Daten; das Beschreiben von Daten bei einem Strom der kodierten Daten in eine Quantisierungsmatrix, welche angewendet wird, sobald eine inverse Quantisierung (33) bei der Dekodierung (30) der Videodaten implementiert wird; wobei sich die Quantisierungsmatrizen voneinander dadurch unterscheiden, dass die Werte der Hochfrequenz-Quantisierungskoeffizienten in der Quantisierungsmatrix, welche zur Quantisierung (14) angewendet wird, größer sind als die Werte der Hochfrequenz-Quantisierungskoeffizienten in der Quantisierungsmatrix. welche von den Daten in dem kodierten Strom beschrieben wurde, welche angewendet wird, sobald eine inverse Quantisierung (33) bei der Dekodierung implementiert wird; das Bestimmen eines Komplexitätsniveaus basierend auf der Kodemenge, welche von dem kodierten Strom, der in dem Kodierschritt (15) ausgegeben wird, erzeugt wird, welches die Komplexität eines kodierten Bildes repräsentiert; das Auswählen einer Quantisierungsmatrix aus einer Vielzahl von Quantisierungsmatrizen, welche in dem Quantisierungsschritt (14) angewendet wird, basierend auf dem bestimmten Komplexitätsniveau; und das Berechnen des Mittelwerts der Quantisierungsindizes, welche von der Quantisierungsmatrix zum Quantisieren verwendet werden, und das Bestimmen des Komplexitätsniveaus basierend auf dem berechneten Mittelwert, welches die Komplexität des kodierten Bildes repräsentiert.
  8. Kodierverfahren gemäß Anspruch 7, welches das Ausgeben von Koeffizienten einer diskreten Kosinustransformation umfasst, indem eine Verarbeitung (13) für eine diskrete Kosinustransformation der Videoquelldaten implementiert wird, bevor die Videoquelldaten quantisiert (14) werden.
  9. Kodierverfahren gemäß Anspruch 8, wobei mit Zunahme der räumlichen Frequenzen der Koeffizienten einer diskreten Kosinustransformation die Werte der Quantisierungskoeffizienten bei der Vielzahl von Quantisierungmatrizen, aus welchen die Quantisierungsmatrix ausgewählt wird, welche für eine Quantisierung angewendet wird, sich relativ zu den Werten der Quantisierungskoeffizienten in der Quantisierungsmatrix erhöhen, welche angewendet wird, sobald eine inverse Quantisierug bei der Dekodierung implementiert wird.
  10. Kodierverfahren gemäß Anspruch 7, wobei der Auswahlschritt das Auswählen einer Quantisierungsmatrix mit höheren Quantisierungskoeffizienten im Verhältnis zu der Anzahl der räumlichen Frequenzkomponenten eines Bildes umfasst, welches in dem Kodierschritt (15) kodiert wird.
  11. Kodierverfahren gemäß einem der Anprüche 7 bis 10, welches das Bestimmen des Komplexitätsniveaus basierend auf Hysteresemerkmalen umfasst, mit der Annahme. dass ein einzelnes Komplexitätsniveau jedem einer Vielzahl von Wertebereichen des Mittelwerts der Quantisierungsindizes entspricht.
  12. Kodierverfahren gemäß einem der Ansprüche 7 bis 11, welches das Ausführen eines Neuschreibens umfasst, sodass die Daten einer Quantisierungsmatrix, welche bei dekodierten Strom im Kodierschritt (15) ausgegeben wird, welches die Komplexität des kodierten Bildes repräsentiert beschrieben wurde, in Daten geändert werden, welche die Quantisierungsmatrix beschreiben, welche angewendet wird, sobald eine inverse Quantisierung bei der Dekodierung implementiert wird.
DE1999635564 1998-09-18 1999-09-20 Kodiervorrichtung und -verfahren Expired - Lifetime DE69935564T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP26419598A JP4099682B2 (ja) 1998-09-18 1998-09-18 画像処理装置および方法、並びに記録媒体
JP26419598 1998-09-18

Publications (2)

Publication Number Publication Date
DE69935564D1 DE69935564D1 (de) 2007-05-03
DE69935564T2 true DE69935564T2 (de) 2008-03-06

Family

ID=17399811

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1999635564 Expired - Lifetime DE69935564T2 (de) 1998-09-18 1999-09-20 Kodiervorrichtung und -verfahren

Country Status (7)

Country Link
US (2) US6928113B1 (de)
EP (1) EP0987902B1 (de)
JP (1) JP4099682B2 (de)
KR (1) KR100709025B1 (de)
AU (1) AU4875899A (de)
CA (1) CA2282195A1 (de)
DE (1) DE69935564T2 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6606418B2 (en) * 2001-01-16 2003-08-12 International Business Machines Corporation Enhanced compression of documents
US8107524B2 (en) * 2001-03-30 2012-01-31 Vixs Systems, Inc. Adaptive bandwidth footprint matching for multiple compressed video streams in a fixed bandwidth network
US20070053428A1 (en) * 2001-03-30 2007-03-08 Vixs Systems, Inc. Managed degradation of a video stream
FI116350B (fi) * 2003-01-14 2005-10-31 Helge Simula Menetelmä, laite ja tietokoneohjelma siirtovälineellä digitaalisen kuvan koodaamiseen
US7675540B2 (en) * 2003-08-19 2010-03-09 Kddi Corporation Concealed regions complementing system of free viewpoint video images
KR101082233B1 (ko) * 2004-01-20 2011-11-09 파나소닉 주식회사 화상 부호화 방법, 화상 복호화 방법, 화상 부호화 장치,화상 복호화 장치 및 그 프로그램
US20050190836A1 (en) * 2004-01-30 2005-09-01 Jiuhuai Lu Process for maximizing the effectiveness of quantization matrices in video codec systems
CN101699866B (zh) * 2004-01-30 2016-08-03 松下电器(美国)知识产权公司 运动图片编码方法和运动图片解码方法
US7924915B2 (en) * 2005-01-28 2011-04-12 Broadcom Corporation Method and system for encoding video data
US20060176953A1 (en) * 2005-02-04 2006-08-10 Nader Mohsenian Method and system for video encoding with rate control
US20060285588A1 (en) * 2005-06-21 2006-12-21 Imagia Technologies Video encoder and encoding method with updateable quantization table
KR101518237B1 (ko) 2008-09-01 2015-05-15 삼성전자주식회사 영상의 역양자화 방법 및 장치, 복호화 방법 및 장치
US8588295B2 (en) 2009-03-09 2013-11-19 Mediatek Inc. Methods and electronic devices for quantization and de-quantization
TW201034465A (en) * 2009-03-11 2010-09-16 Jmicron Technology Corp Image compression method and related apparatus thereof
JP2010288166A (ja) * 2009-06-15 2010-12-24 Panasonic Corp 動画像符号化装置、放送波記録装置及び、プログラム
CA2819401C (en) 2011-02-10 2020-02-11 Sony Corporation Image processing device and image processing method
EP2685720B1 (de) * 2011-03-09 2016-09-14 Nec Corporation Videokodierungsvorrichtung, videodekodierungsvorrichtung, videokodierungsverfahren und videodekodierungsverfahren
JP6120490B2 (ja) * 2011-11-07 2017-04-26 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
CA2856348C (en) * 2011-12-19 2021-06-08 Sony Corporation Image processing device and method
US20150043637A1 (en) * 2012-04-13 2015-02-12 Sony Corporation Image processing device and method
JP6041554B2 (ja) * 2012-06-27 2016-12-07 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
JP6210368B2 (ja) * 2012-09-18 2017-10-11 サン パテント トラスト 画像復号方法および画像復号装置
JP6272441B2 (ja) * 2016-11-08 2018-01-31 キヤノン株式会社 画像復号装置、画像復号方法及びプログラム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69133177T2 (de) 1990-03-16 2003-04-17 Fujitsu Ltd Bilddatenbearbeitungssystem
JP2636622B2 (ja) * 1992-03-13 1997-07-30 松下電器産業株式会社 ビデオ信号の符号化方法及び復号化方法ならびにビデオ信号の符号化装置及び復号化装置
JPH05298419A (ja) * 1992-04-20 1993-11-12 Ricoh Co Ltd 画像ファイリング装置
US5614952A (en) * 1994-10-11 1997-03-25 Hitachi America, Ltd. Digital video decoder for decoding digital high definition and/or digital standard definition television signals
US5737481A (en) * 1994-06-22 1998-04-07 Matsushita Electric Industrial Co., Ltd. Information recording method, information recording apparatus and information recording medium
JP3703195B2 (ja) * 1995-03-27 2005-10-05 ヒューレット・パッカード・カンパニー カラー画像伝送装置
US5822005A (en) 1996-01-11 1998-10-13 Tektronix, Inc. Pre-oddification
DE69721373T2 (de) * 1996-05-14 2004-04-15 Daewoo Electronics Corp. Quantisierer für ein Videokodierungssystem
US6445739B1 (en) 1997-02-08 2002-09-03 Matsushita Electric Industrial Co., Ltd. Quantization matrix for still and moving picture coding
JPH10283343A (ja) * 1997-04-02 1998-10-23 Mitsubishi Electric Corp データ処理方法
US6249614B1 (en) * 1998-03-06 2001-06-19 Alaris, Inc. Video compression and decompression using dynamic quantization and/or encoding
US6483947B1 (en) 1998-03-17 2002-11-19 Matsushita Electric Industrial Co., Ltd. Video signal processing apparatus
TWI238600B (en) * 2000-03-01 2005-08-21 Sanyo Electric Co Level converting circuit, semiconductor device and display apparatus having such level converting circuit

Also Published As

Publication number Publication date
US6928113B1 (en) 2005-08-09
JP4099682B2 (ja) 2008-06-11
AU4875899A (en) 2000-03-23
US7460597B2 (en) 2008-12-02
KR100709025B1 (ko) 2007-04-19
DE69935564D1 (de) 2007-05-03
CA2282195A1 (en) 2000-03-18
US20050169547A1 (en) 2005-08-04
EP0987902A3 (de) 2002-01-23
EP0987902A2 (de) 2000-03-22
KR20000023174A (ko) 2000-04-25
JP2000102004A (ja) 2000-04-07
EP0987902B1 (de) 2007-03-21

Similar Documents

Publication Publication Date Title
DE69935564T2 (de) Kodiervorrichtung und -verfahren
DE69116869T2 (de) Digitale bildkodierung mit einer zufallsabtastung der bilder
DE69837003T2 (de) Vorrichtung und verfahren zur optimierung der bitratensteurung in einem kodiersystem
DE69834959T2 (de) Prädiktives Bilddekodierungsverfahren
DE69233411T2 (de) Verfahren und Einrichtung zur Kompression von sich bewegenden Videobildern mit adaptiver Bitzuordnung und Quantisierung
DE69829783T2 (de) Quantisierungsmatrix für die Codierung von Stand- und Bewegtbildern
DE69628935T2 (de) Vorrichtung und verfahren zur optimierung der bitratensteuerung in einem codierungssystem
DE69434668T2 (de) Adaptives Codierungs- und Decodierungsverfahren mit variabler Länge für Bilddaten
DE10300048B4 (de) Verfahren und Vorrichtung zur Bildcodierung und -decodierung
EP0309669B1 (de) Verfahren zur szenenmodellgestützten Bilddatenreduktion für digitale Fernsehsignale
DE69815159T2 (de) Kodierung von bewegten bildern mit globaler konstanter bitrate
DE10253380B4 (de) Verfahren und Einrichtung zum Kodieren sich bewegender Bilder mit fester Rechenkomplexität
DE4233543B4 (de) Vorrichtung zur Steuerung der Quantisierung von Videodaten
DE60027955T2 (de) Verfahren und Vorrichtung zur kontextbasierten Inter/Intra Kodierungsmodeauswahl
DE69637343T2 (de) Videokodierungs- und -dekodierungsvorrichtung
DE69813911T2 (de) VERFAHREN ZUR BESTIMMUNG VON BEWEGUNGSVEKTORFELDERN MIT LOKALER BEWEGUNGSSCHäTZUNG
DE69735838T2 (de) Videokodierer mit Transformationskoeffizientenprädiktion
DE69435000T2 (de) Bildkodierungsvorrichtung
DE69915277T2 (de) Verfahren und vorrichtung zur reduzierung von breathing-artefakten in komprimierten videodaten
DE69637335T2 (de) Bildsignalkodierungsmethode und -vorrichtung
DE69738264T2 (de) Videokodierungs- und Videodekodierungsvorrichtung
DE69434862T2 (de) Segmentierungs-basiertes entfernen von artefakten aus einem jpeg-bild
DE69816875T2 (de) Sequenzadaptive bit-zuordnung zur codierung von bildern
DE69921108T2 (de) Verfahren und vorrichtung zur adaptiven codierung eines videodatenstroms
DE60035740T2 (de) Vorrichtung und Verfahren zur Kodierung von Bewegtbildsignalen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition