読者です 読者をやめる 読者になる 読者になる

フォルダ内の全画像ファイルに対して一括処理を行う(python)

機械学習を行う際、webでスクレイピングした大量の画像ファイル等を一括で操作したくなることが多い。
その場合ファイル名も拡張子もバラバラで保存されるため、処理する際にいつも悩む。
毎回調べるのもバカらしいので、サンプルとしてまとめておく。
pythonだとこういう処理が書きやすくて便利。

# -*- coding: utf-8 -*-
import os
import cv2

def main():
    data_dir_path = u"./画像ディレクトリ名/"
    file_list = os.listdir(r'./画像ディレクトリ名/')

    for file_name in file_list:
        root, ext = os.path.splitext(file_name)
        if ext == u'.png' or u'.jpeg' or u'.jpg':
            abs_name = data_dir_path + '/' + file_name
            image = cv.imread(abs_name)
            #以下各画像に対する処理を記載する

if __name__ == '__main__':
    main()