Die Geschichte, ein Tool zum Laden von Bildern mit Python zu erstellen ⇒ Speichern unter

Überblick

Freund "Erstellen Sie ein Tool, mit dem Sie eine geeignete Bilddatei aus einem Ordner mit einer großen Anzahl von Bilddateien abrufen, auf dieselbe Ebene wie den Ordner kopieren und die Bilddatei dann in den Ordnernamen umbenennen können." Ich bin verrückt

Spezifikation

1. 1. Angenommen, Sie haben einen Ordner wie diesen

Jeder Ordner wie "Kizuna AI" und "Mirai Akari" enthält eine große Anzahl von Bildern und hat einen Dateinamen wie 001 ~.

Zielordner


images
 ├ KizunaAI
 │  ├ 001.jpg
 │  └ ....ipg
 │ 
 ├ MiraiAkari
 │  ├ 001.jpg
 │  └ ....ipg
 └ ....

2. Mach es so

Kopieren Sie eine entsprechende Bilddatei aus jedem Bildordner, platzieren Sie sie in derselben Hierarchie wie den Ordner und benennen Sie den Dateinamen in den Namen des Ordners um, zu dem er gehört.

Zielordner


images
 ├ KizunaAI
 │  ├ 001.jpg
 │  └ ....ipg
 ├ KizunaAI.jpg
 ├ MiraiAkari
 │  ├ 001.jpg
 │  └ ....ipg
 ├ MiraiAkari.jpg
 └ ....

das ist alles! !! !! !!

Implementierung

Vorerst habe ich es in meiner Anaconda-Umgebung implementiert. Ich sagte: "Ich habe wieder danach gefragt, also frage ich mich, was für ein ernsthafter Inhalt es ist." キャプチャ.PNG

main.py


from PIL import Image
import os, glob

rootpath = "./images"
files = os.listdir(rootpath)
#Holen Sie sich alle Verzeichnisse unter rootpath
dirs = [f for f in files if os.path.isdir(os.path.join(rootpath, f))]
#Da es eine große Sache ist, wird es auf der Konsole angezeigt
print(dirs)    # ['dir1', 'dir2']
#Für alle Verzeichnisse ausführen
for dir in dirs :
    #Scannen Sie alle Dateien
    files = glob.glob(rootpath +"/"+ dir + "/*.*")
    #Ziehen Sie die Verlängerung heraus
    targetFile = files[0]
    root, ext = os.path.splitext(targetFile)
    #Bild geöffnet
    img = Image.open(targetFile)
    #Benennen Sie um und speichern Sie direkt unter dem Stammpfad
    img.save(rootpath +  '/' + dir + ext)

Mach es zu einer EXE

Anaconda ist ein wenig nervig, also machen Sie es zu einer EXE-Datei und lassen Sie es mit einem Klick funktionieren

1. 1. Pyinstaller installieren

Es ist ein großartiges Tool, das eine EXE-Datei für jede virtuelle Anaconda-Umgebung erstellt. Mit anderen Worten, es scheint, dass sogar Leute, die keine Python-Umgebung haben, diese mit dieser ausführen können. Ich habe Probleme, eine EXE-Datei auszuspucken, die 300 MB für einen Code mit weniger als 1 KB überschreitet, aber ich vergebe es, weil es praktisch ist.

AnacondaPronpt


conda install -c conda-forge pyinstaller

Nebenbei bevorzuge ich die Installation mit Conda.

2. Mach es zu einer EXE

schnell

AnacondaPronpt


pyinstaller main.py --onefile

Ich "fertig (ohne Fehler zu sagen)" Freund "Ich werde es tun!"

Andere

Mein Freund "Wenn der Ordnername ein" [] "enthält, entspricht es nicht, aber das ist" Wenn ein !?" Freund "Nun, ich mache es manuell, weil es nur wenige gibt." Ich "Gusei"

Wenn ich Zeit habe, werde ich auch diese fehlerbehebte Version veröffentlichen.

Recommended Posts

