ででりんブログ

写真やプログラミングを中心とした雑記帳

スポンサーリンク

【Python】写真編集のお助けツール(RAW、JPG選別ツール)

スポンサーリンク

一眼カメラで撮影した写真を編集するのに手間があるのでPythonでツールを作ってみました。
やってることは大したことないのでPython入門レベルです。

【前提】

  • 一眼カメラでRAW+JPGの設定で撮影しているのでメモリーカード内に同じ名前のRAW(拡張子.NEF)とJPG(拡張子.JPG)がある
  • 写りが悪い写真の選別にJPGを使って不要なJPGを削除している(RAWだと表示に時間がかかるためJPGを使用)

フォルダ
├XXX.NEF
├XXX.JPG(写りが悪い)
├YYY.NEF
├YYY.JPG(写りが悪い)
├ZZZ.NEF
└ZZZ.JPG(写りが良い)

フォルダ
├XXX.NEF
├YYY.NEF
├ZZZ.NEF
└ZZZ.JPG
みたいに選別している

【ツール】

  1. Pythonファイルのあるフォルダ内のNEFファイルとJPGファイルを取得
  2. JPGと同名のNEFがあればNEFを残す
  3. JPGと同名のNEFがなければNEFを削除する
  4. JPGを削除する

【実行後】

フォルダ
└ZZZ.NEF

【プログラム】

import glob
import os

def DelExtDiffFile():
    # 実行ファイルのフォルダパスの取得
    filePath =__file__
    dirPath = os.path.dirname(filePath)

    # フォルダ内の画像ファイルの取得
    jpgFilePaths = glob.glob(dirPath + "/*.JPG")
    nefFilePaths = glob.glob(dirPath + "/*.NEF")

    for nefFilePath in nefFilePaths:
        nefFileName = os.path.splitext(os.path.basename(nefFilePath))[0]

        for jpgFilePath in jpgFilePaths:
            jpgFileName = os.path.splitext(os.path.basename(jpgFilePath))[0]

            if nefFileName == jpgFileName:
                print(nefFilePath + ' exist')
                os.remove(jpgFilePath)
                break
        else:
            print(nefFilePath + ' not exist')
            os.remove(nefFilePath)
            continue

DelExtDiffFile()

スポンサーリンク