DENet:融合全局与局部,多模块策略,超越传统分割方法,提升青光眼筛查精度

DENet:融合全局与局部,多模块策略,超越传统分割方法,提升青光眼筛查精度

    • 提出背景
    • 精细拆解
      • A. 全局视网膜图像层面
      • B. 视盘区域层面

 


提出背景

论文:https://arxiv.org/pdf/1805.07549

代码:https://github.com/HzFu/DENet_GlaucomaScreen

青光眼是导致失明的主要眼疾之一,预计到2020年将影响约8000万人。

与其他如白内障和近视等眼疾不同,青光眼造成的视力丧失是不可逆的。

因此,早期筛查对于保留视力和维持生活质量至关重要。

临床上,筛查青光眼通常采用三种检查:眼压测量、基于功能的视野测试和视神经头(ONH)评估。

  • 眼压是一个重要的风险因素,但对于许多正常眼压的青光眼患者来说,这还不够具体,不能作为有效的检测工具
  • 基于功能的视野测试需要专门的设备,而这些设备通常不在初级保健诊所中
  • 早期青光眼往往没有视觉症状,因此ONH评估是一种早期检测青光眼的便捷方法,目前主要由训练有素的青光眼专家执行。

但手动ONH评估耗时且成本高昂,因此需要一种自动方法进行筛查。

一种常见的ONH评估方法是基于临床参数的测量,例如垂直杯盘比(CDR)。

CDR是通过垂直杯直径(VCD)与垂直盘直径(VDD)的比率计算的,通常较大的CDR表示更高的青光眼风险。

自动筛查方法包括先分割主要结构(如视盘和视杯),然后计算临床测量值来识别青光眼病例。

  • 之前的方法首先分割主要结构,然后计算临床测量值来检测和筛查青光眼。
  • 然而,这些基于测量的方法严重依赖于分割的准确性 + 容易受到病理性区域和低对比度质量的影响 + 忽视了多种视觉特征。

此外,深度学习技术已被引入用于分割视网膜图像,如使用多标签深度网络联合分割光学盘和杯,然后计算CDR以验证青光眼检测,但这些方法过于依赖分割的准确性。

本文提出了 DENet 的青光眼筛查网络,该网络具有以下特点:

    1. Disc-aware:鉴于青光眼通常与眼压升高相关,损害视神经(即视盘),因此网络应突出视盘区域的上下文信息。
    1. 多级:大多数现有的深度学习网络直接关注全局图像,并使用池化层实现分层表示。

    然而,下采样可能导致细节丢失,而这些细节对于识别微妙的病理变化很重要。

    相比之下,局部区域尺度保留了精细表示,但忽略了全局结构信息。结合局部和全局上下文可以有效提高性能。

    1. 多模块:在临床试验中,精细测量常用于评估疾病指标。

    几何变换可以改变病理区域的形态,增强检测效果。

    DENet 包含四个对应于视网膜图像不同层次和模块的深度流,分别代表全局图像、分割引导网络、局部盘区流和极坐标变换流。

    这些流的输出概率被融合以获得最终的筛查结果。

DENet 是一种专为青光眼筛查设计的深度学习网络,它针对青光眼的特点进行了优化。

假设我们有一个视网膜图像,其中包含眼睛的各个部分,如视盘、血管和其他重要结构。

青光眼的早期迹象可能在视盘区域显示为微小的变化。

  1. Disc-aware

    • 网络首先通过特化的注意力机制聚焦于视盘区域。
    • 这相当于在处理图像时,网络会特别关注视盘及其周围区域,提取与青光眼相关的上下文信息。
  2. 多级

    • DENet使用不同的分辨率层次来捕获图像的细节。
    • 在高层次,全局图像信息被保留,用于理解整个视网膜的大局。
    • 在低层次,网络通过局部区域尺度保持高分辨率,以检测微小的病理变化,如视盘边缘的细微改变。
  3. 多模块

    • 全局图像流:处理整个视网膜图像,提供整体结构信息。
    • 分割引导网络:帮助精确地分割出视盘区域,以便更详细地分析。
    • 局部盘区流:专注于视盘及其附近的细节,捕捉局部特征。
    • 极坐标变换流:通过对视盘区域应用极坐标变换,网络可以适应形状变化,增强病灶检测能力。

最后,这四个流的输出被融合在一起,生成一个综合的概率分数,指示图像中是否存在青光眼的迹象。

这样,DENet结合了全局和局部信息,提高了对微妙病理变化的识别能力,从而提高筛查的准确性。

 

DENet 是一个全自动系统,包括视盘检测和青光眼筛查,使用不同级别的分层表示(全局图像和盘区)和模块(笛卡尔和极坐标)。

实验表明,我们的方法在青光眼筛查方面优于现有方法。

