1、摘 要信号系统设计包括声音信号系统设计和图像信号系统设计两部分,掌握声音信号和图像信号处理是学好信息工程专业的基础。此次课程设计做出了声音信号处理系统和图像处理系统,这两个系统主要能实现以下功能:声音信号处理系统能够实现声音信号的采集,播放,快放,慢放,加噪以及滤波去噪;主要用到的函数有wavrecord,wavread,wavplay,filter等(2)图像处理系统能够实现图像的读取,显示,边缘提取和DCT分析;用imshow进行图形的读取显示,Sobel算子,Robert算子,Prewitt算子等对图像进行边缘提取。关键字:声音采集 加噪 滤波 边缘提取算法 DCT DCT系数分析 目
2、录第1章 绪 论11.1 引言11.2 MATLAB软件介绍1第2章 信号处理基础32.1 声音信号处理基础32.1.1 声音信号的采集32.1.2 滤波器设计32.2 图像信号处理基础3 2.2.1 图像的读取3 2.2.2 图像的显示4 2.2.3 图像的边缘提取4 2.2.4 DCT5第3章 信号处理系统的软件开发63.1 语音信号处理系统6 3.1.1模块设计6 3.1.2系统界面设计63.2 图像处理系统9 3.2.1 模块设计9 3.2.2 系统界面设计10第4章 总结14I石家庄铁道大学课程设计第1章 绪 论1.1 引言语音是语言的声学表现,是人类交流信息最自然、最有效、最方便的
3、手段,也是人类进行思维的一种依托。人类已开始进入了信息化时代,用现代手段研究语音处理技术,能更加有效地生成、传输、存储、获取和应用语音信息,这对于促进社会的发展具有重要的意义。语音通信会不可避免地受到来自通信设备内部电噪声和周围环境的干扰,这些干扰使得收听者收到的语音不是纯净的原始语音信号,而是带噪语音信号。那么如何对带噪语音信号进行去噪就具有了很重要的研究意义。图像是一种视觉上的表现,能够给人最直观的感觉。通过MATLAB来研究图像信号的读取,边缘化,DCT变换和DCT分块变换等,对于信息工程专业的学生来说这能够在进入专业课学习前对专业知识有一个感性的认识。而且,对图像的复杂处理也是专业的一
4、个研究方向。1.2 MATLAB软件介绍 MATLAB是矩阵实验室(Matrix Laboratory)的简称,是美国MathWorks公司出品的商业数学软件。20世纪70年代,美国新墨西哥大学计算机科学系主任Cleve Moler为了减轻学生编程的负担,用FORTRAN编写了最早的MATLAB。1984年由Little、Moler、Steve Bangert合作成立了的MathWorks公司正式把MATLAB推向市场。到20世纪90年代,MATLAB已成为国际控制界的标准计算软件。MATLAB用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和
5、Simulink两大部分。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、
6、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分 相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。第2章 信号处理基础2.1 声音信号处理基础2.1.1 声音信号的
7、采集一般来说,人的听觉能感知的声音频率范围为20200000Hz,在这一频率范围内可感知的声音强度为0140dB,其中人儿比较敏感的区域在504000Hz。因此,采集子系统的硬件参数可根据要分析的语音信号的频率和强度来确定。声音信号的采集可以使用PC机麦克风和声卡来完成。声卡具有足够高的采样频率和量化精度,采集的信号能达到要求。2.1.2 滤波器设计对于加噪后的声音信号的去噪处理,就是要使用滤波器去信号进行滤波去噪。滤波器种类很多,一般分为模拟滤波和数字滤波器。从滤波器的实现方法上可分为IIR滤波器(无限冲击反应滤波器)和FIR滤波器(有限冲击反应滤波器)。从滤波器的功能上可分为,低通滤波器、
8、高通滤波器、带通滤波器和带阻滤波器。2.2图像信号处理基础 MATLAB支持五种图像类型,即索引图像、灰度图像、二值图像、RGB图像和多帧图像阵列;支持BMP、GIF、HDF、JPEG、PCX、PNG、TIFF、XWD、CUR、ICO等图像文件格式的读,写和显示。MATLAB对图像的处理功能主要集中在它的图像处理工具箱(Image Processing Toolbox)中。图像处理工具箱是由一系列支持图像处理操作的函数组成,可以进行诸如几何操作、线性滤波和滤波器设计、图像变换、图像分析与图像增强、二值图像操作以及形态学处理等图像处理操作。2.2.1 图像的读取MATLAB中从图像文件中读取数据
9、用函数imread(),这个函数的作用就是将图像文件的数据读入矩阵中。2.2.2 图像的显示MATLAB中图像显示的函数有imshow(),colorbar()和subimage()。在此次课程设计中使用的是imshow()函数。2.2.3 图像的边缘提取图像的边缘能勾画出目标物体,是观察者一目了然;边缘蕴含丰富的内在信息,使图像识别中重要的图形特征之一。图像边缘有方向和幅度两个特性。常用的图像边缘提取算子如下:(1)Robert算子01-10 Robert算子是一种利用局部查分算子寻找边缘的算子,如图2-1,。该算子对具有陡峭的低噪声的图像效果较好。100-1 图2-1 Robert算子(2
10、)Sobel算子-101-202-101121000-1-2-1 图2-2 Sobel算子(3) Prewitt算子111000-1-1-1-101-101-101 图2-3 Prewitt算子2.2.4 DCT离散余弦变换(Discrete Cosine Transform,DCT)是数学图像处理中的一种重要处理手段,是主要的正交变换之一,被广泛地应用于突袭那个的压缩编码算法中。已有的各种成熟的压缩标准JPEG、MPEG、H.26X以及HDTV等,都无一例外的采用基于DCT/IDCT的压缩标准。DCT将图像信号从空间域变换到DCT变换域,保持原始信号的熵和能量不变,却使得DCT变换域系数之间
11、的相关性减弱,然后再对DCT变换系数进行量化和编码,以达到压缩的目的。MATLAB提供的进行图像DCT的函数共三个:dct2()、idct2()和dctmtx().(1) dct2()函数功能:二维DCT变换格式:B=dct2() B=dct2(A,m,n) B=dct2(A,m,n)(2) idct2()函数功能:二维DCT变换格式:B=idct2(A) B=idct2(A,m,n) B=idct2(A,m,n)(3) dctmtx()函数功能:计算DCT变换矩阵格式:D=dctmtx(n) 第3章 信号处理系统的软件开发3.1语音信号处理系统3.1.1模块设计 对声音信号处理系统进行分析,
12、得出如图3-1的系统模块图。语音信号处理系统 滤 波 加 噪 播 放 录 音慢放快放播放 产生波形图 3-1声音信号处理系统模块图3.1.2系统界面模块 系统界面如图3-2,能够实现声音信号的采集,播放,快放,慢放,加噪和滤波等功能。 图3-2 语音信号处理系统3.1.2.1录音功能 图3-3录音界面3.1.2.2 按原速播放 图3-4 按原速播放的波形3.1.2.3 快放 图3-5 快放的波形3.1.2.4 加噪 图3-6原始波形与加噪后的波形3.1.2.5 滤波 图3-7 滤波前和滤波后的波形3.2图形处理系统3.2.1 模块设计对图像信号处理系统进行分析,得出如图4-1的系统模块图。图像
13、处理系统 DCT边缘提取读取图像 DCT变换DCT系数统计分析 分块DCT变换 Prewitt算子 Sobel算子 Robert算子 图3-8 图像处理系统模块设计3.2.2 界面设计图像处理系统的界面如图4-2所示。 图3-9 图像处理系统界面设计3.2.2.1 读入图像读入图像使用的是imread函数。图3-10 读取图像3.2.2.2 对图像进行边缘提取分别使用了Soble算子、Roberts算子和Prewitt算子对图像进行边缘提取。 图 3-11 用三种算子对图像进行边缘提取3.2.2.3 DCT变换使用dct2函数对图像进行DCT变换。图3-12 DCT变换3.2.2.4 分块DC
14、T变换对图像进行20*20的DCT分块。图 3-13 分块DCT分析3.2.2.5 DCT系数统计分析图 3-14 图像DCT分解的系数分析第4章 总结通过着为期半个月的信号处理课程设计,我对信号处理的基础理论知识有了一定的熟悉和掌握,并且在老师和同学的帮助下开发出了声音信号处理系统和图像处理系统。在刚开始的时候,由于我没有选修MATLAB这门课,十分担心自己能不能跟上同学们的步伐。还是要感谢老师,在刚开始的时候给了我们足够的时间来学习理论知识,并且给了我们不少的教学资料,这些资料对我们后来的系统开发有很大帮助。给我感触最大的就是这份实验报告的书写,老师的要求很严格,对我们的要求很高。让我们严格按照毕业论文的格式来书写,开始可能会很不理解,但是这真的是对我们有好处的,可以帮助我们养成良好的习惯和严谨的态度。正所谓优秀是一种习惯,而这种优秀的习惯正是在严师的督促下一点点形成的。通过这次课程设计,我不仅学到了知识,而且更重要的是培养了一种自学能力,我想这才是小学期的真正意义所在。14