画像処理の勉強 ヒストグラム伸長処理 ガンマ変換


今回はヒストグラム伸長処理とガンマ変換を実装しました。
ついでに、JPEG形式での画像の保存もできるようにしておきました。


こんな感じ
(ソースは右クリックで表示できます)
ヒストグラム伸長処理のソースはHist_ex.as
ガンマ変換のソースはGamma_correction.as


解説

画像の各画素値の最大が255、最小が0となるように各画素値を伸長する処理。
明るすぎたり、暗すぎたりする画像にこの処理をすると見やすい画像になるそうです。


アルゴリズム
画素値の最大(max)、最小(min)を求める。
そしてmax,min,変換前の画素値(c)から新たな画素値(new_c)をもとめる。
計算式
new_c = (255*(c-min))/(max-min);


暗めの画像がなかったので分かりにくいです
処理前


処理後

  • ガンマ変換

画像をディスプレイなどに表示させるとき、実際の画像の濃淡と表示される画像の濃淡は比例関係でないことが多い。
それを補正するためにガンマ補正を利用する。


アルゴリズム
変換前の画素値(i)に対応する、変換後の画素値(Pi)を求める。
計算式
Pi = ((i/255)^r)*255
r:この値が1だと何も変化なし、1より大きいと暗く、小さいと明るくなる。


詳しくはソースを参照


変換後の画像
r=0.5


r=2


次は何を実装してみようか。