医学图像的图像处理、分割、分类和定位-1

news2024/11/22 21:29:03

一、说明

        本报告全面探讨了应用于医学图像的图像处理和分类技术。开展了四项不同的任务来展示这些方法的多功能性和有效性。任务 1 涉及读取、写入和显示 PNG、JPG 和 DICOM 图像。任务 2 涉及基于定向变化的多类图像分类。此外,我们在任务 3 中包括了胸部 X 光图像的性别分类(男性/女性的 2 类分类),并在任务 4 中通过回归分析从 X 射线图像中估计了年龄。任务 5 侧重于胸部 X 射线图像中的肺区域分割,任务 6 将隔离扩展到四个不同的区域,任务 7 深入研究医学图像中的物体定位。总之,这些任务提供了机器学习在医学图像分析中的各种应用的整体视图。总之,这些任务提供了机器学习在医学图像分析中的各种应用的整体视图。这是我在医学影像方面的学术任务的一部分。

       内容提要:

  • 介绍。
  • 任务1:医学图像的加载、写入和显示。
  • 任务 2:基于方向方向的多类图像分类。
  • 任务 3:使用卷积神经网络对胸部 X 射线图像进行性别分类。
  • 任务 4:使用深度学习从胸部 X 射线图像估计年龄。
  • 任务 5:从胸部 X 射线图像中分割肺区域。
  • 任务 6:分割 2- 胸部 X 射线图像的肺面积外(肺面积:255/心脏:85/肺外:170/体外:0)。
  • 任务 7:胸部 X 射线图像中的物体定位方法。

二、介绍 

        由于机器学习技术的集成,医学图像处理和分类取得了重大进展。在这项研究中,我们深入研究了一系列任务,旨在突出图像处理和分类的综合管道。任务范围从简单的图像加载、写入和显示到更复杂的分类场景。此外,我们还扩大了我们的研究范围,在任务 3 中包括胸部 X 射线图像的性别分类(男性/女性的 2 类分类),并在任务 4 中通过回归分析从 X 射线图像进行年龄估计。这些补充扩大了我们的研究范围,并强调了卷积神经网络(CNN)模型在医学图像分析领域的广泛应用。任务 5 侧重于胸部 X 射线图像中的肺区域分割,利用基于颜色的分割技术提取感兴趣的解剖区域。任务 6 将隔离扩展到医学图像中的四个不同区域,包括肺区、心脏区、肺外区和体外。任务 7 使用基于 YOLO 的对象检测深入研究医学图像中的对象定位。这项任务突出了关键结构精确定位的潜力,使疾病检测和治疗计划等应用成为可能。

三、任务1:医学图像的加载、写入和显示

  • 数据加载:PNG和JPG格式的图像是从指定文件夹中收集的。此外,DICOM 图像来源于其各自的目录。开发了 Cus-tom 函数来读取这些图像并将其加载到环境中。
  • 图像预处理:对不同格式的图像进行处理,以促进均匀性。图像大小调整为一致的尺寸,以实现无缝比较和显示。对于 DICOM 图像,执行了额外的步骤,将像素数据转换为受支持的 8 位无符号整数数组。
  • 显示和可视化:加载和预处理的图像使用IPython显示功能显示,可以目视检查和比较医学图像。
  • 结果与观察:加载、预处理和显示不同格式的医学图像的综合结果展示了图像与工作环境的成功集成。从 PNG、JPG 到 DICOM 图像的无缝过渡突出了实现的功能对不同图像类型的适应性。

四、任务2:基于方向方向的多类图像分类

        任务 2 通过将胸部 X 射线图像分类为多个方向(上、下、左和右)来介绍图像分类的概念。该任务涉及数据加载、预处理、构建 CNN 模型、根据数据对其进行训练以及评估其性能。这项任务强调了多类分类任务的复杂性和卷积神经网络的必要性。

4.1. 数据收集和预处理

        对于这项任务,使用了分类为不同方向的胸部 X 射线图像数据集。收集图像并用各自的方向进行标记。在模型开发之前,图像经过了严格的预处理阶段。

  • 数据加载:数据集是使用自定义函数加载的,这些函数从指定目录中读取图像文件及其关联标签。这些图像随后被调整为一个通用尺寸,以确保训练和评估期间的一致性。
  • 数据增强: 为了平衡类不平衡并增强模型的泛化能力,应用了数据增强技术。采用旋转、翻转和缩放等技术来人为地扩展数据集。

