基于matlab的信号处理初步

  • 格式:doc
  • 大小:3.24 MB
  • 文档页数:45

下载文档原格式

  / 45
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章绪论

1.1选题的目的和意义

在MATLAB 下, 矩阵的运算变得异常的容易。1984 年Moler 博士推出了该软件的正式版本, 在后来的版本中又陆续增添了控制系统、系统辨识、信号处理及通信等十余个工具箱, 使MATLAB 广泛的应用于自动控制、图像信号处理、生物医学工程、语音处理、雷达工程、信号分析、优化设计等领域。它具有以下的功能和特点∶高效的数值计算及符号计算功能, 能使我们从繁杂的数学运算分析中解脱出来; 完备的图形处理功能, 实现了计算结果和编程的可视化; 功能丰富的应用工具箱, 提供了大量方便实用的处理工具; 友好的界面及接近数学表达式的自然化语言, 便于学习和掌握。

随着人类社会的进步和科学技术的发展,人们对信息处理和信息及交流的要求越来越高。人们传递信息的主要没解释语音和图像。在接受信息中,听觉占20%,视觉占60%,其它如味觉,嗅觉,触觉总的加起来不超过20%,图像信息处理使人们视觉延续的重要手段。人们眼睛只能看到波长380到780nm的可见光部分,而迄今为止人们发现可成像的射线已有很多种,他们扩大了人们认识客观世界的能力。

做该课题的意义在于使设计者更好的了解和熟悉该软件,以便今后更好的应用该软件做一些图像以及语音处理。

1.2国外研究综述

在MATLAB的信号处理初步中应用最多的是数字图像信号处理,数字图像处理是一个跨科学的前沿科技领域,在工程学,计算机学,信息学,统计学,物理,化学,生物医学,地址,海洋,气象,农业,冶金等许多科学中的应用取得了巨大的成功和显著的经济效益。

从20世纪60年代起,随着电子计算机技术的进步,数字图像处理技术得到了飞跃发展,数字信号处理技术(DSP)技术通常是指利用采集,滤波,检测,均衡,变换,调制,压缩,去噪,估计等处理,已得到符合人们需要的信号形式。图像信号的数字处理是指将图像作为图像信号的数学处理技术,按照人们通常的习惯,也成为数字图像处理技术,最常见的是使用计算机对图像进行处理,他是在以计算机为中心的包括各种输入,输出,储存及显示设备的数学图像处理系统上进行的。

现代公安系统中经常使用的指纹对比技术就是MATLAB的一种应用,以及太空成像技术,脸部识别技术等等。我国在2004年针对利用Matlab/Simulink对

复杂系统仿真时,如何高效实现从系统数学模型到仿真模块搭建的转化问题,提出利用面向对象方法实现系统框架构建,在具体模块搭建时将充分利用Matlab/Simulink提供的各种资源与自己开发有机结合。利用上述思想建立了某型防空导弹的飞行过程动态仿真系统,解决了系统搭建中遇到的复杂控制关系实现、加快仿真速度及便于调试等问题。

1.3本课题研究工作与结构安排

本文主要介绍图像和语音预处理技术中几种常用的处理方法,比如图像增强、图像旋转和语音信号滤波。

具体容有:

全文共分6章,结构安排如下:

第1章绪论,介绍了课题研究目的及意义和国外研究现状。

第2章介绍了图像的几种简单处理方法,如图像截图、旋转、噪声等。

第3章介绍了语音信号的提取和调整,以及语音信号处理中的滤波。

第4章介绍了MATLAB在电力电子中的应用,主要涉及在单相桥式全控整流电路中的仿真。

第5章简单介绍MATLAB在医学和导航领域的应用。

第6章对本论文简单的介绍和对MATLAB发展的一些展望。

第二章图像信号处理初步

2.1 图像信号处理框架与流程

学习MATLAB程序设计,利用MATLAB图像处理工具箱,设计和实现自己的Photoshop 。要求:按照软件工程方法,根据需求进行程序的功能分析和界面设计,给出设计详细说明。然后按照自己拟定的功能要求进行程序设计和调试。

以下几点是程序必须实现的功能。

①图像的读取和保存。

②设计图形用户界面,让用户能够对图像进行任意的亮度和对比度变化调整,显示和对比变换前后的图像。

③设计图形用户界面,让用户能够用鼠标选取图像感兴趣区域,显示和保存该选择区域。

④编写程序通过最近邻插值和双线性插值等算法将用户所选取的图像区域进行放大和缩小整数倍的操作,并保存,比较几种插值的效果。

⑤图像直方图统计和直方图均衡,要求显示直方图统计,比较直方图均衡后的效果。

⑥能对图像加入各种噪声,并通过几种滤波算法实现去噪并显示结果。比较去噪效果。

同时在调节亮度时,虽然可以同对话框的形式输入调节的比例系数,但是这样效果不好了,不容易调节,因此这里考虑用滚动条来调节。

2.2 图像信号处理具体过程

2.2.1图像信号的编辑

为了让使用者更方便的使用,所以在设计的时候,通过对话框的形式来选择文件,选择uigetfile函数来实现,uigetfile函数显示一个打开文件对话框,该对话框自动列出当前路径下的目录和文件,由于这个GUI程序的操作对象是图像文件,所以设置这里的缺省后缀名为“.bmp”。

Uigetfile函数的调用格式为[name,path]=yigetfile(…), 在按下对话框中的执行按钮“打开”后,返回选择的文件名和路径,分别保存到“name”和“path”中。如果按下取消按钮或是发生错误,则返回值是0。根据返回值的情况,如果是0,则弹出提示错误的对话框,否则,通过imread函数读出图像数据,把图像数据赋值给全局变量handles.img。

同样也通过对话框的形式来保存图像数据,通过uigetfile函数选择文件名和路径,用getimage(gca)取出坐标2变换后的图像数据保存到变量i,最后用imwrite函数,把数据i存到指定的文件。

退出比较简单,程序如下所示:

clc;

close all;

close(gcf);

图像编辑

1)、灰度转换

由于RGB图像是三维图像,所以图像数据是一个三维数组,为了显示灰度图像,把三维图像降为二维,可以只取其中的二维数据,实现方法程序为:y=(handles.img(:,:,1)); %当然也可以选择(:,:,2) 或(:,:,3)••••

imshow(y);

但是这样的话,根据程序所选的不同,图像数据也不同,显示也就不一样。

另一种方法就是,运用rgb2gray函数实现彩色图像到灰度图像的转换。程序为:

y=rgb2gray(handles.img); •••••

imshow(y);

这个程序只能用于RGB图像转换灰度图像,当原始图像本来就是灰度图像时,运行该程序时就会出错,但是使用者在使用时有时并不知道这些,为了使该程序更加完善,应该在使用者原先图像时灰度图像时使用该功能时,应该要显示提示类信息。所以在开始时应该要有一个RGB图像或是灰度图像的判断过程。完整的程序如下:

if isrgb(handles.img)

y=rgb2gray(handles.img); •••••

imshow(y);

else msgbox('这已经是灰度图像','转换失败');

end

如果原图是RGB,执行该操作的结果如下图:

图 2.1 RGB图像转换灰度图像

2)、亮度调节