Archive for the ‘Neue Programmversion’ Category

Arbeiten am Schlagwort-Konfigurationsdialog

Donnerstag, Januar 23rd, 2014

Mit dem Schlagwort-Konfigurationsdialog war ich bisher in zweierlei Hinsicht unzufrieden. Immer wenn ich ein Schlagwort einer Schlagwortkategorie zuordnen wollte, ärgerte ich mich, das dieses nur recht umständlich über die Funktion „Schlagwortkategorie editieren“ möglich war. Gerade bei der Zuordnung von mehreren Schlagworten verlor ich schnell die Lust und dachte sofort an den Schlagwort-Konfigurationsdialog, der eigentlich genau für diese Zuordnungsarbeit erschaffen wurde. Allerdings schaffte ich es bisher nicht, den Dialog soweit fertigzustellen. Des weiteren war es natürlich unschön, einen Dialog in der Anwendung zu haben, der nicht sinnvoll genutzt werden konnte. 

Schlagwortkonfigurationsdialog

Schlagwortkonfigurationsdialog

Damit ist nun endlich Schluss, denn mit dem Schlagwort-Konfigurationsdialog können jetzt Schlagworte zu Schlagwortkategorien zugeordnet werden. Dazu wählt ihr als erstes auf der linken Seite eine Schlagwortkategorie aus. Auf der rechten Seite befindet sich eine Schlagwortcloud, die alle Schlagworte enthält, die dem System bekannt sind. Schlagworte, die mit der gewählten Kategorie verknüpft sind, werden farbig dargestellt. Die nicht verknüpften Schlagworte sind grau. Durch einfaches Anklicken eines Schlagwortes kann dieses mit der Kategorie verknüpft werden. Auf gleicher Art und Weise können Verknüpfungen gelöscht werden. Nachdem alle gewünschten Schlagworte ausgewählt wurden, können die Änderungen über den Knopf links oben in der Werkzeugleiste gespeichert werden. 

Außerdem habe ich in den letzten Tagen ein weiteres Filterkriterium angelegt. Es kann nun nach der Kamera, die bei der Aufnahme verwendet wurde, gefiltert werden. Das Kriterium, ist dabei so angelegt, das in einer Auswahlliste alle Kameramodelle angezeigt werden, die dem System bekannt sind. An dem Schlagwort-Filterkriterium habe ich noch einige kleinere Verbesserungen vorgenommen. Die einzelnen gewählten Schlagworte werden nun durch 2 senkrechte Markierungen verbunden, damit man leichter erfassen kann, welche Elemente zum gleichen Filter gehören.

Für die nächste Version habe ich mir vorgenommen, kein weiteres Filterkriterium zu schaffen. Ich möchte lieber eine Funktion, die ich mir schon recht lange vorgenommen habe, implementieren. Das BVASystem soll in der Lage sein, ein oder mehrere Bilder wieder aus der Datenbank zu exportieren. Dabei soll eine Zielgröße auswählbar sein, so das die Fotos nicht mehr manuell verkleinert werden müssen, wenn man sie beispielsweise per E-Mail verschicken möchte. Außerdem wünsche ich mir eine Funktion, mit der alle Filter auf einmal gelöscht werden können. Nach dem gleichen Prinzip soll es auch möglich sein, alle Filter auf einmal zu deaktivieren.

Filterung nach Schlagworten

Mittwoch, Januar 8th, 2014

Nachdem ich meine Erkrankung, die mich Weihnachten flach gelegt hat, überstanden hatte, beschäftigte ich mich über den Jahreswechsel hinweg mit der Bildfilterung. Es ist mir wichtig, das die noch neue Funktion nach und nach mit vielen weiteren Kriterien erweitert wird. Als erstes neues Filterkriterium wählte ich die Schlagworte, da ich finde, das die Schlagworte ein zentraler Bestandteil der Bildverwaltung sind.

