convert 16X16 to 256X256
1 回表示 (過去 30 日間)
古いコメントを表示
i have a 16X16 matrix.. i have to add it to a 256X256 matrix.. can anyone help me how to make this 16X16 matrix into 256X256 filling the remaining with zeros?? thank u in advance..
0 件のコメント
採用された回答
Walter Roberson
2011 年 3 月 4 日
B = zeros(256,256);
B(1:size(A,1),1:size(A,2)) = A; %upper left
B(end-size(A,1)+1:end, 1:size(A,2)) = A; %lower left
With obvious generalizations to upper right and lower right
c = floor((size(B)-size(A))/2);
B(c(1)+1:c(1)+size(A,1), c(2)+1:c(2)+size(A,2)) = A; %center
The centering algorithm biases towards the upper left if the sizes are not both even or not both odd.
その他の回答 (1 件)
Jan
2011 年 3 月 4 日
Another method:
A = rand(16, 16);
A(256, 256) = 0;
The other zeros are created automatically. Walter's method is more powerful, because this one inserts the zeros on the right bottom only.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Creating and Concatenating Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!