0
点赞
收藏
分享

微信扫一扫

MATLAB--数字图像处理 cumsum()


概念

cumsum,通常用于计算一个数组各行的累加值。

用法

  • B = cumsum(A,dim)
  • B = cumsum(A)

调用格式及说明

格式一
B = cumsum(A)

返回数组不同维数的累加和

  1. 如果A是一个向量, cumsum(A) 返回一个向量,该向量中第m行的元素是A中第1行到第m行的所有元素累加和(原向量A是m行一列,返回结果也是m行一列)
  2. 如果A是一个矩阵, cumsum(A) 返回一个和A同行同列的矩阵,矩阵中第m行第n列元素是A中第1行到第m行的所有第n列元素的累加和(原向量A是m行n列,返回结果也是m行n列,相当于对每一列进行累加求和
  3. 如果A是一个多维数组, cumsum(A)只对A中第一个非奇异维进行计算(也就是默认只对第一行进行累加求和

注:
解释一下matlab中矩阵、数组、向量的概念

首先,matlab的是矩阵实验室的意思。也就是说matlab中的数据都被视为矩阵。
数组就是一个一行n列的矩阵,向量就是一个m行一列的矩阵。

格式二
B = cumsum(A,dim)

返回A中由标量dim所指定的维数的累加和。

例如:cumsum(A,1)返回的是沿着第一维(各列)的累加和,cumsum(A,2)返回的是沿着第二维(各行)的累加和。

MATLAB举例

测试代码

A=[1;
2;
3;
4;
5]
cumsum(A) % A是一个向量 m行1列
B=1:5 %B=[1 2 3 4 5]
cumsum(B) % B是一个数组 1行n列
C = [1 2 3;
4 5 6];%C是一个矩阵
cumsum(C,1)%对C的每一列进行累加求和
cumsum(C,2)%对C的每一行进行累加求和

结果

% A向量
A =

1
2
3
4
5

% cumsum(A)
ans =

1
3
6
10
15

% B数组
B =

1 2 3 4 5

% cumsum(B)
ans =

1 3 6 10 15

% C矩阵
C =

1 2 3
4 5 6

% cumsum(C,1) 对C的每一列进行累加求值
ans =

1 2 3
5 7 9

% cumsum(C,2) 对C的每一行进行累加求值
ans =

1 3 6
4 9 15


举报

相关推荐

0 条评论