摘要:肾脏肿瘤是泌尿系统常见的恶性疾病,其早期检测与精准分割对疾病诊断、治疗方案制定及预后评估具有重要临床价值。传统影像学分析方法主要依赖人工阅片,不仅工作量大且具有主观性,准确率也存在局限。随着深度学习的发展,基于目标检测与实例分割的算法在医学图像处理领域展现出显著优势。本文基于最新的 YOLOv12 模型,设计并实现了一套面向肾脏肿瘤的自动分割系统。实验在肾脏 CT 影像数据集上开展,结果显示该系统在检测与分割任务中均表现出较高的精确性与稳定性,有效提升了肿瘤检出率并降低了漏检风险。同时,YOLOv12 在保持模型轻量化的条件下,兼顾了精确率与召回率,验证了其在肾脏肿瘤自动分割任务中的应用潜力。本研究为肾脏肿瘤的临床早期筛查与计算机辅助诊断提供了可靠的技术支持。

项目信息

编号:PCV-1
大小:256M
作者:Bob(原创)

环境配置

开发工具:
– PyCharm的安装包:PyCharm: Python IDE for Professional Developers
– PyCharm的历史安装包:PyCharm: Python IDE for Professional Developers
– Anaconda的安装包:Anaconda | Start Coding Immediately

语言环境:Python == 3.9

依赖包:
– pip install numpy==2.0.2
– pip install opencv-python==4.12.0.88
– pip install pillow==11.3.0
– pip install PyQt5==5.15.11
– pip install PyYAML==6.0.2
– pip install torch==2.6.0
– pip install torchvision==0.21.0
– pip install matplotlib==3.9.4
– pip install pandas==2.2.3
– pip install requests==2.32.5
– pip install scipy==1.13.1

研究背景

肾脏肿瘤是泌尿系统发病率较高的恶性疾病之一,近年来其发病率和检出率逐年上升。早期发现与精准定位对于治疗策略的制定(如保肾手术、射频消融、靶向治疗等)至关重要。然而,医学影像的判读往往依赖放射科医生的专业经验,不仅耗时费力,而且在复杂背景下容易出现误判和漏判。

随着人工智能的发展,基于深度学习的目标检测与分割技术逐渐成为医学图像处理的重要手段。尤其是 YOLO(You Only Look Once)系列模型,因其高效、端到端训练和推理速度快的特点,在实时目标检测和医学影像应用中获得了广泛关注。最新提出的 YOLOv12 模型在结构优化与特征提取方面进一步提升了性能,在保持模型轻量化的同时,有效提高了检测精度与召回率。

在肾脏肿瘤影像分析中,肿瘤往往表现为小体积、边界模糊、与周围组织对比度低,传统算法难以实现稳定的分割。引入 YOLOv12 的方法不仅能够实现端到端的自动化分割,还在 Recall 上表现出优势,适合临床对低漏检率的需求。因此,基于 YOLOv12 的肾脏肿瘤分割系统研究,不仅具有重要的学术价值,也在临床辅助诊断和早期筛查中具备广阔的应用前景。

算法概述

YOLOv12引入了以注意力机制(Attention)为核心的架构,突破了传统基于卷积神经网络(CNN)的限制,实现了更高的准确性和更低的延迟,特别是在 Microsoft COCO 数据集上的表现显著提升。注意力机制(Attention Mechanism)是一种模仿人类「聚焦注意力」行为的神经网络技术,能够让模型在处理输入数据时动态地选择重要信息,忽略不相关或不重要的部分,有助于提升模型的感知力与语义理解力。

图1 YOLOv12 网络结构图

YOLOv12的主要定位依然是「极致高效的目标检测模型」,但透过模块化设计与部分Transformer 成分的融合,它也正在逐渐向更「泛化的多模态世界」靠拢。此外,YOLOv12 还推出了 YOLOv12-turbo 版本,进一步加快了推理速度,满足实时应用的需求。

图2 YOLOv12-turbo 与主流目标检测算法的性能对比(基于延迟与计算量)

1.YOLOv12与YOLOv8的核心技术差异

2.YOLO版本的演进与特点比较

3.YOLO与其他视觉模型的特色比较

YOLOv12 在实时目标检测技术发展中实现了关键突破。其结合高效骨干网络(R-ELAN)、FlashAttention 模块与 7×7 可分离卷积,在检测速度与准确性上均优于前代,同时具备实例分割能力,展现出更强的多功能性与应用潜力。实验结果表明,YOLOv12 在 mAP 和推理速度上显著领先,适合自动驾驶、视频监控及医学图像分析等场景。其轻量化设计和高效结构使其能在边缘设备与 GPU 集群间灵活部署,具备良好的适应性与扩展性。总体而言,YOLOv12 在效率与性能间取得了最佳平衡,强化了深度学习未来追求高效与高性能并重的发展方向,为学术研究与工业应用提供了可靠支撑。

系统设计

本系统主要应用于肾脏 CT 影像中肿瘤的自动检测与分割,整体采用“数据输入 + 模型推理 + 结果展示”的一体化模式,分为图像输入模块、深度学习推理模块、分割结果展示模块和可视化交互模块。系统前端支持 CT 图像导入与操作交互,后端采用训练好的 YOLOv12 分割模型,该模型在检测精度和推理速度上均表现优异,且具有轻量化和鲁棒性强的特点,适用于临床辅助诊断、早期筛查和医生阅片等场景。

图3 YOLOv12 肾脏肿瘤分割系统整体流程图

在系统运行流程中,用户首先通过图形界面导入待分析的肾脏 CT 影像,系统将图像数据传递至 YOLOv12 推理引擎,由模型自动完成目标检测与像素级分割。最终输出的结果包括肿瘤区域的定位框、分割边界以及对应的置信度评分。所有检测结果均以影像标注和文本说明的形式在界面上同步呈现,方便医生直观获取关键的病灶信息,从而提高临床诊断的效率与准确性。

数据集构建

1.数据来源
KiTS 数据集(Kidney Tumor Segmentation Challenge)是一个公开的肾脏CT影像数据集,旨在促进肾脏肿瘤的自动化分割和检测技术的发展。

这个数据集的核心特征包括提供了肾脏CT影像及其相关的标注信息,重点是肾脏及肾脏肿瘤区域的分割任务。

图4 KiTS数据集图片

经过初步筛选和清洗,最终得到的数据集包含 “严重有病变” 和 “正常无病变” 两种样本,类别分布较为平衡,图像涵盖了不同类型的肾脏病变,为后续 YOLOv12 方法 的肾脏肿瘤分割模型训练奠定了坚实的数据基础。

2.标注方法
KiTS 数据集(Kidney Tumor Segmentation Challenge)中的图像标注是由具有经验的 放射科医生 和 医学专家 完成的。这些专业人员使用高精度的医学影像标注工具,逐层标注肾脏及其肿瘤区域,确保标注的准确性和一致性,以便后续的深度学习模型能够有效地进行肾脏肿瘤的分割和检测任务。

标注过程中,放射科医生和医学专家会明确标出肾脏和肿瘤的边界,尤其是肿瘤的区域,这对医学影像分析中的肾脏肿瘤检测至关重要。

(1)YOLO 图像分割标注格式
该格式适用于实例分割或语义分割任务,常见于 YOLOv8、YOLOv12 以及其他图像分割模型的训练。

(2)数据集划分
标注后的数据集不仅包括图像文件,还包含对应的标注信息。经过上述所有步骤处理和验证后的图像数据被划分成训练集、验证集和测试集,形成最终的数据集,用于算法训练学习模型。

图5 数据集划分:测试集、验证集和训练集

以下是数据集的具体含义及每个数据集的作用:

模型训练

YOLOv12 是一种用于目标检测和图像分割的深度学习模型。训练 YOLOv12 模型的过程包括以下几个步骤:配置文件与超参数设置、训练过程的执行、以及训练结果的可视化。

图6 YOLOv12 模型训练流程图

1.配置文件与超参数设置
以下是关于 YOLOv12 模型训练过程中的配置文件和超参数设置,使用 ultralytics 库下的 YOLO 模型加载预训练模型,并通过配置文件以及相关参数进行训练设置。

