Stand 11/2017

Bildanalyse in Java

Analysebild

Aufbauend auf die im ersten Praktikum erzielten Ergebnisse bei der Entwicklung eines autonomen Probennahmesystems zur Schnelldetektion von Mikroorganismen in der Luft und der zugehörigen Steuerungssoftware wurde dieses Projekt im Rahmen des zweiten Praktikums weiterentwickelt und komplettiert. Zur Komplettierung gehörte unter anderem auch die Entwicklung einer Software zur Auswertung der vom Probennahmesystem gelieferten Digitalbilder. Erst mit Hilfe dieser Software ist das Gesamtsystem in der Lage, ein quantitatives Ergebnis zu liefern.

Bei der Programmierung der Analysesoftware zur Auswertung der digitalen Mikroskopiebilder fiel die Wahl auf Java als Programmiersprache. Zwar ist der Geschwindigkeitsvorteil hardwarenäherer Sprachen wie C/C++ auch heute noch signifikant, da es aber bei der Auswertung der Bilder nicht primär auf die Geschwindigkeit ankommt, waren die Annehmlichkeiten einer modernen, strikt objektorientierten Sprache für die Wahl ausschlaggebend.

Bevor es an die Entwicklung der Algorithmen zur Bildmanipulation ging, musste zunächst eine solide Basis zum Laden und Darstellen der Bilder geschaffen werden. Java bietet hier zu von Haus aus schon eine Vielzahl geeigneter Klassen und Methoden. Besonderes Augenmerk wurde bei der Entwicklung darauf gelegt, dass stets so wenig Bilddaten wie möglich in den Speicher geladen werden müssen. Zusätzlich wurde jeder Prozess möglichst in eine variable Menge einzelner Threads aufgeteilt, um so eine bessere Ausnutzung von Mehrkern- bzw. Mehrprozessorsystemen zu gewährleisten. Nachdem das Basisprogramm fertig war, wurde die Entwicklung einzelner Module zur Bilddatenmanipulation begonnen.

Am Ende des Praxissemesters stellte ich das Gerät auf der Messe „Biotechnica“ in Hannover vor.

Messefoto

Axel Hoppe