convert 16X16 to 256X256
4 次查看(过去 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!