自参考和对比学习正则化的Few-shot医学图像分割

2023-10-31

Few-shot Medical Image Segmentation Regularized with Self-reference and Contrastive Learning

摘要

尽管深度卷积神经网络(CNN)在医学图像分割方面取得了巨大进展,但它们通常需要大量专家级的精确、密集注释的图像来进行训练,并且很难推广到看不见的对象类别。因此,很少有人提出通过学习从几个带注释的支持样本中转移知识来解决这些挑战。
本文方法

  1. 提出了一种新的基于原型的Few-shot分割方法
  2. 与之前的工作不同,在之前的工作中,将查询特征与学习的支持原型进行比较,以在查询图像上生成分割,我们提出了一种自参考正则化,在这里我们进一步将支持特征与学习到的支持原型相比较,以生成在支持图像上的分割。
  3. 作者认为学习到的支持原型应该对每个语义类具有代表性,同时对不同的类具有区别性,不仅对查询图像,而且对支持图像也是如此。
  4. 还引入了对比学习,以在支持和查询特征之间施加类内内聚和类间分离

本文方法

在这里插入图片描述
支持集Strain包含K个图像-mask对
查询集包含同一类的N对查询图像和标记的二进制掩码

Local Prototype-Based Segmentation

  1. 首先通过共享Siamese编码器将支持图像Isk和查询图像Iqj嵌入到特征空间中
  2. 然后提取前景类c和背景类c0的局部原型
  3. 根据生成自适应局部原型。具体来说,以前景类为例,我们用池化窗口大小平均池化支持特征
  4. 然后,将平均池化的前景特征图上的每个像素表示为局部原型
  5. 然后我们将它们集成到一个原型集合中
    在数学上,空间位置(h,w)处的查询特征与背景和前景类的每个局部原型之间的相似性计算为:
    在这里插入图片描述
    通过加权平均进一步计算类相似性
    在这里插入图片描述
    我们使用交叉熵损失Lq j来监督训练过程,计算如下
    在这里插入图片描述

Self-reference Regularization

自我参考的灵感是基于这样一种假设,即更好地表示支持特征的原型有助于在查询图像上获得更好的分割结果。现有的方法只计算学习的原型和查询特征之间的相似性,忽略了来自支持图像的监督。除了学习的支持原型和查询特征之间的交叉参考匹配外,我们还提出了一种自参考正则化,即通过将学习的支持原型机与支持特征匹配来训练模型分割支持图像。通过这一点,我们认为学习到的支持原型应该对每个语义类具有代表性,同时对不同的类具有区别性,不仅对查询图像,而且对支持图像也是如此。这是通过将支持特征的局部相似性图计算为
在这里插入图片描述
类似地,我们可以计算自参考类的相似性

自参考正则化损失被定义为在支持图像上计算的交叉熵损失:
在这里插入图片描述

Contrastive Learning

精确的few shot分割依赖于支持特征和查询特征之间的类内相似性和类间区分。为此,利用对比学习来正则化支持图像和查询图像中的前景相关和背景相关特征。这是通过将这些特征分别聚类到一个紧凑的空间来实现的,而不考虑它们的分布,同时减少聚类重叠,如图所示。1(右)。具体来说,我们使用mask平均池化来提取与前景和背景相关的特征。以前景为例,支持和查询特征空间上的前景相关特征分别表示为:
在这里插入图片描述
同样,我们可以在支持和查询特征空间上获得与背景相关的特征。将(tu,tv)表示为一对特征,当tu和tv属于同一类别时,这是一对正特征,否则是负特征。我们使用InfoNCE进行对比学习。(tu,tv)的每个正对的InfoNCE损失函数定义为:
在这里插入图片描述
其中R表示前景相关特征和背景相关特征两者的数量;1(tu,tw)对于正对和负对分别为0和1;τ表示温度参数,根据经验设定为0.05。最终对比损失Lc是所有正对上的l(tu,tv)的平均值:
在这里插入图片描述
其中B(R,2)是组合的数量。我们方法的总体目标函数如下
在这里插入图片描述其中{λ1,λ2}是控制不同损失的相对权重的参数,根据经验设置为{1,0.1}

Superpixel-Based Self-supervised Learning

在这项工作中,我们使用基于超像素的自监督学习来训练我们的网络,而不需要任何手动注释来进行训练。具体来说,我们可以为每个支持图像获得基于超像素的伪标签。然后,我们对支持图像和掩码进行几何和强度变换,以获得相应的查询图像和掩码(对于掩码,我们只应用几何变换)。之后,将获得的支持和查询图像及其相关的掩码输入到我们的网络中,用于端训练。训练后,对于每个测试事件,将支持图像及其手动注释一起输入到我们训练的模型中,以预测查询图像的分割

实验结果

在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自参考和对比学习正则化的Few-shot医学图像分割 的相关文章

  • HDFS的副本数量配置

    众所周知 hdfs的默认副本数量是3个 配置在 etc hadoop conf hdfs site xml中
  • uni-app多端开发注意事项

    关于vue 1 注意 如果使用老版的非自定义组件模式 即manifest中 usingComponents false 部分模版语法不支持 但此模式已于2019年11月起下线 2 data 必须声明为返回一个初始数据对象的函数 否则页面关闭
  • iOS进阶—Runtime基础

    iOS进阶 目录 GitHub参考 RunTime 基础 一个程序的执行过程 大概就是代码 gt 编译链接 gt 执行 C语言 import
  • Acwing-4645. 选数异或

    暴力解法 TLE了 呜呜呜呜 include

