低亮度圖片增強(qiáng)方法:直方圖均衡化

直方圖均衡化(HE)

直方圖均衡化是最簡(jiǎn)單、最方便的低亮度圖片增強(qiáng)的算法。

HE通過(guò)拉伸圖片直方圖的分布,使得圖片的直方圖均勻的分布在[0,255] (8bit圖像),從而增強(qiáng)圖片的全局對(duì)比度。

適用范圍

對(duì)圖像前景和背景都非常暗(或非常亮)的圖片很有用。

缺點(diǎn)
  • 容易增加背景噪聲的對(duì)比度,并且降低有用信號(hào)的對(duì)比度。
  • 容易造成局部圖片過(guò)飽和。

保持亮度的動(dòng)態(tài)直方圖均衡化(Brightness Preserving Dynamic Histogram Equalization:BPDHE)

在增強(qiáng)圖片對(duì)比度的時(shí)候,需要保持增強(qiáng)后的圖片與增強(qiáng)前的圖片在亮度上是相同的

適用高斯濾波器平滑直方圖

由于數(shù)字圖像的直方圖并不是平滑的,會(huì)出現(xiàn)比較大的波動(dòng),以及會(huì)在某些數(shù)字上有所缺失,所以在直方圖進(jìn)行下一步處理前,需要先對(duì)直方圖進(jìn)行一個(gè)預(yù)處理。

  • 使用線性插值方法補(bǔ)齊直方圖上的缺損數(shù)值。
  • 使用一維高斯濾波器對(duì)直方圖進(jìn)行濾波。

G(x)=\exp \left(-x^{2} / 2 \sigma^{2}\right)
其中x是相對(duì)于kernel中心位置的坐標(biāo),\sigma是標(biāo)準(zhǔn)差。
文章中使用的kernal大小為1\times9,\sigma的大小為1.0762。

檢測(cè)平滑后直方圖局部最小值的位置
  • 計(jì)算直方圖的一階導(dǎo)數(shù)。
  • 由于直方圖的一階導(dǎo)數(shù)依然可能出現(xiàn)一些不平滑的現(xiàn)象,為此在尋找最小值之前,需要在進(jìn)行一步預(yù)處理。
change +-+ to +++
change -+- to ---
  • 尋找局部的最小值
the local maximums are detected as the points where four successive negative signs are followed by eight successive positive sign
將每局部最小值之間的每一部分映射到一個(gè)新的動(dòng)態(tài)范圍內(nèi)

假設(shè)m_0, m_1, .......,m_n對(duì)應(yīng)于上述n+1個(gè)局部最大值的灰度值。
則這n+1個(gè)局部最大值可以將圖像的直方圖分割為:
[I_{min},m_0],[m_0+1,m_1],......,[m_n,I_{max}]
現(xiàn)在我們將這些子直方圖的范圍映射到新的動(dòng)態(tài)范圍,映射的方法如下:
span_{i}=high_{i}-low_{I}

factor_{i}=span_{i} \times \log _{10} M

range_{i}=(L-1) \times factor / \sum_{k=1}^{n+1} factor _{k}

其中 high_i是每個(gè)子直方圖i中最高的像素值,low_i是每個(gè)子直方圖中最低的像素值,M是該子直方圖中所有像素的數(shù)目。

對(duì)于映射后的子直方圖的范圍,可由下式計(jì)算得到:
start_{i}=\sum_{k=1}^{i-1} range_{k}+1

end_{i}=\sum_{k=1}^{i} range_{k}

均衡化每個(gè)子直方圖

對(duì)于每一個(gè)子直方圖[start_i,end_i],我們使用以下公式得到每個(gè)像素值對(duì)應(yīng)的輸出
y(x) = start_i+(end_i-start_i)\sum^x_{k=start_{I}}\frac{n_k}{M}
其中n_k對(duì)應(yīng)于像素值
k的像素?cái)?shù)量,M為該子直方圖所包含的像素總量。

歸一化圖像的亮度
  • 計(jì)算均衡化之前和之后圖像的平均亮度M_{i}M_{o}。
  • 用下的公式對(duì)均衡后的圖像進(jìn)行歸一化:
    g(x, y)=\left(M_{i} / M_{o}\right) f(x, y)
    其中g(x,y)是最終的輸出圖像,f(x,y)是均衡化后的圖像。
    這一步做的目的是保持增強(qiáng)前的輸入圖片與輸出圖片有著相同的亮度。
實(shí)現(xiàn)代碼
效果比較
低亮度圖
增強(qiáng)低亮度圖_he
增強(qiáng)低亮度圖_bpdhe

從以上的效果圖可以看出,he非常容易使得圖片過(guò)飽和,對(duì)于彩色圖片來(lái)說(shuō),色彩也非常容易發(fā)生改變。

bpdhe由于保持了與原圖整體的亮度,雖然對(duì)比度相對(duì)原圖有所增強(qiáng),但并不適合用于低亮度圖片的增強(qiáng)。

參考文獻(xiàn)

https://zh.wikipedia.org/wiki/直方圖均衡化
https://ieeexplore.ieee.org/document/4429280

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容