资源简介
此代码中m文件内容为对细胞的图像分割,包括对图像前期预处理,分割出细胞核,并在后期对细胞进行计数,对黏连的细胞有一定的分割功能,对于图像处理相关初学者有一定帮助
代码片段和文件信息
Image = imread(‘spots.tif‘);
figureimshow(Image);
title(‘原图‘);
Theshold = graythresh(Image);%取得图象的全局域值
Image_BW = im2bw(ImageTheshold);%二值化图象
figureimshow(Image_BW);
title(‘初次二值化图像‘);
%第三步二值化图像进行
Image_BW_medfilt= medfilt2(Image_BW[13 13]);
figureimshow(Image_BW_medfilt);
title(‘中值滤波后的二值化图像‘);
%第四步:通过“初次二值化图像”与“中值滤波后的二值化图像”进行“或”运算优化图像效果
Optimized_Image_BW = Image_BW_medfilt|Image_BW;
figureimshow(Optimized_Image_BW);
title(‘进行“或”运算优化图像效果‘);
%第五步:优化后二值化图象取反,保证:‘1’-〉‘白色’,‘0’-〉‘黑色’
%方便下面的操作
Reverse_Image_BW = ~Optimized_Image_BW;
figureimshow(Reverse_Image_BW);
title(‘优化后二值化图象取反‘);
%第六步:填充二进制图像的背景色,去掉细胞内的黑色空隙
Filled_Image_BW = bwfill(Reverse_Image_BW‘holes‘);
figure imshow(Filled_Image_BW);
title(‘已填充背景色的二进制图像‘);
%第七步:对图像进行开运算,去掉细胞与细胞之间相粘连的部分
SE = strel(‘disk‘4);
Open_Image_BW = imopen(Filled_Image_BWSE);
figure imshow(Open_Image_BW);
title(‘开运算后的图像‘);
%-----------------------------------------------
%-------------开始计算细胞数--------------------
%-----------------------------------------------
[LabelNumber]=bwlabel(Open_Image_BW8)%初步取得细胞个数
Array = bwlabel(Open_Image_BW8);%取得贴标签处理后的图像
Sum = [];
%依次统计贴标签后数组
for i=1:Number
[rc] = find(Array==i);%获取相同标签号的位置,将位置信息存入[rc]
rc = [r c];
Num = length(rc);%取得vc数组的元素的个数
Sum([i])=Num;%将元素个数存入Sum数组
end
Sum
N = 0;
%假如Sum数组中的元素大于了1500,表示有两个细胞相连,像素点较多,即分为两个细胞数
for i=1:length(Sum)
if(Sum([i])) > 500
N = N+1;
end
end
%-------------------------------------------
%------------------统计最终细胞数-----------
%-------------------------------------------
Number = Number+N
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1918 2015-10-21 20:58 celll\cells.m
目录 0 2018-02-05 13:25 celll
----------- --------- ---------- ----- ----
1918 2
相关资源
- GPS卫星轨道动态仿真MATLAB
- 图像的二进小波分解matlab源码(保证
- 基于MATLAB的线性控制系统分析与设计
- matlab 计算矩阵中不同元素个数的函数
- 基于MP的时频分析MATLAB代码
- matlab版的车牌识别程序
- 工程优化问题的Matlab实现代码
- 数字信号处理 matlab实验源程序吴镇扬
- matlab编写的susan算法程序
- 用MATLAB编写的离散余弦变换编码
- Matlab图像二值化和逆向二值化
- matlab-图像处理算法
- GaussJordan解线性方程组-matlab
- vc下实现的分段线性插值、二次多项式
- matlab 手动画图 描点画图
- p文件,MATLAB的
- MATLAB_dct
- 战胜MATLAB必做的50道题
- WCDMA matlab代码
- MATLAB编写共轭梯度
- MRF matlab源码
- matlab链码提取算法
- CRC循环冗余校验的matlab仿真程序
- 曲线旋转得到曲面的MATLAB程序
- matlab 数字图像对比度拉伸算法
- Hough变换实现椭圆及圆检测(MATLAB)
- MATLAB实现混沌图像加密仿真程序
- 数字图像处理radon matlab变换算法代码
- 主动轮廓模型算法matlab程序
- MATLAB 实现各类常见算法
评论
共有 条评论