DE10196982T5 - Robuste Zeitdomänen-Blockdekodierung - Google Patents

Robuste Zeitdomänen-Blockdekodierung Download PDF

Info

Publication number
DE10196982T5
DE10196982T5 DE10196982T DE10196982T DE10196982T5 DE 10196982 T5 DE10196982 T5 DE 10196982T5 DE 10196982 T DE10196982 T DE 10196982T DE 10196982 T DE10196982 T DE 10196982T DE 10196982 T5 DE10196982 T5 DE 10196982T5
Authority
DE
Germany
Prior art keywords
block
coefficients
value
pixel values
values
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.)
Withdrawn
Application number
DE10196982T
Other languages
English (en)
Inventor
James J. San Jose Carrig
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Electronics Inc
Original Assignee
Sony Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Electronics Inc filed Critical Sony Electronics Inc
Publication of DE10196982T5 publication Critical patent/DE10196982T5/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/007Transform coding, e.g. 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • H04N19/895Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder in combination with error concealment

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Theoretical Computer Science (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)
  • Error Detection And Correction (AREA)

Abstract

Verfahren, das umfaßt:
Empfangen eines Blocks von Transformationsdomänen-Koeffizienten und von entsprechenden Fehlerflags,
Schätzen eines Anfangswerts für jeden fehlerhaften Koeffizienten,
Dekodieren der Pixelwerte des Blocks unter Verwendung der Anfangswerte der Koeffizienten dort, wo Fehler vorhanden sind,
Aktualisieren des Werts für jeden fehlerhaften Koeffizienten und
Aktualisieren der Pixelwerte des Blocks unter Verwendung der aktualisierten Werte der Koeffizienten.

