关于做网站的书籍/软文广告发稿
图
医学图像分割任务
代码
import torch
import torch.nn as nnfrom timm.models.layers import DropPath
# 论文:D-Net:具有动态特征融合的动态大核,用于体积医学图像分割(3D图像任务)
# https://arxiv.org/abs/2403.10674
#代码:https://github.com/sotiraslab/DLK
'''
动态特征融合(DFF)模块:
我们提出了一个动态特征融合(DFF)模块,基于全局信息自适应地融合多尺度局部特征(图2)。
它是通过根据其全局信息动态选择重要特征来实现的融合。
具体来说,特征映射F l 1和F l 2沿着通道连接起来。
为了确保以下块可以采用融合特性,
需要一个通道减少机制来将通道的数量减少到原来的通道。
DFF中的信道减少采用1×1×1卷积,而不是简单的全局×信息。
通过级联平均池化(AVGPool)、卷积层(Conv1)和Sigmoid激活来提取这些信息来描述特征的重要性。
主要用于3D医学图像分割任务,同时也适用于所有CV3D图像任务。
'''
class DFF(nn.Module):def __init__(self, dim):# 调用父类的初始化方法super().__init__()# 创建一个自适应平均池化层,用于全局特征提取self.avg_pool = nn.AdaptiveAvgPool3d(1)# 创建一个顺序模型,用于特征的注意力加权self.conv_atten = nn.Sequential(nn.Conv3d(dim * 2, dim * 2, kernel_size=1, bias=False), # 3D卷积层,用于特征的线性变换nn.Sigmoid() # Sigmoid激活函数,用于生成注意力权重)# 3D卷积层,用于特征的降维self.conv_redu = nn.Conv3d(dim * 2, dim, kernel_size=1, bias=False)# 3D卷积层,用于生成空间注意力self.conv1 = nn.Conv3d(dim, 1, kernel_size=1, stride=1, bias=True)# 另一个3D卷积层,用于生成空间注意力self.conv2 = nn.Conv3d(dim, 1, kernel_size=1, stride=1, bias=True)# Sigmoid激活函数,用于生成最终的空间注意力权重self.nonlin = nn.Sigmoid()def forward(self, x, skip):'''in: self, x, skipx: 输入特征图1skip: 输入特征图2(跳跃连接)out: output'''# 沿通道维度拼接两个特征图output = torch.cat([x, skip], dim=1)# 使用平均池化和注意力卷积生成全局通道注意力att = self.conv_atten(self.avg_pool(output))# 将全局通道注意力应用于拼接后的特征图output = output * att# 使用降维卷积减少特征图的通道数output = self.conv_redu(output)# 使用两个卷积层分别生成空间注意力att = self.conv1(x) + self.conv2(skip)# 应用非线性激活函数生成最终的空间注意力权重att = self.nonlin(att)# 将空间注意力应用于降维后的特征图output = output * att# 返回最终的输出特征图return output
"""HELP:DFF 类实现了一个动态特征融合模块,它接收两个输入特征图 x 和 skip,这两个特征图通常是来自编码器的不同层。在 __init__ 方法中,定义了模型所需的所有卷积层和激活函数。forward 方法定义了模型的前向传播过程:1 将两个输入特征图沿通道维度拼接。2 使用平均池化和注意力卷积生成全局通道注意力。3 将全局通道注意力应用于拼接后的特征图。4 使用降维卷积减少特征图的通道数。5 使用两个卷积层分别生成空间注意力,并将它们相加。6 应用非线性激活函数生成最终的空间注意力权重。7 将空间注意力应用于降维后的特征图,得到最终的输出特征图。""" if __name__ == '__main__':input1 = torch.randn(1, 32, 16, 64, 64) # x: (B, C, D,H, W) 3D图像维度input2 = torch.randn(1, 32, 16, 64, 64) # x: (B, C, D,H, W) 3D图像维度model = DFF(32)output = model(input1,input2)print("DFF_input size:", input1.size())print("DFF_Output size:", output.size())
原文
[2403.10674] D-Net: Dynamic Large Kernel with Dynamic Feature Fusion for Volumetric Medical Image Segmentation (arxiv.org)
代码: sotiraslab/DLK (github.com)
摘要:
Hierarchical transformers have achieved significant success in medical image segmentation due to their large receptive field and capabilities of effectively leveraging global long-range contextual information. Convolutional neural networks (CNNs) can also deliver a large receptive field by using large kernels, enabling them to achieve competitive performance with fewer model parameters. However, CNNs incorporated with large convolutional kernels remain constrained in adaptively capturing multi-scale features from organs with large variations in shape and size due to the employment of fixed-sized kernels. Additionally, they are unable to utilize global contextual information efficiently. To address these limitations, we propose Dynamic Large Kernel (DLK) and Dynamic Feature Fusion (DFF) modules. The DLK module employs multiple large kernels with varying kernel sizes and dilation rates to capture multi-scale features. Subsequently, a dynamic selection mechanism is utilized to adaptively highlight the most important spatial features based on global information. Additionally, the DFF module is proposed to adaptively fuse multi-scale local feature maps based on their global information. We integrate DLK and DFF in a hierarchical transformer architecture to develop a novel architecture, termed D-Net. D-Net is able to effectively utilize a multi-scale large receptive field and adaptively harness global contextual information. Extensive experimental results demonstrate that D-Net outperforms other state-of-the-art models in the two volumetric segmentation tasks, including abdominal multi-organ segmentation and multi-modality brain tumor segmentation. Our code is available at this https URL.
在医学图像分割领域,分层变换器(Hierarchical transformers)因其具有较大的感受野和有效利用全局长距离上下文信息的能力而取得了显著的成功。卷积神经网络(CNNs)也可以通过使用大卷积核来实现大感受野,这使得它们在模型参数较少的情况下也能取得有竞争力的性能。然而,采用大卷积核的CNN在适应性地捕获形状和大小变化较大的器官的多尺度特征方面存在限制,因为它们使用的是固定大小的卷积核。此外,它们也未能有效地利用全局上下文信息。为了解决这些限制,我们提出了动态大核(DLK)和动态特征融合(DFF)模块。DLK模块采用多个具有不同核大小和扩张率的大卷积核来捕获多尺度特征。随后,利用动态选择机制根据全局信息自适应地突出显示最重要的空间特征。此外,DFF模块被提出用于根据全局信息自适应地融合多尺度局部特征图。我们将DLK和DFF集成到分层变换器架构中,开发了一种称为D-Net的新型架构。D-Net能够有效地利用多尺度大感受野并自适应地利用全局上下文信息。广泛的实验结果表明,在包括腹部多器官分割和多模态脑肿瘤分割在内的两项体积分割任务中,D-Net的性能超过了其他最先进的模型。我们的代码可在 https://github.com/sotiraslab/DLK 上获取。
相关文章:

【扒模块】DFF
图 医学图像分割任务 代码 import torch import torch.nn as nnfrom timm.models.layers import DropPath # 论文:D-Net:具有动态特征融合的动态大核,用于体积医学图像分割(3D图像任务) # https://arxiv.org/abs/2403…...

frameworks 之Socket
frameworks 之Socket Socket服务端1.创建Socket。2.绑定socket3.监听socket4.等待客户端连接5.读取或者写入给客户端 客户端1.创建Socket。2.连接服务端Socket3.读取或者写入给客户端4.关闭socket 演示代码 Epoll创建Epoll添加或删除Epoll等待消息返回Epoll演示代码 SocketPair…...

WEB前端开发中如何实现大文件上传?
大文件上传是个非常普遍的场景,在面试中也会经常被问到,大文件上传的实现思路和流程。在日常开发中,无论是云存储、视频分享平台还是企业级应用,大文件上传都是用户与服务器之间交互的重要环节。随着现代网络应用的日益复杂化&…...

ts给vue中props设置指定类型
interface IBaseObject {[key: string | number]: any; }export default defineComponent({name:xx,props:{data:{type:Object as PropType<IBaseObject>,default:()>({}),required:true},}, })...

模拟实现c++中的list模版
☺☺☺☺☺☺☺☺☺☺ 点击 进入杀马特的主页☺☺☺☺☺☺☺☺☺☺ 目录 一list简述: 二库内常用接口函数使用: 1reverse(): 2.s…...

从信息论的角度看微博推荐算法
引言 在数字时代,推荐系统已成为社交媒体和其他在线服务平台的核心组成部分。它们通过分析用户行为和偏好,为用户提供个性化的内容,从而提高用户满意度和平台的参与度。推荐系统不仅能够增强用户体验,还能显著提升广告投放的效率…...

