Reshape image cell array

9 次查看(过去 30 天)
I have a 1x 225 cell array called 'p'
Each cell has a 434x625x3 rgb image .
I would like to reshape this 'p' to now be of size 434x625x3x15x15
I tried the following
p = load('images.mat').images; %size(p) = 1x 225
pp = reshape(p , [15 15]); %size(pp) = 15x15
pnew = cell(434,625,3,15,15);
for i = 1:15
for j = 1:15
pnew{:,:,:,i,j} = pp{i,j};
end
end
But it does not work .
I know that reshaping as 434x625x3x15x15 will redristube the pixels to completely different locations, that is exactly how I need them.

采纳的回答

Jyotsna Talluri
Jyotsna Talluri 2020-4-20
Convert the cell array into Matrix and then reshape the matrix to required dimensions.
p = [c{:}];
pp = reshape(p, [384 512 3 15 15]);
Hope this helps!

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by