FCN学习-----第一课

语义分割中的全卷积网络
CVPR IEEE国际计算机视觉与模式识别会议
PAMI IEEE模式分析与机器智能汇刊
需要会的知识点:
神经网络:前向传播和反向传播
卷积神经网络:CNN,卷积,池化,上采样
分类网络:VGG,net,AlexNet,GoogLeNet
Pytorch基础
必须学会:
熟练掌握语义分割常识知识:概念、术语、应用(0.5)
熟练掌握FCN算法模型:结构、意义、补充知识点(1天 )
熟练掌握FCN模型的代码定义:训练、验证、测试、预处理、模型定义、结果输出(4天)
在这里插入图片描述

第一课论文导读

1.论文研究背景、成果及意义

(1)语义分割是计算机视觉中的关键任务之一,现实中,越来越多的应用场景需要从影响中推理出相关的知识或者语义(由具体到抽象的过程)。作为计算机视觉的核心问题,语义分割对于场景理解的重要性日渐突出。
理解:把不同目标标记成不同颜色的过程。图像的语义可以理解为:图片表达的意思。
例如:图片中 一个人在骑一辆自行车 这就是语义。分割就是把图像当中所关心的对象用不同的颜色标记出来,达到分割的效果,也就是从具体到抽象的过程。
在这里插入图片描述
(2)语义分割、实例分割区别:
①不重要的东西成为背景,背景同一设置成黑色,例如在无人驾驶中,旁边的建筑物就是背景。
②在语义分割中同一种类都被分为一种颜色,而在实例分割中同种类也是不同颜色的。
全景分割:语义分割和实例分割的结合,不仅关注背景,在同种类中也要进行区分。
在这里插入图片描述
(3)语义分割的研究现状
①传统方法:归一化分割(纹理或者颜色相同进行分割)缺点是较慢需要多次进行分割,还不太准确;结构化的随机森林(很好改善噪点)缺点过拟合准确率不高慢;支持向量机
在这里插入图片描述

②深度学习卷积神经网络:FCN、SegNet、LinkNet
在这里插入图片描述
深度学习中还存在的问题:
在这里插入图片描述
(4)语义分割实现流程
训练:根据batch size大小,将数据集中的训练样本和标签读入卷积神经网络。根据实际需要,应先对训练图片及标签进行预处理,如裁剪、数据增强等。这有利于深层网络的训练,加速收敛过程,同时也避免过拟合问题并增强了模型的泛化能力。
验证:训练一个epoch结束后,将数据集中的验证样本和标签读入卷积神经网络,并载入训练权重。根据编写好的语义分割指标进行训练,得到当前训练过程中的指标分数,保存对应权重。常用一次训练一次验证的方法更好的监督模型表现。
测试:所有训练结束后,将数据集中的测试样本和标签读入卷积神经网络,并将保存的最好权重值载入模型,进行测试,测试结果分为两种,一种是根据常用指标分数衡量网络性能,另一种是将网络的预测结果以图片的形式保存下载,直观感受分割的精确程度。
FCN分割效果不算很好,但是分割的基石。
在这里插入图片描述
(5)语义分割常用数据集
在这里插入图片描述

(6)语义分割常用指标:指标越大越好
①PA像素精度:标记正确的像素占总像素的比例
②MPA均像素精度:计算每个类内被正确分类像素的比例
③MIoU均交并比:计算真实值和预测值的交集和并集
在这里插入图片描述
(7)FCN研究成果
①将分类网络改变为全卷积神经网络,具体包括全连接层转化为卷积层以及通过反卷积进行上采样。
②使用迁移学习的方法进行微调。
③使用跳跃结构使得语义信息可以和表征信息相结合,产生准确而精细的分割
④FCN证明了端到端、像素到像素训练方式下的卷积神经网络超过了现有语义分割方向最先进的技术(传统算法)。
⑤FCN成为了PASCAL VOC最出色的分割方法,较2011和2012分割算法的MIoU提高了将近20%
在这里插入图片描述

(8)FCN历史意义:
①深度学习应用在语义分割领域的开山之作
②端到端训练为后续语义分割算法的发展铺平了道路
与图分类或目标检测相比,语义分割使我们对图像有更加细致的了解。

2.论文泛读