Die Geschichte, ein Tool zum Laden von Bildern mit Python zu erstellen ⇒ Speichern unter
Die Geschichte, einen Standardtreiber für db mit Python zu erstellen.
Die Geschichte, ein Modul zu erstellen, das E-Mails mit Python überspringt
Die Geschichte, wie man mit Python einen 100-Yen-Frühstücks-Bot für die Universität macht
[Python] [Windows] Speichern Sie einen Screenshot als Bild
So speichern Sie die Feature-Point-Informationen des Bildes in einer Datei und verwenden sie zum Abgleichen
Ein Hinweis auf Missverständnisse beim Versuch, das gesamte selbst erstellte Modul mit Python3 zu laden
Nehmen Sie eine Instanz einer Python-Ausnahmeklasse nicht direkt als Argument für die Ausnahmeklasse!
Ich habe versucht, die Entropie des Bildes mit Python zu finden
[Python] Ändern Sie den Namen der Bilddatei in eine Seriennummer
Eine Geschichte über einen Amateur, der mit Python (Kivy) einen Blockbruch macht ②
Eine Geschichte über einen Amateur, der mit Python (Kivy) einen Blockbruch macht ①
Die Geschichte, wie man mit discord.py einen Fragenkasten-Bot erstellt
Holen Sie sich die Quelle der Seite unbegrenzt mit Python zu laden.
Geben Sie die Bilddaten mit Flask of Python zurück und zeichnen Sie sie in das Canvas-Element von HTML
Ich möchte mit Python nur das Gesicht aus einem Personenbild ausschneiden und speichern ~ Gesichtserkennung und Zuschneiden mit face_recognition ~
[Python] Wenn Sie eine Datei mit demselben Namen wie das zu importierende Modul erstellen, tritt ein Attributfehler auf.
Versuchen Sie, mit Python3 eine Zeichenfolge aus einem Bild zu extrahieren
Bereiten Sie eine verteilte Lasttestumgebung mit dem Python-Lasttest-Tool Locust vor
[Python] Was ist ein Slice? Eine leicht verständliche Erklärung zur Verwendung anhand eines konkreten Beispiels
Die Geschichte einer unveränderlichen Form
Die Geschichte der Verarbeitung A von Blackjack (Python)
So schneiden Sie den unteren rechten Teil des Bildes mit Python OpenCV
Versuchen Sie, die Höhendaten des National Land Research Institute mit Python abzubilden
[Einführung in Python] So sortieren Sie den Inhalt einer Liste effizient mit Listensortierung
[Python] Erstellen Sie einen Linebot, um den Namen und das Alter auf das Bild zu schreiben
Die Geschichte einer Soundkamera mit Touch Designer und ReSpeaker
Starten Sie die Webkamera, machen Sie ein Standbild und speichern Sie es lokal
[Python] Senden Sie das von der Webkamera aufgenommene Bild an den Server und speichern Sie es
Achten Sie beim Erstellen einer Bildmaske mit Numpy auf den Typ
Ich habe GhostScript mit Python ausgeführt, das PDF in Seiten aufgeteilt und es in ein JPEG-Bild konvertiert.
<Python> Ein Quiz zum Batch-Konvertieren von Dateinamen, die durch eine bestimmte Zeichenfolge als Teil des Dateinamens getrennt sind
Die Geschichte eines virtuellen Planetariums [bis es einem Anfänger gelingt, ein Modell mit einem Skript zu erstellen]
So beschneiden Sie ein Bild mit Python + OpenCV
Da Python als "Pichon" gelesen wird, kann es mit "Pichon" ausgeführt werden (es ist eine Geschichte)
Speichern Sie das numpy-Array mithilfe des Wave-Moduls in einer WAV-Datei
Bildverarbeitung? Die Geschichte, Python für zu starten
Beschneiden Sie Numpy.ndarray und speichern Sie es als Bild
GAE - Drehen Sie mit Python das Bild basierend auf den Rotationsinformationen von EXIF und laden Sie es in den Cloud-Speicher hoch.
[Python] Ich habe versucht, den Typnamen als Zeichenfolge aus der Typfunktion abzurufen
Die Geschichte von soracom_exporter (Ich habe versucht, SORACOM Air mit Prometheus zu überwachen)
So erhalten Sie mit Python eine Liste der Dateien im selben Verzeichnis
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
[Python Data Frame] Wenn der Wert leer ist, füllen Sie ihn mit dem Wert einer anderen Spalte.
Die Geschichte von Airflows Webserver und DAG, deren Laden lange dauert
Wie identifiziere ich das Element mit der geringsten Anzahl von Zeichen in einer Python-Liste?
Ein Python-Anfänger versuchte, bei einem IT-Unternehmen zu praktizieren [Tag 3 in die Wolken ...]
Das Ergebnis der Erstellung eines Kartenalbums italienischer Jungvermählten in Python und dessen Weitergabe
Eine Geschichte darüber, wie Windows 10-Benutzer eine Umgebung für die Verwendung von OpenCV3 mit Python 3.5 erstellt haben
Einfache Möglichkeit, 0 abhängig von der Anzahl der Ziffern vorangestellt [Python]
[Python] Sie können ein Objekt mithilfe des Pickle-Moduls in einer Datei speichern.
Mit der Docker-Version der Nginx-Einheit war es ein wenig schwierig, eine Flasche zu machen
So überprüfen Sie in Python, ob sich eines der Elemente einer Liste in einer anderen Liste befindet