-
Verfahren
zur Bearbeitung von decodierten Bildblöcken eines blockbasierten Verfahrens
zur Bildcodierung Komprimiert man Daten eines Videodatenstroms mit
Codierverfahren, die auf Transformationscodierungen, wie z. B. der
diskreten Cosinustransformation, basieren, entsehen bei Bewegtbildern
bei extrem niedriger Übertragungsrate
von ungefähr
8 bis 112 kbit/s, wie sie für
Mobilfunkanwendungen und Bildtelefonanwendungen vorgesehen sind,
zwangsläufig
Fehler in bestimmten Bildbereichen.
-
Diese äußern sich
in künstlichen
Kanten an Blockrändern,
Rauschstrukturen oder Unschärfen.
Solche Codierfehler wirken für
den Betrachter störend
und verfälschen
den Bildeindruck.
-
Vor
allem künstliche
Kanten an Blockrändern
sind ein Problem, das bei allen blockbasierten Codierungsverfahren
auftritt. Diese künstlichen
Kanten verringern den Qualitätseindruck
des Bildes für
einen Betrachter erheblich.
-
Weitere
Artifakte erscheinen in bewegten Bildbereichen einer Bildfolge,
also eines Videodatenstroms.
-
Aus
der europäischen
Patentanmeldung
EP
0 526 885 A2 ist ein Verfahren zur Verbesserung der Bildqualität bekannt,
bei dem nach der Bilddekomprimierung für die Filterung der Pixel einer
Kante benachbarter Bildblöcke
ein Kantenfilter verwendet wird. Der Kantenfilter wird in Abhängigkeit
von auftretenden Frequenzen beider Bildblöcke bestimmt.
-
Aus
der PCT-Anmeldung WO91/14340 A1 ist ein digitales Bildcodierverfahren
mit einer Blockkantenfilterung bekannt, bei dem Pixel einer Blockkante
benachbarter Blöcke
in Abhängigkeit
von den beiden zugehörigen
Bewegungsvektoren mit einem Kantenfilter gefiltert werden.
-
Aus
der japanischen Patentanmeldung
JP 07170512A ist eine Methode zum Filtern
von Bildblöcken in
Abhängigkeit
von einer Quantisierungsbreite bekannt.
-
Der
Erfindung liegt das Problem zugrunde, die künstlichen Kanten an den Blockrändern von
Bildblöcken
eines blockbasierten Codierverfahrens zu glätten, wobei eine höhere, blockangepasste
Qualität
der Filterung erreicht werden soll, als dies mit den bekannten Verfahren
möglich
ist.
-
Das
Problem wird durch das Verfahren gemäß Patentanspruch 1 gelöst.
-
Ein
Vorteil des erfindungsgemäßen Verfahrens
ist vor allem darin zu sehen, daß der Gesamteindruck eines
Bildes für
einen Betrachter durch Glättung
der künstlichen
Kanten an den Blockrändern
aller Bildblöcke eines
Bildes, das mit einem blockbasierten Bildcodierverfahren codiert
wurde, erheblich verbessert wird.
-
Eine
weitere Verbesserung des Gesamteindrucks wird erreiht, da für jeden
Bildblock ein anderer, den spezifischen Eigenschaften des jeweiligen
Bildblockes angepaßter
Kantenglättungsfilter
verwendet wird.
-
Das
Verfahren bietet den Vorteil, daß nicht nur die Kanten an den
Blockrändern
jedes Bildblockes geglättet
werden, sondern auch die Artifakte in den bewegten Bereichen einer
Bildfolge geglättet
werden.
-
Weiterbildungen
der Erfindung ergeben sich aus den abhängigen Ansprüchen.
-
Ein
bevorzugtes Ausführungsbeispiel
der Erfindung ist in den Zeichnungen dargestellt und wird im folgenden
näher beschrieben.
-
Weiterhin
ist es vorteilhaft, bei der Auswahl unterschiedlicher Kantenglättungsfilter
für unterschiedliche Bildblöcke als
Kriterium die Information über
die Bildqualität,
die unterschiedlich sein kann, zu verwenden. Ein Maß für die Bildqualität ist beispielsweise
in dem Quantisierungsparameter gegeben. Dies ist vom besonderen Vorteil
bei der Übertragung
von Bildtelefonsequenzen mit unterschiedlichen Übertragungsraten, die durch
jeweils unterschiedliche verwendete Bildqualität erreicht wird. Hieran kann
die Auswahl des Kantenglättungsfilters
durch diese Weiterbildung vorteilhaft angepasst werden.
-
Ebenso
ist es vorteilhaft, die Auswahl der Kantenglättungsfilter sowohl abhängig der
verwendeten Bidlqualität
als auch von der Größe des Bewegungsvektors
durchzuführen.
-
Weiterhin
ist es vorteilhaft, bei der Auswahl von Kantenglättungsfiltern für Kanten
zweier Bildblöcke, die
aneinandergrenzen, für
die beiden direkt aneinandergrenzenden Kanten einen gemeinsamen
Kantenglättungsfilter
zu verwenden, der sich ergibt aus dem Kantenglättungsfilter mit maximaler
Filtereigenschaft, die verwendet würden bei unabhängiger Auswahl
der beiden Blöcke.
-
Es
zeigen
-
1 eine
Skizze, in der ein Bildblock dargestellt ist, dessen Pixel am Blockrand
mit einem Kantenglättungsfilter
gefiltert werden;
-
2 eine
Skizze, in der beschrieben ist, wie zusätzlich zu den Pixeln an den
direkten Blockrändern eines
Bildblockes auch weiter innen liegende Pixel eines Bildblockes mit
einem weiteren Kantenglättungsfilter geglättet werden;
-
3 ein
Ablaufdiagramm, das die einzelnen Verfahrensschritte des Verfahrens
gemäß Patentanspruch
1 darstellt;
-
4 ein
Ablaufdiagramm, das die Weiterbildung des Verfahrens durch die Auswahl
eines Kantenglättungsfilters
für jeden
einzelnen Bildblock abhängig
von dem Bewegungsvektor, der dem jeweiligen Bildblock zugeordnet
ist, beschreibt;
-
5 ein
Ablaufdiagramm, daß das
Verfahren bei zusätzlicher
Filterung blockinnerer Pixel mit mindestens einem weiteren Kantenglättungsfilter
darstellt;
-
6a und 6b zwei
Skizzen, in denen mögliche
Koeffizienten zweier geeigneter Kantenglättungsfilter dargestellt sind;
-
7 eine
Darstellung der Übertragungsfunktion
der in den 6a und 6b dargestellten
Kantenglättungsfilter.
-
Anhand
der 1 bis 7 wird das erfindungsgemäße Verfahren
weiter erläutert.
-
Das
Verfahren ist keineswegs auf ein bestimmtes blockbasiertes Bildcodierungsverfahren
beschränkt, schon
gar nicht auf blockbasierte Verfahren, die ausschließlich die
diskrete Cosinustranformation als Transformationscodierung verwenden.
-
Auch
ist dieses Verfahren unabhängig
von der Blockgröße, die
das blockbasierte Verfahren zur Bildcodierung verwendet.
-
Von
Bedeutung ist allein, daß das
Verfahren zur Bildcodierung auf der Verwendung von Bildblöcken basiert.
-
In 1 ist
ein Bildblock BB dargestellt. Der Bildblock BB ist ein kleiner Teil
eines Bildes, das mit einem blockbasiertem Verfahren zur Bildcodierung
codiert wurde.
-
Vor
einer im weiteren beschriebenen Filterung des Bildblocks BB wird
der Bildblock BB gespeichert 1.
-
Blockbasierte
Verfahren zur Bildcodierung sind z. B. MPEG, JPEG, H.261, oder H.263
(Ming Liou, Overview of the px64 kbit/s Video Coding Standard, Communications
of the ACM, Vol. 34, No. 4, S. 60-63, April 1991, 1991; G. Wallace,
The JPEG Still Picture Compression Standard, Communications of the
ACM, Vol. 34, No. 4, S. 31-44, April 1991, 1991; S. Okubo et al,
International Standardization on Picture Coding, IEEE Transactions,
Vol. E 74, No. 3, S. 533-538, März
1991, 1991; D. Le Gall, The A Video Compression Standard for Multimedia
Applications, Communications of the ACM, Vol. 34, No. 4, S. 47-58,
April 1991, 1991).
-
Das
Verfahren ist jedoch nicht auf die vorgenannten blockbasierten Verfahren
zur Bildcodierung beschränkt,
da das erfindungsgemäße Verfahren
auf jedes blockbasierte Bildcodierungsverfahren angewendet werden
kann.
-
Jeder
Bildblock BB weist n × n
Pixel (Bildpunkte, Picture Elements) auf, wobei die Anzahl n der
Pixel, die der Bildblock BB aufweist, eine beliebig natürliche Zahl
ist.
-
Bei
Verwendung beispielsweise des MPEG-Verfahrens ist die Blockgröße, also
die Anzahl n von Bildpunkten, die der Bildblock BB aufweist, 8.
-
Künstliche
Kanten entstehen, wie oben beschrieben, vor allem an den Blockrändern des
Bildblockes BB. Die Blockränder
werden bei dem Bildblock BB durch Kantenpixel KP gebildet.
-
Diese
Kantenpixel KP einer Kante K werden mit einem Kantenglättungsfilter
KGF gefiltert, um die Kanten K zu glätten 2.
-
Der
Kantenglättungsfilter
KGF ist in seiner Struktur keinen Einschränkungen unterworfen, kann also einen
beliebigen Aufbau besitzen.
-
Wichtig
ist nur, daß der
Kantenglättungsfilter
KGF die Eigenschaft besitzt, Kanten K zu glätten. Mögliche Filterstrukturen TP1
und TP2, die als Kantenglättungsfilter
KGF verwendet werden können,
sind in den 6a und 6b und
in 7 in Form einer Übertragungsfunktion H(f) abhängig von
einer Frequenz f dargestellt.
-
Die
dargestellten Tiefpaßfilter
schränken
jedoch die allgemeine Verwendbarkeit keineswegs ein, sie sollen
nur verdeutlichen, welche Art von Filter beispielsweise als Kantenglättungsfilter
KGF verwendet werden können.
-
Wie
oben dargestellt ist, ist jede Art von Filter als Kantenglättungsfilter
KGF verwendbar, wenn der verwendete Filter die Eigenschaft der Kantenglättung einer
Kante K aufweist.
-
Das
in 6a dargestellte Filter TP1 weist folgende Koeffizienten
auf
C1 = 0,237
C2 = 0,526
C3 = 0,237.
-
Das
in 6b dargestellte Filter TP2 weist folgende Koeffizienten
auf:
C1 = 0,073
C2 = 0,252
C3 = 0,351
C4 = 0,252
C5
= 0,073.
-
Auch
die Filterstruktur ist für
das erfindungsgemäße Verfahren
nicht von grundlegender Bedeutung. Es können sowohl lineare als auch
nichtlineare Filter als Kantenglättungsfilter
KGF verwendet werden, wenn der verwendete Filter eine Kante K glättet.
-
Wenn
eine wie in 6a dargestellte lineare, eindimensionale
Filtermaske verwendet wird, ist es vorteilhaft, die Filtermaske
FM in der Weise über
die zu filternden Kantenpixel KP zu führen, daß die Filtermaske FM senkrecht
zu der zu filternden Kante K geführt
wird.
-
Wenn
eine zweidimensionale Filtermaske als Kantenglättungfilter KGF verwendet wird,
ist bei der Dimensionierung des Kantenglättungsfilters KGF darauf zu
achten, daß die
Eigenschaft der Kantenglättung
der Kante K erhalten bleibt.
-
Die
in den 6a und 6b und
in 7 dargestellte Dimensionierung der Filter, die
als Kantenglättungfilter
KGF verwendet werden können,
hat sich in Experimenten als vorteilhaft herausgestellt.
-
Eine
andere Dimensionierung der Filter als Kantenglättungsfilter KGF ist jedoch
ohne weiteres für
jeden Fachmann möglich
und wird über
Experimente, die den subjektiven Eindruck, den ein gefiltertes Bild
für einen
Betrachter hervorruft, experimentell angepaßt.
-
Es
ist ebenso möglich,
wie in 2 dargestellt, nicht nur die direkt an der Kante
K liegenden Kantenpixel KP zu filtern, sondern außerdem auch
weiter in dem Bildblock BB liegende Kanteninnenpixel KIP mit einem
zweiten Kantenglättungsfilter
KGF 2 zu filtern. Der zweite Kantenglättungsfilter KGF2 kann, muß aber nicht
derselbe Kantenglättungsfilter
KGF sein, der zur Filterung der Kantenpixel KP verwendet wird.
-
Bei
der Auswahl des zweiten Kantenglättungsfilters
KGF2 ist darauf zu achten, daß die
Filterung der Kanteninnenpixel KIP nicht zu stark wird, wodurch
die Detailinformtion des Bildes, die vor allem in den inneren Pixeln
des Bildblockes BB „liegt", „verwischt" werden könnte.
-
Die
im vorigen beschriebene Vorgehensweise, Kantenpixel KP oder zusätzlich auch
die Kanteninnenpixel KIP zu filtern, wird für jeden Bildblock BB eines
Bildes durchgeführt.
-
Um
den durch zusätzliche
Artifakte, die durch Bewegung eines Bildbereichs entstehen, verschlechterten
Bildeindruck für
einen Betrachter des Bildes zu verbessern, kann die Bewegungsinformation,
die bei blockbasierten Verfahren für jeden Bildblock BB in Form
eines Bewegungsvektors BV, der ebenso wie der Bildblock BB gespeichert
wird 3, vorhanden ist, vorteilhaft für das Verfahren verwendet werden.
-
Als
Faustregel kann man sagen, daß,
je stärker
die Bewegung eines Bildbereiches innerhalb einer Bildfolge ist,
also je größer der
Bewegungsvektor BV für
den jeweiligen Bildblock BB ist, desto stärker ist die Kante K des Bildblockes
BB zu er kennen. Diese Kante K hat, wie im vorigen beschrieben, einen
störenden Einfluß auf den
Gesamteindruck für
den Betrachter eines Bildes.
-
Dieser
Verstärkung
der Kante K durch Bewegung von Bildbereichen kann dadurch entgegengewirkt werden,
daß der
Kantenglättungsfilter
KGF für
jeden Bildblock BB neu ausgewählt
wird abhängig
von der Größe des Bewegungsvektors
BV 4.
-
Die
Auswahl des Kantenglättungsfilters
KGF folgt der „Faustregel":
Je größer der
Bewegungsvektor BV ist, desto stärker
ist die Filtereigenschaft des zu verwendenden Kantenglättungsfilters
KGF für
den jeweiligen Bildblock BB.
-
In
der im folgenden dargestellten Tabelle ist eine mögliche Zuordnung
der Größe des Bewegungsvektors
BV für
einen Bildblock BB und dem für
den Bildblock BB zu verwendenden Kantenglättungsfilters KGF dargestellt.
-
-
Die
entsprechenden Filter TP1 und TP2 sind mit ihren charakteristischen Übertragungsfunktion
H(f) in 7 dargestellt.
-
Die
dargestellten Werte für
den Bewegungsvektor BV schränken
jedoch die Allgemeingültigkeit
der Verwendung der oben beschriebenen Faustregel nicht ein, sondern
beschreiben nur eine mögliche
Lösung
unter vielen, die durch Experimente gefunden wurden.
-
Jede
andere Zuordnung, ist jedoch dem Fachmann bekannt und kann ohne
weiteres verwendet werden.
-
Wichtig
ist hierbei nur, daß bei
der Weiterbildung des Verfahrens durch Auswahl eines Kantenglättungfilters
KGF für
jeden Bildblock BB die Möglichkeit
besteht, die Auswahl des zu verwendenden Filters abhängig zu
machen von der Größe des Bewegungsvektors
BV, wodurch der Verstärkung
der Kanten K durch Bewegung in zeitlich aufeinanderfolgenden Bildbereichen
entgegengewirkt wird.
-
Die
Auswahl unterschiedlicher Filter abhängig von dem Bewegungsvektor
BV als Kantenglättungsfilter KGF
für jeden
Bildblock BB 5 kann selbstverständlich auch bei der Auswahl
des zweiten Kantenglättungsfilters KGF2
bei der Weiterbildung des Verfahrens, das in 2 dargestellt
ist, angewendet werden.
-
Die
Auswahl verschiedener Kantenglättungsfilter
KGF muß jedoch
nicht für
jeden Bildblock geschehen, sondern kann z. B. auch für einen
Makroblock MB, der mehrere Bildblöcke BB aufweist, geschehen,
oder aber auch einzeln für
jede Kante K des Bildblocks BB 6.
-
In
einer Weiterbildung des Verfahrens erweist es sich als vorteilhaft,
die Auswahl unterschiedlicher Filter als Kantenglättungsfilter
KGF über
die bei der Übertragung
verwendete Bildqualität
zu steuern. Durch diese Vorgehensweise ist es möglich, daß die Auswahl der Kantenglättungsfilter
KGF automatisch angepaßt
wird an eine möglicherweise
sich verändernde
Bildqualität
durch Änderung
der Übertragungsraten.
-
Information über die
verwendete Bildqualität
eines zu decodierenden Bildes wird bei blockbasierenden Verfahren überlicherweise
in einem Quantisierungsparameter Q angegeben. Mit dem Quantisierungsparameter
Q wird angegeben, mit welcher Graustufenauflösung die Werte des jeweiligen
Bildblocks BB nach erfolgter Durchführung einer Codierungstransformation
bei der Codierung, übertragen
werden.
-
Für den bekannten
Bildtelefonstandard H.263 bedeutet ein Wert des Quantisierungsparameters
Q = 1 die höchstmögliche Auflösung der
Graustufen und ein Wert des Quantisierungsparameters Q = 31 die niedrigstmögliche Auflösung der
Graustufen.
-
Damit
gibt der Quantisierungsparameter Q direkt Aufschluß über die
Qualität
eines beim Empfänger dargestellten
Bildblocks BB. Die Auswahl des Kantenglättungsfilters KGF für jeden
Bildblock BB wird nun abhängig
von dem Quantisierungsparamter Q gesteuert. Hierbei wird die Stärke des
verwendeten Tiefpaßfilters TP
erhöht
mit der Verringerung der Graustufenauflösung des Bildes, also für den Bildtelefonstandard
H.263 mit wachsendem Quantisierungsparameter Q. Es hat sich beispielsweise
folgende Steuerkurve für
die Auswahl des zu verwendenden Kantenglättungsfilters KGF als vorteilhaft
herausgestellt, welche jedoch in keinster Weise die Allgemeingültigkeit
des oben beschriebenen Prinzips einschränkt: Bei einem Wert des Quantisierungsparameters
Q, der zwischen 1 und 7 liegt, wird keine Filterung durchgeführt. Liegt
der Wert des Quantisierungsparameters Q zwischen 7 und 14, wird
ein schwacher Tiefpaßfilter,
beispielsweise mit den folgenden Koeffizienten verwendet, wobei
der schwache Tiefpaßfilter
die Struktur des in 6a dargestellten Filters aufweist:
C1
= 0,25
C2 = 0,5
C3 = 0,25
-
Weist
der Quantisierungsparameter Q einen Wert auf, der zwischen 14 und
23 liegt, wird ein mittlerer Tiefpaßfilter verwendet, dessen Struktur
gleich ist des ersten Tiefpaßfilters
TP1, der in 6a dargestellt ist. Die drei
Koeffizienten des mittleren Tiefpaßfilters ergeben sich vorteilhafterweise
zu:
C1 = 0,3333
C2 = 0,3333
C3 = 0,3333
-
Liegt
der Wert des Quantisierungsparameter Q zwischen 23 und dem maximalen
Wert 31, so wird ein starker Tiefpaßfilter verwendet, der 9 Koeffizienten
aufweist. Die Struktur des verwendeten starken Tiefpaßfilters
ist entsprechend dem in 6b dargestellten
Tiefpaßfilter,
jedoch erweitert um jeweils einen Koeffizienten auf jeder Seite.
Die Koeffizienten ergeben sich beispielsweise zu:
C1 = 0,015
C2
= 0,063
C3 = 0,129
C4 = 0,188
C5 = 0,211
C6
= 0,188
C7 = 0,129
C8 = 0,063
C9 = 0,015
-
Weiterhin
erweist es sich als vorteilhaft, als Auswahlkriterium für den zu
verwendenden Kantenglättungsfilter
KGF eine Kombination der Bildqualität und der Größe des Bewegungsvektors
BV zu verwenden.
-
Bei
dieser Weiterbildung des Verfahrens erweist es sich bei einem Wert
des Bewegungsvektors BV = 0 als vorteilhaft, daß der sich nach der im vorigen
beschriebenen Auswahl nach der Bildqualität ergebende zu verwendende
Filtertyp um eine Stärke
eines Filtertyps verringert wird. Dies bedeutet beispielsweise bei
einer Auswahl eines mittleren Tiefpaßfilters ausschließlich abhängig von
der Bildqualität,
also von dem Quantisierungsparameter Q, daß bei einem Bewegungsvektor
BV mit dem Wert 0 anstatt des mittleren Tiefpaßfilters ein schwacher Tiefpaßfilter
verwendet wird.
-
Weist
der Bewegungsvektor BV einen Wert auf, der zwischen 0 und 10 liegt,
wird die Auswahl des Kantenglättungsfilters
KGF ausschließlich
abhängig
von dem Quantisierungsparameter Q getroffen.
-
Weist
der Bewegungsvektor BV einen Wert größer als 9 auf, wird die Stärke des
Filtertyps, der sich allein aus dem Quantisierungsparameter Q ergibt,
um 1 erhöht.
Dies bedeutet beispielsweise bei einer Verwendung eines schwachen
Tiefpaßfilters
abhängig
von dem Quantisierungsparameter Q, würde bei einem Bewegungsvektor
BV > 9 ein mittlerer
Tiefpaßfilter
verwendet werden.
-
Weiterhin
ist es vorteilhaft, bei Kanten zweier Bildblöcke, die direkt aneinandergrenzen,
denjenigen Kantenglättungsfilter
KGF zur Filterung dieser beiden direkt aneinandergrenzen den Kanten
zu verwenden, der die stärktste
filternde Eigenschaft aufweist von den Kantenglättungsfiltern KGF, die für die zwei
Kanten, die direkt aneinander grenzen, ausgewählt wurden, als die beiden
Kanten unabhängig
voneinander betrachtet wurden.