前提・実現したいこと
最近学び始めた初心者です。
(実現したいこと)
・Pythonを使用
・アルファチャンネルを持った画像をRGBAの各チャンネルに分離
・チャンネルごとに異なるサフィックスを付けて別名で保存(保存先は元ファイルのあった場所)
上記処理をファイルのドラッグアンドドロップで行いたいです。
特定の画像を指定する場合のコードは書けたのですが
ドラッグアンドドロップで実行、元ファイルのある場所に保存するという処理をどう書けばいいか分かりません。
cv2ではdds形式だと上手くいきませんでしたのでPILを使用しています。
使用している画像フォーマットはdds形式で、保存し直す時にpngに変換したいです。
発生している問題・エラーメッセージ
エラーメッセージ
該当のソースコード
Python
1from PIL import Image 2import numpy as np 3import os.path 4 5 6# 開く 7img = Image.open("./XXXXXX_AAA.dds") 8 9# チャンネル分割 10r, g, b, a = img.split() 11 12# バラバラに分割格納されるので正しいチャンネルに再格納 13img_rgba = Image.merge('RGBA',(g, r, a, b)) 14 15# 再度チャンネル分割 16r, g, b, a = img_rgba.split() 17# 名前と拡張子を分けて記憶 18img, ext = os.path.splitext(img.filename) 19 20# 各チャンネルごとにサフィックスを付けて保存&_AAAを削除 21r.save(img.strip("_AAA") + "_01.png") 22g.save(img.strip("_AAA") + "_02.png") 23b.save(img.strip("_AAA") + "_03.png") 24a.save(img.strip("_AAA") + "_04.png")
試したこと
●参考
https://sd08419ttic.hatenablog.com/entry/2019/03/16/145938
こちらのページのコードを変えて似たような事ができるかな?と思ったのですが上手くいきません…
ご教示宜しくお願い致します。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。

回答1件
あなたの回答
tips
プレビュー