Python3 OpenCV NumPy で画像処理をしています。
図の左の様なグレースケール画像のヒストグラムがあります。
これを自動で右図のように分布を極力変化させずにスライドさせるために、下の内容で組んでいます。
(図はimageJのBrightness/Contrastを使用した時のものです。)
python
1import cv2 2import numpy as np 3 4img = cv2.imread('sample.jpg',0) 5img = np.where(img < 50, 0, img-50) 6 7cv2.imshow('sample',img) 8cv2.waitKey(0) 9cv2.destroyAllWindows() 10
上記の'50'という値をなるべく自動で取得したいのですがピクセル数が増え始める点を閾値として自動で取得するにはどのような方法がありますでしょうか?
仮閾値50までの輝度は0だけではなく1~50程度の値があります。できれば全体の98%とか95%とか面積?で指定する方法が知りたいです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/25 06:05