Während der Umsetzung fiel mir dann auf, das ich mir etwas kompliziertes ausgesucht hatte. Ich hatte bisher nicht vorgesehen, das bei der Filterdefinition einzelne Filter ihre Höhe verändern können. Außerdem wollte ich natürlich auch wieder das Popup-Fenster, welches Schlagwortvorschläge anzeigt, wiederverwenden. Dafür musste ich die Bindung der Komponeten an die Datenschicht überarbeiten, da  dort bisher keine Verbindung zur Datenbank möglich war. 

Filterung nach Schlagworten

Filterung nach Schlagworten

Die Filterung nach Schlagworten funktioniert prinzipiell genauso wie die bereits bekannten Filterkriterien. Es können allerdings mehrere Schlagworte in einem Filter zusammen ausgewählt werden.  Die Definition mehrerer Schlagworte zur Filterung erfolgt nach einander. Nach der Auswahl eines Schlagwortes, wird das Filterelement um einen Eintrag erweitert und das Eingabefeld geleert. Dort können anschließend weitere Schlagworte eingegeben werden. Schlagworte, welche sich nicht im Vorschlag-Popup befinden, können mit der „Enter“-Taste bestätigt werden.  Um den Filter dann zu erfüllen muss das jeweilige Foto alle gewählten Schlagworte haben.

Neu ist ebenfalls die Möglichkeit, das nicht mehr benötigte Filter gelöscht werden können. Dafür habe ich hinter jeden Filter einen kleinen Knopf integriert, der ein Mülltonnen-Symbol zeigt. Für einen einfachen Klick kann die jeweilige Filterdefinition gelöscht werden. Versucht man das letzte Filterelement eines Kriteriums zu löschen, so bleibt das Element bestehen und wird neu initialisiert. Für eine erneute Definition eines Filters soll das erste Element immer sofort bereitstehen.

BVASystem Version 2.1.6

Montag, Dezember 16th, 2013

Es hat nun zwar etwas länger gedauert die nächste BVASystem Version ohne „dev“ Zusatz fertigzustellen, aber dafür hat sich auch einiges geändert. Ganz frisch fertig geworden ist der riesige Funktionsbereich zur Bildfilterung. Außerdem neu sind die Schlagwortrubriken, die Verschlagwortung mehrerer Fotos auf einmal und das Histogramm-Werkzeug. Die neue Version 2.1.6 kann im Download-Bereich ab sofort heruntergeladen werden. Die Neuerungen im Detail:

Bildfilterung

Der größte Teil der Arbeit steckt in dem neuen Bereich zur Bildfilterung. Mit ihm soll es möglich sein, ein gesuchtes Bild schnell und einfach zu finden. Generell teilt sich die Bildfilterung in drei Bereiche. Es können Filter definiert werden, die auf Meta-, Nutzer- oder Programmdaten basieren. Metadaten sind Informationen, die dem Bild entnommen werden konnten. Nutzerdaten wurden vom Nutzer eingegeben, während Programmdaten vom BVASystem selbst errechnet werden. In jedem der 3 Bereiche können durch einen einfachen Klick Filter aktiviert bzw. deaktiviert werden. Notwendige Parameter lassen sich in den jeweiligen Steuerelementen auswählen. Nachdem eine Änderung an den Filtereinstellungen vorgenommen wurde, startet ein nebenläufiger Prozess, der für jedes Foto prüft ob die Filterkriterien passen. Die Ergebnisse werden in der Miniatur- und Filmstreifenansicht dargestellt. Die eigentliche Bildliste bleibt unverändert bestehen. Es werden nur die passenden Fotos hervorgehoben, währen nicht passende Bilder ausgegraut werden.

Miniaturbilde mit aktivierter Bildfilterung

Miniaturbilde mit aktivierter Bildfilterung

Schlagwortrubriken

