matlab reshape函数

语法

(1)B = reshape(A,m,n)

用法:

B=reshape(A,m,n) 返回m*n矩阵B,它的元素是获得A的行宽度。如果A没有m*n元素,得到一个错误结果。

例子:

<span style="font-size:18px;">>> A=rand(1,10)</span>

结果:

<span style="font-size:18px;">A =

  Columns 1 through 8

    0.1622    0.7943    0.3112    0.5285    0.1656    0.6020    0.2630    0.6541

  Columns 9 through 10

    0.6892    0.7482
</span>
<span style="font-size:18px;">>> B=reshape(A,5,2)</span>

结果:

B =

    0.1622    0.6020
    0.7943    0.2630
    0.3112    0.6541
    0.5285    0.6892
    0.1656    0.7482

(2)

B = reshape(A,m,n,p,...)

B = reshape(A,[m n p ...])

返回一个和A有相同元素的n维数组,但结构变为m * n * p * …

例如:

<span style="font-size:18px;">>> A=rand(1,12)</span>

结果:A矩阵

A =

  Columns 1 through 8

    0.4505    0.0838    0.2290    0.9133    0.1524    0.8258    0.5383    0.9961

  Columns 9 through 12

    0.0782    0.4427    0.1067    0.9619
>> D=reshape(A,2,3,2)

D(:,:,1) =

    0.4505    0.2290    0.1524
    0.0838    0.9133    0.8258

D(:,:,2) =

    0.5383    0.0782    0.1067
    0.9961    0.4427    0.9619

(3)

B = reshape(A,...,[],...)

>> C=reshape(A,5,[])

结果:

C =

    0.1622    0.6020
    0.7943    0.2630
    0.3112    0.6541
    0.5285    0.6892
    0.1656    0.7482

(4)

B = reshape(A,siz)

返回一个与A相同元素的n维阵列,但是改造依据siz,一个向量改造改造的阵列的维度。数值prod(siz)必须和prod(size(A))相同。

matlab reshape函数,布布扣,bubuko.com

时间: 2024-11-07 14:24:03

matlab reshape函数的相关文章

Matlab 的reshape函数

看Matlab的help文档讲得不是清楚. 先给上一段代码: >> a=[1 2 3;4 5 6;7 8 9;10 11 12]; >> b=reshape(a,2,6); 这段代码的结果是这样的: >> a 1     2     3 4     5     6 7     8     9 10    11    12 >> b 1     7     2     8     3     9 4    10     5    11     6    12

Matlab 的reshape函数(转)

看Matlab的help文档讲得不是清楚. 先给上一段代码: >> a=[1 2 3;4 5 6;7 8 9;10 11 12]; >> b=reshape(a,2,6); 这段代码的结果是这样的: >> a 1     2     3 4     5     6 7     8     9 10    11    12 >> b 1     7     2     8     3     9 4    10     5    11     6    12

【转载】matlab的reshape函数的作用

http://blog.csdn.net/zhang11wu4/article/details/7979423 因为我用的MATLAB程序中出现reshape函数,舍友用的程序也出现...所以查询了上面的网页感觉挺不错的 K>> b1 b1(:,:,1) = 1 3 0 0 b1(:,:,2) = 4 3 1 0 以上是b1的组成,是个2X2X2的三维矩阵,相当于把两个2X2的矩阵叠在一起,定义为第一层和第二层. K>> c1=reshape(b1,4,2) c1 = 1 4 0

opencv3学习:reshape函数

在opencv中,reshape函数比较有意思,它既可以改变矩阵的通道数,又可以对矩阵元素进行序列化,非常有用的一个函数. 函数原型: C++: Mat Mat::reshape(int cn, int rows=0) const 参数比较少,但设置的时候却要千万小心. cn: 表示通道数(channels), 如果设为0,则表示保持通道数不变,否则则变为设置的通道数. rows: 表示矩阵行数. 如果设为0,则表示保持原有的行数不变,否则则变为设置的行数. 首先设置一个初始矩阵:一个20行30

Matlab中函数定义方法

Matlab自定义函数的六种方法 n1.函数文件+调用函数(命令)文件:需单独定义一个自定义函数的M文件: n2.函数文件+子函数:定义一个具有多个自定义函数的M文件: n3.Inline:无需M文件,直接定义: n4.匿名函数: n5.Syms+subs:无需M文件,直接定义: n6.字符串+subs:无需M文件,直接定义. ------------ 1.函数文件+调用函数文件:定义多个M文件 % 调用函数文件:myfile.m clear clc for t=1:10 y=mylfg(t);

Matlab中函数句柄@的作用及介绍

问:[email protected](x)acos(x)表示什么意思?其中@代表什么?答:表示f为函数句柄,@是定义句柄的运算符.[email protected](x)acos(x) 相当于建立了一个函数文件:% f.mfunction  y=f(x)y=acos(x); 若有下列语句:[email protected](x)1/2.*(x==-1/2)+1.*(x>-1/28&x<1/2)+1.2.*(x==-1/2); 则相当于建立了一个函数文件: % xsqual.m fun

matlab set函数

1.MATLAB给每种对象的每一个属性规定了一个名字,称为属性名,而属性名的取值成为属性值.例如,LineStyle是曲线对象的一个属性名,它的值决定着线型,取值可以是'-' .':'.'-.'.'--'或'none'.2.属性的操作    set函数的调用格式为:    set(句柄,属性名1,属性值1,属性名2,属性值2,…) 例子: clearx=0:0.2:12;y1=bessel(1,x);y2=bessel(2,x);y3=bessel(3,x);h=plot(x,y1,x,y2,x

matlab 等值线函数 contour

matlab 等值线函数 contour contour是等高线绘制函数我并没怎么用过这个函数,只是参照help将上面的英文翻译一下,如果有错误,请大家提出来.contour(Z)根据矩阵Z画出等高线,Z是以x,y为平面的高度.Z必须是一个至少二维的矩阵.等高线的数量和水平线的值将根据Z值的最小值和最大值自动选择.x,y轴的范围是[1:n]和[1:m],[m,n]=size(Z)contour(Z,n)用n条水平线来绘制Z的等高线.contour(Z,v)是以向量v中的数据来绘制矩阵Z的等高线.

MyEclipse调用Matlab打包函数

本文部分内容参考了http://www.360doc.com/content/15/1103/16/1180274_510463048.shtml 一.检查Java环境 对于已经装上JAVA环境的计算机,首先要确定一下装的环境是否与当前的Matlab builder for java版本相兼容,本文使用的Matlab版本是R2014a. 在CMD.EXE中键入 :java -version 如果出现图中信息则表示已经安装好了JAVA环境并且可以看到它的版本 进一步在cmd中输入javac -ve