(1)论文结构:
在这里插入图片描述
①概述卷积神经网络(大背景的概述):
Convolutional networks are powerful visual models that yield hierarchies of features.
卷积网络是强大的视觉模型,能够产生层次化的特征
②论点:
We show that convolutional networks by themselves, trained end-to-end, pixels to-pixels, exceed the state-of-the-art in semantic segmentation.
我们展示了卷积网络本身,端到端地训练,从像素到像素,超越了语义分割领域的最新技术水平。
③围绕论点采取的方法,主要的核心思想:(容纳不同尺寸的输入,得到相同尺寸的输出)
Our key insight is to build “fully convolutional” networks that take input of arbitrary size and produce correspondingly-sized output with efficient inference and learning.
我们的关键见解是构建“完全卷积”网络,它可以接受任意尺寸的输入,并生成相应尺寸的输出,具有高效的推断和学习能力。
④具体方法:如何实现核心思想(改变先前模型,做了迁移学习、跳跃连接)
We define and detail the space of fully convolutional networks, explain their application to spatially dense prediction tasks, and draw connections to prior models. We adapt contemporary classification networks (AlexNet, the VGG net, and GoogLeNet) into fully convolutional networks and transfer their learned representations by fine-tuning to the segmentation task. We then define a skip architecture that combines semantic information from a deep, coarse layer with appearance information from a shallow, fine layer to produce accurate and detailed segmentations.
我们定义并详细介绍了完全卷积网络的空间,解释了它们在空间密集预测任务中的应用,并与先前的模型进行了联系。我们将当代分类网络(如AlexNet、VGG网络和GoogLeNet)调整为完全卷积网络,并通过微调将它们学到的表示迁移到分割任务中。然后,我们定义了一个跳跃连接的架构,将来自深层次、粗糙层的语义信息与来自浅层、细致层的外观信息相结合,以生成准确且详细的分割结果。
⑤论文结果:(论文在数据集中的结果)
Our fully convolutional network achieves state of-the-art segmentation of PASCAL VOC (20% relative improvement to 62.2% mean IU on 2012), NYUDv2, and SIFT Flow, while inference takes less than one fifth of a second for a typical image.
我们的完全卷积网络在PASCAL VOC(相对改进20%,在2012年的平均IU达到62.2%)以及NYUDv2和SIFT Flow数据集上实现了最先进的分割效果,同时对于一张典型图像的推断时间不到五分之一秒。
在这里插入图片描述

端到端
在这里插入图片描述
分割术语:
Pixel-wise(pixels-to-pixels):像素级别。
每张图片都是由一个个pixel组成的,pixel是像素图像的基本单位。
Image-wise:图像级别 比如一张图片的标签是狗,即“狗是对整个图片的标注
Patch-wise块级别,介于像素级别和图像级别之间,每个patch都是由好多个pixel组成的
Patchwise training:针对每个感兴趣的像素,以它为中心取一个patch(小块),然后输入网络,输出则为该像素的标签。
**

3.本课回顾及下节预告

**
(1)语义分割的概念 (2)FCN取得的成果及意义 (3)FCN论文总览 (4)摘要精度
下节课:①引言及相关工作:追溯FCN的思想源头,回顾FCN出现之前的语义分割方法
②先验知识补充:根据论文第三节的顺序,补充相关知识点 ③详解算法结构:按照论文给出的逻辑细致讲解算法构成 ④实验及结论:分析实验细节,总结论文创新点。

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

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

相关文章

杨中科 ASP.NETCore Rest

什么是Rest RPC 1、Web API两种风格: 面向过程(RPC) 、面向REST (REST) 2、RPC:“控制器/操作方法“的形式把服务器端的代码当成方法去调用。把HTTP当成传输数据的通道,不关心HTTP谓词。通过QueryString请求报文体给服务器传递数据。状态码。比如/Persons/GetAll…

紧跟国际潮流,勇探未知领域

紧跟国际潮流,勇探未知领域 文章目录 紧跟国际潮流,勇探未知领域一、计算产业新面貌二、紧跟AI新潮流1、我国人工智能产业发展表现出明显的集群化趋势2、人工智能产业集群是基于网络空间发展的创新集群三、企业簇群及其产业创新生态四、创新的“极化”和…

解析拼团购-----商业升级拉锯战,如何突破重重突围?

每天五分钟讲解一个商业模式,大家好我是模式策划啊浩。 作为新时代商业营销的宠儿“拼团购”如何能成为商业升级的关键因素呢?随着互联网技术的不断进步,拼团购作为一种新兴的消费形式,正逐渐成为商业领域的新宠。在激烈的商业竞…

【LeetCode】608. 树节点

表:Tree ------------------- | Column Name | Type | ------------------- | id | int | | p_id | int | ------------------- id 是该表中具有唯一值的列。 该表的每行包含树中节点的 id 及其父节点的 id 信息。 给定的结构总是一个有效的树。…

linux cat命令增加文件名功能后修复可能出现的bug

增加显示文件名功能后,需要将输出缓冲区的大小增加FILENAME_MAX1,FILENAME_MAX为当前系统文件名最长时占用的字节数,1为冒号占用的1字节,否则在特殊情况下,会导致输出缓冲区不够用,程序崩溃报段错误。 仅仅…

stm32学习笔记:TIM-输出比较

四部分讲解内容,本文是第二部分 输出比较主要用于PWM波形的控制电机(驱动电机的必要条件) 1、定时器基本定时,定一个时间,然后让定时器每隔一段时间产生一个中断,来实现每隔一个固定时间执行一段程序的目…

存储过程从表中获取数据库名称

