caffe crop层理解
来源:互联网 发布:同行业数据查询 编辑:程序博客网 时间:2024/05/17 20:50
转自: http://www.cnblogs.com/kunyuanjushi/p/5937083.html
在Fully Convolutional Networks(FCN)中,会用到Crop 层,他的主要作用是进行裁切。下面我们举一个例子来说明如何使用Crop 层。
Caffe中的数据是以 blobs形式存在的,blob是四维数据,即 (Batch size, number of Chennels, Height, Width)=(N, C, H, W)。---(0,1,2,3)
Crop层的输入(bottom blobs)有两个,让我们假设为A和B,输出(top)为C。
- A是要进行裁切的bottom,他的size是 (20,50,512,512)
- B是裁切的参考输入,他的size是(20,10,256,256)
- C是输出(top blob),由A裁切而来,那么他的size是(20,10,256,256)
在这个例子中,轴0的维度不变,我们只需要裁切blob的轴1,2,3,所以我们设置axis=1,代表我们将会裁切轴1和它之后的所有轴。
有两个裁切模式:
模式1---给出3个offsets,每个针对一个dimension,offset=(25,128,128)
- axis=1,offset=(25,128,128)
- crop operation: C = A[: , 25: 25+B.shape[1] , 128: 128+B.shape[2] , 128: 128+B.shape[3] ]
- 也就是说,对于A的轴1,对称裁切了25-35
- 对称裁切:offset = (Original_length - desired length ) / 2
模式2---给出1个offset,适用于三个dimension,offset=25
- 那么就相当于模式1 的 offset=(25,25,25)
模式1的prototxt写法如下:
layer { name: "crop_layer" type: "Crop" bottom: "A" bottom: "B" top: "C" crop_param { axis: 1 offset: 25 offset: 128 offset: 128 }}
阅读全文
1 0
- caffe crop层理解
- caffe crop层
- caffe中的crop层
- Caffe crop
- caffe 层参数理解
- FCN网络中使用的caffe类型层汇总--Convolution/Deconvolution/Crop/Eltwise/SoftmaxWithLoss
- 深度学习caffe平台-----裁剪层(Crop Layer)参数及参数详解
- caffe 卷积层的理解
- 关于caffe innerproduct层的理解
- caffe(12) CNN各层的理解
- caffe 训练过程源码层理解
- caffe,deeplab,对Interp层的理解
- 将caffe变成crop长宽不同的大小
- 图像分割crop设置 caffe fully convolutional cnn
- caffe(1)参数和数据层的理解
- Caffe中crop_layer层的理解和使用
- caffe学习笔记31-理解全连接层
- caffe 里deconvolution layer (解卷积层)的理解
- 原型和原型链
- Python数据结构--单链表
- bash: 一键安装TensorFlow
- c#中Class和Struct使用与性能的区别
- 17/7/31学习笔记01
- caffe crop层理解
- 7.31 C
- web消除用户的后退操作
- Python数据结构--栈
- webservice之xfire服务搭建及客户端请求(maven搭建项目)
- 全局变量和局部变量
- linux常用变量含义
- 货拉拉APP系统 软件开发
- Numpy入门学习之(四)矩阵分解简介