写真の明るさをすべて統一したいのですがうまく実装できません。以下の手法だと黒くつぶれてしまう部分が発生してしまいました。
python
1import cv2 2import numpy as np 3import os 4 5 6lst = [] 7files = os.listdir('./train-images/') 8for i in range(len(files)): 9 img = cv2.imread(folder + files[i], 0) 10 img = 80.0/img.mean() #80は適当に決めました 11 img_int8 = img.astype(np.uint8) 12 cl1 = clahe.apply(img_int8) 13 cv2.imwrite("train-images-histgram/" + files[i], cl1)
このプログラムをどう改善したらよいのか教えていただけると幸いです。
よろしくお願いいたします。
そもそも明るさって学習に必要なのですか?
もし必要だとして、その明るさの違いは何に由来するものなのでしょうか?
その由来を考慮して、平坦化を行うことがベストな方法なのでしょうか。
何れにしても、プログラムの問題というよりは仕様の問題かと思われます。
すみません。記述不足だったのですがここから二値化を行い骨部分の抽出などがもしできたらなと考えておりました。その際、白っぽい画像と黒っぽい画像が混じっているとうまく処理がいかなかったため1枚の画像における平均輝度値をすべての画像で統一したいと考えました。
学習したい内容はレントゲン画像における輝度差と場所、形が患部につながると考えています。深層学習はまだ初心者のためあまりわかっていなかったのですが学習に明るさの統一はあまり必要ないということでしょうか?調べていたのですがヒストグラム平たん化だけ輝度差はある程度はっきりしているため十分ということでしょうか?
回答1件
あなたの回答
tips
プレビュー