這裏我們儘量不用數學符號公式等,而用簡單易懂的方式來把直方圖均衡化的原理講一下。其過程可以用下面一個表來展示:
是不是看不懂了?沒關係,我們一點點來。
(1)確定圖像的灰度級
我們要處理的圖像是灰度圖像,如果是彩色的,需要先轉化成灰度圖像,然後確定圖像的灰度級有多大,一般就是8位的圖像,灰度級爲0-255,上標示例中的是3位的,灰度級爲0-7。
(2)計算原始直方圖分佈概率p(i)
也就是統計每一個灰度在整個圖像中像素個數的佔比,總和爲1。記第i個灰度的直方圖分佈概率爲p(i)。
(3)計算直方圖概率累計值s(i)
這裏s(0)=p(0);
s(1)=p(0)+p(1);
s(i)=p(0)+p(1)+……+p(i) where(i>1)。
(4)根據公式求取像素映射關係
ss(i)=int{[max(pix)-min(pix)]*s(i)+0.5}
其中,pix指原圖像中的灰度值,需要求取原圖像中的最大灰度值減去最小灰度值。
而有的均衡化理論中是(2^n-1)-0,也就是該灰度級中的最大值減去灰度最小值。ss(i)是第i灰度級所對應的均衡化圖像中的灰度級。
(5)灰度映射
上一步找到了原圖像和均衡化圖像灰度的對應關係,對原圖進行操作,將每個像素映射成新的像素即可。
此時圖像均衡化已經完成,當然你也可以再次統計灰度概率,觀察一下結果。
直方圖反映了圖像的清晰程度,當直方圖均勻分佈時,圖像最清晰。由此,我們利用直方圖達到了使圖像清晰的目的。