1. 程式人生 > >OpenCV使用python實現限制對比度的自適應直方圖均衡化

OpenCV使用python實現限制對比度的自適應直方圖均衡化

center 方式 點擊 watermark red 圖片 cfb target 視頻課程

前面講到的自適應直方圖均衡化的實現方法首先是將圖像劃分成不重疊的區域塊,讓後對每個塊分別進行直方圖均衡化處理。如果在圖像有噪聲的情況下這樣處理,在每個被分割的小區域塊中的噪聲就會被放大。

為了避免噪聲對圖像均衡化的影響,這裏使用了限制對比度的自適應直方圖均衡化來處理圖像的直方圖均衡化。

限制對比度的直方圖均衡化的處理方式是先為直方圖設置一個閾值,該閾值為限制對比度值,超過該閾值的值會被裁剪,然後裁剪的部分會均勻的分布到其他值上,這樣就重構了直方圖,接下來就可以用重構後的直方圖來進行接下來的均衡化操作了。

下面是限制對比度的操作示例圖,我這邊用excel圖來進行展示:

技術分享圖片

技術分享圖片

閾值為40時,超出閾值的為50這個直方圖區域,將多出的50-40=10的部分均勻分布到每個區域上,平均每個區域增加的值為2

註意:在OpenCV手冊中沒有提及到限制對比度的自適應直方圖均衡化函數。

具體的python實現限制對比度的自適應直方圖均衡化代碼如下:

技術分享圖片

其中默認設置的“限制對比度”為40,塊的大小為8X8

程序運行後的效果如下圖所示:

技術分享圖片

本文摘自異步社區,作者:黑夜探路人,作品:《OpenCV使用python實現限制對比度的自適應直方圖均衡化》,未經授權,禁止轉載。


推薦閱讀

2018年5月新書書單(文末福利)

2018年4月新書書單

異步圖書最全Python書單

一份程序員必備的算法書單

第一本Python神經網絡編程圖書





技術分享圖片
長按二維碼,可以關註我們喲

每天與你分享IT好文。


異步圖書”後臺回復“關註”,即可免費獲得2000門在線視頻課程

點擊查看原文,閱讀更多內容

閱讀原文


OpenCV使用python實現限制對比度的自適應直方圖均衡化