how to find mean gray level value
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Muhammad Harith Ramli
il 12 Ott 2016
Commentato: Muhammad Harith Ramli
il 12 Ott 2016
function pushbutton1_Callback(hObject, eventdata, handles)
global X;
[filename, pathname] = uigetfile({'*.bmp','All Image Files';...
'*.*','All Files' },'title',...
'D:\MRI\DOI');
X = imread([pathname,filename]);
axes(handles.axes1);
imshow(X);
minGL = min(X(:));
maxGL = max(X(:));
meanGL = mean(X(:));
message = sprintf('The min gray level = %d.\nThe max gray level = %d.\nThe mean gray level = %d.', minGL, maxGL,meanGL);
uiwait(helpdlg(message));
I try to find a mean gray level value in GUI. When i run the code it will give this answer:

What wrong with the code?
0 Commenti
Risposta accettata
Walter Roberson
il 12 Ott 2016
You are trying to use an sprintf() %d format to print a non-integer value. When you do that, sprintf() uses %e format instead. If you want to print out in floating point, code a %e or %f or %g format.
Remember that the mean of integral values need not be integral itself. For example the mean of 1 and 2 is not going to be an integer.
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!