Description

  • GEBIET DER ERFINDUNG
  • Die Erfindung betrifft das Gebiet der Signalübertragung und Fehlerkorrektur.
  • HINTERGRUND DER ERFINDUNG
  • Allgemein bekannte Verfahren zur Bildkompression, wie MPEG und JPEG, machen von blockbasierten Transformationen Gebrauch. Diese Standardmethoden eignen sich zwar gut für die Komprimierung, sie bieten jedoch keine robusten Rekonstruktionsverfahren. Bei Bildern der realen Welt besteht die Tendenz, daß größte Teil ihrer Energie in niedrigen Freguenzbändern konzentriert ist. Das heißt, der größte Teil des Informationsinhalts ist in den niederfrequenten Koeffizienten des transformierten Bilds gespeichert. Das Verpacken dieser Information in diese relativ wenigen Koeffizienten hat sich für die Bildkomprimierungsalgorithinen als vorteilhaft erwiesen. Unter der Voraussetzung, daß diese niederfrequenten Koeffizienten korrekt übertragen werden, läßt sich ein Bild mit hoher Wiedergabetreue zurückgewinnen.
  • Das Transformieren eines N×N-Bildsegments in die oder aus der Frequenzdomäne erfordert etwa 2N3 Operationen. Wenn N groß ist, wird dies undurchführbar. Um die Komplexität handhaben zu können, wird für N üblicherweise eine kleine Zahl, z.B. 8, gewählt, und das Bild wird mit einem Block zu einer Zeit transformiert. Auf diese Weise wächst die Zahl der Operationen nur linear mit der Größe des Bilds.
  • Blocktransformationen, die ebenfalls unitär sind, sind besonders attraktiv für die Transformationskodierung eines Bilds, weil der mittlere quadratische Beitrag eines Koeffizienten in der Frequenzdomäne seinem mittleren quadratischen Beitrag in der Zeitdomäne gleich ist. Für den Kodierer bedeutet dies, daß der Beitrag eines Koeffizienten zur Rekonstruktion in der Zeitdomäne um so größer ist, je größer die Magnitude des Koeffizienten in der Frequenzdomäne ist.
  • In der gleichen Weise entsprechen Fehler in der Frequenzdomäne in der Magnitude den Fehlern in der Zeitdomäne.
  • Ein Nachteil der herkömmlichen Verfahren zur Transformationskodierung besteht darin, daß sie nicht fehlerrobust sind. Dieser Mangel an Robustheit ist zum Teil auf die Kompressionsmethoden mit variabler Länge, die üblicherweise bei der Kodierung eingesetzt werden, und zum Teil auf den Mangel an Korrelation zwischen den Komponenten in der Frequenzdomäne zurückzuführen. Der Verlust der Synchronisation aufgrund der variablen Längenkodierung kann durch das Hinzufügen von Resynchronisationspunkten oder durch die Benutzung einer pseudofesten Längenkodierung überwunden werden. Der Mangel an Korrelation in der Frequenzdomäne ist jedoch ein fundamentaleres Problem, das mit den herkömmlichen Kodierverfahren nicht in adäquater Weise angegangen wurde.
  • Andere Forscher, insbesondere Edward Chang und Keng-Kuan Lin, „Error Concealment and Reconstruction Schemes for Image Transmission on a Wireless Network", Stanford University, März 1997, und Sheila S. Hemami, „Reconstruction-Optimized Lapped Orthogonal Transforms for Robust Image Transmission", Cornell University, April 1996, haben in der Vergangenheit das Problem des Mangels an Korrelation in der Frequenzdomäne untersucht. Diese Forscher gingen dieses Problem an, indem sie verlorene Frequenzkomponenten unter Verwendung von gewichteten Mittelwerten entsprechender Komponenten aus umgebenden Blöcken abschätzten.
  • Dieser Prozeß ist jedoch grundsätzlich begrenzt durch die immer geringer werdende Korrelation bei wachsender Blockgröße. Wenn z.B. die Gleichstromkomponente (DC-Komponente) beschädigt ist, gleicht der Versuch, sie durch Mittelwertbildung der umgebenden DC-Koeffizienten abzuschätzen, dem Schätzen eines verlorenen Pixels aus einem kleinen Bild durch Mittelwertbildung der umgebenden Pixel. Weil das aus den DC-Komponenten gebildete Bild klein ist im Vergleich zu dem Original, ist die räumliche Korrelation gering. Deshalb ist der Prozeß der Mittelwertbildung nicht effektiv.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es wird ein Verfahren zur robusten Zeitdomänen-Blockdekodierung offenbart. In einem Ausführungsbeispiel umfaßt das Verfahren das Empfangen eines Blocks von Transformationsdomänen-Koeffizienten und der zugehörigen Fehlerflags, das Dekodieren von Pixelwerten aus den Transformationsdomänen-Koeffizienten, das Bestimmen eines ersten Schätzwerts für jeden fehlerhaften Pixelwert und das Aktualisieren der dekodierten Pixelwerte.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung ist in den Figuren der anliegenden Zeichnungen dargestellt, in denen gleiche Bezugszeichen ähnliche Elemente bezeichnen, wobei diese Darstellung lediglich beispielhaft ist und keine Beschränkung darstellt.
  • 1 zeigt eine Darstellung eines Blocks von Bilddaten,
  • 2 zeigt eine Darstellung eines Pixels, das an Pixel aus anderen Blöcken angrenzt,
  • 3 und 4 zeigen Darstellungen eines Verfahrens zur Rückgewinnung von verlorenen Daten,
  • 5 zeigt ein Ausführungsbeispiel einer Vorrichtung zum Rückgewinnen von verlorenen Daten nach dem Verfahren von 4,
  • 6 zeigt ein Ausführungsbeispiel eines Systems, das eine Vorrichtung zum Rückgewinnen von verlorenen Daten enthält,
  • 7 zeigt ein Ausführungsbeispiel für eine Bild-zu-Block-Abbildung,
  • 8 zeigt ein anderes Ausführungsbeispiel für eine Bild-zu-Block-Abbildung
  • DETAILLIERTE BESCHREIBUNG
  • Es wird ein Verfahren zur robusten Zeitdomänen-Blockdekodierung offenbart. In einem Ausführungsbeispiel umfaßt das Verfahren das Empfangen eines Blocks von Transformationsdomänen-Koeffizienten und der entsprechenden Fehlerflags, das Dekodieren von Pixelwerten aus den Transformationsdomänen-Koeffizienten, das Bestimmen eines ersten Schätzwerts für jeden fehlerhaften Pixelwert, das Lösen eines erzwungenen Minimierungsproblems und das Aktualisieren der dekodierten Pixelwerte.
  • Um das Problem des Mangels an Korrelation in der Frequenzdomäne zu überwinden, wird bei den Verfahren zur robusten Zeitdomänen-Blockdekodierung der Verlust in der Zeitdomäne neu formuliert und dann die Korrelation aus der höchstmöglichen Auflösung benutzt, um alle verlorenen Koeffizienten zurückzugewinnen. Da unabhängig von der Blockgröße die Daten mit der höchsten Auflösung verwendet werden, nimmt die Leistung mit wachsender Blockgröße nicht ab.
  • Die robuste Zeitdomänen-Blockdekodierung implementiert ein robustes Verfahren zur Dekodierung von Blockdaten in der Zeitdomäne, um die Auswirkung von Fehlern zu reduzieren. Anders als frühere Verfahren basiert die bei der robusten Zeitdomänen-Blockdekodierung benutzte Transformation auf einem Zeitdomänenansatz, der durch skalare Koeffizienten parametrisiert ist, die durch Lösen eines Problems der kleinsten Quadrate geschätzt werden können. Beispiele von Block-Transformationen, die in dem Verfahren zur Durchführung einer robusten Zeitdomänen-Blockdekodierung enthalten sein können, sind z.B. die diskrete Cosinus-Transformation (DCT) und die Haar-Wavelet-Transformation.
  • Im folgenden wird der mathematische Ansatz diskutiert, der für die Beschreibung der robusten Zeitdomänen-Blockdekodierung benutzt wird. Um diese Diskussion zu erleichtern, wird die folgende Notation benutzt. Zur Bezeichnung einer Matrix oder eines Vektors wird eine fettgedruckte Type verwendet, und zur Bezeichnung von Komponenten wird eine reguläre Type benutzt. So bedeutet z.B. A ∊ RN×N, daß A eine N×N-Matrix mit realen Komponenten Aij, i, j ∊ {0, 1,..., N–1} ist. Ein hochgesetztes T, wie bei AT, bedeutet eine Transposition. Der Kehrwert von A ist A–l und die Umkehrung der Transposition von A ist A–T.
  • Zeitdomänenansatz
  • X ∊ RN×N sei eine Matrix von Pixeln, H ∊ RN×N sei eine nichtsinguläre Transformationsmatrix und Y ∊ RN×N sei das Ergebnis der folgenden Transformation
    Figure 00040001
    N2 Indikator-Matrizen C(k) ∊ RN×N sind definiert als
    Figure 00050001
    und der Vektor y mit N2 Komponenten ist definiert als eindimensionale Neuanordnung der Matrix Y in der Weise, daß
    Figure 00050002
  • Die Matrix Y kann in Termen des Vektors y und der Indikator-Matrizen erweitert werden:
    Figure 00050003
  • Durch Invertieren der Gleichung (1) und Substituieren der Gleichung (4) kann der Bildanteil X aus den transformierten Pixeln Y in folgender Weise zurückgewonnen werden.
  • Figure 00050004
  • P(k) ∊ RN×N ist eine Matrix ersten Ranges, die aus dem äußeren Produkt der Spalten i und j der Matrix H–I gewonnen wird, wobei k = iN + j, i, j = 0,... N–1. In dem wichtigen Spezialfall, wenn H unitär ist, gilt
    Figure 00050005
  • Die Gleichung (8) ist die Basis für die robuste Rekonstruktion. Es sei angenommen, daß einige der yk Pixel in dem Kommunikationskanal verlorengegangen sind. Zur Abschätzung des fehlenden yk können Nachbarrelationen aus der dekodierten Domäne benutzt werden.
  • Rückgewinnung mit kleinsten Quadraten
  • I = {k0, k1,..., kM–1} sei eine Menge, die die Indizes der M unbekannten Werte von Y enthält. Es wird dann X in die bekannten und die unbekannten Teile getrennt.
  • Figure 00060001
  • Obwohl X ^ und P(k) bekannt sind, ist X nicht bekannt, und yk kann nicht direkt gelöst werden. Um diesen Mangel zu überwinden, wird E(X), der Erwartungswert von X, auf der Basis von lokalen Korrelationen bestimmt und anstelle von X benutzt.
  • Da die Prädiktion des Erwartungswerts nicht perfekt ist, ist es möglich, daß die Gleichung (11) keine Lösung hat. Stattdessen wird das folgende Problem der kleinsten Quadrate gelöst.
  • Problem der kleinsten Quadrate
  • Wenn eine partielle Dekodierung X ^ ∊ RN×N, eine prädizierte Dekodierung E(X) ∊ RN×N und ein Satz von vorbestimmten Matrizen P(k) gegeben sind, ist das yk, ∀k ? I zu ermitteln, das
    Figure 00060002
    minimiert, worin der Index F die Forbenius-Norm bezeichnet.
  • Die Lösung von Gleichung (12) ist leicht, indem man die Terme in Vektorform neu ordnet, wobei die Frobenius-Norm der üblichen Vektor-2-Norm entspricht. Es sei α = [yk0, Yk1, ..., ykM–1] ∊ RM ein Spaltenvektor der unbekannten Werte von Y, und x und x ^ seien Vektorversionen von X bzw. X ^ . Der Vektor läßt sich nun als die Summe eines bekannten Vektors x ^ und eines Matrix-Vektor-Produkts ausdrücken (13) x = x ^ + Fα worin die Spalte j ∊ {0,..., M–1 } von F Komponenten von P(k) enthält, die in Vektorform neu geordnet sind. Das Minimierungsproblem kann nun in Termen des unbekannten Vektors a angeschrieben werden. Die Funktion f(α) wird minimiert
    Figure 00070001
  • Bei dem nicht erzwungenen Minimum verschwindet der Gradient.
  • Figure 00070002
  • Deshalb wird ein Wert von a bestimmt, der die folgende Gleichung befriedigt.
  • Figure 00070003
  • Die Lösung von Gleichung (19) erfordert O(M3) Fließkomma-Operationen.
  • Bestimmung von E(X)
  • Um die Gleichung (12) zu lösen, benötigt man eine erste Prädiktion von E(X). Um die Komplexität in vernünftigen Grenzen zu halten, wäre E(X) voraussichtlich ein nicht erzwungener Schätzwert von X auf der Basis von umgebenden Pixeln. Dieser nicht erzwungene Schätzwert wird in der Gleichung (12) benutzt, um die fehlenden yk Koeffizientenwerte zu schätzen, so daß das rekonstruierte X zwangsweise eine Summe der bekannten und unbekannten Terme von X ist, wie es in der Gleichung (11) formuliert wurde.
  • Die Robustheit des Dekodierers resultiert aus der Tatsache, daß für die Abschätzung jedes Wert von yk ein ganzer Block von Daten benutzt wird. Nichtsdestoweniger sollte der prädizierte Wert für E(X) vernünftig nahe bei der tatsächlichen erwarteten Größe der Schätzwerte von yk liegen. Ein einfaches und effektives Verfahren zur Bestimmung von E(X) besteht darin, jeden Bildblock durch das Abbilden von Unterabtastwerten des Bilds auf den Block zu bilden und den Mittelwert benachbarter Pixel als Schätzwert für das fehlende Pixel zu verwenden. Dieses Verfahren wird verbessert, wenn der Kodierer eine Unterabtast-Blockstruktur benutzt, wie sie in 1 dargestellt ist. Der Transformationsblock von 1 enthält Abtastwerte von jedem zweiten Pixel des Bilds, sowohl in horizontaler als auch in vertikaler Richtung. Wie in 2 dargestellt, kann jedes Pixel von E(X) berechnet werden als Mittelwert von benachbarten Pixeln, die aus anderen Blöcken entnommen werden. Ein Pixel x1 kann z.B. geschätzt werden, indem benachbarte Pixel z1, z2, z3 und z4 aus anderen Blöcken benutzt werden.
  • Rückgewinnungsmethode
  • Ein Verfahren zum Rückgewinnen von verlorenen Daten ist in 3 dargestellt. Ein Block von kodierten Bilddaten wird von einem Dekodierer empfangen, 305. Die Bilddaten werden in der Transformationsdomäne kodiert und durch Transformationsdomänen-Koeffizienten dargestellt. Einige der Transformationsdomänen-Koeffizienten können während der Übertragung verlorengehen oder beschädigt werden. Wenn das Bild dekodiert wird, sind die Pixelwerte, die aus den verlorenen oder beschädigten Koeffizienten hergeleitet werden, verloren oder beschädigt, 310. Jeder verlorene oder beschädigte Koeffizient wird identifiziert, 315. Es wird ein Anfangsschätzwert für jedes verlorene oder beschädigte Pixel bestimmt, 320. In einem Ausführungsbeispiel ist der geschätzte Pixelwert der erwartete Schätzwert, der der Mittelwert der Pixel ist, die an das verlorene oder beschädigte Pixel angrenzen, wie dies oben diskutiert wurde. Dieser geschätzte Pixelwert wird benutzt, um einen Anfangswert für jeden entsprechenden verlorenen oder beschädigten Transformationsdomänen-Koeffizienten zu bestimmen. Der Block von kodierten Bilddaten wird dann unter Verwendung der Anfangswerte der Transformationsdomänen-Koeffizienten dekodiert, 325.
  • Dann wird für jeden verlorenen oder beschädigten Koeffizienten ein aktualisierter Wert bestimmt, 330. Der aktualisierte Koeffizientenwert kann dadurch bestimmt werden, daß ein Problem der kleinsten Quadrate minimiert wird. Es kann z.B ein Schätzwert von α bestimmt werden, der
    Figure 00080001
    befriedigt. Dieser Schätzwert von α kann dazu benutzt werden, die Schätzwerte für die beschädigten Pixelwerte zu aktualisieren, 335. Das Aktualisieren der Pixelwert kann durchgeführt werden, indem
    Figure 00090001
    benutzt wird, wie dies oben diskutiert wurde. Deshalb können die aktualisierten Schätzwerte für die verlorenen oder beschädigten Koeffizienten Yk unter Verwendung von
    Figure 00090002
    bestimmt werden. Es ist jedoch möglich, daß ein oder mehrere Pixel, die einem verlorenen oder beschädigten Pixel benachbart sind, ebenfalls verloren oder beschädigt sind. Die verlorenen oder beschädigten Pixel, die an ein gegebenes verlorenes oder beschädigtes Pixel angrenzen, verringern die Genauigkeit der durchgeführten Abschätzung des Anfangswerts des gegebenen verlorenen oder beschädigten Pixels. Deshalb führt die Iteration des Verfahrens von 3 über das gesamte Bild zu einer weiteren Verbesserung des Schätzwerts.
  • Verfeinerung von E(X)
  • Wenn die an Pixel von X angrenzenden Pixel fehlerfrei sind, ist die Bestimmung von E(X) einfach. Die angrenzenden Pixel können jedoch fehlerhaft sein. In diesem Fall verbessert eine Iteration des Verfahrens von 3 über das gesamte Bild diese beschädigten angrenzenden Pixel. Eine Verbesserung bei diesen Pixeln führt zu einer entsprechenden Verbesserung von E(X). Dies ermöglicht eine Auflösung von Gleichung (12), um verbesserte Werte von yk zu berechnen. Wenn benachbarte Blöcke Fehler enthalten, kann so die Iteration auf dem gesamten Bild eine Verbesserung des Bilds liefern.
  • Alternative Rückgewinnungsmethode
  • In 4 ist ein weiteres Ausführungsbeispiel eines robusten Dekodieralgorithmus dargestellt, der auf den vorangehenden Gleichungen basiert. Das Verfahren von 3 wird für eine gege bene Anzahl von Iterationen wiederholt. Die kodierten Bilddaten werden von dem Dekodierer in der Transformationsdomäne empfangen, 405. Die beschädigten oder verlorenen Koeffizienten für jeden Block des Bilds werden anfänglich auf ihre Erwartungswerte gesetzt, 410. Die Bilddaten werden unter Verwendung der Anfangswerte der Koeffizienten dekodiert, 415. Dann werden für jeden Block aktualisierte Werte für die verlorenen oder beschädigten Koeffizienten bestimmt, 420.
  • Die aktualisierten Werte werden dazu benutzt, die Pixelwerte des dekodierten Bilds zu aktualisieren, 430. Es kann eine Verzögerung vorgesehen sein, um für jeden Block des Bilds aktualisierte Werte bestimmen zu können, 435. Die Schritte 405 bis 435 können dann in einer gegebene Anzahl von Iterationen wiederholt werden, um das dekodierte Bild weiter zu verbessern, 440.
  • Das Verfahren von 4 benutzt eine feste Anzahl von Iterationen, die eine einfache Hardware-Implementierung für einen Dekodierer ermöglicht, der eine Kaskadenstruktur benutzt, wie dies in 5 dargestellt ist. Die Verzögerungen können in dem System enthalten sein, um Zeit für die Aktualisierung der Nachbarblöcke zu gewinnen, bevor E(X) neu berechnet wird. Es ist jedoch nicht erforderlich, starr an einer vorgeschriebenen Anzahl von Iterationen festzuhalten. Die Iteration kann ohne weiteres zu irgendeiner Zeit gestoppt werden. Außerdem hat die Iteration keine Wirkung, wenn keine benachbarten Blockfehler vorliegen.
  • Wie 5 zeigt, werden die Eingangsbilddaten von einer Logik 510 aufgenommen, die das Bild empfängt und die Transformationsblöcke in der Abtastreihenfolge rekonstruiert. Das rekonstruierte Bild wird der Logik 520 zugeführt, die jeden N×N-Block dekodiert. Die Logik 530 detektiert irgendwelche Fehler, die in dem N×N-Block vorhanden sind. Der Block wird von der Logik 540 empfangen, die aktualisierte Werte für den Transformationsblock bestimmt. Die Verzögerungslogik 540 schafft Zeit für die Dekodierung der Nachbarblöcke, bevor die aktualisierten Werte des N×N-Blocks weiter verfeinert werden. Die Logik 550 aktualisiert dann die Werte des Transformationsblocks, wobei sie Daten aus den Nachbarblöcken benutzt, um die Auflösung zu verbessern. Die Verzögerungslogik 560 schafft Zeit für die Dekodierung der Nachbarblöcke, und die Logik 570 aktualisiert die Werte des N×N-Blocks erneut und gibt dann die Bilddaten aus.
  • Hardware-Überblick
  • Die Kodierung, Übertragung und anschließende Dekodierung des Signals werden in dem in 6 dargestellten Gerät durchgeführt. Das Signal 600 ist ein Datenstrom, der dem Kodierer 610 zugeführt wird. Der Kodierer 610 folgt einem Komprimierungs-Algorithmus, z.B. einem Komprimierungs-Algorithmus mit „Adaptive Dynamic Range Coding" („ADRC"). Eine nähere Beschreibung der ADRC-Kodierung und -Pufferung ist in dem US-Patent Nr. 4 722 003 mit dem Titel „High Efficiency Coding Apparatus" und in dem US-Patent 4 845 560, ebenfalls mit dem Titel „High Efficiency Coding Apparatus" beschrieben, die an den Inhaber der vorliegenden Erfindung übertragen sind. Der Kodierer erzeugt Pakete 1,...N für die Übertragung über das Übertragungsmedium 635. Der Dekodierer 620 empfängt Pakete 1,...N von dem Übertragungsmedium 635 und erzeugt das Signal 630. Das Signal 630 ist eine Rekonstruktion des Signals 600.
  • Der Kodierer 610 und der Dekodierer 620 können in unterschiedlicher Weise implementiert werden, um die Kodier- und Dekodierfunktionen auszuführen. In einem Ausführungsbeispiel sind der Kodierer 610 und/oder der Dekodierer 620 als Software verkörpert, die auf einem Medium gespeichert ist und von einem Universalcomputer oder einem speziell konfigurierten Computersystem ausgeführt wird, das typischerweise eine zentrale Verarbeitungseinheit, einen Speicher und eine oder mehrere Eingabe-/Ausgabevorrichtungen und Coprozessoren enthält. Alternativ können der Kodierer 610 und/oder der Dekodierer 620 als logische Hardwareschaltungen implementiert sein, um diese Funktionen auszuführen. Außerdem können der Kodierer 610 und/oder der Dekodierer 620 als eine Kombination von Hardware, Software oder Firmware implementiert sein. Darüber hinaus kann der in 5 dargestellte Dekodierer benutzt werden, um den in 6 dargestellten Dekodierer 610 zu implementieren.
  • In einem Ausführungsbeispiel ist das Signal 600 ein Farbvideobild mit einer Sequenz von Videovollbildern, wobei jedes Vollbild Information enthält, die für ein Bild eines Zeilensprung-Videosystems repräsentativ ist. Jedes Vollbild ist aus zwei Halbbildern zusammengesetzt, wobei ein Halbbild die Daten der geradzahligen Zeilen des Bilds und das andere Halbbild die ungeradzahligen Zeilen des Bilds enthält. Die Daten enthalten Pixelwerte, die die Farbkomponenten einer entsprechenden Stelle in dem Bild beschreiben. In einem Ausführungsbeispiel bestehen die Farbkomponenten z.B. aus dem Luminanzsignal Y und den Farb differenzsignalen U und V. Es ist leicht erkennbar, daß der Prozeß gemäß vorliegender Erfindung auch auf andere Signale als Zeilensprung-Videosignale angewendet werden kann. Es ist außerdem offensichtlich, daß die vorliegende Erfindung nicht auf Implementierungen in dem Y-, U-, V-Farbraum beschränkt ist, sondern auch auf Bilder angewendet werden kann, die in anderen Farbräumen dargestellt werden.
  • Es sei noch einmal auf 6 Bezug genommen. Der Kodierer 610 trennt die Y-, U- und V-Signale und verarbeitet jede Gruppe von Signalen unabhängig nach Maßgabe des Kompressionsalgorithmus. Zur Vereinfachung der Diskussion bezieht sich die folgende Beschreibung auf die Verarbeitung des Y-Signals. Die Kodierschritte werden jedoch für die U- und V-Signale entsprechend repliziert.
  • In einem Ausführungsbeispiel gruppiert der Kodierer 610 die Y-Signale über zwei im folgenden als Vollbildpaar bezeichnete, aufeinanderfolgende Vollbilder des Signals 600 in dreidimensionale Blöcke („3D-Blöcke"). Bei einem Ausführungsbeispiel wird ein 3D-Block aus der Gruppierung zweier 2D-Blöcke aus dem gleichen lokalisierten Bereich über ein gegebenes Vollbildpaar erzeugt, wobei ein zweidimensionaler 2D-Block durch Gruppieren lokalisierter Pixel innerhalb eines Vollbilds oder eines Halbbilds erzeugt wird. Der hier beschriebene Prozeß läßt sich auf unterschiedliche Blockstrukturen anwenden. Das Gruppieren von Signalen wird weiter unten in dem Abschnitt über die Bild-in-Block-Abbildung näher beschrieben.
  • In einem Ausführungsbeispiel enthält ein einzelnes Vollbild 5280 2D-Blöcke, wobei jeder 2D-Block 64 Pixel umfaßt. Somit enthält ein Vollbildpaar 5280 3D-Blöcke, da für die Bildung eines 3D-Blocks ein 2D-Block aus einem ersten Vollbild und ein 2D-Block aus einem nachfolgenden Vollbild gesammelt werden.
  • Bild-in-Block-Abbildung
  • Die Unterabtast-Blockstruktur von 1, die für das Schätzen von E(X) benutzt wird, kann dadurch gebildet werden, daß Unterabtastwerte eines Bilds auf die Blockstruktur abgebildet werden, wie dies in 7 und 8 dargestellt ist. Die Bild-in-Block-Abbildung wird zu dem Zweck durchgeführt, ein Vollbild oder einen Vollbildsatz von Daten in 2D-Blöcke bzw. 3D-Blöcke zu unterteilen. Darüber hinaus umfaßt die Bild-in-Block-Abbildung die Benutzung eines komplementären und/oder ineinandergreifenden Musters, um die Pixel in einem Vollbild zu unterteilen und bei Übertragungsverlusten eine robuste Fehlerkorrektur zu erleichtern.
  • 7 zeigt ein Ausführungsbeispiel eines Bild-in-Block-Abbildungsprozesses für einen exemplarischen 16-Pixelabschnitt eines Bilds. Das Bild 700 umfaßt 16 Pixel, die einen lokalisierten Bereich eines einzelnen Vollbilds bilden. Jedes Pixel in dem Bild 700 wird durch einen Intensitätswert dargestellt. Das Pixel links oben in dem Bild hat z.B. den Intensitätswert 100, während das Pixel rechts unten in dem Bild den Intensitätswert 10 hat.
  • In einem Ausführungsbeispiel werden Pixel aus unterschiedlichen Bereichen des Bilds 700 benutzt, um 2D-Blöcke 710, 720, 730 und 740 zu erzeugen. Die 2D-Blöcke 710, 720, 730 und 740 werden kodiert, verwürfelt (wie weiter unten dargestellt) und übertragen. Im Anschluß an die Übertragung werden die 2D-Blöcke 710, 720, 730 und 740 rekombiniert und zur Erzeugung des Bilds 750 benutzt. Das Bild 750 ist eine Rekonstruktion des Bilds 700.
  • Um trotz eines möglichen Übertragungsverlustes eine akkurate Darstellung des Bilds 700 zu gewährleisten, stellt 7 eine ineinandergreifende, komplementäre Blockstruktur dar, von der in 7 ein Ausführungsbeispiel dargestellt ist, das zum Rekonstruieren des Bilds 750 benutzt wird. Die zur Erzeugung der 2D-Blöcke 710, 720, 730 und 740 benutzte Pixelauswahl stellt insbesondere sicher, daß bei der Rekonstruktion des Bilds 750 ein komplementäres und/oder ineinandergreifendes Muster benutzt wird, um die Blöcke zu rekombinieren. Deshalb werden angrenzende Abschnitte des Bilds 750 bei der Rekonstruktion nicht verzerrt, wenn ein Attribut eines speziellen 2D-Blöcks während der Übertragung verlorengeht.
  • 1 und 8 zeigen weitere komplementäre und ineinandergreifende 2D-Blockstrukturen. Es können auch andere Strukturen benutzt werden. Ähnlich wie in 7 gewährleisten die in 8 dargestellten 2D-Blockstrukturen, daß für einen gegebenen 2D-Block trotz Übertragungsverlusten umgebende 2D-Blöcke vorhanden sind. Die Muster 810a, 810b und 810d benutzen bei der Abbildung von Pixeln auf aufeinanderfolgende 2D-Blöcke jedoch eine horizontale und/oder vertikale Verschiebung. Horizontales Verschieben beschreibt eine Verschiebung der Rasterstruktur um eine vorbestimmte Anzahl von Pixeln in vertikaler Richtung, bevor eine neue 2D-Blockgrenze beginnt. In der Anwendung kann entweder nur horizontales Verschieben oder nur vertikales Verschieben oder eine Kombination aus horizontalem und vertikalem Verschieben angewendet werden.
  • Das Muster 810a ist ein Spiralmuster, das für die Bild-in-Block-Abbildung benutzt wird. Das Spiralmuster folgt einer horizontalen Verschiebung, um während des Bild-in-Block-Abbildungsprozesses aufeinanderfolgende 2D-Blöcke zu erzeugen. Die Muster 810a und 810d zeigen komplementäre Muster, in denen die Pixelauswahl durch eine horizontale und vertikale Verschiebung bewegt wird, um während des Bild-in-Block-Abbildungsprozesses aufeinanderfolgende 2D-Blöcke zu erzeugen. Ferner zeigen die Muster 810b und 810d alternierende Offsets bei der Pixelauswahl zwischen 2D-Blöcken. Das Muster 810c zeigt die Benutzung einer unregelmäßigen Abtastung von Pixeln, um einen 2D-Block für die Bild-in-Block-Abbildung zu erzeugen. Dementsprechend folgt die Bild-in-Block-Abbildung einer beliebigen Abbildungsstruktur unter der Voraussetzung, daß ein Pixel in einem 2D-Block nur einmal abgebildet wird.
  • 7 und 8 beschreiben die Bild-in-Block-Abbildung für die Erzeugung von 2D-Blöcken. Es ist ohne weiteres erkennbar, daß diese Prozesse auch auf 3D-Blöcke anwendbar sind. Wie oben beschrieben wurde, folgt die Erzeugung von 3D-Blöcken der gleichen Grenzdefinition wie ein 2D-Block, wobei die Grenzteilung jedoch über ein nachfolgendes Vollbild verläuft und in einem 3D-Block resultiert. Ein 3D-Block wird dadurch erzeugt, daß die Pixel, die für die Definition eines 2D-Blocks in einem ersten Vollbild benutzt werden, zusammen mit Pixeln aus einem 2D-Block in einem nachfolgenden Vollbild gesammelt werden. In einem Ausführungsbeispiel stammen sowohl die Pixel in dem 2D-Block aus dem ersten Vollbild als auch in dem 2D-Block aus dem nachfolgenden Vollbild von exakt der gleichen Stelle.
  • Diese und andere Ausführungsbeispiele der vorliegenden Erfindung können nach der hier vorgelegten Lehre realisiert werden, und es ist offensichtlich, daß verschiedene Modifizierungen und Änderungen in diesen Lehren vorgenommen werden können, ohne daß damit der breitere Geltungsbereich und der Geist der Erfindung verlassen wird. Die Beschreibung und die Zeichnungen sind deshalb in einem illustrativen und nicht in einem restriktiven Sinne zu betrachten und der Geltungsbereich der Erfindung wird nur durch die Ansprüche bestimmt.
  • Zusammenfassung
  • Es wird ein Verfahren für eine robuste Zeitdomänen-Blockdekodierung offenbart. In einem Ausführungsbeispiel umfaßt das Verfahren das Empfangen eines Blocks von Transformationsdomänen-Koeffizienten, das Detektieren von Fehlern in einem oder mehreren Transformationsdomänen-Koeffizienten, das Dekodieren von Pixelwerten aus den Transformationsdomänen-Koeffizienten, das Bestimmen eines ersten Schätzwerts für jeden fehlerhaften Pixelwert und das Aktualisieren der dekodierten Pixelwerte.

Claims (15)

  1. Verfahren, das umfaßt: Empfangen eines Blocks von Transformationsdomänen-Koeffizienten und von entsprechenden Fehlerflags, Schätzen eines Anfangswerts für jeden fehlerhaften Koeffizienten, Dekodieren der Pixelwerte des Blocks unter Verwendung der Anfangswerte der Koeffizienten dort, wo Fehler vorhanden sind, Aktualisieren des Werts für jeden fehlerhaften Koeffizienten und Aktualisieren der Pixelwerte des Blocks unter Verwendung der aktualisierten Werte der Koeffizienten.
  2. Verfahren nach Anspruch 1, bei dem das Schätzen eines Anfangswerts ferner das Schätzen des Erwartungswerts jedes fehlerhaften Koeffizienten umfaßt.
  3. Verfahren nach Anspruch 1, bei dem das Dekodieren des Pixelwerts ferner das Anwenden der Transformationsdomänen-Koeffizienten auf eine Transformation umfaßt.
  4. Verfahren nach Anspruch 1, bei dem das Aktualisieren des Werts für jeden fehlerhaften Koeffizienten ferner das Minimieren einer Gleichung mit kleinsten Quadraten umfaßt.
  5. Verfahren nach Anspruch 1, das ferner umfaßt: Anzeigen der aktualisierten Pixelwerte.
  6. Gerät, das aufweist: Mittel zum Empfangen eines Blocks von Transformationsdomänen-Koeffizienten und entsprechenden Fehlerflags, Mittel zum Schätzen eines Anfangswerts für jeden fehlerhaften Koeffizienten, Mittel zum Dekodieren der Pixelwerte des Blocks unter Verwendung der Anfangswerte der Koeffizienten dort, wo Fehler vorhanden sind, Mittel zum Aktualisieren des Werts für jeden fehlerhaften Koeffizienten und Mittel zum Aktualisieren der Pixelwerte des Blocks unter Verwendung der aktualisierten Werte der Koeffizienten.
  7. Gerät nach Anspruch 6, bei dem die Mittel zum Schätzen eines Anfangswerts ferner Mittel zum Schätzen des Erwartungswerts für jeden fehlerhaften Koeffizienten umfassen.
  8. Gerät nach Anspruch 6, bei dem die Mittel zum Dekodieren der Pixelwerte ferner Mittel zum Anwenden der Transformationsdomänen-Koeffizienten auf eine Transformation umfassen.
  9. Gerät nach Anspruch 6, bei dem die Mittel zum Aktualisieren des Werts jedes fehlerhaften Koeffizienten ferner Mittel zum Minimieren einer Gleichung mit kleinsten Quadraten umfassen.
  10. Gerät nach Anspruch 6, das ferner aufweist: Mittel zum Anzeigen der aktualisierten Pixelwerte.
  11. Computerlesbares Medium mit Befehlen, die, wenn sie von einem Verarbeitungssystem ausgeführt werden, das System veranlassen: einen Block von Transformationsdomänen-Koeffizienten und die entsprechenden Fehlerflags zu empfangen, einen Anfangswert für jeden fehlerhaften Koeffizienten zu schätzen, die Pixelwerte des Blocks unter Verwendung der Anfangswerte der Koeffizienten dort, wo Fehler vorhanden sind, zu dekodieren, den Wert für jeden fehlerhaften Koeffizienten zu aktualisieren und die Pixelwerte des Blocks unter Verwendung der aktualisierten Werte der Koeffizienten zu aktualisieren.
  12. Medium nach Anspruch 11, bei dem die ausgeführten Befehle ferner das System veranlassen, den Anfangswert durch Schätzen des Erwartungswerts jedes fehlerhaften Koeffizienten zu schätzen.
  13. Medium nach Anspruch 11, bei dem die ausgeführten Befehle das System ferner veranlassen, Pixelwerte durch Anwenden der Transformationsdomänen-Koeffizienten auf eine Transformation zu dekodieren.
  14. Medium nach Anspruch 11, bei dem die ausgeführten Befehle das System ferner veranlassen, den Wert für jeden fehlerhaften Koeffizienten durch Minimieren einer Gleichung mit kleinsten Quadraten zu aktualisieren.
  15. Medium nach Anspruch 11, bei dem die ausgeführten Befehle das System ferner veranlassen, die aktualisierten Pixelwerte anzuzeigen.
DE10196982T 2000-11-28 2001-10-25 Robuste Zeitdomänen-Blockdekodierung Withdrawn DE10196982T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/724,740 2000-11-28
US09/724,740 US6965647B1 (en) 2000-11-28 2000-11-28 Robust time domain block decoding
PCT/US2001/047960 WO2002045287A2 (en) 2000-11-28 2001-10-25 Robust time domain block decoding

Publications (1)

Publication Number Publication Date
DE10196982T5 true DE10196982T5 (de) 2004-04-29

Family

ID=24911710

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10196982T Withdrawn DE10196982T5 (de) 2000-11-28 2001-10-25 Robuste Zeitdomänen-Blockdekodierung

Country Status (9)

Country Link
US (1) US6965647B1 (de)
EP (1) EP1346486A4 (de)
JP (1) JP2004524725A (de)
KR (1) KR100795060B1 (de)
CN (1) CN1326405C (de)
AU (1) AU2002234011A1 (de)
DE (1) DE10196982T5 (de)
GB (1) GB2386024B (de)
WO (1) WO2002045287A2 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8238436B2 (en) * 2007-03-30 2012-08-07 Mediatek Inc. Methods and device for fast acquisition of digital video signals
JP5151999B2 (ja) * 2009-01-09 2013-02-27 セイコーエプソン株式会社 画像処理装置及び画像処理方法
CN104485864B (zh) * 2014-11-24 2017-04-19 沈阳工业大学 直接驱动伺服系统的二阶滑模控制系统及其控制方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2529414B1 (fr) * 1982-06-25 1986-04-11 Thomson Csf Procede et systeme de compression de debit de donnees transmises entre un emetteur et un recepteur, appliques a un systeme de transmission d'images de television
NL8801440A (nl) * 1988-06-06 1990-01-02 Philips Nv Inrichting voor het reproduceren van gedigitaliseerde videobeelden, met hellend vlak foutrestauratie.
JP2997355B2 (ja) * 1991-12-04 2000-01-11 シャープ株式会社 復号装置
GB2263373B (en) * 1992-01-09 1995-05-24 Sony Broadcast & Communication Data error concealment
GB2266208B (en) * 1992-04-07 1995-10-11 Sony Broadcast & Communication Image data processing apparatus and method
DE69535553T2 (de) * 1994-06-17 2007-12-06 Snell & Wilcox Ltd., Havant Videokompression
KR0165497B1 (ko) * 1995-01-20 1999-03-20 김광호 블럭화현상 제거를 위한 후처리장치 및 그 방법
KR0174453B1 (ko) * 1995-02-28 1999-03-20 배순훈 디지털 영상 복호화 방법
JP3283413B2 (ja) 1995-11-30 2002-05-20 株式会社日立製作所 符号化復号方法、符号化装置および復号装置
US5652616A (en) 1996-08-06 1997-07-29 General Instrument Corporation Of Delaware Optimal disparity estimation for stereoscopic video coding
US6373894B1 (en) * 1997-02-18 2002-04-16 Sarnoff Corporation Method and apparatus for recovering quantized coefficients
US6078616A (en) * 1997-03-13 2000-06-20 Sony Corporation Methods and apparatus for error concealment utilizing temporal domain motion vector estimation
US6125147A (en) * 1998-05-07 2000-09-26 Motorola, Inc. Method and apparatus for reducing breathing artifacts in compressed video

Also Published As

Publication number Publication date
GB0313634D0 (en) 2003-07-16
GB2386024B (en) 2005-01-26
GB2386024A (en) 2003-09-03
CN1502172A (zh) 2004-06-02
CN1326405C (zh) 2007-07-11
AU2002234011A1 (en) 2002-06-11
KR100795060B1 (ko) 2008-01-17
US6965647B1 (en) 2005-11-15
EP1346486A4 (de) 2007-11-14
KR20030062356A (ko) 2003-07-23
EP1346486A2 (de) 2003-09-24
WO2002045287A2 (en) 2002-06-06
WO2002045287A3 (en) 2002-08-29
JP2004524725A (ja) 2004-08-12

Similar Documents

Publication Publication Date Title
DE602004004379T2 (de) Verfahren und einrichtungen zur codierung und decodierung einer bildsequenz mittels bewegungs-/texturzerlegung und wavelet-codierung
DE69634962T2 (de) Extrapolation von Pixelwerten eines in einem Block enthaltenen Videoobjektes
DE69822060T2 (de) Aufwärtsabtasterfilter und halbbildelementgenerator für abwärtsumsetzungssystem für hochauflösungsfernsehen
DE69812882T2 (de) Verfahren zur bewegungskompensierten Mehrhalbbildverbesserung von Videostandbildern
DE69722040T2 (de) 2-d gittergeometrie und bewegungsvektorkompression
DE69735838T2 (de) Videokodierer mit Transformationskoeffizientenprädiktion
DE69723550T2 (de) Kodierung und dekodierung von grafischen symbolen
DE69836696T2 (de) Verfahren und vorrichtung zur durchführung einer hierarchischen bewegungsschätzung unter verwendung einer nicht-linearen pyramide
KR20020026177A (ko) 비디오 엔코딩 및 디코딩 방법
DE3837590A1 (de) Verfahren zum reduzieren der datenrate von digitalen bilddaten
DE112008004040T5 (de) Verfahren und System zum Erhöhen einer Rahmenanzeigerate
DE112005000033T5 (de) Adaptiv gewichtetes Bewegungsabschätzungsverfahren und Bildwechselfrequenz-Wandlereinrichtung, die das Verfahren einsetzt
DE69915843T2 (de) Teilbandkodierung/-dekodierung
DE69024002T2 (de) Vorrichtung zum Codieren von zweidimensionalen Informationen und entsprechende Decodiervorrichtung.
WO1999004574A1 (de) Interpolationsfilterungsverfahren für sub-pelgenauigkeit-bewegungsschätzung
DE69126525T2 (de) Digitale bildverarbeitung mit filterung der blockkanten
DE60202771T2 (de) Videokodierungsverfahren
DE68905214T2 (de) Einrichtung zur kodierung von signalen, die eine folge von bildern darstellen und uebertragungssystem von fernsehbildern mit hoher aufloesung mit einer solchen einrichtung.
EP1025704A1 (de) Verfahren zur bewegungskompensierenden prädiktion von bewegtbildfolgen
DE69723325T2 (de) Verfahren und Vorrichtung zur Codierung und Decodierung von Bildern
EP1101196B1 (de) Verfahren und anordnung zur bewegungsschätzung in einem digitalisierten bild mit bildpunkten
DE10196982T5 (de) Robuste Zeitdomänen-Blockdekodierung
DE60009898T2 (de) Hierarchische bildkodierung mit variabler transformation
WO2000011874A1 (de) Verfahren und anordnung zur codierung eines digitalisierten bildes mit anwendung eines objektgesamtbewegungsvektors
DE3828908A1 (de) Bilduebertragungssystem

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee