已更新源码地址

链接: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 01 1 10 1 0];
% B=strel('disk',3);%膨胀
for i =1:5A=imdilate(A,B);
end
%腐蚀
for i =1:6A=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个,与人工数出一致,较为成功

软件界面

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

  1. python的简单程序代码_小白学编程?从一个简单的程序开始学习Python编程

    笔者思虑再三还是决定选择图文(因为百家的视频发布画质真不怎么样[囧]). 笔者学习编程的时间也挺长的,因为业余,因为时间不多,各种原因,自学编程的路特别难走.然后笔者发现,自己能为小白贡献一些力量,然 ...

  2. 编写一个简单Java程序,计算银行年存款的本息

    编写一个简单Java程序,计算银行年存款的本息 要求:程序运行后要求用户输入存款本金.年利率和存款年限,最后程序计算并输出相应年限后存款的金额.相应的计算公式为:存款总额=本金 * (1 + 利率)存 ...

  3. 如何编辑程序(一个简单的程序)

    如何编辑程序(一个简单的程序) 运行Excel程序,创建一个新的站长工作簿(格式.xlsm),进入VBE,让我们开始编写一个站长列表的程序.程序运行后,一个对话框显示"你好,欢迎来到VBA& ...

  4. LabWindows_CVI测试技术及工程应用_学习笔记1(构建一个简单的程序)

    构建一个简单的程序 1.创建工程文件 或File--〉New--〉Project(*.prj),默认名Untitled.prj,存储在Unititled.cws的工作空间中 File--〉Save U ...

  5. Protues的一个简单51程序仿真

    Protues的一个简单51程序仿真 一.组装原件步骤 二.代码编写 三.仿真结果 四.总结 一.组装原件步骤 1.创建一个新的工程 2.找原件 3.将各元件连接起来,构成原理图 二.代码编写 1.打 ...

  6. matlab——一个简单的动物识别专家系统

    本实验中用matlab实现一个简单的动物识别专家系统,该系统是用来识7种动物的,但在规则库中形成了15条规则.首先将动物分成哺乳动物.鸟.蹄类动物.肉食动物4大类,然后通过继续询问得到要的结果.本程序 ...

  7. OpenGL简介+一个简单的程序

    OpenGL(全写Open Graphics Library) OpenGL是指定义了一个跨编程语言.跨平台的编程接口规格的专业的图形程序接口.它用于三维图像(二维的亦可),是一个功能强大,调用方便的 ...

  8. revit二次开发概念_BIM百科 | Revit二次开发入门--创建一个简单的程序

    获取<每日一技,我的成长轨迹>汇总 · 请访问柏慕联创官方网站: www.lcbim.com · 创建一个简单的Revit外部命令程序[Revit2017+VS2015]: 1.打开VS, ...

  9. Revit二次开发入门--创建一个简单的程序

    创建一个简单的Revit外部命令程序[Revit2017+VS2015]: 1.打开VS,我的版本是VS2015,点击[新建项目]→[Visual C#]→[类库],然后输入程序名称,如:Hello ...

最新文章

  1. python装饰器作用-什么是Python装饰器,有什么作用?
  2. JUC并发编程九 并发架构--CAS
  3. SQL语句,统计一段时间内有多少个工作日
  4. KDD 2021 | 小红书推荐多样性解决方案:SSD在质量、多样性之间获得较好权衡
  5. c#XML的基本使用
  6. 计算机专业好还是铁道运输管理好,铁道运输管理专业主要是干什么的?
  7. MySQL入门之插入、删除、修改表数据
  8. Cow Contest(POJ-3660 )
  9. 今晚8点不见不散!余承东Vlog如此夸赞华为Mate30系列新机
  10. 删除卸载不干净的任务 vmware卸载不干净->服务清理 / 注册表清理
  11. Draco压缩算法使用
  12. Java开发从零开始!java游戏服务器开发教程
  13. 人工智能可以应用在哪些领域?
  14. 做程序界中的死神,锻造合适的斩魂刀
  15. 国产开源项目管理软件ZenTao
  16. python用pandas读取excel_Python 中利用Pandas处理复杂的Excel数据
  17. IE高版本如何设置IE低版本进行测试
  18. 2.2 Collections类 (Collections源码解析)
  19. 关于时区的环境变量TZ
  20. 《认知红利》读书总结+思考

热门文章

  1. 字节跳动后端开发实习面经一二三面+HR面(已offer)
  2. java达到什么样的水平才能社招面进阿里?
  3. jquery niceScroll(插件)滚动条错位问题和ztree插件的使用
  4. 曲阜师大精心保存首台103计算机
  5. 跨平台C语言长连接之quene数据结构
  6. iOS获取UDID问题
  7. DHCP Snooping实验
  8. 【转】《基于MFC的OpenGL编程》Part 2 Setting up OpenGL on Windows(1)
  9. 个人渗透技巧汇总(避坑)笔记
  10. Scapy--1--