自適應直方圖均衡化
此條目需要精通或熟悉技術的編者參與及協助編輯。 (2021年10月19日) |
自適應直方圖均衡化(Adaptive Histogram Equalization, AHE),是一種用於提高圖像對比的數字圖像處理技術。它與普通直方圖均衡化的不同之處在於自適應方法計算多個直方圖,每個直方圖對應於圖像的不同部分,並使用這些直方圖重新分配圖像的亮度值。因此,它適用於提高局部對比度和增強圖像每個區域的邊緣清晰度。
然而,AHE 傾向於過度放大圖像相對均勻區域中的噪聲。一種稱為限制對比度自適應直方圖均衡化(CLAHE)的變體通過限制放大來防止這種情況發生。
方法的動機和原理
[編輯]普通直方圖均衡化使用從圖像直方圖導出的相同變換來變換所有像素。當整個圖像的像素值分布相似時,這很有效。然而,當圖像包含明顯比大部分圖像更亮或更暗的區域時,這些區域的對比度將不會得到充分增強。
自適應直方圖均衡化 (AHE) 通過使用從鄰域區域計算出的變換函數來變換每個像素,從而解決這個問題。它最初用於飛機駕駛艙顯示器。 [1][2] 它的最簡形式是,每個像素都根據像素周圍正方形的直方圖進行變換,如下圖所示。從直方圖推導出變換函數與普通直方圖均衡化完全相同:即變換函數與鄰域中像素值的累積分布函數(CDF)成正比。
圖像邊界附近的像素必須特別處理,因為它們的鄰域不會完全位於圖像內,例如圖中藍色像素左側或上方的像素。可以通過以圖像邊界為軸鏡像行和列像素來擴展圖像,來達到這一目的。簡單地複製邊界上的像素線是不合適的,因為它會導致鄰域直方圖峰值過高。
AHE的特性
[編輯]- 鄰域區域的大小是該方法的一個參數。它決定了一個長度尺度:在比該值更小的尺度上,對比得到增強,而較大尺度上對比反而降低。
- 由於直方圖均衡化的性質,AHE下像素的結果值與其在鄰域像素中的大小排序成正比。這個操作在可以將中心像素與附近其他像素進行比較的專業硬體上可以高效地實現。 [3]可以為每個值小於中心像素的像素加 2,為每個值等於中心像素的像素加1,來得到一個未歸一化的結果。
- 當包含像素鄰域的圖像區域有著較為均勻的強度時,其直方圖將被強烈地峰值化,並且變換函數會將窄範圍的像素值映射到結果圖像的整個範圍。這會導致 AHE 過度放大圖像大致均勻區域中的少量噪聲。 [4]
限制對比度自適應直方圖均衡化(CLAHE)
[編輯]一般的 AHE 傾向於過度放大圖像接近一致的區域的對比,因為這些區域的直方圖高度集中。因此,AHE 可能會導致噪聲在比較接近的區域中被放大。 限制對比度自適應直方圖均衡化(Contrast Limited AHE,CLAHE)是自適應直方圖均衡化的一種變體,通過限制放大程度,減少噪聲放大這一問題。 [3]
在 CLAHE 中,給定像素值附近的對比度放大由變換函數的斜率給出。這與鄰域累積分布函數(CDF) 的斜率成正比,因此與該像素值處的直方圖值成正比。 CLAHE 通過在計算 CDF 之前將直方圖裁剪為預定義值來限制放大。這限制了 CDF 的斜率,因此也限制了轉換函數的斜率。直方圖被剪裁的值,即所謂的剪裁限制,取決於直方圖的歸一化,從而間接取決於鄰域區域的大小。常見的做法是將放大限制在 3 到 4 之間。
最好不要丟棄直方圖中超過裁剪限制的部分,而是在所有直方圖直條之間平均重新分配它。 [3]
重新分配將再次使得一些直條超過裁剪限制(圖中綠色陰影區域),導致直方圖超出規定的限制,其具體值取決於圖像。如果不希望這樣,可以遞歸地重複重新分配過程,直到超出的部分可以忽略不計。
通過插值進行高效計算
[編輯]上面介紹的直接形式的自適應直方圖均衡化,無論有沒有對比度限制,都需要為圖像中的每個像素計算不同的鄰域直方圖和變換函數,這使得該方法計算代價非常昂貴。
插值可以在不影響結果質量的情況下顯著提高效率。 [3]圖像被分割成大小相等的矩形塊,如下圖右側部分所示。 (8列8行共64塊是常見的選擇。[4] )。然後為每個圖塊計算直方圖、CDF 和變換函數。變換函數適用於平鋪中心像素(圖中左側的黑色方塊)。使用最多四個與中心像素最接近的圖塊的轉換函數進行轉換,並通過插值計算出所有其他像素的像素值。大部分圖像(藍色陰影)中的像素使用雙線性插值得到,靠近邊界的像素(綠色陰影)則用線性插值得到,邊角附近的像素(紅色陰影)使用角塊的變換函數進行變換。插值係數反映了像素到最近的圖塊的中心像素之間的位置,因此隨著像素接近圖塊中心,結果是連續的。
此過程顯著減少了要計算的變換函數的數量,並且只增加了線性插值的少量額外成本。
通過直方圖增量更新進行高效計算
[編輯]平鋪圖像的另一種方法是一次「滑動」矩形一個像素,僅通過每次添加新像素行並減去留在最後的像素行來實現。[5]該算法被原作者稱為 SWAH(Sliding Window Adaptive Histogram Equalization,滑動窗口自適應直方圖均衡化)。這樣直方圖計算的計算複雜度從O (N² )降低到O (N )(其中N = 周圍矩形的像素寬度);並且由於沒有平鋪,因此不需要最後的插值步驟。
參見
[編輯]- ^ D. J. Ketcham, R. W. Lowe & J. W. Weber: Image enhancement techniques for cockpit displays. Tech. rep., Hughes Aircraft. 1974.
- ^ R. A. Hummel: Image Enhancement by Histogram Transformation. Computer Graphics and Image Processing 6 (1977) 184195.
- ^ 3.0 3.1 3.2 3.3 S. M. Pizer, E. P. Amburn, J. D. Austin, et al.: Adaptive Histogram Equalization and Its Variations. Computer Vision, Graphics, and Image Processing 39 (1987) 355-368.
- ^ 4.0 4.1 K. Zuiderveld: Contrast Limited Adaptive Histogram Equalization. In: P. Heckbert: Graphics Gems IV, Academic Press 1994, ISBN 0-12-336155-9 引用錯誤:帶有name屬性「zuigem」的
<ref>
標籤用不同內容定義了多次 - ^ T. Sund & A. Møystad: Sliding window adaptive histogram equalization of intra-oral radiographs: effect on diagnostic quality. Dentomaxillofac Radiol. 2006 May;35(3):133-8.
6. G. R. Vidhya and H. Ramesh, "Effectiveness of contrast limited adaptive histogram equalization technique on multispectral satellite imagery", Proc. Int. Conf. Video Image Process., pp. 234-239, Dec. 2017.
外部連結
[編輯]- 在 OpenCV 中使用 CLAHE 的教程 (頁面存檔備份,存於網際網路檔案館)
- 在馬克斯普朗克分子細胞生物學和遺傳學研究所展示 CLAHE 效果的示例圖像
- CLAHE 教程
- 原始 CLAHE 論文的作者之一 Karel Zuiderveld 在 ANSI C 中實現 CLAHE 的示例 (頁面存檔備份,存於網際網路檔案館)