【论文精读】ISBI 2022 - Retinal Vessel Segmentation with Pixel-wise Adaptive Filters

news2024/11/23 12:16:20

【论文精读】ISBI 2022 - Retinal Vessel Segmentation with Pixel-wise Adaptive Filters

【论文原文】:Retinal Vessel Segmentation with Pixel-wise Adaptive Filters

【作者信息】:Li, Mingxing and Zhou, Shenglong and Chen, Chang and Zhang, Yueyi and Liu, Dong and Xiong, Zhiwei

论文:https://arxiv.org/pdf/2202.01782.pdf
代码:https://github.com/Limingxing00/Retinal-Vessel-Segmentation-ISBI2022

博主关键词:语义分割,语义强化,视网膜血管

推荐论文:无

摘要

由于视网膜血管的纹理复杂和成像对比度低,导致精确的视网膜血管分割具有挑战性。以前的方法通常通过级联多个深度网络来细化分割结果,这既耗时又低效。在本文中,我们提出了两种新的方法来应对这些挑战。首先,我们设计了一个轻量级模块,称为多尺度残差相似性聚集(multi-scale residual similarity gathering, MRSG),以生成逐像素自适应滤波器(point-wise adaptive filters, PA-Filter)。与级联多个深度网络不同,仅有一个PA-Filter层就可以提高分割结果。其次,我们引入了一种响应线索擦除(response cue erasing, RCE)策略来提高分割精度。在DRIVE、CHASE_DB1和STARE数据集上的实验结果表明,我们提出的方法在保持小型结构的同时优于模型效果。

1、简介

语义分割(Semantic Segmentation)是生物医学图像分析的一项基本任务,它可以帮助医生进行诊断,并帮助生物学家分析细胞形态。近年来,卷积神经网络在生物医学图像分割方面表现出了显著的效果。其中,U-Net[1]是应用最广泛的语义分割网络,它由一个用于提取图像特征的编码器和一个用于重构分割结果的解码器组成。U-Net++[2]重新设计了解码器中的跳跃连接,改进了特征融合和表示。

对于视网膜血管的分割,以前的方法大致可以分为三类。第一类设计拓扑感知(topology-aware)损失函数,以帮助网络识别关键结构[3,4]。第二类利用多个深度网络作为细化模块来细化分割结果[5,6,7]。第三类增强了单个网络获得更丰富、更复杂特征图的能力,例如使用注意力机制的特征图[8,9]。本文提出的方法属于第二类。尽管第二类已经具有令人满意的结果,但存在深度网络耗时且效率低下的问题。

为此,我们提出了一种方法,只使用一层像素自适应滤波器(PA-Filters)来细化分割结果,而不是使用深度网络。为了学习PA-Filters,我们提出了一个轻量级模块,称为多尺度残差相似性聚集(MRSG)。对于初始分割图上的每个位置,MRSG生成唯一的PA-Filters。也就是说,与传统的卷积层不同,所设计的PA-Filters不共享权重来更好地捕捉局部区域的纹理。同时,我们提出了一种响应线索擦除(RCE)策略,通过辅助分支实现,以进一步提高分割精度。RCE负责根据主分支的输出擦除输入图像上置信度最高像素的相应位置。我们设计了一个正则化损失来控制双分支的一致性,这使得网络更加鲁棒。在三个具有代表性的视网膜血管分割数据集(即DRIVE、CHASE_DB1和STARE)上进行的实验验证了我们的高效网络实现了最先进的性能。

2、方法

2.1 总览

如图1所示,在训练阶段,网络中有两个分支,主分支和辅助分支,这两个分支的权重是共享的。唯一的区别是辅助分支的输入图像是通过RCE策略处理的。以主分支为例,输入图像 X ∈ R 3 × H × W X \in \mathbb{R}^{3×H×W} XR3×H×W通过U-Net骨干网络,得到粗分割图 Y ~ ( i ) ( i = 1 , 2 ) \tilde{Y}^{(i)}(i=1,2) Y~(i)(i=1,2)。然后MRSG提取粗分割图和输入图像,生成大小为 D × D D×D D×D H × W H×W H×W PA-Filters K K K,其中 D D D是超参数。接下来,将PA-Filters应用于粗略分割图上的相应局部区域,以获得最终分割图 Y ( i ) Y^{(i)} Y(i)。在测试阶段,我们只推断主分支。

