DE20222025U1 - Verbesserter Blocktransformationsdecodierer für die Bild- oder Videodecodierung sowie zugehörige Vorrichtungen und Handcomputergeräte - Google Patents

Verbesserter Blocktransformationsdecodierer für die Bild- oder Videodecodierung sowie zugehörige Vorrichtungen und Handcomputergeräte Download PDF

Info

Publication number
DE20222025U1
DE20222025U1 DE2002222025 DE20222025U DE20222025U1 DE 20222025 U1 DE20222025 U1 DE 20222025U1 DE 2002222025 DE2002222025 DE 2002222025 DE 20222025 U DE20222025 U DE 20222025U DE 20222025 U1 DE20222025 U1 DE 20222025U1
Authority
DE
Germany
Prior art keywords
transform
block
inverse
decoder
pass
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
DE2002222025
Other languages
English (en)
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of DE20222025U1 publication Critical patent/DE20222025U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/147Discrete orthonormal transforms, e.g. discrete cosine transform, discrete sine transform, and variations therefrom, e.g. modified discrete cosine transform, integer transforms approximating the discrete cosine transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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
    • 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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Algebra (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)

Abstract

Vorrichtung, die einen Blocktransformationsvideodecodierer enthält, der umfasst: einen Dequantisierer, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block; und einen inversen Transformierer, der eingerichtet ist zum inversen Transformieren der dequantisierten Transformationskoeffizienten, wobei die inverse Transformation die folgenden Operationen enthält: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y;und d' = u – z,wobei der Ausdruck ”>> 1” eine Verschiebung nach rechts um ein Bit angibt, wobei A, B, C und D Werte einer bestimmten Zeile oder Spalte eines gegebenen, invers zu transformierenden Blocks darstellen, wobei u, v, y und z Hilfsvariablen darstellen, und wobei a', b', c' und d' invers transformierte Werte darstellen.

