Es existiert keine zufriedenstellende Möglichkeit, Dateien über Schlüsselworte recherchierbar zu machen - zumindestens in den von mir so bezeichneten Betriebssystemfamilien Linux und Windows. Ich habe mir eine mögliche alternative Vorgehensweise unter Linux angesehen.
In diese Zeit fiel mein Fund einer mehrteiligen Artikelreihe zum Thema Machine Learning: Dort wird in Teil 3 beschrieben, wie Bildklassifikation heutzutage funktioniert. es gibt diverse frei verfügbare Dienste, die eine API bereitstellen, um Bilder klassifizieren zu lassen. Egal, ob man diese Dienste benutzt, oder einen eigenen Dienst aufsetzt, der eine solche Kategorisierung durchführt - Es stellt sich die Frage, was man mit den Ergebnissen tun soll. Denn wenn es nicht so ist, dass man die Kategorisierung für ein Bild live durchführen will, sondern alle Bilder in einem Batch-Durchlauf mit Kategorien versieht - wohin mit den Ergebnissen: man will sie so speichern, dass man transparent und schnell darauf zugreifen und im Idealfall auch darin recherchieren kann.
Hier würden sich Tags anbieten, die einfach an die geweiligen Bilddateien "geklebt" werden könnten. Diese würden sich auch sehr leicht ergänzen und modifizieren lassen.
Vor allem möchte man auf die Informationen der Tags oder Kategorien aus verschiedenen Anwendungen heraus zugreifen können. Es ist einfach unhandlich, zur Recherche auf eine dedizierte Anwendung zurückgreifen zu müssen, die dann die Dateinamen der Kandidaten ausspuckt. Diese wiederum muss man in einem Bildbetrachter laden um über die visuelle Inspektion das passendste auszuwählen, welches dann wiederum in die Zielanwendung geladen wird. Ein Workflow, der einen solchen Namen eigentlich nicht verdient...
Das Bildverwaltungsprogramm GThumb bietet Möglichkeiten, Tags zu Bilddateien zu verwalten, allerdings ist mir keine Möglichkeit bekannt, auf diese Tags außerhalb der Anwendung zuzugreifen.
TagSpaces sieht vielversprechend aus (unterstützt auf allen großen Plattformen!), bis man die Dateien mit einem anderen Dateimanager betrachtet oder in der Texteingabe ein Verzeichnislisting durchführt: Dann erkennt man nämlich, dass die Tags in den Dateinamen hineingeschrieben werden. Das ermöglicht zwar eine einfache Suche nach Tags - einfach ein entsprechendes Dateinamensmuster angeben! - aber erstens existieren auf manchen Plattformen in manchen Dateisystemen Längenbeschränkungen für Datei- oder Pfadnamen und zweitens werden Dateinamen auf diese Art und Weise sehr schnell unübersichtlich.
Tagsistant geht noch einen Schritt weiter - hier geschieht auch das Hinzufügen von Tags über das virtuelle Dateisystem. Laut dem Github-Repository hat sich an dem Projekt seit 2014 nichts mehr getan - ich habe es trotzdem versucht und schildere hier mal meine Erkenntnisse:
Weiterhin musste ich einige weitere Softwarepakete installieren (meines Tests fanden mit sqlite3 als Backend statt - andere Datenbanken, beispielsweise MySQL habe ich noch nicht untersucht).
git clone https://github.com/StrumentiResistenti/Tagsistant.git tagsistant
cd tagsistant/
ln -s /usr/share/automake-1.15 /usr/share/automake-1.14
ln -s /usr/share/libtool/build-aux/ /usr/share/libtool/config
apt-get install libdbi1
apt-get install libdbi-dev
apt-get install libextractor-dev
apt-get install libdbd-sqlite3
./autogen.sh
./configure
make -j 5
make install
Neue Tags werden angelegt, indem man ein entsprechendes verzeichnis unterhalb des Unterverzeichnisses namens tags anlegt.
Tags werden gelöscht, indem man das entsprechende Verzeichnis unterhalb von tags löscht.
Will man Tagsistent nur fürs Taggen benutzen und die Dateien an einem anderen Ort traditionell in einer Verzeichnisstruktur organisieren, ist auch das möglich: Statt des Kopierens ins virtuelle Dateisystem kann man Dateien auch Tags zuordnen, indem man symbolische Links erstellt.
In diesem Fall muss man sich also etwas überlegen...
Dies ist die von mir präferierte Variante - allerdings müssen folgende Herausforderungen gemeistert werden:
26.11.2017
Ich habe eine Komponente erstellt, die die GUI für die Verwaltung von Tags darstellen könnte. Damit wäre etwa eine Möglichkeit geschaffen, eine komfortable Anwendung zur Verwaltung Tag-basierter Dateisysteme zu erstellen
Multi-User-WebDAV, Docker, GitHub
17.11.2019
Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...
Weiterlesen...Android Basteln C und C++ Chaos Datenbanken Docker dWb+ ESP Wifi Garten Geo Go GUI Gui Hardware Java Jupyter Komponenten Links Linux Markdown Markup Music Numerik OpenSource PKI-X.509-CA Python QBrowser Rants Raspi Revisited Security Software-Test sQLshell TeleGrafana Verschiedenes Video Virtualisierung Windows Upcoming...
In eigener Sache...
Weiterlesen...Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.
Weiterlesen...Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.
Weiterlesen...Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.
Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.
Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...
PS: Meine öffentlichen Codeberg-Repositories findet man hier.