武汉理工大学专业综合课设《图像频率域处理程序设计》
- 格式:docx
- 大小:1.01 MB
- 文档页数:27
专业综合课程设计任务书 学生姓名:专业班级:电信 1005班 指导教师:李达工作单位: 信息工程学院 题 目:图像频率域处理程序设计 初始条件: (1) 提供实验室机房及其matlab软件; (2) 数字图像处理的基本理论学习。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体
要求): (1)掌握频率域处理的基本原理,利用matlab设计程序完成以下功能; (2)选择二幅大小不一的256级的灰度图像; (3)用频域方法计算它们的空间域的运算结果; (4)频域中需要利用周期延拓的方法计算空域中的相关结果,分析周期延拓的必要性; (5)对结果进行分析; (6)要求阅读相关参考文献不少于5篇; (7)根据课程设计有关规范,按时、独立完成课程设计说明书。
时间安排: (1) 布置课程设计任务,查阅资料,确定方案四天; (2) 进行编程设计一周; (3) 完成课程设计报告书三天;
指导教师签名: 年月日
系主任(或责任教师)签名: 年月日 武汉理工大学《专业综合》课程设计
1 目录 1 MATLAB简介 ........................................................................................................... 1 1.1MATLAB的简介 ............................................................................................. 1 1.2应用.................................................................................................................. 2 1.3Matlab的特点 .................................................................................................. 2 1.4 MATLAB的优势 ............................................................................................ 3 2 图像频域处理的概述................................................................................................ 6 3 二维傅里叶变换........................................................................................................ 7 3.1 二维连续傅里叶变换..................................................................................... 7 3.2 二维离散傅里叶变换..................................................................................... 8 3.3 二维离散傅里叶变换的性质......................................................................... 8 3.4 周期延拓在卷积中的作用............................................................................. 9 4 程序设计的基本步骤.............................................................................................. 14 4.1 检查图片格式............................................................................................... 14 4.2 用MATLAB转换成灰度图像 .................................................................... 16 4.3 程序设计....................................................................................................... 17 5 运行结果及结果分析.............................................................................................. 20 6 心得体会.................................................................................................................. 23 参考文献...................................................................................................................... 24
摘要 图像的频域处理是指根据一定的图像模型,对图像频谱进行不同程度修改的技术。二维正交变换是图像处理中常用的变换,其特点是变换结果的能量分布向低频成份方向集中,图像的边缘、线条在高频成份上得到反映,因此正交变换在图像处理中得到广泛运用。傅里叶作为一种典型的正交变换,在数学上有比较成熟和快速的处理方法。卷积特性是傅里叶变换性质之一,由于它在通信系统和信号处理中的重要地位--应用最广。在用频域方法进行卷积过程中尤其要注意傅里叶变换的周期性,注意周期延拓的重要作用,本次课设将对此作详细的介绍。 关键字:频域处理,二维傅里叶变换,卷积,周期延拓 1
1 MATLAB简介 1.1MATLAB的简介 MATLAB 是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 MATLAB是矩阵实验室(Matrix Laboratory)的简称,和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++ ,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。 武汉理工大学《专业综合》课程设计
2 1.2应用
MATLAB 产品族可以用来进行以下各种工作: ●数值分析 ●数值和符号计算 ●工程与科学绘图 ●控制系统的设计与仿真 ●数字图像处理 ●数字信号处理 ●通讯系统设计与仿真 ●财务与金融工程 MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。
1.3Matlab的特点 ●此高级语言可用于技术计算 ●此开发环境可对代码、文件和数据进行管理 ●交互式工具可以按迭代的方式探查、设计及求解问题 ●数学函数可用于线性代数、统计、傅立叶分析、筛选、优化以及数值积分等 ●二维和三维图形函数可用于可视化数据 ●各种工具可用于构建自定义的图形用户界面 ●各种函数可将基于MATLAB的算法与外部应用程序和语言(如 C、C++、Fortran、Java、COM 以及 Microsoft Excel)集成 武汉理工大学《专业综合》课程设计 3 1.4 MATLAB的优势
(1)友好的工作平台和编程环境 MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。 (2)简单易用的程序语言 Matlab一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。 (3)强大的科学计算机数据处理能力 MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、