MATLAB GUI程序设计/科学与工程计算技术丛书pdf下载

MATLAB GUI程序设计/科学与工程计算技术丛书百度网盘pdf下载

作者:
简介:MATLAB GUI程序设计/科学与工程计算技术丛书
出版社:
出版时间:2017-12
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

产品特色

编辑推荐

  

(1) 资深作者编著,图书质量更有保证:一线资深工程师执笔,系统归纳和总结了智能算法的实战经验。
  (2) 配套源码,便于读者动手实践:理论必须联系实践,本书提供源代码,方便教师及读者学习使用。
  (3) 内含丰富实例,利于读者二次开发:书中提供了十几个优化算法的典型实例,读者可以据此二次开发。
  配套学习资源下载地址为清华大学出版社网站本书页面。系列畅销图书如下:
  MATLAB 编程指南——计算、编程、仿真、算法及应用
  MATLAB/Simulink系统仿真
  MATLAB GUI程序设计
  MATLAB智能算法
  MATLAB数学建模
  MATLAB优化算法
  MATLAB信号处理
  MATLAB图像处理
  MATLAB优化算法
  
  

内容简介

  全书的编写基于当前版本的MATLAB环境,书中由浅入深地全面讲解了MATLAB在GUI设计方面应用的知识。本书按逻辑编排,重点给出了MATLAB在GUI设计各个环节中的实现方法,在讲解各个知识点时列举了丰富的实例,使得本书具有很强的实用性; 内容完整且每章相对独立,是一本具有很高使用价值的MATLAB参考书。
  本书分为三个部分共13章。第一部分为MATLAB基础,涵盖的内容有MATLAB概述、GUI设计预备知识、二维和三维绘图、图像文件的显示以及文件读取I/O操作; 第二部分为基于GUI常见设计技术,涵盖的内容有句柄图形对象、GUI控件及属性、uimenu菜单及设计、MATLAB GUI基础设计等; 第三部分为基于MATLAB的高级GUI设计技术及应用,涵盖的内容有MATLAB与Excel文件的数据交换、基于GUI设计的学生成绩管理系统、基于GUI的离散控制系统设计、GUI实现滤波器设计、基于GUI的BP神经网络设计及GUI在图像处理方面的应用。
  本书以实用为目标,深入浅出、实例引导、内容翔实,适合作为理工科高等院校研究生、本科生教学用书,也可作为相关专业科研工程技术人员的参考用书。

作者简介

付文利 毕业于哈尔滨工业大学信息技术专业,研究生学历。现就职于烽火通信集团,担任系统工程师。精通MATLAB科学计算、Simulink系统仿真、Visual C++ 程序设计等,在国内外期刊发表论文多篇。在工作实践中长期使用MATLAB /Simulink,对其编程与应用有深刻的理解。

目录



目录


第一部分MATLAB基础

第1章MATLAB概述

1.1MATLAB软件介绍

1.1.1MATLAB语言

1.1.2MATLAB绘图功能

1.1.3MATLAB数学函数库

1.1.4MATLAB应用程序接口

1.2MATLAB工作环境

1.2.1命令行窗口

1.2.2帮助系统窗口

1.2.3工作空间窗口

1.2.4M文件编辑窗口

1.2.5图形窗口

1.2.6当前文件夹

1.2.7搜索路径

1.3MATLAB中的函数类型

1.3.1匿名函数

1.3.2M文件主函数

1.3.3子函数

1.3.4嵌套函数

1.3.5私有函数

1.3.6重载函数

1.4查询帮助命令

1.4.1help命令

1.4.2lookfor命令

1.4.3模糊寻找

1.5MATLAB程序流程控制结构

1.5.1顺序结构

1.5.2选择结构

1.5.3循环结构

1.5.4程序流程控制语句及其他常用命令

本章小结


第2章GUI设计预备知识

2.1数组与矩阵

2.1.1数组的创建与操作

2.1.2常见的数组运算

2.1.3矩阵的表示

2.1.4寻访矩阵

2.1.5矩阵的拼接

2.1.6矩阵的运算

2.1.7矩阵的乘方

2.1.8矩阵的行列式

2.2MATLAB基本数值类型

2.2.1整数类型数据运算

2.2.2变量与常量

2.2.3数值

2.2.4表达式

2.2.5空数组

2.2.6逻辑运算

2.2.7关系运算

2.3字符串

2.3.1创建字符串

2.3.2基本字符串操作

2.3.3字符串操作函数

2.4元胞数组

2.4.1元胞数组的创建