2.模型性能评估
在YOLOv12模型训练过程中,模型性能评估是衡量模型在任务中表现的关键环节,能够有效反映模型的检测、分类和分割能力。准确的评估能够帮助我们识别模型的优缺点,并且为模型的进一步优化提供指导。
(1)YOLOv12模型训练过程中的损失与评估指标可视化

图7 YOLOv12训练过程中的损失与评估指标曲线


分析:模型在训练过程中损失逐步降低,评估指标如精度、召回率和mAP均表现优秀,特别在分割任务中具有出色表现。

(2)F1-置信度曲线(F1-Confidence Curve)

图8 F1-Confidence Curve (Box) 和 F1-Confidence Curve (Mask)

分析:图中的F1-Confidence曲线展示了在不同置信度阈值下,模型在Box和Mask任务上的F1得分,随着置信度的提高,模型表现出较高的精度和召回率,尤其在“normal”和“tumor”类别的区分上,表现优异。

(3)精确度-置信度曲线(P_curve)

图9 P_curve (Box) 和 P_curve (Mask)

分析:两条曲线都表现出较强的性能,随着置信度的提高,精度也在增加。蓝色的 所有类别 曲线在置信度为 1.0 时展示了最高的精度。正常(normal) 和 肿瘤(tumor) 类别的曲线也显示了良好的精度,且 正常 类别的精度稍高于 肿瘤 类别。

(4)召回率-置信度曲线(R_curve)

图10 R_curve (Box) 和 R_curve (Mask)

分析:左图展示了Box的召回率-置信度曲线,随着置信度的提高,召回率趋于稳定,“正常”类别略优于“肿瘤”类别;右图展示了Mask的召回率-置信度曲线,趋势与边界框相似,且在两个类别上召回率表现优秀,模型在两者上均表现出色。

(5)精确度-召回率曲线(PR_curve)

图11 PR_curve (Box) 和 PR_curve (Mask)

分析:左图展示了Box的精确率-召回率曲线,表明随着召回率的增加,精确率保持较高,且正常(normal)类别略优于肿瘤(tumor);右图展示了Mask的精确率-召回率曲线,表明模型在分割任务中表现出色,且在两个类别上均有优异表现,整体上模型在精确率和召回率方面表现良好,精度接近完美。

(6)混淆矩阵(Confusion Matrix)

图12 confusion Matrix 和 confusion matrix normalized

分析:左图展示了混淆矩阵,表明模型在正常和肿瘤类别上表现良好,但背景类别的误分类较高;右图的标准化混淆矩阵进一步验证了正常和肿瘤的高准确率,而背景类别的预测准确度较低。

(7)指标对比雷达图(Radar Chart of Evaluation Metrics)

图13 YOLOv12-Seg 验证性能雷达图

YOLOv12 的雷达图显示模型在 normal 类别性能最佳、tumor 略低、整体居中,凸显其对正常样本的高稳定性与对肿瘤检测的优化空间。

(8)训练日志(Training Log)
训练日志记录了模型在训练过程中的详细信息,包括训练轮数、每轮的损失值、验证结果以及推理时间等,帮助评估模型的训练效果和性能。

图14 训练日志


模型在所有类别(all)、正常类别(normal)和肿瘤类别(tumor)的Box和Mask预测任务中表现优秀,精度和召回率都很高,并且在不同IoU标准下,模型都能维持较高的精度。尤其是在正常类别和肿瘤类别的任务中,模型表现出色,具有较高的精度和召回率,能够有效地识别和分割目标区域。

模型推断

训练完成后,模型会生成一个最佳训练结果文件 best.pt,该文件保存在 runs/segment/train/weights 目录下。我们可以使用该文件进行后续的推理检测,imgTest.py 是用于加载训练好的模型并对图片进行推理检测的脚本文件。

图15 YOLOv12 Detection Result

这张图展示了YOLOv12模型在医学图像(如CT扫描)中的应用,成功检测并标记了图像中的一个肿瘤区域。模型准确地识别出肿瘤,并标记为“tumor”,其置信度为0.97,表明模型对该区域的判断具有较高的可靠性。该图像的检测结果展示了模型在肿瘤区域识别中的高效性和准确性,能够为医生提供精确的定位和诊断支持。