---------------业务数据库信息 CREATE TABLE [dbo].[app_erp_datbabase_conf] ( [id] [int] IDENTITY(1,1) NOT NULL, [database_type] [varchar](200) NOT NULL, [database_name] [varchar](200) NOT NULL, [create_time] [datetime] NULL, [modify_t…

linux磁盘管理实验1

1.在安装好的linux系统中新加一块硬盘,将硬盘分成2个主分区,和2个逻辑分区,将其中一个逻辑分区设置成vfat(FAT32)分区,并实现开机自动挂载所有分区。 答:添加一个硬盘为sdb 分成2个主分区&#…

Flink电商实时数仓项目部署上线

Flink实时数仓部署 将common作为一个自定义的依赖部署到maven中使用maven将各个子模块打包可以使用FLink框架进行jar包的提交运行。 StreamPark 一个易于使用的流处理应用开发框架和一站式流处理操作平台和管理流应用。它提供了Flink和Spark编写流的脚手架。 Core:可以使用…

解读 $mash 通证 “Fair Launch” 规则(Staking 玩法解读篇)

Solmash 是 Solana 生态中由社区主导的铭文资产 LaunchPad 平台,该平台旨在为 Solana 原生铭文项目,以及通过其合作伙伴 SoBit 跨链桥桥接到 Solana 的 Bitcoin 生态铭文项目提供更广泛的启动机会。有了 Solmash,将会有更多的 Solana 生态的铭…

项目整合积木报表-设计页面

项目整合积木报表-设计页面 <template><div><iframe id"dome" :srcsrc ></iframe></div> </template><script>export default {data(){return{src:configSrc.src"/jmreport/view/836138868821839872"}}} </…

ansible搭建和基本使用

客户端搭建 linux 安装Python&#xff08;python2版本&#xff0c;并且必须存在路径/usr/bin/python&#xff09; 安装openssh-server&#xff0c;并且配置允许root远程连接&#xff08;推荐&#xff09;windows Windows Server 2008R2客户端升级至powershell4.0 配置winrm…

SpringBoot 定时任务 + Scheduled 定时任务器

一、 任务描述&#xff1a; 需求 在于把本地 数据 推送到 第三方 平台的数据库&#xff0c;实现T1 增量&#xff1b; 二、实现用到技术 &#xff08;1&#xff09;Scheduled 定时任务器 Spring 3.0 之后&#xff0c;框架自带的定时任务&#xff1b; &#xff08;2&#x…

【C语言】函数

函数是什么&#xff1f; “函数”是我们早些年在学习数学的过程中常见的概念&#xff0c;简单回顾一下&#xff1a;比如下图中&#xff0c;你给函数 f(x)2*x3 一个具体的x,这个函数通过一系列的计算来返回给你一个结果(图示如下)。 这就是数学中函数的基本过程和作用。但是你…

LeetCode-杨辉三角公式

杨辉三角公式 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/a225ff66061e4076924e3299b81b98d5.png /*** author wx* description 杨辉三角公式-标准* create 2023/12/26**/ public class Triangle {public static void main(String[] args) {List<List<I…

【智慧零售】东胜物联蓝牙网关硬件解决方案,促进零售门店数字化管理

依托物联网&#xff08;IoT&#xff09;、大数据、人工智能&#xff08;AI&#xff09;等快速发展&#xff0c;数字化和智能化已成为零售企业的核心竞争力。更多的企业通过引入人工智能、大数据等先进技术手段&#xff0c;提高门店运营效率和服务质量。 某连锁咖啡企业牢牢抓住…

C++程序设计兼谈对象模型(侯捷)笔记

C程序设计兼谈对象模型&#xff08;侯捷) 这是C面向对象程序设计的续集笔记&#xff0c;仅供个人学习使用。如有侵权&#xff0c;请联系删除。 主要内容&#xff1a;涉及到模板中的类模板、函数模板、成员模板以及模板模板参数&#xff0c;后面包含对象模型中虚函数调用&…

原生JS和jQuery请求接口

原生JS请求接口 get请求 //步骤一:创建异步对象 var ajax new XMLHttpRequest(); //步骤二:设置请求的url参数,参数一是请求的类型,参数二是请求的url,可以带参数,动态的传递参数starName到服务端 ajax.open(get,getStar.php?starNamename); //步骤三:发送请求 ajax.send()…

SSMBUG汇总

20240103 通用&#xff0c;驼峰命名法&#xff0c;mybatis。 mybatis入门程序中&#xff0c; // 获取对象的顺序为&#xff1a;SqlSessionFactoryBuild-》SqlSessionFactory-》SqlSessionSqlSessionFactoryBuilder sqlSessionFactoryBuilder new SqlSessionFactoryBuilder();I…

vue3-admin-element框架实现动态路由(根据接口返回)

第一步&#xff1a;在src-utils-handleRoutes&#xff0c;修改代码&#xff1a; export function convertRouter(routers) {let array routersrouters []for (let i in array) {for(let s in asyncRoutes){if (array[i].path asyncRoutes[s].path) {routers.push(asyncRout…