3 Grundlagen zur Bildformatkonversion

3 Grundlagen zur Bildformatkonversion

3.1 Überblick

Zur Konversion einer vorhandenen Bildfolge muß aus den vorhandenen Bildern der Originalsequenz eine neue Bildfolge mit einer geänderten Bildwiederholfrequenz generiert werden. Die Aufwärtskonversion geschieht durch eine Erhöhung der Anzahl der Bilder in der konvertieren Bildsequenz. Im weniger gebräuchlichen Fall der Abwärtskonversion wird die Bilderanzahl der Zielsequenz reduziert.

Häufig liegt das ursprüngliche Bildmaterial im Zeilensprung vor, d.h. ein Bild einer Sequenz enthält nur entweder die geraden oder die ungeraden Zeilen des ursprünglichen Bildes. Dadurch kann unter Beibehaltung der Gesamtzeilenzahl über zwei Halbbilder die Bandbreite halbiert werden. Die Rasterlage wechselt dabei von Halbbild zu Halbbild. Daher muß bei der Interpolation von Zeilensprungsequenzen zusätzlich die korrekte Konversion der Halbbilder beachtet werden.

Der Fall der 50 Hz auf 100 Hz Konversion im Zeilensprung ist in Abbildung 3.1 dargestellt. Zwischen zwei Originalbildern muß jeweils ein vollständig neues Bild eingefügt werden.


Abfolge
Abbildung 3.1: Zeitliche Abfolge der Halbbilder zweier Sequenzen

Bei der Bildformatkonversion können drei Fälle auftreten:

  1. Eingangsbild und Ausgangsbild stimmen zeitlich überein und besitzen die gleiche Rasterlage. Deshalb kann das Eingangsbild ohne Änderung direkt in die Zielsequenz übernommen werden. Dies ist bei den Halbbildern An und αn in der Abbildung der Fall.
  2. Die Bilder beider Sequenzen stimmen zwar zeitlich überein, unterscheiden sich aber in der Rasterlage, wie bei den Bildern Bn und γn. Hierbei muß das Zielbild durch eine Uminterpolation in die andere Rasterlage erzeugt werden.
  3. Die Zwischenbilder, in der Abbildung βn und δn, müssen aus den zeitlich vorhergehenden und nachfolgenden Halbbildern der Ausgangsbildfolge komplett neu generiert werden.

Zur Erhöhung der Bildwiederholrate existieren mehrere Möglichkeiten. Einfach realisieren lassen sich die Halbbild- und Vollbildwiederholung. Bei der Halbbildwiederholung wird das gerade dargestellte Halbbild noch einmal in der anderen Rasterlage wiederholt. Dadurch entstehen bei bewegten Objekten Doppelkonturen, d.h. die dargestellte Position stimmt nicht mit dem erwarteten Ort überein. Auch das Detailflimmern bleibt bei dieser Konversionsmethode erhalten.

Die aufwendige Rasteruminterpolation kann durch die Vollbildwiederholung vermieden werden. Weil aber nach einem zeitlich vorausgegangenen Bild wieder ein zeitlich zurückliegendes Bild dargestellt wird, kommt es in kontinuierlich bewegten Bildinhalten zu Sprüngen, die als Ruckeln wahrgenommen werden ("Pilgerschrittrucken").

Eine Formatkonversion von 50 Hz auf 60 Hz erfordert mehr Aufwand. Denn hierbei tritt nämlich erst nach fünf Originalbildern ein zeitgleiches Bild und erst nach zehn Bildern ein zeitgleiches und in derselben Rasterlage liegendes Bild auf. Als einfache Lösung wird ein Bildspeicher mit unterschiedlicher Ein- und Ausleserate verwendet. Dadurch entsteht aber im Ausgabebild ein Kante an der die alte und neue Bewegungsphase aneinanderstoßen ("Joint Line Problematik"). Ursache dafür ist, daß bei der Wiedergabe eines Bildes die benötigten Bildinformationen noch nicht im Videospeicher sind, so daß Teile desselben Bildes noch einmal ausgegeben werden [Blume97]. Dies läßt sich vermeiden, wenn ein neues Bild erst dann dargestellt wird, wenn es komplett im Videospeicher steht. Auch bei dieser Form der Halbbildwiederholung kommt es zu einer ungleichmäßigen Bewegung, da Objekte mehrmals in aufeinanderfolgenden Bildern an der gleichen Position dargestellt werden.

