Koloradokäfer
Imgalize

Imgalize

Zur Analyse von Einbettungen in Pixelgrafiken (Steganografie: Verstecken von Daten in anderen Daten) habe ich ein kleines Programm gebastelt, welches ich hier zur Verfügung stellen möchte. Dabei handelt es sich um eine Minianwendung, welche Bilder laden kann. Die eigentliche Funktionalität wird durch Plugins bereitgestellt. Enthalten sind im Moment die folgenden: Extrahieren der Least Significant Bits (LSB), erstellen eines Histogramms, Extrahieren eines Textes aus den LSB mit konstantem Schlüssel. Es können leicht eigene Plugins hinzugefügt werden. Die Benutzungsoberfläche ist mit dem Standard Widget Toolkit (SWT) umgesetzt, so dass die Standardelemente des jeweiligen Grafikmanagers verwendet werden. Zum Ausführen wird Java (JRE 1.5) und das SWT (in der Regel vorinstalliert) benötigt. Die Anwendung kann nach dem Entpacken des Archivs mit diesem Befehl gestartet werden: java -jar imgalize.jar

Kompilierte Version für Linux 64Bit und Quellcode herunterladen
Kompilierte Version für Windows und Quellcode herunterladen
User and Developer Manual (English)
Bildschirmfoto
Lizenz: GPLv3

FlatIcons

FlatIcons

Diese Piktogrammsammlung ist entstanden, da ich beim Programmieren immer wieder auf das Problem stoße, dass ich Icons nicht verwenden kann, weil deren Lizenz nicht mit der meiner Software kompatibel ist. Hin und wieder führt das dazu, dass selbst Icons entworfen werden müssen. Diese will ich hier sammeln. Zur Zeit enthält das Archiv Piktogramme für Betriebssysteme und Browser. Der Stil der Icons ist flach und flächenhaft gehalten, weshalb sie besonders für kleine Größen geeignet sind. Die Quelldateien im SVG-Format liegen dem Archiv bei.

Iconset herunterladen (10 Icons)
Lizenz: CC0 (Copyleft)
Wichtig: Das Markenrecht bleibt hiervon unberührt! Bestimmte Icons dürfen unter Umständen nur im Zusammenhang mit der Marke verwendet werden, welcher sie (offensichtlich) zuzurechnen sind.

Shell Trackback

Shell: Ziehzeit des Tees anzeigen

„Verdammt! Jetzt hat der schwarze Tee wieder 10 Minuten gezogen!” Falls du deinen Tee auch schon einmal wegschütten musstest, weil du ihn vertieft in deine Arbeit oder in ein Blog, hast zu lange ziehen lassen, dann ist hier die Lösung: Dieses Skript zeigt im GNOME-Panel ein Benachrichtigungssymbol mit der Zeit an, die dein Tee noch ziehen muss. Nach Ablauf der Zeit erscheint eine Benachrichtigung in Form einer Sprechblase.
Benötigt wird das Paket zenity. Das Skript führt man im Terminal aus (Dateirechte auf "ausführbar" setzen!) oder fügt es ins Anwendungsmenü ein. Folgende Parameter können dem Skript übergeben werden: -d DAUER oder --duration DAUER gibt die Dauer in Sekunden an. Die Option -n NAME oder --name NAME benennt die Teesorte mit NAME.

Quelltext herunterladen
Bildschirmfoto
Lizenz: GPLv3

Shell Trackback

Shell: JPEG-Metadaten setzen

Mit diesem Shellskript können die gebräuchlichen IPTC-Daten eines JPEG-Bildes gesetzt werden. Gesteuert durch GNOME-Dialoge kann der Benutzer eine Lizenz auswählen und eine Beschreibung eingeben. Der Autor wird ebenfalls vom Skript gesetzt. Um den Autor zu ändern muss dieser jedoch direkt im Skript ganz oben (ARTIST="...") festgelegt werden.
Benötigt werden die Pakete zenity und libimage-exiftool-perl. Das Skript führt man im Terminal aus (Dateirechte auf "ausführbar" setzen!) und übergibt beliebig viele Dateinamen. Es bietet sich auch an dieses Skript in eine Nautilus-Aktion einzubauen, so dass es automatisch als Menüeintrag für JPEG-Dateien angezeigt wird.