Mit den Schlagwortrubriken ist es möglich, ein System in die normalerweise hierarchielosen Schlagworte zu bringen. Ich persönlich habe mir eine Schlagwortrubrik „Urlaubsreisen“ angelegt, die wiederum Unterrubriken für jeden Aufenthaltsort besitzen. Allgemeinere Schlagworte, wie zum Beispiel „Strand“, habe ich in die Schlagwortrubrik „Orte“ einsortiert. Außerdem habe ich mir eine Rubrik „Personen“ mit den Unterrubriken „Familie“, „Freunde“, „Bekannte“, usw. angelegt. Suche ich nun also zum Beispiel ein Bild, auf dem eines meiner Kinder drauf ist, schaue ich in die Schlagwortrubrik „Familie“. Sind dort zu viele Fotos in der entsprechenden Bildliste, so grenze ich sie durch die Bildfilterungsfunktion weiter ein, bis ich das gesuchte Bild gefunden habe. 

Verschlagwortung mehrerer Fotos

Beim Verschlagworten meiner Urlaubsbilder fiel mir auf, das dem BVASystem eine Funktion fehlte, mit der mehrere Fotos auf einmal mit Schlagworten verknüpft werden können. Ich wollte für Urlaubsbilder das Schlagwort „Holland“ festlegen und musste dafür bei jedem Bild mit einem Klick das Schlagwort aktivieren. Nun kann ich in der Miniaturbild- oder Filmstreifenansicht eine beliebige Bildmenge auswählen und von dort aus über das Popup-Menü einen Dialog zur Verschlagwortung öffnen. Alle Schlagworte, die ich dort auswähle, werden für alle markierten Bilder gesetzt.

Histogramm-Werkzeug

Bei der Bewertung von Fotos betrachte ich ganz gerne das Histogramm des Bildes, um einen besseren Überblick  über die Farbverteilung zu erhalten. Bisher musste ich dafür das Foto immer in meinem Bildbearbeitungsprogramm öffnen. Dieser Schritt entfällt nun, da ich jederzeit in einer der Bildansichten das Histogramm-Werkzeug öffnen kann.

Ein Ende in Sicht

Freitag, Dezember 6th, 2013

Nach einigen etwas zähen Wochen, hab ich es heute nun endlich geschafft, die Grundfunktionen zur Bildfilterung fertigzustellen. Die vorläufig ersten drei Filterungsmöglichkeiten können alle genutzt werden, um die Menge Fotos der aktiven Bildliste einzugrenzen. Wie bereits gesagt, werden dabei allerdings keine Bilder aus der Liste entfernt. Fotos bei denen die gesetzten Filter nicht passen, werden ausschließlich optisch anders dargestellt als die Bilder, bei denen die Filter übereinstimmen. 

Bildfilterung nach Fotos deren Bildtitel Düne enthalten

Bildfilterung nach Fotos deren Bildtitel Düne enthalten

Funktionsweise der Bildfilterung

Die Bildfilterung läuft in einem neben läufigen Prozess, der im BVASystem integriert ist. Sobald ihr einen Filter setzt, wird der Prozess aktiv. Dieser prüft nacheinander für jedes Bild, ob der Filter passt oder nicht. Notwendige Daten, wie zum Beispiel den Bildtitel, erfragt sich der Prozess bei der Hauptanwendung. Kennt die Hauptanwendung die angeforderten Daten nicht, zum Beispiel ist die Information über die mittlere Helligkeit nicht für jedes Bild einer Bildliste verfügbar, so bestimmt der Prozess die notwendigen Daten selber. Im Falle eines Datenbankbildes wird der jeweilige Wert aus der Datenbank abgefragt. Bei Fotos von der Festplatte wird der Wert einfach am Bild bestimmt bzw. berechnet. Nachdem für ein einzelnes Foto feststeht, ob die Filter passen oder nicht, wird die Hauptanwendung über das Ergebnis informiert. Diese aktualisiert dann die Oberfläche und zeigt das Filterergebnis an. Währenddessen bestimmt der Prozess bereits die Filterung für das nächste Bild.

Deaktiviert ihr einen Filter wieder, so wird das Ergebnis nicht gänzlich „entsorgt“. Solange die Bildliste nicht geändert wird, steht das Filterergebnis weiterhin auf Abruf zur Verfügung. Aktiviert ihr den Filter ein zweites Mal, so wird nicht alles neu berechnet. Es wird auf die alten Ergebnisse zurückgegriffen. Dies geht um einiges schneller. Gerade bei der Filterung nach der mittleren Helligkeit macht sich dies bemerkbar, da keine Datenbankabfragen oder Berechnungen durchgeführt werden müssen.

