imread and/or rgb2gray not working as expected

8 次查看(过去 30 天)
I am trying to read an image and convert it to grayscale. Originally, I thought the problem was with the rgb2gray function, but when I displayed the image i was trying to read, it was completely different. Here is my code (I got a part of it from another forum) as well as the picture i was trying to read and convert to grayscale.
RGB = imread('Cir1.png');
imshow(RGB);
[rows columns numberOfColorChannels] = size(RGB);
if numberOfColorChannels > 1
Igray = rgb2gray(RGB);
else
Igray = RGB; % It's already gray.
end
imshow(Igray);
The image i am trying to read is show below.
Thanks!

采纳的回答

KSSV
KSSV 2016-11-21
[RGB, map, alpha] = imread('Cir1.png');
figure ; imshow(RGB,map);
[rows, columns, numberOfColorChannels] = size(RGB);
if numberOfColorChannels > 1
Igray = rgb2gray(RGB);
else
Igray = rgb2gray(map);
end
figure ;imshow(RGB,Igray);

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Convert Image Type 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by