MATLAB: How can enlarge a matrix

kronkroneckermatrixonesrepelemrepmatsquare

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?

Best Answer

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