Ausblick

Da ich ab heute, bis zum Ende des Jahres Urlaub habe, hoffe ich, das ich etwas mehr Zeit mit der Entwicklung des BVASystems verbringen kann. Es ist geplant, die neuen Funktionen nochmals ausgiebig zu Testen und auftretende Fehler zu korrigieren. Außerdem habe ich mir vorgenommen, die Optik der Bildfilterung nochmals etwas zu optimieren. Zu guter letzt möchte ich eine Statuskomponente implementieren, die anzeigt ob gerade eine Bildfilterung durchgeführt wird. Im nächsten Jahr werde ich ganz sicher die Bildfilterung weiter ausbauen. Es sind noch viel mehr Filterkriterien notwendig, damit man das System sinnvoll einsetzten kann.

Verschlagwortung mehrerer Fotos

Donnerstag, November 21st, 2013

Eine wichtige Funktion, die mir bei der Arbeit mit dem BVASystem fehlte, war die Möglichkeit mehrere Fotos mit nur einer Aktion zu Verschlagworten. Beispielsweise tagge ich alle meine Urlaubsbilder vom Hollandurlaub mit dem Schlagwort Holland. Dafür musste ich bisher alle Bilder einmal durchklicken und dort mit einem Klick das Holland Schlagwort auswählen. Nun gibt es die Möglichkeit, dieses Ziel einfacher zu erreichen. Dafür müssen in der Bildliste die Fotos markiert werden, für die Schlagworte gesetzt werden sollen. Anschließend kann per Popup-Menü ( Markierte Bilder -> mit Schlagworten verknüpfen) folgender Dialog geöffnet werden.

Verschlagwortung mehrerer markierter Bilder

Verschlagwortung mehrerer markierter Bilder

Dort wählt man, wie auch bei der einfachen Verschlagwortung, die gewünschten Schlagworte aus. Bereits gesetzte Schlagworte werden in dem Dialog natürlich angezeigt. Ausgegraute Schlagworte bedeuten dabei, das diese Schlagworte bei einem oder mehreren, aber nicht allen, Fotos der Auswahl bereits gesetzt sind. Sollen diese Schlagworte für alle Fotos gültig sein, kann man sie durch einen einfachen Klick aktivieren. Ebenso ist es möglich, mit der Funktionalität Schlagworte zu löschen.

Weitere Änderungen

Die Verschlagwortung von mehreren Fotos habe ich eigentlich nur umgesetzt, da ich es nicht mag, wenn ich in meinem Release-Rhythmus keine komplette Funktion fertigstellen kann. Der Großteil meiner Entwicklungszeit ging in den letzten Wochen natürlich wieder für die Bildfilterung drauf. Nun bin ich soweit, das der nebenläufige Arbeitsprozess, der die Filtervergleiche durchführen soll, soweit fertig ist, das er „zufällige“ Filterergebnisse generiert. Wählt man in der aktuellen Version einen Filter aus, so wird nacheinander jedes Foto der aktiven Bildliste dem Arbeitsprozess übergeben. Dort wird per Zufall ein Filterergebnis (0, 1 oder 2 Filter stimmen überein) generiert und der Hauptanwendung zur Anzeige übergeben. Mir ist klar, das das Ergebnis für euch befremdlich sein wird, da es eben noch keine richtigen Filterergebnisse sind. Ich allerdings bin total froh, das langsam ersichtlich wird, das mein Konzept zur Bildfilterung funktioniert.

Ausblick

Ich denke, das die heutige Version, die letzte Version mit unvollständiger Bildfilterungsfunktion ist. Für die nächste Version habe ich mir vorgenommen, das der Arbeitsprozess auf die definierten Filter zugreifen kann, das er die Filtervergleiche durchführt und das diese dann in der Oberfläche angezeigt werden. Das eigentliche Ziel liegt also in greifbarer Nähe. Anschließend habe ich mir eine Version offen gehalten, in der ich mich Hauptsächlich um Fehlerbeseitigungen kümmern kann, damit ich dieses Jahr noch eine Version ohne „dev“ Zusatz veröffentlichen kann. 