Description

  • GEBIET DER ERFINDUNG
  • Diese Erfindung bezieht sich im allgemeinen auf Decodierer für Bild- oder Videosignale und insbesondere auf Blocktransformationsdecodierer und zugehörige Vorrichtungen und Handcomputergeräte mit verbesserten Eigenschaften.
  • HINTERGRUND DER ERFINDUNG
  • Die diskrete Kosinustransformation (DCT) wird allgemein bei der Blocktransformationscodierung von Bildern und Video (Abfolge von Bildern), wie etwa JPEG und MPEG verwendet. Unter anderen Gründen geschieht dies, weil die DCT Zufallssignale (wie etwa jene, die Bilddaten entsprechen) in niederfrequente Teile von größerer Wichtigkeit und hochfrequente Teile geringerer Wichtigkeit im Bezug auf die visuelle Qualität des Bildes trennt, wodurch die Kompression vereinfacht wird.
  • H.26L ist beispielsweise eine Bild- und/oder Videocodectechnik, die Frames unter Verwendung von 4×4 Pixelblöcken aufbaut. Im Gegensatz zu MPEG und JPEG, die 8×8 Blöcke verwenden, erzielt H.26L eine Kompression mit relativ hoher Qualität mit 4×4 Pixelblöcken unter Verwendung von Prädiktionsinformationen existierender anderer Blöcke in demselben Frame (d. h. Intra-Frame-Codierung) zusätzlich zu der Schätzung und Bewegungskompensation zwischen den Frames (d. h. Inter-Frame-Codierung). Um die Intra-Frame-Prädiktion zu bewerkstelligen, teilt ein H.26L-Codierer im allgemeinen dem entsprechenden H.26L-Decodierer mit, welcher andere, vorherige Block von Pixeln in dem im Aufbau befindlichen Frame verwendet wird, als Basis für die Vorhersage zusammen damit mit, dass er kennzeichnet, welcher von sechs möglichen Prädiktoren (Formeln) beim Bestimmen der Pixel für den neuen Block (von jenen der vorherigen Intra-Frame-Blöcke) zu verwenden ist. Die führt zu einem Prädiktionsfehler, der auch dem Decodierer bereitgestellt wird, um den neuen Block zu korrigieren. Die Prädiktionsfehler-Informationen werden mit der Blocktransformation (DCT) codiert und codiert zu dem Decodierer gesendet, um die Fehlerinformationen über eine inverse Transformation neu zu berechnen und so den vorhergesagten Block zu korrigieren.
  • Das Codieren und Decodieren von Bildern und Video nimmt einen beträchtlichen Umfang von Rechenleistung in Anspruch. Wie bekannt ist, verfügt ein Codierer normalerweise über weitaus mehr Verarbeitungsleistung als dies die meisten der Decodierer tun, die die Daten in Bilder umwandeln, da Decodierer normalerweise in Verbrauchergeräten eingesetzt sind. Die Decodierung von Bildern und Video kann beispielsweise in Fernsehvorschaltgeräten, PDAs (Personal Digital Assistants), PCs in Taschengröße und fortschrittlichen Mobiltelefonen stattfinden.
  • Wenn man die Codier- und Decodierverfahren für Bild und Video berücksichtigt, ist es somit von Bedeutung, die Decodierung einfach zu halten, auch wenn dies bedeutet, dass die Codierung berechnungsmäßig aufwendiger gestaltet werden muss. Alles, was die Decodierung vereinfachen kann, ist wünschenswert, vorausgesetzt, dass bei einer Vorgehensweise in dieser Art, die Codier- und Decodiervorgänge bestehende Kompressionsgrade, die abschließende Bildqualität und den Umfang anderer Ressourcen, die in dem Decodierer verwendet werden, nicht wesentlich hinsichtlich bestehender Technik nachteilig beeinflussen.
  • ÜBERSICHT ÜBER DIE ERFINDUNG
  • Erfindungsgemäß wird eine Vorrichtung bereitgestellt, die einen Blocktransformationsvideodecodierer enthält, der einen Dequantisierer umfasst, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block. Der Blocktransformationsvideodecodierer umfasst ferner einen inversen Transformierer, der eingerichtet ist zum inversen Transformieren der dequantisierten Transformationskoeffizienten, wobei die inverse Transformation die folgenden Operationen enthält: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; und d' = u – z.
  • Hierbei gibt der Ausdruck ”>> 1” eine Verschiebung nach rechts um ein Bit an, wobei A, B, C und D Werte einer bestimmten Zeile oder Spalte eines gegebenen, invers zu transformierenden Blocks darstellen, wobei u, v, y und z Hilfsvariablen darstellen, und wobei a', b', c' und d' invers transformierte Werte darstellen.
  • Ferner wird erfindungsgemäß ein Blocktransformationsdecodierer zur Bild- oder Videodecodierung bereitgestellt, der einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten umfasst, wobei der Blocktransformationsdecodierer eingerichtet ist zum Durchführen eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten, und wobei der Blocktransformationsdecodierer ferner eingerichtet ist zum Durchführen eines inversen Transformationsprozesses zum Anwenden einer inversen Transformation auf die dequantisierten Transformationskoeffizienten. Der inverse Transformationsprozess schließt die folgenden Operationen ein: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; und d' = u – z, wobei ”>> 1” eine Verschiebeoperation nach rechts um ein Bit angibt, wobei A, B, C und D invers zu transformierende Werte darstellen, wobei u, v, y und z Hilfsvariablen darstellen und wobei a', b', c' und d' invers transformierte Werte darstellen.
  • Des Weiteren wird erfindungsgemäß ein Blocktransformationsdecodierer für Bild- oder Videodecodierung bereitgestellt, der einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten umfasst sowie Mittel zum Durchführen eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten und Mittel zum Durchführen eines inversen Transformationsprozesses, um eine inverse Transformation auf die dequantisierten Transformationskoeffizienten anzuwenden. Der inverse Transformationsprozess schließt die folgenden Operationen ein: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; und d' = u – z, wobei ”>> 1” eine Verschiebeoperation nach rechts um ein Bit angibt, wobei A, B, C und D invers zu transformierende Werte darstellen, wobei u, v, y und z Hilfsvariablen darstellen und wobei a', b', c' und d' invers transformierte Werte darstellen.
  • Darüber hinaus stellt die Erfindung eine Vorrichtung bereit, die einen Blocktransformationsvideodecodierer enthält. Der Blocktransformationsvideodecodierer umfasst einen Entropiedecodierer, der eingerichtet ist zum Entropiedecodieren quantisierter Transformationskoeffizienten für einen gegebenen Block, einen Dequantisierer, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block, und einen zweidimensionalen inversen Transformierer, der eingerichtet ist, um die dequantisierten Transformationskoeffizienten zweidimensional invers zu transformieren, wobei die zweidimensionale inverse Transformation Ergebnisse erzielt, wie sie durch die folgenden Gleichungen angegeben sind: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; und d' = u – z.
  • Hierbei stellen A, B, C und D Werte einer bestimmten Zeile oder Spalte eines gegebenen, invers zu transformierenden Blocks, u, v, y und z Hilfsvariablen und a', b', c' und d' entsprechende invers transformierte Werte dar.
  • Darüber hinaus wird erfindungsgemäß auch eine Vorrichtung bereitgestellt, die einen Blocktransformationsvideodecodierer enthält. Der Blocktransformationsvideodecodierer umfasst einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten für einen gegebenen Block, einen Dequantisierer, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block, und einen zweidimensionalen inversen Transformierer, der eingerichtet ist, um die dequantisierten Transformationskoeffizienten basierend auf der folgenden Inverstransformationsmatrix zweidimensional invers zu transformieren:
    Figure 00040001
  • Zusätzlich betrifft die Erfindung einen Blocktransformationsdecodierer zur Bild- oder Videodecodierung, der einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten umfasst, wobei der Blocktransformationsdecodierer eingerichtet ist zur Durchführung eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten, und wobei der Blocktransformationsdecodierer eingerichtet ist zum Durchführen eines inversen Transformationsprozesses zur Anwendung einer inversen Transformation auf die dequantisierten Transformationskoeffizienten, wobei der inverse Transformationsprozess Berechnungen anwendet, die auf Werten basieren, die in der folgenden Matrix dargestellt sind:
    Figure 00050001
  • Ein weiterer erfindungsgemäßer Blocktransformationsdecodierer zur Bild- oder Videodecodierung umfaßt einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizierten, Mittel zum Durchführen eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten, und Mittel zum Durchführen eines inversen Transformationsprozesses zum Anwenden einer inversen Transformation auf die dequantisierten Transformationskoeffizienten, wobei der inverse Transformationsprozess Berechnungen anwendet, die auf Werten basieren, die in der folgenden Matrix dargestellt sind:
    Figure 00050002
  • Ferner betrifft die Erfindung Handcomputergeräte, die erfindungsgemäße Blocktransformationsdecodierer umfassen.
  • Bevorzugte Ausgestaltungen sind in den Unteransprüchen angegeben.
  • Kurz gesagt gibt die vorliegende Erfindung ein verbessertes System und eine verbesserte Blocktransformation an, die die Berechnungskomplexität für Bilder und Video sowohl an dem Codierer als auch an dem Decodierer deutlich vereinfacht. Gleichzeitig werden Kompression, Bild- und Videoqualität sowie andere Ressourcen lediglich vernachlässigbar beeinträchtigt.
  • Insbesondere werden eine orthogonale Blocktransformation und eine entsprechende inverse Transformation mit neuen ganzzahligen Näherungen an die diskrete Kosinustransformation (DCT) zusammen mit anderen Berechnungsänderungen angegeben, die die Berechnungskomplexität sowohl an dem Codierer als auch an dem Decodierer deutlich vermindern. Tatsächlich wurde bei einer Anwendung an dem Codierer und dem Decodierer die Anzahl der Transformationsoperationen pro Koeffizient auf vier Additionen und eine Verschiebung in der 16-Bit-Arithmetik (von vier Additionen und drei Multiplikationen in der 32-Bit-Arithmetik, die mit der Transformation nach H.26L erforderlich ist) verringert. Die vorliegende Erfindung transformiert korrekt die Pixelinformationen (z. B. Fehlerkorrekturdaten), da die Quantisierung (Skalieren und Runden auf eine ganze Zahl) während des Codierens und die Dequantisierung während des Decodierens durch die Verwendung von einer aus drei Tabellen, die auf der Basis jeder Position des Koeffizienten gewählt werden, Parameterwerte haben, die bereits Faktoren anderer Transformationsmultiplikationen kompensieren, mit Ausnahme jener, die von der Verschiebeoperation während der Vorgänge der Transformation und der inversen Transformation ausgeführt wird.
  • Weiterhin kann während des Decodierens an jedem quantisierten Koeffizienten der Decodierer eine 16-Bit-Multiplikation, um diesen quantisierten Koeffizienten in einen Transformationskoeffizienten zu dequantisieren, anstelle einer 32-Bit-Multiplikation ausführen (wie sie bei H.26L verlangt wird). An vielen Geräten mit typischen Bildern und Video – insbesondere an dem Decodierer – sind somit die Verarbeitungsvorteile der vorliegenden Erfindung im Bezug auf H.26L mit lediglich vernachlässigbaren, wenn überhaupt vorhandenem, Verlust an Qualität und/oder Kompression signifikant.
  • Andere Vorzüge und Vorteile werden aus der folgenden detaillierten Beschreibung unter Bezugnahme auf die beiliegenden Zeichnungen ersichtlich.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 ist ein Blockschaltbild, das ein beispielhaftes Computersystem darstellt, in dem die vorliegende Erfindung enthalten sein kann;
  • 2 ist ein Blockschaltbild; das Komponenten zeigt, die bei der Codierung von Pixeln von Video- oder Bilddaten in codiertes Video und der Decodierung codierten Videos in Pixelinformationen verwendet werden, enthaltend die Transformation, Quantisierung, Dequantisierung und inverse Transformation, gemäß einem Aspekt der vorliegenden Erfindung;
  • 3 ist eine Darstellung einer Schmetterlingsstruktur, die die verbesserte Transformationsmatrix gemäß einem Aspekt der vorliegenden Erfindung zeigt; und
  • 4 ist eine Darstellung einer Schmetterlingsstruktur, die die verbesserte inverse Transformationsmatrix gemäß einem Aspekt der vorliegenden Erfindung zeigt.
  • DETAILLIERTE BESCHREIBUNG
  • BEISPIELHAFTE ARBEITSUMGEBUNG
  • 1 zeigt ein Beispiel einer geeigneten Arbeitsumgebung 120, in der die Erfindung insbesondere zum Decodieren von Bild- und/oder Videodaten eingesetzt werden kann. Die Arbeitsumgebung 120 ist lediglich ein Beispiel einer geeigneten Arbeitsumgebung und soll keine Einschränkung des Umfangs der Verwendung oder Funktionalität der Erfindung darstellen. Andere hinreichend bekannte Berechnungs-Systeme, -Umgebungen und/oder -Konfigurationen, die sich für die Verwendung mit der Erfindung eignen können, jedoch nicht darauf beschränkt sind, beinhalten PCs, Servercomputer, Laptop- oder Handgeräte, Multiprozessorsysteme, mikroprozessorbasierte Systeme, programmierbare Unterhaltungselektronik, Netzwerk-PCs, Minicomputer, Großrechner, verteilte Rechenumgebungen, die eines der oben beschriebenen Systeme oder Geräte enthalten, und dergleichen. Es ist beispielsweise wahrscheinlich, dass das Codieren von Bild- und/oder Videobilddaten in vielen Fällen auf einem Computer mit einer größeren Rechenleistung als bei derzeitigen PC-Handgeräten ausgeführt wird, wobei es jedoch keinen Grund gibt, dass die Codierung nicht auf der beispielhaften Vorrichtung oder die Decodierung auf einer leistungsfähigeren Maschine ausgeführt werden kann.
  • Die Erfindung kann in dem allgemeinen Zusammenhang mit von einem Computer ausführbaren Anweisungen, wie etwa Programmmodulen beschrieben werden, die von wenigstens einem Computer oder anderen Geräten ausgeführt werden. Im allgemeinen enthalten Programmmodule Routinen, Programme, Objekte, Komponenten, Datenstrukturen und dergleichen, die besondere Aufgaben ausführen oder spezielle abstrakte Datentypen einsetzen. Normalerweise kann die Funktionalität der Programmmodule je nach Wunsch in unterschiedlichen Ausführungsformen kombiniert oder verteilt werden. Die Berechnungsvorrichtung 120 enthält normalerweise wenigstens eine bestimmte Form computerlesbarer Medien. Computerlesbare Medien können beliebige verfügbare Medien sein, auf die von der Berechnungsvorrichtung 120 zugegriffen werden kann. Als Beispiel und nicht als Einschränkung können computerlesbare Medien Computerspeichermedien und Kommunikationsmedien umfassen. Computerspeichermedien enthalten flüchtige und nicht flüchtige, entnehmbare und nicht entnehmbare Medien, die in einem beliebigen Verfahren oder einer beliebigen Technik zum Speichern von Informationen, wie etwa computerlesbaren Anweisungen, Datenstrukturen, Programmmodulen oder anderen Daten, eingesetzt werden. Computerspeichermedien umfassen, ohne darauf beschränkt zu sein, einen RAM, ROM, EEPROM, einen Flash-Speicher oder andere Speichertechnik, eine CD-ROM, eine DVD (Digital Versatile Disk) oder anderen optischen Speicher, Magnetkassetten, ein Magnetband, einen magnetischen Plattenspeicher oder andere Magnetspeichervorrichtungen, oder ein beliebiges anderes Medium, das verwendet werden kann, um die gewünschten Informationen zu speichern und auf das von der Berechnungsvorrichtung 120 zugegriffen werden kann. Kommunikationsmedien verkörpern normalerweise computerlesbare Anweisungen, Datenstrukturen, Programmmodule oder andere Daten in einem modulierten Signal, wie etwa einer Trägerwelle oder einem anderen Transportmechanismus, und enthalten beliebige Informationszustellungsmedien. Der Begriff ”moduliertes Datensignal” bezeichnet ein Signal, bei dem wenigstens eine seiner Eigenschaften derart eingestellt oder geändert werden, dass Informationen in dem Signal codiert werden. Als Beispiel und nicht als Einschränkung umfassen Kommunikationsmedien drahtgebundene Medien, wie etwa ein drahtgebundenes Netzwerk oder eine Kabeldirektverbindung, und drahtlose Medien, wie etwa akustische, hochfrequente, infrarote und andere drahtlose Medien. Kombinationen beliebiger der oben genannten Einrichtungen sollten ebenfalls im Geltungsbereich computerlesbarer Medien enthalten sein.
  • 1 zeigt Funktionskomponenten eines derartigen Computer-Handgerätes 120, enthaltend einen Prozessor 122, einen Speicher 124, eine Anzeigeeinrichtung 126, und eine Tastatur 128 (die eine physikalische oder virtuelle Tastatur sein kann). Der Speicher 124 enthält im allgemeinen sowohl einen flüchtigen Speicher (z. B. einen RAM), als auch einen nicht flüchtigen Speicher (wie etwa einen ROM, PCMCIA-Karten und dergleichen). Ein Betriebssystem 130 befindet sich in dem Speicher 124 und wird auf dem Prozessor 122 ausgeführt, wie etwa das Windows® CE Betriebssystem von der Microsoft® Corporation oder ein anderes Betriebssystem.
  • Wenigstens ein Applikationsprogramm 132 ist in den Speicher 124 geladen und läuft auf dem Betriebssystem 130. Beispiele von Applikationen enthalten E-Mail-Programme, Terminplanprogramme, PIM-Programme (PIM – Verwaltung persönlicher Informationen), Textverarbeitungsprogramme, Tabellekalkulationsprogramme, Internetbrowserprogramme und dergleichen. Der Handgeräte-PC 120 kann zudem ein Hinweisverwaltungsprogramm 134 enthalten, das in den Speicher 124 geladen ist und auf dem Prozessor 122 ausgeführt wird. Das Hinweisverwaltungsprogramm 134 verwaltet Hinweisanfragen etwa von den Applikationsprogrammen 132.
  • Der Handgeräte-PC 120 hat eine Stromversorgung 136, die als wenigstens eine Batterie ausgeführt ist. Die Stromversorgung 136 kann zudem eine externe Stromquelle enthalten, die die eingebauten Batterien umgeht oder wieder auflädt, wie etwa einen Wechselstromadapter oder einen mit Strom versorgten Andockkäfig.
  • Der beispielhafte Handgeräte-PC 120, der in 1 dargestellt ist, ist mit drei unterschiedlichen Typen externer Hinweismechanismen ausgestattet: mit wenigstens einer Leuchtdiode (LED) 140 und einem Tongenerator 144. Diese Vorrichtungen können mit der Stromversorgung 136 direkt gekoppelt sein, so dass sie bei Aktivierung für eine Dauer eingeschaltet bleiben, die von einem Hinweismechanismus diktiert wird, selbst wenn sich der Handgeräte-PC-Prozessor 122 und andere Komponenten abschalten könnten, um Batteriestrom zu sparen. Die LED 140 bleibt vorzugsweise unbestimmt eingeschaltet, bis der Benutzer eine Aktion ausführt. Es wird darauf hingewiesen, das derzeitige Versionen des Tongenerators 144 für Batterien heutiger Handgeräte-PCs zu viel Strom verbrauchen, weshalb er so eingerichtet ist, dass er sich, wenn dies der übrige Teil des Systems tut, oder nach einer bestimmten zeitlich begrenzten Zeit, nach der Aktivierung abschaltet.
  • CODIEREN UND DECODIEREN
  • Es sei als Hintergrundinformation angegeben, dass die diskrete Kosinustransformation (DCT) einen Länge-N-Vektor x in einen neuen Vektor X von Transformationskoeffizienten durch eine Lineartransformation X = Hx umwandelt, wobei das Element in der k-ten Zeile und der n-ten Spalte von H definiert ist durch:
    Figure 00090001
    für k = 0, 1, ..., N – 1, und n = 0, 1, ..., N – 1, mit c0 = √2 und ck = 1 für k > 1. Diese Matrix ist orthogonal, aso dass ihre Inversion gleich ihrer Transposition ist, das heißt: x = H–1X = HTX.
  • Ein Nachteil der DCT besteht darin, dass die Einträge H(k, n) irrationale Zahlen sind und somit gannzahlige Eingangsdaten x(n) auf irrationale Transformationskoeffizienten X(k) abgebildet werden. Wenn die direkten und die inversen Transformationen kaskadenartig berechnet werden, stimmen infolgedessen bei digitalen Computern die Ausgangsdaten nicht exakt mit den Eingangsdaten überein. Wenn mit anderen Worten berechnet wird, wie X = Hx, und u = gerundet (HTX), dann gilt für sämtliche n nicht u(n) = x(n). Durch Einsetzen geeigneter Skalierfaktoren α und γ, wie etwa X = γHx und u = gerundet (αHTX), ist u(n) = Gx(n), wobei G eine ganze Zahl ist, für beinahe sämtliche n, wenn α und γ ausreichend groß gewählt sind, wobei dies ein exaktes Ergebnis nicht garantiert.
  • Bei einem bewegungskompensierten Videocodierer werden beispielsweise die Daten vergangener decodierter Frames als Referenzinformationen für Prädiktionsinformationen verwendet, die benutzt werden, um den momentanen Frame zu erzeugen. Daher erzeugt der Codierer als Teil der Codierung seine eigenen decodierten Frames, wobei der Codierer die inversen Transformationen berechnen muss. Wird die Formel u = gerundet (αHTX) verwendet, dann führen unterschiedliche Fließkommaformate und Rundungsstrategien in unterschiedlichen Prozessoren zu unterschiedlichen Ergebnissen. Infolgedessen gibt es eine Verschiebung zwischen den decodierten Daten an dem Codierer gegenüber jenen, die von Decodierern (die andere Prozessoren haben) decodiert werden, wobei sich das Bild je Frame zunehmend verschlechtert, da der Codierer seine Prädiktions-/Bewegungsinformationen auf Frames von Blöcken stützt, die in zunehmendem Maße von den Frames von Blöcken abweichen, die der Decodierer erzeugt.
  • Einer Lösung des Datenverschiebungsproblems nähert sich die Matrix H mittels einer Matrix, die lediglich ganze Zahlen enthält, wodurch Rundungsfehler beseitigt werden. Wenn die Zeilen von H orthogonal sind und denselben Betrag (Summe der Quadrate) haben, dann folgt daraus, dass u exakt in ganzzahliger Arithmetik für sämtliche ganze Zahlen x berechnet werden kann. Wenn mit anderen Worten die direkte Transformation durch X = Hx und die inverse Transformation durch u = HTX berechnet wird, dann resultiert daraus u = Gx, wobei G eine ganze Zahl gleich dem quadrierten Betrag einer beliebigen der Zeilen in H ist.
  • Ein Weg, ganzzahlige Näherungen für die DCT zu erzeugen, besteht in der Verwendung folgender Formel: Q(k, n) = gerundet(αH(k, n)) wobei α ein Skalierparameter ist.
  • Bei dem Videokompressionsstandard nach H.26L wird das Bild aus Blöcken mit 4×4 Pixeln aufgebaut, wobei N = 4 in der DCT-Formel bei H.26L ist. Dies führt zu der DCT-Matrix gleich:
    Figure 00110001
    wobei c ≙ √2cos(π/8) und s ≙ √2sin(π/8) ist.
  • Die Transformationsmatrix in der aktuellen Version von H.26L erhält man durch Setzen von α 26, wodurch sich die Werte wie folgt berechnen:
    Figure 00110002
  • Mit einem Skalierparameterwert von 26 sind die Zeilen und Spalten von Q0 orthogonal zueinander (d. h. das Skalarprodukt von zwei beliebigen Spalten ist Null), und sämtliche Zeilen und Spalten haben einen Betrag gleich 676. Für Werte bei denen α < 50 ist, liefern tatsächlich lediglich α = 2 oder α = 26 orthogonale Matrizen mit Zeilen gleicher Beträge. Die Lösung mit α = 2 führt jedoch nicht zu einer guten Kompression, und größere Werte von α sind wegen des Anstiegs der Berechnungskomplexität (z. B. Wortlänge), die erforderlich ist, um die Ergebnisse der direkten Transformation X = Q0x zu berechnen, nicht attraktiv. Somit wurde bislang α = 26 bei H.26L gewählt.
  • Die inverse Transformation ist durch x' = Q0X derart definiert, dass sie ebenfalls mit ganzzahliger Arithmetik berechnet werden kann. Aus der oben genannten Definition folgt x' = 676x, d. h. die rekonstruierten Daten x' sind gleich den ursprünglichen Daten x, verstärkt mit einem ganzzahligen Gewinn von 676 (der der Betrag einer beliebigen Zeile in Q0 ist).
  • Gemäß einem Aspekt der vorliegenden Erfindung wird eine Blocktransformationsmatrix angegeben, die ganzzahlige Näherungen verwendet, die orthogonal sind, aber dennoch unterschiedliche Wert aufweisen, die die Berechnungskomplexität beim Codieren und Decodieren signifikant verringern. Insbesondere wird mit Verwendung von α = 2,5 die folgende Matrix erzeugt:
    Figure 00120001
  • Es wird darauf hingewiesen, dass die Zeilen von Q0 orthogonal zueinander sind und, wenngleich ihre Beträge unterschiedlich sind (die Zeilen 0 und 2 haben Beträge gleich 4, während die Zeilen 1 und 3 Beträge gleich 10 haben), dies, wie es unten beschrieben wird, bei der Quantisierung und Dequantisierung in einer Weise gehandhabt wird, die die Berechnungskomplexität nicht wesentlich erhöht.
  • Wendet man sich 2 der Zeichnungen zu, so sind dort ein Blocktransformationscodierer 200 und ein Blocktransformationsdecodierer 222 dargestellt, die über einen bestimmten Typ eines Mediums und/oder Zwischenvorrichtungen 220 verbunden werden können. Wie es verständlich ist, muss ein Codierer 200 seine Ausgabe für den Decodierer 222 nicht direkt verfügbar machen, weshalb die Linie, die mit 220 in 2 gekennzeichnet ist, nahezu jeden beliebigen Typ von Medium oder Vorrichtung repräsentieren kann, wie etwa ein Netzwerkkabel, ein drahtloses Sendemedium, eine Telefonleitung, eine Speichervorrichtung, einen Router und/oder nahezu jede Kombination aus diesen.
  • Im allgemeinen arbeitet der Codierer 200 so, dass er jeden Block von N×N Eingangspixeldaten (die beispielsweise Fehlerkorrekturinformationen repräsentieren) über trennbare, zweidimensionale Transformationen 204 transformiert. Insbesondere werden erste Zeilen von Pixeldaten innerhalb des Blocks durch einen Zeilentransformationsprozess 206 transformiert und anschließend die Ergebnisse der Zeilentransformation (die in 2 nicht gesondert dargestellt sind) durch einen Spaltentransformationsprozess 208 in die resultierenden Transformationskoeffizienten 210 transformiert. Mit anderen Worten führt die zweidimensionale DCT im wesentlichen eine eindimensionale DCT an jeder Zeile eines Blocks von Pixeln aus, gefolgt von einer eindimensionalen DCT an jeder Spalte des Blocks von Pixeln, der durch die eindimensionalen DCTs an den Zeilen erzeugt worden ist. Die Zeilen- und Spaltentransformationen können in umgekehrter Reihenfolge ausgeführt werden, wobei man dasselbe Ergebnis erhält.
  • Bei H.26L führt die festgelegte Transformationsmatrix zu den folgenden Formeln für die Berechnung des Transformationskoeffizienten: A = 13a + 13b + 13c + 13d B = 17a + 7b – 7c – 17d C = 13a – 13b – 13c + 13d D = 7a – 17b –+ 17c – 7d wobei [abcd] zunächst eine Zeile von Pixelwerten repräsentiert und anschließend, nach der Zeilentransformation, eine Spalte jener zeilentransformierten Werte in einem 4×4-Block darstellt. In der Praxis können diese Formeln jedoch vereinfacht werden, und die DCT-Matrix hat eine rekursive Struktur, die die Anzahl erforderlicher Multiplikations- und Additionsoperationen verringert. Trotzdem erfordert die obige Matrix wenigstens vier Additionen und drei Multiplikationen, um die Transformationskoeffizienten für jedes Pixel zu berechnen. Da darüber hinaus jedem Pixel ein Neun-Bit-Wert zugewiesen sein könnte, erfordert bei der Multiplikation durch die Zeilen- und Spaltenfaktoren (der Gewinn ist gleich dem Betrag von 676) die Berechnung eine 32-Bit-Arithmetik, bei der eine einzige Berechnung so viel Zeit in Anspruch nimmt wie zahlreiche 16-Bit-Berechnungen. Wenngleich diese Beterachtungen in der Regel während der Codierung bei diesen durch H.26L festgelegten Matrixwerte von nicht so großer Bedeutung sind, treten diese zusätzlichen Operationen und die 32-Bit-Arithmetik ebenfalls während des Decodierens auf, bei der der Aufwand beträchtlich ist.
  • Im Gegensatz zu der durch H.26L festgelegten Matrix, lautet bei Verwendung derselben allgemeinen Formeldarstellung, wie sie oben erläutert wurde, die Blocktransformationsmatrix der folgenden Erfindung wie folgt:
    Figure 00130001
    was zu den folgenden Formeln zur Berechnung der Transformationskoeffizienten führt: A = a + b + c + d B = 2a + b – c – 2d C = a – b – c + d D = a - 2b + 2c – d
  • Ein Teil des Grundes, weshalb diese Formel/Matrix besser arbeitet, besteht darin, dass anstelle der Ausführung einzelner Multiplikationen in der Transformationsstufe, die Multiplikatoren im wesentlichen in der Quantisierphase gehandhabt werden, indem einfach die Werte geändert werden, die bei der Skalierung Verwendung finden. Infolgedessen erfolgt die einzige Multiplikation mit diesen Formeln durch eine Potenz von zwei, was in Prozessoren über eine einfache Linksverschiebeoperation und nicht durch eine tatsächliche Multiplikation erreicht wird. Mit u, v, y und z als Hilfsvariable, wobei ”<< 1” eine Verschiebung nach links um ein Bit ist (äquivalent zu einer Multiplikation mit zwei, jedoch berechnungsmäßig schneller), vereinfachen sich die obigen Formeln auf die folgenden Formeln: u = a + d; v = b + c; y = b – c; z = a – d; A = u + v; C = u – v; B = y + (z << 1); D = z – (y << 1);
  • Über die Schmetterlingsstruktur, die in 3 dargestellt ist (wobei eine Linie zwischen zwei Punkten eine Summe kennzeichnet und die Zahlen auf den Linien (die –1, 2 und –2) einen Multiplikationsfaktor kennzeichnen)) verlangt das Ermitteln dieser Transformationskoeffizienten tatsächlich lediglich vier Additionen und eine Verschiebung für jedes gegebene Pixel, wodurch eine äußerst wesentliche Verbesserung der Leitungsfähigkeit gegenüber Faktoren gegeben ist, die gemäß H.26L festgelegt sind. Infolge der geringeren Koeffizientenwerte können darüber hinaus sämtliche Transformationsoperationen in einer 16-Bit-Arithmetik (mit 9-Bit-Pixeldaten) ausgeführt werden. Insbesondere ist bei der Transformationsmatrix QD, die oben definiert ist, nach einer zweidimensionalen 2-D-Transformation die maximale Signalverstärkung 36, wobei die Ausgabekoeffizienten nach der zweidimensionalen Transformation 6 Bits mehr umfassen als die Eingabe. Somit haben bei einer 9-Bit-Eingabe die Ausgabekoeffizienten einen Dynamikbereich von 15 Bits, was bedeutet, dass die zweidimensionale direkte Transformation mit einer 16-Bit-Arithmetik berechnen werden kann. Darüber hinaus wiederholt sich, wie im folgenden erläutert, die Leistungszunahme, die aus weitaus weniger Operationen. resultiert, die jeweils lediglich eine 16-Bit-Arithmetik erfordern, im wesentlichen während Decodieroperationen mit der inversen Transformation, was zu einem deutlichen Anstieg der Codierleistung führt.
  • Sobald die Transformationskoeffizienten 210 berechnet sind, wird der Block von Koeffizienten 210 quantisiert, indem die Werte skaliert und auf ihre nächstgelegenen ganzen Zahlen gerundet werden. Dies ist in 2 durch den Quantisiervorgang 212 dargestellt, der aus Quantisierwerten von Quantisierparametern 214 auswählt, um die Transformationskoeffizienten 210 in die quantisierten Koeffizienten 216 zu skalieren. Da es, wie es oben erläutert wurde, nicht einen Betrag, sondern in der verbesserten Matrix drei Beträge gibt, enthalten drei Quantisiertabellen Q0, Q1 und Q2 diese Werte, abhängig davon, an welcher Stelle sich der zu quantisierende transformierte Koeffizient in dem Block befindet.
  • Die Quantisierformel zum Skalieren und Runden lautet wie folgt und sollte mit einer 32-Bit-Präzision berechnet werden: L = [K × A(QP, r) + fX] >> 20 wobei L der quantisierte Koeffizient, K der transformierte Koeffizient und A(QP, r) der Skalierfaktor ist, der durch den Quantisierparameter QP und r indiziert ist, wobei r kennzeichnet, welche Tabelle (Q0, Q1 oder Q2) zu verwenden ist, fX im Bereich [0–0,5] × 220 liegt (fX hat dasselbe Vorzeichen wie K) und >> 20 eine Verschiebung um 20 Stellen (zu teilen durch 1.08.576) bedeutet, um die Zahl herabzuskalieren. Der Quantisiervorgang leitet somit Fehler ein. Es wird darauf hingewiesen, dass, obwohl eine 32-Bit-Arithmetik für die Quantisierung verwendet wird, dies nur erforderlich ist, wenn codiert wird, was von geringerer Signifikanz ist, wenn die Decodierung ausgeführt wird (bei der die Dequantisierung lediglich eine Präzision von 16 Bit benötigt, wie es im folgenden beschrieben wird).
  • Der Index r wählt somit, welche der drei Quantisiertabellen Q0, Q1 oder Q2 zu verwenden ist, um sich an die drei unterschiedlichen Beträge anzupassen, basierend auf dem Koeffizienten K in dem Block:
    r = 0 (verwende Q0), sofern der Koeffizient von einer der Positionen {(0, 0), (0, 1), (1, 0), (1, 1) stammt};
    r = 1 (verwende Q1), sofern der Koeffizient von einer der Positionen {(0, 2), (0, 3), (1, 2), (1, 3), (2, 0), (2, 1), (3, 0), (3, 1)} stammt;
    r = 2 (verwendet Q2), sofern der Koeffizient von einer der Positionen {(2, 2), (2, 3), (3, 2), (3, 3)} stammt.
  • Nach der Rechtsverschiebung im 20 Bits, passt jedes quantisierte Ergebnis in eine ganze Zahl von 16 Bit.
  • Bei einer beispielhaften Anwendung hängt der Quantisierfaktor A(QP, r) von dem Quantisierparameter QP und der Koeffizientenpositionsgruppe r gemäß den folgenden Tabellen ab:
    A(QP = 0..31, r = 0) = {104858, 93418, 83226, 74146, 66056, 58849, 52429, 46709, 41613, 37073, 33028, 29425, 26214, 23354, 20806, 18536, 16514, 14712, 13107, 11677, 10403, 9268, 8257, 7356, 6554, 5839, 5202, 4634, 4129, 3678, 3277, 2919};
    A(QP = 0..31, r = 1) = {66318, 59082, 52636, 46894, 41778, 37220, 33159, 29541, 26318, 23447, 20889, 18610, 16579, 14771, 13159, 11723, 10444, 9305, 8290, 7385, 6580, 5862, 5222, 4652, 4145, 3693, 3290, 2931, 2611, 2326, 2072, 1846};
    A(QP = 0..31, r = 2) = {41943, 37367, 33290, 29658, 26422, 23540, 20972, 18684, 16645, 14829, 13211, 11770, 10486, 9342, 8323, 7415, 6606, 5885, 5243, 4671, 4161, 3707, 3303, 2942, 2621, 2335, 2081, 1854, 1651, 1471, 1311, 1168}.
  • Die einzelnen obigen Werte waren dazu bestimmt, die Aufbauvorgaben bei H.26L zu erfüllen, dass sich die Quantisierschrittgrößen für jede Erhöhung von sechs in dem Tabellenindex verdoppeln sollen. Für andere Video- oder Standbild-Codierapplikationen können andere Quantisiertabellen im Hinblick auf die gewünschten Verbesserungen der Wiedergabetreue aufgebaut werden. Es wird darauf hingewiesen, dass für die Speicherung der Quantisiertabellen in dem Codierer, ein bestimmter zusätzlicher Tabellenplatz erforderlich ist, um drei Tabellen anstelle von einer zu speichern, wobei dieser Umfang von zusätzlichem Platz lediglich 64 Bytes beträgt und somit vernachlässigbar ist.
  • Wendet man sich wieder 2 zu, werden nach dem Quantisiervorgang die quantisierten Koeffizienten 216 einem Entropiecodierer 218 zugeführt, der im allgemeinen die Anzahl von Bits, die zum Codieren des Blocks erforderlich sind, weiter verringert. Entropiecodierer (und -decodierer) sind bekannt und werden somit hier nicht beschrieben, da die vorliegende Erfindung vor und im wesentlichen unabhängig von der Entropiecodierung und nach sowie im wesentlichen unabhängig von der Entropiedecodierung operiert.
  • Wendet man sich einer Betrachtung des Decodierens in dem Blocktransformationsdecodierer 222 zu, werden zu einem bestimmten Zeitpunkt, unabhängig davon, wie sie zugestellt wurden, die entropiecodierten Ausgabebits als Eingabebits einem Entropiedecodierer 224 zugeführt. Im allgemeinen sind derartige Entropiedecodierer bekannt, und somit ist es unter anderen möglichen Operationen ausreichend zu bemerken, dass der Entropiecodierer 224 die quantisierten Koeffizienten 226 für einen gegebenen Block reproduziert. Es wird darauf hingewiesen, dass die Codierung und die Decodierung nicht verlustbehaftet sind, d. h. die quantisierten Koeffizienten 216, die dem Entropiecodierer 218 zugeführt werden, werden mit den quantisierten Koeffizienten 226 identisch sein, die von dem Entropiedecodierer 224 erzeugt werden.
  • Im allgemeinen spiegelt der Blocktransformationsdecodierer 222 die Tätigkeit des Blocktransformationscodierers 200, wenngleich, wie es unten beschrieben wird und der vorliegenden Erfindung entspricht, eine abgeänderte inverse Transformationsmatrix vorgesehen ist, die es ermöglicht, eine 16-Bit-Arithmetik im Verlauf des Decodiervorgangs zu verwenden, wodurch die Berechungskomplexität des Decodierers stark vereinfacht wird.
  • Sobald die quantisierten Koeffizienten 226 aus dem Entropiedecodierer 224 abgerufen sind, wird jeder quantisierte Koeffizient L in einen rekonstruierten (dequantisierten) Wert K' durch einen Dequantisiervorgang 228 umgewandelt, der folgende Formel anwendet: K' = L × B(QP, r) wobei der Skalierfaktor B von dem QP-Index abhängt, der beim Codieren verwendet wird, und r die Dequantisierparameter 230 durch Wählen eines Parameters aus einer der Tabellen D0, D1 oder D2 bestimmt (um sich an die drei Beträge anzupassen). Es wird darauf hingewiesen, dass r aus der Position des Koeffizienten abgeleitet werden kann, der in dem Block dequantisiert wird, wie es oben im Bezug auf die Quantisierung beschrieben wurde, wenngleich es möglich ist, den r-Wert von dem Codierer zu senden, wodurch die Berechungskomplexität in dem Decodierer möglicherweise verringert, jedoch erfordern würde, wenigstens zwei weitere Bits je Koeffizient zu senden, um r zu identifizieren.
  • Auf diese Weise hängt der Skalierfaktor B(QP, r) von dem Quantisierparameterindex für QP, der beim Codieren verwendet wird, und der Koeffizientenpositionsgruppe r ab. Bei einer beispielhaften Anwendung ist diese Abhängigkeit gemäß der folgenden Tabellen festgelegt:
    B(QP = 0..31, r = 0) = {80, 90, 101, 113, 127, 143, 160, 180, 202, 226, 254, 285, 320, 359, 403, 453, 508, 570, 640, 718, 806, 905, 1016, 1140, 1280, 1437, 1613, 1810, 2032, 2281, 2560, 2874};
    B(QP = 0..31, r = 1) = {101, 114, 127, 143, 161, 180, 202, 227, 255, 286, 321, 361, 405, 454, 510, 572, 643, 721, 810, 909, 1020, 1145, 1285, 1443, 1619, 1817, 2040, 2290, 2570, 2885, 3239, 3635};
    B(QP = 0..31, r = 2) = {128, 144, 161, 181, 203, 228, 256, 287, 323, 362, 406, 456, 512, 575, 645, 724, 813, 912, 1024, 1149, 1290, 1448, 1625, 1825, 2048, 2299, 2580, 2896, 3252, 3650, 4095, 4596}.
  • Wie bei den Codiertabellen, wurden die einzelnen Werte oben dazu bestimmt, die Aufbauvorgaben gemäß H.26L zu erfüllen, dass sich die Quantisierschrittgrößen für jede Erhöhung von sechs in dem Tabellenindex verdoppeln sollen. Für andere Video- oder Standbild-Codierapplikationen können andere Quantisiertabellen im Hinblick auf die gewünschten Verbesserungen der Wiedergabetreue aufgebaut werden.
  • Es ist zu erkennen, dass die Dequantisierformel die Koeffizienten zurück auf größere Werte skaliert, wenngleich jeder dieser Skalierwerte niedrig genug ist um sicherzustellen, dass lediglich eine 16-Bit-Arithmetik in dem Decodier erforderlich ist. Es wird darauf hingewiesen, dass, da jeder Eintrag in einer Tabelle mathematische Bezüge (basierend auf dem Betrag) zu entsprechenden QP-indizierten Tabelleneinträgen in den anderen beiden Tabellen hat, alternativ die Möglichkeit besteht, lediglich eine Tabelle mit QP-Werten mit einer geeigneten mathematischen Justierung auf der Basis des r-Wertes zur Verfügung zu haben, anstelle über drei Tabellen zu verfügen. Jedoch sind Suchen in kleinen Tabellen relativ effizient, wobei die Anzahl von Bytes, die erforderlich ist, um drei Tabellen mit 32 Einträgen mit zwei Bytes pro Eintrag anstelle einer Tabelle mit 32 Einträgen mit vier Bits pro Eintrag (erforderlich bei der festgelegten H.26L-Transformation) zu speichern, 64 zusätzliche Bytes erfordert, was bei derzeitigen Berechungsvorrichtungen insbesondere dann vernachlässigbar ist, wenn man berücksichtigt, dass die Transformationskoeffizienten, die mit der Dequantisierung erzeugt werden, in 16-Bit-Wörter anstelle von 32-Bit-D-Wörtern passen, wodurch der Gesamtspeicherbedarf verringert wird.
  • Sobald, wie es ebenfalls in 2 gezeigt ist, die quantisierten Koeffizienten 226 über obige Formel und Tabellen dequantisiert sind, liegt eine 4×4-Matrix rekonstruierter Transformationskoeffizienten 232 vor. Aus diesen Transformationskoeffizienten 232 werden die rekonstruierten Pixel erzeugt, indem sie einem zweidimensionalen inversen Transformationsprozess 234 zugeführt werden, der inverse Spalten- bzw. Zeilentransformationsprozesse 236 und 238 umfasst.
  • Anstelle der Anwendung der inversen Transformation QI = QD T, wie es normalerweise der Fall wäre, definiert gemäß der vorliegenden Erfindung, um eine 16-Bit-Dequantisierung und eine inverse Transformationsberechnungen zuzulassen, die vorliegende Erfindung folgende inverse Transformationsmatrix:
    Figure 00190001
  • Es wird darauf hingewiesen, dass die Spalten QI zueinander orthogonal, ihre Beträge jedoch unterschiedlich sind. Dies wurde jedoch über den ”r”-Wert beherrscht, der bei der Auswahl der Dequantisierparameter verwendet wurde, wie es oben beschrieben ist. Es wird weiterhin darauf hingewiesen, dass bei der Erzeugung von QI aus QD QD transponiert wurde, wobei die Spalten eins und drei mit 0,5 multipliziert wurden. Wiederum wurden jedoch die QP-Werte, die bereits in den Tabellen D0, D1 und D2 vorhanden sind, darauf im voraus angepasst, wodurch das Erfordernis der Kompensation einer zusätzlichen Berechnungskomplexität fortfällt. Darüber hinaus erfolgt die einzige ”Multiplikation”, die bei der Berechnung der inversen Transformation mit einer derartigen Matrix ausgeführt werden muss, mit 0,5, was tatsächlich durch eine hocheffiziente Operation einer Verschiebung nach rechts bewerkstelligt wird. Es wird darauf hingewiesen, dass der geringe Umfang von Rauschen, der durch eine derart ungenaue Division hervorgerufen wird, im wesentlichen keine Beeinträchtigung auf das Raten-Verzerrungs-Verhalten hat.
  • Mit QI, wie oben definiert, ist der maximale Gewinn gleich vier. Somit erweitert der zweidimensionale inverse Transformationsprozess den Dynamikbereich um vier Bits, wodurch eine Berechnung in einer 16-Bit-Arithmetik möglich ist.
  • Der inverse Spaltentransformationsvorgang 236 und der inverse Zeilentransformationsvorgang 238 (der auf der Basis des Ergebnisses des inversen Spaltentransformationsvorgangs arbeitet), die in 2 gezeigt sind, erzeugen die Ausgangspixeldaten 240. Zu diesem Zweck werden unter Verwendung der obigen inversen Transformationsmatrix und Benennen von [A B C D] als spezielle Zeile oder Spalte, die invers zu transformieren sind, die entsprechenden invers transformierten Werte [a' b' c' d'] berechnet mit: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; d' = u – z; wobei u, v, y und z Hilfsvariable sind und >> 1 eine Verschiebung um ein Bit nach rechts (äquivalent zu einer Multiplikation mit 0,5) bezeichnet. Ähnlich wie bei der Codierung, reduzieren durch die Schmetterlingsstruktur, die in 4 gezeigt ist, diese Gleichungen tatsächlich auf vier Additionsoperationen und eine Verschiebeoperation je Koeffizient vollständig in einer 16-Bit-Arithmetik. Schließlich skaliert der inverse Transformationsvorgang 234 (2) die rekonstruierten Pixelwerte mit einem Faktor von 2–7 (ausgeführt mit Hilfe der Operation einer Verschiebung nach rechts um 7 Bits).
  • Die rekonstruierten Pixelwerte nach der 7-Bit-Verschiebung haben einen Umfang von 9 Bits, so dass die inverse Transformation in einer 16-Bit-Arithmetik berechnet werden kann. Die Dequantisiertabellen D0, D1 und D2, die oben beschrieben wurden, sind derart beschaffen, dass die Dequantisiergleichungen nicht überlaufen, wenn sie in einer 16-Bit-Arithmetik berechnet werden. Die folgende Tabelle fasst einige der berechnungsmäßigen Vorteile zusammen, wenn die Transformation und die inverse Transformation der vorliegenden Erfindung verwendet werden, im Gegensatz zu jenen, die gemäß H.26L festgelegt sind:
    Transformation Operationen je Pixel,direkte Transformation Quantisierung Dequantisierung Operationen je Pixel, inverse Transformation
    Festgelegt durch H.26L 4 Additionen, 3 Multiplikationen in 32-Bit-Arithmetik 1 Multiplikation in 32-Bit-Arithmetik 1 Multiplikation in 32-Bit-Arithmetik 4 Additionen, 3 Multiplikationen in 32-Bit-Arithmetik
    Vorliegende Erfindung 4 Additionen, 1 Verschiebung in 16-Bit-Arithmetik 1 Multiplikation in 32-Bit-Arithmetik 1 Multiplikation in 16-Bit-Arithmetik 4 Additionen, 1 Verschiebung in 16-Bit-Arithmetik
  • Wie einfach zu erkennen ist, sind derartige Einsparungen insbesondere bei 16-Bit-fähigen Prozessoren signifikant. in der Praxis kann beispielsweise ein typischer 16-Bit-PDA-Prozessor eine Verbesserung bei der Decodierung erkennen oder die Geschwindigkeit mit der vorliegenden Erfindung ungefähr verdoppeln.
  • Darüber hinaus wurden die Transformation/inverse Transformation im Bezug auf ihre Auswirkung auf die Qualität und Kompression überprüft. Die Ergebnisse für den Codiergewinn (normalerweise definiert als eine Zunahme des Signalrauschabstandes) zeigen, dass die Anwendung der Transformationen der vorliegenden Erfindung mit Testdaten zu einem Verlust von lediglich etwa 0,01 dB im Vergleich zu den H.26L-Transformationen führt, was vernachlässigbar und tatsächlich wahrscheinlich weitaus geringer ist als jener bei tatsächlichen Videosignalinformationen, wie etwa Pixelprädiktionsfehlern. Weiterhin wurde das Gesamtleistungsvermögen gegenüber den durch H.26L festgelegten Transformationen über jeden der 32 Quantisierparameter geprüft, was zu Differenzen in einem Bereich von plus oder minus 0,5 Prozent führte, mit einem Durchschnitt der sehr nahe Null liegt, was darauf hinweist, dass die Transformation der vorliegenden Erfindung ein ebenso gutes Leistungsverhalten hat wie die Transformation gemäß H.26L.
  • Wie aus der vorangegangenen detaillierten Beschreibung hervorgeht, werden verbesserte Matrizen zur Transformation und inversen Transformation für die Codierung bzw. Decodierung von Bild oder Video angegeben, die deutlich die Berechnungskomplexität im Vergleich zu anderen bekannten Transformationen verringern, ohne dabei die Kompression oder Qualität nachteilig zu beeinflussen. Transformationsmultiplikationen werden eliminiert und dennoch korrekte Ergebnisse erzeugt, da die Quantisier- und Dequentisierparameter diese Multiplikationsfaktoren kompensieren, mit Ausnahme eines Faktors, der durch eine Verschiebeoperation während der Transformation und der inversen Transformation ausgeführt wird. Infolge der verwendeten Werte können Transformationsoperationen während des Codierens und eine Dequantisierung sowie Transformationsoperationen während des Decodierens in einer 16-Bit-Arithmetik (für Pixeldaten, die mit höchstens 9 Bits dargestellt sind) ausgeführt werden.
  • Wenngleich die Erfindung Gegenstand zahlreicher Abänderungen und alternativer Konstruktionen sein kann, sind bestimmte veranschaulichte Ausführungsformen derselben in den Zeichnungen dargestellt und wurden zuvor im Detail beschrieben. Es versteht sich jedoch, dass keine Absicht besteht, die Erfindung auf die speziellen offenbarten Formen einzuschränken, sondern im Gegensatz dazu beabsichtigt ist, sämtliche Abänderungen, alternative Konstruktionen und Äquivalente abzudecken, die in den Geist und den Geltungsbereich der Erfindung fallen.