2.4.2元胞数组的基本操作

2.4.3元胞数组的操作函数

2.5结构

2.5.1结构的创建

2.5.2结构的基本操作

2.5.3结构操作函数

本章小结


第3章二维绘图

3.1基本的二维绘图

3.2figure函数与subplot函数

3.3二维图形的标注与修饰

3.4特殊二维图形的绘制

本章小结


第4章三维图形绘制

4.1创建三维图形

4.1.1三维图形概述

4.1.2三维曲线图

4.1.3三维曲面图

4.2特殊三维图形

4.2.1三维柱状图

4.2.2散点图

4.2.3火柴杆图

4.2.4等高线图

4.2.5瀑布图

4.2.6简易绘图函数

4.3三维图形显示与控制

4.3.1颜色控制

4.3.2坐标控制

4.3.3视角控制

4.4绘制动画图形

4.5四维图形可视化

4.5.1用颜色描述第四维

4.5.2其他函数

本章小结


第5章图像处理的基础知识

5.1数字图像概述

5.1.1什么是数字图像

5.1.2图像的分类

5.2图像文件的读写

5.2.1图像文件的查询

5.2.2图像文件的读取

5.2.3图像文件的存储

5.3图像处理的基本函数

5.3.1imshow函数

5.3.2image函数和imagesc函数

5.3.3colorbar函数

5.3.4montage函数

5.3.5warp函数

5.3.6subimage函数

5.3.7zoom命令

5.3.8impixel函数

5.4图像类型的转换

5.4.1通过抖动算法转换图像类型的函数dither

5.4.2将灰度图像转换为索引图像的函数gray2ind

5.4.3将灰度图像转换为索引图像的函数grayslice

5.4.4将其他图像转换为二值图像的函数im2bw

5.4.5将索引图像转换为灰度图像的函数ind2gray

5.4.6将索引图像转换为RGB图像的函数ind2rgb

5.4.7将数据矩阵转换为灰度图像的函数mat2gray

5.4.8将RGB图像转换为灰度图像的函数rgb2gray

5.4.9将RGB图像转换为索引图像的函数rgb2ind

5.5文件读取I/O操作

5.5.1数据基本操作

5.5.2底层文件基本I/O操作

5.6文件的读写

5.6.1二进制文件的读写

5.6.2记事本数据的读写

5.6.3电子表格数据的读写

5.6.4声音文件的读写

5.6.5视频文件的读写

本章小结


第二部分基于GUI的常见设计技术


第6章句柄图形对象

6.1图形对象及其句柄

6.1.1属性的设置与查询

6.1.2对象的默认属性值

6.1.3对象的属性查找

6.1.4图形对象的复制

6.1.5图形对象的删除

6.2图形对象属性

6.2.1根对象

6.2.2图形窗口对象

6.2.3坐标轴对象

6.2.4曲线对象

6.2.5文字对象

6.2.6曲面对象

6.2.7块对象

6.2.8图像对象

6.2.9方对象

6.2.10光对象

本章小结


第7章GUI控件及uimenu菜单

7.1GUIDE界面

7.2控件及属性

7.2.1按钮

7.2.2滑块

7.2.3单选按钮

7.2.4复选框

7.2.5静态文本

7.2.6可编辑文本框

7.2.7弹出式菜单

7.2.8列表框

7.2.9切换按钮

7.2.10面板

7.2.11按钮组

7.2.12轴

7.3控件对象示例

7.4基于MATLAB的日历设计

7.5uimenu菜单及设计

7.5.1建立用户菜单

7.5.2菜单对象常用属性

7.5.3上下文菜单的建立

本章小结


第8章MATLAB GUI基础设计

8.1GUI设计原则和步骤

8.2GUI的设计工具

8.2.1布局编辑器

8.2.2对象浏览器

8.2.3属性查看器

8.2.4对齐对象

8.2.5Tab顺序编辑器

8.2.6菜单编辑器

8.2.7M文件编辑器

8.3对话框设计

8.3.1Windows公共对话框

8.3.2MATLAB专用对话框

8.4回调函数

8.5GUI界面设计实例

8.5.1GUI界面程序设计实例

8.5.2GUI实现图像处理实例

8.6GUI的数据传递方式

8.6.1全局变量

8.6.2运用GUI本身的varargin{}和varargout{}传递参数

8.6.3UserData数据与handles数据

8.6.4Application数据

8.6.5跨空间计算evalin和赋值assignin

8.6.6将数据保存到文件,需要时读取

本章小结


第三部分高级GUI设计技术及应用


第9章MATLAB与Excel文件的数据交换

9.1Excel 文件数据导入MATLAB工作空间

9.2调用 xlsfinfo 函数获取文件信息

9.3调用 xlsread 函数读取数据

9.4调用xlswrite 函数把数据写入 Excel 文件

9.5基于GUI的学生成绩管理系统设计

9.5.1系统的设计与完成

9.5.2导入成绩

9.5.3统计数据

9.5.4绘制该课程成绩曲线图

9.5.5系统应用演示

本章小结


第10章基于GUI的离散控制系统设计

10.1控制系统工具箱介绍

10.2控制系统理论基础

10.3离散控制系统设计与完成

10.3.1绘制Bode图界面

10.3.2绘制Nyquist曲线

10.3.3绘制Nichols曲线

10.3.4绘制根轨迹

10.3.5离散系统稳定性判断

10.3.6阶跃响应

10.3.7脉冲响应

本章小结


第11章GUI实现滤波器设计

11.1IIR数字滤波器

11.1.1IIR滤波器设计思想

11.1.2IIR滤波器设计编程实现

11.2FIR数字滤波器

11.2.1FIR滤波器设计思想

11.2.2FIR滤波器设计编程实现

11.3基于GUI的数字滤波器设计与实现

11.3.1“滤波器设计”界面设计

11.3.2“滤波器设计”回调函数

11.3.3AutoChoose.m程序的编写

11.3.4运行和结果显示

本章小结


第12章智能算法的GUI设计

12.1神经网络结构及BP神经网络

12.1.1神经元与网络结构

12.1.2生物神经元

12.1.3人工神经元

12.1.4BP神经网络及其原理

12.1.5基于MATLAB的BP神经网络工具箱函数

12.1.6BP神经网络在函数逼近中的应用

12.1.7GUI实现BP神经网络的设计

12.2遗传算法GUI设计

12.3蚁群算法GUI设计

本章小结


第13章GUI设计在图像处理方面的应用

13.1基于GUI的图像压缩处理技术

13.2GUI在图像处理中的应用

13.2.1图像几何运算的GUI设计

13.2.2图像增强的GUI设计

13.2.3图像分割的GUI设计

13.2.4图像边缘检测的GUI设计

13.3GUI菜单选项设计实现图像的处理

13.3.1文件操作菜单项

13.3.2图像编辑菜单项

13.3.3图像分析菜单项

13.3.4图像调整菜单项

13.3.5图像平滑菜单项

13.3.6图像锐化菜单项

13.3.7图像高级处理菜单项

13.3.8小波变换菜单项

本章小结


参考文献



精彩书摘


数字图像处理是一门新兴技术,随着计算机硬件的发展,数字图像的实时处理已经成为可能。下面介绍MATLAB中图像显示函数及其功能,并介绍基本的图像处理函数、图像类型转换等。
学习目标:
(1) 理解图像文件的读写与显示;
(2) 掌握图像类型转换的基本原理与实现步骤。
5.1数字图像概述
5.1.1什么是数字图像


图像有多种含义,其中最常见的定义是指各种图形和影像的总称。在日常的学习或统计中,图像都是必不可少的组成部分,它为人类构建了一个形象的思维模式,有助于学习和思考问题。
随着数字技术的不断发展和应用,现实生活中的许多信息都可以用数字形式的数据进行处理和存储,数字图像就是以数字形式进行存储和处理的图像。利用计算机可以对它进行常见图像处理技术所不能实现的加工处理,还可以将它在网上传输,也可以多次复制而不失真。
数字图像是指一个被采样和量化后的二维函数(该二维函数由光学方法产生),采用等距矩形网格采样,对幅度进行等间隔量化。一幅是指图像是一个被量化的采样数值的二维矩阵。
5.1.2图像的分类
在计算机中,按照颜色和灰度的多少可以将图像分为二值图像、灰度图像、索引图像和真彩色RGB图像四种基本类型。目前,大多数图像处理软件都支持这四种类型的图像。
1. 二值图像
一幅二值图像的二维矩阵仅由0、1两个值构成,0代表黑色,1代表白色。由于每一像素(矩阵中每一元素)取值仅有0、1两种可能,所以计算机中二值图像的数据类型通常为1个二进制位。二值图像通常用于文字、线条图的扫描识别(OCR)和掩膜图像的存储,如图51所示。
2. 灰度图像
灰度图像矩阵元素的取值范围通常为[0,255]。因此其数据类型一般为8位无符号整型(int8),这就是人们经常提到的256灰度图像。0表示纯黑色,255表示纯白色,中间的数字从小到大表示由黑到白的过渡色。在某些软件中,灰度图像也可以用双精度数据类型(double)表示,像素的值域为[0,1],0代表黑色,1代表白色,0到1之间的小数表示不同的灰度等级。二值图像可以看成是灰度图像的一个特例,如图52所示。

