北郵數(shù)字圖像處理作業(yè)
信息與通信工程學(xué)院數(shù)字圖像處理實(shí)驗(yàn)報(bào)告 班級(jí): 姓名: 學(xué)號(hào): 彩色圖像處理1 實(shí)驗(yàn)?zāi)康?. 考慮下列500*500的RGB彩色圖像,框內(nèi)的顏色如圖所示,假定將該圖像轉(zhuǎn)換到HSI空間,用25*25的平均模板模糊H分量圖像,再轉(zhuǎn)換回RGB空間,會(huì)看到什么結(jié)果?(b)重復(fù)(a),只是這次處理的是S分量。要求做實(shí)驗(yàn),并簡(jiǎn)單分析結(jié)果 2.對(duì)原始圖像 Beauty.jpg進(jìn)行彩色圖像處理,使以下問(wèn)題得到改善:(1)整個(gè)畫面光線偏暗 (2)畫面在色彩上偏紫 (3)皮膚上有很多的雀斑 (4)右下角偏亮 2 實(shí)驗(yàn)環(huán)境 Windows7 MATLAB R2012a3 實(shí)驗(yàn)思路實(shí)驗(yàn)1:(1) 生成所需圖像,框內(nèi)的顏色為綠紅藍(lán)綠;(2) 將該RGB圖像轉(zhuǎn)換到HSI空間;(3) 用25*25的平均模板模糊H分量圖像,再轉(zhuǎn)換回RGB空間,并觀察此時(shí)圖像的變化情況;(4) 重復(fù)(2)(3),這次處理的是S分量,觀察圖像的變化情況。實(shí)驗(yàn)2:(1) 將原圖像轉(zhuǎn)化為double型;(2) 提升原圖像的整體亮度;(3) 對(duì)原圖像進(jìn)行飽和度處理,使圖片偏紫得到改善;(4) 通過(guò)RGB平滑去除色斑;(5) 通過(guò)find函數(shù)降低圖片右下角的亮度;4 實(shí)驗(yàn)結(jié)果實(shí)驗(yàn)1:結(jié)果分析:H分量為與紅軸的夾角,S分量為圓上的點(diǎn)到圓心的距離,I分量為高。 (1)理論上,對(duì)H做均值濾波時(shí),S和I的值是不變的,若掩膜內(nèi)紅藍(lán)分量相同時(shí),轉(zhuǎn)化到RGB空間為綠色,若掩膜內(nèi)紅綠分量相同時(shí),轉(zhuǎn)換到RGB空間時(shí)依次為為紅黃綠,若掩膜內(nèi)藍(lán)綠分量相同時(shí),轉(zhuǎn)換到RGB空間時(shí)依次為藍(lán)青綠,若掩膜內(nèi)紅綠藍(lán)分量都有時(shí),則轉(zhuǎn)換到RGB空間時(shí),依次為藍(lán)青綠黃紅,觀察實(shí)驗(yàn)結(jié)果,與理論相同; (2)理論上,對(duì)S做均值濾波時(shí),H,S和I分量的值都不變,做掩膜也不會(huì)影響這幾個(gè)分量,因此轉(zhuǎn)換到RGB空間上觀察和原圖結(jié)果相同,觀察實(shí)驗(yàn)結(jié)果,與理論相同。實(shí)驗(yàn)2:(1) 原圖像:(2) 通過(guò)亮度提升完善原圖偏暗的情況:(3) 對(duì)圖片進(jìn)行飽和度調(diào)整,完善原圖像偏紫的問(wèn)題:(4) 對(duì)圖片進(jìn)行RGB平滑,去除原圖像中的色斑:(5) 降低原圖像右下角亮度,得到最終結(jié)果:5 實(shí)驗(yàn)中遇到的問(wèn)題及解決辦法(1) 由于實(shí)驗(yàn)1相對(duì)簡(jiǎn)單,并未遇到大問(wèn)題;(2) 在做實(shí)驗(yàn)2的時(shí)候,直接對(duì)原圖進(jìn)行處理,導(dǎo)致程序不能執(zhí)行,后來(lái)將原圖修改為double型以后,成功解決了該問(wèn)題;(3) 在做實(shí)驗(yàn)2的時(shí)候,由于亮度提升太高,導(dǎo)致結(jié)果與預(yù)期相差很大,后來(lái)降低了亮度提升的幅度以后,解決了這個(gè)問(wèn)題;(4) 實(shí)驗(yàn)2的最終效果不是很好,想了很多辦法也沒(méi)有解決,希望老師可以在課上具體講解一下。6 實(shí)驗(yàn)總結(jié)及心得體會(huì)實(shí)驗(yàn)總結(jié):根據(jù)實(shí)驗(yàn)要求,按照書本以及網(wǎng)上的資料提供的基本方法,得到上面的實(shí)驗(yàn)結(jié)果,經(jīng)過(guò)分析,最終得到的實(shí)驗(yàn)結(jié)果和要求基本一致,綜上所述,完成了本次實(shí)驗(yàn)。心得體會(huì):在這次實(shí)驗(yàn)的開(kāi)始,找到了實(shí)驗(yàn)的相關(guān)內(nèi)容,因此實(shí)驗(yàn)的目標(biāo)比較明確,不過(guò)在編寫代碼的時(shí)候仍然遇到了一些問(wèn)題,后來(lái)經(jīng)過(guò)查閱資料,解決了這些問(wèn)題。但是實(shí)驗(yàn)2的效果仍然不是很理想。通過(guò)這次實(shí)驗(yàn),對(duì)彩色圖像的處理有了更加深刻的理解,較好的掌握了彩色空間的轉(zhuǎn)換,尤其是RGB與HSI空間之間的相互轉(zhuǎn)換。同時(shí)掌握了如何提升和降低彩色圖像的亮度,以及對(duì)彩色圖像的RGB平滑處理,調(diào)整彩色圖像的飽和度。此外,對(duì)課內(nèi)知識(shí)也有了更加形象的認(rèn)識(shí)。7 源程序?qū)嶒?yàn)1:clear all;% 生成紅綠藍(lán)的格子圖案A = ones(250,250);B = zeros(250,250);r = cat(1,cat(2,B,A),cat(2,B,B);g = cat(1,cat(2,A,B),cat(2,B,A);b = cat(1,cat(2,B,B),cat(2,A,B);rgb = cat(3,r,g,b); hsi=rgb2hsi(rgb); %將RGB圖像轉(zhuǎn)換為hsi空間h=hsi(:,:,1); s=hsi(:,:,2); i=hsi(:,:,3); K = fspecial(average,25 25); % 25*25的平均模板 H = imfilter(h,K,replicate); %模糊h分量hsi1 = cat(3,H,s,i); rgb1=hsi2rgb(hsi1); %將hsi圖像轉(zhuǎn)化為RGB空間S = imfilter(s,K,replicate); %模糊s分量hsi2 = cat(3,h,S,i); rgb2=hsi2rgb(hsi2); %將hsi圖像轉(zhuǎn)化為RGB空間%顯示圖像subplot(2,2,1),imshow(rgb), title(原圖); subplot(2,2,2),imshow(rgb1,), title(H模糊后的圖像); subplot(2,2,3),imshow(rgb2,), title(S模糊后的圖像); 實(shí)驗(yàn)2:I=imread(beauty.jpg);I=im2double(I); %將原圖像轉(zhuǎn)化為double型HSI= rgb2hsi(I); %將RGB圖像轉(zhuǎn)換到HSI空間fH=HSI(:,:,1);fS=HSI(:,:,2);fI=HSI(:,:,3);c=find(fI<0.6);%找出FI<0.6的元素,并將這些元素的線性索引值按列返回向量c中fI(c)=fI(c)*1.3; %亮度提升I1=cat(3,fH,fS,fI); %構(gòu)建多維數(shù)組f1=hsi2rgb(I1); %將HSI圖像轉(zhuǎn)化為RGB空間P = rgb2hsi(f1); %將RGB圖像轉(zhuǎn)換到HSI空間fH1=P(:,:,1);fS1=P(:,:,2);fI1=P(:,:,3);fS1=fS1*0.95; %圖片飽和度調(diào)整I2=cat(3,fH1,fS1,fI1); %構(gòu)建多維數(shù)組f2=hsi2rgb(I2); %將HSI圖像轉(zhuǎn)化為RGB空間R= f2(:,:,1);G= f2(:,:,2); B= f2(:,:,3);w = fspecial(average,5,5); %5*5平均模板R1 = imfilter(R,w,replicate);G1 = imfilter(G,w,replicate);B1 = imfilter(B,w,replicate);f3= cat(3,R1,G1,B1);R2 = f3(:,:,1);G2 = f3(:,:,2);B2 = f3(:,:,3);R2 =imfilter(R2,w,replicate); %濾波處理f4 = cat(3,R2,G2,B2); %構(gòu)建多維數(shù)組HSI = rgb2hsi(f4); %將RGB圖像轉(zhuǎn)化為HSI空間H = HSI(:,:,1);S = HSI(:,:,2);i = HSI(:,:,3);d=find(i=1);i(d)=0.7;c=find(i>0.7);i(c)=i(c)*0.93; %在亮度過(guò)強(qiáng)區(qū)域減亮度HSI=cat(3,H,S,i); %構(gòu)建多維數(shù)組f5=hsi2rgb(HSI); %將HSI圖像轉(zhuǎn)化為RGB圖像%顯示圖像subplot(2,3,1),imshow(I), title(原圖); subplot(2,3,2),imshow(f1), title(整體亮度提升); subplot(2,3,3),imshow(f2), title(圖片飽和度調(diào)整); subplot(2,3,4),imshow(f3), title(RGB平滑圖像); subplot(2,3,5),imshow(f4), title(進(jìn)一步處理); subplot(2,3,6),imshow(f5), title(最終處理結(jié)果);