www.gusucode.com > 《matlab图像处理与界面编程宝典》秦襄培 编著,每章的MATLAB源代码程序 > 第29章/代码29.4.txt

    
function Edit_Callback(hObject, eventdata, handles)
function Grains_Callback(hObject, eventdata, handles)
function Grains_Callback(hObject, eventdata, handles)
file=get(handles.edit1,'string');                   % 得到图像的文件名和路径
A=imread(file);                                 % 读入图像
I=rgb2gray(A);                                  % 灰度转换
background = imopen(I,strel('disk',15));            % 图像开启运算
I2=imsubtract(I,background);                     % 图像减法运算
I3=imadjust(I2);                                 % 图像增强
level=graythresh(I3);                            % 阈值设置
bw=im2bw(I3,level);                             % 图像黑白转换
[labeled,numObjects] = bwlabel(bw,4);             % 图像标识 
pseudo_color=label2rgb(labeled,@spring,'c','shuffle'); % 伪彩色标识
axes(handles.axes3);                            % 设置显示图像的轴
imshow(pseudo_color);                          % 显示图像
graindata=regionprops(labeled,'basic');            % 设置区域属性
figure;                                         % 新建窗口
hist([graindata.Area],20);                         % 颗粒面积直方图