Claims (67)

  1. Vorrichtung, die einen Blocktransformationsvideodecodierer enthält, der umfasst: einen Dequantisierer, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block; und einen inversen Transformierer, der eingerichtet ist zum inversen Transformieren der dequantisierten Transformationskoeffizienten, wobei die inverse Transformation die folgenden Operationen enthält: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; und d' = u – z, wobei der Ausdruck ”>> 1” eine Verschiebung nach rechts um ein Bit angibt, wobei A, B, C und D Werte einer bestimmten Zeile oder Spalte eines gegebenen, invers zu transformierenden Blocks darstellen, wobei u, v, y und z Hilfsvariablen darstellen, und wobei a', b', c' und d' invers transformierte Werte darstellen.
  2. Vorrichtung nach Anspruch 1, wobei der inverse Transformierer die inverse Transformation wenigstens teilweise unter Verwendung einer Schmetterlingsstruktur implementiert.
  3. Vorrichtung nach Anspruch 1, wobei der inverse Transformierer die inverse Transformation ohne Multiplikationsoperationen implementiert.
  4. Vorrichtung nach Anspruch 1, wobei der inverse Transformierer ein zweidimensionaler inverser Transformierer ist, der eingerichtet ist, Spalten- und Zeilen-Inverstransformationsprozesse so durchzuführen, dass in einem ersten Durchlauf die unter Verwendung der Operationen invers zu transformierenden Werte die dequantisierten Transformationskoeffizienten und die durch A, B, C und D dargestellten Werte Werte einer bestimmten Zeile oder Spalte des gegebenen Blocks sind, und in einem zweiten Durchlauf die invers zu transformierenden Werte, die im ersten Durchlauf invers transformierten Werte sind.
  5. Vorrichtung nach Anspruch 1, wobei der Dequantisierer eingerichtet ist zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus Gruppen von Skalierfaktoren ausgewählt wurden, wobei die Auswahl der Skalierfaktoren auf einer Koeffizientenposition innerhalb eines Blockes und einem Quantisierparameter basiert.
  6. Vorrichtung nach Anspruch 1, wobei der Dequantisierer eingerichtet ist zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei eine erste Dimension der Tabelle eine Koeffizientenposition der entsprechenden quantisierten Transformationskoeffizienten innerhalb eines Blockes und eine zweite Dimension der zweidimensionalen Tabelle einen Quantisierparameter betreffen.
  7. Vorrichtung nach Anspruch 1, wobei der Dequantisierer eingerichtet ist zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei dies für einen gegebenen quantisierten Transformationskoeffizienten, der eine Koeffizientenposition innerhalb eines Blockes aufweist, einschließt: Verwenden der Koeffizientenposition und eines Quantisierparameters, um einen gegebenen Skalierfaktor als Eintrag in der zweidimensionalen Tabelle abzurufen; und Multiplizieren des gegebenen quantisierten Transformationskoeffizienten mit dem gegebenen Skalierfaktor.
  8. Vorrichtung nach Anspruch 1, weiterhin ein Display, eine Energieversorgung, eine Tastatur, einen Prozessor, einen Speicher und ein Speichermedium umfassend, wobei das Speichermedium computerausführbare Instruktionen für Softwareprogramme speichert.
  9. Vorrichtung nach Anspruch 1, wobei die Softwareprogramme einen Internetbrowser und ein Terminplanprogramm einschließen.
  10. Vorrichtung nach Anspruch 8, wobei die Softwareprogramme den Blocktransformationsvideodecodierer einschließen und wobei der Blocktransformationsvideodecodierer durch Software implementiert ist, die auf dem Prozessor ausführbar ist.
  11. Vorrichtung nach Anspruch 1, wobei die dequantisierten Transformationskoeffizienten solche für rekonstruierte Prädiktionsfehlerinformationen für einen 4×4-Block sind.
  12. Blocktransformationsdecodierer zur Bild- oder Videodecodierung, umfassend: einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten, wobei der Blocktransformationsdecodierer eingerichtet ist zum Durchführen eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten, und wobei der Blocktransformationsdecodierer eingerichtet ist zum Durchführen eines inversen Transformationsprozesses zum Anwenden einer inversen Transformation auf die dequantisierten Transformationskoeffizienten, wobei der inverse Transformationsprozess die folgenden Operationen einschließt: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = u – y; und d' = u – z, wobei ”>> 1” eine Verschiebeoperation nach rechts um ein Bit angibt, wobei A, B, C und D invers zu transformierende Werte darstellen, wobei u, v, y und z Hilfsvariablen darstellen und wobei a', b', c' und d' invers transformierte Werte darstellen.
  13. Blocktransformationsdecodierer nach Anspruch 12, wobei der inverse Transformationsprozess wenigstens einen Teil der inversen Transformation unter Verwendung einer Schmetterlingsstruktur implementiert.
  14. Blocktransformationsdecodierer nach Anspruch 12, wobei A, B, C und D Einträgen eines Zeilen- oder Spaltenvektors [A, B, C, D] eines 4×4-Blocks entsprechen, der die dequantisierten Transformationskoeffizienten enthält, und wobei a', b', c' und d' einem Zeilen- oder Spaltenvektor [a', b', c', d'] eines transformierten 4×4-Blocks entsprechen.
  15. Blocktransformationsdecodierer nach Anspruch 14, weiterhin eingerichtet zur Transformation der Spalten des 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses und der Zeilen des transformierten 4×4-Blockes, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf des inversen Transformationsprozesses.
  16. Blocktransformationsdecodierer nach Anspruch 14, weiterhin eingerichtet zur Transformation der Zeilen eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses und der Spalten des transformierten 4×4-Blocks, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf des inversen Transformationsprozesses.
  17. Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 16, wobei der inverse Transformationsprozess die inverse Transformation ohne Multiplikationsoperationen implementiert.
  18. Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 14, wobei der inverse Transformationsprozess Spalten- und Zeileninverstranstormationen so durchführt, dass in einem ersten Durchlauf die invers zu transformierenden Werte die dequantisierten Transformationskoeffizienten und in einem zweiten Durchlauf die invers zu transformierenden Werte die im ersten Durchlauf invers transformierten Werte sind.
  19. Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 18, wobei der Dequantisierprozess die quantisierten Transformationskoeffizienten mit Skalierfaktoren skaliert, die aus Gruppen von Skalierfaktoren ausgewählt wurden, wobei die Auswahl der Skalierfaktoren auf einer Koeffizientenposition innerhalb eines Blocks und einem Quantisierparameter basiert.
  20. Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 18, wobei der Dequantisierprozess die quantisierten Transformationskoeffizienten mit Skalierfaktoren skaliert, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei eine erste Dimension der Tabelle eine Koeffizientenposition der jeweiligen quantisierten Transformationskoeffizienten innerhalb eines Blockes und eine zweite Dimension der zweidimensionalen Tabelle einen Quantisierparameter betreffen.
  21. Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 18, wobei der Dequantisierprozess die quantisierten Transformationskoeffizienten mit Skalierfaktoren skaliert, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei dies für einen gegebenen quantisierten Transformationskoeffizienten mit einer Koeffizientenposition innerhalb eines Blockes einschließt: Verwenden der Koeffizientenposition und eines Quantisierparameters, um einen gegebenen Skalierfaktor an einem Eintrag in der zweidimensionalen Tabelle nachzuschlagen; und Multiplizieren des gegebenen quantisierten Transformationskoeffizienten mit dem gegebenen Skalierfaktor.
  22. Blocktransformationsdecodierer für Bild- oder Videodecodierung, umfassend: einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten; Mittel zum Durchführen eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten; und Mittel zum Durchführen eines inversen Transformationsprozesses, um eine inverse Transformation auf die dequantisierten Transformationskoeffizienten anzuwenden, wobei der inverse Transformationsprozess die folgenden Operationen einschließt: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a' = u + z; b' = v + y; c' = v – y; und d' = u – z, wobei ”>> 1” eine Verschiebeoperation nach rechts um ein Bit angibt, wobei A, B, C und D invers zu transformierende Werte darstellen, wobei u, v, y und z Hilfsvariablen darstellen und wobei a', b', c' und d' invers transformierte Werte darstellen.
  23. Blocktransformationsdecodierer nach Anspruch 22, wobei die Mittel zum Durchführen des inversen Transformationsprozesses die inverse Transformation wenigstens teilweise unter Verwendung einer Schmetterlingsstruktur implementieren.
  24. Blocktransformationsdecodierer nach Anspruch 22, wobei A, B, C und D Einträgen eines Zeilen- oder Spaltenvektors [A, B, C, D] eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, entsprechen, und wobei a', b', c' und d' einem Zeilen- oder Spaltenvektor [a', b', c', d'] eines transformierten 4×4-Blocks entsprechen.
  25. Blocktransformationsdecodierer nach Anspruch 24, wobei die Mittel zum Durchführen des inversen Transformationsprozesses weiterhin eingerichtet sind zum Transformieren der Spalten eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses und der Zeilen des transformierten 4×4-Blockes, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf des inversen Transformationsprozesses.
  26. Blocktransformationsdecodierer nach Anspruch 24, wobei die Mittel zum Durchführen des inversen Transformationsprozesses weiterhin eingerichtet sind zum Transformieren der Zeilen eines 4×4-Blockes, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses und der Spalten des transformierten 4×4-Blockes, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf des inversen Transformationsprozesses.
  27. Blocktransformationsdecodierer nach einem der Ansprüche 22 bis 26, wobei die Mittel zum Durchführen des inversen Transformationsprozesses die inverse Transformation ohne Multiplikationsoperationen implementieren.
  28. Blocktransformationsdecodierer nach einem der Ansprüche 22 bis 24, wobei die Mittel zum Durchführen des inversen Transformationsprozesses eingerichtet sind zum Durchführen von Spalten- und Zeileninverstransformationen in einer Weise, dass die invers zu transformierenden Werte in einem ersten Durchlauf die dequantisierten Transformationskoeffizienten und in einem zweiten Durchlauf die invers transformierten Werte aus dem ersten Durchlauf sind.
  29. Blocktransformationsdecodierer nach einem der Ansprüche 22 bis 28, wobei die Mittel zum Durchführen des Dequantisierprozesses eingerichtet sind zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus Gruppen von Skalierfaktoren ausgewählt wurden, wobei die Auswahl der Skalierfaktoren auf einer Koeffizientenposition innerhalb eines Blockes und einem Quantisierparameter basiert.
  30. Blocktransformationsdecodierer nach einem der Ansprüche 22 bis 28, wobei die Mittel zum Durchführen des Dequantisierprozesses eingerichtet sind zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei eine erste Dimension der Tabelle eine Koeffizientenposition der jeweiligen quantisierten Transformationskoeffizienten innerhalb eines Blockes und eine zweite Dimension der zweidimensionalen Tabelle einen Quantisierparameter betreffen.
  31. Blocktransformationsdecodierer nach einem der Ansprüche 22 bis 28, wobei die Mittel zum Durchführen des Dequantisierprozesses eingerichtet sind zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei dies für einen gegebenen quantisierten Transformationskoeffizienten mit einer Koeffizientenposition innerhalb eines Blockes einschließt: Verwenden der Koeffizientenposition und eines Quantisierparameters, um einen gegebenen Skalierfaktor an einem Eintrag in der zweidimensionalen Tabelle nachzuschlagen; und Multiplizieren des gegebenen quantisierten Transformationskoeffizienten mit dem gegebenen Skalierfaktor.
  32. Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 31, wobei die dequantisierten Transformationskoeffizienten solche für rekonstruierte Prädiktionsfehlerinformationen für einen 4×4-Block sind.
  33. Handcomputergerät mit dem Blocktransformationsdecodierer nach einem der Ansprüche 12 bis 32.
  34. Handcomputergerät nach Anspruch 33, weiterhin ein Display, eine Energieversorgung, eine Tastatur, einen Prozessor, einen Speicher und ein Speichermedium umfassend.
  35. Handcomputergerät nach Anspruch 34, wobei das Speichermedium eingerichtet ist zum Speichern computerausführbarer Instruktionen für Softwareprogramme.
  36. Handcomputergerät nach Anspruch 35, wobei die Softwareprogramme einen Internetbrowser, ein Terminplanprogramm und den Blocktransformationsdecodierer einschließen, wobei der Blocktransformationsdecodierer durch Software implementiert ist, die auf dem Prozessor ausführbar ist.
  37. Vorrichtung, die einen Blocktransformationsvideodecodierer enthält, der umfasst: einen Entropiedecodierer, der eingerichtet ist zum Entropiedecodieren quantisierter Transformationskoeffizienten für einen gegebenen Block; einen Dequantisierer, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block; und einen zweidimensionalen inversen Transformierer, der eingerichtet ist, um die dequantisierten Transformationskoeffizienten zweidimensional invers zu transformieren, wobei die zweidimensionale inverse Transformation Ergebnisse erzielt, wie sie durch die folgenden Gleichungen angegeben sind: u = A + C; v = A – C; y = (B >> 1) – D; z = (D >> 1) + B; a = u + z; b' = v + y; c' = v – y; und d' = u – z, wobei A, B, C und D Werte einer bestimmten Zeile oder Spalte eines gegebenen, invers zu transformierenden Blocks darstellen, u, v, y und z Hilfsvariablen darstellen und a', b', c' und d' entsprechende invers transformierte Werte darstellen.
  38. Vorrichtung, die einen Blocktransformationsvideodecodierer enthält, der umfasst: einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten für einen gegebenen Block; einen Dequantisierer, der eingerichtet ist zum Dequantisieren quantisierter Transformationskoeffizienten für einen gegebenen Block; und einen zweidimensionalen inversen Transformierer, der eingerichtet ist, um die dequantisierten Transformationskoeffizienten basierend auf der folgenden Inverstransformationsmatrix zweidimensional invers zu transformieren:
    Figure 00300001
  39. Vorrichtung nach Anspruch 37 oder 38, wobei der zweidimensionale inverse Transformierer eingerichtet ist zur Durchführung von Spalten- und Zeileninverstransformationen in einer Weise, dass die invers zu transformierenden Werte in einem ersten Durchlauf die dequantisierten Transformationskoeffizienten und in einem zweiten Durchlauf die invers transformierten Werte aus dem ersten Durchlauf sind.
  40. Vorrichtung nach Anspruch 37 oder 38, wobei der Dequantisierer eingerichtet ist zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus mehreren Gruppen von Skalierfaktoren ausgewählt wurden, wobei die Auswahl auf einer relativen Position eines quantisierten Transformationskoeffizienten innerhalb eines Blockes und einem Quantisierparameter basiert.
  41. Vorrichtung nach Anspruch 37 oder 38, weiterhin ein Display, eine Energieversorgung, eine Tastatur, einen Prozessor, einen Speicher und ein Speichermedium zum Speichern computerausführbarer Instruktionen für Softwareprogramme umfassend.
  42. Vorrichtung nach Anspruch 41, wobei die auf dem Speichermedium gespeicherten Softwareprogramme einen Internetbrowser und ein Terminplanprogramm einschließen.
  43. Vorrichtung nach Anspruch 41, wobei die Softwareprogramme den Blocktransformationsvideodecodierer einschließen und der Blocktransformationsvideodecodierer durch Software implementiert ist, die auf dem Prozessor ausführbar ist.
  44. Vorrichtung nach Anspruch 37 oder 38, wobei die dequantisierten Transformationskoeffizienten solche für rekonstruierte Prädiktionsfehlerinformationen für einen 4×4-Block sind.
  45. Vorrichtung nach Anspruch 37 oder 38, wobei die Vorrichtung ein Handcomputergerät, ein Notebookcomputer, ein Personalcomputer, ein Servercomputer, programmierbare Unterhaltungselektronik, ein Minicomputer, ein Mehrprozessorsystem, ein microprozessorbasiertes System, eine verteilte Computerumgebung, ein Netzwerk-PC oder ein Großrechner ist.
  46. Vorrichtung nach Anspruch 37, wobei der Ausdruck ”>> 1” eine Verschiebeoperation nach rechts um ein Bit oder eine Division um 2 angibt.
  47. Blocktransformationsdecodierer zur Bild- oder Videodecodierung, umfassend: einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizienten, wobei der Blocktransformationsdecodierer eingerichtet ist zur Durchführung eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten, und wobei der Blocktransformationsdecodierer eingerichtet ist zum Durchführen eines inversen Transformationsprozesses zur Anwendung einer inversen Transformation auf die dequantisierten Transformationskoeffizienten, wobei der inverse Transformationsprozess Berechnungen anwendet, die auf Werten basieren, die in der folgenden Matrix dargestellt sind:
    Figure 00320001
  48. Blocktransformationsdecodierer nach Anspruch 47, weiterhin eingerichtet zum: Transformieren der Spalten eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses, indem eine Multiplikation der Matrix mit einer Spalte durchgeführt wird; und Transformieren der Zeilen des transformierten 4×4-Blocks, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf, indem eine Multiplikation der transponierten Matrix mit einer Zeile durchgeführt wird.
  49. Blocktransformationsdecodierer nach Anspruch 47, weiterhin eingerichtet zum: Transformieren der Zeilen eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses, indem eine Multiplikation der transponierten Matrix mit einer Zeile durchgeführt wird; und Transformieren der Spalten des transformierten 4×4-Blocks, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf, indem eine Multiplikation der Matrix mit einer Spalte durchgeführt wird.
  50. Blocktransformationsdecodierer nach einem der Ansprüche 47 bis 49, wobei der inverse Transformationsprozess die inverse Transformation ohne Multiplikationsoperationen implementiert.
  51. Blocktransformationsdecodierer nach Anspruch 47, wobei der inverse Transformationsprozess Spalten- und Zeileninverstransformationen in einer Weise durchführt, dass die invers zu transformierenden Werte in einem ersten Durchlauf die dequantisierten Transformationskoeffizienten und in einem zweiten Durchlauf die invers transformierten Werte aus dem ersten Durchlauf sind.
  52. Blocktransformationsdecodierer nach einem der Ansprüche 47 bis 51, wobei der Dequantisierprozess die quantisierten Transformationskoeffizienten mit Skalierfaktoren skaliert, die aus Gruppen von Skalierfaktoren ausgewählt wurden, wobei die Auswahl der Skalierfaktoren auf einer Koeffizientenposition innerhalb eines Blocks und einem Quantisierparameter beruht.
  53. Blocktransfomrationsdecodierer nach einem der Ansprüche 47 bis 51, wobei der Dequantisierprozess die quantisierten Transformationskoeffizienten mit Skalierfaktoren skaliert, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei eine erste Dimension der Tabelle eine Koeffizientenposition der jeweiligen quantisierten Transformationskoeffizienten innerhalb eines Blocks und eine zweite Dimension der zweidimensionalen Tabelle einen Quantisierparameter betrifft.
  54. Blocktransformationsdecodierer nach einem der Ansprüche 47 bis 51, wobei der Dequantisierprozess die quantisierten Transformationskoeffizienten mit Skalierfaktoren skaliert, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei dies für einen gegebenen quantisierten Transformationskoeffizienten mit einer Koeffizientenposition innerhalb eines Blockes einschließt: Verwenden der Koeffizientenposition und eines Quantisierparameters, um einen gegebenen Skalierfaktor an einem Eintrag in der zweidimensionalen Tabelle nachzuschlagen; und Multiplizieren des gegebenen quantisierten Transformationskoeffizienten mit dem gegebenen Skalierfaktor.
  55. Blocktransformationsdecodierer zur Bild- oder Videodecodierung, umfassend: einen Entropiedecodierer zum Entropiedecodieren quantisierter Transformationskoeffizierten; Mittel zum Durchführen eines Dequantisierprozesses zum Dequantisieren der quantisierten Transformationskoeffizienten; und Mittel zum Durchführen eines inversen Transformationsprozesses zum Anwenden einer inversen Transformation auf die dequantisierten Transformationskoeffizienten, wobei der inverse Transformationsprozess Berechnungen anwendet, die auf Werten basieren, die in der folgenden Matrix dargestellt sind:
    Figure 00340001
  56. Blocktransformationsdecodierer nach Anspruch 55, wobei die Mittel zum Durchführen des inversen Transformationsprozesses weiterhin eingerichtet sind zum: Transformieren der Spalten eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses, indem eine Multiplikation der Matrix mit einer Spalte durchgeführt wird; und Transformieren der Zeilen des transformierten 4×4-Blocks, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf, indem eine Multiplikation der transponierten Matrix mit einer Zeile durchgeführt wird.
  57. Blocktransformationsdecodierer nach Anspruch 55, wobei die Mittel zum Durchführen des inversen Transformationsprozesses weiterhin eingerichtet sind zum: Transformieren der Zeilen eines 4×4-Blocks, der die dequantisierten Transformationskoeffizienten enthält, in einem ersten Durchlauf des inversen Transformationsprozesses, indem eine Multiplikation der transponierten Matrix mit einer Zeile durchgeführt wird; und Transformieren der Spalten des transformierten 4×4-Blocks, der sich aus dem ersten Durchlauf ergibt, in einem zweiten Durchlauf, indem eine Multiplikation der Matrix mit einer Spalte durchgeführt wird.
  58. Blocktransformationsdecodierer nach einem der Ansprüche 55 bis 57, wobei die Mittel zum Durchführen des inversen Transformationsprozesses die inverse Transformation ohne Multiplikationsoperationen implementieren.
  59. Blocktransformationsdecodierer nach Anspruch 55, wobei die Mittel zum Durchführen des inversen Transformationsprozesses eingerichtet sind zum Spalten- und Zeilen-Inverstransformieren in einer Weise, dass die invers zu transformierenden Werte in einem ersten Durchlauf die dequantisierten Transformationskoeffizienten und in einem zweiten Durchlauf die invers transformierten Werte aus dem ersten Durchlauf sind.
  60. Blocktransformationsdecodierer nach einem der Ansprüche 55 bis 59, wobei die Mittel zum Durchführen des Dequantisierprozesses eingerichtet sind zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus Gruppen von Skalierfaktoren ausgewählt wurden, wobei die Auswahl der Skalierfaktoren auf einer Koeffizientenposition innerhalb eines Blocks und einem Quantisierparameter basiert.
  61. Blocktransformationsdecodierer nach einem der Ansprüche 55 bis 59, wobei die Mittel zum Durchführen des Dequantisierprozesses eingerichtet sind zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei eine erste Dimension der Tabelle einer Koeffizientenposition der jeweiligen quantisierten Transformationskoeffizienten innerhalb eines Blocks und eine zweite Dimension der zweidimensionalen Tabelle einen Quantisierparameter betreffen.
  62. Blocktransformationsdecodierer nach einem der Ansprüche 55 bis 59, wobei die Mittel zum Durchführen des Dequantisierprozesses eingerichtet sind zum Skalieren der quantisierten Transformationskoeffizienten mit Skalierfaktoren, die aus einer zweidimensionalen Tabelle ausgewählt wurden, wobei dies für einen gegebenen quantisierten Transformationskoeffizienten mit einer Koeffizientenposition innerhalb eines Blocks einschließt: Verwenden der Koeffizientenposition und eines Quantisierparameters, um einen gegebenen Skalierfaktor an einem Eintrag in der zweidimensionalen Tabelle nachzuschlagen; und Multiplizieren des gegebenen quantisierten Transformationskoeffizienten mit dem gegebenen Skalierfaktor.
  63. Blocktransformationsdecodierer nach einem der Ansprüche 47 bis 62, wobei die dequantisierten Transformationskoeffizienten solche für rekonstruierte Prädiktionsfehlerinformationen für einen 4×4-Block sind.
  64. Handcomputergerät, das den Blocktransformationsdecodierer nach einem der Ansprüche 47 bis 63 umfasst.
  65. Handcomputergerät nach Anspruch 64, weiterhin ein Display, eine Energieversorgung, eine Tastatur, einen Prozessor, einen Speicher und ein Speichermedium umfassend.
  66. Handcomputergerät nach Anspruch 65, wobei das Speichermedium eingerichtet ist zum Speichern computerausführbarer Instruktionen für Softwareprogramme.
  67. Handcomputergerät nach Anspruch 66, wobei die Softwareprogramme einen Internetbrowser, ein Terminplanprogramm und den Blocktransformationsdecodierer einschließen, wobei der Blocktransformationsdecodierer durch Software implementiert ist, die auf dem Prozessor ausführbar ist.
