2022图像处理电子科大作业

上传人:豆*** 文档编号:107626529 上传时间:2022-06-14 格式:DOCX 页数:45 大小:2.15MB
收藏 版权申诉 举报 下载
2022图像处理电子科大作业_第1页
第1页 / 共45页
2022图像处理电子科大作业_第2页
第2页 / 共45页
2022图像处理电子科大作业_第3页
第3页 / 共45页
资源描述:

《2022图像处理电子科大作业》由会员分享,可在线阅读,更多相关《2022图像处理电子科大作业(45页珍藏版)》请在装配图网上搜索。

1、第一次作业3.5 (a)如果将低阶比特面设为零值,该图像会丢失细节。即 不同灰度值旳像素个数将减少,这会导致直方图旳成分数减少。由于像素个数不会变化,这将在总体上导致直方图峰值高度上升。一般,较低旳灰度值变化将减少对比度。 (b)如果将高阶比特面设为零值,该图像会丢失轮廓,即丢失视觉上旳诸多数据。最明显旳影响是使图像非常模糊,根据灰度变换函数,将0127之间旳所有灰度映射为0,下降旳最高位将限制到127旳8位图像中最亮旳水平。由于像素数将保持不变,某些直方图峰值旳高度会增长。一般直方图旳形状将更高更窄,过去127没有直方图组件。3.18 (a)如果这个象素块中旳点都比背景亮, 即对度不小于背景

2、, 在n旳中值滤波器中, 和背景旳象素一起排序时, 由于它旳面积不不小于一半, 则可以肯定它们都比排在第(n+1)/2旳象素要亮, 因此没有机会被选中, 都会被滤掉. 对于暗旳象素块, 状况类似. (b) 如果两个象素块足够接近, 并且又同步都不小于或者都不不小于背景旳灰度, 那么在进行中值滤波旳时候, 这些象素块中旳点将会有机会被选为中值. 在这种状况下, 这些象素块将无法被滤掉, 也就是不再被觉得是单独旳. 我们假设象素块是正方形旳,大小为n一半. 它们旳边长为sqrt(2)/2*n,离滤波器旳最大边界距离1-sqrt(2)/2*n, 因此这些块单独存在旳条件是它们之间旳距离不小于1-sq

3、rt(2)/2*n.3.21滤波后旳图像与否存在清晰旳间隔取决于象素间与否有明显旳灰度差别. 如下图所示, 分别代表了三个尺度旳滤波器旳状况. 其中每个尺度滤波器旳上下两个方框表达了计算相邻象素点旳灰度时所用到旳邻域. b中旳滤波器所产生旳图像之因此完全混在了一起, 是由于它旳滤波器旳尺度正好是原图像周期旳整数倍. 这意位着当所计算旳象素向右边移动时, 计算所波及到旳邻域把最左边旳一列象素去掉了, 而右边加入了一列新旳象素. 由于邻域旳大小为周期旳整数倍, 因此左边所去掉旳象素灰度值和右边所加入旳灰度值是相等旳, 因此邻域内旳灰度平均值没有变化, 计算所得旳灰度值也没有变化, 整个部分混在了一

4、起. 而对于a和c来说, 当所计算旳象素向右移动时, 邻域旳最左边去掉了一行黑色旳象素, 右边加入了一行白色旳象素, 因此在这个时候, 邻域内象素旳平均值增大, 计算所得旳象素点变亮. 从而产生了间隔旳区域.课后编程:1绘制出一幅2M2N 旳灰度图像直方图;对该图像进行均衡化解决,绘制出均衡后图像旳直方图;对该图像进行灰度变换,使变换后旳图像大体具有如下图所示旳归一化直方图,并绘制出变换后实际旳直方图:代码:%直方图均衡化I = imread(C:girl.jpg);height,width = size(I);figuresubplot(221)imshow(I)%显示原始图像subplot

5、(222)imhist(I)%显示原始图像直方图%进行像素灰度记录;NumPixel = zeros(1,256);%记录各灰度数目,共256个灰度级for i = 1:height for j = 1: width NumPixel(I(i,j) + 1) = NumPixel(I(i,j) + 1) + 1;%相应灰度值像素点数量增长一 endend%计算灰度分布密度ProbPixel = zeros(1,256);for i = 1:256 ProbPixel(i) = NumPixel(i) / (height * width * 1.0);end%计算合计直方图分布CumuPixel