CISC(复杂指令集)与RISC(精简指令集)的区别
RISC(Reduced Instruction Set Computer)和CISC(complex instruction set computer)是当前CPU的两种架构。 它们的区别在于不同的CPU设计理念和方法。 早期的CPU全部是CISC架构,它的设计目的是要用最少的机器语言指令来完成所需的计算任务。比如对于乘法运算&#x…...

自定义数据库连接的艺术:Laravel中配置多数据库连接详解
自定义数据库连接的艺术:Laravel中配置多数据库连接详解 在现代Web应用开发中,经常需要连接到多个数据库。Laravel,作为PHP界最受欢迎的框架之一,提供了强大的数据库抽象层,支持多种数据库系统,并且允许开…...

力扣高频SQL 50题(基础版)第八题
文章目录 力扣高频SQL 50题(基础版)第八题1581. 进店却未进行过交易的顾客题目说明思路分析实现过程准备数据:实现方式:结果截图:总结: 力扣高频SQL 50题(基础版)第八题 1581. 进店…...

【C++20】从0开始自制协程库
文章目录 参考 很多人对协程的理解就是在用户态线程把CPU对线程的调度复制了一遍,减少了线程的数量,也就是说在一个线程内完成对协程的调度,不需要线程切换导致上下文切换的开销。但是线程切换是CPU行为,就算你的程序只有一个线程…...

Docker 深度解析:从入门到精通
引言 在当今的软件开发领域,容器化技术已经成为一种趋势。Docker 作为容器化技术的代表,以其轻量级、可移植性和易用性,被广泛应用于各种场景。本文将从 Docker 的基本概念入手,详细介绍 Docker 的安装、基本操作、网络配置、数据…...

[C++] 模板编程-02 类模板
一 类模板 template <class T或者typename T> class 类名 { .......... } 1.1 两种不同的实现 在以下的两种实现中,其实第一种叫做成员函数模板,并不能称为类模板因为这种实现,我们在调用时,并不需要实例化为Product这个类指定指定特定类型。 // 实现1 clas…...

嵌入式C++、STM32、树莓派4B、OpenCV、TensorFlow/Keras深度学习:基于边缘计算的实时异常行为识别
1. 项目概述 随着物联网和人工智能技术的发展,智能家居安全系统越来越受到人们的关注。本项目旨在设计并实现一套基于边缘计算的智能家居安全系统,利用STM32微控制器和树莓派等边缘设备,实时分析摄像头数据,识别异常行为(如入侵、跌倒等),并及时发出警报,提高家庭安全性。 系…...

