[Blog] [Demo auf YouTube] [Papier]
rclip ist ein Befehlszeilen-Fotosuchtool, das auf dem fantastischen neuronalen Netzwerk CLIP von OpenAI basiert.
sudo snap install rclip
pip
)Wenn Ihre Linux-Distribution Snap nicht unterstützt, können Sie eine der alternativen Installationsoptionen verwenden:
Unter Linux x86_64 können Sie rclip als eigenständige ausführbare Datei installieren.
Laden Sie das AppImage aus der neuesten Version herunter.
Führen Sie die folgenden Befehle aus:
chmod +x < downloaded AppImage filename >
sudo mv < downloaded AppImage filename > /usr/local/bin/rclip
pip
verwenden pip install --extra-index-url https://download.pytorch.org/whl/cpu rclip
brew install yurijmikhalevich/tap/rclip
pip
) pip install rclip
pip
) pip install rclip
cd photos && rclip " search query "
Wenn Sie rclip zum ersten Mal in einem bestimmten Verzeichnis ausführen, werden Funktionen aus den Fotos extrahiert, was einige Zeit in Anspruch nimmt. Wie lange es dauert, hängt von Ihrer CPU und der Anzahl der Bilder ab, die Sie durchsuchen. Es dauerte ungefähr einen Tag, um 73.000 Fotos auf meinem NAS zu verarbeiten, auf dem ein veralteter Intel Celeron J3455 läuft, 7 Minuten, um 50.000 Bilder auf meinem MacBook mit einer M1 Max-CPU zu indizieren, und drei Stunden, um 1,28 Millionen Bilder auf dem zu verarbeiten dasselbe MacBook.
Eine ausführliche Demonstration finden Sie im Video: https://www.youtube.com/watch?v=tAJHXOkHidw.
Sie können ein anderes Bild als Abfrage verwenden, indem Sie einen Dateipfad oder sogar eine URL zur Bilddatei übergeben. rclip findet dann die Bilder, die dem von Ihnen als Abfrage verwendeten Bild am ähnlichsten sind. Wenn Sie über einen relativen Pfad auf ein lokales Bild verweisen, müssen Sie ihm ./
voranstellen. Zum Beispiel:
cd photos && rclip ./cat.jpg
# or use URL
cd photos && rclip https://raw.githubusercontent.com/yurijmikhalevich/rclip/main/tests/e2e/images/cat.jpg
Schauen Sie sich dieses Video für die Bild-zu-Bild-Suchdemo an: https://www.youtube.com/watch?v=1YQZKeCBxWM.
Sie können Bild- und Textabfragen addieren und voneinander subtrahieren; Hier ein paar Anwendungsbeispiele:
cd photos && rclip horse + stripes
cd photos && rclip apple - fruit
cd photos && rclip " ./new york city.jpg " + night
cd photos && rclip " 2:golden retriever " + " ./swimming pool.jpg "
cd photos && rclip " ./racing car.jpg " - " 2:sports car " + " 2:snow "
Wenn Sie sehen möchten, wie diese Abfragen funktionieren, wenn sie auf dem 1,28 Millionen Bilder umfassenden ImageNet-1k-Datensatz ausgeführt werden, schauen Sie sich die Demo auf YouTube an: https://www.youtube.com/watch?v=MsTgYdOpgcQ.
Wenn Sie iTerm2, Konsole (Version 22.04 und höher), wezterm, Mintty oder mlterm verwenden, müssen Sie lediglich das Argument --preview
(oder -p
) an rclip übergeben:
rclip -p kitty
Wenn Sie ein anderes Terminal verwenden oder die Ergebnisse in einem Viewer Ihrer Wahl anzeigen möchten, können Sie die Ausgabe von rclip an dieses Terminal übergeben. Unter Linux öffnet beispielsweise der folgende Befehl die Top-5-Ergebnisse für „kitty“ in Ihrem Standard-Bildbetrachter:
rclip -f -t 5 kitty | xargs -d ' n ' -n 1 xdg-open
Der Parameter -f
oder --filepath-only
bewirkt, dass rclip nur die Dateipfade ausgibt, ohne Scores oder den Header, was ihn ideal für die Verwendung zusammen mit einem benutzerdefinierten Viewer wie im Beispiel macht.
Ich bevorzuge den Miniaturansichtmodus von feh , um eine Vorschau mehrerer Ergebnisse anzuzeigen:
rclip -f -t 5 kitty | feh -f - -t
https://github.com/yurijmikhalevich/rclip/discussions/new/choose
Dieses Repository folgt dem Conventional Commits-Standard.
Um rclip lokal aus dem Quellcode auszuführen, müssen Python und Poetry installiert sein.
Dann tun Sie:
# clone the source code repository
git clone [email protected]:yurijmikhalevich/rclip.git
# install dependencies and rclip
cd rclip
poetry install
# activate the new poetry environment
poetry shell
Wenn die Poesie-Umgebung aktiv ist, können Sie rclip lokal verwenden, wie im Abschnitt „Verwendung“ oben beschrieben.
Der Dank geht an diese wunderbaren Menschen und Organisationen (Emoji-Taste):
Ramayer | Caphyon ? | AbId KhAn |
Vielen Dank an Caphyon und das Advanced Installer-Team für die großzügige Bereitstellung der Professional Advanced Installer-Lizenz für das rclip -Projekt zum Erstellen des Windows-Installationsprogramms.
Dieses Projekt folgt der All-Contributors-Spezifikation. Beiträge jeglicher Art sind willkommen!
MIT