2.2 U-Net骨干网络

我们采用U-Net作为骨干网络 B B B。给定 X X X T ( X ) T(X) T(X),我们可以获得粗分割映射 Y ~ ( i ) ∈ R 1 × H × W ( i = 1 , 2 ) \tilde{Y}^{(i)} \in \mathbb{R}^{1 \times H \times W}(i=1,2) Y~(i)R1×H×W(i=1,2) T ( ⋅ ) T(\cdot) T()表示RCE运算。 Y ~ ( i ) \tilde{Y}^{(i)} Y~(i)的结算将如下所示:
Y ~ ( 1 ) = B ( X , θ ) ; Y ~ ( 2 ) = B ( T ( X ) , θ ) ; (1) \tilde{Y}^{(1)}=B(X,\theta);\tilde{Y}^{(2)}=B(T(X),\theta); \tag{1} Y~(1)=B(X,θ);Y~(2)=B(T(X),θ);(1)
θ \theta θ是U-Net的参数。在这里,我们将粗略分割图的通道数设置为1,而不是独热码,这便于以下过程。

2.3 多尺度残差相似性聚集

受先前工作[10,11]的启发,我们采用相似性体积来聚集相邻像素的上下文信息。如图2所示,对于 Y ~ ( i ) \tilde{Y}^{(i)} Y~(i),我们通过每个像素 P c e n t e r P_{center} Pcenter与其相邻的 d × d d×d d×d像素 P j P_j Pj之间的元素相乘,计算相似度值 P j ′ P_j' Pj,公式如下:
P j ′ = P j × P c e n t e r (2) P_j'=P_j \times P_{center} \tag{2} Pj=Pj×Pcenter(2)

其中 j j j表示 d × d d×d d×d区域的坐标。因此,对于每个像素,我们都可以获得局部表示。然后,我们沿着通道维度连接局部表示,以获得相似性体积 S d ( Y ~ ( i ) ) ∈ R d 2 × H × W S^d(\tilde{Y}^{(i)}) \in \mathbb{R}^{d^2×H×W} Sd(Y~(i))Rd2×H×W

此外,受ACNet[12]的启发,它表明骨架比正常内核中的角点更重要,我们发现中心像素周围更近的像素更重要。因此,我们提出了一种多尺度残差方案,该方案添加了 S d ( Y ~ ( i ) ) S^d(\tilde{Y}^{(i)}) Sd(Y~(i))的残差信息,以获得最终的相似性体积 S d ^ ( Y ~ ( i ) ) \hat {S^d} (\tilde{Y}^{(i)}) Sd^(Y~(i))。我们利用残差信息的相似性体积和较小的 d d d,并引入瓶颈式操作 f f f(卷积层、BatchNorm层和ReLU层)来总结不同的体积。基于相似性体积之间的残差求和, S D ^ ( Y ~ ( i ) ) \hat {S^D} (\tilde{Y}^{(i)}) SD^(Y~(i))可以从多尺度过程 S 3 ( Y ~ ( i ) ) , S 5 ( Y ~ ( i ) ) , … , S D ( Y ~ ( i ) ) {S^3} (\tilde{Y}^{(i)}),{S^5} (\tilde{Y}^{(i)}),\ldots,{S^D} (\tilde{Y}^{(i)}) S3(Y~(i)),S5(Y~(i)),,SD(Y~(i))中构建。我们展示了整个过程,并以方程3中的 D = 7 D=7 D=7为例:
S 7 ^ ( Y ~ ( i ) ) = S 7 ( Y ~ ( i ) ) + f ( S 5 ^ ( Y ~ ( i ) ) ) = S 7 ( Y ~ ( i ) ) + f ( S 5 ( Y ~ ( i ) ) + S 3 ^ ( Y ~ ( i ) ) ) (3) \hat {S^7} (\tilde{Y}^{(i)})={S^7} (\tilde{Y}^{(i)})+f(\hat {S^5} (\tilde{Y}^{(i)}))={S^7} (\tilde{Y}^{(i)})+f({S^5} (\tilde{Y}^{(i)})+\hat {S^3} (\tilde{Y}^{(i)})) \tag{3} S7^(Y~(i))=S7(Y~(i))+f(S5^(Y~(i)))=S7(Y~(i))+f(S5(Y~(i))+S3^(Y~(i)))(3)
在获得 S D ^ ( Y ~ ( i ) ) \hat {S^D} (\tilde{Y}^{(i)}) SD^(Y~(i))后,我们将 S D ^ ( Y ~ ( i ) ) ∈ R D 2 × H × W \hat {S^D} (\tilde{Y}^{(i)}) \in \mathbb{R}^{D^2 \times H \times W} SD^(Y~(i))RD2×H×W重塑为大小为 D × D D×D D×D H × W H×W H×W PA-Filters。然后将PA-Filters应用于粗分割图上的相应局部区域,以获得最终的分割图 Y ( i ) Y^{(i)} Y(i)

2.4 响应线索擦除

为了进一步挖掘网络的潜力,我们添加了一个辅助分支,并对辅助分支的输入图像应用RCE策略。如图1所示,我们采用RCE来生成擦除区域,并采用正则化损失来控制双分支的一致性。RCE有两个步骤。首先,选择空间位置集 { y j ( 1 ) } , j ∈ [ 0 , k − 1 ] \{y_j^{(1)}\}, j \in [0,k-1] {yj(1)},j[0,k1],对应于粗略分割图 Y ~ ( 1 ) \tilde{Y}^{(1)} Y~(1) k k k个最高置信度像素,其中考虑了前景和背景。第二,擦除输入图像的空间位置集 { y j ( 1 ) } \{y_j^{(1)} \} {yj(1)}。与不能捕获结构的随机擦除不同,RCE在输入图像上生成依赖于结构的掩码。

2.5 总体的损失函数

我们选择计算标签和主分支输出之间差异的dice loss[13]作为分割损失 L S L_S LS。此外,我们提出了对偶分支的正则化损失 L R = ∥ Y ( 1 ) − Y ( 2 ) ∥ 2 L_R=\parallel Y^{(1)}−Y^{(2)} \parallel _2 LR=∥Y(1)Y(2)2,这可以约束两个输出的一致性。总损失 L L L计算为 L = L S + λ L R L=L_S+λL_R L=LS+λLR

3、实验和分析

3.1 数据集

我们在三个主流的视网膜血管分割数据集DRIVE、CHASE_DB1和STARE上评估了所提出的方法。具体而言,DRIVE[14]由40张来自糖尿病视网膜病变筛查项目的 565 × 584 565×584 565×584大小的视网膜图像组成。按照官方的划分,训练集有20张图像,测试集也有20张图像。CHASE_DB1[15]包含28张大小为999×960的视网膜图像。STARE[16]包含20张尺寸为700×605的视网膜图像。我们遵循[6]中方法的设置,将前20/16个图像划分为训练集,将后8/4个图像分别划分为这两个数据集的测试集。

3.2 实验细节

在实验中,我们使用Pytorch(版本1.1)来实现所提出的方法。NVIDIA GTX 1080Ti用于训练和测试。在训练阶段,我们只使用翻转数据增强。我们使用Adam将损失降至最低,Adam的学习率为0.005,并且在所有数据集上都是固定的。我们采用统一的patch训练策略,将patch大小设置为输入图像大小的0.3倍。因此,DRIVE、CHASE_DB1和STARE数据集的采样patch大小分别为169×175、299×288和210×181。我们在这三个数据集上设置了batch_size为4和最大迭代次数6000。为了平衡性能和计算负担,我们在实验中选择 D = 5 D=5 D=5作为PA-Filters。我们根据不同的数据集选择合适的超参数 k k k λ λ λ

3.3 定量和定性分析

我们以F1得分(F1)、曲线下面积(AUC)、准确性(ACC)为指标,通过开源进行评估[8]。表1总结了DRIVE、CHASE_DB1和STARE数据集上每种最先进(SOTA)方法的参数和指标。我们可以观察到,所提出的方法在所有三个数据集上都具有最好的F1分数,超过了其他SOTA方法。尽管AG-Net在CHASE DB1数据集上具有最好的AUC,但所提出的方法的参数比AG-Net小4倍,这表明了所提出方法的紧凑性。我们还在图3中显示了三个数据集的分割结果。与其他SOTA方法相比,我们的分割结果具有更详细的纹理和完整的结构。

3.4 消融实验

为了验证所提出方法中每个组件的贡献,我们进行了消融研究。如表2所示,我们评估了PA-Filter和RCE策略的有效性。当我们选择大小为5×5的PA-Filters时,网络的参数仅增加0.012MB,但F1分数增加3.1%。对于PA-Filters,我们在没有RCE策略的情况下评估不同内核大小的影响。如表3所示,以需要更大的GPU内存为代价,更大的 D D D实现了更好的性能。尽管 D = 7 / 9 D=7/9 D=7/9具有更好的性能,但它超过了CHASE_DB1上固定设置(第3.2节)的内存。为了一致性,我们的实验是基于 D = 5 D=5 D=5

3.5 我们方法的可解释性

在训练阶段,我们没有对PA-Filters的生成进行监督。如图4所示,PA-Filters在中心像素处学习隐含地重建视网膜血管的纹理,而不是局部分割结果。以图4第一列的局部patch为例,从中心点学习的PA-Filters与条纹相似。请注意,中心点位于视网膜血管的边界上。所学习的PA滤波器隐式学习纹理,这使得粗分割图关注血管边界。因此,如图5所示,PA-Filters可以仅使用一层来细化粗略分割结果。

4、总结

在本文中,我们提出了用于视网膜血管分割的PA-Filters和RCE策略。具体来说,我们首先利用U-Net主干来获得粗略的分割图,在此基础上生成PA-Filters。我们设计了一个MRSG模块来生成用于细化的PA-Filters。此外,还提出了一种RCE策略,以进一步提高性能。在三个具有代表性的视网膜血管数据集(DRIVE、CHASE_DB1和STARE)上的实验结果证明了所提出方法的优越性。

【论文速递 | 精选】

论坛地址:https://bbs.csdn.net/forums/paper

最近工作

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

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

相关文章

【Linux】线程-线程控制

线程控制 线程控制线程创建线程终止线程等待分离线程 线程控制 使用线程需要注意的是,需要引入头文件pthread.h,并且在编译的时候,需要使用-lpthread 线程创建 int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*…

QT中TCP的学习

