【MATLAB】一个简单的程序实现细胞计数

已更新源码地址

链接:https://pan.baidu.com/s/1968eNwOr1HeaT8e9bQw6Fg 
提取码:8zqy 

##实现带UI界面的程序,对细胞计数

首先在创建一个图形用户界面,扩展名为.fIg的文件,在MATlAB命令窗口启动GUIDE,进行布局,大致布局为自己想要的界面,下图是我自己做的界面(图一)。可以选中属性进行编辑 

图一
图二

右键按钮进入编辑器,即按钮1的回调函数,在函数里进行编辑  ,

function pushbutton1_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton1 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
axis on  %关闭坐标显示
global im;%设置全局变量
[filename, pathname] =uigetfile({'*.Bmp';'*.jpg';'*.*'},'打开图片');
str=[pathname filename];
im=imread(str);
axes(handles.axes2);%显示在axes2位置上
imshow(im);

在进行阈值切割的时候,使用的阈值T是根据全局阈值计算出来的

function pushbutton2_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton2 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
global im;
global im1;
T=globalthreshold( im );
im1=im2bw(im,T/255);
axes(handles.axes3);
imshow(im1);

在进行去噪时,刚开始采用的是中值滤波,效果不佳,影响到了计数,后采用了形态学的闭运算进行处理,效果更佳。

中值滤波
形态学闭运算

 

function pushbutton3_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton3 (see GCBO)
% eventdata  reserved - to be defined in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
global im1;
global A;
A=im1;
B=[0 1 0
   1 1 1
   0 1 0];
% B=strel('disk',3);

%膨胀
for i =1:5
    A=imdilate(A,B);
end
%腐蚀
for i =1:6
    A=imerode(A,B);
end
se1=strel('disk',1);%这里是创建一个半径为1的平坦型圆盘结构元素
A=imerode(A,se1);
axes(handles.axes4);
imshow(A);

最后进行计数

function pushbutton4_Callback(hObject, eventdata, handles)
% hObject    handle to pushbutton4 (see GCBO)
% eventdata  reserved - to be defined .in a future version of MATLAB
% handles    structure with handles and user data (see GUIDATA)
%约 29个
global A;
[Label, Number]=bwlabel(A,4);
set(handles.edit1,'string',Number);

最终结果计数为31个,与人工数出一致,较为成功

软件界面

 

评论 45
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

许帅帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值