size() for images

78 vues (au cours des 30 derniers jours)
Arya k
Arya k le 13 Déc 2015
Modifié(e) : DGM le 19 Jan 2024
readImage1=imread(image_file1);
m = size(readImage1);
what does mean by the second line of the code ?
  1 commentaire
Gopolang
Gopolang le 13 Mai 2023
the dimensions of the image

Connectez-vous pour commenter.

Réponse acceptée

Stephen23
Stephen23 le 13 Déc 2015
Modifié(e) : Stephen23 le 29 Oct 2020
The size documentation tells us:
" d = size(X) returns the sizes of each dimension of array X in a vector, d, with ndims(X) elements."
You can also very easily try that line in order to find out what it does: load an image and try size and see what it outputs, like this:
>> X = imread('parula_0.png');
>> V = size(X)
V =
420 560 3
This tells us that my image (an array of numbers), is 420 pixels high and 560 pixels across, and contains 3 pages, one for each of R, G and B. It is worth noting that the syntax
[A,B] = size(X);
does NOT return the rows and columns of a 3D (e.g. image) array. Read the size documentation to know why.
  3 commentaires
Stephen23
Stephen23 le 29 Oct 2020
Modifié(e) : Stephen23 le 29 Oct 2020
"What do you mean by 3 pages? I dont understand what the third dimension is"
The MATLAB documentation
defines names for the first three dimensions of an array:
  1. row
  2. column
  3. page
These are the first three dimensions of any array:
X(row,column,page,...)
RGB images are most commonly represented using RxCx3 arrays, where the third dimension encodes the three color channels red, green, and blue:
Note that all arrays implicitly have infinite trailing singleton dimensions:

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Images dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by