FCN中反卷积、上采样、双线性插值之间的关系
来源:互联网 发布:南昌小目标网络 编辑:程序博客网 时间:2024/06/05 15:05
未完待续。。。。。。
最近看很多人在群里问关于FCN中反卷积,上采样和双线性插值之间的关系,想着有必要整理下思路总结下,欢迎拍砖指正,也欢迎大家一同更新!
先看几个概念:
1、图像上采样
上采样upsampling的主要目的是放大图像,几乎都是采用内插值法,即在原有图像像素的基础上,在像素点值之间采用合适的插值算法插入新的元素。
2、线性插值法(linear interpolation)
这里讲解线性插值法的推导为了给双线性插值公式做铺垫。
线性插值法是指使用连接两个已知量的直线来确定在这个两个已知量之间的一个未知量的值的方法。
假设已知两个坐标
该直线的方程可表示为:
假设方程两边的值为α,那么这个值就是插值系数——从
这样
也就是:
3、双线性插值
双线性插值是插值算法中的一种,是线性插值的扩展。利用原图像中目标点四周的四个真实存在的像素值来共同决定目标图中的一个像素值,其核心思想是在两个方向分别进行一次线性插值。
已知的红色数据点和待插值的绿色数据点
假如我们想得到未知函数f在点P= (x,y) 的值,假设我们已知函数f在
第一步:X方向的线性插值,在Q12,Q22中插入蓝色点R2,Q11,Q21中插入蓝色点R1;
第二步 :Y方向的线性插值 ,通过第一步计算出的R1与R2在y方向上插值计算出P点。
在x与y方向上,z值成单调性特性的应用中,此种方法可以做外插运算,即可以求解Q11~Q22所构成的正方形以外的点的值。
总结:线性插值法利用原图像中两个点计算像素值进行插值,双线性插值法利用原图像中四个点计算目标像素值进行插值。
3、FCN中的反卷积DeConvolution
使用反卷积将上一层的feature map放大,并使其输出在crop layer中进行切割,使其与ground truth具有相同的尺寸来计算每个像素点的误差。在作者的原文中提到deconvolutional layer中的kernel是可以被训练的,也可以是固定的,即默认的二维bilinear kernel。
之所以说FCN中的反卷积操作不是原则意义上transposed convolution,是因为作者设置其中的学习率lr_mult为0,没有让该层学习。即卷积核是固定不变的。
下列为train.prototxt关于DeConv层的代码:
layer { name: "upscore" type: "Deconvolution" bottom: "score_fr" top: "upscore" param { lr_mult: 0 } convolution_param { num_output: 21 bias_term: false kernel_size: 64 stride: 32 }}
4、tranposed convolution
先看下卷积运算与矩阵运算之间的关系:
考虑如下一个简单的卷积层运算,其参数为:i=4,k=3,s=1,p=0,根据卷积运算得:o=2
对于上述卷积运算,原图为X,我们把上图所示的3×3卷积核重叠划分为如下所示的[4,16]的稀疏矩阵 ,以行为主,每一行的元素为:卷积核每在一个位置时,与X进行成绩的核值(未覆盖到的位置为0):
未完待续。。。。。
参考博文:http://blog.csdn.net/kekong0713/article/details/68941498
知乎:https://www.zhihu.com/question/50349594
- FCN中反卷积、上采样、双线性插值之间的关系
- fcn的反卷积
- Tensorflow的反卷积(上采样)
- Tensorflow的反卷积(上采样)
- FCN全卷积网络上采样理解
- 反卷积(Deconvolution)上采样(Upsampling)上池化(Unpooling)的区别
- 【转】关于上采样反卷积的一些知识
- 对FCN及反卷积的理解
- tensorflow中的上采样(unpool)和反卷积(conv2d_transpose)
- 全卷积网络FCN的缺陷
- FCN全卷积 crop的计算方法
- 反卷积在神经网络可视化上的成功应用
- GAN的反卷积
- 深度学习卷积网络中反卷积/转置卷积的理解 transposed conv/deconv
- FCN全卷积网络
- 卷积与反卷积的理解
- 卷积神经网络中卷积、反卷积、池化解析
- 反卷积的真正含义
- openvpn实现内网 映射到 外网
- 实现 QPushButton 默认效果
- 关于hdu 1007 老是 TLE的认知
- ARM开发板开发基础
- JAVA模拟实现Windows屏保/实现JFrame窗口透明到桌面
- FCN中反卷积、上采样、双线性插值之间的关系
- Spring 04 AOP
- 图论基本概念1
- Redis 存储分片之代理服务Twemproxy 测试
- matlab:导入文件夹内所有.mat文件
- Python中字典get方法的使用
- Spring事务管理(详解+实例
- JVM之堆内存分配
- WebView的使用小结--加载加速及缓存机制