Hi,
ich arbeite gerade an einem Projekt, was eventuell den ein oder anderen hier interessieren könnte. Ich nenne es smartlocate (vorher ailocate, es ist noch nicht alles auf den neuen Namen geupdatet).
https://github.com/NormanTUD/smartlocate
Was es macht ist das folgende:
Mit dem Kommando
1 | smartlocate --dir $HOME/Bilder --index --debug --ocr --describe --face --yolo |
erzeugt es einen Index aller Bilder in dem $HOME/Bilder-Ordner, OCRd sie, erstellt mit einem KI-Modell eine Beschreibung des Bildes (alles lokal), und versucht mit YOLO zu erkennen, was auf dem Bild zu sehen ist (per default mit dem yolov5s.pt-Modell, das 1000 Alltagsgegenstände gut unterscheiden kann) und versucht alle Gesichter zu finden und Personen zuzuordnen, damit man sie suchen kann.
Die Daten verlassen euren Rechner NICHT. Alles wird lokal ausgelesen, berechnet und gespeichert.
Dann erlaubt es, mit
1 | smartlocate stichwort
|
nach allen Bildern zu suchen, die das Stichwort beinhalten. Entweder als Text, oder per erkanntes Objekt aus YOLO, oder in den Beschreibungen der Bild-Beschreibungs-KI ("Salesforce/blip-image-captioning-large").
Ich habe auch eingefügt, dass man mit --face_recognition Gesichter erkennen kann. Wenn er ein Gesicht erkennt, versucht er zu schauen, ob es ein bereits Bekanntes ist. Wenn ja, wird es automatisch hinzugefügt. Wenn nein, fragt er euch, welcher Name dem Gesicht zugeordnet werden soll; darauf erkennt es das in späteren Bildern wieder, so dass man nicht für jedes Bild selbst wieder alles neu eingeben muss.
Ich würde gern mit dem Post hier 2 Sachen machen:
1. Das Projekt bekannter machen, weil ich denke dass es einigen was bringen könnte 2. Mitstreiter finden, die vielleicht Bugs melden oder mitprogrammieren. Habe noch viele weitere Ideen, und würde das gern auf andere Dinge als Bilder ausweiten, aber ich weiß nicht ob ich allein die Zeit dafür finde.
Was Abhängigkeiten usw. angeht hab ich versucht es so zu machen, dass es alles was es braucht selbst installiert. Ich hoffe, dass das bei allen halbwegs klappt.
Würde mich über Feedback freuen!