深度学习UNet网络

2024-05-13 01:52
文章标签 学习 深度 网络 unet

本文主要是介绍深度学习UNet网络,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

DDPM主干模型;

在这里插入图片描述

UNet是一种分类网络架构,输入一张图片,网络进行分类是目标物体还是背景像素?

像素级的判断。

在这里插入图片描述

最终输出是单通道388*388

但是输入是572,输入572是填充过来的

而且UNet使用的是镜像填充

在这里插入图片描述

镜像填充目的是为了让像素点具有上下文信 息。

在这里插入图片描述

示意图解释:第一阶段分别对图片进行两次的3*3卷积操作,通道数从1扩充到64
第二阶段开始进行最大池化2*2,对图片进行压缩,但是通道数不变。图片尺寸变小一半 284*284,但是之后进行卷积操作3*3但是通道数从640->128其他不变。
后续操作同理。

右侧可以理解为一个反卷积或者理解为一个解码器也可以

接下来是上采样的过程,其本质也是一种反卷积

其次就是在进行复原的时候,我们要将高像素的特征进行赋值过来

在这里插入图片描述

此过程也可以成为skip connection,但是中间会出现像素不匹配的过程

这样可以进行挖中间部分在这里插入图片描述

64 挖成56

然后与上采样的特征进行拼接操作

之后进行两个卷积操作,3*3的卷积核,只不过通道数发生改变其他不变。

此图上采样都是运用两次卷积操作,然后通道降维

UNet代码实现

实现encoder部分,decoder部分

首先进行一层卷积操作也叫start_conv将单通道映射到64通道

其次要进行四层下采样,每一层下采样包含三个部分

1.最大池化

卷积 归一化 非线性函数

卷积 归一化 非线性函数

之后进行1024 到1024的中间层 实现起来也是进行两次卷积padding==1

最终进行上采样操作,

每一次上采样,都是一个普通的转置卷积层和两个卷积层构成

最终设置的1*1卷积。最终的任务是做分类任务。

引用量四万

第二个应用,将音频和原声进行分离。

第二篇论文,分离人声伴奏,分离其他也可。甚至可以做抠图操作。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

xconv

在这里插入图片描述

两个卷积操作 + 层归一化+RELU

xconv其实代表每一层的操作了

下采样的过程就是进行xconv操作后进行maxpool操作

在这里插入图片描述

上采样的过程相反

上采样的过程上采样的过程需要进行转置卷积操作+xconv+copy操作

forward的时候需要传入copy

这篇关于深度学习UNet网络的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/984357

相关文章

五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布

《五大特性引领创新!深度操作系统deepin25Preview预览版发布》今日,深度操作系统正式推出deepin25Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Tr... 深度操作系统今日发布了 deepin 25 Preview,新版本囊括五大特性:磐石系统、全新 DDE、Tree

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]