全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络

全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络卷积神经网络CNN(YannLecun,1998年)通过构建多层的卷积层自动提取图像上的特征,一般来说,排在前边较浅的卷积层采用较小的感知域,可以学习到图像的一些局部的特征(如纹理特征),排在后边较深的卷积层采用较大的感知域,可以学习到更加抽象的特征(如物体大小,位置和方向信息等)。CNN在图像分类和图像检测领域取得了广泛应用。 CNN提取的抽象特征对图像分类、图像中包含哪些类别的物体,以及图…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

卷积神经网络CNN(YannLecun,1998年)通过构建多层的卷积层自动提取图像上的特征,一般来说,排在前边较浅的卷积层采用较小的感知域,可以学习到图像的一些局部的特征(如纹理特征),排在后边较深的卷积层采用较大的感知域,可以学习到更加抽象的特征(如物体大小,位置和方向信息等)。CNN在图像分类和图像检测领域取得了广泛应用。
 
CNN提取的抽象特征对图像分类、图像中包含哪些类别的物体,以及图像中物体粗略位置的定位很有效,但是由于采用了感知域,对图像特征的提取更多的是以“一小块临域”为单位的,因此很难做到精细(像素级)的分割,不能很准确的划定物体具体的轮廓。
 
针对CNN在图像精细分割上存在的局限性,UC Berkeley的Jonathan Long等人2015年在其论文 “Fully convolutional networks for semantic segmentation”(用于语义分割的全卷积神经网络)中提出了Fully Convolutional Networks (FCN)用于图像的分割,要解决的核心问题就是图像像素级别的分类。论文链接: https://arxiv.org/abs/1411.4038
 
FCN与CNN的核心区别就是FCN将CNN末尾的全连接层转化成了卷积层:

全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络

以Alexnet为例,输入是227*227*3的图像,前5层是卷积层,第5层的输出是256个特征图,大小是6*6,即256*6*6,第6、7、8层分别是长度是4096、4096、1000的一维向量。

全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络

 

在FCN中第6、7、8层都是通过卷积得到的,卷积核的大小全部是1*1,第6层的输出是4096*7*7,第7层的输出是4096*7*7,第8层的输出是1000*7*7(7是输入图像大小的1/32),即1000个大小是7*7的特征图(称为heatmap)。

全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络

 

经过多次卷积后,图像的分辨率越来越低,,为了从低分辨率的heatmap恢复到原图大小,以便对原图上每一个像素点进行分类预测,需要对heatmap进行反卷积,也就是上采样。论文中首先进行了一个上池化操作,再进行反卷积,使得图像分辨率提高到原图大小:

全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络

 

 对第5层的输出执行32倍的反卷积得到原图,得到的结果不是很精确,论文中同时执行了第4层和第3层输出的反卷积操作(分别需要16倍和8倍的上采样),再把这3个反卷积的结果图像融合,提升了结果的精确度:

全卷积神经网络FCN可以通过什么提高图像分割精度_全连接神经网络

最后像素的分类按照该点在1000张上采样得到的图上的最大的概率来定。
 

FCN可以接受任意大小的输入图像,但是FCN的分类结果还是不够精细,对细节不太敏感,再者没有考虑到像素与像素之间的关联关系,丢失了部分空间信息。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/179437.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 基于epoll的TP传输层实现

    1.抽象TP传输层设计在使用epoll实现实际的传输层之前,先设计一个抽象的传输层,这个抽象的传输层是传输层实现的接口层。接口层中一共有以下几个通用的类或者接口:(1)Socket:通用的套接

    2021年12月28日
    47
  • python保存图片的常用方法

    保存图片的常用方法1.PIL的保存图片方法path=r”./001.jpg”#图片路径img=Image.open(path)#打开图片img.save(“1.jpg”)#将图片保存为1.jpg2.opencv保存图片path=r”./001.jpg”#图片路径#img=cv.imdecode(np.fromfile(“动漫人物_0.jpg”,np.uint8))#含有中文路径的图片打开img=cv2.imread(path)#读

    2022年4月4日
    55
  • Exception in thread “main“ java.lang.Error: Unresolved compilation problems:

    Exception in thread “main“ java.lang.Error: Unresolved compilation problems:

    2021年10月3日
    49
  • uva-211-The Domino Effect

    uva-211-The Domino Effect

    2022年1月21日
    38
  • 软件测试划分_软件测试有哪些

    软件测试划分_软件测试有哪些1、兼容性测试例如:测试一个文档使用word2003能打开,无法打开word2007的现象。一般兼容性测试的手机模块内容包括:SIM卡兼容性测试、BT、PC驱动、SD卡和WLAN。2、自动化测试解释:自动化测试其实就是测试软件的可靠性,可以叫做稳定性测试。常见的自动化测试有 ATT稳定性测试 和 Monkey稳定测试。3、外场测试外场测

    2022年9月5日
    3
  • Docker 安装 RabbitMQ[通俗易懂]

    Docker 安装 RabbitMQ[通俗易懂]Docker安装RabbitMQ1RabbitMQ端口作用2RabbitMQ常用命令2.1用户管理2.2用户角色2.3用户权限2.4节点类型2.5启用插件3Docker安装RabbitMQ4Docker安装MySQL85Docker安装Redis63Docker安装Yapi1RabbitMQ端口作用RabbitMQ端口作用4369epmd,RabbitMQ节点和CLI工具使用的对等发现服务5672、5671由不带TLS和带

    2022年5月24日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号