4.2. 模型架构和训练

        模型架构经过精心设计,以适应多类分类任务。构建了卷积神经网络(CNN),由多个卷积层和池化层组成,然后是全连接层。ReLU 激活函数用于隐藏层,而 softmax 激活用于输出层。

4.3.  训练

        该模型使用分类交叉熵损失函数进行训练。在训练过程中,使用 Adam 优化器更新模型的权重,该优化器根据梯度大小调整学习率。训练过程包括遍历成批的图像,通过网络向前传递它们,计算损失,以及向后传播以更新权重。

4.4. 验证和提前停止

        为了防止过度拟合,使用了验证数据集。对模型在验证集上的性能进行监控,如果没有观察到改进,则提前停止训练,这表现为验证损失没有减少。

4.5. 结果和评估

        训练后,在单独的测试数据集上评估模型的性能。计算准确率、精确度、召回率和 F1 分数等指标来评估模型的分类性能。生成混淆矩阵以可视化模型在每个类中的性能。结果表明,该模型能够根据胸部X射线图像的直接方向对胸部X射线图像进行准确分类。在对模型进行定义数量的 epoch 训练后,我们获得了以下结果:

        测试精度:0.92 精度:1.00 召回率:1.00

达到 0.92 的测试精度表明该模型能够根据其方向正确分类胸部 X 射线图像。此外,1.00 的精确率和召回率值表明该模型擅长对至少一个类别进行准确预测,确保低误报和漏报。

精度和召回率值为 1.00 可能表明您的模型在给定数据集上表现异常出色,但也可能引起一些问题并需要进一步调查。原因如下:

        精度 1.00:精度为 1.00 表示模型做出的所有正预测都是正确的。换句话说,没有误报。虽然这是一个积极的结果,但它可能表明该模型在做出积极的预测时过于谨慎。验证模型是否未遗漏任何真正的阳性病例非常重要。

        召回 1.00:召回率为 1.00 意味着模型已正确识别正类的所有实例。这是一个理想的结果,但它也可能表明模型过度拟合训练数据或记忆特定模式。确保模型的性能在不同的数据集或看不见的数据中保持一致至关重要。可以使用以下方法改进模型:验证新数据、检查类不平衡、交叉验证、微调等。

五、任务 3:使用卷积神经网络从胸部 X 射线图像进行性别分类

        本任务探讨了深度学习技术在胸部 X 射线图像性别分类任务中的应用。该研究提出了一个全面的管道,包括数据准备、模型构建、训练和评估。主要目标是将胸部 X 射线图像分为两类:男性和女性。CNN模型取得了可喜的结果,展示了机器学习在医学图像分析中的潜力。

5.1. 数据准备:

该数据集由胸部 X 射线图像组成,分为训练集和测试集。图像大小调整为 224x224 像素的标准尺寸,并进行归一化以实现模型兼容性。从文本文件加载标签信息,并应用独热编码来表示性别类别。

5.2. 模型架构:

我们的模型架构建立在卷积神经网络 (CNN) 之上,CNN 以其在视觉分类任务中的有效性而闻名。它由三个卷积层组成,具有最大池化功能,用于从 X 射线图像中提取相关特征。采用具有ReLU激活和丢弃正则化的全连接层进行分类。最后一层使用 softmax 激活进行性别预测。

5.3. 模型训练:

该模型使用亚当优化器和分类交叉熵损失函数进行训练。训练在训练数据集上进行了 15 个 epoch。此阶段的重点是学习区分胸部 X 线图像中的男性和女性模式。

5.4. 模型评估:

训练后,在测试数据集上对模型的性能进行了细致的评估,结果如下。

5.5. 结果:

分类报告: 分类报告提供了两个类别(女性和男性)的详细指标:

分类报告提供了两个类别(女性和男性)的详细指标:

女性:

精度:0.74 召回率:0.81 F1 得分:0.77 支撑:42

雄:

精度:0.83 召回率:0.76 F1 得分:0.80 支撑:51 精度:0.78

宏平均值(精确率/召回率/F1 分数):0.78

加权平均值(精确率/召回率/F1 分数):0.79

这些指标表明模型的性能平衡,总体准确率为 78