前言/序言


前言


MATLAB是美国MathWorks公司的产品,是矩阵实验室(Matrix Laboratory)的简称,用于算法开发、数据可视化、数据分析及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB的功能有进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通信、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算相同问题要比用C和Fortran等语言简洁得多,并且MathWorks也吸收了Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C、Fortran、C++和Java的支持。用户可以直接调用MATLAB函数库,也可以将自己编写的实用程序导入到MATLAB函数库中方便以后调用。
MATLAB可以创建图形用户界面(graphical user interface,GUI),它是用户和计算机之间交流的工具。MATLAB 将所有GUI支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强,而且具有强大的绘图功能,使MATLAB开发的程序可以为越来越多的用户所接受。
1. 本书特点
由浅入深,循序渐进: 本书以初中级读者为对象,先让读者了解其各项功能,然后进一步详细地介绍MATLAB在GUI程序设计方面的应用。
步骤详尽,内容新颖: 本书结合作者多年MATLAB使用经验与GUI程序设计实际应用案例,对MATLAB软件的使用方法与技巧进行详细的讲解,使读者在阅读时能够快速掌握书中所讲内容。
内容翔实,例程丰富: 学习实际工程应用案例的具体操作是掌握MATLAB最好的方式。本书有详细的例子,每个例子都经过精挑细选,针对性很强,透彻详尽地讲解了MATLAB在GUI程序设计方面的应用。
2. 本书内容
本书详细讲解MATLAB图像处理的基础知识和核心内容。全书共分为13章,具体内容如下:
第一部分介绍了MATLAB的基础知识、MATLAB的基本运算、图形的可视化、图像文件的显示以及文件读取I/O操作等内容,让读者对MATLAB有一个概要性的认识。具体的章节安排如下: 第1章是MATLAB基础概述; 第2章是GUI设计预备知识; 第3章是二维绘图; 第4章是三维绘图; 第5章是图像处理的基础知识。
第二部分为基于GUI的常见设计技术,涵盖的内容有句柄图形对象、GUI控件及属性、uimenu菜单及设计、MATLAB GUI基础设计等,向读者展示了GUI设计的方法及技巧。具体的章节安排如下: 第6章是句柄图形对象; 第7章是GUI控件及uimenu菜单; 第8章是MATLAB GUI基础设计。
第三部分为高级GUI设计技术及应用,涵盖的内容有MATLAB与Excel文件的数据交换、基于GUI的学生成绩管理系统设计、基于GUI的离散控制系统设计、GUI实现滤波器设计、GUI在图像处理方面的应用及基于GUI的BP神经网络设计等。让读者进一步领略到MATLAB GUI的强大功能和广泛的应用范围。具体的章节安排如下: 第9章是MATLAB与Excel文件的数据交换; 第10章是基于GUI的离散控制系统设计; 第11章是GUI实现滤波器设计; 第12章是智能算法的GUI设计; 第13章是GUI在图像处理方面的应用。
3. 读者对象
本书适合于MATLAB初学者和期望提高应用MATLAB进行GUI程序设计能力的读者,例如: 相关从业人员、初学MATLAB GUI程序设计的技术人员、大中专院校的教师和在校生、相关培训机构的教师和学员、参加工作实习的“菜鸟”、相关科研工作人员、MATLAB爱好者。
4. 读者服务
为了方便解决本书疑难问题,读者朋友在学习过程中遇到与本书相关的技术问题,可以发邮件到邮箱caxart@126.com,或者访问博客http://blog.sina.com.cn/caxart,编者会尽快给予解答。
另外本书所涉及的素材文件(程序代码)已经上传到上述的博客中,读者可以到此下载。
本书主要由王广、邢林芳编著。此外,付文利、温正、张岩、沈再阳、林晓阳、任艳芳、唐家鹏、孙国强、高飞等也参与了本书部分内容的编写工作,在此表示感谢。虽然作者在本书的编写过程中力求叙述准确、完善,但由于水平有限,书中欠妥之处在所难免,希望读者和同人能够及时指出,共同促进本书质量的提高。
最后再次希望本书能为读者的学习和工作提供帮助!
编者