matlab中size()函数的用法

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的列数。

另外,length()=max(size()).

示例:


size(A)函数是用来求矩阵的大小的。 

比如说一个A是一个3×4的二维矩阵:

      1、size(A) %直接显示出A大小

       输出:ans=

                          3    4

       2、s=size(A)%返回一个行向量s,s的第一个元素是矩阵的行数,第二个元素是矩阵的列数

       输出:s=

                          3    4

       3、[r,c]=size(A)%将矩阵A的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c

       输出:r=

                          3

               c=

                          4

       4、[r,c,m]=size(A)

       输出:r=

                          3

               c=

                          4

               m=

                          1

也就说它把二维矩阵当作第三维为1的三维矩阵,这也如同我们把n维列向量当作n×1的矩阵一样

       5、当a是一个n维行向量时,size(A)把其当成一个1×n的矩阵,因此size(a)的结果是

       ans

                 1   n

而不是a的元素个数n

       6、size(A,n)

       如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则 size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的是矩阵A的行数, c=size(A,2) 该语句返回的是矩阵A的列数

当 n=3时,举个例子:

l1=imread(file);
l=l1;
if size(l1,3)==3              %是指图像l1是3维的,3等式右边的3是页数,即3个通道组成1幅图像,但ll不一定是彩色图像
    l1=rgb2gray(l1);         %是将3通道的图像转成单通道的灰度图像
end
l1=double(l1);

如果l1是彩色图像的话,size(l1,3)是等于3的,因为彩色图像每个像素点由R、G、B三个色彩组件组成,每个色彩组件有一个值(0到255之间)。
如果l1不是彩色图像的话,也就是说他是灰度图像,那么它实际上就没有第三维,得到的结果就会是1。


转自:https://blog.csdn.net/smf0504/article/details/51811199

          https://bbs.csdn.net/topics/330226812

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值