Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...
Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...
Objektorientierte Daten- und Zeitmodelle für die Echtzeit ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
12 KAPITEL 1. EINFÜHRUNG<br />
am Ausgang eines logischen Sensors anliegendes Signal betrachtet werden, ganz gleich, ob es<br />
sich um Bildfolgen oder um Sequenzen von aus Bildern extrahierten Merkmalen handelt, <strong>und</strong><br />
unabhängig davon, ob <strong>die</strong>se Sequenzen von einer Kamera oder einer Dateiliste, durch einen digitalen<br />
Signalprozessor oder einen in Software realisierten Filter, durch lokale Operatoren oder<br />
auf einem beliebigen anderen Rechner im Netz geliefert wurden.<br />
Die in der Praxis eingesetzten Bildverarbeitungssysteme besitzen kein derartiges Signalbzw.<br />
Sequenzmodell. Bildfolgen werden im Computer i.d.R. lediglich in Form von Bildmatrizen<br />
repräsentiert, <strong>die</strong> in regelmäßigen Abständen überschrieben werden. Um Aussagen über<br />
Veränderungen im Bild treffen zu können, wird eine zweite Matrix als Zwischenspeicher <strong>für</strong> das<br />
vorhergehende Bild zu Hilfe genommen [Jäh97]. Zugriffe weiter in <strong>die</strong> Vergangenheit können<br />
mit <strong>die</strong>sem Ansatz nur sehr umständlich realisiert werden, außerdem geht dabei <strong>die</strong> Signalsemantik,<br />
d.h. der über alle <strong>Daten</strong> einer Folge gemeinsame Kontext, verloren.<br />
In anderen Ansätzen wird <strong>die</strong> Zeitachse als dritte räumliche Dimension interpretiert, d.h. eine<br />
Folge zweidimensionaler Orts-Bilder wird zu einem dreidimensionalen Orts/Zeit-Bild. Auf<br />
<strong>die</strong>ses werden dann z.B. 3D-Bildverarbeitungsmethoden angewendet [Jäh97]. Diese Darstellungsform<br />
ist jedoch nicht <strong>für</strong> <strong>die</strong> kontinuierliche Bildauswertung geeignet, d.h. deren Einsatz<br />
ist auf den Bereich der Offline-Bildanalyse beschränkt.<br />
Wie <strong>die</strong> Untersuchungen gezeigt haben, existieren bisher keine Modelle <strong>für</strong> Bild- <strong>und</strong> vergleichbare<br />
<strong>Daten</strong>folgen, <strong>die</strong> deren Signalcharakter adäquat darstellen können. Diese Lücke soll<br />
in <strong>die</strong>ser Arbeit durch das im Abschnitt 4.2 vorgestellte Sequenzmodell geschlossen werden. 1<br />
1.4.3 Parallele Aspekte <strong>und</strong> funktionalsprachliche Ansätze in der<br />
Bildverarbeitung<br />
Im Bereich der Bildverarbeitung wird <strong>die</strong> Analyse von Parallelität <strong>und</strong> Nebenläufigkeit durch<br />
verschiedene Fragestellungen <strong>und</strong> Probleme motiviert. Zum einen ist <strong>die</strong> Bildverarbeitung ein<br />
Gebiet, das sich aufgr<strong>und</strong> seiner inhärenten Parallelität sehr gut zur Parallelisierung eignet, zum<br />
anderen ist der Einsatz von parallelen Rechnerarchitekturen oft der einzige Weg, <strong>die</strong> erforderliche<br />
Rechenleistung <strong>für</strong> <strong>die</strong> Lösung umfangreicher <strong>und</strong> komplexer Aufgaben zu bekommen.<br />
Trotzdem klafft immer noch eine große Lücke zwischen den Möglichkeiten paralleler Architekturen<br />
<strong>und</strong> deren Ausnutzung durch Bildanalyseapplikationen [BBG94, Lüc00]. Versuche,<br />
<strong>die</strong>se Lücke zu schließen, müssen sich mit den folgenden Fragestellungen auseinandersetzen:<br />
¯ Welche Parallel-Hardware wird eingesetzt? — Spezialkarten, Standard-Multiprozessor-<br />
PCs oder Workstations, massivparallele Rechner (MIMD oder SIMD), . . .<br />
¯ Wie werden parallele Programmaspekte modelliert? — explizit, implizit, durch imperative,<br />
funktionale oder problemspezifische Sprachen, graphisch, . . .<br />
¯ In welchen Ebenen erfolgt <strong>die</strong> Parallelisierung? — <strong>Daten</strong>, Operatoren, Aufgaben, Pipelining,<br />
. . .<br />
¯ Welche Instanz ist <strong>für</strong> <strong>die</strong> Parallelisierung zuständig? — Anwendungsentwickler, Parallelisierungssystem,<br />
Software-Agenten, Betriebssystem, . . .<br />
1 Im folgenden sollen hier im Zusammenhang mit Sensordaten ausschließlich <strong>die</strong> Begriffe Folge <strong>und</strong> Sequenz<br />
verwendet werden, da der Begriff Signal in den meisten Computersystemen <strong>und</strong> Programmiersprachen bereits fest<br />
belegt ist <strong>und</strong> zu Mißverständnissen führen könnte.