How to find the intensity of each pixel of an image?

23 views (last 30 days)
Consider an image sample.jpg Now I want to count the number of pixels on that image have intensity value larger than 200(white pixels).
If the image contain such pixels above 75% then I want to reject the image. How can I accomplish this in matlab?
  2 Comments
Doug Hull
Doug Hull on 6 Sep 2013
What format is the image in? RGB or greyscale? If it is just a greyscale image, it is really just a matrix and you can do any calculations on it like you would any matrix in MATLAB.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 6 Sep 2013
Edited: Image Analyst on 6 Sep 2013
If it's a color image, first convert to a gray image
[rows, columns, numberofColorChannels] = size(originalImage);
if numberofColorChannels > 1
grayImage = rgb2gray(originalImage);
else
grayImage = originalImage;
end
otherwise if it's already gray, you don't need to call rgb2gray(). Then threshold
binaryImage = grayImage >= 200;
Then count
numberOfWhitePixels = sum(binaryImage(:));
Note: MATLAB uses the American spelling of gray, not the English spelling of grey.
  14 Comments

Sign in to comment.

More Answers (1)

Upeka Somaratne
Upeka Somaratne on 2 Apr 2018
How can I get the pixel coordinates of the pixels which have intensity value greater than 200? (in matlab)
  1 Comment
shimul
shimul on 2 Apr 2018
Edited: Image Analyst on 2 Apr 2018
[rows, cols] = find(yourImage > 200);
considering the image is grayscale.

Sign in to comment.

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!