DE69619644T2 - Transformationskodierung beliebig geformter Bildsegmente - Google Patents
Transformationskodierung beliebig geformter BildsegmenteInfo
- Publication number
- DE69619644T2 DE69619644T2 DE69619644T DE69619644T DE69619644T2 DE 69619644 T2 DE69619644 T2 DE 69619644T2 DE 69619644 T DE69619644 T DE 69619644T DE 69619644 T DE69619644 T DE 69619644T DE 69619644 T2 DE69619644 T2 DE 69619644T2
- Authority
- DE
- Germany
- Prior art keywords
- block
- pattern
- transform
- input
- coefficient
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/649—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding the transform being applied to non rectangular image segments
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Image Processing (AREA)
Description
- Die vorliegende Erfindung betrifft eine Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes mit einer bestimmten Form enthält, und insbesondere aber nicht ausschließlich eine Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes mit einer bestimmten Form enthält, wobei die Vorrichtung effektiv eine Transformationscodierung durchführt, indem sie einen Transformationskoeffizienten derart wählt, dass die Bildqualität eines Bereiches, der eine Grenze eines Objektes mit einer bestimmten Form enthält, wiederhergestellt wird.
- Allgemein wird eine Transformationscodierung durchgeführt, um eine Datenmenge zu reduzieren, indem Redundanz aus einem Videosignal entfernt wird. Bei der Transformationscodierung wird ein Bildrahmen in Blöcke mit einer Größe von jeweils N · N Daten unterteilt, wobei die Transformationscodierung für jeden Block durchgeführt wird, so dass ein Videosignal in einer räumlichen Domäne zu einem Signal in einer Frequenzdomäne umgewandelt wird. Bei einer derartigen Transformationscodierung wird die Energie eines Signals (der Wert des Transformationskoeffizienten) hauptsächlich in einem niedrigeren Frequenzband konzentriert. Für die oben genannte Transformationscodierung wird meistens eine diskrete Kosinustransformation verwendet. Die Transformationscodierung schlägt auch eine Codiertechnologie für die weitere Kompression einer Datenmenge vor, indem die Transformationskoeffizienten quantisiert und die quantisierten Daten mit variabler Länge codiert werden.
- Weil die Transformationscodiertechnologie eine Transformationscodierung für einen N · N großen rechteckigen Block durchführt, ist es ineffizient, eine allgemeine Transformationscodierung durchzuführen, wenn eine Grenze eines Objektes mit einer bestimmten Form in einem bestimmten Block enthalten ist. Für den Fall, dass eine Grenze eines Objektes mit einer bestimmten Form in einem bestimmten Block enthalten ist, wurde ein Transformationscodierverfahren vorgeschlagen, das den Bereich des Objektes mit einer bestimmten Form separat zu dem anderen Hintergrundbereich transformiert.
- Fig. 1 ist ein Blockdiagramm einer allgemeinen Codiervorrichtung zum Codieren eines eingegebenen Videosignals. Wie in der Zeichnung gezeigt, enthält die allgemeine Codiervorrichtung einen Videoteiler 11. Der Videoteiler 11 teilt das eingegebene Video in Blöcke mit jeweils einer Größe von N · N Daten. Die N · N großen Blöcke werden an einer Blocksteuereinrichtung 12 und einem ersten Schalter 13 angelegt. Die Blocksteuereinrichtung 12 entscheidet, ob jeder eingegebene Block der N · N Daten eine Grenze eines Objektes mit einer bestimmten Form enthält und steuert den ersten Schalter 13 gemäß dem Entscheidungsergebnis. Der erste Schalter 13 legt die vom Videoteiler 11 eingegebenen N · N großen Blöcke unter der Steuerung der Blocksteuereinrichtung 12 an einem ersten Codierer 14 oder einem zweiten Codierer 15 an. Die Steueroperation der Blocksteuereinrichtung 12 wird unten ausführlicher beschrieben. Wenn der eingegebene Block gemäß der Bestimmung der Blocksteuereinrichtung 12 keine Grenze eines Objektes mit einer bestimmten Form enthält, steuert die Blocksteuereinrichtung 12 den ersten Schalter 13, um den eingegebenen Block an dem ersten Codierer 14 anzulegen. Wenn der eingegebene Block dagegen gemäß der Bestimmung der Blocksteuereinrichtung 12 eine Grenze eines Objektes mit einer bestimmten Form enthält, steuert die Blocksteuereinrichtung 12 den Schalter 13, um den eingegebenen Block an dem zweiten Codierer 15 anzulegen. Der erste Codierer 14 codiert einen Videosignalblock in Übereinstimmung mit einem allgemeinen Transformationscodierverfahren. Der zweite Codierer 15 führt eine Transformationscodierung für einen Block durch, der eine Grenze eines Objektes mit einer bestimmten Form enthält, was weiter unten beschrieben wird. Ein zweiter Schalter 16 wird selektiv mit den Ausgängen des ersten Codierers 14 und des zweiten Codierers 15 verbunden. Der zweite Schalter 16 wird ebenfalls unter der Steuerung der Blocksteuereinrichtung 12 betrieben. Wenn insbesondere der eingegebene Block gemäß der Bestimmung der Blocksteuereinrichtung 12 keine Grenze eines Objektes mit einer bestimmten Form enthält, steuert die Blocksteuereinrichtung 12 den zweiten Schalter 16, um die Ausgabe des ersten Codierers 14 zu wählen. Wenn der eingegebene Block dagegen gemäß der Bestimmung der Blocksteuereinrichtung 12 eine Grenze eines Objektes mit einer bestimmten Form enthält, steuert die Blocksteuereinrichtung 12 den zweiten Schalter 16, um die Ausgabe des zweiten Codierers 15 zu wählen. Auf diese Weise gibt der zweite Schalter 16 die transformationscodierten Daten für die eingegebenen Blöcke aus.
- Fig. 2A ist ein detailliertes Blockdiagramm des zweiten Codierers in der Vorrichtung von Fig. 1, und Fig. 2B ist eine Ansicht eines Bereiches, der die Auswahl eines Transformationskoeffizienten in dem zweiten Codierer von Fig. 2A erforderlich macht. Das heißt, dass Fig. 2A eine Transformationscodiervorrichtung aus dem Stand der Technik für einen Block ist, der eine Grenze eines Objektes mit einer bestimmten Form enthält.
- Wie oben beschrieben, führt der zweite Codierer 15 eine Transformationscodierung für einen Block durch, der eine Grenze eines Objektes mit einer bestimmten Form enthält. Ein Transformierer 21 führt eine diskrete Cosinustransformation (im Folgenden als DCT abgekürzt) auf N · N großen Blöcken (Bi) durch, die eine Grenze eines Objektes mit einer bestimmten Form enthalten und von dem Videoteiler 11 eingegeben werden, um N · N Transformationskoeffizienten F1 zu erzeugen, die in einem Koeffizientenauswähler 22 eingegeben werden. Der Koeffizientenauswähler 22 wählt M bestimmte Koeffizienten aus den eingegebenen N · N Transformationskoeffizienten F1 aus und setzt die anderen Transformationskoeffizienten als Nullen. Die durch den Koeffizientenauswähler 22 ausgewählten Koeffizienten Fs werden in einen invertierten Transformierer 23 eingegeben. Der invertierte Transformierer 23 transformiert die eingegebenen ausgewählten Koeffizienten Fs invertiert, um einen Block wiederherzustellen, der als wiederhergestellter Block Br bezeichnet wird. Der wiederhergestellte Block Br wird in eine Wiederholungssteuereinrichtung 25 eingegeben. Die Wiederholungssteuereinrichtung 25 berechnet einen gemittelten quadratischen Fehler des eingegebenen Blocks Bi und des wiederhergestellten Blocks Br und vergleicht den gemittelten quadratischen Fehler mit einem vorbestimmten Bezugswert. Wenn die Wiederholungssteuereinrichtung 25 den gemittelten quadratischen Fehler berechnet, berechnet sie den gemittelten quadratischen Fehler nur für den Bereich, der eine Grenze eines Objektes mit einer bestimmten Form enthält. Wenn wie in Fig. 2A gezeigt, der Bereich, der eine Grenze eines Objektes mit einer bestimmten Form enthält, durch ein Zeichen "S" angegeben wird, wird der gemittelte quadratische Fehler nur für die Pixel innerhalb des Bereiches "S" berechnet. Wenn ein durch die Wiederholungssteuereinrichtung 25 berechneter gemittelter quadratischer Fehler größer als ein vorbestimmter Bezugswert ist, ersetzt die Wiederholungssteuereinrichtung 25 Pixeldaten eines Bereiches "S", der eine Grenze eines Objektes mit einer bestimmten Form enthält, in dem wiederhergestellten Block Br durch Pixeldaten in einem entsprechenden Bereich des eingegebenen Blockes Bi, um einen rekonstruierten Block Br' zu bilden, der in den Transformierer 21 eingegeben wird. Der Transformierer 21 nimmt eine DCT-Transformation auf den eingegebenen rekonstruierten Blöcken (Br') vor, um N · N Transformationskoeffizienten zu bilden, die in den Koefflzientenauswähler 22 eingegeben werden. Der Koeffizientenauswähler 22 wählt M bestimmte Koeffizienten aus. Die durch den Koeffizientenauswähler 22 ausgewählten Koeffizienten werden durch den invertierten Transformierer 23 invertiert transformiert, um einen wiederhergestellten Block Br zu erzeugen. Die Wiederholungssteuereinrichtung 25 berechnet einen gemittelten quadratischen Fehler des eingegebenen Blocks Bi und des wiederhergestellten Blocks Br. Die oben beschriebenen Prozesse werden wiederholt, bis der gemittelte quadratische Fehler kleiner als ein vorbestimmter Bezugswert ist. Wenn der durch die Wiederholungssteuereinrichtung 25 berechnete gemittelte quadratische Fehler kleiner als ein vorbestimmter Bezugswert ist, wird die Koeffizientenauswahl durch den Koeffizientenauswähler abgeschlossen. Wenn die Koeffizientenauswahl abgeschlossen ist, gibt der Koeffizientenauswähler 22 die ausgewählten Koeffizienten zu einem Codierer 24, der den gewählten Koeffizienten codiert und schließlich die codierten Daten ausgibt.
- Bei der oben beschriebenen allgemeinen Vorrichtung wählt der Koeffizientenauswähler 22 M Koeffizienten mit jeweils größeren Energiewerten aus den N · N Transformationskoeffizienten aus, wodurch ein Fehler in dem gesamten Bereich des N · N großen Blocks minimiert wird. Weil jedoch ein bedeutungsvoller Teil in dem N · N großen Block ein Bereich ist, der eine Grenze eines Objektes mit einer bestimmten Form enthält, ist ein derartiges Verfahren zum Auswählen eines Transformationskoeffizienten nicht effizient.
- EP-A-0 649 258 gibt die Merkmale im Oberbegriff der Anspruches 1 der vorliegenden Erfindung an.
- Es ist eine Aufgabe von bevorzugten Ausführungsformen der vorliegenden Erfindung, eine Transformationscodiervorrichtung für einen Block anzugeben, der eine Grenze eines Objektes mit einer bestimmten Form enthält, wobei die Vorrichtung eine Transformation derart durchführt, dass die Bildqualität eines Bereiches, der eine Grenze eines Objektes mit einer bestimmten Form enthält, in dem Block wiederhergestellt wird und dass nicht die Bildqualität der gesamten Blöcke wiederhergestellt wird, wenn Koeffizienten ausgewählt werden.
- Gemäß der vorliegenden Erfindung ist eine Transformationscodiervorrichtung für einen Block vorgesehen, der eine Grenze eines Objektes mit einer bestimmten Form enthält, wobei die Transformationscodiervorrichtung umfasst:
- eine Transformierereinrichtung zum Transformieren von nicht transformierten Daten eines eingegebenen Blockes und zum Ausgeben der Transformationskoeffizienten,
- eine invertierte Transformierereinrichtung zum invertierten Transformieren von Transformationskoeffizienten und zum Ausgeben eines wiederhergestellten Blocks,
- eine Codiereinrichtung zum Codieren der Koeffizienten mit variabler Länge, und
- eine Wiederholungssteuereinriehtung zum Berechnen eines gemittelten quadratischen Fehlers für die nicht transformierten Daten des eingegebenen Blocks und des wiederhergestellten Blocks, und zum Vergleichen des berechneten Ergebnisses mit einem vorbestimmten Bezugswert, dadurch gekennzeichnet, dass die Transformationscodiervorrichtung weiterhin umfasst:
- eine Transformationskoeffizienten-Auswähleinrichtung zum Auswählen und Ausgeben von Transformationskoeffizienten unter Verwendung der Transformationskoeffizienten und der nicht transformierten Daten des eingegebenen Blocks,
- wobei die durch den invertierten Transformierer invertiert transformierten Transformationskoeffizienten diejenigen sind, die durch die Transformationskoeffizienten-Auswähleinrichtung ausgewählt werden,
- wobei die Koeffizienten für die Codierung der Codiereinrichtung mit variabler Länge die durch die Transformationskoeffizienten-Auswähleinrichtung ausgewählten Koeffizienten sind, und
- die Wiederholungssteuereinrichtung bestimmt, ob die Koeffizientenauswahl fortgesetzt wird oder nicht,
- wobei die Transformationskoeffizienten-Auswähleinrichtung weiterhin umfasst:
- eine Blockauswähleinrichtung zum Auswählen des eingegebenen Blocks oder des Fehlerblocks und zum Ausgeben des ausgewählten Blocks,
- einen Musterbilder zum Empfangen von Transformationskoeffizienten der nicht transformierten Daten des eingegebenen Blocks von der Transformierereinrichtung und zum Bilden und Ausgeben von Musterblöcken für die einzelnen Transformationskoeffizienten sowie zum Speichern der Musterblöcke und zum Ausgeben der Musterblöcke in Übereinstimmung mit einem eingegebenen Auswahlindex,
- einen Vergleicher zum Auswählen eines Musterblocks aus den Musterblöcken, der einem in dem Blockauswähler ausgewählten Block am besten entspricht, und zum Ausgeben des Auswahlindexes,
- einen Koeffizientenwiederherstellungsteil zum Wiederherstellen des Transformationskoeffizienten in Übereinstimmung mit dem durch den Vergleicher ausgewählten Auswählindex,
- einen Fehlerberechner zum Berechnen eines Fehlers zwischen dem durch den Blockauswähler ausgewählten Block und dem Musterblock in Übereinstimmung mit dem aus dem Musterbilder eingegebenen Auswahlindex sowie zum Erzeugen eines Fehlerblocks, um dann den erzeugten Fehlerblock zu dem Blockauswähler auszugeben, und
- eine Abschlusssteuereinrichtung zum Abschließen der Auswahl des Musterblocks in dem Vergleicher in Übereinstimmung mit dem von der Wiederholungssteuereinrichtung eingegebenen Steuersignal.
- Vorzugsweise umfasst der Musterbilder:
- einen invertierten Transformierer zum Durchführen einer invertierten Transformation für die eingegebenen N · N Transformationskoeffizienten, zum Bilden der N · N Musterblöcke und zum Ausgeben der Musterblöcke an den Vergleicher,
- einen Speicher zum Speichern der aus dem invertierten Transformierer ausgegebenen Musterblöcke, und
- eine Steuereinrichtung zum Ausgaben von Musterblöcken aus den im Speicher gespeicherten Musterblöcken in Übereinstimmung mit dem vom Vergleicher eingegebenen Auswahlindex an den Fehlerberechner.
- Vorzugsweise umfasst der Vergleicher:
- einen Berechner zum Berechnen eines gemittelten quadratischen Fehlers des Musterblocks für die entsprechenden Koeffizienten des durch den Blockauswähler ausgewählten Blocks und der vom Musterbilder eingegebenen N · N Musterblöcke,
- einen Bitquantitätsvariation-Berechner zum Berechnen einer Variationsgröße der Bitquantität, die durch das zusätzliche Hinzufügen eines Koeffizienten zu der Bitquantität der ausgewählten Koeffizienten erzeugt wird, und
- einen Auswähler zum Auswählen eines Musterblocks eines Koeffizienten, der ein Verhältnis zwischen einem gemittelten quadratischen Fehler, der durch den Gemittelter- Quadratischer-Fehler-Berechner berechnet wird, und der Variationsgröße der Bitquantität, die durch den Bitquantitätsvariation-Berechner für den N · N Musterblock berechnet wird, maximiert.
- Vorzugsweise wählt der Blockauswähler einen eingegebenen Block während des Prozesses zum Auswählen eines ersten Transformationskoeffizienten aus und gibt diesen aus, wobei er weiterhin während des Prozesses zum Auswählen des folgenden Transformationskoeffizienten einen Fehlerblock zwischen dem Musterblock für den im vorangegangenen Prozess ausgewählten Transformationskoeffizienten und dem eingegebenen Block auswählt und ausgibt.
- Vorzugsweise wählt der Auswähler einen Musterblock eines Koeffizienten, der ein Verhältnis zwischen einem gemittelten quadratischen Fehler, der durch den Gemittelter-Quadratischer- Fehler-Berechner berechnet wird, und der Variationsgröße der Bitquantität, die durch den Bitquantitätsvariation-Berechner berechnet wird, maximiert, um dementsprechend den Auswahlindex auszugeben.
- Im Folgenden wird eine bevorzugte Ausführungsform der vorliegenden Erfindung beispielhaft mit Bezug auf die beigefügten Zeichnungen beschrieben:
- Fig. 1 ist ein Blockdiagramm einer allgemeinen Codiervorrichtung zum Codieren eines eingegebenen Videosignals,
- Fig. 2A ist ein Blockdiagramm eines zweiten Codierers in der Vorrichtung von Fig. 1, die eine Transformationscodiervorrichtung aus dem Stand der Technik für einen Block ist, der eine Grenze eines Objektes mit einer bestimmten Form ist,
- Fig. 2B ist eine Ansicht eines Bereichs, der eine Auswahl eines Transformationskoeffizienten in dem zweiten Codierer von Fig. 2A erfordert,
- Fig. 3 ist ein Blockdiagramm einer Transformationscodiervorrichtung gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung für einen Block, der eine Grenze eines Objekts mit einer bestimmten Form enthält,
- Fig. 4 ist ein detailliertes Blockdiagramm des Transformationskoeffizienten- Auswählers von Fig. 3,
- Fig. 5 ist ein detailliertes Blockdiagramm des Musterbilders von Fig. 4, und
- Fig. 6 ist ein detailliertes Blockdiagramm des Vergleichers von Fig. 4.
- Im Folgenden wird eine bevorzugte Ausführungsform der vorliegenden Erfindung ausführlicher mit Bezug auf die beigefügten Zeichnungen beschrieben.
- Wie in Fig. 3 gezeigt, umfasst eine Transformationscodiervorrichtung gemäß der vorliegenden Erfindung für einen Block, der eine Grenze eines Objektes mit einer bestimmten Form enthält, einen Transformierer 31 zum DCT-Transformieren eines N · N großen eingegebenen Blocks Bi und zum Ausgeben von N · N Transformationskoeffizienten F1, einen Transformationskoeffizienten-Auswähler 32 zum Auswählen und Ausgeben von Transformationskoeffizienten unter Verwendung der Transformationskoeffizienten F1 und des eingegebenen Blocks Bi, einen invertierten Transformierer 33 zum invertierten Transformieren der ausgewählten Transformationskoeffizienten Fs und zum Ausgeben eines wiederhergestellten Blocks, einen Codierer 34 zum Codieren der ausgewählten Koeffizienten Fs mit variabler Länge und eine Wiederholungssteuereinrichtung 35 zum Berechnen eines gemittelten quadratischen Fehlers des eingegebenen Blocks Bi und des wiederhergestellten Blocks Br, zum Vergleichen des berechneten Ergebnisses mit einem vorbestimmten Bezugswert und zum Ausgeben eines Steuersignals, um die Koeffizientenauswahl in dem Transformationskoeffizienten-Auswähler abzuschließen, wenn der berechnete gemittelte quadratische Fehler kleiner als der Bezugswert ist.
- Fig. 4 ist ein detailliertes Blockdiagramm des Transformationskoeffizienten-Auswählers von Fig. 3. Wie in Fig. 4 gezeigt, umfasst der Transformationskoeffizienten-Auwähler 32: einen Blockauswähler 41 zum Empfangen des eingegebenen Blocks Bi und zum Auswählen des eingegebenen Blocks Bi oder des Fehlerblocks sowie zum Ausgeben des ausgewählten Blocks Bd, einen Musterbilder 42 zum Empfangen der Transformationskoeffizienten des eingegebenen Blocks Bi von dem Transformierer 31, zum Bilden und Ausgeben von Musterblöcken Bp(n) für die einzelnen Transformationskoeffizienten sowie zum Speichern der Musterblöcke und zum Ausgeben von Musterblöcken Bp(k) in Übereinstimmung mit einem eingegebenen Auswahlindex, einen Vergleicher 43 zum Auswählen eines Musterblocks aus den Musterblöcken Bp(n), der einem im Blockauswähler 41 ausgewählten Block Bd am besten entspricht, und zum Ausgeben des Auswahlindex, einen Koeffizientenwiederherstellungsteil 44 zum Wiederherstellen des Transformationskoeffizienten in Übereinstimmung mit dem durch den Vergleicher 43 ausgewählten Auswahlindex, einen Fehlerberechner 45 zum Berechnen eines Fehlers zwischen dem durch den Blockauswähler 41 ausgewählten Block Bd und dem Musterblock Bp(k) in Übereinstimmung mit dem vom Musterbilder 42 eingegebenen Auswahlindex und zum Erzeugen eines Fehlerblocks, um dann den erzeugten Fehlerblock zu dem Blockauswähler 41 auszugeben, und eine Abschlusssteuereinrichtung 46 zum Abschließen der Auswahl des Musterblocks in dem Vergleicher 43 in Übereinstimmung mit dem von der Wiederholungssteuereinrichtung 35 eingegebenen Steuersignal.
- Fig. 5 ist ein detailliertes Blockdiagramm des Musterbilders von Fig. 4. Wie in Fig. 5 gezeigt, umfasst der Musterbilder 42 von Fig. 4: einen invertierten Transformierer 51 zum Durchführen einer invertierten Transformation für die eingegebenen N · N Transformationskoeffizienten, zum Bildern der N · N Musterblöcke Bp(n) und zum Ausgeben der Musterblöcke Bp(n) zu dem Vergleicher 43, einen Speicher 52 zum Speichern der aus dem invertierten Transformierer 51 ausgegebenen Musterblöcke Bp(n), und eine Steuereinrichtung 53 zum Ausgeben von Musterblöcken Bp(k) aus den im Speicher 52 gespeicherten Musterblöcken Bp(n) in Übereinstimmung mit dem vom Vergleicher 43 eingegebenen Auswahlindex zu dem Fehlerberechner 45.
- Fig. 6 ist ein detailliertes Blockdiagramm des Vergleichers von Fig. 4. Wie in Fig. 6 gezeigt, umfasst der Vergleicher von Fig. 4: einen Berechner 61 zum Berechnen eines gemittelten quadratischen Fehlers des Musterblockes für die entsprechenden Koeffizienten des durch den Blockauswähler 41 ausgewählten Blocks Bd und die vom Musterbilder 42 eingegebenen N · N Musterblöcke Bp(n), einen Bitquantitätsvariation-Berechner 62 zum Berechnen einer Variationsgröße der Bitquantität, die durch das zusätzliche Hinzufügen eines Koeffizienten zu der Bitquantität der ausgewählten Koeffizienten erzeugt wird, und einen Auswähler 63 zum Auswählen eines Musterblocks eines Koeffizienten, der ein Verhältnis eines gemittelten quadratischen Fehlers, der durch den Gemittelter-Quadratischer-Fehler-Berechner 61 berechnet wird, zu der Variationsgröße der Bitquantität, die durch den Bitquantitätsvariation- Berechner 62 für den N · N Musterblock berechnet wird, maximiert.
- Im Folgenden wird der Betrieb der Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes mit einer bestimmten Form enthält, gemäß der vorliegenden Ausführungsform der vorliegenden Erfindung mit dem oben beschriebenen Aufbau näher beschrieben.
- Der in Fig. 3 gezeigte Transformierer 31 DCT-transformiert den vom Videoteiler 11 in der allgemeinen Codiervorrichtung von Fig. 1 eingegebene N · N großen Block Bi, um die N · N Transformationskoeffizienten F1 zu erzeugen. Die Transformationskoeffizienten F1 werden in den Transformationskoeffizienten-Auswähler 32 eingegeben. Der Transformationskoeffizienten-Auswähler 32 verwendet die eingegebenen N · N Transformationskoeffizienten und den eingegebenen Block Bi und wählt den Transformationskoeffizienten Fs aus den N · N Transformationskoeffzienten aus, um denselben auszugeben.
- Die Prozedur zum Auswählen einer vorbestimmten Anzahl der Transformationskoeffizienten in dem Transformationskoeffizienten-Auswähler 32 wird im Folgenden mit Bezug auf das detaillierte Blockdiagramm des Transformationskoeffizienten-Auswählers 32 von Fig. 4 beschrieben.
- Der Blockauswähler 41 wählt einen vom Videoteiler 11 eingegebenen Block Bi während des Prozesses zum Auswählen eines ersten Transformationskoeffizienten aus, um denselben auszugeben, und wählt während des Prozesses zum Auswählen des folgenden Transformationskoeffizienten einen Fehlerblock zwischen dem Musterblock Bp(k) für den im vorausgegangenen Prozess ausgewählten Transformationskoeffizienten und dem eingegebenen Block Bi aus.
- Der Musterbilder 42 bildet, gibt aus und speichert Musterblöcke Bp(n) für die einzelnen vom Transformierer 31 eingegebenen N · N Transformationskoeffizienten. Wenn weiterhin der Auswahlindex k eingegeben wird, werden die Musterblöcke Bp(k) aus den gespeicherten Musterblöcken Bp(n) in Übereinstimmung mit einem eingegebenen Auswahlindex k ausgegeben. Der Betrieb des Musterbilders 42 wird im Folgenden mit Bezug auf ein detailliertes Blockdiagramm des in Fig. 5 gezeigten Musterbilders beschrieben. Der invertierte Transformierer 51 führt eine invertierte Transformation für jeden der vom Transformierer 31 eingegebenen N · N Transformationskoeffizienten aus und bildet die N · N Musterblöcke Bp(n), um dieselben auszugeben. Die Musterblöcke Bp(n) werden zu dem Vergleicher 43 ausgegeben und ebenfalls in dem Speicher 52 des Musterbilders 42 gespeichert. Der Speicher 52 speichert die aus dem invertierten Transformierer ausgegebenen Musterblöcke Bp(n). Die Steuereinrichtung 53 empfängt den Auswahlindex k und gibt Musterblöcke Bp(k) aus den im Speicher 52 gespeicherten Musterblöcken Bp(n) in Übereinstimmung mit dem vom Vergleicher 43 eingegebenen Auswahlindex zu dem Fehlerberechner 45 aus.
- Der Vergleicher 43 wählt einen Musterblock aus den vom Musterbilder 42 eingegebenen Musterblöcken Bp(n) aus, der einem in dem Blockauswähler 41 ausgewählten Block Bd am besten entspricht, und gibt den Auswahlindex k aus.
- Im Folgenden wird die Auswahloperation des Musterblocks in dem Vergleicher 43 mit Bezug auf das detaillierte Blockdiagramm des Vergleichers 31 von Fig. 6 beschrieben. Der Gemittelter-Quadratischer-Fehler-Berechner 61 berechnet einen gemittelten quadratischen Fehler des vom Blockauswähler 41 eingegebenen Musterblocks Bd und der vom Musterbilder 41 eingegebenen Musterblöcke Bp(n) für alle Musterblöcke, die bis dahin noch nicht ausgewählt wurden, und gibt die Ergebnisse als ÄMSE(n) für jeden Musterblock aus. Der Bitquantitätsvariation-Berechner 62 berechnet und speichert die Bitquantität der Koeffizienten, die bis dahin ausgewählt wurden, und berechnet eine Variationsgröße der Bitquantität, die durch einen zusätzlichen Koeffizienten erzeugt wurde, um das berechnete Ergebnis als Äbit(n) auszugeben. Der Auswähler 63 empfängt den gemittelten quadratischen Fehler ÄMSE(n) und die Variationsgröße der Bitquantität Äbit(n) und wählt einen Musterblock eines Koeffizienten aus, der ein Verhältnis ÄMSE(n)/Äbit(n) des gemittelten quadratischen Fehlers für die Variationsgröße der Bitquantität maximiert, um den Index K als einen Auswahlindex auszugeben. Das heißt, der Auswähler 63 gibt den Auswahlindex k aus, der ein Verhältnis des gemittelten quadratischen Fehlers ÄMSE(n), der in Übereinstimmung mit dem hinzugefügten k-ten Koeffizienten vermindert wird, zu der Variationsgröße Äbit(k) der Bitquantität, die in Übereinstimmung mit dem hinzugefügten k-ten Koeffizienten aus den N x N Koeffizienten erhöht wird, maximiert.
- Der Koeffizientenwiederherstellungsteil 44 empfängt den durch den Vergleicher 43 ausgewählten Auswahlindex k und stellt den Transformationskoeffizienten in Übereinstimmung mit dem Auswahlindex k wieder her, um ihn auszugeben. Der ausgegebene Transformationskoeffizient ist ein aus dem Transformationskoeffizientenauswähler 32 ausgegebener Auswahlindex.
- Der Fehlerberechner 45 berechnet einen Fehler zwischen dem durch den Blockauswähler 41 ausgewählten Block Bd und dem Musterblock Bp(k) in Übereinstimmung mit dem von dem Musterbilder 42 eingegebenen Auswahlindex und erzeugt einen Fehlerblock, um dann den erzeugten Fehlerblock an den Blockauswähler 41 auszugeben.
- Die Abschlusssteuereinrichtung 46 schließt die Auswahl des Musterblocks durch den Vergleicher 43 in Übereinstimmung mit dem von der Wiederholungssteuereinrichtung 35 eingegebenen Steuersignal ab. Das heißt, die Abschlusssteuereinrichtung 46 schließt die Auswahl des Transformationskoeffizienten durch den Transformationskoeffizientenauswähler 32 ab, wenn der gemittelte quadratische Fehlerwert zwischen dem wiederhergestellten Block für die ausgewählten Transformationskoeffizienten und dem eingegebenen Block kleiner als der vorbestimmte Bezugswert ist.
- Vorstehend wurde der Betrieb des Transformationskoeffizienten-Auswählers 32 beschrieben. Im Folgenden wird wieder auf Fig. 3 Bezug genommen. Der invertierte Transformierer 33 transformiert die durch den Transformationskoeffizienten-Auswähler 32 ausgewählten Transformationskoeffizienten Fs invertiert und erzeugt den wiederhergestellten Block Br. Der Codierer 34 codiert die durch den Transformationskoeffizienten-Auswähler 32 ausgewählten Transformationskoeffizienten mit variabler Länge und gibt dann die codierten Daten aus. Die Wiederholungssteuereinrichtung 35 berechnet einen gemittelten quadratischen Fehler zwischen dem Transformationskoeffizienten-Auswähler 32 und dem wiederhergestellten Block Br und gestattet dann dem Transformationskoeffizienten-Auswähler 32 die Auswahl des Transformationskoeffizienten abzuschließen, wenn ein Vergleich des berechneten gemittelte quadratischen Fehlers mit dem Bezugswert ergibt, dass der gemittelte quadratische Fehler kleiner ist als der Bezugswert.
- Wie oben beschrieben, wählt die Transformationscodiervorrichtung gemäß der vorliegenden Erfindung für einen Block, der eine Grenze eines Objekts mit einer bestimmten Form enthält, einen Koeffizienten aus, der ein Verhältnis zwischen dem gemittelten quadratischen Fehler ÄMSE(k), der in Übereinstimmung mit dem hinzugefügten ausgewählten Koeffizienten (k-ten Koeffizienten) vermindert wird, und der Variationsgröße ÄMSE(k) der Bitquantität, die in Übereinstimmung mit dem hinzugefügten Koeffizienten (k-ten Koeffizienten) vergrößert wird, maximiert, wenn ein Transformationskoeffizient ausgewählt wird, um die Originalqualität des Bildes zu verbessern und die Menge der erforderlichen Bits zu reduzieren.
- Es wurden bestimmte Ausführungsformen der vorliegenden Erfindung beschrieben, wobei jedoch deutlich sein sollte, dass zahlreiche Modifikationen vorgenommen werden können, ohne dass dadurch der Erfindungsumfang verlassen wird.
Claims (5)
1. Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objekts mit
einer bestimmten Form enthält, wobei die Transformationscodiervorrichtung umfasst:
eine Transformierereinrichtung (31) zum Transformieren von nicht transformierten
Daten eines eingegebenen Blockes und zum Ausgeben der Transformationskoeffizienten,
eine invertierte Transformierereinrichtung (33) zum invertierten Transformieren von
Transformationskoeffizienten und zum Ausgeben eines wiederhergestellten Blocks,
eine Codiereinrichtung (34) zum Codieren der Koeffizienten mit variabler Länge, und
eine Wiederholungssteuereinrichtung (35) zum Berechnen eines gemittelten
quadratischen Fehlers für die nicht transformierten Daten des eingegebenen Blocks und des
wiederhergestellten Blocks, und zum Vergleichen des berechneten Ergebnisses mit einem
vorbestimmten Bezugswert, dadurch gekennzeichnet, dass die
Transformationscodiervorrichtung weiterhin umfasst:
eine Transformationskoeffizienten-Auswähleinrichtung (32) zum Auswählen und
Ausgeben von Transformationskoeffizienten unter Verwendung der
Transformationskoeffizienten und der nicht transformierten Daten des eingegebenen Blocks,
wobei die durch die invertierte Transformierereinrichtung (33) invertiert
transformierten Transformationskoeffizienten diejenigen sind, die durch die Transformationskoeffizienten-
Auswähfeinrichtung (32) ausgewählt werden,
wobei die Koeffizienten für die Codierung durch die Codiereinrichtung (34) mit
variabler Länge die durch die Transformationskoeffizienten-Auswähleinrichtung (32)
ausgewählten Koeffizienten sind, und
die Wiederholungssteuereinrichtung (35) bestimmt, ob die Koeffizientenauswahl
fortgesetzt wird oder nicht,
wobei die Transformationskoeffizienten-Auswähleinrichtung (32) weiterhin umfasst:
eine Blockauswähleinrichtung (41) zum Auswählen des eingegebenen Blocks oder
des Fehlerblocks und zum Ausgeben des ausgewählten Blocks,
einen Musterbilder (42) zum Empfangen von Transformationskoeffizienten der nicht
transformierten Daten des eingegebenen Blocks von der Transformierereinrichtung (31) und
zum Bilden und Ausgeben von Musterblöcken für die einzelnen Transformationskoeffizienten
sowie zum Speichern der Musterblöcke und zum Ausgeben der Musterblöcke in
Übereinstimmung mit einem eingegebenen Auswahlindex,
einen Vergleicher (43) zum Auswählen eines Musterblocks aus den Musterblöcken,
der einem in dem Blockauswähler (41) ausgewählten Block am besten entspricht, und zum
Ausgeben des Auswahlindexes,
einen Koeffizientenwiederherstellungsteil (44) zum Wiederherstellen des
Transformationskoeffizienten in Übereinstimmung mit dem durch den Vergleicher (43) ausgewählten
Auswählindex,
einen Fehlerberechner (45) zum Berechnen eines Fehlers zwischen dem durch den
Blockauswähler (41) ausgewählten Block und dem Musterblock in Übereinstimmung mit dem
aus dem Musterbilder (42) eingegebenen Auswahlindex sowie zum Erzeugen eines
Fehlerblocks, um dann den erzeugten Fehlerblock zu dem Blockauswähler (43) auszugeben, und
eine Abschlusssteuereinrichtung (46) zum Abschließen der Auswahl des
Musterblocks in dem Vergleicher in Übereinstimmung mit dem von der
Wiederholungssteuereinrichtung (35) eingegebenen Steuersignal.
2. Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes
mit einer bestimmten Form enthält, nach Anspruch 1, wobei der Musterbilder (42) umfasst:
einen invertierten Transformierer (51) zum Durchführen einer invertierten
Transformation für die eingegebenen N · N Transformationskoeffizienten, zum Bilden der N · N
Musterblöcke und zum Ausgeben der Musterblöcke an den Vergleicher (43),
einen Speicher (52) zum Speichern der aus dem invertierten Transformierer (51)
ausgegebenen Musterblöcke, und
eine Steuereinrichtung (53) zum Ausgaben von Musterblöcken aus den im Speicher
(52) gespeicherten Musterblöcken in Übereinstimmung mit dem vom Vergleicher (43)
eingegebenen Auswahlindex an den Fehlerberechner (45).
3. Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes
mit einer bestimmten Form enthält, nach Anspruch 1 oder 2, wobei der Vergleicher (43)
umfasst:
einen Berechner (61) zum Berechnen eines gemittelten quadratischen Fehlers des
Musterblocks für die entsprechenden Koeffizienten des durch den Blockauswähler (41)
ausgewählten Blocks und der vom Musterbilder (42) eingegebenen N · N Musterblöcke,
einen Bitquantitätsvariation-Berechner (62) zum Berechnen einer Variationsgröße der
Bitquantität, die durch das zusätzliche Hinzufügen eines Koeffizienten zu der Bitquantität der
ausgewählten Koeffizienten erzeugt wird, und
einen Auswähler (63) zum Auswählen eines Musterblocks eines Koeffizienten, der ein
Verhältnis zwischen einem gemittelten quadratischen Fehler, der durch den Gemittelter-
Quadratischer-Fehler-Berechner (61) berechnet wird, und der Variationsgröße der
Bitquantität, die durch den Bitquantitätsvariation-Berechner (62) für den N · N Musterblock
berechnet wird, maximiert.
4. Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes
mit einer bestimmten Form enthält, nach wenigstens einem der vorstehenden Ansprüche,
wobei der Blockauswähler (41) einen eingegebenen Block während des Prozesses zum
Auswählen eines ersten Transformationskoeffizienten auswählt und ausgibt, wobei er
weiterhin während des Prozesses zum Auswählen des folgenden
Transformationskoeffizienten einen Fehlerblock zwischen dem Musterblock für den im vorangegangenen Prozess
ausgewählten Transformationskoeffizienten und dem eingegebenen Block auswählt und
ausgibt.
5. Transformationscodiervorrichtung für einen Block, der eine Grenze eines Objektes
mit einer bestimmten Form enthält, nach wenigstens einem der vorstehenden Ansprüche,
wobei der Blockauswähler (41) einen Musterblock eines Koeffizienten auswählt, der ein
Verhältnis zwischen einem gemittelten quadratischen Fehler, der durch den Gemittelter-
Quadratischer-Fehler-Berechner (61) berechnet wird, und der Variationsgröße der
Bitquantität, die durch den Bitquantitätsvariation-Berechner (62) berechnet wird, maximiert, um
dementsprechend den Auswahlindex auszugeben.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR19950044958 | 1995-11-29 | ||
KR1019960049253A KR100228671B1 (ko) | 1995-11-29 | 1996-10-28 | 임의 형태 물체의 경계를 포함하는 블록의 변환 부호화 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69619644D1 DE69619644D1 (de) | 2002-04-11 |
DE69619644T2 true DE69619644T2 (de) | 2002-08-01 |
Family
ID=26631438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69619644T Expired - Lifetime DE69619644T2 (de) | 1995-11-29 | 1996-11-28 | Transformationskodierung beliebig geformter Bildsegmente |
Country Status (6)
Country | Link |
---|---|
US (1) | US5715004A (de) |
EP (1) | EP0783230B1 (de) |
JP (1) | JP3094390B2 (de) |
CN (1) | CN1104141C (de) |
DE (1) | DE69619644T2 (de) |
ES (1) | ES2174033T3 (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6160503A (en) * | 1992-02-19 | 2000-12-12 | 8×8, Inc. | Deblocking filter for encoder/decoder arrangement and method with divergence reduction |
US5828784A (en) * | 1992-07-13 | 1998-10-27 | Hitachi Denshi Kabushiki Kaisha | Data coding method and apparatus using a plurality of blocks of different length |
KR20140071809A (ko) * | 2012-12-04 | 2014-06-12 | 삼성전자주식회사 | 비디오 데이터의 처리 방법 및 장치 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4189748A (en) * | 1977-08-23 | 1980-02-19 | Northrop Corporation | Video bandwidth reduction system using a two-dimensional transformation, and an adaptive filter with error correction |
US5038390A (en) * | 1990-06-05 | 1991-08-06 | Kabushiki Kaisha Toshiba | Method of transform data compression using save-maps |
JP2878796B2 (ja) * | 1990-07-03 | 1999-04-05 | 国際電気株式会社 | 音声符号化器 |
JPH04368088A (ja) * | 1991-06-14 | 1992-12-21 | Kokusai Denshin Denwa Co Ltd <Kdd> | 動画像直交変換方式における交流成分の適応符号化方式 |
US5422963A (en) * | 1993-10-15 | 1995-06-06 | At&T Corp. | Block transform coder for arbitrarily shaped image segments |
KR970009408B1 (ko) * | 1994-01-18 | 1997-06-13 | 대우전자 주식회사 | 인터/인트라 테이블 선택 회로 |
EP0699003A4 (de) * | 1994-02-15 | 1999-10-06 | Sony Corp | Verfahren und vorrichtung zur bildsignalkodierung |
-
1996
- 1996-11-27 US US08/757,871 patent/US5715004A/en not_active Expired - Lifetime
- 1996-11-27 JP JP31657196A patent/JP3094390B2/ja not_active Expired - Fee Related
- 1996-11-28 ES ES96308597T patent/ES2174033T3/es not_active Expired - Lifetime
- 1996-11-28 EP EP19960308597 patent/EP0783230B1/de not_active Expired - Lifetime
- 1996-11-28 DE DE69619644T patent/DE69619644T2/de not_active Expired - Lifetime
- 1996-11-29 CN CN96123416A patent/CN1104141C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
DE69619644D1 (de) | 2002-04-11 |
JPH09224248A (ja) | 1997-08-26 |
CN1159684A (zh) | 1997-09-17 |
EP0783230A2 (de) | 1997-07-09 |
CN1104141C (zh) | 2003-03-26 |
ES2174033T3 (es) | 2002-11-01 |
JP3094390B2 (ja) | 2000-10-03 |
EP0783230A3 (de) | 1999-10-20 |
US5715004A (en) | 1998-02-03 |
EP0783230B1 (de) | 2002-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69715815T2 (de) | Verfahren zur bilddekodierung | |
DE19638632B4 (de) | Verfahren und Vorrichtung zur Bewegtbildkodierung | |
DE69736852T2 (de) | Codierung- und Decodierungssystem für bewegte Bilder mit beliebig geformten Objekten | |
DE68927082T2 (de) | Verfahren und Vorrichtung für die Bilddatenkomprimierung | |
DE69425769T2 (de) | Kodierung von digitalen Signalen | |
DE69331939T2 (de) | Kodierungssystem | |
DE2706080C2 (de) | Verfahren zur adaptiven Quantisierung von Transformationskoeffizienten eines Bildes und Anordnung zum Durchführen des Verfahrens | |
DE3686754T2 (de) | Bilddatenkodierverfahren. | |
DE69224055T2 (de) | Bildsignalkodier- und -dekodiergerät | |
EP0309669B1 (de) | Verfahren zur szenenmodellgestützten Bilddatenreduktion für digitale Fernsehsignale | |
DE69127739T2 (de) | Bilddatenverarbeitungsgerät | |
DE69806729T2 (de) | Progressive blockbasierte kodierung für bildkompression | |
DE69631999T2 (de) | Bildverarbeitungsgerät und Verfahren | |
DE69722495T2 (de) | Adaptives Abtastverfahren für Wavelet-Videokodierung | |
DE4442643B4 (de) | Verfahren zum Abschätzen der Bewegung in einem Bewegtbild | |
DE3736193A1 (de) | Sprachsignal-kodierverfahren | |
DE69229085T2 (de) | System zur Bildverarbeitung | |
DE69232215T2 (de) | Einrichtung zur Bildkodierung | |
DE69424923T2 (de) | Verfahren und Anordnung zur Bearbeitung eines dekodierten Bildsignals mit Verzerrung | |
DE69521873T2 (de) | Verfahren zum Auswählen von Bewegungsvektoren und Bildverarbeitungsvorrichtung zur Durchführung des Verfahrens | |
DE68918590T2 (de) | Gerät zur dekodierung von mit variabler länge kodierten daten. | |
DE69319539T2 (de) | Bildunterabtastungsgerät und Verfahren | |
DE69015398T2 (de) | Vorrichtung zum Kodieren von digitalen Videosignalen. | |
DE3038953C2 (de) | Verfahren zur Bandkompression | |
DE3751684T2 (de) | Musterverarbeitung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |