实验指导书剖析.docx

上传人:b****8 文档编号:24018195 上传时间:2023-05-23 格式:DOCX 页数:15 大小:25.55KB
下载 相关 举报
实验指导书剖析.docx_第1页
第1页 / 共15页
实验指导书剖析.docx_第2页
第2页 / 共15页
实验指导书剖析.docx_第3页
第3页 / 共15页
实验指导书剖析.docx_第4页
第4页 / 共15页
实验指导书剖析.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

实验指导书剖析.docx

《实验指导书剖析.docx》由会员分享,可在线阅读,更多相关《实验指导书剖析.docx(15页珍藏版)》请在冰豆网上搜索。

实验指导书剖析.docx

实验指导书剖析

《数字信号处理》实验指导书

实验一、图像的傅立叶变换

实验二、图像增强

实验三、图像压缩

实验四、图像融合

实验一、图像的傅立叶变换

一、实验目的

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

2熟悉傅里叶变换的性质;

3热练掌握FFT酌方法反应用;

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

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

二、实验原理

1应用傅立叶变换进行图像处理

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

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

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

2傅立叶(Fourier)变换的定义

  对于二维信号,二维Fourier变换定义为:

  

  二维离散傅立叶变换为:

  

  图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参见参考书目,有关傅立叶变换的快速算法的程序不难找到。

实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。

3利用MATLAB软件实现数字图像傅立叶变换的程序:

I=imread(‘原图像名.gif’);%读入原图像文件

imshow(I);%显示原图像

fftI=fft2(I);%二维离散傅立叶变换

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

RR=real(sfftI);%取傅立叶变换的实部

II=imag(sfftI);%取傅立叶变换的虚部

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

A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225;

%归一化

figure;%设定窗口

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

三、实验步骤

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

2利用MatLab工具箱中的函数编制FFT频谱显示的函数;

3a).调入、显示“实验一”获得的图像;图像存储格式应为“.gif”;

b)对这三幅图像做FFT并利用自编的函数显示其频谱;

c)讨论不同的图像内容与FFT频谱之间的对应关系。

4记录和整理实验报告。

四、实验仪器

1计算机;

2MATLAB程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

五、实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

六、思考题

1.傅里叶变换有哪些重要的性质?

2.图像的二维频谱在显示和处理时应注意什么?

实验二、图像增强

一、实验目的

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

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

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

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

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

二、实验原理

图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。

其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。

图像增强技术主要有直方图修改处理、图像平滑化处理、图像尖锐化处理和彩色处理技术等。

本实验以直方图均衡化增强图像对比度的方法为主要内容,其他方法同学们可以在课后自行联系。

直方图是多种空间城处理技术的基础。

直方图操作能有效地用于图像增强。

除了提供有用的图像统计资料外,直方图固有的信息在其他图像处理应用中也是非常有用的,如图像压缩与分割。

直方图在软件中易于计算,也适用于商用硬件设备,因此,它们成为了实时图像处理的一个流行工具。

直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。

直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。

灰度直方图是图像预处理中涉及最广泛的基本概念之一。

图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。

直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。

直方图均衡化是通过灰度变换将一幅图像转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。

下面给出直方图均衡化增强图像对比度的MATLAB程序:

I=imread(‘原图像名.gif);%读入原图像

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

Imshow(I);%显示原图像

Title(‘原图像’);%给原图像加标题名

Figure;imshow(J);%对原图像进行屏幕控制;显示直方图均衡化后的图像

Title(‘直方图均衡化后的图像’);%给直方图均衡化后的图像加标题名

Figure;subplot(1,2,1);%对直方图均衡化后的图像进行屏幕控制;作一幅子图作为并排两幅图的第1幅图

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

Title(‘原图像直方图’);%给原图像直方图加标题名

Subplot(1,2,2);%作第2幅子图

Imhist(J,64);%将均衡化后图像的直方图显示为64级灰度

Title(‘均衡变换后的直方图’);%给均衡化后图像直方图加标题名

处理后的图像直方图分布更均匀了,图像在每个灰度级上都有像素点。

从处理前后的图像可以看出,许多在原始图像中看不清楚的细节在直方图均衡化处理后所得到的图像中都变得十分清晰。

三、实验步骤

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

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

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

4记录和整理实验报告

四、实验仪器

1计算机;

2MATLAB程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

五、实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

六、思考题

1.直方图是什么概念?

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

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

它的主要用途是什么?

 

实验三、图像压缩

一、实验目的

1.理解有损压缩和无损压缩的概念;

2.理解图像压缩的主要原则和目的; 

3.了解几种常用的图像压缩编码方式。

4.利用MATLAB程序进行图像压缩。

二、实验原理

1.图像压缩原理

图像压缩主要目的是为了节省存储空间,增加传输速度。

图像压缩的理想标准是信息丢失最少,压缩比例最大。