DE2002222025 2001-09-18 2002-08-27 Verbesserter Blocktransformationsdecodierer für die Bild- oder Videodecodierung sowie zugehörige Vorrichtungen und Handcomputergeräte Expired - Lifetime DE20222025U1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/955,577 US6882685B2 (en) 2001-09-18 2001-09-18 Block transform and quantization for image and video coding
US955577 2001-09-18

Publications (1)

Publication Number Publication Date
DE20222025U1 true DE20222025U1 (de) 2012-04-02

Family

ID=25497025

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2002222025 Expired - Lifetime DE20222025U1 (de) 2001-09-18 2002-08-27 Verbesserter Blocktransformationsdecodierer für die Bild- oder Videodecodierung sowie zugehörige Vorrichtungen und Handcomputergeräte

Country Status (9)

Country Link
US (6) US6882685B2 (de)
EP (4) EP1750450B1 (de)
JP (5) JP3964765B2 (de)
KR (4) KR100839311B1 (de)
CN (4) CN100463522C (de)
DE (1) DE20222025U1 (de)
ES (4) ES2615488T3 (de)
HK (1) HK1053033B (de)
TW (1) TWI221388B (de)

Families Citing this family (93)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100335055B1 (ko) * 1999-12-08 2002-05-02 구자홍 압축 영상신호의 블럭현상 및 링현상 제거방법
US7113646B2 (en) * 2001-06-29 2006-09-26 Equator Technologies, Inc. Decoding of predicted AC coefficient without division
US7068850B2 (en) * 2001-06-29 2006-06-27 Equator Technologies, Inc. Decoding of predicted DC coefficient without division
US7185037B2 (en) * 2001-08-23 2007-02-27 Texas Instruments Incorporated Video block transform
US6882685B2 (en) * 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
US7460993B2 (en) * 2001-12-14 2008-12-02 Microsoft Corporation Adaptive window-size selection in transform coding
US7920624B2 (en) * 2002-04-01 2011-04-05 Broadcom Corporation Inverse quantizer supporting multiple decoding processes
US7242713B2 (en) * 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
US7760950B2 (en) * 2002-09-26 2010-07-20 Ntt Docomo, Inc. Low complexity and unified transforms for video coding
US7471726B2 (en) * 2003-07-15 2008-12-30 Microsoft Corporation Spatial-domain lapped transform in digital media compression
US7813574B2 (en) * 2003-09-24 2010-10-12 Ntt Docomo, Inc. Low complexity and unified transforms for video coding
EP2713619A3 (de) 2003-11-18 2015-01-07 Mobile Imaging in Sweden AB Verfahren zum verarbeiten eines digitalen bildes und bildrepräsentationsformat
US7487193B2 (en) * 2004-05-14 2009-02-03 Microsoft Corporation Fast video codec transform implementations
KR101320260B1 (ko) * 2004-06-18 2013-10-23 톰슨 라이센싱 비디오 신호 데이터를 인코딩 및 디코딩하기 위한 방법 및 장치
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
US7471850B2 (en) * 2004-12-17 2008-12-30 Microsoft Corporation Reversible transform for lossy and lossless 2-D data compression
CN1282107C (zh) * 2005-01-07 2006-10-25 北京北大方正电子有限公司 一种对图像进行快速压缩和解压缩的方法
US7778327B2 (en) * 2005-02-08 2010-08-17 Texas Instruments Incorporated H.264 quantization
US7546240B2 (en) * 2005-07-15 2009-06-09 Microsoft Corporation Coding with improved time resolution for selected segments via adaptive block transformation of a group of samples from a subband decomposition
CN101253774B (zh) * 2005-07-18 2011-04-06 韩国电子通信研究院 使用视角时间参考图像缓冲器的预测编码/解码装置及使用其的方法
CN100370834C (zh) * 2005-08-08 2008-02-20 北京中星微电子有限公司 多模图像编解码芯片中的系数缩放计算模块
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
US8705617B2 (en) * 2005-09-27 2014-04-22 Qualcomm Incorporated Multiple layer video encoding
US7689052B2 (en) * 2005-10-07 2010-03-30 Microsoft Corporation Multimedia signal processing using fixed-point approximations of linear transforms
CN100539704C (zh) * 2005-12-08 2009-09-09 香港中文大学 视频信号的编码系数的转换装置及其方法
US20070199011A1 (en) * 2006-02-17 2007-08-23 Sony Corporation System and method for high quality AVC encoding
US7912129B2 (en) * 2006-03-16 2011-03-22 Sony Corporation Uni-modal based fast half-pel and fast quarter-pel refinement for video encoding
US20070223590A1 (en) * 2006-03-24 2007-09-27 Mediatek Inc. System, apparatus, method, and computer program product for processing an integer transform
US7929608B2 (en) * 2006-03-28 2011-04-19 Sony Corporation Method of reducing computations in intra-prediction and mode decision processes in a digital video encoder
US8077769B2 (en) * 2006-03-28 2011-12-13 Sony Corporation Method of reducing computations in transform and scaling processes in a digital video encoder using a threshold-based approach
US7884742B2 (en) * 2006-06-08 2011-02-08 Nvidia Corporation System and method for efficient compression of digital data
WO2008019524A1 (en) * 2006-07-17 2008-02-21 Thomson Licensing Method and apparatus for encoding video color enhancement data, and method and apparatus for decoding video color enhancement data
US8179961B2 (en) 2006-07-17 2012-05-15 Thomson Licensing Method and apparatus for adapting a default encoding of a digital video signal during a scene change period
JP4952282B2 (ja) * 2007-02-14 2012-06-13 パナソニック株式会社 画像符号化装置、画像符号化方法、および画像符号化プログラム
US8942289B2 (en) * 2007-02-21 2015-01-27 Microsoft Corporation Computational complexity and precision control in transform-based digital media codec
US8019804B2 (en) * 2007-03-26 2011-09-13 City University Of Hong Kong Method and apparatus for calculating an SSD and encoding a video signal
US7761290B2 (en) 2007-06-15 2010-07-20 Microsoft Corporation Flexible frequency and time partitioning in perceptual transform coding of audio
US8819095B2 (en) 2007-08-28 2014-08-26 Qualcomm Incorporated Fast computation of products by dyadic fractions with sign-symmetric rounding errors
US7965900B2 (en) * 2007-09-26 2011-06-21 Hewlett-Packard Development Company, L.P. Processing an input image to reduce compression-related artifacts
KR101496324B1 (ko) 2007-10-17 2015-02-26 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
US8369638B2 (en) * 2008-05-27 2013-02-05 Microsoft Corporation Reducing DC leakage in HD photo transform
US8447591B2 (en) * 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms
US8275209B2 (en) * 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing
WO2010085125A2 (ko) 2009-01-22 2010-07-29 삼성전자 주식회사 영상의 변환 방법 및 장치, 역변환 방법 및 장치
US9110849B2 (en) * 2009-04-15 2015-08-18 Qualcomm Incorporated Computing even-sized discrete cosine transforms
CN101605259B (zh) * 2009-05-31 2012-11-21 华亚微电子(上海)有限公司 对多媒体数据进行变换编、解码的装置及方法
US8762441B2 (en) * 2009-06-05 2014-06-24 Qualcomm Incorporated 4X4 transform for media coding
US9069713B2 (en) * 2009-06-05 2015-06-30 Qualcomm Incorporated 4X4 transform for media coding
US8451904B2 (en) 2009-06-24 2013-05-28 Qualcomm Incorporated 8-point transform for media data coding
US9081733B2 (en) * 2009-06-24 2015-07-14 Qualcomm Incorporated 16-point transform for media data coding
US9075757B2 (en) * 2009-06-24 2015-07-07 Qualcomm Incorporated 16-point transform for media data coding
US9118898B2 (en) * 2009-06-24 2015-08-25 Qualcomm Incorporated 8-point transform for media data coding
JP5670444B2 (ja) 2010-05-13 2015-02-18 シャープ株式会社 符号化装置および復号装置
KR101885258B1 (ko) 2010-05-14 2018-08-06 삼성전자주식회사 비디오 신호의 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
BR122020016581B1 (pt) 2010-09-28 2022-03-03 Samsung Electronics Co., Ltd. Método de decodificação de vídeo, e método de codificação de vídeo
JP5678593B2 (ja) * 2010-11-12 2015-03-04 沖電気工業株式会社 符号化支援装置、符号化装置、復号支援装置、復号装置、符号化支援プログラム、及び復号支援プログラム
US9824066B2 (en) 2011-01-10 2017-11-21 Qualcomm Incorporated 32-point transform for media data coding
HUE046377T2 (hu) 2011-01-14 2020-03-30 Ge Video Compression Llc Entrópia kódoló és dekódoló séma
AU2016219700B2 (en) * 2011-01-18 2018-06-28 Dolby International Ab Video decoder with reduced dynamic range transform with inverse transform shifting memory
US20120183044A1 (en) * 2011-01-18 2012-07-19 Louis Joseph Kerofsky Video decoder with reduced dynamic range transform with memory storing
US20120183048A1 (en) * 2011-01-18 2012-07-19 Louis Joseph Kerofsky Video decoder with reduced dynamic range transform with multiple clipping
US9807395B2 (en) 2011-01-18 2017-10-31 Dolby International Ab Video decoder with reduced dynamic range transform with inverse transform shifting memory
US20120183047A1 (en) * 2011-01-18 2012-07-19 Louis Joseph Kerofsky Video decoder with reduced dynamic range transform with inverse transform clipping
US20120183045A1 (en) * 2011-01-18 2012-07-19 Louis Joseph Kerofsky Video decoder with reduced dynamic range transform including clipping
KR20120098500A (ko) * 2011-02-25 2012-09-05 삼성전자주식회사 영상의 변환 및 역변환 방법, 및 이를 이용한 영상의 부호화 및 복호화 장치
KR101522391B1 (ko) 2011-03-10 2015-05-21 니폰덴신뎅와 가부시키가이샤 양자화 제어 장치 및 방법, 및 양자화 제어 프로그램
US20120307889A1 (en) * 2011-06-01 2012-12-06 Sharp Laboratories Of America, Inc. Video decoder with dynamic range adjustments
US8571099B2 (en) * 2011-06-01 2013-10-29 Sharp Laboratories Of America, Inc. Decoder with dynamic range compensation
JP2013038768A (ja) * 2011-07-13 2013-02-21 Canon Inc 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US20130114685A1 (en) * 2011-11-07 2013-05-09 Sharp Laboratories Of America, Inc. Video decoder with constrained dynamic range
JP6120490B2 (ja) * 2011-11-07 2017-04-26 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US9167261B2 (en) 2011-11-07 2015-10-20 Sharp Laboratories Of America, Inc. Video decoder with constrained dynamic range
US9749633B2 (en) 2012-01-19 2017-08-29 Vid Scale, Inc. System and method of video coding quantization and dynamic range control
US9104473B2 (en) * 2012-03-30 2015-08-11 Altera Corporation Conversion and compression of floating-point and integer data
US9277214B2 (en) * 2013-02-15 2016-03-01 Cisco Technology, Inc. Sub-picture hierarchical QP coding
CN110033779B (zh) * 2014-02-27 2023-11-17 瑞典爱立信有限公司 用于棱椎矢量量化编索引和解索引的方法和装置
US9787332B2 (en) * 2015-09-15 2017-10-10 Intel Corporation Error-checking compressed streams in heterogeneous compression accelerators
US10257394B2 (en) 2016-02-12 2019-04-09 Contrast, Inc. Combined HDR/LDR video streaming
US10264196B2 (en) 2016-02-12 2019-04-16 Contrast, Inc. Systems and methods for HDR video capture with a mobile device
WO2018031441A1 (en) 2016-08-09 2018-02-15 Contrast, Inc. Real-time hdr video for vehicle control
CN106341689B (zh) * 2016-09-07 2019-04-23 中山大学 一种avs2量化模块和反量化模块的优化方法及***
JP6822121B2 (ja) * 2016-12-19 2021-01-27 ソニー株式会社 画像処理装置、画像処理方法及びプログラム
JP7313330B2 (ja) * 2017-07-05 2023-07-24 レッド.コム,エルエルシー 電子機器でのビデオ画像データ処理
KR102432486B1 (ko) * 2017-11-22 2022-08-12 삼성전자주식회사 비디오 복호화 장치 및 이를 포함하는 컴퓨팅 시스템 및 비디오 복호화 방법
US10951888B2 (en) 2018-06-04 2021-03-16 Contrast, Inc. Compressed high dynamic range video
US11303932B2 (en) * 2018-08-14 2022-04-12 Contrast, Inc. Image compression
CN110944177B (zh) * 2018-09-21 2024-03-01 华为技术有限公司 视频解码方法及视频解码器,视频编码方法及视频编码器
GB2578633B (en) * 2018-11-02 2021-10-13 Advanced Risc Mach Ltd Encoding data arrays
US11665368B2 (en) 2018-12-06 2023-05-30 Lg Electronics Inc. Method and device for processing video signal by using transform having low complexify
JP2020098984A (ja) 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
US10992960B2 (en) 2019-02-06 2021-04-27 Jared Michael Cohn Accelerated video exportation to multiple destinations
US20220295104A1 (en) * 2019-09-20 2022-09-15 Nokia Technologies Oy An apparatus, a method and a computer program for video coding and decoding
US20220237259A1 (en) * 2021-01-28 2022-07-28 Stmicroelectronics, Inc. Methods and devices for fast fourier transforms