Quelltext herunterladen
Schema für Nautilus-Aktionen
Bildschirmfoto
Lizenz: GPLv3

Shell Trackback

Shell: Trackbacks senden

Dieses Shellskript erlaubt es Trackbacks an ein Blog zu senden. Über einen GNOME-Dialog werden Blogname, Titel des Eintrags, URL und ein Auszug aus dem Inhalt erfragt. Der so zusammengestellte Trackback kann dann an beliebig viele Blogs versendet werden.
Benötigt werden die Pakete zenity und curl. Das Skript führt man im Terminal aus (Dateirechte auf "ausführbar" setzen!) oder fügt es ins Anwendungsmenü ein.

Quelltext herunterladen
Bildschirmfoto
Lizenz: GPLv3

Bildsegmentierung: Normalized Cut und Contour Continuity

Der C++-Quelltext implementiert zwei Algorithmen zur Bildsegmentierung:

Kurzbeschreibung: Der Normalized Cut ist ein Graph-Cut-Algorithmus, welcher einen Graphen anhand seiner Kantengewichte so in zwei Teile zerlegt, dass nur Kanten mit einem möglichst geringen Gewicht entfernt werden. Durch das Normalisieren über alle Kantengewichte wird sicher gestellt, dass die beiden Teile möglichst groß sind. Im konkreten Fall sind die Ecken des Graphen die Pixel eines Bildes und die Kantengewichte repräsentieren die Ähnlichkeit dieser Pixel. Die Ähnlichkeit kann unter anderem mit dem Contour-Continuity-Verfahren berechnet werden, welches nicht nur bestehende Konturen, sondern auch intuitive Konturen (z.B. Kanisza Dreieck) erkennt. Liegt eine Kontur zwischen zwei Pixeln wirkt sich dies entsprechend negativ auf das Kantengewicht aus. [mehr]


OggConvert

OggConvert

OggConvert ist ein Java-Frontend zum Umwandeln von Audiodateien ins OggVorbis-Format. Für das Konvertieren der Audiodateien können beliebige Kommandozeilentools verwendet werden. Diese müssen unabhängig von OggConvert installiert werden.
Das Programm läuft auf jedem System, auf dem eine halbwegs aktuelle JavaVM installiert ist (getestet mit Java 6). Als Konvertierungsprogramm bietet sich zum Beispiel oggenc an. Dieses Kommandozeilentool ist u.a. für Windows, Linux und Mac zu haben. Meist ist es schon im System mit vorinstalliert. Unter Linux nutze ich außerdem mp32ogg.
Die verschiedenen Audiowandler können im Programm unter Einstellungen eingetragen werden. Voreingestellt sind die genannten Programme für Linux.

Quelltext herunterladen - Entpacken und readme.txt beachten!
Bildschirmfoto
Lizenz: GPLv3

Simple3D

3D Viewer

Der Simple3D-Viewer entstand im Hauptstudium in Bezug zur Vorlesung Computergrafik. Ziel war es mittels OpenGL und FLTK (ein GUI-Toolkit für C++ Grafikanwendungen) ein C++-Programm zu schreiben, welches in der Lage ist verschiedene einfache dreidimensionale Körper darzustellen.
Das Programm kann hier als Windows-Anwendung (exe) heruntergeladen werden. Einfach das zip-Archiv in einen Ordner entpacken und die Simple3D.exe starten oder wahlweise vorher die README.txt lesen.
Download: simpe3d.zip (ca. 1,2MB)

Das Programm bietet die folgenden Features: [mehr]


