1、size():获取矩阵的行数和列数 (1)s=size(A), 当只有一个输出参数时,返回一个行向量,该行向量的第一个元素时矩阵的行数,第二个元素是矩阵的列数。 (2)[r,c]=size(A), 当有两个输出参数时,size函数将矩阵的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c。 (3)size(A,n)如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则 size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的时矩阵A的行数, c=size(A,2) 该语句返回的时矩阵A的列数。 (4)[r,c,m]=size(A) 输出:r=3,c=4,m=1。也就说它把二维矩阵当作第三维为1的三维矩阵,这也如同我们把n维列向量当作n×1的矩阵一样。 2 matlab中的运算一般都要使用double型,即使它只是普通的整数,因此常常用第一个函数转化,第二个就是把图像数据转化为double型。 3 double函数只是将读入图像的uint8数据转换为double类型(一般不使用); im2double函数是将uint8图像转为double类型,范围为0-1,如果是255的图像,那么255转为1,0还是0,中间的做相应改变(比较常用)。 4 (:,:,i)作用: S(:,:,1)=[11,12,13;14,15,16;17,18,19];S(:,:,2)=[21,22,23;24,25,26;27,28,29]S(:,:,3)=[31,32,33;34,35,36;37,38,39];
i=2; T=S(:,:,1) A=S(1:3,1:3,i) 运行结果: T = 11 12 13 14 15 16 17 18 19 A = 21 22 23 24 25 26 27 28 29 解释: 上面S是一个三维数组,可以用x、y、z轴来说明,每个轴上有三个值。 T=S(:,:,1)表示x、y轴取所有情况,z轴取第一个值时的结果,因此是3*3的二维数组 A=S(1:3,1:3,i)表示x轴取第1到第3个值,y轴取第1到第3个值,z轴取第i个值即第2个值(i=2) 的结果。 5 matlab注释 a) 逐行注释在MTALAB编写脚本文件的过程中,如果我们想给某一个语句进行注释,那么就用%字符 b) %% 定义程序块在M文件中,如果输入%%,那么再遇到下一个%%之前,此部分将会作为一个程序块,这样在阅读程序的时候,会用黄白颜色间隔,非常方便阅读 c)%{ ..... %} 块注释此注释方法可以将省略号内的所有内容都注释,不论是否在同一行