Optik für die Bildfilterung

Dienstag, Oktober 29th, 2013

Durch das Erreichen des nächsten Meilensteins, lässt sich nun schon recht gut erkennen, wie die fertige Funktion zur Bildfilterung aussehen wird. Im Speziellen wurde in den letzten Wochen die Optik für die Bildlisten angepasst. Vor allem ist nun erkennbar, das Fotos, die nicht zu den Filterkriterien passen, nicht vollständig ausgeblendet werden. Ich erachte es als Vorteil, wenn trotzdem alle Fotos angezeigt werden. Habe ich zum Beispiel 5 Filter definiert und kein Foto der Liste erfüllt alle Filter, so erhalte ich bei dem vom mir gewählten System trotzdem die Fotos angezeigt, die die Filterkriterien bestmöglichst erfüllen.

Wie sieht eine gefilterte Bildliste aus? 

Sobald mindestens 1 Filter aktiviert wurde, wird die Miniaturbildansicht durch ein Steuerelement auf der rechten Seite ergänzt. Das Element zeigt in Form eines Balkens, wie viele der gesetzten Filter bei dem jeweiligen Foto übereinstimmen. Außerdem wird das Miniaturbild mit reduziertem Kontrast und erhöhter Helligkeit angezeigt, sofern das Bild nicht alle aktivierten Filter erfüllt. Bewegt man die Maus über eines der Miniaturbilder, wird das Foto wieder unverändert angezeigt.

Miniaturbilder mit aktiver Bildfilterung

Miniaturbilder mit aktiver Bildfilterung

Was steht als nächstes an?

Als nächstes werde ich mich wohl daran machen, das eigentliche System der Filterung umzusetzen. In der aktuellen Version erfolgt noch keinerlei Prüfung, ob ein Foto ein Filterkriterium erfüllt. Alle Bilder werden einfach als „unpassend“ markiert, da dies zum Test der Oberflächenfunktionalitäten notwendig war. Ich muss also Funktionen schaffen, die die jeweiligen Filtertypen prüfen und diese in die bestehenden Bildladefunktionen integrieren. Schließlich soll auch die Bildfilterung nicht das Programm blockieren, wenn die notwendigen Berechnungen durchgeführt werden. 

Beginn einer etwas längeren Durststrecke

Freitag, Oktober 11th, 2013

Mit den letzten veröffentlichten Versionen der Bilddatenbank konnte ich fast immer verkünden, was für tolle neue Funktionen implementiert wurden. Mit dem heutigen Update und wahrscheinlich den folgenden auch, sieht das leider anders aus. Die letzte noch offene Baustelle, die ich noch in diesem Jahr schließen will, ist die Bildfilterung. Was nützt die beste Erfassung von Bildern und dazugehörigen Daten, wenn man sie nicht wieder gezielt suchen kann? Leider ist die Filterung, so wie ich sie mir vorstelle, eine sehr große Aufgabe, so das ich sie nur in mehreren Teilschritten umsetzen kann.

Was ist bisher umgesetzt?

Bereits vor einiger Zeit hatte ich damit begonnen, auf der rechten Seite der Anwendung einen Bereich zu schaffen, in dem Filter festgelegt werden sollen. Die zu Testzwecken dort vorhandenen blauen Kästen gibt es nun nicht mehr. Ich habe mich bei jedem der drei großen Filterbereiche (Filterung nach Metdaten, Filterung nach Nutzerdaten, Filterung nach Programmdaten) auf einen Filter festgelegt, den ich als erstes umsetzen möchte. Folgende Filter werden die ersten Filter sein, mit denen im BVASystem gearbeitet werden kann:

  • Aufnahmedatum
  • Bildtitel
  • Mittlere Helligkeit