3.2 Bewegungsschätzung

Die bei bewegtem Bildinhalt auftretenden Störungen der bisher beschriebenen Methoden der Formatkonversion können durch die Verwendung einer Bewegungsschätzung wesentlich verringert werden. Eine Bewegungsprädiktion versucht die Bewegung von Objekten in einer Bildfolge zu erkennen. Mit Hilfe der gewonnenen Bewegungsvektoren können die Objekte in den Zwischenbildern bewegungsrichtig abgebildet werden und somit die Bildqualität gesteigert werden.

Zur Vereinfachung können alle Bewegungen in einer Sequenz als Translationen aufgefaßt werden. Auch Rotationen und Größenänderungen der Objekte lassen sich, wenn die Veränderungen zwischen zwei Einzelbildern nicht zu groß sind, durch eine Verschiebung annähern. Damit ist für eine Bewegungsschätzung nur die Ermittlung der Horizontal- und Vertikalbewegungen erforderlich. Weiterhin erfolgt keine Aufteilung in Hintergrund und bewegte Vordergrundobjekte. Dementsprechend wird jedem Bildpunkt ein einzelner Bewegungsvektor mit Horizontal- und Vertikalkomponenten zugeordnet [Tuschen95].

Zur Veranschaulichung eines bewegungsvektorgestützten Verfahrens zur Zwischenbildinterpolation dient Abbildung 3.2. Der Bewegungsschätzer ermittelt aufgrund der unterschiedlichen Positionen des Objektes in beiden Bildern den entsprechenden Bewegungsvektor.


Bewegung
Abbildung 3.2: Bewegungsschätzung

Die Vektorfelder können auf unterschiedliche Arten ermittelt werden. Beim ältesten Verfahren, der Gradientenmethode, werden die Verschiebungsvektoren aus Luminanzänderungen zweier benachbarter Bilder bestimmt. Die sehr rechenintensive Phasenkorrelation erzeugt die Vektorfelder über die Phasendifferenzen der Fouriertransformierten der aufeinanderfolgenden Bilder.

Die bedeutendsten Algorithmen zur Bewegungsschätzung sind Blockmatching-Verfahren. Dabei wird das aktuelle Bild in Blöcke zerlegt und deren verschobene Position im Vergleichsbild gesucht. Die Strecke zu dem Bereich, welcher die größte Übereinstimmung mit dem Ausgangsblock hat, wird zum Bewegungsvektor. Zum Vergleich der Blöcke können "Displaced Frame Difference" (DFD) genannte Fehlerfunktionen verwendet werden. Um die Genauigkeit der Bewegungsschätzung zu steigern, können z.B. die aus den vorausgegangenen Bildern ermittelten Vektorfelder zur Bestimmung der aktuellen Vektoren herangezogen werden (prädiktive Bewegungsschätzung). Ausführliche Beschreibungen verschiedener Verfahren zur Bewegungsschätzung sind in [Blume97] und [Tuschen95] gegeben.

Die Zwischenbildinterpolation ist stark von der Qualität der erzeugten Bewegungsvektorfelder abhängig. Durch eine Erhöhung der Blockgröße wird die Zuverlässigkeit der Bewegungsvektoren erhöht, gleichzeitig wird aber die Auflösung des Vektorfeldes verringert. Um sichtbare Blockstrukturen im interpolierten Bild zu vermeiden, werden die Vektorfelder einer nachträglichen Blockerosion unterzogen. Bei der in dieser Arbeit verwendeten Blockgröße von 8 × 4 Bildpunkten können für bewegte Details falsch prädizierte Vektoren auftreten, da für jeden Block nur ein Vektor ermittelt wird. Ein weiteres Problem stellen periodische Strukturen im Bild dar. Hier können z.B. nicht bewegte Bereiche fälschlich als bewegt interpretiert werden. Zudem ist das der Bewegungsschätzung zugrunde liegende Modell rein translatorischer Bewegungen in natürlichen Sequenzen oft nur näherungsweise zutreffend.

3.3 Bestimmung von Projektionsfaktoren

