Bevor die Auswahl der Algorithmen und Datenstrukturen und die tatsächliche Programmierung der Bibliothek in Angriff genommen werden kann, gilt es, das Problem zu strukturieren und eine allgemeine Architektur der Bibliothek festzulegen. Die Bildanalyse ist ein sehr komplexer Vorgang, für den eine ganze Kette von Verarbeitungsschritten notwendig ist.
Die Aufgabe des zu schaffenden Analysesystems ist die Gewinnung von
objektbezogenen Daten aus einem von einer Kamera aufgezeichneten Bild.
Allgemein ist ein Bild eine flächenhafte Verteilung der Bestrahlungstärke in
einer Ebene, die als kontinuierliche Funktion zweier
räumlicher
Variablen aufgefaßt werden kann:
In der Problemstellung wird als Ausgabe des Analysesystems ein Tupel o
für jedes gefundene Objekt gefordert:
Nur die Klasse, Position und Orientierung eines Objekts können aus einem
einzelnen Bild gewonnen werden. Richtung, Geschwindigkeit und
Kennung
machen nur über Bildserien Sinn. Daher ist es
notwendig, eine Korrespondenz von Objekten über mehrere Einzelbilder
herzustellen. Dies kann entweder durch die Verarbeitung von Bildserien
anstelle von Einzelbildern oder über das Fortschreiben eines für die
Echtzeitverarbeitung besser geeigneten internen Zustandes
des
Analysesystems geschehen. Ein solcher interner Zustand könnte zum Beispiel die
im letzten Einzelbild gefundenen Objekte beinhalten.
Damit sind nun alle zwingendermaßen für die Bewältigung der Aufgabe
erforderlichen Eingaben benannt. Es erscheint aber sinnvoll,
ein weiteres, optionales Argument einzuführen: Die Bestimmung der Objektklasse
kann zwar durchaus dem Bildverarbeitungssystem inhärent sein. Aber
trotzdem sollte bewußt werden, daß die Klassifizierung der Objekte nur
indirekt mit der eigentlichen Bildanalyse zu tun hat. Während das Auffinden
von Flächen und die Trennung von Objekten und Hintergrund die eigentlichen
Aufgaben des Sehens sind, ist die Benennung einer weißen und einer gelben
Fläche
als Objekt vom Typ 1 gegenüber einer weißen und einer blauen Fläche als
Objekt vom Typ 2 eher künstlich. Hier ist eine Kategorisierung nötig, die stark
mit der Aufgabe der die Bilderkennung benutzenden Anwendung zusammenhängt.
Diese Einordnung stellt gerade das Bindeglied zwischen Bilderkennung und
weiterverarbeitenden Schichten dar und wird der Bilderkennung von der Anwendung auferlegt. Es
erscheint daher sinnvoll, dies schon auf einer hohen, konzeptionellen Ebene
durch
die Hinzunahme eines von außen beizubringenden Weltmodells deutlich
zu
machen. Das Weltmodell
selbst bleibt an dieser Stelle
unspezifiziert, lediglich die Notwendigkeit von irgendwie gearteten Daten
über die Benennung und Art der zu entdeckenden Objekte wird schon an dieser
Stelle festgehalten. Mit den Definitionen 2.2 und 2.3 läßt sich
nun die zu leistende Aufgabe des Bildanalysesystems
formalisieren:
Diese noch sehr komplexe Aufgabe gilt es nun weiter zu strukturieren.