不损失图像质量的压缩称为无损压缩,无损压缩不可能达到很高的压缩比;损失图像质量的压缩称为有损压缩,高的压缩比是以牺牲图像质量为代价的。

压缩的实现方法是对图像重新进行编码,希望用更少的数据表示图像。

信息的冗余量有许多种,如空间冗余,时间冗余,结构冗余,知识冗余,视觉冗余等,数据压缩实质上是减少这些冗余量。

高效编码的主要方法是尽可能去除图像中的冗余成分,从而以最小的码元包含最大的图像信息。

编码压缩方法有许多种,从不同的角度出发有不同的分类方法,从信息论角度出发可分为两大类。

(1).冗余度压缩方法,也称无损压缩、信息保持编码或嫡编码。

具体说就是解码图像和压缩编码前的图像严格相同,没有失真,从数学上讲是一种可逆运算。

(2)信息量压缩方法,也称有损压缩、失真度编码或烟压缩编码。

也就是说解码图像和原始图像是有差别的,允许有一定的失真。

应用在多媒体中的图像压缩编码方法,从压缩编码算法原理上可以分为以下3类:

(1)无损压缩编码种类

哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempelzev编码。

(2)有损压缩编码种类

预测编码,DPCM,运动补偿;

频率域方法:

正交变换编码(如DCT),子带编码;

空间域方法:

统计分块编码;

模型方法:

分形编码,模型基编码;

基于重要性:

滤波,子采样,比特分配,向量量化;

(3)混合编码。

有JBIG,H261,JPEG,MPEG等技术标准。

本实验主要利用MATLAB程序进行离散余弦变换(DCT)压缩和行程编码(RunLengthEncoding,RLE)。

1)离散余弦变换(DCT)图像压缩原理

离散余弦变换DCT在图像压缩中具有广泛的应用,它是JPEG、MPEG等数据压缩标准的重要数学基础。

和相同图像质量的其他常用文件格式(如GIF(可交换的图像文件格式),TIFF(标签图像文件格式),PCX(图形文件格式))相比,JPEG是目前静态图像中压缩比最高的。

JPEG比其他几种压缩比要高得多,而图像质量都差不多(JPEG处理的图像只有真彩图和灰度图)。

正是由于其高压缩比,使得JPEG被广泛地应用于多媒体和网络程序中。

JPEG有几种模式,其中最常用的是基于DCT变换的顺序型模式,又称为基本系统(Baseline)。

用DCT压缩图像的过程为:

(1)首先将输入图像分解为8×8或16×16的块,然后对每个子块进行二维DCT

变换。

(2)将变换后得到的量化的DCT系数进行编码和传送,形成压缩后的图像格

式。

用DCT解压的过程为:

(1)对每个8×8或16×16块进行二维DCT反变换。

(2)将反变换的矩阵的块合成一个单一的图像。

余弦变换具有把高度相关数据能量集中的趋势,DCT变换后矩阵的能量集中在矩阵的左上角,右下的大多数的DCT系数值非常接近于0。

对于通常的图像来说,舍弃这些接近于0的DCT的系数值,并不会对重构图像的画面质量带来显著的下降。

所以,利用DCT变换进行图像压缩可以节约大量的存储空间。

压缩应该在最合理地近似原图像的情况下使用最少的系数。

使用系数的多少也决定了压缩比的大小。

在压缩过程的第2步中,可以合理地舍弃一些系数,从而得到压缩的目的。

在压缩过程的第2步,还可以采用RLE和Huffman编码来进一步压缩。

2)行程编码(RLE)原理:

  例如如下这幅的二值图像,

  

  如果采用行程编码可以按如下格式保存

  

  其中10和8表示图像的宽和高。

在这个小例子中行程编码并没有起到压缩图像的作用。

这是由于这个图的尺寸过小,当图像尺寸较大时行程编码还是不错的无损压缩方法。

对于灰度图像和二值图像,用行程编码—般都有很高的压缩率。

行程编码方法实现起来很容易,对于具有长重复值的串的压缩编码很有效,例如:

对于有大面积的阴影或颜色相同的图像,使用这种方法压缩效果很好。

很多位图文件格式都采用行程编码,如TIFF,PCX,GEM,BMP等。

3.图像压缩编码的MATLAB程序语句

1)利用DCT变换进行图像压缩的MATLAB程序

RGB=imread('原图像名.tif');

I=rgb2gray(RGB);

J=dct2(I);

imshow(log(abs(J)),[]),colormap(jet(64)),colorbar

J(abs(J)<10)=0;

K=idct2(J);

figure,imshow(I)

figure,imshow(K,[0255])

2)利用离散余弦变换进行JPEG图像压缩

I=imread(‘原图像名.tif’);%读入原图像;

I=im2double(I);%将原图像转为双精度数据类型;

T=dctmtx(8);%产生二维DCT变换矩阵