Nach Erzeugung der Bewegungsvektorfelder stellt sich die Frage, an welche Position das Objekt im interpolierten Bild für eine bewegungsrichtige Darstellung verschoben werden muß. Dazu muß der Vektor entsprechend den zeitlichen Abständen zu den Originalbildern aufgeteilt werden. Dies ist für den Fall einer Bildwiederholratenverdopplung in Abbildung 3.3 dargestellt.


Position
Abbildung 3.3: Bestimmung der Position eines Objektes im interpolierten Bild

Bei einer gleichförmigen Bewegung hat das Objekt genau die halbe Distanz zwischen den beiden Positionen zurückgelegt. Voraussetzung ist eine nicht beschleunigte Translation. Dies kann für kleine zeitliche Intervalle zwischen den Einzelbildern angenommen werden.

Die korrekte Position des Objektes im interpolierten Bild P(i) kann durch eine Vektoraddition des Startpunktes im Ausgangsbild P(A) mit dem projizierten Bewegungsvektor V ermittelt werden:

Formel

Der Projektionsfaktor p ergibt sich dabei aus dem Verhältnis der beiden Bildwiederholfrequenzen.

Aufgrund der Vielzahl verschiedener Systeme mit unterschiedlichen Bildwiederholraten gibt es auch eine große Zahl unterschiedlicher Verhältnisse zwischen Originalbildwiederholfrequenz und Frequenz der zu interpolierenden Sequenz.

In Abbildung 3.4 sind die zeitlichen Positionen der Bilder einiger unterschiedlicher Interpolationsbildfolgen aufgeführt.


Position
Abbildung 3.4: Zeitliche Positionen einiger Interpolationsbildfolgen

Ein Bild in der zu interpolierenden Sequenz liegt immer zwischen zwei Bildern der Originalsequenz. Der Abstand zu den Nachbarbildern in der Ausgangssequenz kann durch das Produkt der Projektionsfaktoren plinks und prechts mit der Länge Torg des Zeitintervalls zwischen zwei Bildern in der Originalsequenz bestimmt werden. Zur Verdeutlichung dient Abbildung 3.5.


Zeitintervall
Abbildung 3.5: Aufteilung des Zeitintervalls zwischen zwei Bildern

Das Produkt kann zur Bestimmung der beiden Projektionsfaktoren umgeschrieben werden:

Formel

Mit

Formel

können die Zeitpunkte, zu denen ein neues Bild beginnt, aus den Bildwiederholfrequenzen forg und fint der Originalsequenz und der Zielsequenz errechnet werden.

Die Zeitpunkte t(j) und t(k) des j-ten Bildes der Originalsequenz und des k-ten Bildes der interpolierten Sequenz ergeben sich somit aus

t(j) = jTorg   und   t(k) = kTint ,   j, kN0.

Daraus ergeben sich in Abhängigkeit von der Nummer des zu interpolierenden Bildes unterschiedliche Projektionsfaktoren.

Da bei bestimmten Bildratenverhältnissen die Bilder der Originalsequenz zwischen den interpolierten Bildern liegen, ist zur Ermittlung der Projektionsfaktoren wichtig, das zum aktuellen Bild gehörende Nachbarbild der Originalsequenz zu kennen. Nach [SchulzeWe99] kann die Nummer des linken Nachbarbildes jlinks durch

Formel

bestimmt werden. Der Operator [x] rundet x auf die nächst kleinere ganze Zahl, schneidet also die Nachkommastellen ab.

Aus den Gleichungen (3.2) bis (3.5) läßt sich nun der linke Projektionsfaktor in Abhängigkeit von der Bildnummer k und den Bildwiederholraten errechnen:

Formel

Damit läßt sich auch der Projektionsfaktor prechts für das rechte Nachbarbild ermitteln [SchulzeWe99]:

prechts(k) = 1 - plinks(k) .

Unter der Annahme daß beide Bildfolgen zum Zeitpunkt t0 = 0 starten, gibt es weitere Zeitpunkte mit zeitgleichen Bildpositionen. Daher ist die maximale Anzahl unterschiedlicher Projektionsfaktoren auf einen Wert kmax begrenzt. Mit der Vorraussetzung positiver Bildwiederholfrequenzen kann kmax wie folgt ermittelt werden [SchulzeWe99]:

Die Funktion ggT(x, y) bestimmt dabei den größten gemeinsamen Teiler der beiden Argumente x und y. Durch Gleichung (3.8) können alle Projektionsfaktoren mittels

Formel,   mit   k = 0, 1, ..., kmax, fint > 0

bestimmt werden.

3.4 Kanaltrennung

Bei der Entwicklung von hochwertigen Konversionsalgorithmen müssen psychovisuelle Grundlagen berücksichtigt werden. Abbildung 3.6 zeigt schematisch die angenäherte Wahrnehmungsgrenze des Auges für eine statische Bildvorlage in der fy-ft-Ebene. Für die fx-ft-Ebene ergibt sich die gleiche Charakteristik. Die Empfindlichkeit der Wahrnehmung nimmt dabei kontinuierlich mit höheren Frequenzen ab. Zusätzlich sind das Spektrum eines stehenden Objektes und das Spektrum bei Bewegung dargestellt [Blume97]. Die Bewegung führt zu einer Scherung des Ruhespektrums. Prinzipiell wandern die hochfrequenten Bildanteile durch die spektrale Scherung in den Bereich geringerer Wahrnehmbarkeit.


Empfindlichkeit
Abbildung 3.6: Örtlich-zeitliche Empfindlichkeit des Auges

Das Auge kann aber in die Bewegung des Objektes einfallen und die Objektbewegung kompensieren, so daß sich wieder ein statischer Bildeindruck ergibt. Diese Nachführungseigenschaft wird auch "Tracking" genannt [WendSchrö91]. Die an das Bewegungsspektrum angepaßte ungefähre Wahrnehmungsgrenze ist in Abbildung 3.7 dargestellt.


Empfindlichkeit
Abbildung 3.7: Örtlich-zeitliche Empfindlichkeit des Auges für eine bewegte Bildvorlage

Für die Interpolation folgt daraus, daß auch bei bewegten Objekten keine Auflösungsreduktion vorgenommen werden darf. Eine weitere Eigenschaft des visuellen Systems ist die "Laterale Hemmung" [Wendland88], die zu einer Erhöhung der Sehschärfe für Detailkontraste im Bild führt. Damit ist für eine korrekte Wahrnehmung des Bildes wichtig, daß Kanten an der richtigen Position dargestellt werden.

Als Modell für die zeitlich-räumliche Auflösung der menschlichen Wahrnehmung kann ein Zwei-Kanal-Modell verwendet werden. Dabei wird das Eingangssignal in einen vertikalen Höhen- und einen vertikalen Tiefenkanal zerlegt [Blume97]. Während der Tiefenkanal eine hohe zeitliche, aber nur eine geringe räumliche Auflösung aufweist, wird für den Höhenkanal eine hohe räumliche, aber niedrige zeitliche Auflösung verwendet. Die durch den Versatz der beiden Signalbänder entstehenden Fehler werden durch die laterale Hemmung kompensiert.

In beiden Kanälen kann also eine unterschiedliche Signalverarbeitung verwendet werden. Im Tiefenkanal wird eine Kante zwar an der richtigen Position dargestellt, dafür aber unscharf abgebildet. Hochfrequente Strukturen werden im Höhenkanal zwar dargestellt, können aber zeitlich verschoben sein.

Die größten Probleme bei der Zwischenbildinterpolation werden durch den Zeilensprung verursacht. Daher erfolgt die Bandaufspaltung in vertikaler Richtung. In [Jostschulte94] wird dazu ein Filter mit cos2-förmigen Frequenzgang und drei Koeffizienten verwendet. Die Bandaufspaltung für den Tiefenkanal wird durch Abbildung 3.8 verdeutlicht. Der Ausgangswert für den Höhenkanal ergibt sich durch den Wert an der aktuellen Bildposition abzüglich des Wertes des Tiefenkanals. Damit sind im Höhenkanal auch negative Werte möglich.


  0,25  
0,5
0,25
Abbildung 3.8: Bandaufspaltung im Tiefenkanal

3.5 Verwendung von Medianfiltern

