《数字图像处理题库(共10页).doc》由会员分享,可在线阅读,更多相关《数字图像处理题库(共10页).doc(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上1. 选择一副图像eight.tif,设置输入/输出变换的灰度级范围,a=0.3,b=5,c=3,d=6。I=imread(eight.tif);I=im2double(I);I1=0.3.*I+5/255;I2=3.*I+6/255;subplot(1,3,1);imshow(I);title(原始图像);subplot(1,3,2);imshow(I1);title(a=0.3,b=5);subplot(1,3,3);imshow(I2);title(a=3,b=6);2. 设置非线性扩展函数的参数c=2,r=1.5,对图像eight.tif进行变换。I=imre
2、ad(eight.tif);c=2;r=1.5;S=imadjust(I,r)*c;subplot(1,2,1);imshow(I);title(原始图像);subplot(1,2,2);imshow(S);title(非线性扩展的图像);3. 采用灰度倒置变换函数s=255-r进行图像eight.tif变换I=imread(eight.tif);I=im2double(I);a=-1;b=255;S=a.*I+b/255;subplot(1,2,1);imshow(I);title(原始图像);subplot(1,2,2);imshow(S);title(变换后的图像);4. 对图像eigh
3、t.tif进行旋转45度和180度I=imread(eight.tif);J=imrotate(I,60,bilinear);K=imrotate(I,180,bilinear);subplot(1,3,1);imshow(I);title(原始图像);subplot(1,3,2);imshow(J);title(旋转60图像);subplot(1,3,3);imshow(K);title(旋转180图像);5. 选取一副图像eight.tif,进行离散傅里叶变换,将其中心移到零点,得到其离散傅里叶变换。参考例4.10I=imread(eight.tif);I1=fftshift(fft2(I
4、);subplot(1,2,1);imshow(I);title(原始图像);subplot(1,2,2);imshow(log(abs(I1),);title(变换后的图像);6. 选取一副图像,进行离散傅里叶变换,再对其进行一定角度的旋转,进行离散傅里叶变换. 参考例4.6I=zeros(255,255);I(100:150,50:200)=1;I1=fftshift(abs(fft2(I);I2=imrotate(I,60,bilinear,crop);I3=fftshift(abs(fft2(I2);subplot(1,4,1);imshow(I);title(原始图像);subplo
5、t(1,4,2);imshow(I1,5 50);title(傅立叶变换后的图像);subplot(1,4,3);imshow(I2);title(旋转90度后图像);subplot(1,4,4);imshow(I3,5 50);title(傅立叶变换后的原始图像);7. 选取一副图像eight.tif,进行离散余弦变换,并对其进行离散余弦反变换。参考例4.13I=imread(eight.tif);I1=dct2(I);I2=idct2(I1)/255;subplot(1,3,1);imshow(I);title(原始图像);subplot(1,3,2);imshow(I1);title(余
6、弦变换图像);subplot(1,3,3);imshow(I2);title(反余弦变换图像);8. 选取一副图像eight.tif,采用butterworth高通滤波器对图像进行高通滤波。参考例5.7I=imread(eight.tif);I1=fftshift(fft2(I);M,N=size(I1);n=2;d0=30;n1=floor(M/2);n2=floor(N/2);for x=1:M for y=1:N d=sqrt(x-n1)2+(y-n2)2); H=1/(1+(d0/d)(2*n); I2(x,y)=H*I1(x,y); endendI2=ifftshift(I2);I3
7、=real(ifft2(I2);subplot(1,2,1);imshow(I);title(原始图像);subplot(1,2,2);imshow(I3);title(Butterworth高通滤波处理后的图像);9. 选择一副图像eight.tif,对灰度图像进行直方图均衡化处理。I=imread(eight.tif);K=16;H=histeq(I,K);figure,subplot(2,2,1);imshow(I,);title(原始图像);subplot(2,2,2);imshow(H,),hold onsubplot(2,2,3),hist(double(I),16);subplo
8、t(2,2,4),hist(double(H),16);10. 选择一副图像eight.tif,对灰度图像采用均值滤波。img=imread(eight.tif);subplot(1,3,1);imshow(img);title(原图);img_noise=double(imnoise(img,salt & pepper,0.08);subplot(1,3,2);imshow(img_noise,);title(加噪点图);img_deal=imfilter(img_noise,fspecial(average,5);subplot(1,3,3);imshow(img_deal,);title
9、(平滑图);11. 选择一副图像coins.png,对灰度图像,采用prewitt边缘算子和sobel算子对图像进行增强处理。img=imread(coins.png);img1=edge(img,prewitt);img2=edge(img,sobel);subplot(1,3,1);imshow(img);title(原始图像);subplot(1,3,2);imshow(img1);title(prewitt);subplot(1,3,3);imshow(img2);title(sobel);12. 仿照matlab识别圆形物体例程,对coins.png图像进行处理。I=imread(c
10、oins.png);threshold = graythresh(I);bw = im2bw(I,threshold);imshow(I);% remove all object containing fewer than 30 pixelsbw = bwareaopen(bw,30);% fill a gap in the pens capse = strel(disk,2);bw = imclose(bw,se);% fill any holes, so that regionprops can be used to estimate% the area enclosed by each
11、of the boundariesbw = imfill(bw,holes);B,L = bwboundaries(bw,noholes);% Display the label matrix and draw each boundaryhold onfor k = 1:length(B) boundary = Bk; plot(boundary(:,2), boundary(:,1), w, LineWidth, 2)endimshow(I);stats = regionprops(L,Area,Centroid);threshold = 0.94;% loop over the bound
12、ariesfor k = 1:length(B) % obtain (X,Y) boundary coordinates corresponding to label k boundary = Bk; % 求周长 delta_sq = diff(boundary).2; perimeter = sum(sqrt(sum(delta_sq,2); %求面积 area = stats(k).Area; %求半径 metric = 2*area/perimeter; metric_string = sprintf(r=%2.2f,metric); text(boundary(1,2)-35,boun
13、dary(1,1)+13,metric_string,Color,y,. FontSize,14,FontWeight,bold);endtitle(求各个硬币的半径);13. 对灰度图像进行直线检测,参考例8.2I=imread(img1.bmp);I=rgb2gray(I);bw=edge(I,log);H,T,R=hough(bw);P=houghpeaks(H,5,threshold,ceil(0.3*max(H(:);x=T(P(:,2);y=R(P(:,1);lines=houghlines(bw,T,R,P,FillGap,5,MinLength,10);imshow(bw);h
14、old on;max_len=0;for k=1:length(lines) xy=lines(k).point1;lines(k).point2; plot(xy(:,1),xy(:,2),LineWidth,2,Color,g);end14. 对图像eight.tif进行OSTU算法阈值分割,参考例8.4i=imread(eight.tif);width,height=size(i);thresh=graythresh(i);bw=im2bw(i,thresh);imshow(bw);15. 对图像img3.bmp进行开运算和闭运算以及填充,参考例8.11i=imread(img3.bmp
15、);i=rgb2gray(i);bw=im2bw(i);se = strel(disk,6);bw=imopen(bw,se);bw=bw;imshow(bw);16. 识别图像中字的个数。参考matlab例程Correcting Nonuniform Illuminationi=imread(img4.bmp);i=rgb2gray(i);thresh=graythresh(i);bw=im2bw(i,thresh);se = strel(disk,2);bw=bw;bw=imdilate(bw,se);labeled,numObjects = bwlabel(bw,4);t=sprintf
16、(字的个数是:%d,numObjects);imshow(bw);title(t);17. 两幅图像进行逻辑与、或,非运算A=zeros(128); A(40:67,60:100)=1;figure(1); imshow(A);B=zeros(128); B(50:80,40:70)=1;figure(2); imshow(B);C=and(A,B); figure(3); imshow(C);D=or(A,B); figure(4); imshow(D);E=not(A); figure(5); imshow(E);18. 对一副图像首先加入高斯噪声,然后通过减法运算提取噪声。I=imrea
17、d(eight.tif); J=imnoise(I,gaussian,0,0.02);K=imsubtract(I,J); %实现两幅图片相减K1=255-K; %将图片求反显示figure;imshow(I); title(原始图像);figure;imshow(J); title(有噪声的图);figure;imshow(K1); title(提取的噪声);19. 已知一副图像coins.png,对图像进行水平镜像I=imread(coins.png);M,N=size(I); g=zeros(M,N);for i=1:M for j=1:N g(i,j)=I(i,N-j+1); ende
18、ndsubplot(121); imshow(I); title(原始图像);subplot(122); imshow(uint8(g); title(水平镜像);20. 已知一副图像coins.png,对图像进行垂直镜像I=imread(coins.png);M,N=size(I); g=zeros(M,N);for i=1:M for j=1:N g(i,j)=I(M-i+1,j); endendsubplot(121); imshow(I); title(原始图像);subplot(122); imshow(uint8(g); title(垂直镜像);21. 已知一副图像coins.pn
19、g,对图像缩小一倍I=imread(coins.png);J=imresize(I,0.5);figure,imshow(I);title(原图像);figure,imshow(J);title(缩小一倍的图像);22. 已知一副图像coins.png,采用最近邻法对图像放大一倍I=imread(coins.png);J=imresize(I,2,nearest);figure,imshow(I);title(原图像);figure,imshow(J);title(放大一倍的图像);23. 已知一副图像coins.png,对图像进行反转。Img1=imread(coins.png);figur
20、e,imshow(Img1);title(original image);Img2=imcomplement(Img1);figure,imshow(Img2);title(negative image);24. 对图像coins.png进行直方图均衡化并显示原图像和均衡化后的图像以及直方图I=imread(coins.png);H=histeq(I);figure,subplot(2,2,1),imshow(I,)subplot(2,2,2),imshow(H,),hold onsubplot(2,2,3),hist(double(I),subplot(2,2,4),hist(double(
21、H)25. 对一副图像coins.png加入椒盐噪声,然后采用局部3X3的模板进行平滑处理。img=imread(coins.png);figure; imshow(img);img_noise=double(imnoise(img,salt & pepper,0.06);figure; imshow(img_noise,);img_smoothed=imfilter(img_noise,fspecial(average,3);figure; imshow(img_smoothed,);26. 对一副图像coins.png加入高斯噪声,然后采用局部5X5的模板进行平滑处理。img=imread
22、(coins.png);figure; imshow(img);img_noise=double(imnoise(img,gaussian,0.02);figure; imshow(img_noise,);img_smoothed=imfilter(img_noise,fspecial(average,5);figure; imshow(img_smoothed,);27. 已知一副图像coins.png,进行sobel边缘检测,显示原图和边缘检测图。I=imread(coins.png);bw=edge(I,sobel);subplot(121),imshow(I);title(原图像);s
23、ubplot(122),imshow(bw);title(Sobel算子);28. 已知一副图像coins.png,进行prewitt边缘检测,显示原图和边缘检测图。I=imread(coins.png);bw=edge(I,prewitt);subplot(121),imshow(I);title(原图像);subplot(122),imshow(bw);title(prewitt算子);29. 已知一副图像coins.png,进行robert边缘检测,显示原图和边缘检测图。I=imread(coins.png);bw=edge(I,roberts);subplot(121),imshow(
24、I);title(原图像);subplot(122),imshow(bw);title(robert算子);30. 已知一副图像coins.png,进行高斯-拉普拉斯边缘检测,显示原图和边缘检测图。I=imread(coins.png);bw=edge(I,log);subplot(121),imshow(I);title(原图像);subplot(122),imshow(bw);title(高斯-拉普拉斯算子);31. 已知一副图像coins.png,显示其直方图和原图像。I=imread(coins.png);subplot(121),imshow(I);title(原图像);subplo
25、t(122),imhist(I);title(直方图);32. 已知一个图像coins.png,对图像进行腐蚀运算,输出原图和结果图.I=imread(coins.png);se1=strel(disk,5);bw=imerode(I,se1);subplot(121),imshow(I);title(原图像);subplot(122),imshow(bw);title(腐蚀后的图像);33. 已知一个图像coins.png,对图像进行膨胀运算,输出原图和结果图I=imread(coins.png);se2=strel(line,5,90);bw=imdilate(I,se2);subplot
26、(121),imshow(I);title(原图像);subplot(122),imshow(bw);title(膨胀后的图像);34. 已知一个图像coins.png,对图像进行开运算,输出原图和结果图I=imread(coins.png);se = strel(disk,5);bw=imopen(I,se);subplot(121),imshow(I);title(原图像);subplot(122),imshow(bw);title(开运算后的图像);35. 已知一个图像coins.png,对图像进行闭运算,输出原图和结果图I=imread(coins.png);se = strel(di
27、sk,5);bw=imclose(I,se);subplot(121),imshow(I);title(原图像);subplot(122),imshow(bw);title(闭运算后的图像);36. 已知一个图像coins.png,求其右上角方块的灰度均值,以及该区域的灰度最大值和最小值I=imread( coins.png ); %读取图像I=double(I); %转换成double型m,n=size(I); %获取图像的高度m和宽度nmw=round(m/2); %得到高度的一半mwmh=round(n/2); %得到宽度的一半mhsumg=0.0; %变量初始化for i=1:mw f
28、or j=mh:n %二重循环计算右上角灰度值之和 sumg=sumg+I(i,j); endendavg=sumg/(mw*mh) %计算图像右上角灰度值的均值maxg=max(max(I(1:mw,mh:n) %计算得到图像右上角灰度值的最大值ming=min(min(I(1:mw,mh:n) %计算得到图像右上角灰度值的最小值37. 已知一个图像coins.png,求其左下角方块的灰度均值,以及该区域的灰度最大值和最小值I=imread(coins.png); %读取图像I=double(I); %转换成double型m,n=size(I); %获取图像的高度m和宽度nmw=round(
29、m/2); %得到高度的一半mwmh=round(n/2); %得到宽度的一半mhsumg=0.0; %变量初始化for i=mw:m for j=1:mh %二重循环计算左下角灰度值之和 sumg=sumg+I(i,j); endendavg=sumg/(mw*mh) %计算图像左下角灰度值的均值maxg=max(max(I(mw:m,1:mh) %计算得到图像左下角灰度值的最大值ming=min(min(I(mw:m,1:mh) %计算得到图像左下角灰度值的最小值38. 已知一个图像coins.png,求其右下角方块的灰度均值,以及该区域的灰度最大值和最小值I=imread(coins.p
30、ng); %读取图像I=double(I); %转换成double型m,n=size(I); %获取图像的高度m和宽度nmw=round(m/2); %得到高度的一半mwmh=round(n/2); %得到宽度的一半mhsumg=0.0; %变量初始化for i=mw:m for j=mh:n %二重循环计算右下角灰度值之和 sumg=sumg+I(i,j); endendavg=sumg/(mw*mh) %计算图像右下角灰度值的均值maxg=max(max(I(mw:m,mh:n) %计算得到图像右下角灰度值的最大值ming=min(min(I(mw:m,mh:n) %计算得到图像右下角灰度
31、值的最小值39. 已知一副图像coins.png,求其硬币的区域面积,并输出。I=imread(coins.png);T=graythresh(I);bw=im2bw(I,T);bw1=bwfill(bw,holes);BL=bwlabel(bw1);F=regionprops(BL,Area);for i=1:10 F(i)end40. 已知一副图像coins.png,求其硬币的区域重心位置,并在图像中标出。I=imread(coins.png);T=graythresh(I);bw=im2bw(I,T);bw1=bwfill(bw,holes);BL=bwlabel(bw1);F=regi
32、onprops(BL,Centroid);imshow(I);hold on;for i=1:10 plot(F(i).Centroid(1),F(i).Centroid(2),*);end41. 已知一副图像coins.png,求其硬币的区域的周长,并输出。I=imread(coins.png);T=graythresh(I);bw=im2bw(I,T);bw1=bwfill(bw,holes);B,L = bwboundaries(bw1,noholes);for k = 1:length(B) boundary = Bk; delta_sq = diff(boundary).2; per
33、imeter = sum(sqrt(sum(delta_sq,2)end42. 已知一副图像coins.png,求其硬币包含区域的最小矩形,并在原图像中画出。I=imread(coins.png);T=graythresh(I);bw=im2bw(I,T);bw1=bwfill(bw,holes);BL=bwlabel(bw1);F=regionprops(BL,BoundingBox);imshow(I);hold on;for i=1:10 rectangle(Position,F(i).BoundingBox);end43. 已知一副图像coins.png,求其硬币的区域的直径,并输出。I=imread(coins.png);T=graythresh(I);bw=im2bw(I,T);bw1=bwfill(bw,holes);BL=bwlabel(bw1);F=regionprops(BL,EquivDiameter);for i=1:10 F(i)end44. 已知两个字母A,B的若干图片,将其相同字母的图片找出。专心-专注-专业
限制150内