B=blkproc(I,[88],’P1*x*P2’,T,T’);%计算二维DCT,矩阵T及其转置T’是DCT函数P1*x*P2的参数

Mask=[11110000

11100000

11000000

10000000

00000000

00000000

00000000

00000000];%二值掩膜,用来压缩DCT系数,只留下DCT系数中左上角的10个

B2=blkproc(B,[88],’P1.*x.’,mask);%只保留DCT变换的10个系数

I2=blkproc(B2,[8,8],’P1*x*P2’,T’,T);%逆DCT,重构图像

Subplot(1,2,1);

Imshow(I);title(‘原图像’);%显示原图像

Subplot(1,2,2);

Imshow(I2);title(‘压缩图像’);%显示压缩后的图像。

对比原始图像和压缩后的图像,虽然舍弃了85%的DCT系数,但图像仍然清晰(当然有一些质量损失)

3)利用行程编码(RLE)进行图像压缩

I=checkerboard(10,2);%调入原图像

[mn]=size(I);

J=[];

fori=1:

m

value=I(i,1);

num=1;

forj=2:

n

ifI(i,j)==value

num=num+1;

else

J=[Jnumvalue];

num=1;

value=I(i,j);

end

end

I=[Jnumvalue00];%添加的行判断位00

end

disp(‘原图像大小:

’)

whos(‘I’);

disp(‘压缩图像大小:

’)

whos(‘J’);

disp(‘图像的压缩比:

’)

disp(m*n/length(J))

 

三、实验步骤

1打开计算机,启动MATLAB程序;

2调入“实验一”中获取的数字图像,并进行数据的行程(RLE)编码压缩处理;

3将原图像在Photoshop软件中打开,分别以不同的位图文件格式进行“另保存”,比较它们的数据量。

4记录和整理实验报告

四、实验仪器

1计算机;

2MATLAB、Photoshop等程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

五、实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

六、思考题

1.图像中哪些信息是主要的,哪些信息是次要的?

  2.简述离散余弦变换(DCT)和行程编码(RLE)的原理。

  

实验四、图像融合

一、实验目的

1熟悉图像融合的意义和用途,理解图像融合的原理;

2掌握图像融合的一般方法;

3掌握运用MATLAB软件进行图像融合的操作。

二、实验原理

图像融合的目的把来自多传感器的数据互补信息合并成一幅新的图像,以改善图像的质量。

图像融合最简单的理解就是两个(或多个)图像间的相加运算。

这一技术广泛应用于多频谱图像理解和医学图像处理等领域。

主要分为空域和频域相加。

本实验主要应用MATLAB软件进行两幅图像的融合。

方法有:

1图像直接融合;

2图像傅立叶变换融合;

3图像小波变换融合。

图像融合的MATLAB程序如下:

1)调入、显示两幅图像的程序语句

loadtartan;

X1=X;map1=map;

Loadsinsin;

X2=X;map2=map;%打开图像

Subplot(121)

Image(X1),colormap(map1);

Title(‘图像map1’)

Subplot(122)

Image(X2),colormap(map2);

Title(‘图像map2’)%显示两幅图像

2)两幅图像直接融合的程序语句

figure,subplot(131)

image((X1+X2)/2),colormap(map2);%在空域内直接融合

title(‘两图像直接相加融合’)%显示融合后的图像,并命名为“两图像直接相加融合”

3)两幅图像傅立叶变换融合的程序语句

F1=fft2(X1);

F2=fft2(X2);%分别计算两幅图像的快速傅立叶变换

X=abs(ifft2(F1+F2)/2);%两幅图像在频域内相加后的傅立叶逆变换

Subplot(132)

Image(X),colormap(map2);%显示融合后的图像

Title(‘两幅图像傅立叶变换融合’)%给融合后的图像命名并显示在图上

4)两幅图像小波变换融合的程序语句

[C1,L1]=wavedec2(X1,2,‘sym4’);

[C2,L2]=wavedec2(X2,2,‘sym4’);%分别对两幅原图像进行小波分解

C=C1+C2;%对分解系数进行融合

X=waverec2(C,L1,‘sym4’);%对融合后的信号进行图像重构

Subplot(133)

Image(X/2),colormap(map2);%显示经过小波变换融合后的图像

Title(‘两图像小波变换融合’)%给融合后的图像命名并显示在图上

三、实验步骤

1打开计算机,启动MATLAB程序;

2调入“实验一”中获取的两幅数字图像,并进行三种方法的图像融合;

3显示并保存图像融合的结果。

4记录和整理实验报告。

四、实验仪器

1计算机;

2MATLAB程序;

3移动式存储器(软盘、U盘等);

4记录用的笔、纸。

五、实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

六、思考题

1简述图像小波变换的实现过程。

2小波变换的分解层数对融合图像的光谱质量和空间质量有什么影响?

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

当前位置:首页 > 高等教育 > 文学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1