Admin-Konsole

Admin-Konsole zur Remotesteuerung

Im Rahmen des Softwaretechnologie-Praktikums im vierten Semester entstand in Teamarbeit für die Firma pcvisit-Software AG eine prototypische Admin-Konsole. Das Praktikum fand studienbegleitend über das gesamte Sommersemester statt. Am Anfang stand für mich die Frage: Prototypische Admin-Konsole - für was?
Die Firma pcvisit entwickelt selbst ein Programm zur Remotesteuerung pcvisit4remote. Dieses Programm dient der Steuerung eines einzelnen Host-Rechners mittels eines Gastmoduls über das Internet. Da das Programm zunehmend durch Administratoren verwendet wird sollte das Gastmodul durch eine plattformunabhängige und komfortablere Software ersetzt werden. [mehr]


Lernspiel

Lernspiel - Reise ins Ich

Bei einem Praktikum im zweiten Semester entstand für die Lehrveranstaltung Medienpsychologie und Mediendidaktik ein Lernprogramm. In einer Gruppe von anfangs noch neun Studenten sollte das Projekt mit Flash realisiert werden. Es sollte auf eine konkrete Zielgruppe ausgerichtet sein und in dieser Zielgruppe evaluiert werden. Über die Zielgruppe - Kinder - herrschte schnell Konsens, was in der Anfangsphase selten war. Wir präzisierten das später noch ein wenig auf Kinder in der vierten Klasse. Aus der Zielgruppe entstanden auch Name und Logo für unsere Gruppe: Das Adventure4Kidz-Team mit dem Schaf.

Warum der Rechtschreibfehler in den Gruppennamen gehört, weiß ich nicht. Aber es klingt doch gleich viel cooler. - Alles Marktstrategie!
Was wollten wir machen? Ideen gab es viele. Viele schlechte. Letztendlich kristallisierten sich zwei Vorschläge heraus: Ein Lernprogramm, das Interesse für den Biologieunterricht und den eigenen Körper wecken sollte oder eine Reise durch unser Sonnensystem. Die Tutoren entschieden sich für die erste Idee. Und so entstand die Reise ins Ich.
Das Programm behandelt die inneren Organe Lunge, Herz, Magen, Leber und Nieren. Im Programm wechseln sich immer Lerneinheiten mit Spielen ab. Zuerst wird in einem kurzen kindgerechten Text das Wichtigste zum jeweiligen Organ erklärt. Danach erfolgt eine Überprüfung des soeben erlesenen durch ein kurzes Quiz.
Das darauf folgende Spiel ist dem Thema angepasst: In der Lunge müssen rote Blutkörperchen mit Sauerstoff bestückt werden. Im Herz werden Blutgefäße zusammengesetzt, damit der Blutkreislauf in Gang kommt. Im Magen gibt es ein Memory mit gesunden und ungesunden Lebensmitteln. In der Leber müssen Nährstoffe aufgesammelt werden. Und in der Niere wird das Blut von schädlichen Partikeln gereinigt.
Einheiten, die einmal erfolgreich absolviert wurden, können auch einzeln ausgewählt oder übersprungen werden.
Die Evaluation fiel recht positiv aus. Das Programm haben wir in einer fünften Klasse getestet und waren erstaunt, wieviel die Kinder bereits vorher über die Organe wussten. Was noch fehlt: Die Lerneinheiten müssten noch vertont werden. Nur hätte man dafür eine gute Erzählerstimme gebraucht.





1. Ausschnitt aus dem Intro: Adventure4Kidz | 2. Lerneinheit: Die Lunge | 3. Einige Spieleinheiten (Lunge, Herz, Leber und Niere) | 4. Einordnung der Organe



nach oben
HTTPS  Impressum & Kontakt  Lizenz: cc-by-nc-sa del.icio.us Digg Mister Wong StumbleUpon  Koloradokäfer 2010