文章目录 qt中TCP的实现 qt中TCP的实现 学习视频 QT中可以通过TCP协议让服务器和客户端之间行通信。服务器和客户端的具体流程 下方的信号都是系统提供的,我们只需要写相应的槽函数 A、服务器: 创建QTcpServer对象启动服务器(监听&…

Flutter ListView组件详解

今天是2023年4月24日 今天重新复习了一下关于ListView的内容,现在就重新整理一下关于ListView的内容和理解 : (1)ListView和Column之间有什么区别? 在我理解中ListView和Column都是可以有很多子组件的组件,它们之间区别在于它们排列的形式和…

python实现AI写歌词GUI版本【文末源码】

**引言:**自然语言处理作为人工智能的一个重要分支,在我们的生活中得到了广泛应用。其中RNN算法作为自然语言处理的经典算法之一,是文本生成的重要手段。而今天我们就将利用RNN算法建立一个写歌词的软件。其中的界面如下: RNN指的…

使用binding时,LayoutSubscribeFragmentBinding报错

LayoutRecommendFragmentBinding是一个DataBinding类,它由编译器自动生成,用于访问布局文件中的视图。如果你在代码中看到LayoutRecommendFragmentBinding报红(提示未解析的引用),可能有以下原因: 1. 检查…

Docker 的数据管理(dockerfile)

Docker 的数据管理(dockerfile) 管理 Docker 容器中数据数据卷数据卷容器端口映射 容器互联(使用centos镜像)Docker 镜像的创建1.基于现有镜像创建2.基于本地模板创建3.基于Dockerfile 创建镜像…

Android主流网络请求开源库的对比

目录 一、为什么要用网络请求开源库? 网络请求开源库是一个将网络请求的相关功能封装好的类库 没有网络请求框架之前 App想与服务器进行网络请求交互是一件很痛苦的事:因为Android的主线程不能进行网络请求,需另开1个线程请求、考虑到线程池…

软件工程开发文档写作教程(03)—开发文档的必备条件

本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl本文参考资料:电子工业出版社《软件文档写作教程》 马平,黄冬梅编著 必备条件概述 软件系统配备软件文档不仅对于公司非常有益,而且也能够让客户从中…

【Linux】【配置】网络连接

NetworkManager介绍 NetworkManager 是一个在 Linux 系统上管理网络连接的系统服务和工具。它可以自动配置和管理有线、无线、移动宽带和虚拟专用网络 (VPN) 连接,以及其他类型的网络连接。 NetworkManager 提供了一种简单且易于使用的方法来管理网络连接&#xff…

JSP、JSTL标签

<!-- JSTL的表达式的依赖--><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version></dependency><!--Standard标签库--><dependency><groupId>java…

QGroundControl之安装调试

QGroundControl之安装调试 1. 源由2. 问题汇总2.1 摄像头播放问题2.2 Windows电脑录像和拍照保存位置2.3 Android设备录像和拍照保存位置 3. 打包资料4. 附录-QGroundControl-Video Streaming5. 附录-QGroundControl效果图6. 参考资料 1. 源由 开源软件的好处就是免费&#xf…

数字政府智慧政务一网通办解决方案2022(ppt可编辑)

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用&#xff0c;如有侵权请联系删除。 建设成效 让政务服务全流程更“好办、智办” 智慧政务“111”架构 服务门户 统一入口、多端同步&#xff0c;一网融合、数据同源 服务门户 智能客服、智能问答、智能外呼实现…

2023一网通办一网统管一码互联一网共治建设方案(PPT可编辑)

本资料来源公开网络&#xff0c;仅供个人学习&#xff0c;请勿商用&#xff0c;如有侵权请联系删除。 智慧城市基础平台的定位 智慧城市各模块的纵向关系 智慧城市-数据中枢整体架构 数据中枢在智慧城市定位 数据中枢定位1、数据中枢是智慧城市基础平台的核心组成部分&#x…

虚拟化技术 — VirtIO 虚拟设备接口标准

目录 文章目录 目录VirtIOVirtIO 虚拟设备接口标准VirtIO 的前后端分层架构标准VirtIO 的数控路径分离架构标准VirtIO 的传输层标准 VirtIO 标准在 Linux 中的实现 VirtIO VirtIO 由 Rusty Russell 开发&#xff0c;最初是为了支持自己开发的 lguest Hypervisor&#xff0c;其…

对象存储之SeaweedFS简介及与MinIO的对比

什么是SeaweedFS&#xff1f; SeaweedFS架构&#xff1a; master service【主服务】和Volume service【卷服务】一起提供分布式对象存储服务&#xff0c;支持用户配置数据的复制和冗余策略。可选的Filer service【过滤器】和S3 service【S3服务】是对象存储之上的附加层&#x…

量子力学 学习

对于同一个竖直向上量子比特&#xff0c;不对他进行任何的干扰&#xff0c;进行第一次水平测试实验会随机得到一个一或者负一&#xff0c;之后再进行多少次水平测试实验都与第一次的试验结果是相同的。 我们换用其他的竖直向上量子比特&#xff0c;或者对原来的量子比特进行干扰…

高阶函数的面试

说说JS原型和原型链 原型&#xff1a;函数都有prototype(显示原型)属性&#xff0c;而prototype会自动初始化一个空对象&#xff0c;这个对象就是原型对象 原型对象中会有一个constructor属性,这个属性将指向了函数本身 实例化对象都有一个_proto_(隐式原型)属性&#xff0c…

Spring基于注解读取和存储对象

目录 一. 存储 Bean 对象 1. 前置工作&#xff1a;配置扫描路径 2. 使用五大类注解存储Bean对象 Controller 命名规则 Service Repository Compoent Configuration 五大类注解之间的关系 3. 使用方法注解存储Bean对象 二. 获取 Bean 对象 1. 属性注入 优点分析 缺…

详解C语言string.h中常用的14个库函数(二)

本篇博客继续讲解string.h中的库函数。在上一篇博客中&#xff0c;我介绍了strlen, strcpy, strcat, strcmp这4个字符串操作函数&#xff0c;本篇博客会继续介绍strncpy, strncat, strncmp这3个类似的函数。 strcpy, strcat, strcmp这3个函数是长度不受限制的字符串操作函数&a…

预算约束下营销效果优化的端到端框架(快手)

目录 翻译&#xff1a;预算约束下营销效果优化的端到端框架 1介绍 2 .相关工作 2.1预算分配 2.2梯度估计 3我们的端到端框架 3.1符号 ​3.2两阶段范式 3.3 Marketing Goal as a Regularizer 3.4梯度估计 ​3.5训练 4实验结果 4.1数据集 4.2评价指标 4.3实现细节 …