実現したいこと
グレースケール画像のヒストグラムをcalcHist関数作成。
それが表示した際に線状になっているので、棒状のヒストグラムにしたいです
前提
簡単に言うとグレースケール画像の画素値のヒストグラムを棒状にして作りたい、表示したいのですが、calcHist関数で線状のヒストグラムまではできるのですがそれを棒状のヒストグラムにする方法が分かりません。
線状のヒストグラムから棒状のものを作りたいといよりは、ただ棒状のヒストグラムが出来ればいいので必ずしも線状のものを用いないといけないわけでは無いです。
https://teratail.com/questions/mpiar88czcd4cm
こちらのページを参考にしてコードを書いてみたのですが、表示されるグラフが真っ白になってしまいました。
Anacondaからjupyterlabを開いてPython3のnotebookでコードを書いています。
発生している問題・エラーメッセージ
このような結果になります。
該当のソースコード
Python3
1hist_Gray = cv2.calcHist([imgGray], [0], None, [256], [0, 256]) 2x_axis = np.asarray(range(len(hist_Gray))) 3plt.bar(hist_Gray.flatten(),x_axis) 4plt.xlim([0, 256]) 5plt.show
###他にやった事
対象のグレースケール画像の元のカラー画像を先程参考にしたコードをそのまま使って実行してみたところ、カラー画像の方でもヒストグラムは表示されず真っ白でした。
openCVのバージョンは4.7.0です
対象の画像のサイズは2304*4096(*3)です
サイズが大きすぎる可能性も考えられるでしょうか?
0 コメント