Bildfilterung | BVA-System - Part 2

Posts Tagged ‘Bildfilterung’

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 …