Family Cites Families (123)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06105296B2 (ja) 1986-09-30 1994-12-21 株式会社島津製作所 Ect装置の散乱線補正法
JPH0654307B2 (ja) 1986-10-08 1994-07-20 動力炉・核燃料開発事業団 液体一固体系内の超音波可視化方法及び装置
JPS63219066A (ja) 1987-03-06 1988-09-12 Matsushita Electric Ind Co Ltd 直交変換装置
US4922537A (en) * 1987-06-02 1990-05-01 Frederiksen & Shu Laboratories, Inc. Method and apparatus employing audio frequency offset extraction and floating-point conversion for digitally encoding and decoding high-fidelity audio signals
JPH0645949B2 (ja) 1988-06-14 1994-06-15 ナショナル住宅産業株式会社 小屋組
JPH0645948Y2 (ja) 1988-11-16 1994-11-24 京セラ株式会社 カメラの逆入射光防止装置
US5357594A (en) * 1989-01-27 1994-10-18 Dolby Laboratories Licensing Corporation Encoding and decoding using specially designed pairs of analysis and synthesis windows
US5379351A (en) * 1992-02-19 1995-01-03 Integrated Information Technology, Inc. Video compression/decompression processing and processors
US5319724A (en) 1990-04-19 1994-06-07 Ricoh Corporation Apparatus and method for compressing still images
JP2945487B2 (ja) * 1990-12-26 1999-09-06 株式会社日立製作所 行列乗算器
JPH04282988A (ja) 1991-03-12 1992-10-08 Sony Corp データ変換装置及び方法
US5168375A (en) * 1991-09-18 1992-12-01 Polaroid Corporation Image reconstruction by use of discrete cosine and related transforms
DE4207895A1 (de) * 1992-03-12 1993-09-16 Vaw Ver Aluminium Werke Ag Verfahren und anordnung zum vertikalstranggiessen von metall
KR0150955B1 (ko) * 1992-05-27 1998-10-15 강진구 비트고정을 위한 영상압축방법과 신장방법 및 그 장치
US5394349A (en) * 1992-07-10 1995-02-28 Xing Technology Corporation Fast inverse discrete transform using subwords for decompression of information
JPH0645949A (ja) 1992-07-27 1994-02-18 Victor Co Of Japan Ltd 直交変換装置及び逆直交変換装置
JPH0645948A (ja) 1992-07-27 1994-02-18 Victor Co Of Japan Ltd 直交変換装置及び逆直交変換装置
JPH0654307A (ja) 1992-07-29 1994-02-25 Casio Comput Co Ltd データ圧縮装置
JP3348310B2 (ja) 1992-09-28 2002-11-20 ソニー株式会社 動画像符号化方法および動画像符号化装置
JP3069455B2 (ja) * 1992-12-22 2000-07-24 富士写真フイルム株式会社 画像データ圧縮伸張装置における量子化・逆量子化回路
US5995539A (en) * 1993-03-17 1999-11-30 Miller; William J. Method and apparatus for signal transmission and reception
JP3697717B2 (ja) * 1993-09-24 2005-09-21 ソニー株式会社 2次元離散コサイン変換装置および2次元逆離散コサイン変換装置
US5587708A (en) * 1994-01-19 1996-12-24 Industrial Technology Research Institute Division technique unified quantizer-dequantizer
US5604502A (en) * 1994-03-21 1997-02-18 Lucent Technologies Inc. Motion video compression system with inverse discrete cosine transform mismatch control
KR0126109B1 (ko) * 1994-05-12 1997-12-19 아더 와이.씨. 치아오 이산적 코사인변환 및 역변환을 위한 집적회로 프로세서
JPH08214307A (ja) * 1995-02-02 1996-08-20 Canon Inc 符号化装置
JP3046224B2 (ja) * 1994-07-26 2000-05-29 三星電子株式会社 固定ビット率の符号化方法および装置とこれを利用した高速探索のためのトラッキング方法
EP0714212A3 (de) * 1994-11-21 1999-03-31 SICAN, GESELLSCHAFT FÜR SILIZIUM-ANWENDUNGEN UND CAD/CAT NIEDERSACHSEN mbH Bilddekodierer mit konkurrierender Verarbeitung und Verteilung von Verarbeitungseinheiten
US5864637A (en) * 1995-04-18 1999-01-26 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by selective reduction of spatial resolution
US6002801A (en) * 1995-04-18 1999-12-14 Advanced Micro Devices, Inc. Method and apparatus for improved video decompression by selection of IDCT method based on image characteristics
JPH08305684A (ja) * 1995-04-28 1996-11-22 Matsushita Electric Ind Co Ltd バタフライ演算装置及び逆離散余弦変換装置
CN1154193A (zh) * 1995-05-15 1997-07-09 宝丽来公司 用于降低图象数据压缩噪声的方法和设备
JP2778622B2 (ja) * 1995-06-06 1998-07-23 日本電気株式会社 2次元dct回路
JP2914226B2 (ja) 1995-06-16 1999-06-28 日本電気株式会社 可逆変換を可能にするディジタル信号の変換符号化方式
JP3274593B2 (ja) * 1995-09-27 2002-04-15 日本電気株式会社 可逆変換可能な変換装置及び逆変換装置
US5933535A (en) * 1995-10-05 1999-08-03 Microsoft Corporation Object-based video compression process employing arbitrarily-shaped features
US6085221A (en) * 1996-01-08 2000-07-04 International Business Machines Corporation File server for multimedia file distribution
US6957350B1 (en) * 1996-01-30 2005-10-18 Dolby Laboratories Licensing Corporation Encrypted and watermarked temporal and resolution layering in advanced television
JP3168922B2 (ja) * 1996-08-27 2001-05-21 日本ビクター株式会社 デジタル画像情報の記録再生装置
KR100229795B1 (ko) * 1996-08-30 1999-11-15 전주범 개선된 영상 복호화 시스템
JPH1091614A (ja) 1996-09-13 1998-04-10 Hitachi Ltd Idctの整数化法
JPH10107644A (ja) * 1996-09-26 1998-04-24 Sony Corp 量子化装置および方法、並びに、符号化装置および方法
SG54383A1 (en) * 1996-10-31 1998-11-16 Sgs Thomson Microelectronics A Method and apparatus for decoding multi-channel audio data
US5883823A (en) 1997-01-15 1999-03-16 Sun Microsystems, Inc. System and method of a fast inverse discrete cosine transform and video compression/decompression systems employing the same
DE69805583T2 (de) * 1997-02-08 2003-01-23 Matsushita Electric Ind Co Ltd Quantisierungsmatrix für die codierung von stand- und bewegtbildern
US5974184A (en) * 1997-03-07 1999-10-26 General Instrument Corporation Intra-macroblock DC and AC coefficient prediction for interlaced digital video
US6351570B1 (en) * 1997-04-01 2002-02-26 Matsushita Electric Industrial Co., Ltd. Image coding and decoding apparatus, method of image coding and decoding, and recording medium for recording program for image coding and decoding
US6058215A (en) * 1997-04-30 2000-05-02 Ricoh Company, Ltd. Reversible DCT for lossless-lossy compression
US6134270A (en) * 1997-06-13 2000-10-17 Sun Microsystems, Inc. Scaled forward and inverse discrete cosine transform and video compression/decompression systems employing the same
US6057855A (en) * 1997-07-02 2000-05-02 Hewlett-Packard Company Method and apparatus for providing polygon pixel sub-sample information using incremental means
JPH11122624A (ja) * 1997-10-16 1999-04-30 Matsushita Electric Ind Co Ltd ビデオデコーダ処理量を低減する方法および装置
US6006179A (en) * 1997-10-28 1999-12-21 America Online, Inc. Audio codec using adaptive sparse vector quantization with subband vector classification
US6137916A (en) * 1997-11-17 2000-10-24 Sony Electronics, Inc. Method and system for improved digital video data processing using 8-point discrete cosine transforms
US6600785B1 (en) * 1997-12-01 2003-07-29 Matsushita Electric Industrial Image processor, image data processor and variable length encoder/decoder
ES2251116T3 (es) * 1997-12-19 2006-04-16 Infineon Technologies Ag Dispositivo para la multiplicacion con factores constantes y su utilizacion para la compresion de video (mpeg).
RU2201654C2 (ru) 1997-12-23 2003-03-27 Томсон Лайсенсинг С.А. Способ низкошумового кодирования и декодирования
EP0926899A3 (de) * 1997-12-25 1999-12-15 SANYO ELECTRIC Co., Ltd. Gerät und Verfahren für Bilddekomprimierung
JP3953183B2 (ja) 1998-03-27 2007-08-08 パナソニック コミュニケーションズ株式会社 画像通信方法および画像通信装置
BR9910270A (pt) * 1998-05-07 2001-10-02 Sarnoff Corp Método e aparelho para aumentar a utilização de recurso de memória em um decodificador de fluxo de informação
US6115689A (en) * 1998-05-27 2000-09-05 Microsoft Corporation Scalable audio coder and decoder
US6029126A (en) * 1998-06-30 2000-02-22 Microsoft Corporation Scalable audio coder and decoder
US6073153A (en) * 1998-06-03 2000-06-06 Microsoft Corporation Fast system and method for computing modulated lapped transforms
US6154762A (en) * 1998-06-03 2000-11-28 Microsoft Corporation Fast system and method for computing modulated lapped transforms
US6301304B1 (en) * 1998-06-17 2001-10-09 Lsi Logic Corporation Architecture and method for inverse quantization of discrete cosine transform coefficients in MPEG decoders
GB9819648D0 (en) * 1998-09-10 1998-11-04 Nds Ltd Determining visually noticeable differences between two images
US6353808B1 (en) * 1998-10-22 2002-03-05 Sony Corporation Apparatus and method for encoding a signal as well as apparatus and method for decoding a signal
EP1125235B1 (de) * 1998-10-26 2003-04-23 STMicroelectronics Asia Pacific Pte Ltd. Digitaler audiokodierer mit verschiedenen genauigkeiten
US7194138B1 (en) * 1998-11-04 2007-03-20 International Business Machines Corporation Reduced-error processing of transformed digital data
US6421464B1 (en) * 1998-12-16 2002-07-16 Fastvdo Llc Fast lapped image transforms using lifting steps
US6363117B1 (en) * 1998-12-31 2002-03-26 Sony Corporation Video compression using fast block motion estimation
US6473534B1 (en) * 1999-01-06 2002-10-29 Hewlett-Packard Company Multiplier-free implementation of DCT used in image and video processing and compression
US6496795B1 (en) * 1999-05-05 2002-12-17 Microsoft Corporation Modulated complex lapped transform for integrated signal enhancement and coding
US6487574B1 (en) * 1999-02-26 2002-11-26 Microsoft Corp. System and method for producing modulated complex lapped transforms
US6370502B1 (en) * 1999-05-27 2002-04-09 America Online, Inc. Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec
US6574651B1 (en) * 1999-10-01 2003-06-03 Hitachi, Ltd. Method and apparatus for arithmetic operation on vectored data
US6507614B1 (en) * 1999-10-19 2003-01-14 Sony Corporation Efficient de-quantization in a digital video decoding process using a dynamic quantization matrix for parallel computations
US7028063B1 (en) * 1999-10-26 2006-04-11 Velocity Communication, Inc. Method and apparatus for a DFT/IDFT engine supporting multiple X-DSL protocols
WO2001040985A2 (en) 1999-12-06 2001-06-07 Hrl Laboratories, Llc Method and apparatus for calculating wavelet transform using variable precision
WO2001052550A1 (en) * 2000-01-12 2001-07-19 Koninklijke Philips Electronics N.V. Image data compression
JP3593944B2 (ja) * 2000-03-08 2004-11-24 日本電気株式会社 画像データ処理装置及びそれに用いる動き補償処理方法
JP4560694B2 (ja) 2000-04-05 2010-10-13 ソニー株式会社 符号化装置及びその方法
US6606725B1 (en) * 2000-04-25 2003-08-12 Mitsubishi Electric Research Laboratories, Inc. MAP decoding for turbo codes by parallel matrix processing
SE522261C2 (sv) * 2000-05-10 2004-01-27 Global Ip Sound Ab Kodning och avkodning av en digital signal
US8374237B2 (en) * 2001-03-02 2013-02-12 Dolby Laboratories Licensing Corporation High precision encoding and decoding of video images
JP4063508B2 (ja) * 2001-07-04 2008-03-19 日本電気株式会社 ビットレート変換装置およびビットレート変換方法
US20030112873A1 (en) 2001-07-11 2003-06-19 Demos Gary A. Motion estimation for video compression systems
US7123655B2 (en) * 2001-08-09 2006-10-17 Sharp Laboratories Of America, Inc. Method for reduced bit-depth quantization
US7185037B2 (en) * 2001-08-23 2007-02-27 Texas Instruments Incorporated Video block transform
KR100433709B1 (ko) 2001-08-31 2004-05-31 (주)씨앤에스 테크놀로지 행렬 변화를 통한 분산산술처리 방식의 이산여현변환 방법
US6882685B2 (en) * 2001-09-18 2005-04-19 Microsoft Corporation Block transform and quantization for image and video coding
US7295609B2 (en) * 2001-11-30 2007-11-13 Sony Corporation Method and apparatus for coding image information, method and apparatus for decoding image information, method and apparatus for coding and decoding image information, and system of coding and transmitting image information
US7200275B2 (en) * 2001-12-17 2007-04-03 Microsoft Corporation Skip macroblock coding
US7379498B2 (en) * 2002-03-11 2008-05-27 Broadcom Corporation Reconstructing a compressed still image by transformation to a compressed moving picture image
JP2003348598A (ja) 2002-04-12 2003-12-05 Seiko Epson Corp メモリ効率のいい圧縮領域ビデオ処理のための且つ因数分解及び整数近似法を用いる高速逆動き補償のための方法並びに装置
US7190724B2 (en) * 2002-04-12 2007-03-13 Seiko Epson Corporation Method and apparatus for transform domain video processing
US7242713B2 (en) 2002-05-02 2007-07-10 Microsoft Corporation 2-D transforms for image and video coding
US6944224B2 (en) * 2002-08-14 2005-09-13 Intervideo, Inc. Systems and methods for selecting a macroblock mode in a video encoder
US7197525B2 (en) * 2002-11-26 2007-03-27 Analog Devices, Inc. Method and system for fixed point fast fourier transform with improved SNR
US7075530B2 (en) * 2003-02-27 2006-07-11 International Business Machines Corporation Fast lighting processors
US7330866B2 (en) * 2003-07-01 2008-02-12 Nvidia Corporation System for frequency-domain scaling for discrete cosine transform
JP4617644B2 (ja) 2003-07-18 2011-01-26 ソニー株式会社 符号化装置及び方法
US7609763B2 (en) * 2003-07-18 2009-10-27 Microsoft Corporation Advanced bi-directional predictive coding of video frames
US8218624B2 (en) * 2003-07-18 2012-07-10 Microsoft Corporation Fractional quantization step sizes for high bit rates
US7499495B2 (en) * 2003-07-18 2009-03-03 Microsoft Corporation Extended range motion vectors
US7502415B2 (en) * 2003-07-18 2009-03-10 Microsoft Corporation Range reduction
US7688895B2 (en) * 2003-07-22 2010-03-30 Lsi Corporation Method and/or circuit for binary arithmetic decoding decisions before termination
US8014450B2 (en) * 2003-09-07 2011-09-06 Microsoft Corporation Flexible range reduction
KR100965881B1 (ko) * 2003-10-10 2010-06-24 삼성전자주식회사 비디오 데이터 인코딩 시스템 및 디코딩 시스템
ES2392437T3 (es) 2004-01-30 2012-12-10 Panasonic Corporation Procedimiento de decodificación de vídeos que utiliza matrices de cuantificación adaptativas
US20050213835A1 (en) * 2004-03-18 2005-09-29 Huazhong University Of Science & Technology And Samsung Electronics Co., Ltd. Integer transform matrix selection method in video coding and related integer transform method
US20050259729A1 (en) * 2004-05-21 2005-11-24 Shijun Sun Video coding with quality scalability
JP4241517B2 (ja) 2004-06-15 2009-03-18 キヤノン株式会社 画像符号化装置及び画像復号装置
JP4074868B2 (ja) * 2004-12-22 2008-04-16 株式会社東芝 画像符号化制御方法及びその装置
JP2008536451A (ja) 2005-04-14 2008-09-04 トムソン ライセンシング 空間スケーラブルビデオ符号化及び復号化向けスライス適応型動きベクトル符号化のための方法及び装置
BRPI0611672A2 (pt) * 2005-07-22 2009-01-13 Mitsubishi Electric Corp codificador e decodificador de imagem, mÉtodo de codificaÇço de imagem, programa de codificaÇço de imagem, meio de gravaÇço legÍvel por computador, mÉtodo de decodificaÇço de imagem, programa de decodificaÇço de imagem, e, corrente de bits codificada por imagem
CN100539437C (zh) * 2005-07-29 2009-09-09 上海杰得微电子有限公司 一种音频编解码器的实现方法
US8548265B2 (en) * 2006-01-05 2013-10-01 Fastvdo, Llc Fast multiplierless integer invertible transforms
US20070271321A1 (en) * 2006-01-11 2007-11-22 Qualcomm, Inc. Transforms with reduce complexity and/or improve precision by means of common factors
US8942289B2 (en) * 2007-02-21 2015-01-27 Microsoft Corporation Computational complexity and precision control in transform-based digital media codec
JP5277180B2 (ja) * 2007-03-23 2013-08-28 トムソン ライセンシング 符号化ビットストリームの修正
BRPI0811626B1 (pt) * 2007-06-14 2019-08-20 Contentarmor Método e dispositivo imprimir marca d'água em dados codificados de extensão variável, fluxo contínuo de dados codificados de extensão variável e mídia legível por processador
US20120014431A1 (en) * 2010-07-14 2012-01-19 Jie Zhao Methods and Systems for Parallel Video Encoding and Parallel Video Decoding
US9313514B2 (en) * 2010-10-01 2016-04-12 Sharp Kabushiki Kaisha Methods and systems for entropy coder initialization

