1樓:匿名使用者
matlab將乙個矩陣分成多個塊矩陣可以用如下方法:
設矩陣x有p乘q個值(p和q都假設大於3),取出1到3行,1到3列的一小塊矩陣x1,輸入** x1=x(1:3,1:3)即可,前面1:
3是第1行到第3行,後面1:3表示第1列到第3列。
matlab把塊矩陣合成乙個矩陣
設矩陣a有p乘q個值,b矩陣有p乘m個值,則輸入c=[a b],可以合成p乘(q+m)的乙個大矩陣。行數相同,可以在列後面加列
設矩陣a有p乘q個值,b矩陣有m乘q個值,則輸入c=[a;b],可以合成(p+m)乘q的乙個大矩陣。列數相同,可以在行下面加行
matlab矩陣分塊與把分塊矩陣還原
2樓:匿名使用者
a=rand(256,64);
%將a分塊
b=mat2cell(a,ones(256/16,1)*16,ones(64/16,1)*16);
%b就是所要的分塊矩陣
%將分塊矩陣合併
c=cell2mat(b)
%c就是合併好的專矩陣,即屬c=a
3樓:匿名使用者
greatdju已經是正解了,不必老不結題!
如何將matlab影象矩陣分塊並將分好的塊取出??
4樓:匿名使用者
a = randi(100,100);%100*100的原來始矩陣,也可以自
是你的影象矩陣
m = 2;
n = 2;
c= mat2cell(a,ones(100/m,1)*m,ones(100/n,1)*n);%按照baim*n的小塊進行分塊
輸出的c是元du胞結構,c是分塊後zhi第dao一行第一列的矩陣塊,其他同理。
matlab中,怎樣把分塊矩陣的子塊作為乙個整體運算和輸出
5樓:
我覺得您的輸bai入完全du可以使用結構陣列呀zhi。
inputstruct=struct('zikuai1',[1 2],'zikuai2',[3 4])%比如這樣
function res=example(inputstruct)然後在函式體中,dao完全可以inputstruct.zikuai1,inputstruct.zikuai2呼叫版矩陣
最後權在res=inputstruct返回就可以了啊。
6樓:娜莉china小
輸入完自全可以使用結構陣列。
inputstruct=struct('zikuai1',[1 2],'zikuai2',[3 4])%比如
bai這樣
function res=example(inputstruct)然後在du函式體zhi中,完全可以inputstruct.zikuai1,inputstruct.zikuai2呼叫dao矩陣
最後在res=inputstruct返回就可以了。
7樓:賴思蔚
inputstruct=struct('zikuai1',[1 2],'zikuai2',[3 4])%比如這樣
請教高手指點,matlab怎麼編寫把含字母的分塊矩陣還原為矩陣的**?例子見下圖。
8樓:匿名使用者
分別定義完矩陣abcd以後,再用矩陣定義
e=[a,b;c,d]
matlab如何從乙個矩陣中找到可逆的分塊矩陣
9樓:匿名使用者
%假設來
你原有的矩陣是存在變自量 in 中
a=nchoosek(1:20,16);%產生20各種取16個的組合,會有4845種,返回乙個4845x16的矩陣
num=size(a,1);%num=4845
choose=true(num,1);
for ii=1:num
temp=in(a(ii,:),:);%取第ii行的組合,形成temp方陣
d=det(temp);%計算行列式
if d==0 %如果計入計算截斷誤差,可以用條件abs(d) choose(ii)=false; %標記行列式為0的組合 endend chooseout=a(choose,:);%chooseout是nx16的矩陣,n為符合條件的矩陣個數 %可用out=in(chooseout(n,:),:),獲得第n個符合條件的矩陣 10樓:匿名使用者 設m為20x16的矩陣。若存在mp1*m=e,則mp1必為16x20的矩陣。 若存在m*mp2=e,則mp2必為16x20的矩陣。其中e為單位陣。 matlab實現如下版: a=magic(5); a(:,4:5)=%刪除最後2列得到權5x3的矩陣ap=pinv(b)%得到乙個3x5的逆矩陣ap*a%使得ap*a=e b=magic(5); b(4:5,:)=%刪除最後2行得到3x5的矩陣bpt=pinv(b'); bp=bpt' %得到乙個5x3的逆矩陣b*bp %使得b*bp=e或者補全矩陣為方陣,補全的向量需要與構成矩陣的向量線性無關a=magic(5); a(:,4:5)=%刪除最後2列得到5x3的矩陣as=[ a [0 0 0 1 0]' [0 0 0 0 1]'];%補全為方陣 asp=inv(as);%得到乙個5x5的逆矩陣asp*a%使得asp*a的結果為上面為3x3單位陣,下面為2x3零矩陣的5x3矩陣 11樓:匿名使用者 一步步計算16*16行列式的值就好了,如果符合可逆,就輸出啊 matlab中怎麼把乙個256*256的矩陣分塊成8*8的矩陣,再對塊矩陣進行迴圈處理 12樓:典素潔巨集斯 有很多來中建立方法啊:m= zeros(256);%建立源0矩陣,但輸入預設二維矩陣,等於zeros(256,256),下同m= ones(256); %建立全1矩陣 m=eyes(256);%建立單位矩陣 m=rand(256);%建立[0,1]隨機矩陣,m=magic(256)%建立等等 13樓:匿名使用者 k=1; for i=1:32 for j=1:32 b=a((i-1)*8+1:i*8,(j-1)*8+1:j*8); k=k+1; endend 其中a為256*256的矩陣 b為乙個 回cell陣列答 matlab對矩陣進行分塊,再對分塊後的每一小塊矩陣進行求和,成為乙個新的矩陣? 14樓: matlab中,只要兩個矩陣的size是一致的,那麼它們就可以用加法加起來。 即使你的大矩陣是有多個塊組成的。求和也是對應的塊進行求和。 a rand 256,64 將a分塊 b mat2cell a,ones 256 16,1 16,ones 64 16,1 16 b就是所要的分塊矩陣 將分塊矩陣合併 c cell2mat b c就是合併好的專矩陣,即屬c a greatdju已經是正解了,不必老不結題!matlab怎樣將矩陣分塊與... 1 首先開啟電腦上的 matlab 軟體,主介面如下圖所示,可以看到命令列視窗。2 接著在命令列輸入乙個矩陣a,矩陣a的值可以自定義,此處以1 9數字為例構造矩陣a,矩陣a如下圖所示。3 拼接矩陣需要至少兩個矩陣,在命令列輸入乙個矩陣b,此處以10 18數字為例構造矩陣b。4 下面使用命令c a b... 有很多來中建立方法啊 m zeros 256 建立源0矩陣,但輸入預設二維矩陣,等於zeros 256,256 下同m ones 256 建立全1矩陣 m eyes 256 建立單位矩陣 m rand 256 建立 0,1 隨機矩陣,m magic 256 建立等等 k 1 for i 1 32 f...matlab矩陣分塊與把分塊矩陣還原
matlab中怎麼將矩陣作為另矩陣的元素放進去
matlab中怎麼把256 256的矩陣分塊成8 8的矩