《MATLAB总结_1.docx》由会员分享,可在线阅读,更多相关《MATLAB总结_1.docx(13页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、MATLAB总结 书目 一、Matlab相关说明 .2 二、Matlab操作留意事项 .2 三、Matlab常用代码(图像处理相关) .5 四、Matlab常用快捷键 .7 五、Matlab学习心得 .8 1 一、Matlab相关说明 Matlab是“Matrix Laboratory”的缩写,意为“矩阵试验室”。MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面数一数二。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、限制设计、信号处理与通讯、图像处理、信号检测、金融建
2、模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式非常相像,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也汲取了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C+,JAVA的支持。 我所运用的Matlab版本是2022a,下文所涉及到图片、专业术语等都是以此版本为基础。 二、Matlab操作留意事项 1.打开并运行一个现存的m文件且这个m文件运行时需用到同一级文件夹中的其他文件,会出现如下提示框: 选择变更文件夹,将当前文件夹变更为这个m文
3、件所在的文件夹。 2.不当心点错或关闭了各种小窗口,将Matlab复原成默认布局 点击桌面桌面布局默认 3.查看某个函数的用法 在吩咐窗口输入该变量的名称,回车即可。 2 4.查找某个函数的用法 在吩咐窗口输入help+函数的名称,回车后会自动显示该函数的相关信息。 5.运行文件后报错 如下图所示,吩咐窗口中报错的第一段是错误的缘由,后面几段会显示发生错误的文件夹以及在该文件夹中的位置。 点击文件的名称,会跳转出一个提示框,上面显示了该文件的详细实现功能,如下图所示。点击文件名后面的行标号,可以干脆跳转到发生错误的那一行。 3 6.如何编辑界面? 修改如图所示的fig文件 1.新建一个GUI文
4、件 2.选择打开现存的GUI文件,点击Open,就可以对当前界面进行编辑了。 7.如何将MAtlab中默认的current folder修改为自己想要的路径,每次启动后都默认是自己 设定的这个路径? 右键matlab 快捷方式,属性-快捷方式-起始位置 填入你自己的工作书目。 8.把图复制到WORD文件的方法:电机EDITCopy FigureCtrl+V 9.输入时,标点必需是英文状态下的 10.大多数状况下,matlab对空格不予处理 11.小括号代表运算级别,中括号用于生成矩阵,大括号用于构成单元数组 12.分号;的作用:不显示运算结果,但对图形窗口不起作用。分号也用于区分行, 13.逗
5、号,的作用:函数参数分隔符,也用于区分行,显示运算结果,当然不加标点也显示运算结果 14.冒号:多用于数组 15.续行号.不能放在等号后面运用,不能放在变量名中间运用,起作用时默认显蓝色 4 16.双引号string是字符串的标识符 17.感叹号!用于调用操作系统运算 18.百分号%是注释号,百分号后面直到行末的语句matlab跳过执行.另外还有一个块注释,即对多行一次注释,会运用到,格式为(留意% 和%都要单独成行) % % 19.矩阵中用圆括号表示下标,单元数组用大括号表示下标 20.对变量名的基本要求:区分大小写,不超过63个字符,以字母开头,只能是字母,数字和下划线 三、Matlab常
6、用代码(图像处理相关) 1.创建一个文件夹 mkdir(D:myData); 2.将图片保存到指定的文件夹 image_source=strcat(result,num2str(loop),.jpg); imwrite(F.cdata,image_source); 3.将电影转成图片序列 fnum=size(mov,2); %读取电影的祯数 for i=1:fnum strtemp=strcat(C:UsersAdministratorDesktopparticalfiltermyself粒子滤波,int2str(i),.jpg);%将每祯转成jpg的图片 imwrite(mov(i).cda
7、ta,strtemp,jpg); end 4、模拟噪声生成函数和预定义滤波器 imnoise:用于对图像生成模拟噪声,如: i=imread(104_8.tif); j=imnoise(i,gauian,0,0.02);%模拟高斯噪声 fspecial:用于产生预定义滤波器,如: h=fspecial(sobel);%sobel水平边缘增加滤波器 h=fspecial(gauian);%高斯低通滤波器 h=fspecial(laplacian);%拉普拉斯滤波器 h=fspecial(log);%高斯拉普拉斯(LoG)滤波器 h=fspecial(average);%均值滤波器 5、图像文件I
8、/O函数吩咐 imfinfo 返回图形图像文件信息 语法:info=imfinfo(filename,fmt) info=imfinfo(filename) imread 从图像文件中读取(载入)图像 语法:A=imread(filename,fmt) X,map=imread(filename,fmt) .=imread(filename) .=imread(URL,.) .=imread(.,idx) (CUR,ICO,and TIFF only) .=imread(.,frames,idx) (GIF only) .=imread(.,ref) (HDF only) 5 .=imread
9、(.,BackgroundColor,BG) (PNG only) A,map,alpha =imread(.) (ICO,CUR,PNG only) imwrite 把图像写入(保存)图像文件中 语法:imwrite(A,filename,fmt) imwrite(X,map,filename,fmt) imwrite(.,filename) imwite(.,Param1,Val1,Param2,Val2.) imcrop 剪切图像 语法:I2=imcrop(I) X2=imcrop(X,map) RGB2=imcrop(RGB) I2=imcrop(I,rect) X2=imcrop(R
10、GB,rect) .=imcrop(x,y,.) A,rect=imcrop(.) x,y,A,rect=imcrop(.) 6.impixel 确定像素颜色值 语法:P=impixel(I) P=impixel(X,map) P=impixel(RGB) P=impixel(I,c,r) P=impixel(X,map,c,r) P=impixel(RGB,c,r) c,r,P=impixel(.) P=impixel(x,y,I,xi,yi) P=impixel(x,y,RGB,xi,yi) P=impixel(x,y,X,map,xi,yi) xi,yi,P=impixel(x,y,.)
11、 7.二进制图像操作函数 applylut 在二进制图像中利用lookup表进行行边沿操作 语法:A=applylut(BW,LUT) bwarea 计算二进制图像对象的面积 语法:total=bwarea(BW) bweuler 计算二进制图像的欧拉数 语法:eul=bweuler(BW) 8.颜色空间转换函数 hsv2rgb 转换HSV值为RGB颜色空间:M=hsv2rgb(H) ntsc2rgb 转换NTSC值为RGB颜色空间:rgbmap=ntsc2rgb(yiqmap) RGB=ntsc2rgb(YIQ) rgb2hsv 转换RGB值为HSV颜色空间:cmap=rgb2hsv(M)
12、rgb2ntsc 转换RGB值为NTSC颜色空间:yiqmap=rgb2ntsc(rgbmap) YIQ=rgb2ntsc(RGB) rgb2ycbcr 转换RGB值为YCbCr颜色空间:ycbcrmap=rgb2ycbcr(rgbmap) YCBCR=rgb2ycbcr(RGB) ycbcr2rgb 转化YCbCr值为RGB颜色空间:rgbmap=ycbcr2rgb(ycbcrmap) RGB=ycbcr2rgb(YCBCR) 9.类型转换函数 im2bw 转换图像为二进制图像 语法:BW=im2bw(I,level) BW=im2bw(X,map,level) BW=im2bw(RGB,l
13、evel) im2double 转换图像矩阵为双精度型 语法:I2=im2double(I1) RGB2=im2double(RGB1) I=im2double(BW) X2=im2double(X1,indexed) double 转换数据为双精度型 语法:double(X) 6 unit8 、unit16转换数据为8位、16位无符号整型: i=unit8(x) i=unit16(x) im2unit8 转换图像阵列为8位无符号整型 语法:I2=im2unit8(I1) RGB2=im2unit8(RGB1) I=im2unit8(BW) X2=im2unit8(X1,indexed) im
14、2unit16 转换图像阵列为16位无符号整型 语法:I2=im2unit16(I1) RGB2=im2unit16(RGB1) I=im2unit16(BW) X2=im2unit16(X1,indexed) 四、Matlab常用快捷键 1.在吩咐窗口(Command Window)中: 1) 【上、下键】切换到之前、之后的吩咐,可以重复按多次来达到你想要的吩咐 2) clc清除吩咐窗口显示的语句,此吩咐并不清空当前工作区的变量,仅仅是把屏幕上显示出来的语句清除掉 3) clear这个才是清空当前工作区的变量吩咐,常用语句clear all来完成 4) 【Tab】键在command窗口,输入
15、一个吩咐的前几个字符,然后按tab键,会弹出前面含这几个字符的全部吩咐,找到你要的吩咐,回车,就可以自动完成。目前探讨结果是:matlab6.5版本中,假如候选吩咐超过100个,则不显示。而在matlab7以后版本中,则没有这个限制,均可正常提示 5) 【Ctrl+C】(或【CtrlBreak】)在matlab程序运行过程中,可能由于程序编写的失误,导致程序不停的运行,在吩咐窗口输入“Ctrl+C”可以将运行的程序停下来,而不须要将整个Matlab程序关掉。不过进行此操作的前提是能够激活切换到吩咐窗口才行。 6) edit+函数名 查看或编辑源文件 7) who 显示当前变量名列表 8) wh
16、os 显示变量具体列表 9) which+函数名 证明该函数是否在当前路径 10) what 列出当前路径的全部matlab文件 11) load 加载外部文件 12) save 保存文件到外部 13) 20.matlab的帮助函数: 14) help 15) help+函数名或help+函数类名 精确查询 16) helpwin 打开帮助窗口 17) helpwin+函数名 精确查询 18) helpdesk 打开帮助窗口 19) doc 打开帮助窗口 20) doc+函数名 打开帮助窗口, 精确查询 21) lookfor+关键字 这个是matlab中的谷歌,模糊查询 2.在编辑器(Edi
17、tor)中: 1) 【Tab】(或【Ctrl+】)增加缩进(对多行有效) 7 2) 3) 4) 5) 6) 【Ctrl+】削减缩进(对多行有效) 【Ctrl+I】自动缩进(即自动排版,对多行有效) 【Ctrl+R】注释(对多行有效) 【Ctrl+T】去掉注释(对多行有效) 【Ctrl+B】括号配对检查(对版本6.5有效,但版本7.0无效,不知道是取消了还是换了另外的快捷键,请大牛们指引,其他版本没有测试过) 7) 【F12】设置或取消断点 8) 【F5】运行程序 五、Matlab学习心得 接触Matlab一个多月,从刚起先连最基本的操作都不会,到现在能够娴熟地运用Matlab解决问题。虽然现在
18、学到的也只是皮毛而已,离精通还相差甚远,但至少为以后探讨生期间的学习打下了良好的基础。下面我就简洁的谈一下这一个月来的学习感想。 首先,想要学好Matlab必需有肯定数学基础。Matlab软件是与高等数学,计算机科学相结合的软件。所以,当你学习Matlab时,你也得会肯定的数学。你要尽量多的熟识matlab自带的函数,及其作用,因为matlab的自带函数特殊多,基本上能够满意一般的数据和矩阵的计算,所以基本上不用你自己编函数。这一点对你的程序特别有帮助,可以使你的程序简洁,运行效率高,可以节约许多时间。 其次,要注意基础学问于实际操作结合。你把基本的学问看过之后,就须要找一个实际的程序来动手编
19、一下,不要等全部的学问都学好之后再去编程,你要在编程的过程中学习,程序须要什么学问再去补充。在遇到问题时,不要光看别人假如解决,也不要光想怎么解决,自己坐下来,动手自己解决一下,那你就会把不是你的学问变成自己的学问。 最终,也是最重要的一点就是坚持。MATLAB涉及的领域太多,每个领域里面都缺乏足够的专家分布在你四周。那么我们很难有机会接触到真正的高手,对我们的技术细微环节一一指引。在遇到实际问题时,就只能靠自己去摸索。经常是再坚持一两个小时,就能够解决你的问题。最大的成就感,就在付出了极大的心血和耐性,才取得一个艰难的小成功。 8 matlab总结 MATLAB总结 matlab总结 matlab基础总结 MATLAB学问总结 matlab总结1 MATLAB课程总结 MATLAB课程总结 matlab课程总结 MATLAB程序总结 本文来源:网络收集与整理,如有侵权,请联系作者删除,谢谢!第13页 共13页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页第 13 页 共 13 页
限制150内