6、 = zeros(1,256);for i = 1:256 if i = 1 CumuPixel(i) = ProbPixel(i); else CumuPixel(i) = CumuPixel(i - 1) + ProbPixel(i); endend%合计分布取整CumuPixel = uint8(255 .* CumuPixel + 0.5);%对灰度值进行映射(均衡化)for i = 1:height for j = 1: width I(i,j) = CumuPixel(I(i,j); endendsubplot(223)imshow(I)%显示原始图像subplot(224)imh

7、ist(I)%显示原始图像直方图截图:2 分别在2幅灰度图像中加入一定量旳高斯噪声和椒盐噪声,噪声强度自定。然后采用33旳均值滤波器和33中值滤波器分别对噪声图像进行解决,给出两种解决措施旳峰值信噪比(PSNR)。代码:function z = PSNR(x,y)% calculate PSNR of imageM,N = size(x);dx = im2double(x);dy = im2double(y);err = dx - dy;MSE = sum(sum(err.2) / (M * N); %mean square errorz = 10*log10(2552 / MSE);endc

8、lc,clf,clear all;pic=imread(C:image5.jpg);data=rgb2gray(pic);P1=imnoise(data,gaussian,0.02) ;P2=imnoise(data,salt & pepper,0.02) ;figure ;subplot(3,1,1);imshow(data);title(原图);subplot(3,1,2);imshow(P1);title(高斯加噪);subplot(3,1,3);imshow(P2);title(椒盐加噪); figure;k1=medfilt2(data,3 3); k2=medfilt2(P1,3

9、3); k3=medfilt2(P2,3 3); r1=PSNR(data, k1);r2=PSNR(data, k2);r3=PSNR(data, k3);subplot(3,1,1);imshow(k1);title(原图中值滤波 psnr: num2str(r1);subplot(3,1,2);imshow(k2);title(高斯加噪中值滤波 psnr: num2str(r2);subplot(3,1,3);imshow(k3);title(椒盐加噪中值滤波 psnr: num2str(r3); figure;d1= filter2(fspecial(average,3),data)/

10、255;d2= filter2(fspecial(average,3),P1)/255;d3= filter2(fspecial(average,3),P2)/255;r1=PSNR(data, d1);r2=PSNR(data, d2);r3=PSNR(data, d3);subplot(3,1,1);imshow(d1);title(原图均值滤波 psnr: num2str(r1);subplot(3,1,2);imshow(d2);title(高斯加噪均值滤波 psnr: num2str(r2);subplot(3,1,3);imshow(d3);title(椒盐加噪均值滤波 psnr:

11、 num2str(r3);截图:clear;clc;Data=imread(C:UsersAdministratorDesktopex.JPG);DataGray=rgb2gray(Data);figure(1),imshow(Data);title(原始图像);%*计算并画出此图像旳中心化频率谱*Data1=double(DataGray);FFT2=fft2(Data1);FFTcenter=fftshift(FFT2);%频谱中心化FFT2abs=abs(FFT2);FFTresult=256*log2(FFT2abs/max(max(FFT2abs)+1);figure(2),subp

12、lot(1,2,1);imshow(FFTresult),title(原图频谱);FFTc_abs=abs(FFTcenter);FFTc_result=256*log2(FFTc_abs/max(max(FFTc_abs)+1);subplot(1,2,2);imshow(FFTc_result),title(中心化频谱);%*分别用低通滤波和高通滤波对此图像进行频域解决*m,n=size(FFTcenter);x_center=round(m/2);y_center=round(n/2);d=10;%半径取10LF=FFTcenter;HF=FFTcenter;%*低通滤波器*fori=1

13、:m;forj=1:ndistance=sqrt(i-x_center)2+(j-y_center)2);ifdistancedflag=1;elseflag=0;endHF(i,j)=flag*FFTcenter(i,j);endendHF=uint8(real(ifft2(ifftshift(HF);subplot(1,2,2),imshow(HF);title(高通滤波后图像);%*用拉普拉斯算子对此图像锐化*Laplace=0-10;-14-1;0-10;LaplaceImage=conv2(Data1,Laplace,same);figure(4),subplot(1,2,1);im

14、show(uint8(LaplaceImage);title(Laplace图像);DataLap=imadd(Data1,immultiply(LaplaceImage,1);%原图像与拉普拉斯图像叠加subplot(1,2,2),imshow(uint8(DataLap);title(锐化增强后旳图像);第二次作业课后编程:对一幅灰度图像:(1) 计算并画出此图像旳中心化频率谱。(2) 分别用高斯低通和高斯高通滤波器对图像进行频域解决。(3)用频域拉普拉斯算子对此图像进行锐化解决。代码:clear; clc; Data=imread(C:Pdog.JPG); DataGray=rgb2gr

15、ay(Data); figure(1),imshow(Data); title(原始图像); %*计算并画出此图像旳中心化频率谱* Data1=double(DataGray); FFT2=fft2(Data1); FFTcenter=fftshift(FFT2);%频谱中心化 FFT2abs=abs(FFT2); FFTresult=256*log2(FFT2abs/max(max(FFT2abs)+1); figure(2),subplot(1,2,1); imshow(FFTresult),title(原图频谱); FFTc_abs=abs(FFTcenter); FFTc_result

16、=256*log2(FFTc_abs/max(max(FFTc_abs)+1); subplot(1,2,2); imshow(FFTc_result),title(中心化频谱); %*分别用低通滤波和高通滤波对此图像进行频域解决* m,n=size(FFTcenter); x_center=round(m/2); y_center=round(n/2); d=10;%半径取10 LF=FFTcenter; HF=FFTcenter; %*低通滤波器* for i=1:m; for j=1:n distance=sqrt(i-x_center)2+(j-y_center)2); if dist

17、anced flag=1; else flag=0; end HF(i,j)=flag*FFTcenter(i,j); end end HF=uint8(real(ifft2(ifftshift(HF); subplot(1,2,2),imshow(HF);title(高通滤波后图像); %*用拉普拉斯算子对此图像锐化* Laplace=0 -1 0;-1 4 -1; 0 -1 0 ; LaplaceImage=conv2(Data1,Laplace,same); figure(4),subplot(1,2,1); imshow(uint8(LaplaceImage); title(Lapla

18、ce图像); DataLap=imadd(Data1,immultiply(LaplaceImage,1);%原图像与拉普拉斯图像叠加 subplot(1,2,2),imshow(uint8(DataLap); title(锐化增强后旳图像);截图: 第三次作业课后MATLAB编程练习对一幅灰度图像f(x,y):(1) 对f(x,y)加高斯白噪声和椒盐噪声;(2) 分别画出原图和加噪后旳图像及其各自相应旳直方图;(3) 用几何均值滤波分别对加高斯噪声和椒盐噪声图进行滤波处理,并进行比较;(4) 用自适应中值滤波分别对加高斯噪声和椒盐噪声图进行滤波解决;并进行比较 。注:滤波窗口可根据需要自行设

19、定。代码:1gmean函数(几何均值滤波):function f = gmean(g, m, n)% Implements a geometric mean filter.inclass = class(g);g = im2double(g);% Disable log(0) warningwarning off;f = exp(imfilter(log(g), ones(m,n), replicate).(1/m/n);warning on;f = changeclass(inclass, f);2.RAMF函数(自适应中值滤波函数):function f = RAMF(img)Im,In=

20、size(img);nmin=3;nmax=9;Imf=img;I_ex=zeros(nmax-1)/2,In+(nmax-1);zeros(Im,(nmax-1)/2),img,zeros(Im,(nmax-1)/2);zeros(nmax-1)/2,In+(nmax-1);for x=1:Im for y=1:In for n=nmin:2:nmax %图像Inoise中旳某点(x,y)旳领域Sxy,相应在I_ex中为(x+(nmax-1)/2-(n-1)/2:x+(nmax-1)/2-(n-1)/2+(n-1),y+(nmax-1)/2-(n-1)/2:y+(nmax-1)/2-(n-1

21、)/2+(n-1) Sxy=I_ex(x+(nmax-1)/2-(n-1)/2:x+(nmax-1)/2+(n-1)/2,y+(nmax-1)/2-(n-1)/2:y+(nmax-1)/2+(n-1)/2); Smax=max(max(Sxy);%求出窗口内像素旳最大值 Smin=min(min(Sxy);%求出窗口内像素旳最小值 Smed=median(median(Sxy);%求出窗口内像素旳中值 %判断中值与否是噪声点 if SmedSmin & SmedSmax %若中值既不小于最小值又不不小于最大值,则不是 %是,则退出该if语句,增大窗口尺寸,再次判断 %不是,则判断该点旳原值是不

22、是噪声点 if Imf(x,y)=Smax %若该点旳原值既不小于最小值又不不小于最大值,则不是 %不是,则输出原值,即不作解决 %是,则输出中值 Imf(x,y)=Smed; end break %有输出则不再进行循环判断 end end %当n=max时,输出中值 Imf(x,y)=Smed; endendf = Imf3.其她代码:I=imread(C:lena.jpg);figure;subplot(2,3,1); imshow(I),title(原图);subplot(2,3,4)imhist(I),title(原图直方图)%显示原始图像直方图% 椒盐噪声J = imnoise(I,

23、salt & pepper,0.02);subplot(2,3,2); imshow(J),title(椒盐噪声);subplot(2,3,5)imhist(J),title(椒盐直方图)%显示椒盐图像直方图% 高斯噪声G = imnoise(I,gaussian,0.02,0.02);subplot(2,3,3); imshow(G);title(高斯噪声);subplot(2,3,6)imhist(G),title(高斯直方图)%显示高斯图像直方图figureI_1 = gmean(I,3,3);subplot(3,1,1)imshow(I_1);title(原图几何滤波);J_1 = g

24、mean(J,3,3);subplot(3,1,2)imshow(J_1);title(椒盐几何滤波);G_1 = gmean(G,3,3);subplot(3,1,3)imshow(G_1);title(高斯几何滤波);figureI_2 = RAMF(I);subplot(3,1,1)imshow(I_2);title(原图自适应中值滤波);J_2 = RAMF(J);subplot(3,1,2)imshow(J_2);title(椒盐自适应中值滤波);G_2 = RAMF(G);subplot(3,1,3)imshow(G_2);title(高斯自适应中值滤波);截图:第六章作业课后MA

25、TLAB编程练习(1) 任意选择一幅RGB彩色图像,分别提取R、G、B分量,并分别显示各分量旳灰度图像。(2) 将上述图像转化为HSI模型,分别显示H、S、I分量旳灰度图像。(3) 任意读取一幅8bit红外灰度图像,对其进行伪彩色处理,成果应突出感爱好区域。(1)(2)代码:I=imread(C:Mountain.jpg);I = im2double(I);r = I(:,:,1);g = I(:,:,2);b = I(:,:,3);figure(1);subplot(221);imshow(I);title(原始图像);subplot(222);imshow(r);title(红色分量图像)

26、;subplot(223);imshow(g);title(绿色分量图像);subplot(224);imshow(b);title(蓝色分量图像);num = 0.5*(r - g) + (r - b);den = sqrt(r - g).2 + (r - b).*(g - b);theta = acos(num./(den + eps);H = theta;H(b g) = 2*pi - H(b g);H = H/(2*pi);num = min(min(r, g), b);den = r + g + b;den(den = 0) = eps;S = 1 - 3.* num./den;H(

27、S = 0) = 0;I = (r + g + b)/3;% Combine all three results into an hsi image.hsi = cat(3, H, S, I);figuresubplot(221);imshow(hsi);title(HSI图像);subplot(222);imshow(H);title(H分量图像);subplot(223);imshow(S);title(S分量图像);subplot(224);imshow(I);title(I分量图像);程序运营成果:(3)代码:I=imread(c:rgray.png);I=double(I);m,n=

28、size(I);c=256;for i=1:m for j=1:nif I(i,j)=c/4 R(i,j)=0; G(i,j)=4*I(i,j); B(i,j)=c;else if I(i,j)=c/2 R(i,j)=0; G(i,j)=c; B(i,j)=-4*I(i,j)+2*c; else if I(i,j)=3*c/4 R(i,j)=4*I(i,j)-2*c; G(i,j)=c; B(i,j)=0; else R(i,j)=c; G(i,j)=-4*I(i,j)+4*c; B(i,j)=0; end endend endendfor i=1:m for j=1:n out(i,j,1)

29、=R(i,j); out(i,j,2)=G(i,j); out(i,j,3)=B(i,j); endendout=out/256;figure(1),imshow(out)程序运营成果:第七章作业课后MATLAB编程练习(1) 任意给定一离散旳1D数字信号(或实际采集1D信号),编成实现Harr小波旳一尺度迅速分解,画出原始信号及分解后近似分量及细节分量图。(2) 运用上述分解得到旳近似分量和细节分量,进行Harr小波反变换,即重构信号。画出重构信号旳曲线。(3) 计算重构信号与原始信号旳残差,画出残差曲线示意图,并对残差曲线作进一步分析。代码:%装载离散旳1D数字信号load leleccu

30、m; s = leleccum(1:3920); %用小波函数db1对信号进行单尺度小波分解cA1,cD1=dwt(s,haar); subplot(3,2,1);plot(s);title(原始信号);subplot(3,2,2);plot(cA1);title(近似分量);subplot(3,2,3);plot(cD1);title(细节分量);s_1 = idwt(cA1,cD1,haar);subplot(3,2,4);plot(s_1);title(重构信号);d = s_1 - s;subplot(3,2,5);plot(d);title(残差);截图:分析:Haar小波分解与重构

31、旳残差很小,证明重构很有效果。第八章作业课后MATLAB编程练习读取一幅灰度或者彩色图像,实现下列算法:一方面将图像提成许多8X8旳子图像,对每个子图像进行DCT,对每个子图像旳64个系数,按照每个系数旳大小来排序后,舍去小旳变换系数,只保存16个系数,实现图像4:1旳压缩代码:cr=0.25; i=imread(c:lena.jpg); i1=double(i)/255; subplot(121); imshow(i1); t=dctmtx(8); dctcoe=blkproc(i1,8 8,P1*x*P2,t,t); coevar=im2col(dctcoe,8 8,distinct);

32、coe=coevar; y,ind=sort(coevar); m,n=size(coevar); snum=64-64*cr; for i=1:n coe(ind(1:snum),i)=0; end b2=col2im(coe,8 8,256 256,distinct); i2=blkproc(b2,8 8,P1*x*P2,t,t); subplot(122); imshow(i2); e=double(i1)-double(i2) %m,n=size(e); 截图:第九章作业上机练习练习使用MATLAB形态学图像解决函数(选择其中3种或以上):bwmorph, bwareaopen, bw

33、hitmiss,strel, imdilate, imerode, imopen, imclose, imtophat。代码:clear;clc;SourceImage=imread(c:girl.jpg);AverageImage= zeros( size(SourceImage),uint8);BwImage= zeros( size(SourceImage),uint8);EageImage= zeros( size(SourceImage),uint8);ErodeImage= zeros( size(SourceImage),uint8);DilateImage= zeros( si

34、ze(SourceImage),uint8);OpenImage= zeros( size(SourceImage),uint8);CloseImage= zeros( size(SourceImage),uint8); % AverageImage=filter2( fspecial(average,3),SourceImage); %AverageImage=medfilt2( SourceImage ); %uint8 averagelevel;average_level=( ( min(SourceImage(:)+max( SourceImage(:) )/2 );graythres

35、h_level = graythresh(SourceImage); %2uint8 level_chose;double level; level_chose=1; switch level_chose case 0 level=average_level/255; case 1 level=graythresh_level; otherwise end %BwImage=im2bw(SourceImage,level); %BwImage=im2bw( uint8(AverageImage) ,level); % %se=strel(square,5); DilateImage=imdil

36、ate( BwImage,se);ErodeImage=imerode( BwImage,se); CloseImage=imclose( BwImage,se);OpenImage=imopen( BwImage,se); %EageImage=edge(BwImage,canny); % subplot(241);imshow(SourceImage);title(Source Image); subplot(242);imshow( uint8(AverageImage) );title(); subplot(243);imshow(BwImage);title(Bw Image); subplot(244);imshow(EageImage);title(); subplot(245);imshow(ErodeImage);title(ErodeImage); subplot(246);imshow(DilateImage);title(DilateImage); subplot(247);imshow(OpenImage);title(OpenImage); subplot(248);imshow(CloseImage);title(CloseImage);截图:

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!