日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【图像处理】直方图均衡化

發布時間:2025/4/5 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【图像处理】直方图均衡化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

直方圖均衡化是圖像處理領域中利用圖像直方圖增強圖像對比度的一種方法。

如果一副圖像的像素占有很多的灰度級而且分布均勻,那么這樣的圖像往往有高對比度和多變的灰度色調。“直方圖均衡化”是把原始圖像的灰度直方圖從比較集中的某個灰度區間變成在全部灰度范圍內的均勻分布。直方圖均衡化就是對圖像進行非線性拉伸,重新分配圖像像素值,使一定灰度范圍內的像素數量大致相同。直方圖均衡化就是把給定圖像的直方圖分布改變成“均勻”分布直方圖分布。

matlab代碼實現

1、灰度圖均衡化

RGB = imread('1.jpg'); % 讀取彩色圖 subplot(131); imshow(RGB); title('彩色圖');I=rgb2gray(RGB); % 將彩色圖轉化為灰度圖 subplot(132); imshow(I); title('灰度圖');[R, C] = size(I);% 統計每個像素值出現次數 cnt = zeros(1, 256); for i = 1 : Rfor j = 1 : Ccnt(1, I(i, j) + 1) = cnt(1, I(i, j) + 1) + 1;end endf = zeros(1, 256); f = double(f); cnt = double(cnt);% 統計每個像素值出現的概率, 得到概率直方圖 for i = 1 : 256f(1, i) = cnt(1, i) / (R * C); end% 求累計概率,得到累計直方圖 for i = 2 : 256f(1, i) = f(1, i - 1) + f(1, i); end% 用f數組實現像素值[0, 255]的映射。 for i = 1 : 256f(1, i) = f(1, i) * 255; end% 完成每個像素點的映射 I = double(I); for i = 1 : Rfor j = 1 : CI(i, j) = f(1, I(i, j) + 1);end end% 輸出 I = uint8(I); subplot(133); imshow(I); title('直方圖均衡化'); imwrite(I,'chq_gphoto.jpg') %保存直方圖均衡化后的圖像

以圖像處理界的聞名人物-蕾娜(Lena)的照片為例,(因為照片本身是灰度圖,所以將彩色圖轉為灰度圖那一步就無用了。)


2、彩色圖均衡化

RGB = imread('1.jpg'); % 讀取彩色圖 subplot(121); imshow(RGB);% 顯示彩色圖像 title('彩色圖');[R, C, K] = size(RGB); % 新增的K表示顏色通道數% 統計每個像素值出現次數 cnt = zeros(K, 256); for i = 1 : Rfor j = 1 : Cfor k = 1 : Kcnt(k, RGB(i, j, k) + 1) = cnt(k, RGB(i, j, k) + 1) + 1;endend endf = zeros(3, 256); f = double(f); cnt = double(cnt);% 統計每個像素值出現的概率, 得到概率直方圖 for k = 1 : Kfor i = 1 : 256f(k, i) = cnt(k, i) / (R * C);end end% 求累計概率,得到累計直方圖 for k = 1 : Kfor i = 2 : 256f(k, i) = f(k, i - 1) + f(k, i);end end% 用f數組實現像素值[0, 255]的映射。 for k = 1 : Kfor i = 1 : 256f(k, i) = f(k, i) * 255;end end% 完成每個像素點的映射 for i = 1 : Rfor j = 1 : Cfor k = 1 : KRGB(i, j, k) = f(k, RGB(i, j, k) + 1);endend end% 輸出 RGB2 = uint8(RGB); subplot(122); imshow(RGB2); title('彩色直方圖均衡化'); imwrite(RGB2,'chq_photo.jpg') %保存直方圖均衡化后的圖像

總結

以上是生活随笔為你收集整理的【图像处理】直方图均衡化的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。