Also Published As

Publication number Publication date
EP1768418A2 (de) 2007-03-28
CN1764277A (zh) 2006-04-26
EP1750450B1 (de) 2017-03-29
ES2615488T3 (es) 2017-06-07
US20110116543A1 (en) 2011-05-19
KR100839308B1 (ko) 2008-06-19
JP3964925B2 (ja) 2007-08-22
EP1750449B1 (de) 2017-03-29
JP2007151131A (ja) 2007-06-14
ES2628527T3 (es) 2017-08-03
US8971405B2 (en) 2015-03-03
KR100839310B1 (ko) 2008-06-19
JP4560028B2 (ja) 2010-10-13
US7881371B2 (en) 2011-02-01
KR20060112256A (ko) 2006-10-31
ES2628532T3 (es) 2017-08-03
KR100839309B1 (ko) 2008-06-19
ES2628498T3 (es) 2017-08-03
EP1750450A3 (de) 2011-02-02
CN100463522C (zh) 2009-02-18
CN1764278A (zh) 2006-04-26
US20050213659A1 (en) 2005-09-29
CN100459712C (zh) 2009-02-04
JP2003204552A (ja) 2003-07-18
US20050175097A1 (en) 2005-08-11
JP2007122711A (ja) 2007-05-17
CN1231068C (zh) 2005-12-07
EP1294198A2 (de) 2003-03-19
JP4560033B2 (ja) 2010-10-13
EP1750449A2 (de) 2007-02-07
KR20060112254A (ko) 2006-10-31
EP1294198A3 (de) 2006-04-12
US20050180503A1 (en) 2005-08-18
JP2007128504A (ja) 2007-05-24
TWI221388B (en) 2004-09-21
KR100839311B1 (ko) 2008-06-17
CN1409558A (zh) 2003-04-09
HK1053033B (zh) 2017-11-24
US7773671B2 (en) 2010-08-10
US7839928B2 (en) 2010-11-23
JP3964765B2 (ja) 2007-08-22
CN1764279A (zh) 2006-04-26
EP1750449A3 (de) 2011-02-02
KR20060112255A (ko) 2006-10-31
US20030081674A1 (en) 2003-05-01
CN100484247C (zh) 2009-04-29
JP2007122710A (ja) 2007-05-17
US6882685B2 (en) 2005-04-19
EP1768418B1 (de) 2017-03-29
EP1768418A3 (de) 2011-02-02
US7106797B2 (en) 2006-09-12
JP4560027B2 (ja) 2010-10-13
KR20030024581A (ko) 2003-03-26
US20050141609A1 (en) 2005-06-30
EP1294198B1 (de) 2016-11-16
EP1750450A2 (de) 2007-02-07

