为什么全卷积可以输入任意大小的图片,这是因为全连接的输入特征必须是固定大小的,所以输入图片必须是固定大小,而全卷积的话由于最终的输出只是通道上的值,比如最后输出置信度和偏移,共5个值,用全连接的话输出神经元就得是5个,而全连接的话只需要给5个通道就可以了,至于卷出来的最终图像大小是多少无所谓,因为我只取那个通道的值,示例如下:

from Net import Pnet
from PIL import Image
import torch
import numpy as npimage = Image.open(r'C:\Users\34801\Desktop\test_0808\test\11111.jpg')
image = np.array(image)
image = np.transpose(image,[2,0,1])
image = np.expand_dims(image,axis=0)
image = torch.FloatTensor(image)
net = Pnet()
conf,off = net(image)
print(conf[0,:,0,0],off[0,:,0,0])

输出:tensor([0.0796], grad_fn=<SelectBackward>) tensor([-1.3049, -2.7597,  5.5426, -4.7604], grad_fn=<SelectBackward>)

我打印看看形状:

print(conf.shape,off.shape,image.shape)

输出:

torch.Size([1, 1, 342, 595]) torch.Size([1, 4, 342, 595]) torch.Size([1, 3, 693, 1200])

因此置信度和偏移是一个矩阵。

所有这就是为什么全卷积网络可以输入任意大小的图片的原因

为什么全卷积网络可以输入任意大小的图片相关推荐

  1. Udacity机器人软件工程师课程笔记(二十九) - 全卷积网络(FCN)

    全卷积网络(FCN) 1.全卷积神经网络介绍 FCN对图像进行像素级的分类,从而解决了语义级别的图像分割(semantic segmentation)问题.与经典的CNN在卷积层之后使用全连接层得到固 ...

  2. 全卷积网络(FCN)与图像分割

    全卷积网络(FCN)与图像分割 从图像分类到图像分割 卷积神经网络(CNN)自2012年以来,在图像分类和图像检测等方面取得了巨大的成就和广泛的应用. CNN的强大之处在于它的多层结构能自动学习特征, ...

  3. 全卷积网络FCN详解

    转载自:  点击打开链接 背景 CNN能够对图片进行分类,可是怎么样才能识别图片中特定部分的物体,在2015年之前还是一个世界难题.神经网络大神Jonathan Long发表了<Fully Co ...

  4. FCN全卷积网络随笔

    参考:四.全卷积网络FCN详细讲解(超级详细哦) 这篇文章已经写的很好了,这里说两个我考虑的点. 第一个就是:FCN在缩小成heat map,为什么要通过上采样还原回原图大小? 我觉得这个的原因是因为 ...

  5. 【语义分割】全卷积网络(Fully Convolutional Networks, FCN)详解

    论文题目:<Fully Convolutional Networks for Semantic Segmentation> 论文地址:https://arxiv.org/abs/1411. ...

  6. 转:全卷积网络(FCN)与图像分割

    学习收藏. 转载:https://blog.csdn.net/taigw/article/details/51401448 从图像分类到图像分割 卷积神经网络(CNN)自2012年以来,在图像分类和图 ...

  7. 计算机视觉——全卷积网络(FCN)的学习笔记

    1 前言 最近语义分割的课程中讲到了全卷积网络FCN,感觉还是挺有趣的, FCN有一些独特的特点,其中我觉得最重要的特点,就是:输入图像大小的任意性,不过这种任意性不是通过resize操作实现的: 从 ...

  8. 全卷积网络FCN与卷积神经网络CNN的区别

    背景 CNN能够对图片进行分类,可是怎么样才能识别图片中特定部分的物体,在2015年之前还是一个世界难题.神经网络大神Jonathan Long发表了<Fully Convolutional N ...

  9. VGG16全卷积网络 以VGG代码为例

    文章目录 全卷积网络 以VGG代码为例 发展历史 VGG 全卷积VGG16的结构: 卷积层代替全连接 1X1的卷积的作用 全卷积网络 以VGG代码为例 发展历史 VGG VGG之所以经典,是因为VGG ...

最新文章

  1. 双系统gazebo闪退_记录Ubuntu16.04下PX4联合Gazebo仿真时遇到的问题与解决方法
  2. ZooKeeper原理及使用
  3. 为什么互联网公司都喜欢自研业务系统?
  4. gd动态曲线 php_PHP GD库动态生成折线图的实例代码
  5. Bash脚本教程之变量
  6. matlab 建立ctruct,扩频通信系统及MATLAB仿真1
  7. [go]---从java到go(01)---基础与入门上手
  8. 深入剖析:Super Jumping! Jumping! Jumping! (动规)
  9. Oracle数据字典全解 (1)
  10. 巡风代码架构简介以及Flask的项目文件结构简介
  11. [MongoDB]安装MongoDB遇到问题
  12. SDUT1500Message Flood(字典树)
  13. Vim下的插件管理工具pathogen简介
  14. 用python写一段话.使这句话在电脑屏幕中循环播放_Python笔记_第一篇_面向过程第一部分_6.循环控制语句(while 和 for)_...
  15. neo4j社区版下载
  16. MATLAB简单解决输出某个数(组)内自然数的阶乘和问题
  17. (JavaScript案例)可拖动的模态框
  18. python求不规则图形面积_python计算不规则图形面积算法
  19. Ubuntu使用火狐浏览器下载安装AdobeFlashPlayer
  20. Quality Trimming Via Trimmomatic

热门文章

  1. TensorFlow 从入门到精通(八):TensorFlow tf.nn.conv2d 一路追查
  2. RabbitMQ:订阅模型-消息订阅模式
  3. 嵌入式:利用TF卡给4412开发板的emmc上烧写安卓系统
  4. 程序猿要爱惜自己的身体
  5. 域控制器组策略:统一修改用户计算机桌面壁纸
  6. 一位读者小姐姐的阿里Java后台面经分享,快被问哭了!(附部分问题详解)
  7. 微信小程序Cannot read property ‘data‘ of undefined;
  8. js取整、取余等常用方法
  9. 介绍几个语言生成的预训练模型
  10. Flutter 自定义插件基础