Für alle drei habe ich die Oberfläche entworfen, mit der die Parameter der Filter festgelegt werden können. Alle Filter haben vor den Parametern eine Auswahlbox, mit der später der Filter bequem aktiviert bzw. wieder deaktiviert werden soll. Weitere Filter des gleichen Typs können über den mit „+“ beschrifteten Knopf hinzugefügt werden.

Oberfläche der ersten Bildfilter

Oberfläche der ersten Bildfilter

Was muss noch implementiert werden?

Ein Großteil der Arbeiten, die noch erledigt werden müssen, liegen im Hintergrund und werden kaum sichtbar wahrnehmbar sein. Zum einen müssen die eingestellten Filter in der Datenschicht des Programmes zwischengespeichert werden. Nachdem dies erledigt ist, muss für die Bildliste natürlich geprüft werden, für welches Foto der Liste die Filterkriterien übereinstimmen. Die dort bestimmten Filterergebnisse müssen dann natürlich in der Oberfläche dargestellt werden. Hierzu sind Änderungen an den Miniaturbildern, dem Filmstreifen, dem Einzelbild und auch der Bildinformationsansicht notwendig. Sobald die ersten Filter genutzt werden, kann ich mich austoben und eine ganze Reihe weiterer Filter implementieren. Jedenfalls habe ich dort bereits sehr viele Ideen.

Welche Schritte sind für die nächsten Wochen zu erwarten?

Da ich es nicht mag, wenn ich bis zum nächsten Update keinerlei sichtbare Änderungen erzeuge, habe ich mir vorgenommen, testweise die Darstellung eines Fotos, welches nicht den Filterkriterien entspricht, zu implementieren. Diese Bilder sollen nämlich nicht komplett ausgeblendet werden. Meine Idee ist, das die Bildanzahl der Bildliste konstant bleibt und die „passenden“ Fotos so dargestellt werden, das sie sofort ins Auge springen. Dazu später mehr … 

Erweiterung des Navigationsbaumes

Donnerstag, September 19th, 2013

Auch die letzten 2 Wochen habe ich mit anderen Dingen verbracht, als ich mir ursprünglich vorgenommen hatte. Dafür kann ich stolz verkünden, das mit dem BVASystem nun gezielt nach einzelnen Schlagworten recherchiert werden kann. Außerdem habe ich ein neues Metadaten Element entwickelt, mit dem Fotos einem Fotoalbum zugeordnet werden können, wenn deren Dateinamen einem bestimmten Muster entsprechen. Diese Funktion ist sicher für alle interessant, deren Dateinamen nicht dem Zählmuster von Digitalkameras entsprechen. Zu guter letzt habe ich nach recht langer Pause wieder an der Testanwendung weiterentwickelt, damit ich irgendwann soweit sein werde, die Worker-Funktionen automatisiert zu testen. Mittlerweile ist es zumindest möglich, ein Testbild zu erzeugen und dieses in der Datenbank zu speichern.

Erweiterung des Navigationsbaumes

Das ich dabei bin den Navigationsbaum zu erweitern, war ja bereits in den vorherigen Versionen zu erkennen. Allerdings habe ich vorige Woche mein geplantes Konzept nochmals erweitert und sofort vollständig umgesetzt. Der Navigationsbaum enthielt bereits die Schlagwortkategorien. Neu ist, das nun auch die einzelnen Schlagworte, die mit den Kategorien verknüpft wurden, im Baum angezeigt werden. Bei der Auswahl eines Schlagwortes im Baum werden die Fotos aus der Datenbank ausgewählt, die mit dem Schlagwort verknüpft wurden. Wird eine Schlagwortkategorie ausgewählt, so werden alle die Fotos in die Bildliste übernommen, die mindestens mit einem der Schlagworte der Kategorie verknüpft wurden. Neu ist ebenfalls, das unter dem Eintrag „Schlagworte ohne Kategorie“ alle Schlagworte, die in keiner Schlagwortkategorie genutzt wurden, als Unterknoten hinzugefügt werden. Auch hier können die einzelnen Schlagworte ausgewählt werden, um eine entsprechende Bildliste zu erhalten.

Schlagworte im Navigationsbaum

Schlagworte im Navigationsbaum

