Lets Learn together... Happy Reading

" Two roads diverged in a wood, and I,
I took the one less traveled by,
And that has made all the difference "-Robert Frost

RGB Image to Grayscale Image without using rgb2gray function

A gray-scale image is composed of different shades of grey color.
A true color image can be converted to a gray scale image by preserving the luminance(brightness) of the image.

Here the RGB image is a combination of RED, BLUE AND GREEN colors.
The RGB image is 3 dimensional. In an image ,
at a particular position say  ( i,j)
Image(i,j,1) gives the value of RED pixel.
Image(i,j,2) gives the value of BLUE pixel.
Image(i,j,3) gives the value of GREEN pixel.
The combination of these primary colors are normalized with R+G+B=1;
This gives the neutral white color.

The grayscale image is obtained from the RGB image by combining 30% of RED , 60% of GREEN and 11% of BLUE.
This gives the brightness information of the image. The resulting image will be two dimensional. The value 0 represents black and the value 255 represents white. The range will be between black and white values.


MATLAB CODE:

Im=imread('peppers.png');

figure,imshow(Im);
title('Original Image');

%0.2989 * R + 0.5870 * G + 0.1140 * B
GIm=uint8(zeros(size(Im,1),size(Im,2)));
for i=1:size(Im,1)
      for j=1:size(Im,2)
          GIm(i,j)=0.2989*Im(i,j,1)+0.5870*Im(i,j,2)+0.1140*Im(i,j,3);
      end
end

%Without using for loop:
%GIm=0.2989*Im(:,:,1)+0.5870*Im(:,:,2)+0.1140*Im(:,:,3);


figure,imshow(GIm);
title('Grayscale Image');











Check out : Partially colored gray scale image - MATLAB CODE
like button Like "IMAGE PROCESSING" page

8 comments:

Unknown said... Reply to comment

This looks nice.
How do you show just one of the colours? Let's say that you turn a picture into grayscale, but want to keep the blue color?

Unknown said... Reply to comment

how to convert gray scale image back to original true color???????????

Unknown said... Reply to comment

how to convert gray scale image back to original image's true color?????????

bvbcet news ana fun msg said... Reply to comment

thanks too much.....after convertng how to plot histogram and cumulative histogram and how to verify that we got correct results by ensuring that final value in the cumulative histogram equals to the number of pixels in the image

Unknown said... Reply to comment

GIm(i,j)=0.2989*Im(i,j,1)+0.5870*Im(i,j,2)+0.1140*Im(i,j,3);----------------i coudnt get this can any can one can explain this........

Ainatul Radhiah said... Reply to comment

thank you :)

Humayun Ahmed Ashik said... Reply to comment

@Ammayi Telugu
According to this equation, Red has contribute 30%, Green has contributed 59% which is greater in all three colors and Blue has contributed 11%
This method is called weighted method.And this method gives the correct grayscale image

Other method is 'Average method' in which (R + G +B)/3 is used to calculate the grayscale ; but this leads to incorrectness

Unknown said... Reply to comment

what if i want to convert whole image into grey scale except red pepper...can you guide me plz..
Thanks in advance

Enjoyed Reading? Share Your Views

Previous Post Next Post Home
Google ping Hypersmash.com