數字圖像處理——直方圖均衡化

數字圖像處理——直方圖均衡化

%函數名稱爲Image_HistogramEqualization,輸入參數Image,輸出參數IMAGE
function [IMAGE] = Image_HistogramEqualization(Image)
%獲取矩陣的行、列、波段數
[m,n,bands] = size(Image);
%初始化計算矩陣
IMAGE = Image;
%計算圖像的直方圖矩陣
Hist = Image_Hist(Image);
%建立灰度映射函數
for k = 1:bands
    for i = 1:256
        P(i,k) = round(255* Hist(i,2,k));
    end
end
%計算直方圖均衡化後的矩陣
for k = 1:bands
   for i = 1:m
       for j = 1:n
           IMAGE(i,j,k) = P(IMAGE(i,j,k)+1,k);
       end
   end
end
%畫圖,左右分別表示原圖和處理後的圖像
figure(1);
subplot(1,2,1);
imshow(uint8(Image));
title('原始圖像');
subplot(1,2,2);
imshow(uint8(IMAGE));
title('直方圖均衡化後的圖像')
end
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章