【GIMP・Python-Fu】脱色・自動色レベル調整フィルタ一括処理

GIMP コンピュータ
GIMP
モノクロの素材をカラースキャンした画像をGIMPで脱色→色レベル→xcf形式で保存するPython-Fuスクリプトです。
最初からグレースケールでスキャンすれば必要のない作業です。
スキャンした画像の一番明るい色が255一番暗い色が0になるようにすることが目的です。

#!/usr/bin/env python3
# coding: utf8

# GIMP Python-Fu
# 脱色・自動色レベル調整フィルタ一括処理

import os, glob

src_dir = 'D:/SCAN_TEST'
out_dir = 'D:/outdir'

if not os.path.exists(out_dir):
        os.mkdir(out_dir)

for src_file in glob.glob(os.path.join(src_dir, "*.*")):
        basename, ext = os.path.splitext(os.path.basename(src_file))
        
        img = pdb.gimp_file_load(src_file, src_file)
        disp = pdb.gimp_display_new(img)
        pdb.gimp_layer_add_alpha(img.active_layer)
        
        # 脱色
        pdb.gimp_drawable_desaturate(img.active_layer, 3)
        # 色レベルの調整・自動入力レベル?
        pdb.gimp_drawable_levels_stretch(img.active_layer)
        
        dst_file = os.path.join(out_dir, (basename+'.xcf'))
        
        pdb.gimp_file_save(img, img.active_layer, dst_file, dst_file)
        pdb.gimp_display_delete(disp)
入力画像の場所src_dirとxcfファイルの出力先out_dirは実行環境に合わせて変更すること。
GIMPメニュー→フィルター(R)→Python-Fu→コンソール(C)で起動し、スクリプトを貼り付けエンターキーを押す(2回?)で実行

コメント