Similar Documents

Publication Publication Date Title
DE20222025U1 (de) Verbesserter Blocktransformationsdecodierer für die Bild- oder Videodecodierung sowie zugehörige Vorrichtungen und Handcomputergeräte
DE3884802T3 (de) Verfahren und vorrichtung zur adaptiven blocktransformationscodierung von bildern.
DE69722060T2 (de) Inverser Bewegungsausgleich von schneller DCT
DE69637335T2 (de) Bildsignalkodierungsmethode und -vorrichtung
DE60308255T2 (de) 2D-Transformationen zur Bild- und Videokodierung
US7082450B2 (en) Implementation of a transform and of a subsequent quantization
EP2222086A1 (de) Verfahren und Vorrichtung zur Vermeidung von Rundungsfehlern nach Durchführung einer inversen diskreten orthogonalen Transformation
EP0956539B1 (de) Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes
EP3434015A1 (de) Datenkompression mittels adaptiven unterabtastens
EP0956703B1 (de) Verfahren und anordnung zur codierung und decodierung eines digitalisierten bildes
US6640012B1 (en) Image compression system and method of determining quantization parameters therefor
DE69835431T2 (de) Bildkodier-und-dekodierverfahren und-vorrichtung
DE69128054T2 (de) Bilddatenverarbeitungsverfahren und -gerät
DE102006003168A1 (de) Kodiervorrichtung, Verfahren zum Anpassen einer Dekodierberechnung und Computerprogrammprodukt hierfür
DE3545106C2 (de)
DE19618117C1 (de) Verfahren zur Quantisierung und Verfahren zur inversen Quantisierung von Transformationscodierungskoeffizienten eines Videodatenstorms
DE102006049232B4 (de) Verfahren und Vorrichtung zur Vermeidung von Fehlern beim Runden von Werten nach Durchführung einer inversen diskreten Kosinus-Transformation
EP0241745A1 (de) Verfahren zur Datenreduktion digitaler Bildsignale durch Vektorquantisierung von durch orthonormale Transformation mittels einer symmetrischen fastzyklischen Hadamard-Matrix gewonnenen Koeffizienten
EP1869890B1 (de) Verfahren und vorrichtung zur reduktion eines quantisierungsfehlers
EP1121809B1 (de) Verfahren und anordnung zur codierung eines digitalisierten bildes, verfahren und anordnung zur decodierung eines digitalisierten bildes
DE10007171A1 (de) Verfahren und Anordnung zur Codierung bzw. zur Codierung und Decodierung einer Zahlenfolge
EP0118754B1 (de) Verfahren und Schaltungsanordnung zur digitalen Übertragung von Fernsehbildern
DE4333368C2 (de) Verfahren zur Aufbereitung von Daten zur Beschreibung von Bildbereichen, sowie Anordnung hierzu
JPH07250326A (ja) 画像符号化方式
DE19544787A1 (de) Verfahren und Vorrichtung zum Codieren eines Bewegtbildes

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20120524

R152 Utility model maintained after payment of third maintenance fee after eight years

Effective date: 20120426

R071 Expiry of right
R071 Expiry of right