Ich habe eine große Anzahl von Bildern, die ich zum Trainieren eines Clustering-Algorithmus klassifizieren muss, und ich möchte dies offline tun (die Daten sind proprietär). Grundsätzlich möchte ich ein Desktop-Umfragetool erstellen, mit dem ich jedes Bild schnell in eine oder zwei Kategorien einteilen kann. Im Idealfall würde das Tool:
- Suchen Sie in einem vordefinierten Desktop-Ordner nach einem Bild.
- Zeigen Sie das Bild und eine statische Liste von Kategorien an, sodass ich auf eine klicken kann.
- Notieren Sie beim Klicken die dem Bild zugeordnete Kategorie.
- Speichern Sie den Bilddateinamen und die zugehörige Kategorie irgendwo in einem Datensatz.
- Zeigen Sie das nächste Bild ohne Tags im Ordner an und wiederholen Sie den Vorgang.
Gibt es eine einfache Möglichkeit, diese Art von Tool in Python oder einem anderen vorgefertigten Dienstprogramm zu erstellen, das ich kostenlos offline verwenden kann?
Antworten:
Ich habe einen Code erstellt, der die 5 Anforderungen erfüllt, die Sie haben. Er ist auf GitHub als image-sorter2 verfügbar . Im Vergleich zu den anderen hier vorgeschlagenen Skripten ist image-sorter2 zu 100% kostenlos und Sie müssen keine Zeit mit dem Zeichnen von Begrenzungsrahmen verbringen. Das Skript öffnet einfach eine GUI für Sie, Sie klicken auf eine von mehreren Schaltflächen und entsprechend auf jedes Bild wird in den gewünschten Klassenordner sortiert, zB "Katzen", "Hunde", "Lastwagen"
quelle
Ich würde empfehlen, eine eigene datenbankgestützte Webanwendung zu erstellen, da Sie über proprietäre Daten und wenige (nur zwei?) Klassen verfügen. Ich würde Tabellen für die Bilder, Benutzer und Beschriftungen erstellen.
Benutzer: (ID, Name)
Bild: (ID, URL)
Bezeichnung: (Benutzer.ID, Bild.ID, Zeit, Klasse)
Die Label-Klasse kann eine Aufzählung sein. Wenn Sie nicht möchten, dass Benutzer dasselbe Bild mehrmals bewerten, können Sie die Zeitspalte löschen und die ersten beiden ID-Spalten als zusammengesetzten Primärschlüssel festlegen.
Wenn Sie sich noch nie mit Webanwendungen und Datenbanken befasst haben, wird dies kompliziert erscheinen, aber es ist einfach, sobald Sie den Dreh raus haben. Hier ist ein Tutorial. Der Vorteil dieses Ansatzes ist die Beharrlichkeit. Dank der Datenbank können Sie Ihren Computer und den Start dort ausschalten, wo Sie aufgehört haben.
Eine einfachere Alternative besteht darin, alle Ihre Daten in einer Sitzung mithilfe von GUI-Komponenten wie ipywidgets für jupyter zu erfassen und die Beschriftungen in eine Datei zu schreiben. Mit diesem Ansatz erhalten Sie keine Ausdauer.
quelle
Ein großartiger Online-Service ist Dataturks . Super optimierte UX und einfach zu bedienen. Unterstützt auch Ihre privaten Daten in unserer internen Cloud.
Unterstützt auch Polygone, Segmentierung usw.
Hier ist eine Demo, die Sie ausprobieren können (ohne Anmeldung):
Demo-Bildklassifizierung
PS: Da Browser nicht direkt auf Dateien auf Ihrer lokalen Festplatte zugreifen dürfen, müssen Sie möglicherweise einen Dummy-Webserver ausführen, um lokale URLs zu Dateien abzurufen.
quelle