Automatische Zuordnungen mit Hilfe des Dateinamens

Beim Testen des BVASystems mit Bildern, die ich zur Nutzung auf meiner Homepage umbenannt hatte, fiel mir auf das es gut wäre, wenn man Fotos, bei denen der Dateiname einem Muster folgt automatisch einem Fotoalbum zuordnen kann. In meinem Beispiel geht es darum, das ich von jedem Bild immer 2 Varianten habe. Eines so wie ihr es euch auf der Homepage angucken könnt und eines welches ich nicht verkleinert habe. Die nicht verkleinerten Fotos kennzeichne ich mit einem „Original“ im Dateinamen. Mit der neuen Funktion ist es mir nun möglich, die Originale automatisch in einem Fotoalbum zu sammeln.

Metadatenelement Dateinamen-Übereinstimmung

Metadatenelement Dateinamen-Übereinstimmung

Ausblick

Bis zum nächsten Versionsupdate werde ich mich nun wirklich darum kümmern, das endlich die blauen Kästchen verschwinden. Die nun bis auch einige Kleinigkeiten fertig implementierte Recherche nach einem bestimmten Schlagwort ist ja bereits ganz gut, aber wenn man kombiniert nach 2 verschiedenen Schlagworten recherchieren möchte, wird es schnell doch recht aufwendig. Daher haben die Funktionen zur Filterung der aktiven Bildliste nun definitiv höchste Priorität. 

Histogramm-Werkzeug fertiggestellt

Freitag, September 6th, 2013

Ursprünglich wollte ich für die heute veröffentlichte Programmversion wieder an allen 3 offenen Punkten weiterarbeiten und dann in der nächsten Version das Histogramm-Werkzeug fertigstellen. Bei der Entwicklung bemerkte ich allerdings, das ich recht zügig vorankomme und habe daher das Histogramm-Werkzeug jetzt bereits fertig gestellt. Damit bleiben für die nächsten Programmversionen also noch 2 größere Baustellen.

Das Histogramm-Werkzeug

Das Histogramm-Werkzeug lässt sich, genauso wie die Lupe oder das Navigationswerkzeug, in jeder großen Bildansicht einblenden. Angezeigt wird dort standardmäßig ein Helligkeitshistogramm des gerade angezeigten Bildes. Durch die beiden unten angeordneten Knöpfe kann zwischen einem Helligkeits- und einem Farb-Histogramm umgeschaltet werden. Beim Farb-Histogramm kann es vorkommen, das sich die Daten der 3 Farbkanäle so überdecken, das man sie schlecht erkennen kann. Bewegt man sich in einem solchen Fall mit der Maus über einen Eintrag der Legende, so werden nur noch die Daten eines Farbkanals angezeigt.

Histogramm-Werkzeug im Farbmodus

Histogramm-Werkzeug im Farbmodus

Ausblick

In der aktuellen Version ist es so, das ich bei den Schlagwortkategorien schon relativ weit bin, aber sie sind noch so gut wie nutzlos, da bei einer Auswahl keine Bildliste geladen wird. Daher habe ich mir für die nächsten Wochen vorgenommen das zu ändern. Außerdem hat sich ergeben, das es gut wäre, wenn automatische Zuordnungen zu Fotoalben anhand des Dateinamens vorgenommen werden könnten. Da eine Erweiterung um ein weiteres Kriterium für die Zuordnungen keine große Hürde ist, habe ich mir vorgenommen, diese schnell vorzunehmen. Außerdem werde ich natürlich auch etwas an der Oberfläche zur Definition von Filterkriterien weiterarbeiten. Die hässlichen blauen Kästen müssen weg. 

Sichtbare Veränderungen an allen Großbaustellen

Donnerstag, August 15th, 2013

