Pixel Clustering

Im Moment studiere ich mit meiner Schulklasse ein Theaterstück ein (,,Wie es euch gefällt“ von William Shakespeare), so dass ich während den Szenen, in denen ich nicht mitspiele viel Wartezeit habe, während der ich nichts zu tun habe. So kam ich zu folgendem Gedankenexperiment, dass ich noch am selben Tag in die Tat umgesetzt habe.

Ich habe mich gefragt, was wohl passiert, wenn man jeden Pixel eines Bildes als Punkt in einem fünfdimensionalen Raum ansieht. Dabei sind die ersten beiden Koordinaten die x- und y Koordinaten des Pixels im Bild selber und die letzten drei Koordinaten ergeben sich aus den RGB-Werten des Pixels. Ein Pixel an der Stelle x=7 und y = 23 mit der Farbe R=55, G=88, B = 180 hat ist also ein Punkt im fünfdimensionalen Raum: P(7|23|55|88|180).

Wenn man dann alle Pixel eines Bildes in Punkte umwandelt erhält man also Punktwolken im fünfdimensionalen Raum, die man mit einem einfachen Clusteringverfahren zusammenfassen kann. Wenn man das tut und die so als ,,zusammenhängend“ erkannten Pixel gleichfarbig einfärbt, so dachte ich mir, müssten doch ganz nette Bilder entstehen.

Nach der Umsetzung bestätigte sich das auch:

Ich habe die Bilder direkt von meiner Webcam genommen, leider ist an ein in Echtzeit berechneter Effekt  nicht umsetzbar, da es sehr lange dauert, bis der Clustering-Algorithmus bei so vielen Bildern sehr lange zum terminieren braucht. Wer an dem Programm interessiert ist, kann gerne mit mir in Kontakt treten. Es ist in Java geschrieben und dadurch einigermaßen plattformunabhängig.

Advertisements

Künstliche neuronale Netze

Wie hier bereits beschrieben, interessiere ich mich unter anderem auch sehr für künstliche neuronale Netze. Das sind sehr abstrakte Modelle der biologischen neuronalen Netze wie sie beispielsweise im Hirn des Menschen zu finden sind, mit denen man, nachdem sie in einige Zeilen Programmcode gefasst wurden, am Computer fabelhafte Dinge anrichten kann. In vielen Bereichen werden diese neuronalen Netze bereits angewendet wie zum Beispiel in der Bilderkennung.

Deshalb habe ich mich schon im letzten Jahr im Rahmen einer umfassenden Schularbeit mit dem Thema theoretisch und praktisch auseinandergesetzt. Der schriftliche Teil, der eine kleine Einführung zu den neuronalen Netzen und eine Beschreibung meines Praktischen Teils enthält ist hier einzusehen.