C++ //练习 15.30 编写你自己的Basket类,用它计算上一个练习中交易记录的总价格。
C Primer(第5版) 练习 15.30 练习 15.30 编写你自己的Basket类,用它计算上一个练习中交易记录的总价格。 环境:Linux Ubuntu(云服务器) 工具:vim 代码块: /********************…...

3个方法快速找回忘记的PDF文件密码
为确保PDF文件的重要信息不轻易外泄,很多人都会给PDF文件设置打开密码,但伴随着时间的推移,让我们忘记了原本设置的密码,但这时,我们又非常急需要打开编辑这份文件,这时我们该怎么办呢?下面小编…...

排序算法:选择排序,golang实现
目录 前言 选择排序 代码示例 1. 算法包 2. 选择排序代码 3. 模拟排序 4. 运行程序 5. 从大到小排序 循环细节 外层循环 内层循环 总结 选择排序的适用场景 1. 数据规模非常小 2. 稳定性不重要 3. 几乎全部数据已排序 4. 教育目的 前言 在实际场景中…...

【测试】博客系统的测试报告
项目背景 个人博客系统采用了 SSM 框架与 Redis 缓存技术的组合 ,为用户提供了一个功能丰富、性能优越的博客平台。 在技术架构上 ,SSM 框架确保了系统的稳定性和可扩展性。Spring 负责管理项目的各种组件 ,Spring MVC 实现了清晰的请求处理…...

PointCLIP: Point Cloud Understanding by CLIP
Abstract 近年来,基于对比视觉语言预训练(CLIP)的零镜头和少镜头学习在二维视觉识别中表现出了令人鼓舞的效果,该方法在开放词汇设置下学习图像与相应文本的匹配。然而,通过大规模二维图像-文本对预训练的CLIP是否可以推广到三维识别&#x…...

搜索(剪枝)
定义: 剪枝,就是减少搜索树的规模、尽早排除搜索树中不必要分支的一种手段。 在深度优先搜索中,有以下几类常见的剪枝方法: 优化搜索顺序排除等效冗余可行性剪枝最优性剪枝记忆化剪枝 例题1:AcWing 167.木棒 题目:…...

python基础知识点
最近系统温习了一遍python基础语法,把自己不熟知的知识点罗列一遍,便于查阅~~ python教程 Python 基础教程 | 菜鸟教程 1、python标识符 以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 f…...

Android SurfaceFlinger——GraphicBuffer获取内存信息(三十一)
上一篇文章介绍了 GraphicBuffer 初始化的 initWithSize() 函数中的申请内存流程,这里我们看一下另一个比较重要的函数,GraphicBufferMapper. getTransportSize 获取内存信息。该函数通常在需要了解缓冲区的实际内存占用情况时调用,例如在调试内存使用情况或优化性能时。 一…...

基于 SASL/SCRAM 让 Kafka 实现动态授权认证
一、说明 在大数据处理和分析中 Apache Kafka 已经成为了一个核心组件。然而在生产环境中部署 Kafka 时,安全性是一个必须要考虑的重要因素。SASL(简单认证与安全层)和 SCRAM(基于密码的认证机制的盐化挑战响应认证机制ÿ…...

通用多级缓件组件
背景 业界第三方缓存框架一般为redis,本地缓地ehcache或guava,一般通过spring提供的restTemplate操作缓存 然而这样会存在以下问题: 与缓存中间件强耦合需手动整合多级缓存不支持注解数据更新时无法自动刷新缓存存在缓存穿透、缓存击穿、缓…...

MindIE Service服务化集成部署通义千问Qwen模型
一、昇腾开发者平台申请镜像 登录Ascend官网昇腾社区-官网丨昇腾万里 让智能无所不及 二、登录并下载mindie镜像 #登录docker login -u XXX#密码XXX#下载镜像docker pull XXX 三、下载Qwen的镜像 使用wget命令下载Qwen1.5-0.5B-Chat镜像,放在/mnt/Qwen/Qwen1.5-…...

chrome 接口请求等待时间(installed 已停止)过长问题定位
参考: 解决实际项目中stalled时间过久的问题 背景: 测试反馈系统开 6 个标签页后, 反应变的很慢 定位: 看接口请求瀑布流, 已停止时间很长, 后端返回速度很快, 确定是前端的问题 推测是并发请求窗口数量的问题, 屏蔽部分一直 pending 的接口, 发现速度正常了, 搜到上面的参…...

HDialog特殊动画效果
基于HDialog的特殊动画效果实现 业务场景 在开发过程中直接使用HDialog所展现的效果很快,同时不能够与用户所点击位置进行交互,会造成用户的体验观感不够好。因此需要实现一种能够从用户点击按钮位置以可变动画效果所展现的Dialog效果。 工作原理及实…...

基因组挖掘指导天然药物分子的发现-文献精读34
基因组挖掘指导天然药物分子的发现 摘要 天然产物是临床药物的主要来源,也是新药研发过程中先导化合物结构设计和优化的灵感源泉。但传统策略天然药源分子的发现却遭遇了瓶颈,新颖天然产物的数量逐渐无法满足现代药物开发的需求和应对全球多药耐药的威胁…...

hcip学习 DHCP中继
DHCP 中继 在可能收到 DHCP Discover 报文的接口配置 DHCP 中继, 指明 DHCP 服务器的地址,然后将 DHCP 发现报文以单播的形式送到 DHCP 服务器上 DHCP 中继报文的源地址和目标地址怎么确定 1、源地址:收到 Discover 报文的接口地址 2、目…...

[Mysql-函数、索引]
目录 函数: 日期函数 字符串函数 数学函数 聚合函数 索引: 索引分类 慢查询 创建索引 函数: MySQL函数,是一种控制流程函数,属于数据库用语言。 MySQL常见的函数有: 数学函数 用作常规的数学运…...

org.eclipse.jgit 简单总结
org.eclipse.jgit 是一个用于处理 Git 版本控制系统的纯 Java 库。它允许你读取和写入 Git 仓库,执行如克隆、拉取、推送、提交等操作。下面我将通过几个例子来展示如何使用 org.eclipse.jgit 进行一些常见的 Git 操作。 1. 克隆仓库 克隆一个远程 Git 仓库到本地目…...