利用圖像的直方圖進行對比度增強的方法


  一般情況下,二值圖像的灰度值等級是2=2(0\1),灰度圖像的灰度值等級是28=256(0-255),

對於灰度圖像來說,灰度值集中在較低的級別時,圖像較暗,反之,則較亮,且灰度值分布較均勻時,圖像的對比度也會比較明顯。

1.圖像直方圖的計算方法

  對於灰度圖像,圖像的灰度值等級為256,將從0到255的每一個灰度等級對應在圖像中的像素點的個數統計出來,然后,通過計算統計個數與整幅圖像對應像素點的總個數的比值得到每一個灰度值等級在圖像中出現的概率密度值,將灰度等級作為自變量,在圖像中出現的概率為變量得到一個離散函數,對應的二維離散圖像即為圖像的直方圖。

  p(i)=ni/N  (i=0、1、 2........255) 

2.直方圖均衡方法

  1)HE

      map函數 T(n)=(2-1)∑i=0 n h(i)+0.5   其中h(i)=p(i)

  2)通過添加控制因子,調整對比度增強的級別。

      h(i)=1/(1+λ)*p(i)+λ/(1+λ)*u

  3)先對直方圖進行平滑處理,去除直方圖中前后差異過大的點(h(i)-h(i-1)超過一定限制),防止圖像過增強后圖像不適於人眼觀看。

      h(i)=((1+λ)I+γ*DT D)-1  (p(i)+λ*u)  其中D為雙邊對稱矩陣,I為單位矩陣

  4)將B&W 擴展方法的思想(這種方法使灰度值小的點更小,灰度值大的更大,從而使圖像的對比度增強)加入,

      當    b<i<w時,h(i)=1/(1+λ)p(i)+λ/(1+λ)u

      當    i<=b 或者 i>=w時,h(i)=1/(1+λ+α)*(p(i)+λu)

  5)將上述方法綜合后,提出一種新的方法

      h1 (i)=p(i/C)  求滿足事件C的像素點對應的概率密度,

      事件C對應的像素點是滿足 |f(m,n)-f(m,n-2)|>Threshold 的點(m,n)

      統計圖像中所有滿足條件的點的個數 N,以及這些滿足條件的點對應的灰度等級的概率分布p(i/C),

      對應的偽代碼為

        輸入:源圖像 f,

        參數:增強級別 g, B&W 擴展參數 b,w ,φ

        輸出: 對比度增強后的圖像 F

        initial k

        foreach row m do

         foreach column n do

            k=k+|f(m,n(-f(m,n-2)

            if |f(m,n)-f(m,n-2)|>Threshoold

                ++num[f(m,n)]

                ++N 

            end

          end

        end

        Nomalize g*k to get k*

        u=min[N/256,umin]     

        foreach bin i do

          if  b<i<w then

            h[i]=(1-k*)u+k* h[i]

          else

            h[i]=1/(1+φ)((1-k*)u+k* h1 [i])

          end

        end

        foreach row m do 

          foreach column n do

            F(m,n)=(2B-1)C(f(m,n))+0.5

          end

        end

            其中C(f(m,n))=∑i=0 f(m,n ) h(i)    ,k*=1/(1+λ)=nomalize(gk),  k是圖像像素間差值的累加,使得控制因子自適應於圖像的對比度,

            gk的歸一化方法采用的是bit-shift operation

        


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM