【细胞分割】基于Otsu大津法的细胞图像分割与计数系统附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、程序设计科研仿真。

🍎往期回顾关注个人主页:Matlab科研工作室

 👇 关注我领取海量matlab电子书和数学建模资料 

🍊个人信条:做科研,博学之、审问之、慎思之、明辨之、笃行之,是为:博学慎思,明辨笃行。

🔥 内容介绍

该项目为数字图像处理课程实践项目,基于Matlab编程实现细胞图像的自动化分割、计数与特征分析,同时完成细胞内红/绿色染色体的识别与定位,解决了细胞粘连、噪声干扰、染色体精准筛选等问题,为生物医学诊断与细胞分析提供自动化技术支撑。

项目实现了从图像预处理、细胞分割、特征提取到染色体识别的全流程自动化处理,支持细胞数量统计、单细面积/周长计算、染色体形态筛选与质心标注,代码通过多组细胞样本(cell1/cell2/cell3)测试,具备一定的鲁棒性。

项目背景

细胞图像的精准分割与计数是生物医学研究的基础环节,人工分析存在效率低、主观性强、误差大的问题,且细胞图像易存在噪声干扰、细胞粘连、染色体形态多样等难点,传统方法难以实现自动化、高精度的分析。

本项目依托数字图像处理技术,构建自动化处理系统,解决上述痛点,实现细胞与染色体的精准识别、计数和特征提取,为生物医学研究提供高效的工具支持。

数据样本展示

当前有3张细胞图像样本,图像中细胞主体显现为蓝色,细胞中存在被染成红色与绿色的染色体。展示如下:

核心功能

  1. 细胞图像预处理:自定义滤波、锐化算法,实现噪声去除与边缘增强;

  2. 粘连细胞分割:基于分水岭算法实现粘连细胞的精准切分,完成单个细胞区域提取;

  3. 细胞特征分析:自动统计细胞数量,计算每个细胞的面积、周长并可视化标注;

  4. 染色体识别计数:基于R/G颜色通道实现红/绿色染色体筛选,通过形态阈值过滤非目标区域,统计数量并标注质心坐标;

  5. 结果可视化:生成细胞标签着色图、独立细胞展示窗口、染色体质心标注图,直观展示分析结果。

实验流程与核心实现

整体流程:图像读取 → 通道分离 → 预处理(去噪+锐化) → Otsu二值化 → 分水岭分割粘连细胞 → 细胞标签化与特征计算 → 染色体识别与计数 → 结果可视化

1. 图像通道分离

细胞主体为蓝色,选取B通道进行细胞分割与特征分析;细胞内红/绿色染色体分别选取R通道、G通道进行独立识别,分离不同通道以降低目标干扰。

2. 图像预处理

自定义两个核心函数实现去噪与锐化,提升图像质量,为后续分割做准备:

(1)中值滤波去噪(medfilter

以3×3窗口遍历图像,通过计算窗口内像素中值替换中心像素,有效抑制图像噪声,保留边缘细节。

(2)自定义锐化(sharpimfilter

定义水平/垂直方向三阶梯度核,通过卷积计算像素梯度幅值,提升图像边缘对比度,强化细胞与背景的边界特征。

3. Otsu大津法二值化

自定义Otsu函数,通过最大化类间方差选取最优阈值,实现细胞(前景)与背景的初步分割,得到二值化图像。核心思想:遍历所有可能阈值,计算不同阈值下前景/背景的类间方差,取方差最大值对应的阈值为最优阈值,提升分割的准确性。

4. 分水岭算法分割粘连细胞

针对二值化图像中细胞粘连严重的问题,通过分水岭算法(水坝分割)实现粘连细胞的精准切分,核心步骤:

  1. bwareaopen:移除二值图像中面积过小的噪声区域,净化前景;

  2. bwdist:距离变换,计算前景像素到最近背景的距离,生成距离灰度图;

  3. imextendedmin:确定分割种子点,标记每个细胞的核心区域;

  4. imimposemin:将种子点强制为距离图的局部最小值,确定分割起始点;

  5. watershed:分水岭变换,基于最小值点实现细胞区域的分割,完成粘连细胞切分。

5. 细胞特征分析与计数

通过bwlabel对分割后的细胞区域进行标签化,每个细胞分配唯一标签,基于标签实现细胞数量统计与特征计算:

(1)细胞数量与面积计算

标签数即为细胞总数,每个标签下的像素点数量为对应细胞的面积,遍历所有标签统计并存储面积数据至S_list

(2)细胞周长计算

通过8邻域检测判断细胞边界像素:若某像素为细胞区域,且其8邻域存在背景像素,则判定为边界像素,统计所有边界像素数量即为细胞周长,结果存储至C_list

(3)细胞可视化标注

生成细胞着色图与标签可视化图,在图像中标注细胞编号、面积、周长,并实现独立细胞展示窗口:自动根据细胞数量创建窗口(每页9个细胞),提取单个细胞区域并展示其面积、周长信息。

6. 红/绿色染色体识别与计数

针对R/G通道的染色体图像,重复预处理+Otsu二值化操作(二值化阈值在最优值基础上+50,抑制颜色扩散干扰),通过形态筛选+质心标注实现精准识别:

  1. 形态筛选:利用regionprops计算连通区域的离心率(Eccentricity),设定阈值0.9,筛选接近圆形的染色体(离心率越接近0,形状越圆),剔除长条状伪目标;

  2. 数量统计:遍历每个细胞标签区域,统计其中符合形态要求的红/绿色染色体数量,分别存储至R_CountG_Count

  3. 质心标注:记录染色体的质心坐标,在原始图像上用红点(红染色体)、绿点(绿染色体) 标注,并在细胞中心标注染色体数量;

  4. 边缘过滤:忽略细胞区域外的染色体,仅统计细胞内的有效目标。

⛳️ 运行结果

📣 部分代码

%自定义中值滤波函数,实现图像去噪

function new_pic = medfilter(pic,n)

N=ones(n,n);

[h,w]=size(pic);

copy_pic=double(pic); %将图像信息流设为double格式

x2=copy_pic;

offset = floor(n/2);

for i = offset+1:h-offset

    for j = offset+1:w-offset

        % 提取当前窗口内的像素值

        b = copy_pic(i-offset:i+offset, j-offset:j+offset).*N;

        % 计算中位数

        s = median(b,[1,2]);

        % 将中位数赋给输出图像的对应位置

        x2(i,j) = s;

    end

end

new_pic=uint8(x2);

end

🔗 参考文献

[1]薛延学,刘敏,马思欣,等.复杂背景下基于二维OTSU和肤色分割结合的掌纹图像分割方法[J].西安理工大学学报, 2015, 31(3):7.DOI:CNKI:SUN:XALD.0.2015-03-017.

🍅更多免费数学建模和仿真教程关注领取

Proxmox Virtual Environment(简称PVE)是一款基于开源架构的企业级服务器虚拟化平台,它整合了内核虚拟机(KVM)Linux容器(LXC)两种虚拟化技术。该平台在全球范围内被众多企业技术专家广泛采用,其版本已从早期的7.x系列逐步演进至当前的9.x系列。在使用过程中,用户常需处理软件源配置、订阅通知管理以及硬件设备直通等操作。调整软件源是提升开源软件部署效率的常见需求。通过将默认软件仓库替换为地理位置更近或网络质量更优的镜像站点,用户能够显著加速软件包的获取系统更新过程,从而降低因网络延迟导致的时间损耗。本文所述方通过集成化脚本实现了一键式源切换,大幅降低了操作复杂度,使得不同经验水平的用户均可迅速完成配置。订阅通知是PVE官方用于提示版本更新高级功能服务的机制。部分用户出于界面简洁性或对基础版本的偏好,希望隐藏此类提示。提供的工具可快速禁用相关通知,帮助用户保持管理界面整洁,集中精力处理虚拟机的日常运维工作。硬件直通技术允许物理设备(如GPU、网卡)直接关联至特定虚拟机,绕过虚拟化层的中间处理,由客户机操作系统直接驱动。这种模式对于需要高I/O性能的应用场景(例如图形渲染、实时数据库服务)具有关键意义。传统配置流程涉及较多技术细节,而通过自动化脚本,用户能够以简化的步骤快速完成直通设置,降低了实施门槛。综上所述,本方案为Proxmox VE使用者提供了一系列集成化工具,旨在优化平台配置流程,提升虚拟化环境的管理效率使用体验。资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值