圖像處理中直方圖匹配以及灰度拉伸


一、基本知識

圖像對比度是指:一副圖像中明暗區域最亮的白和最暗的黑之間不同亮度層級的測量,差異范圍越大代表對比度越大;一般來說圖像對比度越大,圖像越清晰醒目,色彩也越鮮明艷麗;對比度小讓整個畫面都灰蒙蒙;

圖像飽和度是指:圖像的鮮艷程度,也是色彩的純度。飽和度取決於圖像中該色中含色成分和消色成分的比例;純的顏色飽和度都大;

圖像的亮度是指:圖像的明暗程度;

 

直方圖均衡化以及灰度拉伸都是屬於圖像對比度增強的方法;

 

二、灰度拉伸

灰度拉伸是通過對對比度拉伸達到對對比度進行增強的目的;

公式為:

 

三、直方圖均衡化及直方圖匹配:

首先直方圖均衡化是采用累積函數的方式來實現的;至於為什么選用累積函數來實現均衡化在於

          1.像素不論怎么映射,一定要保證圖像中原來的大小關系不變,較亮的區域依然較亮,較暗的區域依然較暗,只是對比度增加,不改變圖像明暗特征;

          2.映射過去的函數不能越界;

而累積函數分布函數是單調增函數且值域在0到1符合條件;一副圖像的灰度級可看成是區間[0,L-1]內的隨機變量;

其中w是積分的假變量,公式右邊是隨機變量r的累積分布函數。在由萊布尼茨准則

可以轉化為

 

對於離散的圖像來說

四、一個例子來說明到底如何進行直方圖匹配的過程:

 假設一副圖像的大小為64*64像素(M*N=4096)的3比特圖像(L=2^3=8)的灰度分布表

 則根據上表就可以算出S0~S7

就可以得到均衡化后的直方圖

這樣可以得到均衡化后的直方圖只有5個不同的灰度及,r0被映射到了s0=1;r1被映射到了s1=3;r2被映射到了s2=5;r3、r4被映射到了S=6;r5 6 7都被映射到了S=7;如下圖就是均衡后的直方圖:

接下來我們看需要待直方圖匹配;

我們先得到了S0=1;S1=3;S2=5;S3=6;S4=6;S5=7;S6=7;S7=7 。  接下來我們需要對規定直方圖進行同樣的均衡化;

通過計算的結果發現G函數並不是嚴格單調的,違反了條件的一一對應關系,所以找到Zq的最小值與SK最接近作為對應標准;例如S0=1;與G(Z3)=1就是完美匹配,因此S0對應Z3,也就是直方圖均衡后的圖像每個值為1的像素映射為直方圖規定話后圖像的值為3的像素;最后結果如下圖:

 

 

以上例子節選來自《數字圖像處理第三版》內容;

 

五、實際opencv例子結果

程序的源代碼如下圖所示:

 

測試原圖為:

 

 

 

由於選取圖像不是很特別,只是用來驗算的。從結果上面來看整體目標是實現了,灰度拉伸只是線性的拉寬對比度,對圖像的整體影響不大。而灰度直方圖均衡化卻對圖像的整體效果有影響,對直方圖的改變也比較大;

 

 

 

 

 

 

 

 

 

 

 

 

  

 

 

 

  

 


免責聲明!

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



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