How to converting RGBa (m x n x 4) .tif image to RGB (m x n x 3) .tif

48 views (last 30 days)
After help on my previous question, I have found that some images I want to crop (using imcrop) have been converted to RGBa due to some previous operations in paint.net (I flattened the images but still can't remove the Alpha). I thought they might be cmyk and tried a conversion I found but this gave a weird reversed image so thus I am pretty sure I have RGBa.
Does anyone have any code to convert my images within my cropping function? I have spent hours searching but to no avail.
Many thanks

Accepted Answer

Image Analyst
Image Analyst on 23 Mar 2014
Why can't you just do
% Extract only channels 1, 2, & 3.
rgbImage = rgbImage(:,:,1:3);
??? What do you mean you "Flattened" the image? Can you attach your image so we can try stuff?
  2 Comments
Zander
Zander on 23 Mar 2014
I was using two layers (and hence some transparency) in Paint.net. Afterwards I 'flattened' it to remove the layers (the cause of it changing to RGBa). But it didn't remove that extra part of the image matrix.
I can't seem to attach the image properly as it is a .tif. I must seem like a real idiot!
I've changed the file name to include a . jpg and it seemed to attach ok. Just remove that bit.
Thanks
Zander
Zander on 23 Mar 2014
Just tried what you said... it worked!!!! I tried that before but being the noob I am, I was only extracting one channel at a time so came out as grayscale of one colour value.
You've saved my bacon! Thanks

Sign in to comment.

More Answers (0)

Categories

Find more on Introduction to Installation and Licensing 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!