本文的主要贡献包括:

    1. 提出了一种考虑视网膜图像不同层次和模块的青光眼筛查的集成深度网络
    1. 提供了一个新颖的分割引导网络,用于定位视盘区域并生成嵌入了视盘分割表示的筛查结果
    1. 构建了一个新的数据集,称为新加坡印度眼研究(SINDI)数据集,包含5783只眼睛的图像,用于评估青光眼筛查。

精细拆解

DENet 是一种青光眼筛查网络,它考虑了视网膜图像的两个层面:全局图像和局部视盘区域。

在这里插入图片描述
图显示了DENet的整体架构,它包含四个主要流程:

  • 全局图像流程:处理整个视网膜图像(称为“输入眼底图像”),以学习全局特征。
  • 分割引导网络:一个执行视盘定位的网络,并通过识别视网膜图像中的视盘区域来辅助青光眼筛查。
  • 视盘区域流程:专注于从全局图像中裁剪出的局部视盘区域(由分割网络引导)进行详细分析。
  • 视盘极坐标流程:对裁剪的视盘区域应用极坐标变换,以增强对视盘的表征,进一步分析。

这四个流程的结果随后在“流程集成”过程中结合起来,得出最终的“筛查结果”,表明是否存在青光眼。

A. 全局视网膜图像层面

在DENet中,有两个流用于学习全局视网膜图像的表示:

  1. 标准分类网络:使用残差网络(ResNet)作为基础,通过短路连接解决深度网络中的梯度消失问题。

    这里使用ResNet-50作为主干模型,直接学习整个视网膜图像的全局表示,包括5个下采样块,接着是全局最大池化层和全连接(FC)层,用于青光眼筛查。输入图像被调整为224x224像素,以利用预训练模型初始化网络。

  2. 分割引导网络:定位视盘区域并基于视盘分割表示产生检测结果。该网络基于U形卷积网络(U-Net),用于生物医学图像分割。

分割引导网络:展示了一个U形卷积网络结构,包含各种层和操作,如卷积(Conv)、最大池化、Sigmoid激活函数和平均池化。它还包括视盘定位组件,生成表示视网膜图像中视盘位置的二值图。

它由编码器路径和解码器路径组成,每个编码器路径执行滤波器银行的卷积层以生成一组编码特征图,使用ReLU激活函数。

解码器路径也使用卷积层输出解码特征图。

跳跃连接将编码器路径的相应特征图传递并与其上采样的解码特征图连接。

最后,一个分类器使用1x1卷积层和Sigmoid激活进行像素级分类,生成视盘概率图。

此外,从U形网络的鞍点(尺寸最小,通道数最高)扩展一个新的分支,该分支通过平均池化和展平层作为隐式向量。

然后连接两个全连接层以产生青光眼分类概率。

这个流程将分割引导的表示嵌入到U形网络的解码器路径上的卷积滤波器中。

输入图像被调整为640x640像素,确保有足够的细节准确地定位视盘区域。

在这个全局图像层面,使用了两个损失函数:二元交叉熵损失函数用于青光眼检测层,另一个是Dice系数损失函数用于评估视盘分割。

B. 视盘区域层面

网络的第二层基于局部视盘区域,这是根据之前的分割引导网络裁剪的。

局部视盘区域保留了更高分辨率的更多详细信息,有利于学习精细表示。

网络中使用两个本地流来学习局部视盘区域的表示:

  1. 基于ResNet的标准分类网络:在原始局部视盘区域上操作。
  2. 视盘极坐标变换流:应用像素级极坐标变换,将原始图像转换到极坐标系统。这种变换可以扩大杯状区域,显示更多细节,并且对数据增强具有不变性。

在这里插入图片描述
上图显示了如何将视网膜图像从笛卡尔坐标系(左图)转换为极坐标系(右图)。

这种转换用于更好地分析视盘区域,通过将圆形的视盘区域拉伸成矩形形式,从而能更有效地处理检测与青光眼相关的视盘和杯状区域的形状和结构变化。

这两个局部区域流的输入图像被调整为224x224像素,使用ResNet模型的预训练参数初始化,并使用二元交叉熵损失函数进行青光眼检测。

在训练过程中,分割引导模型分为两个阶段:

  • 首先,仅用Dice系数损失训练U形分割网络进行视盘检测;
  • 然后,冻结CNN层的参数,使用青光眼检测训练数据训练全连接层。
  • 采用分离阶段而不是单阶段的多任务训练,因为这可以增加网络的多样性,利用不同级别的标签数据(像素级的视盘分割比图像级的青光眼检测更昂贵),并且由于网络提取的视盘区域影响后续流,所以视盘检测的准确性更重要。

 

子解法1:全局图像水平分析

  • 使用ResNet-50作为基础模型,学习整体视网膜图像的粗略结构。
  • 输入图像调整为224x224像素,利用预训练模型初始化。
  • 包含一个标准分类网络,用于青光眼筛查。
  • 另一个分割引导网络,定位视盘区域并基于分割表示进行检测。

