Entwurf und Entwicklung einer objektorientierten modularen Bildverarbeitungsbibliothek
Betreuer:
Prof. Dr.-Ing. K.-D. Kuhnert, Dipl.-Ing. M. Langer
Bearbeiter:
Kun Niu
Beschreibung:
Aufgabe dieser Diplomarbeit ist die Zusammenfassung der bisher existierenden Implementierungen von Bildverarbeitungsalgorithmen des Instituts für Echtzeit Lernsysteme in einer unter Windows verwendbaren C++ Klassenbibliothek VideoBitmapDLL. Durch den Entwurf einheitlicher Schnittstellen wird die universelle Wiederverwendbarkeit der bestehenden Software Projekte „Videocapturer“, „FilterManager“ und „BITMAPDLL“ gefördert. VideoBitmapDLL wird in der Entwicklungsumgebung Visual C++ 2008/VC 9.0 implementiert. Zugleich lässt sie sich in Visual C++ 2005/VC 8.0 auch gut integrieren.
VideoBitmap ermöglicht eine effektivere und effizientere Bearbeitung neuer Problemstellungen als bisher. Die Bibliothek umfasst eine Video DLL zur Echtzeitakquisition von Kamerabildern und eine GPU DLL zur Echtzeitfilterung von Kamerabildern auf der Grafikkarte. Die Video DLL ist zuständig dafür, dass die unterschiedlichen Bildeinzugsschnittstellen (S-Video, Composite, USB, Firewire, …) hinreichend abstrahiert werden können. Die GPU DLL verwendet die in den letzten Jahren rapide angestiegene Rechenleistung moderner Grafikkarten und kann Lowlevel-Bildverarbeitungsfilter direkt auf der Grafikkarte in Echtzeit berechnen lassen. Während der Echtzeitakquisition und -filterung können die Echtzeitbilder auf dem Bildschirm nebeneinander angezeigt, nacheinander in einem Arbeitsspeicher oder auf einer Festplatte gespeichert und von anderen Anwendungen weiter analysiert und ausgewertet werden. Die Geschwindigkeit von Frame-Grabben beträgt ca. 50 bis 80 Millisekunde per Frame.
Abbildung 1 Online Sobelfilter in Echtzeit auf der Grafikkarte berechnet
Für jede Funktion werden Beschreibungen, Ein- und Ausgabeparameter sowie Rückgabewerte einheitlich dokumentiert und Bemerkungen und Anwendungsbeispiele so implementiert, dass VideoBitmapDLL in der Lehre eingesetzt werden kann. Zudem lassen sich VideoBitmapDLL einfach in die Applikation einbinden. Somit ermöglicht sie weiteren Forschungsprojekten einen schnellen Zugang zur konkreten Problemstellungen der Bildverarbeitung.