How can I reset the colored image after I converted into grayscale?
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Roshni gupta
el 14 de Ag. de 2017
Comentada: Image Analyst
el 14 de Ag. de 2017
I have 4.jpg as image.1st i am converting it into grayscale to apply imhist(). I am getting grayscale enhanced image as output but I need the enhanced colored image as output. How to do that? I tried using colormap as shown in code below. But its not working
I = imread('4.jpg');
imshow(I)
R = rgb2gray(I);
figure
imshow(R)
in = histeq(R);
figure;
imshow(in);
figure;
imhist(in);
y=colormap(hot(110));
imwrite(R,y,'4.jpg','jpg');
imshow('4.jpg');
% I=imread('4.jpg');
% R=rgb2gray(I); % It is gray now
% % y=colormap(hot(110));
% % imwrite(R,y,'rgb.jpg','jpg'); % Re-change it to colored one
% % T=imread('rgb.jpg');
%
% imshow(T);
% imshow('4.jpg');
0 comentarios
Respuesta aceptada
Guillaume
el 14 de Ag. de 2017
Nothing is stopping you from performing histogram equalisation on each colour channel, if that's what you're after:
rgbimage = imread('4.jpg');
equalisedimage = rgbimage; %copy for simplicity
for channel = 1:3 %iterate over the 3 colour channel
equalisedimage(:, :, channel) = histeq(rgbimage(:, :, channel)); %apply histogram equalisation to each channel
end
imshowpair(rgbimage, equalisedimage, 'montage');
I would advise you to use meaningful variable names as I've done here instead of your meaningless (and misleading!) one letter variable names.
2 comentarios
Image Analyst
el 14 de Ag. de 2017
By the way, histogram equalization tends to give crummy looking images and is rarely if ever needed. For example you don't need to do it prior to doing things like thresholding, etc. I've never needed to use it in 40 years of image processing.
Más respuestas (0)
Ver también
Categorías
Más información sobre Modify Image Colors en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!