随机推荐

  • Linux系统下安装Redis

    文章目录 下载Redis 上传至Linux服务器 安装Redis 基本环境安装 运行Redis redis benchmark性能测试 下载Redis 下载地址 https redis io 上传至Linux服务器 可借助任何一款ftp软件
  • IT人员必学最基础知识(一)——总括

    作为一个真正的IT人员 我们不仅要懂得高级语言的编程使用 更要懂得电脑最基础的知识 这是我们成为杰出的IT人员的基石 只要踏上这些基础知识我们才能走的更高 首先我们要懂得电脑是如何工作的 大千世界无奇不有 繁彩纷呈 而一台小小的电脑就可以处
  • 算法入门:双指针法

    一 双指针法 例子1 求一个有序数组中和 8的下标 设置两个不同的指针 或者头 或者尾 在一个递增的序列中 根据结果分类 说明指针的下一步应该怎么移动 结果分类 a i b j 8则i j 都相互靠近 a i b j lt 8 需要移动指针
  • 使用react-grid-layout和echarts-for-react实现一个支持拖拽的自定义响应式dashboard页面

    文章目录 使用react grid layout和echarts for react实现一个支持拖拽的自定义响应式dashboard页面 需求概要 技术栈 简单实现 参考 使用react grid layout和echarts for re
  • python画聚类树状图_聚类分析python画树状图--Plotly(dendrogram)用法解析

    1 前言 聚类分析是机器学习和数据分析中非常常见的分类方法 当我们用到层次聚类 系统聚类 时 最常用的分析方法就是绘制树状图 比较常见的统计软件像SPSS SAS R等都可以直接绘制树状图 比较简单 今天主要介绍下python怎么绘制 2
  • 校园欺凌——四位学生的乱伦之战!!!

    校园欺凌 Impossible 学生之战 Non existent 乱伦 Take leave ok 兄弟姊妹们 今天我们来学习循环结构第一章 gt gt gt While与Do Whlie 循环 重复得做某一件事情 Such as 打印5
  • QVariant的用法

    前言 QVariant这个类很神奇 或者说方便 很多时候 需要几种不同的数据类型需要传递 如果用结构体 又不大方便 容器保存的也只是一种数据类型 而QVariant则可以统统搞定 介绍 帮助文档上说 The QVariant class a
  • 云化背景下的接口测试覆盖率自动化检查

    一 问题来源 在云化场景下 API的测试覆盖是一项重要评估与考察指标 除了开发者自测试外 UT 还可以利用云化测试平台 流水线等方法进行相关指标的检查与考核 利用这种方法既可以减轻开发者测试工作量 不必在本地做大量的 降低人为指标灰度空间
  • Android10.0 Binder通信原理(八)-Framework层分析

    Android取经之路 的源码都基于Android Q 10 0 进行分析 Android取经之路 系列文章 系统启动篇 Android系统架构Android是怎么启动的Android 10 0系统启动之init进程Android10 0系
  • 虚拟机Ubuntu操作系统最基本终端命令(安装包+详细解释+详细演示)

    虚拟机及乌班图 Ubuntu操作系统 提示 大家需要软件的可以直接在此链接中提取 链接 https pan baidu com s 1 4VHGTlXjIuVhBINeOuBCA 提取码 nd0c 文章目录 虚拟机及乌班图 Ubuntu操作
  • 数据质量测试:测试数据有效性和准确性的方法

    以下为作者观点 来看看你认同吗 如果西西弗斯 编者注 希腊神话中的人物 是一个数据分析师或数据科学家 他在山上滚动的巨石将是他的数据质量保障 即使所有获取 处理和建模的工程流程都无懈可击 但在数据管道的任何阶段测试数据质量的能力 以及面对
  • java中的集合框架

    一 集合框架 集合框架 java做好的用来管理乱七八糟的一堆数据的java类库 集合 乱七八糟的一堆 框架 做好的java类库 Java中的集合框架总体被分为2个大部分第一个大部分是用来处理单列数据的集合 最大的接口时Collection接
  • 小白开发微信小程序49--本地服务器部署测试小程序

    相信大家对微信小程序的基础和项目应该没有太大问题了 如果还有对微信小程序开发有一些问题 请查看回顾 微信小程序开发者开发好一款微信小程序后 怎么才能发布呢 如何将其提交给微信审核呢 在前面的 领航教育 项目开发中 后台采用的是C 开发语言
  • matlab 计算点云最大距离

    RANSAC 一 算法原理 1 算法概述 2 主要函数 二 代码实现 三 结果展示 四 参考链接 一 算法原理 1 算法概述 计算同一个点云中所有点之间的最大距离 是4PCS配准算法中进行重叠度预估的重要一步 是实现手写4PCS及能够对其改
  • LeetCode刷题-10

    数组 121 买卖股票的最佳时机 题目描述 题目样例 Java方法 暴力法 代码 复杂度 Java方法 一次遍历 算法思路 代码 复杂度 题目描述 给定一个数组 prices 它的第 i 个元素 prices i 表示一支给定股票第 i 天
  • 榜样访谈——董宇航:在俱乐部中收获爱情

    先做一个简单的自我介绍吧 董宇航 大家好 我是来自辽宁工程技术大学的董宇航 我是网络工程专业的 今年大三 同时也担任CSDN辽宁工程技术大学高校俱乐部俱乐部的主席 我们在线下也有一个经过学校正规备案的学生社团叫软件学院创客俱乐部 在计算机学
  • $sql=mysql_query(_MySQL mysql_query 函数执行SQL语句

    mysql query 函数 PHP MySQL 函数库中 mysql query 函数用于向 MySQL 发送并执行 SQL 语句 对于没有数据返回结果集的 SQL 如 UPDATE DELETE 等在执行成功时返回 TRUE 出错时返回
  • JenKins 自动化打包上传到服务器的fir 工具

    fir im Jenkins 插件使用方法 fir im Jenkins 插件可以更快速地上传 apk ipa 安装包到 fir im 安装 Jenkins 方法一 直接下载安装包 Download Jenkins 安装完成后在 Termi
  • PTA老板的作息表

    记得当时考场上没想到数组开始和结尾加00 00 00和23 59 59 考完才想起来 当时在那写判断 真的菜傻了 新浪微博上有人发了某老板的作息时间表 表示其每天 4 30 就起床了 但立刻有眼尖的网友问 这时间表不完整啊 早上九点到下午一
  • 自参考和对比学习正则化的Few-shot医学图像分割

    文章目录 Few shot Medical Image Segmentation Regularized with Self reference and Contrastive Learning 摘要 本文方法 Local Prototyp