How to find mean gray level in gray scale image

52 views (last 30 days)
I'm trying to find gray level of a gray scale image. I came through this in one of the questions you answered
X = imread(image);
imshow(X);
minGL = min(X(:));
maxGL = max(X(:));
meanGL = mean(X(:));
but its giving me same answer for every gray scale image i.e
  3 Comments
KSSV
KSSV on 24 Mar 2017
Edited: KSSV on 24 Mar 2017
Clear the workspace using clear all and run the code.

Sign in to comment.

Answers (2)

Thorsten
Thorsten on 24 Mar 2017
If you write a script and call it 'meangraylevel.m', that script changes only the variables that you use in the script, but not a variable that has the same name as the script. You should write a function instead.

Image Analyst
Image Analyst on 24 Mar 2017
I don't know what you're running but you're not running meangraylevel.m. How do I know? Well, you don't have any semicolon after the lines where you compute minGL and maxGL yet those are not being echoed to the command window.
Next, you do have a semicolon after the line where you compute meanGL so that will not be echoed to the command window. So I'm not really sure how that meangraylevel number is getting output to the command window. Like I said, it should be minGL and maxGL and nothing else in the command window.
Next, it's not clear to use if you changed the filename each time you ran this. Are we to assume you did?
  1 Comment
Iqra Rizvi
Iqra Rizvi on 25 Mar 2017
After putting the semicolon , I am not getting any answer

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!