子解法2:分割引导网络

  • 基于U-Net架构,实现高效全卷积神经网络进行生物医学图像分割。
  • 包含编码器和解码器路径,使用跳跃连接合并特征。
  • 输出视盘概率图,同时通过一个额外的分支进行青光眼分类。

子解法3:局部视盘区域水平分析

  • 在裁剪出的视盘区域上应用两个本地流。
  • 一个流基于ResNet进行标准分类。
  • 另一个流使用像素级极坐标变换,增强细节。

子解法4:极坐标变换

  • 转换原图像到极坐标系,放大杯状区域,展示更多细节。
  • 提供数据增强不变性,如平移、缩放和水平位移。

子解法5:损失函数结合

  • 使用二元交叉熵损失函数处理青光眼检测。
  • 应用Dice系数损失函数评估视盘分割。

训练策略:

  • 分两阶段训练分割引导模型:先训练U-Net进行视盘分割,然后冻结CNN层,训练全连接层进行分类。
  • 分阶段训练以利用不同数据集和配置,提高网络多样性,优先保证视盘检测的准确性。

 

例子:在青光眼早期检测中,一名患者进行了视网膜扫描。DENet系统开始分析图像:

  1. 全局图像水平分析:首先,ResNet-50模型接收到224x224像素的预处理图像。模型学习整体视网膜结构,初步判断是否存在异常。

  2. 分割引导网络:U-Net架构接着被用来精确定位视盘的位置,生成一个概率图。同时,该网络的另一个分支输出初步的青光眼分类结果。

  3. 局部视盘区域分析:在识别出的视盘区域内,系统创建两个局部流。一个流继续使用ResNet对局部特征进行深入分析,另一个流将视盘区域转换成极坐标,以便更好地识别杯状结构的微小变化。

  4. 极坐标变换:在极坐标系中,杯状区域的细节得到放大,使得算法能更敏感地检测微小的形态变化,这些变化可能是青光眼的早期迹象。

  5. 损失函数结合:在训练过程中,二元交叉熵损失用于优化青光眼分类,而Dice系数损失则帮助改进视盘分割的准确性。

  6. 训练策略:分割引导模型的训练分阶段进行,首先单独训练U-Net,然后在保持CNN层权重不变的情况下,训练全连接层以改善分类性能。这种分阶段训练确保了模型在各个层次都能有效地学习和改进。

最终,DENet系统根据这些分析结果,为医生提供一个关于患者是否患有青光眼的可靠预测,帮助及时采取治疗措施。

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

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

相关文章

探索HTML5 Geolocation:精准定位网页的新纪元

在互联网技术日新月异的今天,地理定位已经成为众多Web应用不可或缺的一部分,而HTML5 Geolocation API正是这一领域的关键技术。本文将深入剖析HTML5 Geolocation API的工作原理、使用方法,并通过实战代码示例,带你领略其在现代网页…

C++ 并发编程指南(13)线程池原理与实践 | 13.1、实现原理

文章目录 一、线程池原理与实践1、线程池的概念2、线程创建和销毁的开销有哪些?2.1、系统资源消耗2.2、初始化与清理2.3、上下文切换2.4、性能影响2.5、线程池的优势总结 3、线程池的机制 前言: 在多线程编程中,线程池是一种常用的技术&#…

串联式固定测斜仪无需钢丝绳、安装方便、可回收利用边坡基坑矿山地灾常用

一、固定式测斜仪的简介 固定测斜仪是一种用于长期自动监测各种结构物的深层水平位移的设备,获取土体内部的位移变化趋势,监测数据上传至安锐测控云平台,用户即可实时查看结构深层水平位移数据,实时预警,保障结构的安全…

python最新ARIMA模型预测未来汽车销售额

用新版本ARIMA编译运行时会出现一些问题 如ARIMA模型,用BIC矩阵确定p、q参数的时候BIC矩阵输出全是None 如model.summary2()是没有的 arima.py # -*- coding: utf-8 -*-import pandas as pd import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] = [SimHei…

小炒 20240606

1 一些人做“人上人”的念头是从小就被植入到脑子里的,凡事都要和人比较,只有在比较中找到优越感,高人一头才能显得自己优秀。 比不上行内精英,就去和部门同事比,比不过同事,就去和亲戚、家人比&#xff…

实时跨境电商数据监控:快速响应市场变化与竞争动态

在电商领域,市场变化与竞争动态无时无刻不在影响着商家的业务决策。实时数据监控作为一种高效的工具,能够帮助电商平台快速响应这些变化,从而保持竞争优势。实时数据分析涵盖了从价格动态监控到客户行为分析等多个方面,以下将详细…

