在理解直方圖均衡化的過程中,參考了一些書籍和博客,讓人困惑的是,筆者對于直方圖的理解還是停留在表面,并沒有深入理解其內(nèi)涵。因此,本文擬結(jié)合圖片對直方圖的概念進(jìn)行闡述,并給出其Python實現(xiàn),最后對她背后所蘊(yùn)含的一些科學(xué)思維,談?wù)勛约旱囊恍┛捶ā?/p>

什么是直方圖?

對于一副灰度圖像I,她的每一個像素點I(x,y)都有一個灰度值,一般情況下可能的灰度取值有2^8=256個(0,1,...,255)。如果我們統(tǒng)計出灰度值r在I中出現(xiàn)的次數(shù)n,并對其進(jìn)行歸一化(n/N,N是所有灰度值出現(xiàn)次數(shù)的總和),這樣我們就可以得到像素r在I中出現(xiàn)的概率p(r)。如果對每一個可能的灰度取值r都做同樣的處理,我們可以得到如圖1左側(cè)所示的概率分布曲線,該曲線就是我們常說的直方圖。

iOS培訓(xùn),Swift培訓(xùn),蘋果開發(fā)培訓(xùn),移動開發(fā)培訓(xùn)

圖1 直方圖均衡化目標(biāo)

什么是直方圖均衡化?

通常情況下一副圖像I的直方圖如圖1左側(cè)所示,每一個灰度值r出現(xiàn)的概率不是相等的,這樣會導(dǎo)致圖像的一些細(xì)節(jié)信息不夠突出,而直方圖均衡化就是對灰度值r進(jìn)行如下變換s=T(r),使得變換后的灰度分布如圖1右側(cè)所示(也就是說,每一個灰度值出現(xiàn)的概率是想同的),這樣能夠發(fā)現(xiàn)一些原先肉眼很難發(fā)現(xiàn)的細(xì)節(jié),如圖2所示(讀者可以自己體會下)。說到這里,一般也就結(jié)束了,但是我們真的理解了嗎?如何更好的理解呢?下面簡要介紹一下筆者的理解方式。

 

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式