数字图像处理基础程序及运行结果图像matlab程序解析.docx

上传人:b****3 文档编号:13288596 上传时间:2023-06-12 格式:DOCX 页数:41 大小:1.42MB
下载 相关 举报
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第1页
第1页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第2页
第2页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第3页
第3页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第4页
第4页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第5页
第5页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第6页
第6页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第7页
第7页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第8页
第8页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第9页
第9页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第10页
第10页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第11页
第11页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第12页
第12页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第13页
第13页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第14页
第14页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第15页
第15页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第16页
第16页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第17页
第17页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第18页
第18页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第19页
第19页 / 共41页
数字图像处理基础程序及运行结果图像matlab程序解析.docx_第20页
第20页 / 共41页
亲,该文档总共41页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数字图像处理基础程序及运行结果图像matlab程序解析.docx

《数字图像处理基础程序及运行结果图像matlab程序解析.docx》由会员分享,可在线阅读,更多相关《数字图像处理基础程序及运行结果图像matlab程序解析.docx(41页珍藏版)》请在冰点文库上搜索。

数字图像处理基础程序及运行结果图像matlab程序解析.docx

数字图像处理基础程序及运行结果图像matlab程序解析

 

实验一MATLAB数字图像处理初步

一、实验目的与要求

1.熟悉及掌握在MATLAB中能够处理哪些格式图像。

2.熟练掌握在MATLAB中如何读取图像。

3.掌握如何利用MATLAB来获取图像的大小、颜色、高度、宽度等等相关信息。

4.掌握如何在MATLAB中按照指定要求存储一幅图像的方法。

5.图像间如何转化。

二、实验内容及步骤

1.利用imread()函数读取一幅图像,假设其名为flower.tif,存入一个数组中;

2.利用whos命令提取该读入图像flower.tif的基本信息;

3.利用imshow()函数来显示这幅图像;

4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;

5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为flower.jpg;语法:

imwrite(原图像,新图像,‘quality’,q),q取0-100。

6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。

7.用imread()读入图像:

Lenna.jpg和camema.jpg;

8.用imfinfo()获取图像Lenna.jpg和camema.jpg的大小;

9.用figure,imshow()分别将Lenna.jpg和camema.jpg显示出来,观察两幅图像的质量。

10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。

11.将每一步的函数执行语句拷贝下来,写入实验报告,并且将得到第3、9、10步得到的图像效果拷贝下来

三、考核要点

1、熟悉在MATLAB中如何读入图像、如何获取图像文件的相关信息、如何显示图像及保存图像等,熟悉相关的处理函数。

2、明确不同的图像文件格式,由于其具体的图像存储方式不同,所以文件的大小不同,因此当对同一幅图像来说,有相同的文件大小时,质量不同。

五、实验仪器与软件

(1)PC计算机

(2)MatLab软件/语言包括图像处理工具箱(ImageProcessingToolbox)

(3)实验所需要的图片

四、实验内容

f=imread('C:

\Users\Gateway\Desktop\ͼƬ\flower.tif');

whosf;

imshow(f);

imfinfoC:

\Users\Gateway\Desktop\ͼƬ\flower.tif

ans=

Filename:

'C:

\Users\Gateway\Desktop\图片\flower.tif'

FileModDate:

'24-六月-201218:

46:

53'

FileSize:

392018

Format:

'jpg'

FormatVersion:

''

Width:

1600

Height:

1200

BitDepth:

24

ColorType:

'truecolor'

FormatSignature:

''

NumberOfSamples:

3

CodingMethod:

'Huffman'

CodingProcess:

'Sequential'

Comment:

{}

ans=%imfinfo压缩后的信息

Filename:

'flower.jpg'

FileModDate:

'25-六月-201216:

07:

40'

FileSize:

81013

Format:

'jpg'

FormatVersion:

''

Width:

1600

Height:

1200

BitDepth:

24

ColorType:

'truecolor'

FormatSignature:

''

NumberOfSamples:

3

CodingMethod:

'Huffman'

CodingProcess:

'Sequential'

Comment:

{}

f=imread('C:

\Users\Gateway\Desktop\ͼƬ\lenna.jpg');

g=imread('C:

\Users\Gateway\Desktop\ͼƬ\camera.jpg');

figure;imshow(f);

figure,imshow(g);

imfinfoC:

\Users\Gateway\Desktop\ͼƬ\lenna.jpg

imfinfoC:

\Users\Gateway\Desktop\ͼƬ\camera.jpg

ans=

Filename:

'C:

\Users\Gateway\Desktop\图片\lenna.jpg'

FileModDate:

'24-六月-201218:

44:

09'

FileSize:

21307

Format:

'jpg'

FormatVersion:

''

Width:

300

Height:

300

BitDepth:

24

ColorType:

'truecolor'

FormatSignature:

''

NumberOfSamples:

3

CodingMethod:

'Huffman'

CodingProcess:

'Sequential'

Comment:

{}

ans=

Filename:

'C:

\Users\Gateway\Desktop\图片\camera.jpg'

FileModDate:

'24-六月-201218:

44:

32'

FileSize:

18653

Format:

'jpg'

FormatVersion:

''

Width:

256

Height:

256

BitDepth:

24

ColorType:

'truecolor'

FormatSignature:

''

NumberOfSamples:

3

CodingMethod:

'Huffman'

CodingProcess:

'Sequential'

Comment:

{}

f=imread('C:

\Users\Gateway\Desktop\ͼƬ\lenna.jpg');

g=im2bw(f);

figure,imshow(g);

 

五、思考题

(1)简述MatLab软件的特点。

(2)MatLab软件可以支持哪些图像文件格式?

docimread

(3)说明函数imread的用途格式以及各种格式所得到图像的性质。

(4)为什么用I=imread(‘lena.bmp’)命令得到的图像I不可以进行算术运算?

 

实验二图像的代数运算

一、实验目的

1.了解图像的算术运算在数字图像处理中的初步应用。

2.体会图像算术运算处理的过程和处理前后图像的变化。

二、实验步骤

2.图像的减法运算

3.图像的乘法运算

4.图像的除法运算

三、实验内容

1.图像的加法运算

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\lenna2.jpg');

J=imread('C:

\Users\Gateway\Desktop\ͼƬ\camera.jpg');

K=imadd(I,J);

imshow(K);

%lenna原图和camera尺寸大小不一样,不能相加,用ps将lenna裁剪成256*256与camera相同尺寸

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\camera.jpg');

J=imadd(I,50);

subplot(1,2,1);imshow(I);

subplot(1,2,2);imshow(J);

 

2.图像的减法运算

I2=zeros(256,256);

I=imread('rice.png');imshow(I)

background=imopen(I,strel('disk',15));

figure,imshow(background)

I2=imsubtract(I,background);

figure,imshow(I2)

3.图像的乘法运算

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\camera.jpg');

J=immultiply(I,1.5);

subplot(1,2,1);imshow(I);

subplot(1,2,2);imshow(J);

4.图像的除法运算

I=imread('rice.png');

J=double('rice.png');

K=J*0.43+90;

I2=unit8(J);

Ip=imdivide(I,I2);

imshow(Ip,[]);

5.图像的四则代数运算

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\lenna2.jpg');

J=imread('C:

\Users\Gateway\Desktop\ͼƬ\camera.jpg');

Z=imlincomb(0.5,I,0.5,J,50);

imshow(Z);

四、思考题

由图像算术运算的运算结果,思考图像减法运算在什么场合上发挥优势?

从背景中提取图像

 

实验三图像增强—灰度变换

一、实验目的:

1、了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。

2、学会对图像直方图的分析。

3、掌握直接灰度变换的图像增强方法。

二、实验内容:

1、图像数据读出

2、计算并分析图像直方图

3、利用直接灰度变换法对图像进行灰度变换

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\medicine.jpg');

J=rgb2gray(I);

imhist(J);

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\medicine.jpg');

J=rgb2gray(I);

g=imhist(J,256);

g1=imadjust(f,[01],[10]);

figure;imshow(g1);

%将0.5到0.75的灰度级扩展到范围[01]

g2=imadjust(f,[0.50.75],[01]);

figure;imshow(g2);

g=imread('C:

\Users\Gateway\Desktop\ͼƬ\point.jpg');

h=log(1+double(g));%对输入图像对数映射变换

h=mat2gray(h);%将矩阵h转换为灰度图片

h=im2uint8(h);%将灰度图转换为8位图

figure;imshow(h);

 

实验四图像增强—直方图变换

一、实验目的

1.掌握灰度直方图的概念及其计算方法;

2.熟练掌握直力图均衡化和直方图规定化的计算过程;

3.熟练掌握空域滤波中常用的平滑和锐化滤波器;

4.掌握色彩直方图的概念和计算方法

5.利用MATLAB程序进行图像增强。

二、实验步骤

1打开计算机,启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;

2调入“实验一”中获取的数字图像,并进行计算机均衡化处理;

3显示原图像的直方图和经过均衡化处理过的图像直方图。

4记录和整理实验报告

三、实验内容

I=imread('C:

\Users\Gateway\Desktop\ͼƬ\pollen.jpg');

g=rgb2gray(I);

J=histeq(g);%对原图像进行直方图均衡化处理

imshow(I);

title('ÔͼÏñ');

figure;imshow(J);

title('¾ùºâ»¯ºóͼÏñ');

figure,subplot(1,2,1);

imhist(g,64);%将原图像直方图显示为64级灰度

title('ÔͼÏñÖ±·½Í¼');

subplot(1,2,2);

imhist(J,64);

title('¾ùºâ»¯ºóÖ±·½Í¼');

 

四、思考题

1.直方图是什么概念?

它反映了图像的什么信息?

直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况.直方图是以图形化参数来显示图片曝光精确度的手段,其描述的是图片显示范围内影像的灰度分布曲线。

它可以帮助分析图片的曝光水平等一些信息

2.直方图均衡化是什么意思?

它的主要用途是什么?

直方图拉伸和直方图均衡化化是两种最常见的间接对比度增强方法,直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。

直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同。

直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。

 

实验五图像增强—空域滤波

一、实验目的

进一步了解MatLab软件/语言,学会使用MatLab对图像作滤波处理,使学生有机会掌握滤波算法,体会滤波效果。

了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力,并为课堂教学提供配套的实践机会。

二、实验内容与步骤

a)调入并显示原始图像Sample2-1.jpg。

b)利用imnoise命令在图像Sample2-1.jpg上加入高斯(gaussian)噪声

c)利用预定义函数fspecial命令产生平均(average)滤波器

d)分别采用3x3和5x5的模板,分别用平均滤波器以及中值滤波器,对加入噪声的图像进行处理并观察不同噪声水平下,上述滤波器处理的结果;

e)选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述滤波器处理的结果。

f)利用imnoise命令在图像Sample2-1.jpg上加入椒盐噪声(salt&pepper)

g)重复c)~e)的步骤

h)输出全部结果并进行讨论。

三、实验内容

i=imread('C:

\Users\Gateway\Desktop\ͼƬ\electric.tif');

I=rgb2gray(i);

J=imnoise(I,'gauss',0.02);

J=imnoise(I,'salt&pepper',0.02);

ave1=fspecial('average',3);%产生3*3均值模板

ave2=fspecial('average',5);

K=filter2(ave1,J)/255;%均值滤波

L=filter2(ave2,J)/255;

M=medfilt2(J,[33]);%中值滤波¨

N=medfilt2(J,[55]);

imshow(I);

figure;imshow(J);

figure;imshow(K);

figure;imshow(L);

figure;imshow(M);

figure;imshow(N);

原图gauss噪声

Gauss噪声3*3模板均值滤波Gauss噪声5*5模板均值滤波

Gauss噪声3*3中值滤波Gauss噪声5*5中值滤波

椒盐噪声

椒盐噪声3*3均值滤波椒盐噪声5*5均值滤波

椒盐噪声3*3中值滤波椒盐噪声5*5中值滤波

四,思考题/问答题

(1)简述高斯噪声和椒盐噪声的特点。

椒盐噪声是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声。

检验噪声往往由图像切割引起。

椒盐噪声是指两种噪声,一种是盐噪声(saltnoise),另一种是胡椒噪声(peppernoise)。

盐=白色,椒=黑色。

前者是高灰度噪声,后者属于低灰度噪声。

一般两种噪声同时出现,呈现在图像上就是黑白杂点。

高斯噪声是一种随机噪声。

在任选瞬时中任取n个,其值按n个变数的高斯概率定律分布。

高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声。

如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。

(2)结合实验内容,定性评价平均滤波器/中值滤波器对高斯噪声和椒盐噪声的去噪效果?

两种滤波对高斯噪声效果都不是很好,5*5的中值滤波效果好于3*3。

中值滤波对椒盐噪声效果好于均值滤波。

(3)结合实验内容,定性评价滤波窗口对去噪效果的影响?

窗口越大,去噪效果越好,但是窗口越大所用的时间越多。

 

实验六图像的傅立叶变换

一、实验目的

1了解图像变换的意义和手段;

2熟悉傅立叶变换的基本性质;

3熟练掌握FFT变换方法及应用;

4通过实验了解二维频谱的分布特点;

5通过本实验掌握利用MATLAB编程实现数字图像的傅立叶变换。

6评价人眼对图像幅频特性和相频特性的敏感度。

二、实验原理

傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。

通过实验培养这项技能,将有助于解决大多数图像处理问题。

对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。

三、实验步骤

1.将图像内容读入内存;

2.用Fourier变换算法,对图像作二维Fourier变换;

3.将其幅度谱进行搬移,在图像中心显示;

4.用Fourier系数的幅度进行Fourier反变换;

5.用Fourier系数的相位进行Fourier反变换;

6.比较4、5的结果,评价人眼对图像幅频特性和相频特性的敏感度。

7.记录和整理实验报告。

四、实验内容

J=imread('C:

\Users\Gateway\Desktop\ͼƬ\number.jpg');

imshow(J);

I=rgb2gray(J);

fftI=fft2(I);%二维傅里叶变换

sfftI=fftshift(fftI);%直流分量移到频谱中心

figure;imshow(sfftI);

RR=real(sfftI);%取实部

II=imag(sfftI);%取虚部

A=sqrt(RR.^2+II.^2);%计算幅值

A=(A-min(min(A)))/(max(max(A))-min(min(A)))*255;%归一化

figure;

imshow(A);%显示图像频谱

另一种

J=imread('C:

\Users\Gateway\Desktop\ͼƬ\number.jpg');

I=rgb2gray(J);

F=fft2(I);%¶þάÀëÉ¢¸µÀïÒ¶±ä»»

S=abs(F);

imshow(S,[]);

FC=fftshift(F);

imshow(abs(FC),[]);

S2=log(1+abs(FC));

figure;imshow(S2,[]);

 

原图

归一化后图像

实验七图像增强—频域滤波

一、实验目的

1.掌握怎样利用傅立叶变换进行频域滤波

2.掌握频域滤波的概念及方法

3.熟练掌握频域空间的各类滤波器

4.利用MATLAB程序进行频域滤波

二、实验原理

频域滤波分为低通滤波和高通滤波两类,对应的滤波器分别为低通滤波器和高通滤波器。

频域低通过滤的基本思想:

G(u,v)=F(u,v)H(u,v)

F(u,v)是需要钝化图像的傅立叶变换形式,H(u,v)是选取的一个低通过滤器变换函数,G(u,v)是通过H(u,v)减少F(u,v)的高频部分来得到的结果,运用傅立叶逆变换得到钝化后的图像。

n阶巴特沃兹低通滤波器(BLPF)(在距离原点

处出现截至频率)的传递函数为

与理想地通滤波器不同的是,巴特沃兹率通滤波器的传递函数并不是在

处突然不连续。

高斯低通滤波器(GLPF)的传递函数为

其中,

为标准差。

二、实验步骤:

1.调入并显示所需的图片;

2.利用MATLAB提供的低通滤波器实现图像信号的滤波运算,并与空间滤波进行比较。

3.利用MATLAB提供的高通滤波器对图像进行处理。

4.记录和整理实验报告。

 

f1=imread('C:

\Users\Gateway\Desktop\ͼƬ\camera.jpg');

f=rgb2gray(f1);

F=fft2(f);

S=fftshift(log(1+abs(F)));

figure;imshow(S,[]);%²úÉúƵÆ×ͼÏñ

h=fspecial('sobel');

figure;freqz2(h);

PQ=paddedsize(size(f));

H=freqz2(h,PQ

(1),PQ

(2));

H1=ifftshift(H);

figure;imshow(abs(H),[]);

Sobel边缘提取

f=imread('C:

\Users\Gateway\Desktop\ͼƬ\dabao.jpg');

f=rgb2gray(f);

f=im2double(f);

[VSFAT]=edge(f,'sobel','vertical');

figure;imshow(f);

figure;imshow(VSFAT);

 

实验八彩色图像处理

一、实验目的

使用MatLab软件对图像进行彩色处理。

使学生通过实验熟悉使用MatLab软件进行图像彩色处理的有关方法,并体会到图像彩色处理技术以及对图像处理的效果。

二、实验要求

要求学生能够完成彩色图像的分析,能正确讨论彩色图像的亮度、色调等性质;会对彩色图像进行直方图均衡,并能正确解释均衡处理后的结果;能够对单色图像进行伪彩色处理、利用多波长图像进行假彩色合成、进行单色图像的彩色变换。

三、实验步骤

(1)彩色图像的分析

(2)彩色图像的直方图均衡

(3)假彩色处理

(4)伪彩色处理1:

灰度切片处理

(5)彩色变换(选做)

四、实验内容

f=imread('C:

\Users\Gateway\Desktop\ͼƬ\flower.tif');

figure;imshow(f);

fR=f(:

:

1);%获得红色分量

fG=f(:

:

2);%获得绿色分量

fB=f(:

:

3);%获得蓝色分量

figure;imshow(fR);

figure;imshow(fG);

figure;imshow(fB);

原图红色分量

绿色分量蓝色分量

%实现rgb图像转化为NTSC彩色空间的图像

f=imread('C:

\Users\Gateway\Desktop\ͼƬ\flower.tif');

figure;imshow(f);

yiq_image=rgb2ntsc(f);

fY=yiq_image(:

:

1);%图像亮度

fI=yiq_image(:

:

2);%图像色调

fQ=yiq_image(:

:

3);%图像饱和度

figure;imshow(fY);

figure;imshow(fI);

figur

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2