受试者工作特征 (ROC) 曲线:

ROC 曲线区域量化了模型区分类别的能力,如下所示:

女性的ROC曲线面积:0.88

男性的ROC曲线面积:0.88

女性和男性类别的ROC曲线面积均为0.88,表明该模型表现出强大的判别能力

实验结果表明,基于胸部X线图像的性别分类卷积神经网络(CNN)模型取得了令人满意的性能。女性和男性类别的准确率、召回率和 F1 分数指标都相当高,总体准确率为 78。

六、任务 4:使用深度学习从胸部 X 射线图像估计年龄:

        该任务的重点是利用深度学习技术从胸部 X 射线图像中估计年龄的任务。根据医学图像估算年龄是医疗保健领域的一项重要应用。在这项研究中,我们提出了一个全面的管道,涉及数据加载和预处理、模型构建、训练和评估。主要目的是根据胸部 X 射线图像预测患者的年龄。

6.1. 简介:

        医学图像的年龄估计在各种医疗保健应用中具有实用性。本研究解决了使用胸部 X 线成像进行年龄预测的问题,这是一个有可能改善患者护理和诊断的领域。

6.2. 数据准备:

        医学图像的年龄估计在各种医疗保健应用中具有实用性。本研究解决了使用胸部 X 线成像进行年龄预测的问题,这是一个有可能改善患者护理和诊断的领域。

6.3. 模型架构:

        我们采用深度卷积神经网络 (CNN) 架构进行年龄估计。该模型的核心基于 ResNet-50 架构,在 ImageNet 上进行了预训练。使用全局平均池化层和密集层来预测年龄作为回归任务。

6.4. 模型训练:

        该模型采用Adam优化器和均方误差损失函数编译,适用于回归任务。它在训练数据集上训练了 10 个 epoch。或者,应用提前停止以防止过拟合。

6.5. 模型评估:

        使用验证数据进行模型评估,并计算均方误差(MSE)损失。该指标量化了该模型基于胸部 X 射线图像预测年龄的准确性。

6.6. 结果 

培训进度:

        在十个训练周期中,模型的性能不断提高,均方误差 (MSE) 损失的减少证明了这一点:

        在初始时期(纪元 1/10),模型开始时的训练损失相对较高,约为 2898.96,验证损失约为 2692.35。

        随后的 epoch 显示训练和验证损失持续减少,表明模型能够从数据中学习和泛化。在训练结束时,该模型的训练损失约为 243.32,验证损失约为 229.69。

        验证损失: 以 MSE 衡量的验证损失是模型在年龄估计中准确性的关键指标。训练结束时大约229.69的验证损失表明该模型能够根据胸部X射线图像做出相当精确的年龄预测。

        在整个训练过程中损失值的降低表明了该模型对年龄估计任务的有效学习和适应。

        对于每张图像,都会打印相应的预测年龄以进行随机评估:

未来方向:

        虽然该模型显示出有希望的结果,但进一步的重新搜索和微调可以提高其性能。潜在的改进途径包括探索不同的架构、超参数调整和数据增强技术,以提高模型在年龄估计中的鲁棒性和准确性。

七、任务 5:从胸部 X 射线图像中分割肺区域

7.1. 数据加载和预处理:

        该代码有效地处理了胸部 X 射线图像及其相应肺区域掩模的加载和预处理。实施了强大的路径格式,以确保跨平台兼容性,这对于协作项目至关重要。将图像大小适当调整为一致 (256, 256) 像素尺寸,并归一化为 [0, 1] 范围内的值。这种标准化是深度学习图像预处理的常见做法。

7.2. 模型架构:

        该代码实现了 U-Net 架构,这是医学图像分割任务中一种成熟且广泛使用的方法。该模型由编码器和解码器组成,具有跳跃连接,以保留整个网络的空间信息。对卷积层使用“relu”激活,对最终输出层使用“sigmoid”激活,符合二进制分割问题的最佳实践。

7.3. 训练:

        模型训练过程经过适当配置,包括优化器(Adam)和损失函数(二元交叉熵)的选择。训练循环运行 10 个 epoch,批次大小为 16,其中 20% 的数据被分配用于验证,确保在训练时间和模型性能之间进行合理的权衡。

7.4. 测试和可视化:

        该代码演示了模型对测试数据集进行预测的能力。可视化是模型评估的重要组成部分,我的方法有效地利用 Matplotlib 在地面实况掩码和预测掩码旁边显示随机测试图像。

        实现的肺区域分割模型在测试数据集上的准确率为 0.70。虽然该模型在识别胸部 X 射线图像中的肺部区域方面提供了相当高的准确性,但值得注意的是,预测的掩模在肺部区域内似乎是浅灰色的,这表明在准确描绘肺边界方面还有进一步改进的余地。为了解决这个问题,考虑了几种策略,包括使用更复杂的U-Net架构进行体验,应用数据增强技术,使用加权损失函数来解决类不平衡问题,实现学习速率调度,以及探索后处理方法。这些努力旨在提高模型的分割精度,并确保更精确地识别胸部 X 射线图像中的肺部区域。需要进一步的优化和微调,以达到肺区域分割所需的准确性水平。

7.5. 改进建议:

        为了进一步增强模型的泛化性,请考虑实施数据增强技术,例如旋转、翻转和亮度调整。这些技术可以提高对看不见的数据的性能。在训练过程中保存模型检查点的合并机制。这种做法可确保不会丢失宝贵的训练进度,从而轻松恢复模型或进行微调。在医学图像分析的背景下,使用适当的指标(如骰子系数、灵敏度、特异性和 ROC AUC)评估模型至关重要。这些指标提供了对模型性能的全面评估。如果数据集中存在类不平衡,则解决类不平衡问题至关重要。探索加权损失函数或数据重采样等技术,以减轻类不平衡对训练的影响。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1395147.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

web前端项目-中国象棋【附源码】

中国象棋 【中国象棋】是一款历史悠久、深受人们喜爱的策略类游戏。在Web前端技术中,我们可以使用HTML、CSS和JavaScript等语言来制作一款中国象棋游戏。玩家使用棋子(帅/相/士/炮/马/车/炮/卒)在棋盘上相互对弈,将对手的“帅”棋…

GIS复试Tips(特别是南师大)

注:本文仅个人观点,仅供参考 在这提前㊗️24年考南师大GISer成功上岸! 当然,考研是个考试,总有人顺利上岸,稳上岸或逆袭上岸,但可能也有人被刷,这是常态。 所以,㊗️你…

Linux网络编程(二-套接字)

目录 一、背景知识 1.1 端口号 1.2 网络字节序 1.3 地址转换函数 二、Socket简介 三、套接字相关的函数 3.1 socket() 3.2 bind() 3.3 connect() 3.4 listen() 3.5 accept() 3.6 read()/recv()/recvfrom() 3.7 send()/sendto() 3.8 close() 四、UPD客服/服务端实…

我用 ChatGPT 做了一次探索性数据分析,真的太太太实用了!

ChatGPT 经过短短1年时间的发展,其功能越来越强,现在已经是大多数企业和个人不可或缺的助手。特别是最新的 GPT-4 版本,专门在左边菜单栏给出了两个工具(一个是数据分析,另一个是根据文字描述生成图片)&…

1.12号网络

1 网络发展历史 1.1 APRAnet阶段 阿帕网,是Interne的最早雏形 不能互联不同类型的计算机和不同类型的操作系统 没有纠错功能 1.2 TCP/IP两个协议阶段 什么是协议 在计算机网络中,要做到有条不紊的交换数据,需要遵循一些事先约定好的规则…

(2023版)斯坦福CS231n学习笔记:DL与CV教程 (12) | 视觉模型可视化与可解释性(Visualizing and Understanding)

前言 📚 笔记专栏:斯坦福CS231N:面向视觉识别的卷积神经网络(23)🔗 课程链接:https://www.bilibili.com/video/BV1xV411R7i5💻 CS231n: 深度学习计算机视觉(2017&#xf…

Xline v0.6.1: 一个用于元数据管理的分布式KV存储

Xline是什么?我们为什么要做Xline? Xline是一个基于Curp协议的,用于管理元数据的分布式KV存储。现有的分布式KV存储大多采用Raft共识协议,需要两次RTT才能完成一次请求。当部署在单个数据中心时,节点之间的延迟较低&a…

将AI的潜能转化为人类的福祉

在这个技术迅速发展的时代,AI不仅是一项突破性的技术,更是人类未来的关键。作为一名AI训练师,我的目标不仅仅是开发先进的AI产品,更重要的是让这些产品服务于人类,改善人们的生活。 我相信,AI的真正价值在于…

1月下半笔记(个人向)

最近才开始看d2l(这种东西早该在两年前看的,拖到现在了) 为了做项目还得学一手OpenGL(被windows安装GLFW逼疯了) 1.15 打完ICPC EC final回来,也许可以出一篇博客写下简单的题解。 对蛋白质相似空间子结…

Liunx:线程控制

目录 创建线程:pthread_create(); 线程等待:pthread_join(); 线程退出:pthread_exit(); 线程取消:pthread_cancel() 说线程的时候说过,liunx没有选择单独定义线程的数据结构和适配算法,而是用轻量级进程…

阿里云ECS(CentOS镜像)安装docker

目录 1.前置条件 2.连接至ECS 3.yum软件包更新 4.安装docker前置所需软件包 5.添加docker 官方的 yum 软件源 6.安装docker 7.检测是否成功 8.配置阿里云镜像加速器 1.前置条件 在看本文前保证未安装过docker,或者安装过但是清理干净 如果多次安装失败过,…

基于FPGA的图像双边滤波实现,包括tb测试文件和MATLAB辅助验证

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 双边滤波数学模型 4.2 双边滤波的特性 4.3 FPGA实现架构 5.算法完整程序工程 1.算法运行效果图预览 将FPGA数据导入到matlab对比测试: 2.算法运行软件版本 vivado2019.2 …

Docker中创建并配置MySQL、nginx、redis等容器

Docker中安装并配置MySQL、nginx、redis等 文章目录 Docker中安装并配置MySQL、nginx、redis等一、创建nginx容器①:拉取镜像②:运行nginx镜像③:从nginx容器中映射nginx配置文件到本地④:重启nginx并重新配置nginx的挂载 二、创建…

微软与沃达丰签订10年合作,提供Copilot等生成式AI服务

1月16日,微软在官网宣布,与全球最大电信公司之一沃达丰(Vodafone)签订10年合作协议,将为3亿多企业、消费者提供生成式AI、云和数字服务等。 通过此次合作,沃达丰将利用微软的Copilot等生成式AI来改变客户、…

Android现代开发推荐 | Android Showcase 2.0

Android现代开发推荐 | Android Showcase 2.0 Android Showcase是一个完整的Android应用程序示例,它使用了现代的Android应用程序开发方法,集成了流行的开发工具、库和代码检查工具,以及强大的测试框架和持续集成(CI)…

Elastic 8.12:AI Assistant for Observability 正式发布,更新至 Apache Lucene 9.9

作者:来自 Elastic Brian Bergholm 今天,我们很高兴地宣布 Elastic 8.12 全面上市。 有哪些新的功能? 8.12 版本的两个最重要的组成部分包括 Elastic AI Assistant for Observability 的 正式发布版 和 Apache Lucene 9.9 的更新&#xff08…

vue2踩坑之项目:vue2+element实现前端导出

1.安装插件依赖 npm i --save xlsx0.17.0 file-saver2.0.5 2.单页面引入 前端导出插件 import FileSaver from "file-saver"; import * as XLSX from "xlsx"; //html <el-form-item><el-button type"primary" plain size"mini&quo…

ReactNative中样式与布局的书写

样式 const styles StyleSheet.create({container: {flex: 1,justifyContent: center,alignItems: center,backgroundColor: #F5FCFF,}, welcome: {fontSize: 20, textAlign: center,margin: 10, }, instructions: {textAlign: center,color: #333333,marginBottom: 5,}, …

webpack面试题学习

说说你对webpack的理解&#xff1f;解决了什么问题&#xff1f; 说说webpack的构建流程? 说说webpack中常见的Loader&#xff1f;解决了什么问题&#xff1f; 说说webpack中常见的Plugin&#xff1f;解决了什么问题&#xff1f; 说说Loader和Plugin的区别&#xff1f;编写Load…

【Git】常用的Git操作集合

常用的Git操作集合 1. 分支操作1.1 查看本地所有分支git branch 1.2 查看所有分支&#xff08;包含本地远程仓库&#xff09;git branch -a 1.3 切换分支git checkout test 2. 常用基本操作2.1 查看 git 各存储区内(文件)状态git status 2.2 查看工作区与暂存区文件差异git dif…