how can enlarge a matrix?

10 次查看(过去 30 天)
hi I have some matrixes that I want to resize these in a way that every element repeated in a 5*5 Square for example: m=[1,2;3,4] and I want to my result be this:
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
..... I searched but imresize and reshape can not do this for me.Is there any way?

采纳的回答

Stephen23
Stephen23 2015-6-3
编辑:Stephen23 2015-6-3
If you have MATLAB R2015a (or more recent) then you can use repelem.
Otherwise you could try this FEX submission:
Or else you have to calculate it yourself, the easiest way is to use kron:
>> m = [1,2;3,4];
>> n = 5;
>> kron(m,ones(n))
ans =
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
1 1 1 1 1 2 2 2 2 2
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4
3 3 3 3 3 4 4 4 4 4

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by