(MATLAB是我很早之前自学的一个工具,十分简单,当时是用老师的PPT自学了一下就清楚了,不过因为不常用,所以有很多函数,像num=zeros(m,n)%创建一个m*n的空矩阵这种函数有时候比较傻乎乎的用循环创建,不过这种东西,多编程序,多百度就可以了。这里只介绍一下MATLAB最简单的入门,让你上手就可以编程序)
Matlab是一个数值计算工具,计算矩阵,数值等很方便。
Matlab的基本操作,在命令窗口中输入
clc 按回车,就可以把命令窗口中的所有语句清空。
clear 按回车,把变量显示区间中的所有信息都清空。
Matlab的输入
在命令窗口输入1,然后按回车,就得到了
把1赋值给了一个默认值。在命令窗口输入i=1,按回车就得到了
把1赋值给了i,此时在变量显示区间就会有
Matlab输入一个矩阵,在命令窗口输入i=[1,2],按回车,就把一个一维矩阵赋值给了i。
输入一个二维矩阵,在命令窗口输入一个i=[1 2;3 4],同行元素之间用空格,用;进行分行。此时命令窗口
变量显示区间
,就可以看到i是一个二维矩阵了。此时若想实现两个二维矩阵相加。如i+i。只需要在命令窗口继续输入
即可。
如果想要写一段小程序,只需要在每一句话的后面加一个英文分号,再回车即可。如实现两个二维矩阵相加的小程序a+b。
按回车即可以得到。
disp()是matlab的输出语句,如果想要输出一段话disp(‘这是一段小程序’);如果想要输出一个变量,不需要加单引号。
matlab的循环
for i=1:5
a=i+a;
end
一个for 对应一个end。End是循环结束的标志,也就是c语言中括号的作用。1:5的意思是循环5次,每次步长为1。对应c语言程序就是
For(i=1;i<=5;i++)
{
a=i+a;
}
..
如果想要实现
For(i=1;i<=5;i=i+2)
{
a=i+a;
}也就是每次循环i+2,matlab的代码如下
for i=1:2:5
a=i+a;
end
多写一个分号。中间2的意思是以2为一个步长循环。
Matlab的if语句
If(i==1)
disp(i);
end
同样不需要大括号,用end结束if。
If else语句
If(i==1)
disp(i);
else
disp(‘wrong’);
end只需要一个end
上面是简单的计算,短代码,那如何实现写一段长程序。
点击file-new-script。新建一个脚本。脚本的后缀是.m,也叫作.m文件。
在里面编写小程序,每句话的后面加分号。如:
此时点击保存。把他重命名到test.m
保存后,在命令窗口输入.m文件的名字“test”再按回车即可执行test里面的代码,并得到输出。
用matlab进行绘图也十分方便,如想化一个一维的数组变化曲线,只需要plot(a)即可,如下图
执行结果弹出一个窗口
还有很多绘图的代码,如bar是画条形图之类的。需要画什么图上网百度即可。
Matlab可以方便的对图像等进行处理,因为一副图像是一个三维矩阵。当需要读取一副图像进行处理的时候,在命令窗口输入:
I=imread(‘2.jpg’);
这样I就是一个三维矩阵。I(width,height,RGB)。前两维是图像像素的行数和列数,最后一维是R,G,B分量。也就是三原色。
注意:
1另外还有很多其他的应用,如读入音频也得到的是一个矩阵。只要是矩阵,matlab就可以很方便的处理。
2matlab在进行处理不同的图像时,要特别注意变量类型,如读取的一副图像时uint8型,数值区间是0-255。0是黑色,越往255增大灰度越大,图像越白。要想对图像的数值进行处理。要注意把uint8转化成double类型。类型转化很简单。如I是一个uint8的矩阵。
I=double(I);
就转化完成了。
3 matlab的函数库相当大,像exp(),log(),平方sqrt(),之类的运算函数自己去书上找记下来,还有很多函数用到的时候去网上查。
4 还有函数调用问题,如果你在网上找了一段代码,把这段代码复制到m文件里,
第一句话是function[]=imagestepjust1(photoname,m,n);
那么这么.m文件保存的时候要保存的和这个函数的名字相同imagestepjust1.m
在命令窗口调用时,只需要看准了数据的类型。
如这个函数调用时在命令窗口输入
按回车即可执行。。
我给你列举的只是很简单的基本操作,你按照步骤一步步地自己写一遍应该就记住了。当你自己做项目的时候,像读取一段音频之类的代码,去网上百度一下就可以了。你也可以看看书,辅助记忆。不过书上写的有很多东西用不着,最好是自己一边做着项目一边百度。
另外如果要做图像处理
img=imread('1.jpg'); %读取一副图像并存在img变量里,此时img'是一个三维变量,前两维是m*n,后面一维是RGB分量
imshow(img); %显示一副图像。
还有灰度转化,提取分量,进行处理像素的代码。自行看书或者百度
更多推荐
matlab自学入门
发布评论