Die in Abschnitt 3.2 beschriebenen Verfahren zur Bewegungsschätzung liefern gerade bei natürlichen Sequenzen nicht immer exakte Bewegungsvektoren. So kann die geschätzte Position einer Kante von ihrer optimalen Position im Zwischenbild abweichen. Aus diesem Grund müssen zur bewegungsrichtigen Interpolation fehlertolerante Filterkonzepte angewendet werden. In der Vergangenheit haben sich gewichtete Medianfilter als erfolgversprechend erwiesen, da sie Fehler in den Bewegungsvektorfeldern bis zu einem gewissen Schätzfehler korrigieren können.

Medianfilter gehören zur Gruppe der Rangordnungsfilter. Sie sortieren die Werte einer Eingangsfolge der Größe nach und wählen den Ausgangswert in Abhängigkeit von der Ordnungsposition. Für einen Medianfilter wird das mittlere Element der sortierten Eingangssequenz verwendet. Bei einer Folge xi, i = 1, ..., n mit ungerader Länge n gilt [Schröder98]

med(xi) = x(ν+1), n = 2ν + 1

bei gerader Länger der Sequenz

med(xi) = ½(x(ν) + x(ν+1)), n = 2ν

Das Ausgangssignal yi,j eines zwei-dimensionaler Medians wird über

yi, j = med(xi+r, j+s) , (r, s) ∈ A, i, jZ2

definiert. Die Menge A ⊂ Z2 beschreibt hierbei das Filterfenster, welches die benachbarten Bildpunkte des zentralen Pixels (i, j) beinhaltet. Es können rechteckige, kreuzförmige, diamantförmige und andere Filterfenster verwendet werden. Die Bildung eines Medians veranschaulicht Abbildung 3.9.


Median
Abbildung 3.9: Bildung eines Medians

In den bisher beschriebenen Medianfiltern nehmen alle Abtastwerte innerhalb des Filterfensters gleich starken Einfluß auf das Ausgangssignal. Um die Einflußnahme der Werte an bestimmten Positionen des Filterfensters zu erhöhen, werden gewichtete Medianfilter ("Weighted Median", WM) verwendet. Der Ausgangswert yi eines gewichteten Medianfilters wird nach [Schröder98] durch

y(i) = med(w1x1, w2x2, ..., wnxn)

gebildet. Die einzelnen Gewichtungen werden dabei mit wi bezeichnet, während " " für den Vervielfachungsoperator

Formel

steht. Einen Sonderfall stellen zentral gewichtete Medianfilter ("Center Weighted Median", CWM) dar. Hierbei wird nur der Wert des zentralen Pixels stärker als eins gewichtet. Die nachfolgende Abbildung 3.10 dient als Beispiel zur Bildung eines gewichteten zweidimensionalen Medians.


Median
Abbildung 3.10: Bestimmung eines zweidimensionalen gewichteten Medians

Eine wichtige Eigenschaft von Medianfiltern ist, daß Kanten in gefilterten Bildern erhalten bleiben. In Abbildung 3.11 ist die Filterung einer Kante im Vergleich zu einer linearen Mittelwertfilterung dargestellt. Beide Filter verwenden n = 3 Koeffizienten. Offenbar wird der Verlauf der Kante durch die Medianfilterung nicht beeinflußt.


Median
Abbildung 3.11: Medianfilterung und lineare Filterung einer idealen Kante

Die Kompensation von falsch geschätzten Bewegungsvektoren zeigt Abbildung 3.12. Das Zwischenbild wird dabei zeitlich genau in die Mitte der beiden Ausgangsbilder eingefügt. Obwohl sich die Kante mit einer Geschwindigkeit von zwei Pixeln pro Originalbild nach rechts bewegt, hat der Bewegungsschätzer fälschlich einen Nullvektor zurückgeliefert. Trotz des fehlerhaft geschätzten Vektors kann die Kante im Zwischenbild positionsrichtig dargestellt werden.


Interpolation
Abbildung 3.12: Ortsrichtige Interpolation einer Kante trotz falschen Vektors

Abschließend wird in Abbildung 3.13 gezeigt, wie ein Punkt mit Hilfe eines bewegungsvektorgestützten Verfahrens mit Interpolationsfiltern erzeugt wird.


Verfahren
Abbildung 3.13: Vektorgestütztes Verfahren zur Zwischenbildinterpolation


Kapitel2 Zurück Kapitel4