DE4405803C2 - Verfahren zur Quellcodierung - Google Patents
Verfahren zur QuellcodierungInfo
- Publication number
- DE4405803C2 DE4405803C2 DE4405803A DE4405803A DE4405803C2 DE 4405803 C2 DE4405803 C2 DE 4405803C2 DE 4405803 A DE4405803 A DE 4405803A DE 4405803 A DE4405803 A DE 4405803A DE 4405803 C2 DE4405803 C2 DE 4405803C2
- Authority
- DE
- Germany
- Prior art keywords
- image
- foreground
- determined
- coded
- background
- 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 - Fee Related
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/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
-
- 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/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/152—Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
Die Erfindung geht aus von einem Verfahren zur Quellcodierung
von Bildern nach der Gattung des Hauptanspruchs. Es ist schon
ein Verfahren zur Quellcodierung von Bildern von D. Biere
"Übertragung von Bewegt- und Standbildern in stark gestörten
schmalbandigen Kanälen beim Funkbildtelefon", Bosch-Technische
Berichte, Heft 54, 1991, Seite 35 ff., bekannt. Bei diesem
Verfahren wird ein Bild mittels Codierung des
Prädiktionsfehlerbildes und mittels blockorientierter
Bewegungsschätzung übertragen. Mit Hilfe der blockorientierten
Bewegungsschätzung wird ein Vektorfeld ermittelt, das mit Hilfe
eines modellbasierten Algorythmus nachverarbeitet wird. Die
ermittelten Bewegungsvektoren und die entsprechenden Konturen
bewegter Bildbereiche werden zuerst codiert übertragen.
Entsprechend der verbleibenden Restdatenrate werden noch ab
weichende Blockinhalte intraframe oder interframe codiert und
übertragen. Zur Ermittlung der Bildbereiche, die intraframe
codiert werden, wird die Varianz des Bildsignales innerhalb
eines Bildbereiches mit einer variablen Schwelle verglichen. Ist
die Varianz kleiner als die variable Schwelle, so wird der
Bildbereich intraframe codiert und übertragen. Die verbleibenden
Bildbereiche werden einer dreistufigen adaptiven Quantisierung
unterzogen und nach einer weiteren Blockunterteilung
strukturcodiert und übertragen.
In dem Artikel "Auf Anruf: Bild", Funkschau 13/1988, Seiten 24 bis
28, ist ein Verfahren zur Übertragung von Bewegtbildern in einer
Telefonleitung mit 64 kbit/s beschrieben. Um eine Datenreduzierung
für die Übertragung von bewegten Bildern zu erreichen, wird
vorgeschlagen, einen stillstehenden Hintergrund nur einmal zu
übertragen, wohingegen die von Bild zu Bild geänderten Bildteile
für jedes Bild übertragen werden.
Aus der US-PS 4,591,909 ist ein Verfahren zur Interframecodierung
und eine Vorrichtung dazu beschrieben. Um eine prädiktive
Codierung zu ermöglichen, wird in dieser Druckschrift
vorgeschlagen, ein eingehendes Videosignal in Blocks aufzuteilen,
die eine vorgegebene Größe haben. Weiterhin sind zwei Speicher
vorgesehen, wobei in dem einen Speicher Hintergrunddaten
gespeichert sind und in einem weiteren Speicher codierte
Bilddaten. Die Prädiktion wird als besonders gut angesehen, wenn
besonders wenige Prädiktionsfehler auftreten. Bewegt sich nun ein
bewegliches Element im Bild, wird der Hintergrund unter Verwendung
der Prädiktionswerte dargestellt, die in dem einen Speicher
gespeichert sind. So werden Prädiktionsfehler kleingehalten.
Das der Erfindung zugrunde liegende Problem beruht darin, ein
verbessertes Bildquellcodierverfahren anzugeben, wobei eine
Einteilung der Bildteile nach ihrer Wichtigkeit für einen guten
Bildeindruck vorgenommen wird und die Bildteile in der Reihenfolge
ihrer Wichtigkeit mit größter Wichtigkeit beginnend codiert
werden.
Das erfindungsgemäße Verfahren mit den Merkmalen des
Hauptanspruchs hat demgegenüber den Vorteil, daß die
Bildbereiche, die intraframe oder interframe zu codieren sind,
in Vordergrund und Hintergrund eingeteilt werden. Zuerst werden
die Bildbereiche übertragen, die zum Vordergrund gehören und
intraframe codiert sind. Anschließend werden die Bildbereiche
übertragen, die zum Vordergrund gehören und interframe codiert
sind. Weiterhin werden die Bildbereiche, die zum Hintergrund
gehören und intraframe codiert sind, und die Bildbereiche, die
zum Hintergrund gehören und interframe codiert sind, übertragen.
Damit werden zuerst die Bildbereiche, die zum Vordergrund
gehören und für den Betrachter des Bildes von größerer Bedeutung
sind als die Bildbereiche, die zum Hintergrund gehören, über
tragen. Somit wird von einem Betrachter eine subjektiv bessere
Bildqualität empfunden.
Durch die in den Unteransprüchen aufgeführten Maßnahmen sind
vorteilhafte Weiterbildungen und Verbesserungen des im
Hauptanspruch angegebenen Verfahrens möglich. Die Bildqualität
wird verbessert, indem ein Bildbereich, der als Vordergrund
ermittelt wurde, noch für eine festgelegte Zeit als Vordergrund
behandelt wird, obwohl die Bewegungsschätzung den Bildbereich
bereits als Hintergrund ermittelt hat.
Es ist vorteilhaft, den Bildbereichen, die zum Vordergrund
gehören, einen festgelegten Wert zuzuordnen und den Wert eines
Bildbereiches in festgelegten Zeitabständen um einen
festgelegten Betrag zu erhöhen, wenn die Bildbereiche als
Hintergrund ermittelt wurden, und den Bildbereich erst dann als
Hintergrund zu behandeln, wenn der Wert des Bildbereiches eine
festgelegte Schwelle überschritten hat. Damit wird die
Verwaltung der Bildbereiche auf einfache Art und Weise durch den
Vergleich numerischer Werte ermöglicht. Eine zusätzliche
Verbesserung der Bildqualität wird erreicht, indem der
festgelegte Betrag, um den ein festgelegter Wert eines
Bildbereiches erhöht wird, von dem mittleren Bewegungsvektor des
Bildbereiches abhängt. Damit wird die Dynamik der Bildbereiche
bei der Codierung berücksichtigt und eine weitere Verbesserung
der Bildqualität erzielt.
Weiterhin ist es von Vorteil, einen Bildbereich des
Hintergrundes, der bei der Bewegungsschätzung als Vordergrund
erkannt wird, sofort als Vordergrund zu behandeln. Auf diese
Weise werden bewegte Bildbereiche generell mit verbesserter
Bildqualität codiert.
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung
dargestellt und in der nachfolgenden Beschreibung näher
erläutert. Es zeigen
Fig. 1 schematisch die Funktionsweise
eines Bildquellcoders,
Fig. 2 einen schematischen
Programmablauf zur Ermittlung der Bildbereiche, die intraframe
codiert werden und zum Vordergrund gehören,
Fig. 3 einen
schematischen Programmablauf zur Ermittlung der zum Vordergrund
gehörenden interframe zu codierenden Bildbereiche,
Fig. 4 einen
Programmablauf einer Bildquellcodierung und
Fig. 5 eine
Anordnung zur Bildquellcodierung.
Fig. 1 zeigt eine Bewegungsschätzeinheit 1, der ein
Eingangssignal über eine Datenleitung 17 zugeführt wird. Das
Eingangssignal wird gleichzeitig einem diskreten Cosinus-
Transformator 2 und einem Subtrahierer 4 zugeführt. Der diskrete
Cosinus-Transformator 2 ist über eine Datenleitung 17 mit einem
ersten Entropiecodierer 12 und einem inversen diskreten Cosinus-
Transformator 9 verbunden. Der Subtrahierer 4 ist mit einer
Datenleitung 17 mit einem adaptiven Quantisierer und
Strukturcodierer 3 verbunden. Der adaptive Quantisierer und
Strukturcodierer 3 ist über eine Datenleitung 17 mit einem
inversen Strukturcodierer 8 und einem zweiten Entropiecodierer
13 verbunden. Der inverse Strukturcodierer 8 ist über eine
Datenleitung 17 mit einem Addierer 5 verbunden. Der Ausgang des
inversen diskreten Cosinus-Transformators 9 ist mit einem
Prädiktionsspeicher 7 verbunden. Der Addierer 5 ist über eine
Datenleitung 17 ebenfalls mit dem Prädiktionsspeicher 7
verbunden. Die Bewegungsschätzeinheit 1 ist mit einem Ausgang
über eine Datenleitung 17 mit einer Bewegungsglätteinheit 6
verbunden. Der Ausgang der Bewegungsglätteinheit 6 ist über eine
Datenleitung 17 mit dem Prädiktionsspeicher 7, einem
Prädiktionsvektorcodierer 10 und einem Konturcodierer 11
verbunden. Der Prädiktionsvektorcodierer 10 ist mit seinem
Ausgang über eine Datenleitung 17 mit einem dritten
Entropiecodierer 14 verbunden. Der Konturcodierer 11 ist über
eine Datenleitung 17 mit einem vierten Entropiecodierer 15
verbunden. Der erste, der zweite, der dritte und der vierte
Entropiecodierer 12, 13, 14, 15 sind über Datenleitungen 17 mit
einem Datenmultiplexer 16 verbunden. Der Ausgang des
Prädiktionsspeichers 7 ist über Datenleitungen 17 mit dem
Addierer 5, dem Subtrahierer 4 und der Bewegungsschätzeinheit 1
verbunden. Der Datenmultiplexer 16 ist mit einem Datenkanal
verbunden.
Die Anordnung nach Fig. 1 funktioniert wie folgt: Ein
Bewegtbild wird der Bewegungsschätzeinheit 1 zugeführt. Das
Bewegtbild ist in Bildeinheiten eingeteilt. Die
Bewegungsschätzeinheit 1 führt für jede Bildeinheit eine
Schätzung der Bewegung zwischen dem Bewegtbild und einem im
Prädiktionsspeicher 7 abgelegten Prädiktionsbild durch. Dabei
wird z. B. das Kriterium des mittleren quadratischen Fehlers
eines Bildbereiches an verschiedenen Positionen innerhalb eines
vorgegebenen Fensters von 40 × 40 Pixeln im Prädiktionsbild
minimiert. Als Ergebnis liefert die Bewegungsschätzeinheit 1
einen Verschiebungsvektor pro Bildeinheit. Die
Bewegungsschätzeinheit 1 liefert ein diffuses
Verschiebungsvektorfeld für das gesamte Bewegtbild, da nicht die
Ermittlung der wahren Objektbewegung, sondern die Minimierung
des mittleren quadratischen Fehlers als Kriterium herangezogen
wurde. Das von der Bewegungsschätzeinheit 1 ermittelte
Vektorfeld wird der Bewegungsglätteinheit 6 zugeführt. Die
Bewegungsglätteinheit 6 ermittelt unter Ausnutzung der Korre
lationen der Verschiebungsvektoren örtlich benachbarter Bildein
heiten ein homogeneres Bewegungsvektorfeld. Dabei wird zur
Überprüfung der Homogenität der Bewegungsvektoren und damit zur
Überprüfung der Bildhomogenität folgende Formel 1 verwendet:
gi = 1 für die direkten Nachbarn (links, rechts, oben und
unten),
gi = 1/√ für die diagonalen Nachbarn,
|vk-vii| stellt die Längendifferenz zwischen dem betrachteten Bewegungsvektor vk und einem benachbarten Bewegungsvektor vi dar und wird folgendermaßen berechnet: (vkx-vix)²+(vky-viy)². Dabei stellen Vkx und vix die Komponenten der Bewegungsvektoren in einer in der Bildebene liegenden festgelegten x-Richtung und vky und viy die Komponenten der Bewegungsvektoren in einer in der Bildebene und zur x-Richtung im 90° Winkel stehenden y- Richtung dar. Die Variable M gibt die Anzahl der benachbarten Bewegungsvektoren an, die berücksichtigt werden. Die Variablen gi sind Wichtungskonstanten, die in Abhängigkeit von der Anwendung gewählt werden. Mithilfe der Formel 1 wird ein Maß p(V) errechnet, das proportional zu den Längenunterschieden zwischen dem betrachteten Bewegungsvektor und den benachbarten Bewegungsvektoren ist. In Abhängigkeit von P(V) wird eine Glättung des Bewegungsvektorfeldes unter Verwendung einer Gibbs- Verteilung durchgeführt. Dazu wird z. B. P(v) mit einer vorgegebenen Größe verglichen und bei Überschreiten der Größe wird eine Glättung durchgeführt. Die beschriebene Glättung stellt ein bekanntes Verfahren dar und ist z. B. bei Stiller, "Motion Estimation for Coding of Moving Video at 8 kbit/s with Gibbs Modeled Vectorfield smoothing", proc. SPIE Lausanne, 1990, S. 468-476, beschrieben.
gi = 1/√ für die diagonalen Nachbarn,
|vk-vii| stellt die Längendifferenz zwischen dem betrachteten Bewegungsvektor vk und einem benachbarten Bewegungsvektor vi dar und wird folgendermaßen berechnet: (vkx-vix)²+(vky-viy)². Dabei stellen Vkx und vix die Komponenten der Bewegungsvektoren in einer in der Bildebene liegenden festgelegten x-Richtung und vky und viy die Komponenten der Bewegungsvektoren in einer in der Bildebene und zur x-Richtung im 90° Winkel stehenden y- Richtung dar. Die Variable M gibt die Anzahl der benachbarten Bewegungsvektoren an, die berücksichtigt werden. Die Variablen gi sind Wichtungskonstanten, die in Abhängigkeit von der Anwendung gewählt werden. Mithilfe der Formel 1 wird ein Maß p(V) errechnet, das proportional zu den Längenunterschieden zwischen dem betrachteten Bewegungsvektor und den benachbarten Bewegungsvektoren ist. In Abhängigkeit von P(V) wird eine Glättung des Bewegungsvektorfeldes unter Verwendung einer Gibbs- Verteilung durchgeführt. Dazu wird z. B. P(v) mit einer vorgegebenen Größe verglichen und bei Überschreiten der Größe wird eine Glättung durchgeführt. Die beschriebene Glättung stellt ein bekanntes Verfahren dar und ist z. B. bei Stiller, "Motion Estimation for Coding of Moving Video at 8 kbit/s with Gibbs Modeled Vectorfield smoothing", proc. SPIE Lausanne, 1990, S. 468-476, beschrieben.
Das geglättete Bewegungsvektorfeld wird von der
Bewegungsglätteinheit 6 an den Prädiktionsvektorcodierer 10 und
den Konturcodierer 11 weitergegeben. Der
Prädiktionsvektorcodierer 10 ermittelt eine örtlich prädiktive
Codierung der Bewegungsvektoren unter Verwendung angrenzender
Bildeinheiten. Dabei werden Bildbereiche ermittelt, die aus
zusammenhängenden Bildeinheiten bestehen und deren Verschiebung
im Vergleich zum Prädiktionsbild mit einem Bewegungsvektor
beschreibbar ist. Der Konturcodierer 11 ermittelt die Konturen
dieser Bildbereiche. Der Prädiktionsvektorcodierer 10 gibt die
prädiktiv codierten Bewegungsvektoren an den dritten
Entropiecodierer 14 weiter. Der dritte Entropiecodierer 14
unterzieht die prädiktiv codierten Bewegungsvektoren einer
Entropiecodierung und gibt diese anschließend an den Datenmulti
plexer 16 weiter. Der Konturcodierer 11 gibt die ermittelte
Kontur in Form einer binären Maske an den vierten
Entropiecodierer 15 weiter. Der vierte Entropiecodierer 15
unterzieht die binäre Maske einer Entropiecodierung und gibt
diese anschließend an den Datenmultiplexer 16 weiter. Das Bild
im Prädiktionsspeicher 7 wird um die ermittelten
Bewegungsvektoren verschoben.
Der beschriebene Bildquellcoder arbeitet nach dem Prinzip der
Vorwärtssteuerung, d. h., es wird vor der Codierung eines Bildes
eine Annahme, basierend auf der Codierung der Vorgängerbilder
getroffen, welche Bildbereiche aufgrund der zur Verfügung
stehenden Datenrate übertragbar sind. Nach Abzug der Datenrate
für Attribute und Bewegungsinformation von der mittleren
Datenrate verbleibt eine Restdatenrate für die
Prädiktionsfehlercodierung eines Bildes. Mittels einer
Schwellwertentscheidung erhält jede Bildeinheit das Attribut
intraframe codieren, interframe codieren oder unverändert
wiederholen. Eine Recheneinheit ermittelt die Bildeinheiten,
deren mittlerer quadratischer Fehler über einer vorgegebenen
Schwelle liegt. Der diskrete Cosinus-Transformator 2 führt
anschließend eine Intraframe-Codierung für die Bildeinheiten
durch, deren Varianz über der festgelegten Schwelle liegt und
gibt diese anschließend an den ersten Entropiecodierer 12
weiter. Der erste Entropiecodierer 12 unterzieht die intraframe
codierten Bildeinheiten einer Entropiecodierung und gibt diese
anschließend an den Datenmultiplexer 16 weiter. Der diskrete
Cosinus-Transformator 2 gibt die intraframe codierten
Bildeinheiten an den inversen diskreten Cosinus-Transformator 9
weiter. Der inverse diskrete Cosinus-Transformator 9 unterzieht
die intraframe codierten Bildeinheiten einer inversen diskreten
Cosinus-Transformation und gibt diese anschließend an den
Prädiktionsspeicher 7 weiter. Die Bildeinheiten, deren mittlerer
quadratischer Fehler unter der vorgegebenen Schwelle liegt,
werden interframe codiert.
Zur Ermittlung interframe codierter Bildeinheiten werden die
Bildsignale einer Bildeinheit einem Subtrahierer 4 zugeführt.
Zudem wird dem Subtrahierer 4 ein bereits bewegungskompensiertes
Prädiktionsbild vom Prädiktionsspeicher 7 zugeführt. Die
Differenz aus dem zugeführten Bildsignal und dem Prädiktionsbild
wird an den adaptiven Quantisierer und Strukturcoder 3
weitergegeben. Das Differenzbildsignal wird einer adaptiven
Quantisierung unterzogen und anschließend strukturcodiert. Nach
dem adaptiven Quantisierer und Strukturcodierer wird das
Bildsignal dem zweiten Entropiecodierer 13 und dem inversen
Strukturcodierer 8 zugeführt. Der zweite Entropiecodierer 13
unterzieht das strukturcodierte Bildsignal einer
Entropiecodierung und gibt dieses anschließend an den
Datenmultiplexer 16 weiter.
Der inverse Strukturcodierer 8 unterzieht das zugeführte
Bildsignal einer inversen Strukturcodierung und gibt dieses
anschließend an den Addierer 5 weiter. Der Addierer 5 addiert
das Prädiktionsbild und das quantisierte Differenzbildsignal zu
einem neuen Prädiktionsbild.
Fig. 2 zeigt einen schematischen Programmablauf zur Ermittlung
der Bildeinheiten, die zum Vordergrund gehören und intraframe
codiert werden. Bei Programmpunkt, 21 werden die mittleren
quadratischen Fehler aller Bildeinheiten im Vergleich zu dem
Prädiktionsbild bestimmt und für jede Bildeinheit in einem
Speicher abgelegt. Anschließend werden bei Programmpunkt 22 die
Bildeinheiten entsprechend der Größe der mittleren quadratischen
Fehler absteigend sortiert. Daraufhin wird bei Programmpunkt 23
eine Programmschleife über alle Bildeinheiten ausgeführt.
Diese programmschleife beinhaltet bei Programmpunkt 24 die
Abfrage, ob der mittlere quadratische Fehler einer Bildeinheit
größer als eine festgelegte diskrete Cosinus-
Transformationsschwelle ist. Ist dies nicht der Fall, so wird
nach Programmpunkt 26 verzweigt und diese Bildeinheit als
interframe zu codierende Bildeinheit in einer binären Maske
markiert und in einem Speicher abgelegt. Ergibt die Abfrage bei
Programmpunkt 24 jedoch, daß der mittlere quadratische Fehler
größer als die festgelegte diskrete Cosinus-Transformations
schwelle ist, so wird nach Programmpunkt 25 verzweigt.
Bei Programmpunkt 25 erfolgt die Abfrage, ob die Bildeinheit zum
Vordergrund gehört. Die Bildeinheit gehört zum Hintergrund, wenn
der von der Bewegungsschätzeinheit 1 ermittelte
Verschiebungsvektor gleich Null ist. Gehört die Bildeinheit zum
Hintergrund, so wird nach Programmpunkt 27 verzweigt und diese
Bildeinheit als interframe zu codierende Bildeinheit in der
binären Maske markiert und im Speicher abgelegt. Ergibt die
Abfrage bei Programmpunkt 25 jedoch, daß die Bildeinheit zum
Vordergrund gehört, so wird diese Bildeinheit bei Programmpunkt
28 als intraframe zu codierende Bildeinheit in der binären Maske
markiert und im Speicher abgelegt.
Das Programm nach Fig. 2 ermittelt die Bildeinheiten, die
intraframe zu codieren sind. Es werden nur die Bildeinheiten
intraframe codiert, die zum Vordergrund gehören und deren
mittlerer quadratischer Fehler größer als eine festgelegte
diskrete Cosinus-Transformationsschwelle ist.
Fig. 3 zeigt einen schematischen Programmablauf, der die
Bildeinheiten, die von dem Programm der Fig. 2 als interframe
zu codierende Bildeinheiten ermittelt wurden, weiterverarbeitet.
Bei Programmpunkt 41 beginnt eine Programmschleife, die über
alle Bildeinheiten ausgeführt wird. Bei Programmpunkt 42 erfolgt
die Abfrage, ob die interframe zu codierende Bildeinheit zum
Vordergrund gehört. Ist dies nicht der Fall, so wird nach
Programmpunkt 44 verzweigt und diese Bildeinheit endgültig als
interframe zu codierende Bildeinheit betrachtet. Ergibt die
Abfrage bei Programmpunkt 42 jedoch, daß die Bildeinheit zum
Vordergrund gehört, so wird nach Programmpunkt 43 verzweigt und
diese Bildeinheit als intraframe zu codierende Bildeinheit
markiert. Diese Abfrage wird über alle Bildeinheiten eines
Bildes ausgeführt. Das Programm nach Fig. 3 ermittelt aus den
nach dem Programm der Fig. 2 ermittelten interframe zu
codierenden Bildeinheiten intraframe zu codierende
Bildeinheiten, wenn diese zum Vordergrund gehören.
Fig. 4 zeigt eine Bildaufnahmeeinheit 50, die über eine
Datenleitung 61 mit einer Recheneinheit 18 verbunden ist. Die
Recheneinheit 18 ist über eine Datenleitung 61 mit einem
Speicher 19 verbunden. Zudem ist die Recheneinheit 18 über eine
weitere Datenleitung 61 mit einem Bildquellkoder 20 verbunden.
Der Bildquellkoder 20 ist, wie in Fig. 1 schematisch gezeigt,
aufgebaut und mit einem Datenkanal verbunden.
Ein spezielles Ausführungsbeispiel wird im folgenden anhand des
Programmablaufes der Fig. 5 und unter Einbeziehung der Fig.
1 bis 4 beschrieben. Bei Programmpunkt 30 der Fig. 5 wird ein
Bild von einer Recheneinheit 18 in Bildeinheiten der Größe 8 × 8
Pixel eingeteilt und der Bewegungsschätzeinheit 1 zugeführt. Die
Bewegungsschätzeinheit 1 führt für jede Bildeinheit eine
Schätzung der Bewegung durch Vergleich des Bildes mit einem vom
Prädiktionsspeicher 7 zugeführten Prädiktionsbild durch. Als
Kriterium wird z. B. der mittlere quadratische Fehler des Bildes
an verschiedenen Positionen innerhalb eines vorgegebenen
Fensters von 40 x 40 Pixeln im Prädiktionsbild minimiert. Als
Ergebnis wird ein Verschiebungsvektor pro Bildeinheit erhalten.
Die Recheneinheit 18 legt in einem Speicher 19 eine binäre
Maske, in der die Bildeinheiten, die einen Bewegungsvektor
ungleich Null aufweisen, markiert sind, ab. Zur Verbesserung der
Bildqualität werden bei Programmpunkt 31 die von der
Bewegungsschätzeinheit 1 ermittelten Verschiebungsvektoren von
der Bewegungsglätteinheit 6 unter Annahme einer Gibbs-Verteilung
(Formel 1) geglättet und mittels prädiktiver
Bewegungsvektorcodierung und Konturcodierung, wie in Fig. 1
dargestellt, übertragen.
Anschließend wird bei Programmpunkt 42 von der Recheneinheit 18
die Restdatenrate ermittelt, die zur Übertragung des Bildes zur
Verfügung steht. Die Restdatenrate ergibt sich aus der
Gesamtdatenrate pro Bild minus der verbrauchten Datenrate für
die Übertragung der Bewegungsvektoren und der dazugehörenden
Konturen minus der verbrauchten Datenrate für Attribute. Die
Attribute geben die Art der Codierung für jede Bildeinheit an.
Die zur Verfügung stehende Restdatenrate wird für die
Intraframe-Codierung oder Interframe-Codierung verwendet. Die
Intraframe-Codierung wird mittels diskreter Cosinus-
Transformation ausgeführt. Die Interframe-Codierung, d. h. die
Differenz einer Bildeinheit eines aktuellen Bildes mit einem
bewegungskompensierten Prädiktionsbild, wird zuerst adaptiv
quantisiert und anschließend strukturcodiert.
Bei Programmpunkt 33 werden unter Verwendung des Programmes der
Fig. 2 die Bildeinheiten des Bildes ermittelt, die intraframe
codiert werden und zum Vordergrund gehören. Die Recheneinheit 18
vergleicht dazu, ob der mittlere quadratische Fehler einer
Bildeinheit größer ist als eine festgelegte Schwelle und prüft
anhand der binären Maske, die im Speicher 19 abgelegt ist, nach,
ob der Bewegungsvektor der Bildeinheit größer Null ist. Die
Recheneinheit 18 ordnet die Bildeinheiten entsprechend dem
mittleren quadratischen Fehler, multipliziert mit einem Faktor
PF-intra, der für Bildeinheiten des Vordergrunds gleich 1 ist
und für Bildeinheiten des Hintergrundes gleich Null ist,
entsprechend ihrer Größe.
Bei Programmpunkt 34 werden nach dem Programm der Fig. 3 die
Bildeinheiten ermittelt, die interframe zu codieren sind und zum
Vordergrund gehören. Die Recheneinheit 18 ordnet die
Bildeinheiten entsprechend ihren mittleren quadratischen
Fehlern, multipliziert mit einem Faktor PF-inter. Der Faktor PF-
inter ist für Vordergrund-Bildeinheiten gleich 1 und für
Hintergrund-Bildeinheiten variabel von der Zeit abhängig.
Anschließend ordnet bei Programmpunkt 35 die Recheneinheit 18
alle Bildeinheiten entsprechend ihrer mittleren quadratischen
Fehler, multipliziert mit den entsprechenden Faktoren PF intra
oder PF inter. Die Bildeinheiten werden nun der Reihenfolge nach
mit dem größten Produkt aus mittlerem quadratischen Fehler mal
dem Faktor PF-intra oder PF-inter entsprechend der Fig. 1
codiert übertragen, solange, bis die Restdatenrate für die
Übertragung des Bildes aufgebraucht ist.
Der Faktor PF-inter für Bildbereiche des Hintergrundes hängt
vorzugsweise von der Zeit ab, so daß eine stufenweise
Erniedrigung des Faktors PF-inter in Abhängigkeit von der Zeit
vorgesehen ist.
Die binäre Maske, die von der Recheneinheit 18 im Speicher 19
zur Festlegung einer bewegten Bildeinheit angelegt wird, kann im
einfachsten Fall mit binären Werten belegt sein. Das heißt, eine
Bildeinheit, deren Verschiebungsvektor gleich Null ist, bekommt
z. B. den Wert Null und eine Bildeinheit I, deren
Verschiebungsvektor ungleich Null ist, den Wert 1 zugeordnet.
Vorzugsweise können die Bildeinheiten mit einem festgelegten
Zahlenwert ZI belegt sein. ZI wird zu Null gesetzt, wenn für die
Bildeinheit I eine Bewegung ermittelt wurde und die Bildeinheit
zum Vordergrund gehört. Im anderen Fall wird ZI um einen
festgelegtem Betrag B je Zeittakt erhöht: ZI(t+1) = (ZI(t)+B),
wobei t einen festgelegten Zeittakt darstellt.
Überschreitet der Zahlenwert ZI einer Bildeinheit I eine
konstante festgelegte Schwelle S, so wird die Bildeinheit I so
lange dem Hintergrund zugeordnet, bis die Bewegungsschätzeinheit
1 für die Bildeinheit I wieder einen Verschiebungsvektor
ungleich Null, registriert und ZI somit auf Null gesetzt wird.
Durch diese Schwellwertoperation wird der Übergang
Vordergrund/Hintergrund für Bildeinheiten mit Bewegungsvektoren
der Länge Null verzögert. Der Übergang Hintergrund/Vordergrund
erfolgt für Bewegungsvektoren ungleich Null jedoch sofort. Für
die Berechnung des festgelegten Betrages B wird z. B. die
mittlere Bewegungsvektorlänge nach folgender Formel verwendet:
mit n = Anzahl der Vektoren, die nicht Nullvektoren sind,
im aktuellen Bild,
Xi, Yi = Länge der Vektoren in X- und Y-Richtung.
Xi, Yi = Länge der Vektoren in X- und Y-Richtung.
Der Betrag B ist dann:
B = Lm* Lm.
Die binäre Maske kann mittels der bekannten Verfahren Erosion
und Dilatation nachverarbeitet werden.
Der mittlere quadratische Fehler wird vorzugsweise nach
folgender Formel berechnet:
dabei ist:
n = Anzahl der Pixel im Block
i = Laufindex über alle Pixel eines Blocks
orgi = i-ter Pixel im Originalblock
prei = i-ter Pixel im Block des Vorgängerbildes.
n = Anzahl der Pixel im Block
i = Laufindex über alle Pixel eines Blocks
orgi = i-ter Pixel im Originalblock
prei = i-ter Pixel im Block des Vorgängerbildes.
Claims (5)
1. Verfahren zur Quellcodierung von Bildern, wobei ein Bild in
Bildbereiche festgelegter Größe eingeteilt wird und für jeden
Bildbereich eine Bildstatistik ermittelt wird und die Bildbe
reiche, deren Bildstatistik über einer vorgegebenen Schwelle
liegt, intraframe codiert werden und die anderen Bildbereiche
interframe codiert werden, wobei die Bildbereiche entsprechend
ihrer Bildstatistik sortiert werden und die intraframe zu codie
renden Bildbereiche Vorrang vor den interframe zu codierenden
Bildbereichen bei der Codierung haben,
dadurch gekennzeichnet,
daß die Bildbereiche mit Hilfe einer Bewegungsschätzung in Vor
dergrund und Hintergrund aufgeteilt werden, und daß die Bildbe
reiche des Vordergrundes bei der Codierung Vorrang vor den Bild
bereichen des Hintergrundes haben.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
daß ein Bildbereich des Vordergrundes noch für eine festgelegte
Zeit als Vordergrund behandelt wird, obwohl die Bewegungs
schätzung den Bildbereich bereits als Hintergrund ermittelt hat.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
daß dem Bildbereich, der als Vordergrund ermittelt wird, ein
festgelegter Wert zugeordnet wird und in einem Speicher abgelegt
wird, daß der Wert des Bildbereiches, in festgelegten Zeitab
ständen um einen festgelegten Betrag erhöht wird, wenn der Bild
bereich als Hintergrund ermittelt wird, und der Bildbereich erst
dann als Hintergrund behandelt wird, wenn der Wert des Bildbe
reiches eine festgelegte Schwelle überschreitet.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet,
daß der festgelegte Betrag in Abhängigkeit von dem mittleren Be
wegungsvektor des Bildbereiches, der von der Bewegungsschätzung
ermittelt wurde, festgelegt wird.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekenn
zeichnet,
daß ein Bildbereich des Hintergrundes sofort als Vordergrund be
handelt wird, wenn die Bewegungsschätzung den Bildbereich als
Vordergrund ermittelt.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4405803A DE4405803C2 (de) | 1994-02-23 | 1994-02-23 | Verfahren zur Quellcodierung |
JP03382495A JP4298803B2 (ja) | 1994-02-23 | 1995-02-22 | 画像のソース符号化方法 |
FR9502120A FR2716556B1 (fr) | 1994-02-23 | 1995-02-23 | Procédé de codage source, pour subdiviser une image en des plages d'image de taille fixée. |
US08/392,660 US5650822A (en) | 1994-02-23 | 1995-02-23 | Process for source coding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE4405803A DE4405803C2 (de) | 1994-02-23 | 1994-02-23 | Verfahren zur Quellcodierung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4405803A1 DE4405803A1 (de) | 1995-08-31 |
DE4405803C2 true DE4405803C2 (de) | 1997-04-30 |
Family
ID=6510988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4405803A Expired - Fee Related DE4405803C2 (de) | 1994-02-23 | 1994-02-23 | Verfahren zur Quellcodierung |
Country Status (4)
Country | Link |
---|---|
US (1) | US5650822A (de) |
JP (1) | JP4298803B2 (de) |
DE (1) | DE4405803C2 (de) |
FR (1) | FR2716556B1 (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08256266A (ja) * | 1995-03-17 | 1996-10-01 | Mitsubishi Electric Corp | 画像符号化方式 |
US6101282A (en) * | 1995-06-22 | 2000-08-08 | Canon Kabushiki Kaisha | Apparatus and method for image data encoding |
KR100211055B1 (ko) * | 1996-10-28 | 1999-07-15 | 정선종 | 내용기반으로 분할된 영상객체들의 스케러블 전송방법 |
US5883977A (en) * | 1996-12-30 | 1999-03-16 | Daewoo Electronics Co., Ltd. | Method and apparatus for encoding a video signal of a contour of an object |
JPH10336682A (ja) * | 1997-04-02 | 1998-12-18 | Canon Inc | 符号化装置及び方法及び方法を記憶した記憶媒体 |
US6304295B1 (en) * | 1998-09-18 | 2001-10-16 | Sarnoff Corporation | Region-based refresh strategy for video compression |
KR100353851B1 (ko) * | 2000-07-07 | 2002-09-28 | 한국전자통신연구원 | 파문 스캔 장치 및 그 방법과 그를 이용한 영상코딩/디코딩 장치 및 그 방법 |
KR100643454B1 (ko) * | 2001-11-17 | 2006-11-10 | 엘지전자 주식회사 | 영상 데이터 전송 제어방법 |
GB0227570D0 (en) * | 2002-11-26 | 2002-12-31 | British Telecomm | Method and system for estimating global motion in video sequences |
GB0227566D0 (en) | 2002-11-26 | 2002-12-31 | British Telecomm | Method and system for estimating global motion in video sequences |
JP5906430B2 (ja) * | 2011-01-24 | 2016-04-20 | パナソニックIpマネジメント株式会社 | 動画伝送端末及び動画伝送システム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3462572D1 (en) * | 1983-04-20 | 1987-04-09 | Nippon Telegraph & Telephone | Interframe coding method and apparatus therefor |
EP0330455A3 (de) * | 1988-02-22 | 1990-07-04 | Kabushiki Kaisha Toshiba | Vorrichtung zum Kodieren von Bildern |
DE3820037A1 (de) * | 1988-06-13 | 1989-12-14 | Ant Nachrichtentech | Bildcodierverfahren und einrichtung |
FR2675002B1 (fr) * | 1991-04-05 | 1993-06-18 | Thomson Csf | Procede de classification des pixels d'une image appartenant a une sequence d'images animees et procede d'interpolation temporelle d'images utilisant ladite classification. |
JP3002019B2 (ja) * | 1991-07-04 | 2000-01-24 | 富士通株式会社 | セル廃棄補償機能を有する画像符号化伝送方式 |
KR940011881B1 (ko) * | 1991-12-23 | 1994-12-27 | 주식회사 금성사 | 움직임 검출 및 추정장치 |
US5347311A (en) * | 1993-05-28 | 1994-09-13 | Intel Corporation | Method and apparatus for unevenly encoding error images |
US5440346A (en) * | 1993-06-16 | 1995-08-08 | Intel Corporation | Mode selection for method and system for encoding images |
-
1994
- 1994-02-23 DE DE4405803A patent/DE4405803C2/de not_active Expired - Fee Related
-
1995
- 1995-02-22 JP JP03382495A patent/JP4298803B2/ja not_active Expired - Fee Related
- 1995-02-23 FR FR9502120A patent/FR2716556B1/fr not_active Expired - Fee Related
- 1995-02-23 US US08/392,660 patent/US5650822A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP4298803B2 (ja) | 2009-07-22 |
DE4405803A1 (de) | 1995-08-31 |
JPH07264595A (ja) | 1995-10-13 |
FR2716556A1 (fr) | 1995-08-25 |
US5650822A (en) | 1997-07-22 |
FR2716556B1 (fr) | 1998-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69224250T2 (de) | Ableitung und Verwendung von Bewegungsvektoren in einem Differenzpulskodemodulationssystem | |
DE19730360B4 (de) | Bilddatenfilterungsvorrichtung und Verfahren zur Verminderung von Bilddatencodierfehlern | |
DE69803639T2 (de) | Vorrichtung und Verfahren zur Detektion eines Bewegungsvektors | |
DE69637335T2 (de) | Bildsignalkodierungsmethode und -vorrichtung | |
DE19704439C2 (de) | Verfahren und Vorrichtung zur Bewegungsschätzung in einem digitalen Videocodierer unter Verwendung von Trajektorien | |
DE69331939T2 (de) | Kodierungssystem | |
DE69032177T2 (de) | Kodierungsgerät | |
DE69330620T2 (de) | Verfahren und Einrichtung zur Bildkodierung | |
DE69126585T2 (de) | Verfahren und Gerät zur Kodierung von bewegten Bildsignalen | |
DE69222332T2 (de) | Kodierungsgerät zur Kompression von bewegten Bilddaten | |
DE4442643B4 (de) | Verfahren zum Abschätzen der Bewegung in einem Bewegtbild | |
DE69618759T2 (de) | Verfahren und system zur kodierung einer sequenz von segmentierten bildern , kodiertes signal und speichermedium, verfahren und system zur dekodierung des kodierten signals | |
DE69712836T2 (de) | Vorrichtung und verfahren zur videosignalkodierung | |
DE19743202B4 (de) | Verfahren zum Codieren eines Bewegungsvektors | |
WO1994024634A1 (de) | Verfahren zur detektion von änderungen in bewegtbildern | |
WO2008034715A2 (de) | Verfahren zur datenkompression in einer videosequenz | |
DE4405803C2 (de) | Verfahren zur Quellcodierung | |
DE602004001993T2 (de) | Transformations basiertes restbewegungsrahmen kodierungsverfahren mit übervollständiger basis und zugehörige vorrichtung zur videokompression | |
DE3788326T2 (de) | Verfahren und Apparat zur Kodierung von Bewegtbildsignalen. | |
DE69416662T2 (de) | Bewegtbildkodierer | |
DE69630199T2 (de) | Verfahren und gerät zur selektiven kompression von video-codec | |
DE69329478T2 (de) | Vorrichtung zur Bildkodierung | |
DE69232215T2 (de) | Einrichtung zur Bildkodierung | |
DE69225649T2 (de) | Bewegungskompensation mit Verwendung einer minimalen Bitanzahl je bewegtem Block als Kriterium für Blockübereinstimmung | |
DE19717608B4 (de) | Wahrnehmungsfehlerbearbeitungsverfahren und Bildkodierungsvorrichtung, welche dieses Verfahren verwendet |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20110901 |