YOLOv12模型在推理过程中表现出良好的速度和高效性,能够快速且准确地识别医学图像中的肿瘤区域,置信度为0.97,表示对检测结果有较高的确定性。此外,模型的处理速度也较为迅速,适合在医学影像分析中使用。

功能展示

本系统基于深度学习的肾脏肿瘤分割与诊断框架,提供了多种检测与结果呈现方式,能够满足科研与临床的多样化需求。以下为主要功能界面展示:

1. 系统主界面展示
主界面集成了单张检测、批量检测、视频检测、实时检测等核心功能入口,整体布局简洁直观。用户可通过调整置信度阈值和交并比阈值,自由控制检测精度与召回率,保证在不同场景下的灵活应用。

图16 系统主界面

2. 单张检测功能
支持对单张 CT 图像进行快速检测与分割。系统能够自动识别正常肾脏或异常病灶区域,并给出置信度评分和分割面积比例。检测结果以边框、Mask 及文字提示的方式直观呈现,帮助医生快速做出诊断判断。

图17 单张检测-肾脏正常

图18 单张检测-肾脏肿瘤

3. 批量检测功能
系统能够对多张 CT 图像进行批量处理,结果自动汇总到表格中,显示每个病例的类别、置信度、目标坐标和分割占比。同时,支持一键保存结果,方便后续的数据分析、归档和对比。

图19 批量检测-肾脏肿瘤

图20 批量检测-保存结果

4. 视频检测功能
支持对视频流进行逐帧检测与分割。用户可在实时监控过程中直观查看分割效果,并可选择是否保存检测过程与结果,满足动态影像分析、教学展示和科研实验等需求。

图21 批量检测-肾脏正常

图22 批量检测-保存结果

5. 实时检测功能
系统支持调用摄像头或外部视频输入,实现实时检测与分割。该功能可在快速筛查、临床应急等场景中提供即时反馈,保证检测的时效性和准确性。

界面设计

本系统的图形用户界面基于 PyQt5 框架进行开发,设计目标是直观、简洁且交互流畅。通过合理的界面布局设计与模块化实现,系统各项功能得以清晰呈现并高效运行。

图23 PyQt5 界面设计原型


综上,基于 PyQt5 的界面不仅提升了系统的可视化效果,还增强了交互性和用户体验,为科研与临床应用提供了更加直观和便捷的操作平台。

文件清单

(1)顶层脚本文件(入口、训练、测试)

(2)UI 与资源(PyQt5)文件

(3)训练产物与可视化文件(自动生成)

(4)推理产物文件(自动生成)

(5)第三方框架库文件

(6)YOLO 数据集目录文件

服务项目

联系我们

官方声明

(1)实验环境真实性与合规性声明:
本研究所使用的硬件与软件环境均为真实可复现的配置,未采用虚构实验平台或虚拟模拟环境。实验平台为作者自主购买的惠普(HP)暗影精灵 10 台式整机,具体硬件参数详见表。软件环境涵盖操作系统、开发工具、深度学习框架等,具体配置详见表,所有软件组件均来源于官方渠道或开源社区,并按照其许可协议合法安装与使用。

研究过程中严格遵循学术诚信和实验可复现性要求,确保所有实验数据、训练过程与结果均可在相同环境下被重复验证,符合科研规范与工程实践标准。

(2)版权声明:
本算法改进中涉及的文字、图片、表格、程序代码及实验数据,除特别注明外,均由2zcode.Bob独立完成。未经2zcode官方书面许可,任何单位或个人不得擅自复制、传播、修改、转发或用于商业用途。如需引用本研究内容,请遵循学术规范,注明出处,并不得歪曲或误用相关结论。

本研究所使用的第三方开源工具、框架及数据资源均已在文中明确标注,并严格遵守其相应的开源许可协议。使用过程中无违反知识产权相关法规,且全部用于非商业性学术研究用途。

声明:本站所有项目资源都可以正常运行,亲测无错!而且我们录制了演示视频,在我们注明的环境版本下,项目运行效果完全和演示视频一致。客服QQ:下载须知