how can i change the dimension of the matrix?

11 visualizaciones (últimos 30 días)
RADWAN A F ZEYADI
RADWAN A F ZEYADI el 8 de En. de 2022
Respondida: Image Analyst el 8 de En. de 2022
hi
i have matrix 51 500 3,how can i change it to 153*500
g=51 500 3

Respuestas (3)

Yusuf Suer Erdem
Yusuf Suer Erdem el 8 de En. de 2022
Try these codes below but note that x1 matrix is created randomly, you need to adapt it according to your own matrix. Good luck!
clc; clear;
x1 = randi([0, 100], [51,500,3]);
x2 = reshape(x1,[153,500]);

Torsten
Torsten el 8 de En. de 2022
You must first decide where you want element (i,j,k) of the old matrix be placed in the new matrix.
But usually MATLAB's "reshape" can help.

Image Analyst
Image Analyst el 8 de En. de 2022
Try this:
g2 = [g(:,:,1); g(:,:,2); g(:,:,3)];
The result is 153 rows by 500 columns.
Here's a full demo with a 3-D RGB true color image (though it doesn't have the same number of rows and columns, it's just to show you the order where things are put):
g = randi([0, 100], [51,500,3]);
g2 = [g(:,:,1); g(:,:,2); g(:,:,3)];
% Demo (though with different number of rows and columns).
g = imread('peppers.png');
subplot(1, 2, 1);
imshow(g);
axis('on', 'image');
g2 = [g(:,:,1); g(:,:,2); g(:,:,3)];
subplot(1, 2, 2);
imshow(g2);
axis('on', 'image');

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by