彩色图像的平滑处理(RGB图像、HSI图像)
生活随笔
收集整理的這篇文章主要介紹了
彩色图像的平滑处理(RGB图像、HSI图像)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
% 彩色圖像的平滑處理
f = imread('flower.tif');
figure,imshow(f);%f的RGB三個分量
f1 = f(:,:,1);
f2 = f(:,:,2);
f3 = f(:,:,3);
figure,imshow(f1);
figure,imshow(f2);
figure,imshow(f3);%對f的三個分量單獨進行平滑處理
w = fspecial('average',25);
f1_filtered = imfilter(f1,w,'replicate');
f2_filtered = imfilter(f2,w,'replicate');
f3_filtered = imfilter(f3,w,'replicate');
f_filtered = cat(3,f1_filtered,f2_filtered,f3_filtered);
figure,imshow(f_filtered);%將RGB版本轉化為HSI版本(后面程序中包含單單對亮度分量進行
%平滑處理,和對三個分量平滑處理的模糊處理)
%分別顯示色調、飽和度分量和亮度分量
h = rgb2hsi(f);
H = h(:,:,1);
S = h(:,:,2);
I = h(:,:,3);
figure,imshow(H);
figure,imshow(S);
figure,imshow(I);%單單對亮度分量進行平滑處理
w = fspecial('average',25);
I_filtered = imfilter(I,w,'replicate');
h = cat(3,H,S,I_filtered);
figure,imshow(h);%將單單對亮度分量進行平滑處理的hsi圖像轉化為rgb圖像
f = hsi2rgb(h);
figure,imshow(f);%對HSI的三個分量都進行平滑處理,并轉化為RGB圖像
H_filtered = imfilter(H,w,'replicate');
S_filtered = imfilter(S,w,'replicate');
h1 = cat(3,H_filtered,S_filtered,I_filtered);
figure,imshow(h1);%將hsi圖像轉化為rgb圖像
f4 = hsi2rgb(h1);
figure,imshow(f4);
讀者可以對比三種處理的模糊效果
f_filtered圖像:直接對RGB圖像進行平滑處理
h;只對HSI中的亮度分量進行平滑處理后轉化為RGB的圖像
f4:對HSI中的色調、飽和度和亮度平滑處理后轉化為RGB的圖像
圖1( f_filtered)
?圖2(h)
?圖3(f4)
總結
以上是生活随笔為你收集整理的彩色图像的平滑处理(RGB图像、HSI图像)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Gikee区块链浏览器-昨日链上数据活跃
- 下一篇: 科研入门:文献检索,阅读技巧及工具使用