BeatGAN:使用对抗生成时间序列的异常心律检测

BeatGAN:使用对抗生成时间序列的异常心律检测 原创 小王搬运工 时序课堂 2024-06-07 14:28 四川 论文地址:https://dl.acm.org/doi/abs/10.5555/3367471.3367658 论文源码:https://github.com/Vniex/BeatGAN 期刊:IJCAI19: Pro…

特征提取(Feature Extraction)评估特征对模型性能的实际贡献(六)

为了评估特征对模型性能的实际贡献,我们可以使用以下几种方法和标准来衡量每个特征在模型中的重要性和影响。这些方法和标准不仅有助于识别对模型预测能力最有贡献的特征,还能帮助我们优化模型性能。下面详细介绍一些常用的评估方法,并给出相…

视觉SLAM十四讲:从理论到实践(Chapter9:后端1)

前言 学习笔记,仅供学习,不做商用,如有侵权,联系我删除即可 一、目标 1.理解后端的概念。 2.理解以EKF为代表的滤波器后端的工作原理。 3.理解非线性优化的后端,明白稀疏性是如何利用的。 4.使用g2o和Ceres实际操作…

浅浅写一个Word、PowerPoint、Excel文档转PDF工具

前言 最近在搞知识库,需要把各种 Word、PowerPoint、Excel 文件转换成 PDF 文件,不然 Word 中的表格中的文字提取会出现一些问题;使用 Office 或者 WPS 将大量文件转换成 PDF 需要频繁重复打开文件,点击保存为PDF,然后…

谁懂啊!第一次用AI绘画做表情包,居然直接爆收入了!

大家好,我是设计师阿威 我的第一套表情包上周六上午11点终于在微信的表情商店上架啦! 为什么说“终于”? 那是因为背后是无数次的努力–>被退回–>反复修改–>再提交–>再被退回–>再精心修改–>终于通过啦!…

服务器硬件介绍(1)

硬件设备 服务器:数据中心的核心组件是服务器,它提供计算能力和数据存储解决方案。服务器通常配备多核处理器、大量RAM和高速存储系统,以满足高并发处理和大数据存储的需求。工作站:工作站是专业用户执行复杂计算任务和数据处理的…

电脑知识 如何看懂串口通信协议(程序员视角)

目录 前言 一、串口文档 二、明确身份 三、串口设置 四、看懂命令格式 五、看懂发送命令的格式 1.帧头和帧尾 2.帧内数据长度 3.帧内数据/具体命令 4.整体命令 5.真正的命令字和命令值 六、第一个案例 1.发送命令 2.雷达的回答 七、作者的话 前言 用一个案例&#…

提升学校管理效率,智慧校园解决方案来袭

你是不是曾为学校管理效率低下而困扰?是不是对传统的教育模式感到力不从心?现在,一个划时代的解决方案来啦——智慧校园! 随着科技的不断发展,智慧校园正逐渐改变着学校的管理方式。通过将信息技术与教育相结合&#x…

照片数据恢复,6个策略轻松恢复!

“我在电脑上保存了很多照片,在清理电脑时一不小心误删了,现在完全没办法将它们找回,大家有什么方法吗?希望给我一些建议。” 在数字时代,照片成为了我们记录生活、珍藏回忆的重要载体。无论是旅行中的风景照、家庭聚会…

Spring中的事务传递性小记

在Spring中,事务的传递性主要由Propagation属性控制,它定义了当方法被其他方法调用时,应该如何处理事务。Propagation属性有以下几种值: PROPAGATION_REQUIRED:如果当前没有事务,就新建一个事务&#xff0…

聊一聊资源监控

聊一聊资源监控 为什么要进行资源监控? 为什么在稳定性测试的时候需要进行相应的资源监控呢?简单来说因为我们需要知道在程序运行的时候能够主动观察到资源的消耗情况以便及时发现问题 怎么进行监控? 目前我们常用对资源的监控可以分为如…

Spring Boot 项目打包 + Shell 脚本部署详细总结

Spring Boot 项目打包 Shell 脚本部署详细总结 在现代企业应用开发中,Spring Boot项目的自动化部署是一个非常重要的环节。通过自动化部署,我们可以减少人为操作带来的错误,提高部署效率和可靠性。本文将详细介绍如何将Spring Boot项目打包…

为什么C#越学越陌生,搞那么多奇怪的东西?

绝大多数编程语言,除了基础语法,其他的都是可选的工具,可用可不用,顺手你就用,不顺手就别用。 刚好我有一些资料,是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」, 点…

啥是多边央行数字货币桥项目(个人技术理解)

(1)是啥:是基于CBDC(央行发行的电子货币)的跨境支付互联互通的一种尝试,是点对点的交易。交易时商业银行作为同步节点(点对点转账中的点),央行作为共识节点(点…