Residual Attention U-Net 论文笔记

本文介绍了一种针对白内障手术器械的新型深度学习网络RAUNet,它采用ResidualAttentionU-Net结构,通过增强注意力模块解决镜面反射和类不平衡问题。RAUNet在Cata7数据集上表现出色,平均 Dice 率97.71%,IOU 达95.62%,标志着在该领域的先进水平。

Residual Attention U-Net 论文笔记

原文地址:RAUNet: Residual Attention U-Net for Semantic Segmentation of Cataract Surgical Instruments

Abstract

手术器械的语义分割在机器人辅助手术中起着至关重要的作用。然而,由于镜面反射和等级不平衡的问题,白内障手术器械的精确分割仍然是一个挑战。本文提出了一种attention-guided网络来分割白内障手术器械。设计了一个新的注意模块来学习辨别特征,并解决镜面反射问题。它捕获全局上下文并对语义依赖进行编码,以强调关键语义特征,增强特征表示。这个注意力模块的参数很少,这有助于节省内存。因此,它可以灵活地插入其他网络。此外,还引入了一种hybrid loss(混合损耗)来训练我们的网络以解决类不平衡问题,它融合了cross entropy and logarithms of Dice loss。我们构建了一个名为Cata7的新数据集来评估我们的网络。据我们所知,这是第一个用于语义分割的白内障手术器械数据集。基于该数据集,RAUNet实现了最先进的性能,平均骰子率为97.71%,平均IOU率为95.62%。

Keywords: Attention, Semantic Segmentation, Cataract, Surgical Instrument

**关键词:**注意,语义分割,白内障,手术器械

1、Introduction

近年来,手术器械的语义分割在机器人辅助手术中得到了越来越广泛的应用。其中一个关键应用是手术器械的定位和姿态估计,这有助于手术机器人的控制。分割手术器械的潜在应用包括客观的手术技能评估、手术流程优化、报告生成等[1]这些应用可以减少医生的工作量,提高手术的安全性。

白内障手术是世界上最常见的眼科手术。每年大约执行1900万次[2]。白内障手术对医生的要求很高。计算机辅助手术可以显著降低意外手术的概率。然而,大多数与手术器械分割相关的研究都集中在内镜手术上。关于白内障手术的研究很少。据我们所知,这是第一项对白内障手术器械进行分割和分类的研究

最近,人们提出了一系列分割手术器械的方法。Luis等人[3]提出了一种基于完全卷积网络(FCN)和光流的网络,以解决手术器械的堵塞和变形等问题。RASNet[4]采用注意模块来强调目标区域,并改进特征表示。Iro等人[5]提出了一种新的U形网络,可以同时提供仪器的分割和姿态估计。Mohamed等人[6]采用了一种结合递归网络(RNN)和卷积网络(CNN)的方法来提高分割精度。综上所述,可以看出卷积神经网络在外科器械分割中取得了优异的性能。然而,上述方法都是基于内窥镜手术。白内障手术器械的语义分割与内窥镜手术有很大不同

白内障手术器械的语义分割需要面对许多挑战。与内窥镜手术不同,白内障手术需要强烈的光照条件,导致严重的镜面反射。镜面反射改变了手术器械的视觉特性。此外,白内障手术器械对于显微操作来说也很小。因此,手术器械通常只占据图像的一小部分。背景像素的数量远大于前景像素的数量,这导致了严重的类不平衡问题。因此,手术器械更容易被误认为是背景。眼组织和摄像头视野受限造成的遮挡也是一个重要问题,导致手术器械的一部分不可见。这些问题使得识别和分割手术器械变得困难。

为了解决这些问题,提出了一种新的网络——Residual Attention U-Net(RAUNet)。它引入了一个注意模块来改进特征表示。这项工作的贡献如下。

  1. 一个创新的注意力模块被称为增强注意力模块(AAM),旨在有效融合多层次特征并改进特征表示,有助于解决镜面反射问题。此外,它的参数很少,这有助于节省内存。

  2. 引入

医学图像去噪是一个重要的研究领域,尤其在提高图像质量、辅助诊断和减少噪声干扰方面具有显著意义。使用 **循环残差 U-Net(R2U-Net)** 与 **自编码器(Autoencoder)架构** 结合的方式,可以有效提升去噪性能,尤其是在处理具有复杂结构的医学图像时[^2]。 ### R2U-Net 简介 R2U-Net 是 U-Net 的改进版本,它在编码器和解码器的每个阶段引入了 **循环残差模块(Recurrent Residual Blocks)**。这些模块能够增强网络对图像特征的记忆能力,从而提升图像重建质量。其结构包括多个 **双向循环卷积层(Bi-directional Recurrent Convolutional Layers)**,用于在时间维度上提取更丰富的特征。 ### 自编码器的作用 自编码器是一种无监督学习模型,通常用于特征提取和降维。将自编码器与 R2U-Net 结合,可以在编码阶段提取图像的潜在特征,再通过 R2U-Net 进行精细化去噪,提升整体去噪效果[^2]。 ### 示例代码结构 以下是一个基于 **PyTorch** 的简化实现框架,展示如何构建 **R2U-Net + 自编码器** 的医学图像去噪模型: ```python import torch import torch.nn as nn class RecurrentResidualBlock(nn.Module): def __init__(self, in_channels): super(RecurrentResidualBlock, self).__init__() self.conv1 = nn.Conv2d(in_channels, in_channels, kernel_size=3, padding=1) self.conv2 = nn.Conv2d(in_channels, in_channels, kernel_size=3, padding=1) self.relu = nn.ReLU(inplace=True) def forward(self, x): residual = x x = self.relu(self.conv1(x)) x = self.conv2(x) x += residual return x class R2UNetWithAutoencoder(nn.Module): def __init__(self, in_channels=1, out_channels=1): super(R2UNetWithAutoencoder, self).__init__() # Encoder self.encoder = nn.Sequential( RecurrentResidualBlock(in_channels), nn.MaxPool2d(2), RecurrentResidualBlock(in_channels), nn.MaxPool2d(2), ) # Bottleneck self.bottleneck = RecurrentResidualBlock(in_channels * 4) # Decoder self.upconv1 = nn.ConvTranspose2d(in_channels * 4, in_channels * 2, kernel_size=2, stride=2) self.decoder_block1 = RecurrentResidualBlock(in_channels * 2) self.upconv2 = nn.ConvTranspose2d(in_channels * 2, out_channels, kernel_size=2, stride=2) self.final_conv = nn.Conv2d(out_channels, out_channels, kernel_size=1) def forward(self, x): enc1 = self.encoder(x) bottleneck = self.bottleneck(enc1) dec1 = self.upconv1(bottleneck) dec1 = self.decoder_block1(dec1) dec2 = self.upconv2(dec1) out = self.final_conv(dec2) return torch.sigmoid(out) ``` ### 使用说明 1. **数据预处理**:医学图像通常为灰度图,需进行归一化处理(如将像素值缩放到 [0,1] 范围)。 2. **损失函数**:推荐使用 **MSE Loss** 或 **SSIM Loss** 来衡量图像重建质量。 3. **训练建议**: - 使用 **Adam 优化器**。 - 学习率设置为 1e-4。 - 批量大小(batch size)根据 GPU 显存进行调整。 ### 数据集与评估 - **数据集**:可以使用公开医学图像数据集,如 **BraTS、IXI 或 DRIVE 数据集**。 - **评估指标**:PSNR、SSIM、MSE 等指标可用于评估去噪效果。 ---
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值