-
Die
Erfindung betrifft ein Bildcodierverfahren für die Einfügung eines kleinen Bildes in
ein gemäß dem MPEG-Standard
codierten Bild.
-
Bis
zu den letzten paar Jahren wurden die Bilder im allgemeinen zwischen
Fernsehsignalsendestationen in nicht komprimierter Form, d. h. in
Klarschrift, übertragen
und ausgetauscht.
-
Wenn
es notwendig war, ein Quellenprogramm anzupassen, erfolgte die Verarbeitung
der Bilder auf der Basis einer professionellen Hardware. Wenn zum
Beispiel ein Regisseur einen Bericht von einem konkurrierenden Kanal
benutzen musste, kann er leicht, mittels eines Mischers und ohne
eine zusätzliche
Anlage sein eigenes Logo, Informationen wie Untertitel, die Aufzeichnung
eines Spiels usw. einfügen.
-
Wenn
nun die Sendung und der Austausch von Daten in der Form von komprimierten
Daten erfolgt, zum Beispiel gemäß dem MPEG-Standard,
erfordern die Einfügelösungen eine
zusätzliche
Hardware: einen Decoder zur Umsetzung der komprimierten Bilder in
das Basisband am Eingang des Mischers, einen Coder zur Neu-Codierung der Folgen,
nach dem sie geändert
worden sind. Außerdem kann
es zur Durchführung
einer Neu-Codierung mit besserer Qualität notwendig sein, ein Decoder/Coderpaar
einzusetzen, das weiß,
wie die Hilfsinformationen verwaltet werden müssen, die dem codierten Signal
hinzugefügt
werden und über
die gesamte Studioanlage laufen, vor Erreichung des Neu-Coders,
wodurch das System komplex wird.
-
Der
Zweck der Erfindung ist es, die obigen Nachteile zu verringern.
-
Ihr
Gegenstand ist ein Verfahren gemäß Anspruch
1.
-
Gemäß einem
besonderen Ausführungsmodus
ist ein Inter-Modus für
die Codierung der Makroblöcke
des zu einem Ausschlussbereich gehörenden Bildes ein Inter-Modus mit Nullbewegungsvektoren.
-
Gemäß einem
besonderen Ausführungsmodus
wird der Intra-Modus für
die Codierung der Makroblöcke
des zu einem Ausschlussbereichs gehörenden Bilds benutzt.
-
Gemäß einem
besonderen Ausführungsmodus
erfolgt der Markierungsschritt in der Durchführung einer Transcodierung
der Luminanzwerte der Makroblöcke
durch Dekrementierung der Werte gleich dem maximalen Codierwert
und dann durch Beeinflussung der Luminanzwerte der zu dem Ausschlussbereich
gehörenden
Makroblöcke
auf diesen Maximalwert.
-
Gemäß einem
besonderen Ausführungsmodus
für eine
bestimmte Reihe von Makroblöcken
ist die Codierung eine spezifische Scheibe für die Makroblöcke zugeordnet,
die zu einem Ausschlussbereich gehören.
-
Die
Erfindung betrifft außerdem
ein Verfahren zur Einfügung
eines kleinen Bilds in ein Bild, das gemäß dem oben beschriebenen Verfahren
codiert ist, dadurch gekennzeichnet, dass die Makroblöcke einer
Intra-codierten Scheibe durch Makroblöcke für das kleine Bild ersetzt werden.
-
Gemäß einem
besonderen Ausführungsmodus
besteht der Ersatz aus einer Wiedergewinnung der Intra-codierten
Makroblöcke,
die zu dem Ausschlussbereichen gehören, einer Basisbanddecodierung
dieser Makroblöcke,
einer Mischung mit dem in dem Ausschlussbereich einzufügenden kleinen
Bild einer Codierung des Bilds, um so den Ersatz der Makroblöcke zu bilden.
-
Gemäß einem
besonderen Ausführungsmodus
ist das Quantisierintervall für
die Codierung der Makroblöcke,
die zu dem Ausschlussbereich gehören,
von den Kosten der Codierung der einzufügenden Makroblöcke abhängig.
-
Die
Erfindung betrifft außerdem
ein Gerät
gemäß Anspruch
9.
-
Das
Prinzip der Erfindung besteht in der Definition von Ausschlussbereichen
in dem Bild, der Codierung des Bilds, das nicht zu den Bereichen
gehört, die
unabhängig
von diesen Bereichen gebildet werden, einem Bewegungsvektor, der
auf einen nicht existierenden Ausschlussbereich. Die Einfügung eines
kleinen Bilds in eine Bildfolge kann in einer einfachen Weise durchgeführt werden,
während
die Codierung des Bilds auf einen vorbestimmten Bereich begrenzt
wird.
-
Der
Hauptvorteil der Erfindung besteht darin, dass die Anwendung einer
komplexen und teueren Anordnung vermieden wird, nämlich professionelle Decoder
und Coder. Das trifft umso mehr zu, da die benutzten Formate, wie
zum Beispiel das Fernsehformat mit hoher Auflösung oder HDTV, die Anwendung
einer komplexen Anlage erfordern.
-
Die
Decodierung und Codierung des Bildes sind entweder einfach weggelassen,
wenn die Einfügung
bei dem Wert des MPEG Datenstroms erfolgt, oder begrenzt auf die
Bereiche des Bilds, die im Intra-Modus codiert werden, wenn sie
im Basisband arbeiten und eine Decodierung und Neu-Codierung dieser
Bereiche durch eine Software, die keine Schaltung zur Bewegungsschätzung und
keine andere komplexe Decodierung benötigt, ermöglichen.
-
Die
europäische
Patentanmeldung EP-A-650 298 beschreibt die Codierung eines Bilds durch
Aufteilung in zwei Teile, um nur einem Teil auf der Decoderseite
wiederzugeben, wobei der Bewegungsschätzer keine Störung mit
dem Teil bewirkt und nicht durch den Decoder wiedergegeben wird. Das
Codierverfahren benötigt
eine spezifische Syntaxschicht und ermöglicht nicht die Einfügung eines kleinen
Bildes oder eines Logos in ein Bild.
-
Eine
Logo-Einfügung
ist jedoch aus der EP-A-0 977 439 bekannt, die eine spätere Veröffentlichung
ist.
-
Weitere
Merkmale und Vorteile der vorliegenden Erfindung ergeben sich offensichtlicher
aus der folgenden Beschreibung an einem Beispiel und anhand der
beigefügten
Figuren:
-
1 zeigt
einen Ausschlussbereich in einem Referenzbild,
-
2 zeigt
eine verbotene Lage eines vorausgesagten Makroblocks in dem Suchfenster
des Referenzbilds.
-
3 zeigt
ein Codiergerät
gemäß der Erfindung,
-
4 zeigt
einen Bewegungsschätzer,
der durch das Codiergerät
gemäß der Erfindung
benutzt wird.
-
In
Bildcodiersystemen mit einer Bewegungskompensation, wie die mit
dem MPEG-Standard
verträglichen
System, erfolgt die Suche nach einem Bewegungsvektor hinsichtlich
eines bestimmten Bildblocks bezüglich
eines Referenzbilds, das vorher verarbeitet und zu dem Decoder übertragen
wurde.
-
1 zeigt
ein erstes Bild 1, genannt Quellenbild, und ein zweites
Bild 2, genannt Referenzbild, aus dem das Quellenbild codiert
ist. Die Codierung eines Bildblocks 3 des Quellenbilds
durch Durchführung
einer Koordination dieses Blocks mit Blöcken derselben Abmessung, die
in einem Suchfenster in dem Referenzbild enthalten sind, um so einen
Referenzblock zu bestimmen, der die beste Koordination ergibt. Die
Codierung entspricht dann einem Block von Resten oder Residuen.
Dieser Block wird gewonnen durch eine Luminanz- und Chrominanzunterscheidung
zwischen dem Block desselben Bilds und dem Referenzblock, um so
einen Differenzblock zu bilden, dann durch eine diskrete Kosinustransformation
dieses Differenzblocks, um so einen Block von Koeffizienten zu bilden,
der der Block der Reste oder Residuen ist. Der Referenzblock wird
gebildet durch einen Bewegungsvektor, der die Verschiebung des laufenden
Blocks gegenüber
diesem Referenzblock darstellt. Die Komponenten des Bewegungsvektors werden
zusammen mit den komprimierten Daten in dem MPEG-Datenstrom übertragen.
-
Da
die Größe der Quellenbilder
und der Referenzbilder identisch ist, kann ein Vektor auf einen Bereich
zeigen, der in dem Referenzbild enthalten ist.
-
Das
Codierverfahren gemäß der Erfindung benutzt
eine Bewegungsschätzung
mit Ausschluss der Bewegungsvektoren, die in einen oder mehrere Bereiche
zeigen, die als gesperrt bezeichnet wurden und den einzufügenden oder
gemischten kleinen Bildern entsprechen.
-
Genauer
gesagt, bestimmt das kleine Bild, das in das Bild eingefügt werden
soll und eine beliebige Abmessung haben kann, eine Stelle in dem
Bild. Der für
verhindert erklärte
Bereich oder der Ausschlussbereich hat eine Makroblock-Auflösung, d.
h. sie entspricht nicht nur der Ansammlung von Makroblöcken in
dem Bild, das vollständig
innerhalb dieser Stelle liegt, sondern auch der Makroblöcke, die
in diese Stelle eingreifen.
-
Ein
Ausschlussbereich (ZE) oder verhinderter Bereich 4 ist
in dem Referenzbild 2 dargestellt. Dieser Bereich wird
zum Beispiel definiert auf der Basis der Koordinaten der Punkte
Ba und Ea, die am oberen linken Ende bzw. am unteren rechten Ende des
Bereichs liegen, d. h. an dem Beginn des Bereichs und bei dem Ende
des Bereichs hinsichtlich der Fernsehabtastung. Diese Koordinaten
sind die Zahlen von diese Punkte enthaltenden Makroblöcken oder
Reihennummern und Makroblocknummern innerhalb einer Reihe. Dieser
Bereich kann auch durch die Anzahl der den Bereich bildenden Makroblöcke bestimmt
sein.
-
Ein
Bewegungsvektor Vx,y wird anhand des vorangehend erwähnten Korrelationsschritts
berechnet. Er bestimmt in unserem Beispiel einen Block, der in dem
verhinderten Bereich liegt. Gemäß dem Verfahren
der Erfindung wird dieser Block für die Codierung des Blocks 3 nicht
verwendet.
-
In 2 dienen
dieselben Bezugszeichen zur Bezeichnung der mit 1 gemeinsamen
Elemente. In diesem Beispiel ist das Suchfenster 5, innerhalb
dessen eine Suche erfolgt, für
den am besten koordinierten Block in dem laufenden Block 3 gestrichelt
dargestellt. Der Block, der auf der Basis des Bewegungsvektors Vx,y
gebildet wird, reicht auf die Ausschlussbereich 4, und
dieser Bewegungsvektor wird auch nicht angewendet.
-
Der
angewendete Bewegungsvektor ist einer, der die beste Korrelation
ergibt und keinen Block bestimmt, der in den gesperrten Bereich
eindringt. Die Blöcke,
die in dem Suchfenster bestimmt wurden und die Punkte enthalten,
die zu dem Ausschlussbereich gehören,
werden daher von der ersten Wahl für einen bestimmten Makroblock
ausgeschlossen. Wenn alle möglichen
Lagen in dem Suchfenster in den Ausschlussbereich eingreifen, dann
wird der Bewegungsvektor für
den relevanten Makroblock auf null gesetzt.
-
Dies
ist das Verfahren, das benutzt wird durch den Bewegungsschätzer, der
beteiligt ist an der Bildung des globalen Codiergeräts. Es folgt
nunmehr eine Beschreibung dieses in 3 dargestellten
Codiergeräts.
-
Die
Quellenbilder der Bildfolge nach der digitalen Codierung, der Neuordnung
und des Shopping in Makroblöcke
gemäß dem MPEG-Standard
werden Makroblock für
Makroblock zu dem Eingang IS des Geräts übertragen.
Dieser Eingang ist parallel mit einem ersten Eingang einer Subtrahierstufe 6,
mit einem ersten Eingangs eines Inter/Intra-Modus-Wähler 7 und
einem ersten Eingang eines Bewegungsschätzers 12 verbunden.
Der Ausgang der Subtrahierstufe ist mit dem zweiten Eingang des
Moduswählers 7 verbunden.
Der Ausgang des Wählers
ist mit einem ersten Eingang einer Codierschaltung 8 verbunden, die
eine diskrete Kosinustransformation der empfangenen Makroblöcke und
eine Quantisierung der Makroblöcke
für die
gewonnenen Koeffizienten bewirkt. Diese Makroblöcke werden zu einer Codierschaltung 13 mit
variabler Länge übertragen
und dann zu einem Pufferspeicher 14, dessen einer Ausgang
mit dem Ausgang der Einheit zur Lieferung der codierten Daten in
der Form eines Datenstroms verbunden ist. Die Codierschaltung 13 mit
variabler Länge
bewirkt einen Datenaustausch mit einem Syntaxgenerator 16 zur Konfigurierung
des übertragenen
Datenstroms. Er empfängt
außerdem
die Bewegungsinformationen von dem Bewegungsschätzer 12. Ein zweiter
Ausgang des Pufferspeichers 14 ist mit einer Regelschaltung 15 verbunden,
die Informationen für
die Codierschaltung 8 an einen zweiten Eingang überträgt.
-
Der
die Codierschaltung 8 anregende codierte Makroblock wird
ebenfalls zu einer Decodierschaltung 9 übertragen, die die Vorgänge invers
zu denen der Codierschaltung 8 durchführt. Der derart rekonstruierte
Makroblock wird zu einem ersten Eingang einer Addierstufe 10 übertragen.
Der Ausgang der Addierstufe ist mit einem ersten Eingang eines Speichers
und mit einer Voraussageschaltung 11 verbunden, die am
Ausgang einen vorausgesagten Makroblock liefert. Dieser Makroblock
wird zu dem zweiten Eingang des der Subtrahierstufe 6 und
zu dem zweiten Eingang der Addierstufe 10 übertragen.
-
Auf
einem zweiten Eingang empfängt
der Bewegungsschätzer 12 die
Makroblöcke
des rekonstruierten Bilds von einem zweiten Ausgangs des Speichers
und der Vor aussageschaltung 11. Daraufhin liefert er die
Bewegungsinformationen zu dieser Schaltung.
-
Die
Auswahlschaltung 7, die Codierschaltung 8, die
Regelschaltung 15, die Bewegungsschätzschaltung 12 und
die die Syntax erzeugende Schaltung 16 empfangen andererseits
Informationen für
die Ausschlussbereiche in dem Bild.
-
Ein
laufender Makroblock des Quellenbildes wird an dem Eingang des Geräts empfangen.
Dieser Makroblock, in dieser Form mit Intra-Makroblock bezeichnet,
wird zu dem ersten Eingang der Subtrahierstufe 6 übertragen.
Letztere subtrahiert einen vorausgesagten Makroblock von diesem
Intra-Makroblock und liefert somit einen Differenzmakroblock, auch
Inter-Makroblock genannt. An seinem ersten Eingang empfängt der
Inter/Intra-Wähler
den Intra-Makroblock und an dem zweiten Eingang empfängt er den Inter-Makroblock
und wählt
einen dieser Makroblöcke
als eine Funktion der Energiekriterien, zum Beispiel ihre Codierkosten.
Der Inter-Makroblock wird ausgewählt,
dann wird ein Inter-Codiermodus angewendet, wenn der Intra-Makroblock gewählt ist,
dann wird ein Intra-Codiermodus eingesetzt. Der gewählte Makroblock
wird danach durch eine diskrete Kosinustransformation umgesetzt
und ergibt so einen Block von Koeffizienten und wird dann quantisiert
als Funktion eines Quantisierintervalls, das durch die Regelschaltung 15 berechnet
wird. Der Makroblock von quantisierten Koeffizienten wird gemäß einer
Codierung mit variabler Länge
codiert durch den Coder 13 mit variabler Länge, auch
mit VLC-Coder bezeichnet. Angefügt
an die durch diesen Coder 13 empfangenen Daten sind die
durch den Syntaxgenerator 16 übertragenen Informationen,
um es so zu ermöglichen,
aus diesen Daten einen Datenstrom gemäß der Syntax für den MPEG-Standard
zu erzeugen. Diese Daten werden danach zu dem Pufferspeicher 14 übertragen,
dessen Füllungswert
der Regelschaltung 15 zugeführt wird, die das Quantisierintervall
für die
Koeffizienten der Makroblöcke
zur Regelung der Bitrate steuert.
-
Der
Makroblock der quantisierten Koeffizienten wird zu der Decodierschaltung 9 übertragen,
um so einen rekonstruierten Makroblock zu dem Speicher und Voraussageschaltung 11 zu
liefern, nach der Vereinigung des entsprechenden vorausgesagten
Makroblocks. Die Speicherung dieser Makroblöcke liefert ein rekonstruiertes
Bild. Die rekonstruierten Makroblöcke werden zu dem Bewegungsschätzer 12 übertragen für die Berechnung
der Bewegungsvektoren (MV) für
den laufenden Makroblock des Quellenbilds, wie später anhand
der 4 erläutert
wird. Die von dem Speicher und der Voraussageschaltung empfangenen
Bewegungsvektoren machen es möglich,
den Makroblock in dem rekonstruierten Bild zu ermitteln, der als
vorausgesagter Makroblock für
die Codierung des laufenden Makroblocks dient.
-
Die
Syntax-Erzeugungsschaltung 16 der Codierschaltung 8,
die Auswahlschaltung 7, die Regelschaltung 15 und
die Bewegungsschätzungsschaltung 12 empfangen
die Informationen (ZE) für
die Ausschlussbereiche, die die Bildbereiche sind, in denen es erwünscht ist,
zusätzliche
Informationen einzufügen
oder zu mischen, zum Beispiel ein Logo, eine Ziffer, ein Untertitel
usw..
-
Die
MPEG-Codierung fordert, dass das Bild in Scheiben zerhackt wird,
wobei eine Scheibe eine kontinuierliche Reihe von Makroblöcken ist,
die alle einen Teil derselben horizontalen Reihe von Makroblöcken bilden,
gemäß der MPEG-Definition.
Eine Scheibe besteht daher aus 16 Videozeilen.
-
Einer
Scheibe geht voraus ein Header, der leicht durch einen Decoder identifiziert
wird. In dem Fernseh-Standardformat "50 Hz" werden die 576 Nutzzeilen in 36 Scheiben
aufgeteilt, wobei dann eine Scheibe einer Reihe entspricht, die
sich über
die Breite des Bilds erstreckt. Der Standard macht es auch möglich, eine
feinere Zerhackung durch Definierung mehrer Scheiben in derselben
Reihe durchzuführen,
d. h. über
eine Bildbreite.
-
Es
ist diese Möglichkeit,
die benutzt wird für die
Codierung der Zeilen, von denen ein Teil zu dem Ausschlussbereich
gehört.
Auf diese Weise werden die relevanten Makroblöcke in spezielle Scheiben zusammen
gruppiert, für
die ein Bit zu den Headermarkierungen gehört, eine Tatsache, dass sie
alle im Intra-Modus codiert sind. Somit erzeugt für eine bestimmte
Reihe die Syntax-Erzeugungsschaltung einen Scheibenheader für den ersten,
zu einem Ausschlussbereich gehörenden
Makroblock. Ebenso gehört
der erste Makroblock nicht mehr zu dem Ausschlussbereich. Die Anzahl
der für
eine bestimmte Reihe erzeugten Scheiben ist somit anhängig von
der Anzahl der Ausschlussbereiche in dieser Reihe.
-
Der
Vorgang des Übergangs
einer Scheibe zu einer anderen beim Eintritt in einen Ausschlussbereich
macht es möglich,
sich selbst von der voran gehenden Scheibe zu trennen. Wenngleich
ein Makroblock im Intea-Modus codiert ist, bewirkt eine Abrufung
des DC Koeffizienten des vorangehenden Makroblocks in derselben
Scheibe. Die Codierung dieses Makroblocks ist somit abhängig von
dem vorangehenden Makroblock, außer für den ersten Makroblock jeder
Scheibe. Die Änderung
der Scheibe macht es somit möglich,
sich selbst vollständig
von dem laufenden umgebenden Bild für die Codierung des Ausschlussbereichs
zu trennen. Das ist erforderlich bei der Decodierung des Ausschlussbereichs, wenn
man nur diesen Bereich decodieren will, und bei der Einfügung von
Makroblöcken
entsprechend dem kleinen Bild in dem Ausschlussbereich, wobei diese
Makroblöcke
keine Informationen außerhalb dieses
Bereichs abrufen können.
-
Die
Ausschlussbereiche eines Bilds werden durch eine (in der Figur nicht
dargestellte) Verarbeitungsschaltung in Reihennummern und Makroblocknummern
innerhalb der Reihe umgesetzt (oder Nummern der Makroblöcke in dem
Bild), wie bereits früher erwähnt. Diese
Informationen ZE werden zu der Inter/Intra-Modus-Auswahlschaltung 7 übertragen,
die die Reihen und die Makroblöcke
zählt,
die in der Reihe verarbeitet werden (oder die in dem Bild verarbeiteten
Makroblöcke)
und bewirken die Codierung im Intea-Modus, wenn der laufende empfangene
Makroblock einem Makroblock des Ausschlussbereichs entspricht. Diese
Informationen werden außerdem
zu der Syntax-Erzeugungsschaltung übertragen, die die Erzeugung
einer neuen Schieb in der VLC Codierschaltung für jede Makroblockgruppe triggert,
die zu einem Ausschlussbereich gehört, und dieses erfolgt für jede Reihe.
Diese Informationen werden außerdem
zu der Regelschaltung 15 übertragen. Dadurch kann diese
Schaltung das durch den Quantisierer 8 benutzte Quantisierintervall
auf einen Wert bringen, der unter dem liegt, der durch die Regelschaltung
in Abhängigkeit
von der Füllung
des Pufferspeichers berechnet wird, um so die Auflösung des
Ausschlussbereichs zu verbessern. Das macht es möglich, wenn die zu ersetzenden
kleinen Bilder eine ausgedehntere Codierung haben als die eines
Ausschlussbereichs des Ursprungsbildes, um künstlich die Kosten der Codierung
dieses Ausschlussbereichs zu erhöhen
und dadurch den Ersatz der Makroblöcke in dem Datenstrom erleichtern.
Eine andere Lösung
würde darin
bestehen, die Auflösung
der kleinen Bilder zu verringern, so dass ihre Codierkosten nicht
größer sind
als die der Ausschlussbereiche des Ausgangsbilds. Diese Informationen
werden schließlich
zu dem Bewegungsschätzer übertragen,
um so zu verhindern, dass dieser Bewegungsvektoren wählt, die
in einen Ausschlussbereich gemäß den in 4 explizit
dargestellten Gerät
zeigen.
-
Die
verschiedenen Schaltungen, die die Makroblockzahlen und die Reihenzahlen
für die
Ausschlussbereiche empfangen, sind mit Zählern für die Identifizierung des verarbeiteten
Makroblocks versehen.
-
Die
obige Beschreibung betrifft die Codierung einer Folge von Bildern,
um sie kompatibel zu machen mit der Einfügung von kleinen Bildern in
vorbestimmte Bereiche. Es ist so für einen Benutzer dieser Datenmöglich, die
Daten für
die Ausschlussbereiche zu extrahieren. Das beinhaltet, dass die
zu einer Schiebe gehörenden
Makroblöcke
und die Intra-codiert sind und zur Mischung dieser Daten mit benutzerspezifischen
Daten. Wenn eine einfache Einfügung
und nicht eine Mischung beteiligt ist, ersetzen die spezifischen
Daten die Daten für
die Ausschlussbereiche.
-
Durch
das vorangehend beschriebene Codiergerät ist es möglich, Datenströme (codierte
Bildfolgen) zu erzeugen, in denen die Makroblöcke, die zu dem Ausschlussbereich
gehören,
nur im Intra-Modus codiert werden und in mit "Intra-Scheiben" bezeichneten besonderen Scheiben miteinander
gruppiert sind.
-
Tatsächlich unterliegt
jedes Bild einer Verarbeitung mit einer Codierung nach dem MPEG2-Standard,
ausgenommen für
den Ausschlussbereich. Diese besondere Formung ist für einen
Decoder absolut transparent, zum Beispiel aus der Massenherstellung,
die zum Empfang, Decodierung und Wiedergabe der Bilder gehört.
-
Wenn
andererseits die Existenz eines Ausschlussbereichs in einer komprimierten
Folge bekannt ist, ist es möglich,
die Vorgänge
der Codierung, der Mischung/Einfügung
und der Verarbeitung-Neucodierung nur auf dem Ausschlussbereich
vorzunehmen. Das kann erfolgen mittels eines Berechnungsgeräts vom PC-Typ (Personal Computer),
d. h. durch eine reine Software, da die Decodierung, die Mischung/Einfügung und
die Neucodierung auf einen Ausschlussbereich beschränkt sind,
der immer eine kleine Abmessung hat und nur mit den Informationen für das laufende
Bild codiert wird. Es gibt keine zu berechnende Voraussage oder
Bewegungskompensation.
-
Eine
leicht geänderte
Form des Codiergeräts kann
benutzt werden, wenn die in die Bilder einzufügenden spezifischen Daten vorher
bekannt sind.
-
In
diesem Fall besitzt die Syntax-Erzeugungsschaltung 16 einen
Speicher oder empfängt von
außerhalb
die einzufügenden
spezifischen Daten in der Form von Makroblöcken, die im Intra-Modus codierte
kleine Bilder darstellen. Diese Schaltung bewirkt eine Substitution
in der VLC Codierschaltung der Makroblöcke, die der Intra-Codierung der Ausschlussbereiche
mit denen die kleinen Bilder codierenden Makroblöcken entsprechen. Es ist somit
möglich,
einen Datenstrom direkt mit der Einfügung von kleinen Bildern oder
Logos zu liefern.
-
Die
Codierung der kleinen Bildern in der Form von Makroblöcken von
quantisierten Koeffizienten kann leicht durchgeführt werden, wenn man nicht mehr
in Echtzeit arbeitet, aufgrund einer Softwareverarbeitung (Teil
des Algorithmus der MPEG-Codierung)
der kleinen Bilder in dem Basisband, digital codiert.
-
4 zeigt
eine in dem vorangehend beschriebenen Codiergerät benutzten Bewegungsschätzungseinheit.
-
Ein
Makroblock eines zu codierenden laufenden Bilds oder ein Quellenbild
wird auf einem ersten Eingang der Bewegungsschätzungseinheit 12 empfangen.
Es wird zu dem Eingang einer Schaltung zur Berechnung der Bewegungsvektoren 17 übertragen. Die
Makroblöcke
des Referenzbilds werden an einem zweiten Eingang des Bewegungsschätzers 12 empfangen
und zu dem Eingang einer Transcodierschaltung 18 übertragen.
Diese Schaltung überträgt die transcodierten
Luminanzwerte der Makroblöcke zu
einer Markierschaltung 19 zur Markierung der zu einem Ausschlussbereich
gehörenden
Makroblöcke. Die
Informationen für
die Ausschlussbereiche (ZE) werden an einem dritten Eingang des
Bewegungsschätzers 12 empfangen,
der sie zu einem zweiten Eingang der Markierschaltung 19 überträgt. Diese Markierschaltung
ist mit einem Speicher 20 verbunden. Die Schaltung zur
Berechnung der Bewegungsvektoren ist außerdem mit dem Speicher 20 verbunden.
An seinem Aus gang, der auch der Ausgang des Bewegungsschätzers ist,
liefert sie Bewegungsvektoren (MV) entsprechend jedem Makroblock
des Quellenbilds.
-
Die
Makroblöcke
des Quellenbilds werden durch die Schaltung für die Berechnung der Bewegungsvektoren 17 empfangen.
Das sind die Makroblöcke,
die als Eingang zu dem Codiergerät
von 3 übertragen
werden. Die Makroblöcke
des Referenzbilds sind die Makroblöcke, die durch den Speicher
und die Voraussageschaltung 11 rekonstruiert und übertragen
werden.
-
Die
Werte der durch den Bewegungsschätzer
verarbeiteten Punkte oder Pixel werden normalerweise in acht Bit
dargestellt, d. h. eine Codierung der Luminanzwerte zwischen 0 und
255. Die Makroblöcke
des Referenzbilds werden zu einer Transcodierschaltung 18 übertragen,
die die Codierung der Luminanzwerte auf zwischen 0 und 254 zieht,
zum Beispiel durch Codierung des Werts 255 durch den Wert 254. Das
beeinträchtigt
nicht die Qualität
der Schätzung,
insbesondere weil 255 ein Wert ist, der in den Referenzbildern selten
vorkommt.
-
Die
Luminanzwerte werden somit zu einer Markierschaltung 19 übertragen.
Diese Schaltung empfängt
außerdem
Informationen für
den Ausschlussbereich (ZE) für
das laufende, verarbeitete Bild.
-
Die
Informationen sind zum Beispiel die Scheibenzahl und die Zahl der
Makroblöcke
in dieser Scheibe. Diese Zahlen entsprechen der oberen linken Ecke
des Ausschlussbereichs, und die Zahlen der Scheibe und der in der
unteren rechten Ecke liegenden Makroblöcke. Die Abmessungen des Ausschlussbereichs
oder der Bereiche werden vorher und einmal je Bild auf der Basis
dieser Paare von Zahlen definiert. Der Bereich kann irgendwo in
dem Bild liegen und kann die Gesamtheit oder einen Teil der Größe der Referenzbilder
annehmen.
-
Die
durch die Markierschaltung empfangenen Makroblöcke werden für jede Reihe
gezählt,
und diejenigen, die zu dem Ausschlussbereich gehören, werden auf 255 gebracht.
Tatsächlich
sind nur die einen Makroblock bildenden Luminanzblöcke relevant, wobei
die Bewegungsschätzung
die Chrominanzblöcke
nicht berücksichtigt.
Der Luminanzwert aller diese Blöcke
darstellenden Pixel, d. h. 8 × 8
Werte für
jeden der vier Luminanzblöcke,
werden auf 255 gesetzt. Die derart codierten Luminanzwerte werden
zu einem Referenzbildspeicher 20 übertragen, der die so für jedes
Bild codierten Luminanzwerte speichert. Der Informationsteil für den Ausschlussbereich
wird somit durch diese Luminanzwerte übertragen. Dieser dient dann
als Markierung des Ausschlussbereichs oder der Bereiche.
-
Für jeden
Quellenbildmakroblock, der an dem anderen Eingang des Bewegungsschätzers empfangen
wird, sucht die Schaltung zur Berechung der Bewegungsvektoren in
diesem Bildspeicher 20 oder genauer in einem Suchfenster
des Bilds die mit den Luminanzblöcken
dieses Makroblocks am besten korrelierten Luminanzblöcke, wie
voran gehend erläutert.
-
Wenn
die Korrelations-Berechnungen einen markierten Luminanzblock ermitteln,
wird dieser Block ignoriert. Der unmarkierte Block, der die beste Korrelation
ergibt, wird gewählt.
Wenn alle Blöcke des
Suchfensters zu dem Ausschlussbereich gehören, dann wird der Bewegungsvektor
für den
relevanten Makroblock auf null gesetzt.
-
Natürlich ist
das nur ein Beispiel, die Markierung besteht in einer allgemeineren
Weise in der Durchführung
einer Transcodierung der Luminanzwerte der Makroblöcke durch
Dekrementierung der Werte entsprechend dem maximalen Codierwert
und dann darin, dass die Luminanzwerte der Makroblöcke für diesen
Ausschlussbereich auf dem Maximalwert gesetzt werden.
-
Die
angegebenen Beispiel beschreiben eine Intra-Modus-Codierung der
Makroblöcke
des zu dem Ausschlussbereich gehörenden
Bildes. Die Erfindung ist nicht auf diese besondere Ausführungsform beschränkt. Sie
ist vollständig
vorstellbar zur Codierung dieser Makroblöcke in dem Inter-Modus zusammen
mit Null-Bewegungsvektoren
oder auch in einem bewegungskompensierten Inter-Modus durch Berücksichtigung
der Berechnung der Bewegungsvektoren aus dem Referenzbild, wobei
die Blöcke
zu dem Ausschlussbereich des Referenzbilds gehören. In diesem Fall hat die
Schaltung zur Berechnung der Bewegungsvektoren für einen Block des Ausschlussbereiches
Zugriff zu einem Speicher, der die Blöcke des rekonstruierten Ausschlussbereichs
gespeichert hat. Das Ziel ist es, die Makroblöcke zu codieren, die zum dem
Ausschlussbereich des Bilds insofern gehören, dass sie unabhängig von
dem Rest des Bildes sind.
-
Die
Definition des Ausschlussbereichs kann auf jede Form ausgedehnt
werden, die bei einem spezifischen Verarbeitungselement zu dessen
Verwaltung fähig
sind. Letzteres kann ebenso außerhalb oder
innerhalb des Bewegungsschätzers
liegen.
-
Die
Anwendungen betreffen die Codierung von Bildern, die kompatibel
mit der Einfügung
von Logos oder anderen für
den Benutzer spezifischen kleinen Bildern sind. Sie betreffen außerdem die
Echtzeitcodierung der Einfügungen
enthaltenen Bilder.