# What is the meaning of A (: ,: ,1) in matlab? where A is a matrix

814 views (last 30 days)
bh dhouha on 16 Feb 2015
Edited: Alexander Vassilev on 27 Oct 2022
What is the meaning of A (: ,: ,1) in matlab? where A is a matrix .thanks

Image Analyst on 16 Feb 2015
If the badly-named "A" represents a color image, then A(:, :, 1) would mean all rows and all columns in the first image plane - in other words, the red channel of the image. The code mean(mean(A(:,:,1))) would mean the average intensity of the red channel:
meanRed = mean(mean(A(:,:,1)));
Stephen and I are guessing because the author just used a single letter of the variable rather than some descriptive name would would give us some context as to what "A" represents. I hate code that just looks like a random alphabet soup of single letter variables - it makes it very hard to understand, follow, and maintain. For example if the variable were named rgbImage, then we'd know what "A" represented. As of now, we don't. You didn't supply any context either so we're left to speculate (or just ignore the question which is probably what most people did).
Alexander Vassilev on 27 Oct 2022
Edited: Alexander Vassilev on 27 Oct 2022
I was bumped into the same question, and I would agree with Mr. Hodren. The answer that followed surprized me because the tone and the manner it is formulated in does not adjust with the respectable community.

Stephen23 on 16 Feb 2015
Edited: Stephen23 on 16 Feb 2015
A(:,:,1) means: all rows and all columns of A that are in its first page.
(The third dimension is referred to in the MATLAB documentation as a "page", just as the first dimension is "row" and the second is "column").
In MATLAB all arrays can be multidimensional, and the contents can be referred to using indexing . In your example the variable A has three dimensions, and they are referred to in this way:
A(:, % all rows
:, % all columns
1) % on the first page
Although you write that A is a matrix, actually it might not be: a matrix (by definition) only has two dimensions (all higher dimensions are one), which means that if the third dimension has size two or more, then it will be an array, rather than a matrix. You might like to review matrix indexing as well.
bh dhouha on 16 Feb 2015
Thanks a lot Stephen :)