In den letzten Wochen kam ich mir ein wenig so vor, als ob ich auf dem Bau arbeite. An mehreren Stellen habe ich im BVASystem „Baustellenschilder“ aufgestellt, ein mehr oder weniger großes Loch aufgerissen, um dann anschließend die nächste Baustelle zu eröffnen. Beim Programmieren arbeite ich allerdings ganz gerne in dem Stil, da so bereits frühzeitig alle geplanten Änderungen durchdacht sind und es dann meist nur noch eine Fleißarbeit ist, sie zu Ende zu bringen. Dafür habe ich ja nun gut 3 Monate Zeit und bin guter Dinge, das ich mit der Zeit hinkommen werde. Im Detail habe ich mit folgenden Änderungen begonnen:

Werkzeug: Histrogramm

Das Histogramm-Werkzeug soll die Möglichkeit zur Bildbewertung unterstützen. In einem Histogramm wird die Farbverteilung des Bildes dargestellt. Somit ist leicht zu erkennen, ob die Farben gleichmäßig verteilt sind, ob das Bild über- oder unterbelichtet wurde, ob der mögliche Farbumfang optimal genutzt wurde usw. Das Histogramm-Werkzeug wird ähnlich umgesetzt werden, wie die anderen beiden bereits fertigen Werkzeuge. Umgesetzt  ist bisher der Anzeigebereich. Das Werkzeug kann ein- und ausgeblendet werden und die letzte Werkzeugposition wird in den Programmeinstellungen gespeichert. Vom geschätzten Arbeitsaufwand ist dieses Feature wohl das kleinste und wird daher wohl als erstes fertig werden.

Zwei der drei Großbaustellen im Bild

Zwei der drei Großbaustellen im Bild

Filterung

Nachdem in der Bilddatenbank nun Schlagworte erfasst werden können, wird es Zeit, das die gespeicherten Informationen genutzt werden können um ein Foto gezielt wiederzufinden. Dafür sollen vom Anwender beliebige Filter definiert werden können, mit denen die Anzahl der Bilder in der aktiven Bildliste reduziert werden kann. Es wird zum Beispiel möglich sein, das nur noch die Bilder angezeigt werden, die mit dem Schlagwort „Nordsee“ versehen wurden. Da mir spontan sehr viele Filtermöglichkeiten einfallen, wird diese Änderung wohl die meiste Zeit in Anspruch nehmen. Bisher habe ich damit begonnen, auf der rechten Programmseite auf einem Animationspanel, die Oberfläche zu entwerfen, die zur Festlegung der Filter dienen wird.

Schlagwortkategorien und Schlagwortkonfigurationsdialog

Vor einigen Tagen berichtete ich ja bereits, das es notwendig war, die Datenbankstruktur für die Schlagwortkategorien zu ändern. Zum Ausprobieren der neuen Programmversion müsst ihr daher eure DB-Struktur mit dem Administrationstool aktualisieren. Bisher war es so, das ein Schlagwort genau einer Kategorie zugeordnet werden musste. Nun ist es möglich, das ein Schlagwort zu beliebig vielen Schlagwortkategorien zugeordnet werden kann. Bei der Implementation habe ich begonnen, die Schlagwortkategorien an 2 Stellen im Programm zu integrieren. Zum ersten werden die Schlagwortkategorien, wie auch die Fotoalben in der Baumstruktur angezeigt. Nachdem eine solche Kategorie ausgewählt wurde, sollen vom System alle Bilder in einer Liste zusammengestellt werden, welche mit mindestens einem Schlagwort der Schlagwortkategorie verknüpft wurden. Als zweites habe ich damit begonnen, einen Dialog zu schaffen, in dem die Schlagworte mit den entsprechenden Schlagwortkategorien verknüpft werden können. 

Ausblick

Auch in den nächsten Wochen werde ich an allen 3 großen Baustellen weiterarbeiten. Wahrscheinlich werde ich allerdings die meiste Zeit für das Histogramm-Werkzeug aufwenden, damit ich ein eindeutiges Thema für den nächsten Blog habe. Ob ich aber das Werkzeug  schon komplett fertig bekomme, kann ich noch nicht sagen. Da die Berechnung des Histogramms einige Zeit in Anspruch nehmen wird, werde ich wohl eine threadbasierte Berechnung umsetzen, die leider etwas komplizierter und damit aufwendiger sein wird.