图像上机实验_第1页
图像上机实验_第2页
图像上机实验_第3页
图像上机实验_第4页
图像上机实验_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实验一 图像处理的基本操作一,实验目的1熟悉有关数字图像处理的matlab基本操作和编写;2掌握数字图像的基本读写、显示与保存;3能够利用matlab工具箱完成图像处理的基本运算;二,实验内容1(1)读取图像并显示真彩色图像house.tiff;(2)读取图像并显示索引色图像canoe.tif,并转换为灰度图像;(3)读取图像并显示灰度图像rice.png,并转换为二进制图像;(4)检测内存中的图像和保存图像;2查看不同分辨率下图像lena.tiff的显示结果;3对彩色图像peppers.png观看grb通道各单通道图像;4实现马赫带效应并画出灰度直方图。三,代码i=imread('h

2、ouse.tiff');figure(1)imshow(i)a,map=imread('canoe.tif');figure(2)subplot(121)imshow(a,map)d=ind2gray(a,map);subplot(122)imshow(d)g=imread('rice.png');figure(3)subplot(121)imshow(g)th=graythresh(g);h=im2bw(g,th);subplot(122)imshow(h)whos;imwriteb=imread('lena.tiff');figure

3、(4),subplot(121)imshow(b)c = imresize(b, 0.2)subplot(122)imshow(c)d=imread('peppers.png');r=d,r(:,:,2 3)=0; g=d,g(:,:,1 3)=0; b=d,b(:,:,1 2)=0; figure(5), subplot(1,3,1),imshow(r); subplot(1,3,2),imshow(g); subplot(1,3,3),imshow(b);a=zeros(256,256);for i=1:32:256 a(:,i:i+32)=i;endfigure(6);s

4、ubplot(121)imshow(uint8(a);subplot(122)imhist(uint8(a);四,实验结果五,结果分析 从运行结果可以看出,实验还是比较成功的。但是在做索引色那个图像的时候,如果索引色和灰度图像放在同一个figure里,索引色图像显示的也是灰色,因此我只能把索引色图像和灰度图像分开放到两个figure里。在查看不同分辨率下图像lena.tiff的显示结果时,必须要对两个图像进行放大查看才能看出不同。实验二 图像变换1一,实验目的1熟悉有关matlab工具箱中提供的图像变换函数;2掌握傅立叶变换和小波变换等常用的正交变换函数;二,实验内容1对图像lena.png进

5、行傅立叶变换和离散余弦变换,并分别求出其逆变换后重构图像的均方误差;2实现图像lena.png的两层小波分解,观察分解系数并重构,求重构图像误差值;3观察图像im1.bmp经小波分解系数的方向性,实现三层小波分解,分别把hl,lh,hh子带置零和重构,观察重构图像跟原始图像的差异。三,代码%1对图像lena.png进行傅立叶变换和离散余弦变换,% 并分别求出其逆变换后重构图像的均方误差;clear;clc;i=imread('lena.png');%傅里叶变换figure(1);i1=fft2(i);i1=fftshift(i1);if=ifftshift(i1);if=uin

6、t8(real(ifft2(if);subplot(231);imshow(i);subplot(232);imshow(log(abs(i1),);subplot(233);imshow(if);m,n=size(i); %计算均方误差for i=1:m for j=1:n temp(i,j)=(if(i,j)-i(i,j)2; endendwucha1=sum(sum(temp)%离散余弦变换i2=dct2(i);i3=fftshift(i2);id=idct2(i2);id=uint8(real(id);subplot(234);imshow(i);subplot(235);imshow

7、(log(abs(i3),);subplot(236);imshow(id);m,n=size(i); %计算均方误差for i=1:m for j=1:n temp(i,j)=(if(i,j)-i(i,j)2; endendwucha2=sum(sum(temp) % 2实现图像lena.png的两层小波分解,观察分解系数并重构,求重构图像误差值;x=imread('lena.png');c,s=wavedec2(x,2,'bior3.7');a1=wrcoef2('a',c,s,'bior3.7',1);h1=wrcoef2(

8、'h',c,s,'bior3.7',1);v1=wrcoef2('v',c,s,'bior3.7',1);d1=wrcoef2('d',c,s,'bior3.7',1);c1=a1,h1;v1,d1;c1=uint8(c1);xr=waverec2(c,s,'bior3.7');figure(2);subplot(131);imshow(x);subplot(132);imshow(c1);subplot(133);imshow(uint8(xr);m,n=size(x); %计算均

9、方误差for i=1:m for j=1:n temp(i,j)=(xr(i,j)-i(i,j)2; endendwucha3=sum(sum(temp) % 3观察图像im1.bmp经小波分解系数的方向性,实现三层小波分解,% 分别把hl,lh,hh子带置零和重构,观察重构图像跟原始图像的差异。p=imread('c:shiyan2im1.bmp');c,s=wavedec2(p,3,'bior3.7');a1=wrcoef2('a',c,s,'bior3.7',1);h1=wrcoef2('h',c,s,

10、9;bior3.7',1);v1=wrcoef2('v',c,s,'bior3.7',1);d1=wrcoef2('d',c,s,'bior3.7',1);c1=a1,h1;v1,d1;c1=uint8(c1);figure(3);subplot(131);imshow(p);subplot(132);imshow(c1);subplot(133);imshow(uint8(a1);四,实验结果五,实验结果 从运行结果可以看出,实验还是比较成功的。上图分别是1.对图像lena.png进行傅立叶变换和离散余弦变换,并分别求出

11、其逆变换后重构图像的均方误差;2实现图像lena.png的两层小波分解,观察分解系数并重构,求重构图像误差值;3观察图像im1.bmp经小波分解系数的方向性,实现三层小波分解,分别把hl,lh,hh子带置零和重构,观察重构图像跟原始图像的差异。最后求得误差均为零,我认为这可能是重构方法均是使用matlab自带函数的原因,使得重构图像与原图几乎一样。实验三 图像变换2一,实验目的1熟悉有关图像增强的直方图方法;2掌握傅立叶变换和离散余弦变换等常用的正交变换函数;二,实验内容1实现对图像im2.bmp进行直方图均衡化,从而达到增强图像的目的,观察图像直方图的前后变化;2实现对图像im3.bmp加入

12、某种噪声(如椒盐噪声等),运用低通滤波和中值滤波分别进行图像平滑;3实现对图像im4.bmp的同态增强:对照明分量和反射分量进行同态滤波。三,代码clear; clc;% 实现对图像im2.bmp进行直方图均衡化,从而达到增强图像的目的,% 观察图像直方图的前后变化i=imread('im2.bmp');j=histeq(i);figure(1);subplot(221);imshow(i);title('原始图像');subplot(222);imshow(j);title('均衡化图像');subplot(223);imhist(i,64);

13、title('原始直方图');subplot(224);imhist(j,64);title('均衡化直方图');% 实现对图像im3.bmp加入某种噪声(如椒盐噪声等),% 运用低通滤波和中值滤波分别进行图像平滑k=imread('im3.bmp');l=imnoise(k,'salt & pepper',0.02);figure(2);subplot(221);imshow(k);title('原始图像');subplot(222);imshow(l);title('噪声图像');p=m

14、edfilt2(l);subplot(223);imshow(p);title('中值滤波图像');f=double(l);g=fftshift(fft2(f);n1,n2=size(g);n=2; %butterworth滤波器的参数n=2d0=50; %d0为截止频率(与原点的距离)n1=fix(n1/2);n2=fix(n2/2);for i=1:n1 for j=2:n2 d=sqrt(i-n1)2+(j-n2)2); h=1/(1+0.414*(d/d0)2*n); result(i,j)=h*g(i,j); endendresult=ifftshift(result

15、);x2=ifft2(result);x3=uint8(real(x2);subplot(224);imshow(x3);title('butterworth低通滤波图像'); %实现对图像im4.bmp的同态增强:对照明分量和反射分量进行同态滤波%图像的动态范围压缩,图像的对比度增强,类似于高通滤波clear;figure;i=imread('im4.bmp');i1=log(double(i)+1);i2=fft2(i1);n=3;d0=5;rh=0.1;rl=0.05;row,col=size(i2);for i=1:row for j=1:col d1(

16、i,j)=sqrt(i2+j2); h(i,j)=rl+(rh/(1+(d0/d1(i,j)(2*n); endendi3=i2.*h;i4=ifft2(i3);i5=exp(i4)-1;subplot(121);imshow(i);title('原始图像');subplot(122);imshow(i5);title('同态滤波');四,实验结果五,结果分析 从运行结果可以看出,实验还是比较成功的。但在加入椒盐噪声后进行高斯低通滤波的实验中,高斯低通滤波并不能完美的把噪声滤掉,图像中依然存在噪声,虽然变得不明显了。我想可能是算子取得不好,导致了高斯低通滤波的失

17、败。实验四 图像处理一、实验目的1掌握图像分割中的四叉树区域分割与合并法;2掌握图像分割中的阈值分割法;3了解图像纹理分析和特征提取方法;4了解图像目标识别方法及其应用;二、实验内容1使用四叉树(quadtree)的方法,找出图像im5.bmp中物体的轮廓;2选择一个合适的初始阈值,将图像im5.bmp分为两个区域;3选作题目:选择合适的位置算子,计算出图像的共生矩阵,然后计算熵和能量来描述纹理特征;4选作实验五 特征提取一、实验目的1了解图像纹理分析和特征提取方法;二、实验内容1选择合适的位置算子,计算出图像的共生矩阵,然后计算熵和能量来描述纹理特征;题目:汽车牌照定位与字符识别。 三,代码

18、%使用四叉树(quadtree)的方法,找出图像im5.bmp中物体的轮廓h=imread('l8_2.bmp');s = qtdecomp(h, 0.2);figure(1);subplot(221);imshow(full(s);title('参数为0.2');s = qtdecomp(h, 0.4);subplot(222);imshow(full(s);title('参数为0.4');s = qtdecomp(h, 0.6);subplot(223);imshow(full(s);title('参数为0.6');s = q

19、tdecomp(h, 0.8);subplot(224);imshow(full(s);title('参数为0.8'); % 选择一个合适的初始阈值,将图像im5.bmp分为两个区域h=imread('l8_2.bmp');h1=im2bw(h,40/255);h2=im2bw(h,100/255);h3=im2bw(h,150/255);h4=im2bw(h,180/255);figure(2);subplot(221);imshow(h);title('原图像'); subplot(222);imshow(h2);title('t=100'); subplot(2

温馨提示

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

评论

0/150

提交评论