| |
| Zielbestimmungen |
| |
Das zu entwickelnde Produkt stellt eine Weiterentwicklung für das bereits existierende Bildverarbeitungsprogramm Optimas in der Version
6.5 dar. Es wird für die Analyse von verschiedenen Infrarotbildsequenzen eingesetzt. Für die Analyse stehen statische sowie
sich bewegende Objekte zur Verfügung, wobei das Primärziel auf die Erkennung sich bewegender Objekte gelegt wird. Erkannte Objekte
werden anhand ihrer morphometrischen Eigenschaften beschrieben. Um erkannte Objekte in einer kompletten Sequenz verfolgen zu können, ist
die Kennzeichnung dieser erforderlich.
|
|
|
|
|
| |
| Musskriterien |
| |
Folgende Elemente müssen implementiert werden:
-
Manuelle Eingabe der Parameter
-
Erkennen von zusammenhängende Objekten
-
Objektbeschreibung mittels morphometrischer Merkmale
-
Entwicklung verschiedener Methoden für Szenen mit statischer Kamera
-
eine Analyse hat bei gleichbleibender Hintergrundintensität zu erfolgen
-
eine geometrische Bereichseinteilung muss für die Analyse implementiert werden
-
die Verarbeitung der Szenengeschichte muss implementiert werden
-
Eine statistische Auswertung hat zu erfolgen. Diese soll einfach und robust sein.
|
|
|
|
|
| |
|
|
|
|
| Wunschkriterien |
| |
Folgende Wünsche sollten beachtet werden:
-
Parameter sollten nicht nur eingegeben werden können, sondern auch aus den Bildern ausgelesen werden
-
Interne Statistiken sollten die Helligkeitsverlauf innerhalb von Objekten und Hintergründen beachten
-
zerteile Objekte sollten als Einheit erkannt werden. (Mensch mit Hund, gestikulierender Mensch, ...)
-
die Sequenzanalyse soll auch bei Szenen mit sich bewegender Kamera möglich sein
-
eine homogene Bereichseinteilung sollte möglich sein
-
die Analyse soll auch bei schwankender Helligkeitsintensität möglich sein
-
eine Objekterkennung erfolgt auch an Kanten und Bildübergängen
-
die unterschiedlichen Erkennungsmethoden sollten analysiert und ausgewertet werden
-
eine Synchronisation von parallel arbeitenden Kameras wäre sinnvoll zu implementieren
|
|
|
|
|
| |
|
|
|
|
| Abgrenzungskriterien |
| |
Die zu entwickelnde Software kann nur als Erweiterung für das Bildverarbeitungsprogramm Optimas verwendet werden. Andere Bildverarbeitungsprogramme werden nicht unterstützt. Der Aufruf der DLL in Optimas kann nur mit Hilfe eigens dafür geschriebener Makros erfolgen. Diese Makros müssen in der dem Bildverarbeitungsprogramm eigenen Makrosprache verfasst werden. Die Messdaten werden nicht von Optimas weiterverarbeitet. Somit ist die Objektverfolgung derzeit nicht möglich. Die Eingangsbilder dürfen nur einkanalige Graustufenbilder (8bit) sein. Andere Bildtypen werden nicht verarbeitet. Die Bildtypen für eine Infrarotbildanalyse sind auf die Standards begrenzt, welche Optimas zur Verfügung stellt.
|
|
|
|
|
| |
|
|
|
|
| Produkteinsatz |
| |
Die zu entwickelnde Software wird für die Analyse von Infrarotbildsequenzen genutzt werden. Das Anwendungsgebiet wurde hier im speziellen auf die Überwachung von Kleinflugplätzen festgelegt. Darausfolgend sind Standardbenutzer eingewiesenes Flughafenpersonal, sowie Sicherheitsdienste. Für die Nutzung des Programms ist ein handelsüblicher PC erforderlich.
|
|
|
|
|
| |
| Produktumgebung |
| |
|
|
|
|
| Hardware |
| |
Das Programm würde für die Hardware-Umgebung eines Personalcomputers entwickelt, dessen Ausstattung ähnlich der des Zielsystems ist. Vorraussetzungen für den Betrieb dieses Programmes sind:
-
Intel Pentium 3 Prozessor mit 700 MHz
-
128 MB RAM
-
50 MByte freien Festplattenspeicher
-
Grafikkarte mit mindestens 8Mbyte eigenem Grafikspeicher
Empfohlen für eine schnellere Berechnung:
-
Intel Pentium 3 Prozessor mit 1,2 GHz
-
256 MB RAM
-
150 MByte freien Festplattenspeicher
-
Grafikkarte mit 16Mbyte eigenem Grafikspeicher
-
Maus
-
VGA bzw. SVGA Bildschirm
|
|
|
|
|
| |
|
|
|
|
| Software |
| |
Dieses Programm wurde für die Microsoft Betriebssysteme Windows 98, Windows NT, Windows 2000 entwickelt. Um die Software ausführen zu können ist das Bildverarbeitungsprogramm Optimas notwendig, welches auf dem Zielsystem installiert sein muss.
|
|
|
|
|
| |
|
|
|
|
| Schnittstellen |
| |
Die Software benötigt für eine ordnungsgemäße Funktion nur eine Schnittstelle:
|
|
|
|
|
| |
|
|
| Produktfunktionen |
| ⁄F10⁄ |
|
Das Produkt wird von Optimas gesteuert, somit ist der Start von Optimas notwendig |
|
| ⁄F20⁄ |
|
Auswahl einer bestimmten Bildsequenz mit Einstellung der Bildanzahl und dem Abstand der Bilder untereinander
|
|
| ⁄F30⁄ |
|
Auswahl des Verzeichnisses in dem die Bilder gespeichert sind |
|
| ⁄F40⁄ |
|
Überprüfen der Sequenznummer; eine Fehlermeldung muss im Fall von Falscheingabe angezeigt werden.
|
|
| ⁄F50⁄ |
|
geometrische Bereichseinteilung mit Hilfe einer Konfigurationsdatei |
|
| ⁄F60⁄ |
|
geometrische Bereichseinteilung durch Zeichnen einer Maske auf das dargestellte Bild |
|
| ⁄F61⁄ |
|
zeichnen einer Rechtecksmaske |
|
| ⁄F62⁄ |
|
zeichnen einer Freihandsmaske |
|
| ⁄F63⁄ |
|
Eingabe der Anzahl der Masken |
|
| ⁄F64⁄ |
|
Eingabe der Streuungsparameter pro Maske |
|
| ⁄F70⁄ |
|
abspeichern der gezeichneten Maske in eine zusätzliche Konfigurationsdatei |
|
| ⁄F80⁄ |
|
homogene Bereichseinteilung mittels einer automatischen Sequenzanalyse |
|
| ⁄F90⁄ |
|
die Größe des Strukturelements ändern |
|
| ⁄F100⁄ |
|
eine Fehlermeldung wird angezeigt wenn die Breite des Strukturelements inkorrekt ist |
|
| ⁄F110⁄ |
|
einschalten der verschiedenen Analysemethoden für die Bewegungsanalyse |
|
| ⁄F120⁄ |
|
Eingabe von Größe und Position des Korrelationsfensters für Szenen mit bewegter Kamera |
|
| ⁄F130⁄ |
|
Einsetzen der Szenengeschichte für eine komplette Sequenzanalyse |
|
| ⁄F140⁄ |
|
Erkannte Objekte im Ergebnisbild sichtbar machen und die Objekteigenschaften speichern |
|
| ⁄F150⁄ |
|
die Analyse beenden |
|
|
| |
|
|
| Produktdaten |
| ⁄D10⁄ |
|
Das Ergebnisbild, welches die erkannte Objektbewegung enthält muss für eine spätere Auswertung gespeichert werden. |
|
| ⁄D20⁄ |
|
Alle Objekteigenschaften der erkannten Objekte müssen in einer ASCII-konformen Datei mit der Dateiendung "xls" gespeichert werden. |
|
| ⁄D30⁄ |
|
Die geometrischen Bereichsdaten werden aus Konfigurationsdateien gelesen. |
|
| ⁄D40⁄ |
|
Selbsterstellte geometrische Maskendaten werden in Konfigurationsdateien gespeichert. |
|
|
| |
|
|
| Benutzerschnittstellen |
| ⁄B10⁄ |
|
Die Bedienung des Pogramms erfolgt über die linke Maustaste und über die Tastatur. |
|
| ⁄B20⁄ |
|
spezielle Dialoge mit selbsterklärender Funktionalität |
|
| ⁄B30⁄ |
|
die zu entwickelnden Dialoge sollen den typischen Windowsstil haben |
|
|
| |
|
|
|
|
|
| Qualitätsanforderungen |
| |
Produktqualität |
sehr gut |
gut |
normal |
unwichtig |
|
| |
Funktionalität |
|
|
|
|
|
| |
Angemessenheit |
|
X |
|
|
|
| |
Richtigkeit |
|
X |
|
|
|
| |
Zeitverhalten |
|
|
|
X |
|
| |
Zuverlässigkeit |
|
|
|
|
|
| |
Fehlertoleranz |
|
X |
|
|
|
| |
Benutzbarkeit |
|
|
|
|
|
| |
Verständlichkeit |
X |
|
|
|
|
| |
Erlernbarkeit |
|
X |
|
|
|
| |
Bedienbarkeit |
X |
|
|
|
|
| |
Änderbarkeit |
|
|
|
|
|
| |
Analysierbarkeit |
|
X |
|
|
|
| |
Modifizierbarkeit |
|
X |
|
|
|
| |
Stabilität |
X |
|
|
|
|
| |
Prüfbarkeit |
X |
|
|
|
|
| |
Übertragbarkeit |
|
|
|
|
|
| |
Anpaßbarkeit |
|
|
X |
|
|
| |
Austauschbarkeit |
|
|
X |
|
|
|
| |
|
|
| Globale Testkriterien⁄Testfälle |
| ⁄T10⁄ |
|
Eine Infrarotbildsequenz mit einem Menschen als Hauptobjekt muss analysiert werden. |
|
| ⁄T20⁄ |
|
Eine Infrarotbildsequenz die einen Menschen und einen Hund als Objekte enthält muss analysiert werden. |
|
| ⁄T30⁄ |
|
Eine Infrarotbildsequenz mit einem Menschen und einem Auto als Objekte muss analysiert werden. |
|
|
| |
|
|
|
|
| Entwicklungsumgebung |
| |
Die Software wird in ihrem Ganzen in der Entwicklungsumgebung von Microsoft Visual C++ 6.0 entwickelt. Die Infrarotbildanalyse setzt die Entwicklung einer DLL (Dynamic Link Library) voraus, die in dem Bildverarbeitungsprogramm Optimas eingesetzt wird. Der Einsatz dieser DLL ist nur mit Hilfe von Makros möglich. Solch Makro wird in der Programmiersprache des Bildverarbeitungsprogramms geschrieben. Die Programmiersprache von Optimas ALI hat eine Syntax ähnlich der Programmiersprache von C. Jedoch ist ALI keine Implementation von C, es ist eine andere Sprache mit einer Semantik basierend auf Ideen von C, APL und der statistischen Sprache S von UNIX. Es sollte weiterhin bemerkt werden, dass diese Sprache eine Interpretersprache ist. Die eingesetze Hardware genügt den Mindestanforderungen im oben genannten Bereich Anforderungen.
|
|
|
|
|