MATLAB学年论文2011年6月23日论文题目:MATLAB的基础知识及应用学院:电子工程学院年级:2008级专业:电子信息科学与技术姓名:孟静宇学号:20086586指导教师:王晓飞I摘要MATLAB有操作简便、易学习、应用广泛等优点。熟知MATLAB基础知识,合理运用MATLAB软件,会使学习广频通信技术、语音端点检测、形态学图像处理以及信号与系统等学科更为简单快捷。论文通过MATLAB在广频通信技术、语音端点检测、形态学图像处理以及信号与系统的应用实例,探讨了MATLAB在广频通信技术、语音端点检测、形态学图像处理以及信号与系统的应用方法。关键词:MATLAB,广频通信技术,语音端点检测,形态学图像处理,信号与系统,应用。AbstractMATLABtooperate,easytolearniswidelyused,etc.Familiarwithbasicknowledge,areasonableuseofMATLABsoftwareMATLAB,willmakelearningwidefrequencycommunicationstechnology,speechendpointdetection,morphologicalimageprocessingandsignalandsystem,andotherdisciplinesmoresimpleandquick.Paper,byMATLABinwidefrequencycommunicationstechnology,speechendpointdetection,morphologicalimageprocessingandsignalandsystemexamplesofapplication,discussestheMATLABinwidefrequencycommunicationstechnology,speechendpointdetection,morphologicalimageprocessingandsignalandsystemapplicationmethod.Keywords:MATLAB,widefrequencycommunicationstechnology,speechendpointdetection,morphologicalimageprocessing,signalandsystem,theapplication.目录摘要.................................................................................................................................IAbstract...........................................................................................................................I第一章MATLAB的发展概况和基础知识................................................................11.1MATLAB的发展概况......................................................................................11.2matlab基础知识...............................................................................................1第二章MATLAB的应用............................................................................................52.1Matlab基本实验..............................................................................................52.2MATLAB在扩频通信技术的应用情况.........................................................92.3MATLAB在语音端点检测的应用...............................................................112.4MATLAB在形态学图像处理的应用............................................................112.4.1Matlab图像处理工具箱中形态学图像处理函数...............................112.4.2形态学图像处理实现...........................................................................122.5MATLAB在信号与系统中的应用...............................................................132.5.1用MATLAB绘制信号的波形............................................................132.5.2利用MATLAB解微分方程................................................................142.5.3根据传递函数求解...............................................................................16结束语..........................................................................................................................20参考文献.....................................................................................................................21MATLAB的基础知识及应用1第一章MATLAB的发展概况和基础知识1.1MATLAB的发展概况MATLAB名字由MATrix和LABoratory两词的前三个字母组合而成。20世纪七十年代,时任美国新墨西哥大学计算机科学系主任的CleveMoler教授出于减轻学生编程负担的动机,为学生设计了一组调用LINPACK和EISPACK库程序的“通俗易用”的接口,此即用FORTRAN编写的萌芽状态的MATLAB。经几年的校际流传,在Little的推动下,由Little、Moler、SteveBangert合作,于1984年成立了MathWorks公司,并把MATLAB正式推向市场。从这时起,MATLAB的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据视图功能。MATLAB在问世仅短短几年,就以其良好的开放性和运行的可靠性而被用户广泛接受。在20世纪九十年代的时候,MATLAB已经成为国际控制界公认的标准计算软件。在许多国际一流学术刊物上,(尤其是信息科学刊物),都可以看到MATLAB的应用。1.2matlab基础知识clear移除工作空间里的数据项,释放内存isvarname检查输入的字符串是否为有效地变量名genvarname采用字符串构建有效的变量名ans当没有指定输入变量名时,临时存储最近的答案namelengthmax返回最大的标识符长度globala声明全局变量apersistenta声明永久变量aeps浮点数相对精度(matlab计算时的容许误差)intmax本计算机能表示的最大整数intmin本计算机能表示的最小整数realmax本计算机能表示的最大浮点数realmax本计算机能表示的最小浮点数MATLAB的基础知识及应用2pi圆周率3.1415926……i,j虚数单位inf无穷大NaA非数,无效数值computer计算机类(比如当返回字符串PCWIN时,操作系统为MicrosoftWindows)versionmatlab版本字符串iskeyword查看matlab所有的关键字关系运算用于比较两个同维数组伙食同维向量的对应元素,结果为一个同维的逻辑数组。如果运算对象一个为标量,另一个为数组或是向量,那么先进行标量扩展,然后再比较。matlab提供了两种类型的逻辑运算:一般逻辑运算和捷径运算。捷径运算符只能对标量值执行逻辑与(&&)和逻辑或(||)运算(捷径运算首先判断第一个运算对象,如果可以知道结果,直接返回,而不是继续判断第二个运算对象。如x=b&&(a/b10),如果b为0。捷径运算符就不会计算(a/b10)的值了,也就避免了被0除的错误)。位运算:bitand位与bitor位或bitcmp位比较,反码bitxor位异或bitget返回指定位的数值,值为0或1,double型bitset设定指定位的值为0或1。返回运算结果bitshift移位运算,返回运算结果swapbytes翻转字节的位顺序,返回运算结果特殊的运算符:[]生成向量和矩阵()在算术运算中优先计算;封装函数参数;封装向量或是矩阵的下标{}给单元数组赋值,或是创建一个空单元数组'在矩阵或向量之后表示复共轭转置;两个'之间的字符为字符串MATLAB的基础知识及应用3.域访问…续行符;在括号内结束行;禁止表达式显示结果;隔开声明:创建矢量、数组下标;循环迭代%注释;格式转换定义符中的初始化字符@函数句柄,类似于c语言中的取址运算符matlab中提供了一种非常重要的特殊表达式:字符串计算表达式。字符串计算有两个函数:eval和feval。前者计算包含表达式的字符串,调用方式是eval(expression);后者以字符串或函数句柄为函数名进行计算,调用方式是[y1,y2…]=feval(fun_name,x1,x2,…xn)。如t=0:.1:2*pi;y=eval('sin(t)');plot(y)t=0:.1:2*pi;y=feval(@sin,t);%或是y=feval('sin',t);plot(y)(以上例子的结果都相同,都是利用matlab绘制正弦函数)int8,uint8,int16,uint16,int32,uint32,int64,uint64带符号和无符号整数数组。存储空间比单精度或双精度数组小。除int64和uint64外,其余都可用于数学运算。整数或是整数数组与标量double型浮点数运算的结果的数据类型与整数操作数的一样。如x=uint32([213243])*1.1x=233547%结果都是想乘四舍五入得出来的常见的整数操作函数:ceil向无穷大方向取整round四舍五入MATLAB的基础知识及应用4fix向0取整floor向无穷小方向取整isinteger判断输入是否为整数数组isnumeric判断输入是否为数值数组如a=[0.123];isinteger(a)ans=0浮点数有单精度(single)和双精度(double)两种格式,默认是double,两者可以进行强制类型转换。double型数据共64位,single共32位。常见的浮点数操作函数:isfloat检查输入是否为浮点数eps浮点相对精度realmax返回本计算机能够表示的最大浮点数realmin返回本计算机能够表示的