Algorithmen der Videosignalverarbeitung: Optimierung durch ...
Algorithmen der Videosignalverarbeitung: Optimierung durch ...
Algorithmen der Videosignalverarbeitung: Optimierung durch ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
VIDEOSIGNAL-ALGORITHMEN<br />
H. BLUME, O. FRANZEN, H. SCHRÖDER, FKTG<br />
<strong>Algorithmen</strong> <strong>der</strong><br />
<strong>Videosignalverarbeitung</strong>:<br />
<strong>Optimierung</strong> <strong>durch</strong> Evolutionsstrategien<br />
In multimedialen Anwendungen werden<br />
heute eine Vielzahl von <strong>Algorithmen</strong> zur<br />
Verbesserung <strong>der</strong> Bild- und Tonqualität<br />
verwendet. Diese <strong>Algorithmen</strong> müssen<br />
optimal an die audiovisuellen Eigenschaften<br />
<strong>der</strong> menschlichen Wahrnehmung<br />
angepaßt werden. Die menschliche<br />
Wahrnehmung weist aber viele<br />
nichtlineare Eigenschaften auf, die keine<br />
analytische Beschreibung erlauben.<br />
Daher werden beim <strong>Algorithmen</strong>entwurf<br />
und <strong>der</strong> <strong>Algorithmen</strong>optimierung häufig<br />
heuristische Methoden o<strong>der</strong> stark vereinfachte<br />
Signalmodelle eingesetzt.<br />
Das stellt eine starke Einschränkung<br />
dar, die dazu führt, daß <strong>Algorithmen</strong><br />
häufig mit suboptimalen Parameterkonfigurationen<br />
verwendet werden.<br />
In diesem Beitrag soll ein neuer Ansatz<br />
zur <strong>Optimierung</strong> multimedialer Anwendungen<br />
und hier insbeson<strong>der</strong>e von <strong>Algorithmen</strong><br />
aus dem Bereich <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
auf <strong>der</strong> Basis von Evolutionsstrategien<br />
vorgestellt und seine<br />
Wirksamkeit anhand einiger Beispiele<br />
belegt werden. Es wird hervorgehoben,<br />
daß <strong>Optimierung</strong>spotentiale und Anwendungsbereiche<br />
in vielen Aufgabenstellungen<br />
existieren. Dabei werden insbeson<strong>der</strong>e<br />
Beispiele aus <strong>der</strong> Nachverarbeitung<br />
von Videosignalen mit dem Ziel<br />
<strong>der</strong> Bildqualitätsverbesserung diskutiert.<br />
H. Blume, O. Franzen, Prof. Dr.-Ing. H. Schrö<strong>der</strong>,<br />
Universität Dortmund, Lehrstuhl für Nachrichtentechnik,<br />
AG Schaltungen <strong>der</strong> Informationsverarbeitung<br />
1. <strong>Optimierung</strong> mit <strong>Algorithmen</strong><br />
<strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
TV, HDTV<br />
Computer<br />
Text, Graphik<br />
Digital-Video<br />
CD-ROM<br />
zeitliche<br />
Aufwärtskonversion<br />
Decodierung<br />
Multimedia-Terminal<br />
Ein mo<strong>der</strong>ner Multimedia-Arbeitsplatz<br />
erfor<strong>der</strong>t eine Vielzahl von <strong>Algorithmen</strong><br />
zur <strong>Videosignalverarbeitung</strong>. Im Bild 1<br />
ist erkennbar, daß zum Beispiel verschiedene<br />
Eingangsformate (TV-Signale,<br />
Graphiken, Texte, usw.) für verschiedene<br />
Wie<strong>der</strong>gabedisplays (Zeilensprungmonitore,<br />
progressive LC-Displays,<br />
Projektoren usw.), die alle unterschiedliche<br />
örtlich-zeitliche Eigenschaften<br />
haben, aufbereitet werden müssen.<br />
Hierzu sind diverse <strong>Algorithmen</strong> zur<br />
Formatkonversion erfor<strong>der</strong>lich.<br />
Weiterhin gibt es aber auch eine große<br />
Zahl von <strong>Algorithmen</strong>, die <strong>der</strong> Nachbearbeitung<br />
und Bildqualitätsverbesserung<br />
<strong>der</strong> Videosignale dienen (Rauschreduktion,<br />
Kantenversteilerung, MPEG-<br />
Artefaktreduktion usw.).<br />
Zwei dieser <strong>Algorithmen</strong>, die in einer<br />
Feature-Box erfor<strong>der</strong>lich sind, seien<br />
hier kurz vorgestellt.<br />
Ein wichtiges Anwendungsbeispiel stellt<br />
eine Proscan-Konversion dar, bei <strong>der</strong><br />
für die Zeilensprungsignale eines TV-<br />
Signals die fehlenden Zwischenzeilen<br />
berechnet werden, um eine progressive<br />
Bildwie<strong>der</strong>gabe zu ermöglichen. Dieses<br />
auch als De-Interlacing bekannte Verfahren<br />
ist zum Beispiel für eine Darstellung<br />
von TV-Signalen auf LC-Projektoren<br />
bzw. LC-Displays erfor<strong>der</strong>lich, weil<br />
diese Displays keine Zeilensprung-Darstellung<br />
erlauben. Bild 2 verdeutlicht<br />
diese Aufgabenstellung.<br />
Bei einer Proscan-Konversion sind insbeson<strong>der</strong>e<br />
zwei Probleme zu lösen:<br />
Bewegungsschätzung<br />
Bild 1. Feature-Box in einem Multimedia-Terminal<br />
Proscan<br />
Konversion<br />
Nachverarbeitung,<br />
Kantenversteilerung,<br />
Rauschreduktion<br />
usw.<br />
Codierung<br />
Eingangsformate<br />
Videokonferenz<br />
Bildtelefon<br />
Ausgangsformate<br />
CRT/LCD<br />
DMD<br />
Display<br />
Zeilensprung/<br />
progressiv<br />
50/70/100 Hz<br />
digitale<br />
Übertragung /<br />
Speicherung<br />
FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998 43
VIDEOSIGNAL-ALGORITHMEN<br />
Vollbildfolge<br />
(progressiv)<br />
Halbbildfolge<br />
(Zeilensprung)<br />
• Vertikal hochfrequente Bildanteile<br />
müssen so interpoliert werden, daß<br />
sie im progressiven Ausgangsbild erhalten<br />
bleiben (zum Beispiel die Rä<strong>der</strong>,<br />
die Straße, <strong>der</strong> Horizont).<br />
• Bei einer Bewegung von Objekten im<br />
Bild dürfen keine zerrissenen Kanten<br />
(Zähnchenbildung) <strong>durch</strong> das Zusammenschieben<br />
von Bildinformationen<br />
zweier aufeinan<strong>der</strong>folgen<strong>der</strong><br />
Halbbil<strong>der</strong> entstehen (zum Beispiel<br />
innerhalb des bewegten Wagens).<br />
ausgetastete Halbbildzeile<br />
Bild 2. Aufgabenstellung bei einer Proscan-Konversion<br />
aktive Halbbildzeile<br />
Bild 3. Beispiel zur Proscan-Konversion: links, fehlerbehaftete statische Proscan-Konversion,<br />
rechts, ideale vektorgestützte Proscan-Konversion<br />
0 10 20 30 40<br />
A n<br />
→<br />
→<br />
1 1<br />
s′ = ⋅V<br />
s′<br />
= ⋅<br />
AnB<br />
V<br />
2 n 2 BnAn+1<br />
Bild 3 stellt die Problematik einer Proscan-Konversion<br />
an einem Bildbeispiel<br />
(Ausschnitt aus <strong>der</strong> Sequenz „Train“)<br />
dar. Im Bild 3 (links) ist eine fehlerbehaftete<br />
statische Proscan-Konversion (das<br />
heißt ohne Verwendung von Bewegungsvektoren)<br />
dargestellt. Erkennbar<br />
ergeben sich Zähnchenstrukturen an<br />
den Kanten des bewegten Wagons. Bei<br />
<strong>der</strong> im Bild 3 (rechts) dargestellten idealen<br />
vektorgestützten Proscan-Konversion<br />
ergeben sich demgegenüber keinerlei<br />
Bewegungsstörungen an den Kanten.<br />
Ein weiteres Anwendungsbeispiel ist<br />
eine örtlich zeitliche Formatkonversion,<br />
bei <strong>der</strong> aus einer Ausgangssequenz<br />
eine Bildsequenz mit einem an<strong>der</strong>en<br />
örtlich-zeitlichen Abtastraster gebildet<br />
werden muß. Ein Beispiel dafür ist eine<br />
empfängerseitige Zwischenbildinterpolation<br />
von 50 Hz Zeilensprung auf<br />
100 Hz Zeilensprung, wie sie in hochqualitativen<br />
TV-Empfängern eingesetzt<br />
wird, um systemimmanente Artefakte<br />
wie das 50-Hz-Großflächenflimmern<br />
o<strong>der</strong> das 25-Hz-Kantenflackern zu reduzieren<br />
[2]. Das Prinzip solch einer<br />
Zwischenbildinterpolation ist im<br />
Bild 4 dargestellt. Aus jeweils zwei Originalbil<strong>der</strong>n<br />
(A n , B n ) müssen bei einer<br />
100-Hz-Zwischenbildinterpolation vier<br />
Bil<strong>der</strong> α n , n, n, n) berechnet werden.<br />
s= ∆x<br />
B n<br />
s= ∆x<br />
A n+1<br />
α n s= ∆x<br />
γ s´ β n<br />
n s´<br />
δ n s= ∆x<br />
α n+1<br />
Bild 4. Problemstellung bei einer zeitlichen Zwischenbildinterpolation<br />
t [ms]<br />
50 Hz<br />
100 Hz<br />
Die wichtigsten Punkte, die beim Design<br />
eines geeigneten Algorithmus zur<br />
Zwischenbildinterpolation berücksichtigt<br />
werden müssen, sind wie<strong>der</strong> <strong>der</strong> Erhalt<br />
<strong>der</strong> vollen örtlichen Auflösung sowie<br />
eine gute Bewegungsdarstellung.<br />
Hochqualitative Verfahren bieten deshalb<br />
meist eine Bewegungskompensation<br />
[2]. Es gibt sehr viele Bereiche, in denen<br />
eine Proscan-Konversion (für LCo<strong>der</strong><br />
DMD-Displays) bzw. eine Zwischenbildinterpolation<br />
(Studiobereich,<br />
TV-Empfänger, TV-Karten im Computerbereich<br />
usw.) erfor<strong>der</strong>lich ist. Der<br />
Entwicklung optimaler <strong>Algorithmen</strong><br />
kommt daher eine große Bedeutung zu.<br />
Ziel dieser <strong>Algorithmen</strong> ist es jeweils<br />
eine optimale Bildqualität zu erreichen,<br />
die sich zum Beispiel in einer optimalen<br />
Bildschärfe, Detailauflösung, Aliasunterdrückung<br />
usw. ausdrückt. Gerade<br />
diese Anfor<strong>der</strong>ungen liefern dabei aber<br />
häufig unterschiedliche Ergebnisse bezüglich<br />
<strong>der</strong> zu optimierenden <strong>Algorithmen</strong>parameter.<br />
Weitere Probleme stellen<br />
sich <strong>durch</strong> die Größe des zu optimierenden<br />
Parameterraums. Betrachtet<br />
man zum Beispiel einen Blockmatching-Algorithmus<br />
zur Bewegungsschätzung<br />
[7], so sind dies sowohl die<br />
Grundparameter<br />
• Blockgröße,<br />
• Unterabtastfaktor,<br />
• Suchbereichsgröße,<br />
• Suchreihenfolge,<br />
• Frequenzgang <strong>der</strong> Vorfilter,<br />
als auch komplexere Parameter, die die<br />
verwendete Suchstrategie betreffen<br />
(Anzahl von Suchschritten, Prädiktorpositionen<br />
usw. [7]).<br />
Alleine dieses Beispiel verdeutlicht<br />
schon die Vielzahl <strong>der</strong> freien Parameter.<br />
Je komplexer eine Signalverarbeitung<br />
wird, desto schwieriger gestaltet sich<br />
<strong>der</strong>en <strong>Optimierung</strong>, da die einzelnen<br />
Parameter bei einer Kaskadierung von<br />
einzelnen Signalverarbeitungsstufen<br />
(zum Beispiel vektorgestützte Signalverarbeitung<br />
als nachfolgen<strong>der</strong> Schritt<br />
einer Bewegungsschätzung) nicht unabhängig<br />
voneinan<strong>der</strong> sind und somit<br />
jeweils das Gesamtsystem mit all seinen<br />
Parametern betrachtet und optimiert<br />
werden muß.<br />
Es ergibt sich die Frage nach <strong>der</strong> Bewertung<br />
einer Parametereinstellung eines<br />
Algorithmus. Hier können verschiedene<br />
Ansätze verfolgt werden.<br />
• Eine Möglichkeit besteht darin, ein<br />
mathematisches Modell zu bilden<br />
44 FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998
VIDEOSIGNAL-ALGORITHMEN<br />
und den zu untersuchenden Algorithmus<br />
anhand dieses Modells zu optimieren<br />
bzw. die Parametereinstellung<br />
anhand dieses Modells zu überprüfen<br />
(zum Beispiel Bildsignal als<br />
Markov-Prozeß 1. Ordnung, Bildpunkte<br />
als statistisch voneinan<strong>der</strong><br />
unabhängig annehmen usw.). Zu dieser<br />
Betrachtungsweise gehört auch<br />
die Analyse an Modellsignalen (deterministische<br />
Analyse). Der Nachteil<br />
dieser Vorgehensweise ist, daß die<br />
Bildmodelle die Realität nur bedingt<br />
beschreiben.<br />
• Eine weitere Methode ist die <strong>Optimierung</strong><br />
eines Algorithmus anhand<br />
realer Testsequenzen und objektiver<br />
Bewertungsmaßstäbe. Ein Beispiel<br />
für ein objektives Bewertungsmaß ist<br />
<strong>der</strong> Störabstand des bearbeiteten<br />
Bildes, gemessen als SNR (Signal to<br />
Noise Ratio) bzw. PSNR (Peak<br />
SNR), <strong>der</strong> die subjektiv wahrgenommene<br />
Bildqualität allerdings nur annähernd<br />
beschreibt. Eine Vielzahl<br />
von Arbeiten beschäftigt sich mit <strong>der</strong><br />
Problematik, objektive Bewertungsmaßstäbe<br />
(Gütemaße) zu bestimmen,<br />
die die subjektive Wahrnehmung<br />
möglichst gut in ein objektives<br />
Maß umsetzen (Subjectve Mean<br />
Square Error [6] usw.). <strong>Optimierung</strong>smethoden<br />
unter Verwendung<br />
realen Bildmaterials und eines objektiven<br />
Gütemaßes erfor<strong>der</strong>n umfangreiche<br />
Simulationen. Ihre Nachteile<br />
liegen in einer oft heuristischen Parametereinstellung.<br />
• Da die objektiven Bewertungsmaße<br />
die reale subjektive menschliche<br />
Wahrnehmung mit ihren vielen nichtlinearen<br />
Eigenschaften aber nicht<br />
gänzlich beschreiben können, werden<br />
im Bereich <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
weiterhin subjektive Tests<br />
<strong>durch</strong>geführt. Hierbei muß eine Probandengruppe<br />
die Ergebnisse verschiedener<br />
<strong>Algorithmen</strong> bzw. verschiedener<br />
Parametereinstellungen<br />
eines Algorithmus vergleichen und<br />
bewerten. Je<strong>der</strong> Teilnehmer solcher<br />
Testserien wird beurteilen können,<br />
wie aufwendig solch eine Vorgehensweise<br />
ist.<br />
Wie im Bild 5 erkennbar, ergibt sich für<br />
eine <strong>Optimierung</strong> ein Ablauf, bei dem<br />
nach <strong>der</strong> Bewertung einer Parametereinstellung<br />
(objektiv o<strong>der</strong> subjektiv)<br />
eine Rückkopplung erfor<strong>der</strong>lich ist, bei<br />
<strong>der</strong> <strong>der</strong> <strong>Algorithmen</strong>entwickler heuristisches<br />
Vorwissen über das zu optimierende<br />
Problem einbringen kann.<br />
Algorithmus<br />
Rückkopplung<br />
Güteberechnung<br />
Betrachtet man komplexe <strong>Algorithmen</strong><br />
wie zum Beispiel eine Bewegungsvektorschätzung<br />
in Kombination mit einer<br />
vektorgestützten Nachverarbeitung, so<br />
enthält dieser Gesamtkomplex an <strong>Algorithmen</strong><br />
eine Unzahl freier zu optimieren<strong>der</strong><br />
Parameter, <strong>der</strong>en gegenseitige<br />
Abhängigkeiten zum Teil unüberschaubar<br />
sind. Daher bietet es sich an, ein automatisiertes<br />
<strong>Optimierung</strong>sverfahren<br />
anzuwenden, das es zumindest gestattet,<br />
eine <strong>Optimierung</strong> bezüglich <strong>der</strong> objektiven<br />
Bewertungsmaße vorzunehmen.<br />
Diese so gefundenen Lösungen<br />
können dann in subjektiven Tests weiter<br />
verifiziert werden. Für einen automatisierten<br />
<strong>Optimierung</strong>sablauf ist es erfor<strong>der</strong>lich,<br />
ein numerisches <strong>Optimierung</strong>sverfahren<br />
zu verwenden, das die im<br />
Bild 5 dargestellte Rückkopplung vornimmt.<br />
Hierbei muß eine intelligente<br />
(strategische) Variation <strong>der</strong> Parameter<br />
vorgenommen werden.<br />
Es existiert eine Vielzahl von <strong>Algorithmen</strong><br />
zur numerischen <strong>Optimierung</strong> [10].<br />
Für die vorliegenden <strong>Optimierung</strong>sprobleme<br />
<strong>der</strong> <strong>Videosignalverarbeitung</strong>, die<br />
komplexe Lösungsräume mit vielen Nebenoptima<br />
(multimodale Lösungsräume)<br />
haben, eignen sich beson<strong>der</strong>s naturanaloge<br />
<strong>Optimierung</strong>sverfahren wie<br />
zum Beispiel Evolutionsstrategien [9].<br />
In den folgenden Abschnitten sollen daher<br />
die Grundzüge von Evolutionsstrategien<br />
dargestellt und die zuvor beschriebene<br />
Vorgehensweise zur <strong>Algorithmen</strong>optimierung<br />
anhand von Beispielalgorithmen<br />
aus <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
dargestellt werden.<br />
2. Evolutionsstrategien<br />
Um eine hohe Konvergenzgeschwindigkeit<br />
<strong>der</strong> Evolutionsstrategie sowie eine<br />
große Anzahl geeignet mutierter Individuen<br />
zu erzielen, werden die zu optimierenden<br />
Parameter p(i), (die „Objekt-<br />
Parametereinstellung<br />
Testsequenz<br />
Referenz-<br />
Sequenz<br />
Bild 5. <strong>Optimierung</strong>sablauf für einen Algorithmus<br />
<strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
Evolutionsstrategien werden seit Ende<br />
<strong>der</strong> 60er Jahre zur <strong>Optimierung</strong> einer<br />
Vielzahl von technischen Aufgabenstellungen<br />
verwendet [8]. Die Vorteile dieser<br />
Strategien zeigen sich insbeson<strong>der</strong>e<br />
bei komplexen <strong>Optimierung</strong>sproblemen,<br />
die aufgrund <strong>der</strong> Größe und Struktur<br />
des Parameter- und Güteraumes<br />
keine analytische <strong>Optimierung</strong> erlauben,<br />
o<strong>der</strong> bedingt <strong>durch</strong> den großen Simulationsaufwand<br />
je<strong>der</strong> einzelnen Realisierung<br />
kein vollständiges Absuchen<br />
des Parameterraumes erlauben. Genau<br />
diese Randbedingungen sind bei <strong>der</strong><br />
<strong>Optimierung</strong> einiger <strong>Algorithmen</strong> <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
gegeben.<br />
<strong>Optimierung</strong>sverfahren, die die Mechanismen<br />
<strong>der</strong> biologischen Evolution verwenden,<br />
um technische Probleme zu<br />
optimieren, werden als „Evolutionäre <strong>Algorithmen</strong>“<br />
bezeichnet. Da die biologische<br />
Evolution zu extrem komplexen<br />
Lebensformen geführt hat, die optimal<br />
an ihre Umwelt angepaßt sind, wird vermutet,<br />
daß nicht nur die Ergebnisse einer<br />
biologischen Evolution optimal sind,<br />
son<strong>der</strong>n auch ihre Mechanismen [8].<br />
Sogenannte „Evolutionsstrategien“<br />
(ES) stellen eine Methode aus <strong>der</strong> Menge<br />
<strong>der</strong> „Evolutionären <strong>Algorithmen</strong>“ dar.<br />
Bei einer ES wird eine potentielle Lösung<br />
im Parameterraum als Individuum<br />
in einer künstlichen Umwelt angesehen.<br />
Dieses Individuum wird gemäß des Grades<br />
seiner Anpassung an die künstliche<br />
Umwelt je nach <strong>Optimierung</strong>saufgabe<br />
<strong>durch</strong> eine Fehler- o<strong>der</strong> Gütefunktion<br />
bewertet. Faßt man mehrere Individuen<br />
zu einer Population zusammen, so kann<br />
man verschiedene Mechanismen <strong>der</strong><br />
biologischen Evolution modellieren, wie<br />
zum Beispiel<br />
• Mutation,<br />
• Rekombination,<br />
• Selektion.<br />
2.1. Mutation<br />
Die Mutation ist eine willkürliche Än<strong>der</strong>ung<br />
des genetischen Materials eines<br />
Individuums. Angewendet auf das Problem<br />
einer technischen <strong>Optimierung</strong> bedeutet<br />
dies, daß Zufallswerte zu den<br />
Parametern eines Systems addiert werden.<br />
Die Verteilungsfunktion dieser Zufallszahlen<br />
(mit einem Mittelwert von Null)<br />
wird als geometrische Verteilung für diskrete<br />
Parameter und als Normalverteilung<br />
für kontinuierliche Parameter gewählt<br />
[9].<br />
FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998 45
VIDEOSIGNAL-ALGORITHMEN<br />
variablen“) mit einem jeweils zugehörigen<br />
Streuwert σ(i) („Strategieparameter“)<br />
korreliert, mit <strong>der</strong> die Objektvariablen<br />
additiv modifiziert werden.<br />
Diese Streuwerte σ(i) werden <strong>durch</strong><br />
Multiplikation <strong>der</strong> alten Streuwerte mit<br />
dem Exponentialfunktionswert einer<br />
normalverteilten Zufallszahl ebenfalls<br />
mutiert [9].<br />
Die Streuwerte werden mit den korrespondierenden<br />
Parametern an die<br />
nächste Generation vererbt. Da<strong>durch</strong><br />
entsteht ein Selbstadaptionsprozeß <strong>der</strong><br />
Streuwerte während <strong>der</strong> Parameteroptimierung.<br />
Im Verlaufe des <strong>Optimierung</strong>sprozesses<br />
setzen sich die Individuen<br />
<strong>durch</strong>, <strong>der</strong>en Streuwerte ein möglichst<br />
schnelles Fortschreiten in Richtung des<br />
Optimums ermöglichen.<br />
Die Mutation eines Individuums wird in<br />
Gl. (1) beschrieben, wobei N(0,x) eine<br />
normalverteilte Zufallszahl mit einem<br />
Mittelwert von Null und einer Standardabweichung<br />
x ist. W stellt die Dimension<br />
des <strong>Optimierung</strong>sproblems dar und c<br />
ist eine Konstante des Mutationsprozesses<br />
⎛ c ⎞<br />
τ 0 = N⎜0,<br />
⎟<br />
⎝ 2W<br />
⎠<br />
(1)<br />
⎛<br />
c<br />
τ + ⎛ ⎞ ⎞<br />
⎜ N ⎜ , ⎟ ⎟⎫<br />
⎜ 0 0<br />
⎜ ⎟ ⎟⎪<br />
für<br />
⎝ W ⎠<br />
σ( i ) = σ( i ) ⋅e⎝<br />
2 ⎠⎬<br />
⎪<br />
i = 1...<br />
W<br />
pi ( ) = pi ( ) + σ( i ) ⋅N( 01 , )<br />
⎭<br />
Die Mutation <strong>der</strong> Streuwerte enthält je<br />
einen für alle Streuwerte gemeinsamen<br />
Anteil τ 0 sowie einen spezifischen Anteil<br />
für jeden einzelnen Streuwert. Mit diesen<br />
Streuwerten werden anschließend<br />
die Objektvariablen mutiert.<br />
2.2. Rekombination<br />
Mit Rekombination wird die Schaffung<br />
eines neuen Individuums („Kind“) unter<br />
Verwendung <strong>der</strong> Gene zweier an<strong>der</strong>er<br />
Individuen („Eltern“) bezeichnet. Dieser<br />
Mechanismus korrespondiert mit <strong>der</strong><br />
sexuellen Fortpflanzung in <strong>der</strong> Natur.<br />
Durch die Rekombination können Distanzen<br />
im Parameterraum überbrückt<br />
werden, die die Streuweiten <strong>der</strong> Mutation<br />
weit überschreiten.<br />
Es werden zwei Methoden <strong>der</strong> Rekombination<br />
unterschieden: die diskrete und<br />
die intermediäre Rekombination.<br />
Im Falle <strong>der</strong> diskreten Rekombination<br />
werden die Parameter p(i) bzw. die<br />
Streuwerte σ(i) für ein neues Individuum<br />
zufällig mit <strong>der</strong> gleichen Wahrscheinlichkeit<br />
entwe<strong>der</strong> von dem einen o<strong>der</strong><br />
von dem an<strong>der</strong>en Eltern-Individuum<br />
Selektion n−1<br />
Selektion n Selektion n−1<br />
µ<br />
Eltern<br />
ausgewählt. Bei <strong>der</strong> intermediären Rekombination<br />
wird je<strong>der</strong> Parameter bzw.<br />
Streuwert eines neuen Individuums als<br />
arithmetischer Mittelwert <strong>der</strong> jeweiligen<br />
Parameter bzw. Streuwerte <strong>der</strong> Eltern<br />
berechnet [9].<br />
2.3. Selektion<br />
µ+λ<br />
λ<br />
Kin<strong>der</strong><br />
Generierung n<br />
µ<br />
Eltern<br />
Bild 6. Darstellung <strong>der</strong> ( + )-Strategie (links) und <strong>der</strong> (<br />
Mutation und Rekombination sind Mechanismen<br />
zur Erzeugung neuer Individuen.<br />
Um einen Fortschritt beim <strong>Optimierung</strong>sprozeß<br />
zu erzielen, ist die Selektion<br />
<strong>der</strong> besten Individuen einer Generation<br />
in jedem <strong>Optimierung</strong>sschritt<br />
erfor<strong>der</strong>lich. Hier<strong>durch</strong> kann die Populationsgröße,<br />
das heißt die Anzahl von Eltern-<br />
und Kind-Individuen in einer Generation<br />
während <strong>der</strong> <strong>Optimierung</strong> konstant<br />
gehalten werden. Die am häufigsten<br />
verwendeten Evolutionsstrategien<br />
sind die im Bild 6 dargestellten (µ+λ)-<br />
und (µ,λ)-Strategien [9].<br />
Bei diesen Strategien bestehen die Generationen<br />
jeweils aus µ Eltern und λ<br />
Kin<strong>der</strong>n. Jedes <strong>der</strong> λ Kind-Individuen<br />
wird <strong>durch</strong> Rekombination zweier zufällig<br />
ausgewählter Eltern-Individuen und<br />
anschließende Mutation des Kind-Individuums<br />
erzeugt.<br />
Die Qualität des neuen Individuums<br />
wird <strong>durch</strong> eine Fehler- bzw. Gütefunktion<br />
bewertet. Verwendet man eine<br />
(µ+λ)-Strategie zur Selektion, so werden<br />
als Eltern-Individuen für die nächste<br />
Generation die µ besten Individuen<br />
<strong>der</strong> insgesamt µ+λ Eltern- und Kind-Individuen<br />
<strong>der</strong> aktuellen Generation ausgewählt.<br />
Bei einer (µ,λ)-Strategie werden<br />
nur die besten Individuen <strong>der</strong> λ Kin<strong>der</strong><br />
<strong>der</strong> aktuellen Generation als Eltern-<br />
µ<br />
Eltern<br />
λ<br />
Kin<strong>der</strong><br />
Selektion n<br />
µ<br />
Eltern<br />
Generierung n+1 Generierung n Generierung n+1<br />
)-Strategie (rechts)<br />
Individuen für die nächste Generation<br />
ausgewählt.<br />
Die (µ,λ)-Strategie stellt eine bessere<br />
Repräsentation <strong>der</strong> biologischen Evolution<br />
dar, da sie das Konzept einer begrenzten<br />
Lebensspanne <strong>der</strong> Individuen<br />
enthält.<br />
2.4. Klassisches Anwendungsbeispiel<br />
Ein bekanntes, sehr anschauliches <strong>Optimierung</strong>sproblem<br />
ist die Konstruktion<br />
eines Stabtragewerks [3]. Dieses aus<br />
dem Bauingenieurwesen stammende<br />
Beispiel erfor<strong>der</strong>t die Kostenminimierung<br />
(<strong>Optimierung</strong>) einer Brückenkonstruktion.<br />
Zu optimieren sind die Stabdicken<br />
und Längen sowie die Anzahl erfor<strong>der</strong>licher<br />
Knotenpunkte <strong>der</strong> im Bild 7<br />
dargestellten Brückenkonstruktion. Unter<br />
Berücksichtigung aller gegebenen<br />
technischen Restriktionen (wie zum<br />
Beispiel einem geraden Brückenboden)<br />
aber auch aller Symmetriebedingungen<br />
ergibt sich ein 25dimensionales, analytisch<br />
nicht lösbares <strong>Optimierung</strong>sproblem.<br />
Im Bild 7 sind die Ausgangskonfiguration<br />
sowie zwei Zwischenlösungen nach<br />
<strong>der</strong> 10. und 70. Iteration einer <strong>Optimierung</strong><br />
mit einer Evolutionsstrategie dargestellt.<br />
Durch Anwendung <strong>der</strong> Evolutionsstrategien<br />
ist es möglich, das erfor<strong>der</strong>liche<br />
Gewicht <strong>der</strong> Brücke von über<br />
14.000 Einheiten auf rund 11.000 Einheiten<br />
zu minimieren [3]. Die Evolutionsstrategie<br />
erbringt für dieses Problem<br />
Lösungen, die mit an<strong>der</strong>en <strong>Optimierung</strong>sverfahren<br />
nicht erzielt werden<br />
können.<br />
Bild 7. <strong>Optimierung</strong> eines Brückentragewerks; a) Startkonfiguration b), c) Zwischenlösungen<br />
<strong>der</strong> Brückenoptimierung (entnommen aus [3])<br />
46 FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998
VIDEOSIGNAL-ALGORITHMEN<br />
Diese Vorgehensweise <strong>der</strong> Parameteroptimierung<br />
soll nun auf <strong>Algorithmen</strong><br />
<strong>der</strong> <strong>Videosignalverarbeitung</strong> übertragen<br />
und anhand von Beispielen in den folgenden<br />
Abschnitten diskutiert werden.<br />
3. <strong>Optimierung</strong> linearer Filter<br />
Eine Filterung von Bildsignalen ist eine<br />
<strong>der</strong> wichtigsten Aufgaben in <strong>der</strong> digitalen<br />
Video-Signalverarbeitung. Die gefilterten<br />
Bil<strong>der</strong> sollen dabei häufig eine<br />
möglichst hohe Auflösung und eine<br />
hohe Bildschärfe haben. Aus diesen<br />
For<strong>der</strong>ungen resultieren Vorgaben an<br />
die Eigenschaften eines Filters sowohl<br />
im Frequenz- als auch im Ortsbereich.<br />
Hier soll nun ein Verfahren zum Filterentwurf<br />
für FIR-Filter vorgestellt werden,<br />
das Vorgaben in beiden Bereichen<br />
erlaubt. Ein Filter wird dazu <strong>durch</strong> mehrere<br />
Teilfehlerfunktionen bewertet, die<br />
die Abweichungen <strong>der</strong> Eigenschaften<br />
des Filters von den Vorgaben repräsentieren.<br />
Eine weitere Fehlerfunktion bewertet<br />
den Hardwareaufwand bei <strong>der</strong><br />
Implementierung des Filters. Die gewichtete<br />
Addition <strong>der</strong> Werte <strong>der</strong> einzelnen<br />
Teilfehlerfunktionen ergibt eine zu<br />
minimierende Gesamtfehlerfunktion,<br />
die ein direktes Maß für die Eignung des<br />
Filters darstellt. Durch die Wahl <strong>der</strong> Gewichte<br />
können beim Entwurf Schwerpunkte<br />
auf verschiedene Eigenschaften<br />
des Filters gelegt werden.<br />
Weil sich die Gesamtfehlerfunktion additiv<br />
aus komplexen Teilfehlerfunktionen<br />
zusammensetzt, ist zu erwarten,<br />
daß das korrespondierende Gütegebirge<br />
viele Maxima und Minima aufweist,<br />
(„multimodales Gütegebirge“). Aus diesem<br />
Grund bietet sich für dieses <strong>Optimierung</strong>sproblem<br />
die Verwendung von<br />
Evolutionsstrategien an, weil sie mit höherer<br />
Wahrscheinlichkeit als herkömmliche<br />
<strong>Optimierung</strong>sverfahren das globale<br />
Optimum eines multimodalen Gütegebirges<br />
erreichen.<br />
3.1. Eindimensionale FIR-Filter<br />
Wie schon zuvor diskutiert, unterliegen<br />
Filter, die eine für Bildsignale optimale<br />
Signalformung vornehmen sollen, Toleranzvorschriften<br />
sowohl im Frequenzbereich<br />
als auch im Orts- (bzw. Zeit-)<br />
Bereich. Es ergibt sich eine allgemeine<br />
Fehlerfunktion, die im Sinne einer optimalen<br />
Approximation minimiert werden<br />
soll<br />
Etotal = EFreq( Θx , Θ y ) + EOrt<br />
( x, y ). (2)<br />
|H(f)| ➞<br />
4<br />
3<br />
2<br />
1<br />
0<br />
-0,2<br />
0 0,1 0,2 0,3 0,4 0,5 −4 −2 0 2 4<br />
f/f s ➞<br />
n ➞<br />
Bild 8. Frequenzgang |H(f)| und Sprungantwort g s (n) eines FIR-Filters mit Zufallskoeffizienten<br />
(L=11 Filterkoeffizienten)<br />
Dabei stellt sich heraus, daß beide Fehleranteile<br />
nicht unabhängig voneinan<strong>der</strong><br />
sind. Bei linearen Systemen bedeutet<br />
das, daß zum Beispiel eine stärkere<br />
Bandbegrenzung des Frequenzgangs<br />
eine Ausdehnung in <strong>der</strong> Impulsantwort<br />
(und umgekehrt) bewirkt. Es liegt hier<br />
also ein nichtlineares komplexes Approximationsproblem<br />
vor. Die Technik <strong>der</strong><br />
Evolutionsstrategien gestattet auf <strong>der</strong><br />
Basis einer wohldefinierten Fehlerfunktion<br />
eine <strong>Optimierung</strong> des vorliegenden<br />
nichtlinearen mehrdimensionalen Problems.<br />
Es wird eine zusammengesetzte Fehlerfunktion<br />
zur Lösung des Entwurfsproblems<br />
auf <strong>der</strong> Basis einer Summe von<br />
mit λ i gewichteten Teilfehlerfunktionen<br />
E i gebildet<br />
I<br />
Etotal = ∑ λ i ⋅Ei<br />
.<br />
(3)<br />
i=<br />
1<br />
Mit diesen Teilfehlerfunktionen werden<br />
Entwürfe für 1D-FIR-Filter <strong>durch</strong>geführt.<br />
Bei einer <strong>Optimierung</strong> eines linearphasigen<br />
1D-FIR-Filters mit L Filterkoeffizienten<br />
können W =<br />
L + 1⎥<br />
⎣<br />
⎢<br />
⎢<br />
⎦<br />
⎥<br />
Filterkoeffizienten<br />
frei gewählt werden, was bedeu-<br />
2<br />
tet, daß es sich um eine <strong>Optimierung</strong> in<br />
einem W-dimensionalen Parameterraum<br />
handelt.<br />
3.1.1. Teilfehlerfunktionen<br />
a) Teilfehlerfunktionen im Frequenzbereich<br />
• Abweichung vom Sollfrequenzgang,<br />
• Flankensteilheit im Frequenzbereich,<br />
• Gleichverstärkungsabweichung,<br />
• Abweichung bei <strong>der</strong> Grenzfrequenz.<br />
b) Teilfehlerfunktionen im Ortsbereich<br />
• Betragsabweichung des ersten<br />
Überschwingers,<br />
• Positionsabweichung des ersten<br />
Überschwingers,<br />
g s (n) ➞<br />
1,0<br />
0,8<br />
0,6<br />
0,4<br />
0,2<br />
0<br />
• Größe weiterer Überschwinger,<br />
• Flankensteilheit <strong>der</strong> Sprungantwort.<br />
c) Teilfehlerfunktion bezüglich des Implementierungsaufwands<br />
• Summe <strong>der</strong> „1“-Bits <strong>der</strong> Filterkoeffizienten.<br />
3.1.2. Minimierung <strong>der</strong> Fehlerfunktion<br />
<strong>durch</strong> eine Evolutionsstrategie<br />
Die Approximationsqualität bezüglich<br />
<strong>der</strong> Anfor<strong>der</strong>ungen an ein Videosignalfilter<br />
ist nach Gl. (2) <strong>durch</strong> die gewichtete<br />
Summe <strong>der</strong> Teilfehlerfunktionen gegeben.<br />
Die Minimierung <strong>der</strong> Gesamtfehlerfunktion<br />
ist analytisch nicht möglich,<br />
da das W-dimensionale <strong>Optimierung</strong>sproblem<br />
nichtlinear ist.<br />
Ein erster Schritt bei einer Verwendung<br />
von Evolutionsstrategien ist, die Stabilität<br />
des <strong>Optimierung</strong>svorgangs zu überprüfen.<br />
Hierzu werden <strong>Optimierung</strong>släufe<br />
von willkürlich gewählten<br />
(schlechten) Initialwerten aus gestartet<br />
und die Ergebnisse mit Lösungen von<br />
Standardverfahren verglichen. Ergeben<br />
sich bei diesen <strong>Optimierung</strong>släufen jeweils<br />
sinnvolle Ergebnisse, so ist dies<br />
ein Hinweis auf die Stabilität des <strong>Optimierung</strong>sprozesses.<br />
Beim 1D-Filterentwurf wurden daher<br />
zum Beispiel Zufallskoeffizienten als<br />
Startparameter gewählt. Das sich aus<br />
diesen Initialwerten ergebende Filter<br />
hat Eigenschaften, die in keiner Weise<br />
die Vorgaben erfüllen (Bild 8), so daß<br />
beim <strong>Optimierung</strong>svorgang große Distanzen<br />
im Parameterraum überwunden<br />
werden müssen.<br />
Als weitere Initial-Parametersätze wurden<br />
die Koeffizienten eines reinen Mittelwertfilters<br />
sowie die mittels eines Kaiserfenster-Entwurfes<br />
erhaltene Parameter<br />
verwendet, die Nebenoptima im<br />
Parameterraum darstellen.<br />
FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998 47
VIDEOSIGNAL-ALGORITHMEN<br />
|H(f)| ➞<br />
E total ➞<br />
10<br />
5<br />
1<br />
0,8<br />
0,6<br />
0,4<br />
0,3<br />
g s (n) ➞<br />
0<br />
−0,2<br />
0 0,1 0,2 0,3 0,4 0,5 −4 −2 0 2 4<br />
f/f s ➞<br />
n ➞<br />
1,30<br />
1,25<br />
1,20<br />
1,15<br />
1,10<br />
1,05<br />
beste Individuen<br />
1<br />
0,8<br />
0,6<br />
0,4<br />
0,3<br />
0<br />
Anhebungsnetzwerk<br />
Kaiser-Fenster<br />
schlechteste Individuen<br />
1,00<br />
0 250 500 750 1000<br />
Generationen ➞<br />
|H(f x/f s,x, f y/f s,y)|<br />
15<br />
0<br />
0,5<br />
0<br />
0<br />
f/f y s,y −0,5 −0,5 f/ xfs,x<br />
g(n,n) s x y<br />
3<br />
2<br />
1<br />
0<br />
−1<br />
−2<br />
5<br />
0,5<br />
3<br />
Bild 9 (oben). Frequenzgang<br />
|H(f)| und<br />
Sprungantwort g s (n)<br />
eines FIR-Filters, <strong>der</strong><br />
mit einer (10,200)-ES<br />
entworfenen wurde<br />
(L=11 Koeffizienten)<br />
Bild 10 (links). Verlauf<br />
<strong>der</strong> Fehlerfunktion<br />
E total über den Generationen<br />
für einen Filterentwurf<br />
mit einer<br />
(10,200)- Evolutionsstrategie<br />
1<br />
n<br />
−1<br />
1<br />
y −3<br />
−1<br />
−5<br />
−3 n<br />
−5<br />
x<br />
Bild 11. Frequenzgang H(f) und Sprungantwort g s (n) eines Filters mit Zufallskoeffizienten<br />
|H(f x/f s,x, f y/f s,y)|<br />
1,2<br />
1<br />
0,8<br />
0,6<br />
0,4<br />
0,2<br />
0,5 0<br />
0<br />
f/f<br />
0<br />
y s,y<br />
−0,5 −0,5<br />
f/ xfs,x<br />
g(n,n) s x y<br />
1,2<br />
1<br />
0,8<br />
0,6<br />
0,4<br />
0,2<br />
0<br />
−0,2<br />
5<br />
3<br />
0,5 1<br />
n y −1 −3 −3 −5 −5<br />
−1<br />
1<br />
n x<br />
Bild 12.Frequenzgang H(f) und Sprungantwort g s (n) eines Filters mit Koeffizienten aus einer<br />
<strong>Optimierung</strong> mit einer (10,200)- Evolutionsstrategie<br />
3<br />
3<br />
5<br />
5<br />
Ausgehend von diesen Initialsätzen<br />
wurden Filter unter Verwendung von<br />
(µ+λ)- und (µ,λ)-ES sowie mit herkömmlichen<br />
Gradientenstrategien entworfen.<br />
Die Evolutionsstrategien erweisen sich<br />
als geeignet zur Minimierung <strong>der</strong> Gesamtfehlerfunktion.<br />
Sowohl von Zufallswerten<br />
als auch von mit an<strong>der</strong>en Entwurfstechniken<br />
entworfenen Initial-<br />
Koeffizienten ausgehend können Verbesserungen<br />
erzielt werden. Bild 9<br />
stellt das Ergebnis <strong>der</strong> <strong>Optimierung</strong><br />
ausgehend von zufälligen Initialwerten<br />
unter Verwendung einer (10,200)-Strategie<br />
(intermediäre Rekombination von<br />
Objekt- und Strategieparametern) dar.<br />
Vergleichende <strong>Optimierung</strong>släufe mit<br />
Gradientenstrategien zeigen, daß sie im<br />
allgemeinen nicht zum Entwurf von<br />
FIR-Filtern <strong>durch</strong> Minimierung <strong>der</strong> Gesamtfehlerfunktion<br />
geeignet sind, weil<br />
sie entwe<strong>der</strong> keine Verbesserung <strong>der</strong><br />
Gesamtfehlerfunktion ermöglichen o<strong>der</strong><br />
ausgehend von den Zufallswerten in ein<br />
Filter ohne Tiefpaßcharakter konvergieren.<br />
Das Versagen von Gradientenstrategien<br />
ist ein Hinweis auf die Multimodalität<br />
des Fehlergebirges.<br />
Die Simulationen mit <strong>der</strong> Evolutionsstrategie<br />
erfor<strong>der</strong>ten <strong>durch</strong>schnittlich<br />
300.000 Bewertungen <strong>der</strong> Fehlerfunktion,<br />
was etwa 1500 Generationen entspricht.<br />
Die Simulationszeit betrug etwa<br />
5 Minuten auf einem Pentium-PC mit einem<br />
233-MHz-Prozessor. Im Gegensatz<br />
zu Standardverfahren zum Filterentwurf<br />
ermöglichen Evolutionsstrategien<br />
<strong>durch</strong> Wahl <strong>der</strong> Gewichtungswerte<br />
i dedizierte Filterfunktionen direkt zu<br />
beeinflussen.<br />
Sind die Korrespondenzen zwischen<br />
subjektiver Bildqualität und dedizierten<br />
Filtereigenschaften bekannt, kann eine<br />
detaillierte Anpassung <strong>der</strong> Filtereigenschaften<br />
vorgenommen werden, um<br />
eine hohe resultierende Bildqualität zu<br />
erzielen.<br />
Von beson<strong>der</strong>em Interesse ist bei <strong>der</strong> <strong>Optimierung</strong><br />
ein Vergleich mit Standardentwurfsverfahren.<br />
Im Bild 10 sind <strong>der</strong> Verlauf<br />
<strong>der</strong> <strong>Optimierung</strong> über den Generationen<br />
sowie die Ergebnisse herkömmlicher<br />
Entwurfsverfahren aufgetragen.<br />
Ersichtlich übertreffen die Evolutionsstrategien<br />
die verfügbaren herkömmlichen<br />
Verfahren ab etwa <strong>der</strong> 400. Generation.<br />
3.2. Zweidimensionale FIR-Filter<br />
Der Entwurf von 2D-FIR-Filtern mit ES<br />
erfor<strong>der</strong>t einen drastisch höheren Simulationsaufwand<br />
als im 1D-Fall. Prinzipi-<br />
48 FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998
VIDEOSIGNAL-ALGORITHMEN<br />
Eingangsbil<strong>der</strong> A1 B1<br />
A2<br />
zu interpolieren<strong>der</strong> fehlende<br />
x Bildpunkt Zwischenzeilen<br />
0 x 0<br />
x<br />
y<br />
0<br />
aktive<br />
Zeilen<br />
46<br />
[dB]<br />
44<br />
42<br />
40<br />
vektorgestützter<br />
Referenzwert nach [1]<br />
statischer<br />
Referenzwert nach [1]<br />
PSNR ➞<br />
38<br />
36<br />
Referenzwert nach [6]<br />
y 0<br />
T n 1<br />
34<br />
Masken des Medianfilters<br />
− T n T n+1 t<br />
Bild 13 (oben). Medianmasken für eine Proscan-Konversion<br />
Bild 14 (rechts). <strong>Optimierung</strong> einer Proscan-Konversion mit zufälligen<br />
Initialwerten; Testsequenz „Train“; maximale, minimale und mittlere<br />
Güte je<strong>der</strong> Population<br />
32<br />
30<br />
28<br />
0 10 20 30 40 50 60 70 80 90 100<br />
Generationen ➞<br />
T n−1<br />
T n<br />
W i<br />
T n+1<br />
y<br />
Generation: 1<br />
PSNR: 34,8 dB<br />
0<br />
7<br />
2<br />
7<br />
5<br />
3 5 7 10<br />
8<br />
0<br />
6<br />
1 2 4<br />
6<br />
4 5<br />
9<br />
5<br />
5 8 2 2<br />
3 5<br />
0 4 0 4 4<br />
4<br />
9<br />
3<br />
1<br />
2<br />
10<br />
3<br />
6<br />
2 4 7 2<br />
7<br />
6<br />
1 3<br />
5 8<br />
1<br />
Generation: 21<br />
PSNR: 38,8 dB<br />
5<br />
0 10 2<br />
4 10 4<br />
5 10<br />
ell sind allerdings die gleichen Verfahren<br />
anwendbar. Bild 11 und Bild 12<br />
stellen den Frequenzgang eines Filters<br />
mit zufälligen Koeffizienten sowie das<br />
Ergebnis eines Filterentwurfs mit Evolutionsstrategien<br />
für ein separierbares<br />
2D-Filter (mit L x =L y =L=11) dar. Wie<strong>der</strong>um<br />
ist die Evolutionsstrategie in <strong>der</strong><br />
Lage, aus den Zufallswerten heraus, in<br />
eine gute Lösung des <strong>Optimierung</strong>sproblems<br />
<strong>der</strong> Ordnung 2 ⋅<br />
⎢L<br />
+ 1⎥<br />
⎣<br />
⎢<br />
2 ⎦<br />
⎥<br />
zu konvergieren.<br />
In [4] werden hierzu auch Ergebnisse<br />
für nichtseparierbare 2D-Filter (zum<br />
Beispiel Diagonalfilter) vorgestellt.<br />
4. <strong>Optimierung</strong> nichtlinearer Filter<br />
0<br />
7<br />
0 2<br />
9<br />
1 10<br />
0<br />
1 5 10 6 0 1<br />
1 4 3<br />
5<br />
3<br />
0 0 2<br />
1 3<br />
5<br />
0<br />
8 10 2 10<br />
1 10 1<br />
0 2<br />
3 5<br />
1<br />
5<br />
0<br />
0<br />
Generation: 41<br />
PSNR: 40,0 dB<br />
Generation: 61<br />
PSNR: 41,9 dB<br />
0 10 0 10 0 10<br />
6 0 10<br />
3<br />
3<br />
6 0 10 0 9<br />
0 9<br />
2 0<br />
0<br />
80<br />
3<br />
0<br />
0<br />
6<br />
0<br />
0<br />
0<br />
3<br />
0<br />
0 2<br />
0<br />
2<br />
1<br />
0<br />
1<br />
1<br />
0 0<br />
0<br />
0<br />
0<br />
9<br />
8<br />
6<br />
0 10<br />
0<br />
1 10<br />
0<br />
9 0 0<br />
0 4 7<br />
10 0 1<br />
0 4 1<br />
10 5 0 0 10<br />
0<br />
1<br />
2 5 0<br />
2<br />
1 4 5 2<br />
4<br />
0<br />
0<br />
0<br />
3<br />
3<br />
0 2<br />
3<br />
0 0 0 1<br />
0 0 0<br />
0<br />
1<br />
0 1<br />
0 0<br />
0<br />
0<br />
8 10<br />
1<br />
8 10 10<br />
1<br />
0 10 7 1<br />
8 10<br />
10 0 0<br />
0<br />
8 0<br />
0 0<br />
7 0<br />
0<br />
0<br />
0<br />
0<br />
4<br />
1 1<br />
0<br />
0<br />
2 0 2 0<br />
0 0<br />
1<br />
0 3 0 0<br />
0<br />
Nichtlineare Filter, die in vielen Anwendungen<br />
wie einer Formatkonversion<br />
o<strong>der</strong> einer Reduktion von Impulsrauschen<br />
heute eingesetzt werden [2], werden<br />
bisher zumeist heuristisch entworfen.<br />
Es existieren für nichtlineare Filter<br />
lediglich deterministische (Modellsignale)<br />
o<strong>der</strong> statistische (Verteilungsfunktionen)<br />
Beschreibungs- und Analysemethoden.<br />
Daher bietet es sich für nichtlineare<br />
Filter ebenfalls an, eine <strong>Optimierung</strong><br />
über Evolutionsstrategien vorzunehmen.<br />
4.1. Nichtlineare Filter zur<br />
Proscan-Konversion<br />
Generation: 81<br />
PSNR: 43,2 dB<br />
x<br />
Bild 15. <strong>Optimierung</strong> einer Proscan-Konversion, Adaption <strong>der</strong> Gewichtungsmasken, Testsequenz<br />
„Train“<br />
Einige hochqualitative <strong>Algorithmen</strong> zur<br />
Proscan-Konversion (s. Kap. 2) verwenden<br />
nichtlineare Filter (gewichtete Medianfilter)<br />
[2]. Für jede mögliche Position<br />
im Fenster des Medianfilters muß ein<br />
Gewichtungswert bestimmt werden (Integer-Wert<br />
im Intervall [0,10]). Das <strong>Optimierung</strong>sproblem<br />
ist aufgrund <strong>der</strong> Freiheitsgrade<br />
<strong>der</strong> gewichteten Medianfilter<br />
(50 Maskengewichte in den drei Masken,<br />
Bild 13) 50-dimensional und es<br />
existieren 11 50 verschiedene Kombinationen,<br />
so daß ein vollständiges Absuchen<br />
des Parameterraumes nicht möglich<br />
ist. Daher müssen intelligente Optimie-rungsalgorithmen<br />
eingesetzt werden.<br />
Bild 14 stellt die Ergebnisse einer <strong>Optimierung</strong><br />
vektorgestützter gewichteter<br />
Proscan-Medianfilter ausgehend von<br />
zufälligen Startwerten dar. Als Gütefunktion<br />
wurde hier das „Peak Signal to<br />
Noise Ratio“ (PSNR) <strong>der</strong> interpolierten<br />
progressiven Bil<strong>der</strong> verwendet. Bei <strong>der</strong><br />
<strong>Optimierung</strong> wurde eine (10,70)-Evolutionsstrategie<br />
eingesetzt (diskrete Rekombination<br />
<strong>der</strong> Objektparameter, intermediäre<br />
Rekombination <strong>der</strong> Strategieparameter).<br />
Deutlich zu erkennen ist im Bild 14, daß<br />
die Referenzverfahren <strong>durch</strong> die Ergebnisse<br />
<strong>der</strong> <strong>Optimierung</strong> übertroffen werden.<br />
Startet man den Evolutionsvorgang<br />
bereits bei heuristischen Initialwerten<br />
werden noch bessere Ergebnisse<br />
erzielt.<br />
Die sich im Laufe <strong>der</strong> <strong>Optimierung</strong> ergebenden<br />
Maskenkonfigurationen sind im<br />
Bild 15 aufgetragen. Dargestellt sind jeweils<br />
die Gewichtungsmaske im Vorgänger-,<br />
aktuellen und Nachfolger-Bild.<br />
Die Höhe <strong>der</strong> Balken repräsentiert dabei<br />
die Größe <strong>der</strong> Gewichte. Ausgehend<br />
von den zufälligen Initialwerten bilden<br />
sich Ergebnisse heraus, die eine deutliche<br />
Zeilenorientierung im Vorgängerund<br />
Nachfolgerbild sowie eine Spaltenorientierung<br />
im aktuellen Bild wi<strong>der</strong>spiegeln.<br />
FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998 49
VIDEOSIGNAL-ALGORITHMEN<br />
PSNR ➞<br />
Halbbild A n<br />
V<br />
r<br />
A n B n<br />
2<br />
26,0<br />
[dB]<br />
25,6<br />
25,4<br />
25,2<br />
25,0<br />
24,8<br />
24,6<br />
24,4<br />
24,2<br />
T − 10 ms<br />
rekursive<br />
Elemente<br />
4.2. Nichtlineare Filter zur<br />
Zwischenbildinterpolation<br />
W<br />
Gewichtungs-Masken<br />
An<br />
N1 N2<br />
N3<br />
W<br />
gewichteter Median<br />
Bn<br />
T0<br />
Referenzwert nach [1]<br />
Referenzwert nach [2]<br />
T + 10 ms<br />
Zwischenbild β n<br />
24,0<br />
0 20 40 60 80 100 120 140 160 180 200<br />
Generationen ➞<br />
Halbbild B n<br />
V<br />
r<br />
A n B n<br />
2<br />
Bild 16. Vektorgestützte<br />
gewichtete<br />
Zwischenbildinterpolation<br />
Bild 17. <strong>Optimierung</strong><br />
einer zeitlichen Zwischenbildinterpolation;<br />
Testsequenz<br />
„Football“; dargestellt<br />
sind maximale und<br />
minimale sowie die<br />
mittlere Güte je<strong>der</strong><br />
Population<br />
Neben einer Proscan-Konversion ist die<br />
Interpolation von Zwischenbil<strong>der</strong>n eine<br />
sehr wichtige Aufgabenstellung im Bereich<br />
<strong>der</strong> <strong>Videosignalverarbeitung</strong>. Anwendungen<br />
hierzu liegen zum Beispiel<br />
in <strong>der</strong> Konversion eines 50-Hz-TV-Signals<br />
auf ein 100-Hz-TV-Signal zur<br />
Flimmerreduktion in TV-Geräten (Upconversion),<br />
aber auch in Graphikkarten<br />
bzw. in <strong>der</strong> Studiotechnik (PAL-<br />
NTSC-Konversion) [2]. Auch in diesem<br />
Bereich werden vorteilhaft <strong>Algorithmen</strong><br />
eingesetzt, die vektorgestützte nichtlineare<br />
Interpolationsfilter (gewichtete<br />
Medianfilter) verwenden. Die Vorteile<br />
dieser gewichteten Medianfilter liegen<br />
insbeson<strong>der</strong>e in ihrer Eigenschaft, Fehler<br />
von Bewegungsvektoren in einem<br />
gewissen Maße zu kompensieren [1].<br />
Als weiteres Anwendungsbeispiel für<br />
Evolutionsstrategien im Bereich <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
wurde deshalb<br />
<strong>der</strong> Entwurf von gewichteten Medianfiltern<br />
zur Zwischenbildinterpolation untersucht.<br />
Bild 16 stellt dar, wie unter Zuhilfenahme<br />
eines vektorgestützten gewichteten<br />
Medianfilters aus zwei Originalbil<strong>der</strong>n<br />
(A n und B n ) und einem Bewegungsvektor<br />
V AB n n<br />
ein Bildpunkt aus dem Zwischenbild<br />
(β n ) berechnet wird. Das Design<br />
<strong>der</strong> Gewichtungsmasken für diese<br />
Interpolation ist Aufgabe des evolutionären<br />
<strong>Optimierung</strong>svorgangs. Ziel ist es<br />
dabei, eine möglichst hohe Bildqualität<br />
(zum Beispiel Kompensation von fehlerhaften<br />
Bewegungsvektoren, Erhalt feiner<br />
Bilddetails usw.) zu erreichen.<br />
Bild 17 zeigt hierzu die Ergebnisse eines<br />
<strong>Optimierung</strong>svorgangs für eine<br />
sehr komplexe Bewegungssituation.<br />
Betrachtet wird die Zwischenbildinterpolation<br />
für die Testsequenz „Football“,<br />
bei <strong>der</strong> ein Zoom auf ein Spielfeld dargestellt<br />
ist. Neben <strong>der</strong> vorherrschenden<br />
Zoom-Bewegung treten hier viele unterschiedliche<br />
Partialbewegungen <strong>der</strong><br />
Spieler auf. Die zu dieser Sequenz mittels<br />
eines Bewegungsschätzers [2] ermittelten<br />
Bewegungsvektorfel<strong>der</strong> sind<br />
häufig fehlerhaft. In <strong>der</strong> im Bild 17 dargestellten<br />
Simulation wurde ein stark<br />
fehlerhaftes Bewegungsvektorfeld verwendet.<br />
Aufgabe bei diesem <strong>Optimierung</strong>svorgang<br />
war es, Interpolationsfilter<br />
so zu entwerfen, daß möglichst viele<br />
Vektorfehler kompensiert werden können<br />
und somit eine optimale Bildqualität<br />
für das Zwischenbild erzielt wird. Bild 17<br />
stellt dar, daß die Interpolationsqualität<br />
<strong>der</strong> Referenzverfahren [1,2] <strong>durch</strong> die<br />
für diese Situation entworfenen Interpolationsfilter<br />
deutlich übertroffen werden<br />
kann.<br />
Ein Filterentwurf auf <strong>der</strong> Basis von Evolutionsstrategien<br />
bietet somit eine gute<br />
Möglichkeit, speziell für dedizierte kritische<br />
Situationen Filter zu entwerfen,<br />
um sie dann zum Beispiel in signaladaptiven<br />
Verfahren zu kombinieren.<br />
Da die Berechnung von Zwischenbil<strong>der</strong>n<br />
jeweils an mehreren Bil<strong>der</strong>n einer<br />
Bildsequenz erfolgen muß, erfor<strong>der</strong>t die<br />
Bewertung eines Interpolationsfilters einen<br />
erheblichen Rechenaufwand. Da<br />
ein typisches Entwicklungsumfeld für<br />
<strong>Algorithmen</strong> <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
allerdings von einer Laborsituation<br />
mit vernetzten Workstations geprägt ist,<br />
bietet es sich an, zur Reduktion <strong>der</strong> hohen<br />
Simulationszeiten diese Workstations<br />
über eine parallele Programmiersprache<br />
zu koppeln.<br />
Zu diesem Zweck wurde für die vorliegenden<br />
Untersuchungen das Softwarepaket<br />
„PVM“ (Parallel Virtual Machine)<br />
eingesetzt. Es ermöglicht dem Programmierer<br />
vernetzte Rechner als sogenannte<br />
Virtual Machine, das heißt als<br />
einen Parallelrechner mit verteiltem<br />
Speicher zu behandeln. Unter Verwendung<br />
dieses Softwarepakets war es<br />
möglich, die vorhandene heterogene<br />
Rechnerstruktur (etwa 15 Workstations)<br />
effektiv zu nutzen. Es konnten so sehr<br />
rechenintensive Simulationen mit einer<br />
für die Konvergenz <strong>der</strong> Evolutionsstrategie<br />
hinreichenden Anzahl von Generationen<br />
<strong>durch</strong>geführt werden.<br />
5. Schlußfolgerungen<br />
Zahlreiche Anwendungen in <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
verwenden <strong>der</strong>zeit<br />
suboptimale <strong>Algorithmen</strong>, die nicht auf<br />
analytischem Wege optimiert werden<br />
können. Hier bietet sich eine Verwen-<br />
50 FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998
VIDEOSIGNAL-ALGORITHMEN<br />
dung von Evolutionsstrategien an. Mit<br />
Evolutionsstrategien ist es zum Beispiel<br />
möglich, Filter zu entwerfen, die optimal<br />
an eine vorgegebene Situation (zum<br />
Beispiel an ein Testsignal) angepaßt<br />
sind (signalangepaßte Filter). Evolutionsstrategien<br />
sind somit ein sehr nützliches<br />
Hilfsmittel bei <strong>der</strong> <strong>Algorithmen</strong>entwicklung.<br />
Insbeson<strong>der</strong>e beim Entwurf nichtlinearer<br />
Filter, die bisher nur <strong>durch</strong> deterministische<br />
(anhand von Modellsignalen) bzw.<br />
statistische Entwurfsmethoden (anhand<br />
von Verteilungsfunktionen) entworfen<br />
werden konnten, bietet sich <strong>der</strong> Einsatz<br />
von Evolutionsstrategien an.<br />
Bei den in diesem Beitrag diskutierten<br />
Beispielen konnten die Ergebnisse <strong>der</strong><br />
<strong>Algorithmen</strong> <strong>durch</strong> den Einsatz <strong>der</strong> Evolutionsstrategien<br />
jeweils deutlich verbessert<br />
werden. Mögliche weitere Anwendungsfel<strong>der</strong><br />
für Evolutionsstrategien<br />
im Bereich <strong>der</strong> <strong>Videosignalverarbeitung</strong><br />
liegen bei <strong>der</strong> <strong>Optimierung</strong> von <strong>Algorithmen</strong><br />
zur Interpolation, zur Bewegungsschätzung,<br />
zur Objekterkennung,<br />
zur Mustererkennung o<strong>der</strong> zur Codierung.<br />
Schrifttum<br />
[1] Blume, H.: A new algorithm for nonlinear vectorbased<br />
upconversion with center weighted medians.<br />
SPIE Journal of Electronic Imaging, Vol. 6,<br />
Nr. 3, 1997, pp. 368-378<br />
[2] Blume, H.; Schrö<strong>der</strong>, H.: Image Format Conversion<br />
– Algorithms, Architectures, Applications.<br />
Proc. of the IEEE ProRISC Workshop on Circuits,<br />
Systems and Signal Processing, Mierlo,<br />
Nie<strong>der</strong>lande, 27.-29.11.1996, pp. 19-37<br />
[3] Campos, I.; Schwefel, H.-P.: KBOPT: A knowledge<br />
based optimisation system. Technischer<br />
Report 311, Universität Dortmund, Fachbereich<br />
Informatik, 1989<br />
[4] Franzen, O.; Blume, H.; Schrö<strong>der</strong>, H.: FIR-Filter<br />
Design with Spatial and Frequency Design Constraints<br />
using Evolution Strategies. Zur Veröffentlichung<br />
eingereicht beim Signal Processing<br />
Journal, 1997<br />
[5] Ivanov, K. V.: Ein neues Verfahren zur Konversion<br />
von Fernsehbildsignalen für die progressive<br />
Wie<strong>der</strong>gabe. FKT Bd. 48. (1994) Nr. 10, pp. 1-7<br />
[6] Marmolin, H.: Subjective MSE Measures. IEEE<br />
Trans. on Systems, Man and Cybernetics, Vol.<br />
16, Nr. 3, Mai 1986<br />
[7] Musmann, H. G.; Pirsch, P.; Grallert, H. J.:<br />
Advances in Picture Coding. Proc. of the IEEE,<br />
Vol. 73, Nr. 4, 1985, pp.523-548<br />
[8] Rechenberg, H.: Evolutionsstrategie. fromannholzboog<br />
Verlag, Stuttgart, 1973<br />
[9] Schwefel, H. P.; Bäck, T.: Evolution Strategies<br />
I/II. Chap. 6/7 in Genetic Algorithms in Engineering<br />
and Computer Science. ed. by J. Périaux,<br />
G. Winter; John Wiley & sons, New York, 1995<br />
[10] Schwefel, H. P: Evolution and Optimum Seeking.<br />
John Wiley & sons, New York, 1995<br />
CMOS-Bildsensor<br />
Nach einer Information von IMEC in<br />
Leuven (Belgien) ist es dem Unternehmen<br />
gelungen, einen neuen Bildsensor<br />
auf Basis <strong>der</strong> CMOS-Technik zu entwikkeln,<br />
dessen Bildqualität denen herkömmlicher<br />
CCD-Sensoren entsprechen<br />
soll. Der neue Sensor Ibis 1 verfügt<br />
über einen neuen Pixel-Typ mit hohem<br />
Füllfaktor, <strong>der</strong> gesteigerte Empfindlichkeit<br />
ermöglichen soll. Dabei wird<br />
mit Füllfaktor <strong>der</strong> lichtempfindliche Teil<br />
des Pixels bezeichnet. Die Pixel-Struktur<br />
verfügt über eine zusätzliche p-dotierte<br />
Schicht unter <strong>der</strong> Pixel-Elektronik.<br />
Damit soll sichergestellt werden, daß<br />
sämtliche vom Licht hervorgerufene Ladung<br />
auch zum Ausgangssignal beiträgt.<br />
Eine weitere Entwicklung betrifft die Integration<br />
eines Doppelabtasters auf<br />
dem Chip, <strong>der</strong> die — in CMOS-Technologie<br />
unvermeidliche — Ungleichförmigkeit<br />
eliminieren soll. Diese Korrektur-Elektronik<br />
wurde für jeden Bildpunkt<br />
eingeführt, um Ungleichförmigkeiten zu<br />
verhin<strong>der</strong>n. Dabei erfolgen die Korrekturen<br />
mit <strong>der</strong> gleichen Geschwindigkeit<br />
wie <strong>der</strong> Bilddaten-Transfer. Ibis 1 verfügt<br />
über 386×290 quadratische Pixel<br />
und bietet Bildfrequenzen von 50 Hz<br />
und mehr. Sein dynamischer Bereich<br />
beträgt 1:28.000, wobei die Ungleichförmigkeit<br />
für ein festes Muster unter<br />
0,2% des maximalen Ausgangssignals<br />
liegen soll. Der Sensor ist auch mit einem<br />
elektronischen Verschluß ausgestattet<br />
und wird mit <strong>der</strong> Standard-<br />
CMOS-Technologie von Alcatel Mietec<br />
in 0,7-µm-Geometrie gefertigt. Die<br />
Ibis-Linie soll in Richtung höherer Auflösung<br />
und mit Farbfiltern auf dem Chip<br />
zügig weiterentwickelt werden.<br />
Das Unternehmen IMEC wurde 1984<br />
gegründet und sieht sich mit 750 Mitarbeitern<br />
als Europas führendes, unabhängiges<br />
Forschungszentrum für die<br />
Entwicklung und Lizenzierung von mo<strong>der</strong>nen<br />
Technologien <strong>der</strong> Mikroelektronik.<br />
Die 150-mm-CMOS-Pilotlinie für<br />
Submikron-Strukturen wurde 1994<br />
nach ISO 9001 zertifiziert. Die Forschungs-<br />
und Entwicklungsaktivitäten<br />
bei IMEC konzentrieren sich auf neue<br />
Entwurfsverfahren, mit denen die Entwicklung<br />
komplexer elektronischer Systeme<br />
wesentlich beschleunigt werden<br />
soll. Weitere Arbeiten betreffen die Entwicklung<br />
von Prozeß-Technologie für<br />
die nächste Generation <strong>der</strong> ULSI-<br />
Chips, Multichip-Module, nichtflüchtige<br />
Speicher, optoelektronische Komponenten,<br />
Sensoren, Mikrosysteme und<br />
Solarzellen.<br />
FERNSEH- UND KINO-TECHNIK 52. Jahrgang Nr. 1+2/1998 51