LoginSignup
2
5

More than 3 years have passed since last update.

Pythonで任意のディレクトリの画像をシャッフルして別のフォルダーに連番で保存する。

Last updated at Posted at 2019-12-05

Pythonで任意のディレクトリの画像をシャッフルして別のフォルダーに連番で保存する。

Jupyter-notebookでディレクトリの画像をシャッフル。

shuffleimage.ipynb
#フォルダ内の画像をシャッフルして保存するコード
import os
from random import shuffle
from glob import glob
from shutil import copy


data_dir_path = "ここに画像が入っているディレクトリの絶対パスをペースト" #シャッフルしたい画像を内包しているフォルダーパス

base_path = os.path.join(data_dir_path ,"*.png")

#シャッフルした画像の保存先ディレクトリの作成
make_dir_path = data_dir_path +"_shuffle" #保存先ディレクトリのパス
os.makedirs(make_dir_path, exist_ok=True) 

#フォルダー内の画像をシャッフルして保存先ディレクトリに保存
files = sorted(glob(base_path))
shuffle(files)
n = 1 #ファイル名開始番号

#連番で画像を作成したディレクトリに保存
for file in files:
    copy(file,'{}/{}.jpg'.format(make_dir_path,str(n).zfill(5)))
    n += 1

print("保存先ディレクトリ %r  を作成"%os.path.basename(make_dir_path))
print("シャッフルした画像数 : %d   保存完了\n"%(int(len(files))+1))

引用

Pythonでパス文字列からファイル名・フォルダ名・拡張子を取得、結合 | note.nkmk.me
python 相対パス 親ディレクトリの場所を取得する方法 - 初心者入門サンプル
[Python] フォルダやファイルのコピー、移動、削除(shutilモジュール) | Hibiki Programming Notes
【Python】カレントディレクトリのファイル数をカウントする Python

初投稿なので書き直す予定です^^

2
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
5