RGB channel extraction problem

1 view (last 30 days)
chess
chess on 28 Aug 2014
Commented: chess on 28 Aug 2014
I have a question. I have an image that is 1024*1024*3 but when I extract it using :
red=image(1,:,:);
green=image(:,1,:);
blue=image(:,:,1);
then size of red is 1*1024*3, green is 1024*1*3 and blue is 1024*1024. What is wrong with green and red channel why I am not getting a right result and how can I extract their channel?

Accepted Answer

Geoff Hayes
Geoff Hayes on 28 Aug 2014
Edited: Geoff Hayes on 28 Aug 2014
chess - to extract the correct channel, you have to remember that it is the third dimension that indicates colour. So if img is your 1024x1024x3 image, then
red = img(:,:,1); % 1 for red
green = img(:,:,2); % 2 for green
blue = img(:,:,3); % 3 for blue
Remember that image is a built-in MATLAB function, and so is not a good name for a local variable.
  1 Comment
chess
chess on 28 Aug 2014
Thanks I can't believe what I just asked.

Sign in to comment.

More Answers (0)

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!