前提・実現したいこと
python初心者ですが画像処理に関するプログラムを書いています。
現在ファイル内の.jpg画像を全てCb成分の画像に変換するコードを書きたいです。
発生している問題・エラーメッセージ
しかし処理した画像が真っ白のものができてしまい画像の処理ができません。
該当のソースコード
python
1import cv2 2import numpy as np 3import glob 4 5gazousu = len(glob.glob('*.jpg')) 6 7def numpy_gray(src): 8 r, g, b = src[:, :, 0], src[:, :, 1], src[:, :, 2] 9 gray = -0.1687 * r - 0.3313 * g + 0.5000 * b + 128 10 11if __name__ == "__main__": 12 13 count = 0 14 files = glob.glob('*.jpg') 15 for f in files: 16 17 count += 1 18 count_padded = '%05d' % count 19 20 w = 0 21 while w < gazousu: 22 23 img = cv2.imread(f) 24 25 gray_num = numpy_gray(img) 26 27 w = w + 1 28 write_file_name = count_padded + ".jpg" 29 cv2.imwrite(write_file_name, gray_num)
試したこと
最後の3行を
w = w + 1
write_file_name = count_padded + ".jpg"
cv2.imwrite("gray_num.jpg", gray_num)
とすればCb成分の画像を生成できましたが、無論上書き保存の形になり最後の1枚しか生成できません。
どなたか助けていただけないでしょうか。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/02 13:59