【caffe】Layer解读之:Date
- Layer type: Date
- 头文件位置:./include/caffe/layers/data_layer.hpp
- CPU 执行源文件位置:./src/caffe/layers/data_layer.cpp
- Date层的功能:读取LevelDB,LMDB,并进行一系列前处理。
layer {name: "cifar"type: "Data"top: "data"top: "label"include {phase: TRAIN}transform_param {scale:0.0078125mirror:truecrop_size:32mean_value: 128mean_value: 128mean_value: 128}data_param {source: "examples/cifar10/cifar10_train_lmdb"batch_size: 32backend: LMDB}
}
mean_value和scale的作用:这两个操作都是像素级的操作mean_value就是对所有像素减均值,而scale一般是在mean_value之后对每个像素乘以scale,如:0.0078125 = 1/128。
crop_size的作用:crop_size对图像增强
caffe源码之ImageDataLayer解析
caffe源码解读(5)-image_data_layer.cpp
LMDB
Blob
Blob源码
protobuf解释
参数定义
message DataParameter {enum DB { LEVELDB = 0; LMDB = 1;}// Specify the data source.optional string source = 1;// Specify the batch size.optional uint32 batch_size = 4;// The rand_skip variable is for the data layer to skip a few data points// to avoid all asynchronous sgd clients to start at the same point. The skip// point would be set as rand_skip * rand(0,1). Note that rand_skip should not// be larger than the number of keys in the database.// DEPRECATED. Each solver accesses a different subset of the database.//在开头跳过这个数量的输入; 对异步sgd很有用optional uint32 rand_skip = 7 [default = 0];optional DB backend = 8 [default = LEVELDB];// DEPRECATED. See TransformationParameter. For data pre-processing, we can do// simple scaling and subtracting the data mean, if provided. Note that the// 数据比例缩放,注意该操作处于减均值操作之后optional float scale = 2 [default = 1];// 指定均值文件路径,注意不能同时指定mean_file 和 mean_valueoptional string mean_file = 3;// DEPRECATED. See TransformationParameter. Specify if we would like to randomly// 指定从原图随机crop的尺寸optional uint32 crop_size = 5 [default = 0];// 是否要对输入图像采用随机水平镜像See TransformationParameter. optional bool mirror = 6 [default = false];// 强制将图片转为三通道彩色图片optional bool force_encoded_color = 9 [default = false];// 预先存取多少个batch到host memory// (每次forward完成之后再全部重新取一个batch比较浪费时间), optional uint32 prefetch = 10 [default = 4];
}
transform_param
// transform 参数
message TransformationParameter {// 数据比例缩放,注意该操作处于减均值操作之后optional float scale = 1 [default = 1];// 是否要对输入图像采用随机水平镜像optional bool mirror = 2 [default = false];// 指定从原图随机crop的尺寸optional uint32 crop_size = 3 [default = 0];// 指定均值文件路径,注意不能同时指定mean_file 和 mean_valueoptional string mean_file = 4;// 指定均值,如果只指定一个均值,则所有通道均减去该均值;如果指定了多个,则每个通道减去对应均值repeated float mean_value = 5;// 是否强制转为三通道图像optional bool force_color = 6 [default = false];// 强制转为单通道图像optional bool force_gray = 7 [default = false];
}
data_param
message ImageDataParameter {// Specify the data source.optional string source = 1;// Specify the batch size.optional uint32 batch_size = 4 [default = 1];// The rand_skip variable is for the data layer to skip a few data points// to avoid all asynchronous sgd clients to start at the same point. The skip// point would be set as rand_skip * rand(0,1). Note that rand_skip should not// be larger than the number of keys in the database.optional uint32 rand_skip = 7 [default = 0];// 每一个 epoch是否打乱数据.optional bool shuffle = 8 [default = false];// 如果new_height or new_width 不等于0,则会resize图像.optional uint32 new_height = 9 [default = 0];optional uint32 new_width = 10 [default = 0];// 指定图片为彩色还是灰度图optional bool is_color = 11 [default = true];// 数据比例缩放,注意该操作处于减均值操作之后optional float scale = 2 [default = 1];//均值文件路径optional string mean_file = 3;//图片数据根目录optional string root_folder = 12 [default = ""];
}
【caffe】Layer解读之:Date相关推荐
- Caffe 代码解读之全连接层 inner product layer
今天来看一下全连接层的代码.首先,我们要知道全连接层在做什么.先来看一下caffe的官方文档,介绍如下: 可以看到,输入为n c h w,输出为n c_o 1 1 那么,它究竟做了什么那? 假设con ...
- Caffe 代码解读之 softmax layer
转自http://zhangliliang.com/2015/05/27/about-caffe-code-softmax-loss-layer/ 关于softmax回归 看过最清晰的关于softma ...
- Caffe代码解读2--检测程序解读
在上一篇文章Caffe代码解读1--从一段命令行开始,我们说了如何训练一个神经网络,并以SSD网络为例,对用到的python脚本进行了分析.在这篇文章中,我们开始分析,如何使用神经网络进行目标检测,依 ...
- Caffe 代码解读之全连接层concat layer
今天,我们看一下caffe的拼接层,即将两个或多个layer进行拼接. 首先,看一下caffe官方文档. 同其他layer一样,分为setup.reshape.Forward_cpu.Backward ...
- 【caffe】Layer解读之:Flatten
Layer type: Flatten 头文件位置:./include/caffe/layers/flatten_layer.hpp CPU 执行源文件位置: ./src/caffe/layers/f ...
- Caffe Layer 系列(一):Input层、Data层
1.Input layer Input layer用在deploy文件测试模型效果,需要代码中手动指定网络输入数据,唯一的参数BlobShape设定输入数据的维度 caffe.proto中定义如下: ...
- caffe layer层详解
1.基本的layer定义,参数 1.基本的layer定义,参数 如何利用caffe定义一个网络,首先要了解caffe中的基本接口,下面分别对五类layer进行介绍 Vision Layers 可视化层 ...
- caffe层解读系列——Data以及ImageData层用法
直接举一个data层的使用例子: layer {name: "cifar"type: "Data"top: "data"top: " ...
- ns3 Traffic Control Layer解读
reference 官网模块设计:traffic-control-layer 流量控制层如何拦截传出和传入数据包的更多详细信息 关于数据包如何遍历网络堆栈的讲解 – tl;dr 目前感觉不安装qdis ...
- Caffe源码中Pooling Layer文件分析
Caffe源码(caffe version commit: 09868ac , date: 2015.08.15)中有一些重要的头文件,这里介绍下include/caffe/vision_layers ...
最新文章
- Docker容器中挂载NFS共享目录
- Android音量控制曲线
- 现有的iOS项目集成ReactNative的记录文档
- Centos下安装apahce的configure: error: APR not found. Please read the documentation解决办法
- CVPR!你凭什么收录我3篇论文!? 1
- idea maven +spring mvc
- python真是最烂的语言_在大型项目上,Python 是个烂语言吗?
- magento 架构原理
- C++ map的基本操作和使用
- 【前端】相信你会用到的一篇笔记---CSS篇(2)
- python中List和Tuple的区别
- MapStruct 代码生成器
- lingo_java_Lingo 12
- Linux perlbrew Perl5 安装教程
- 文献阅读三—Deep Text Classification Can be Fooled
- 【推荐系统】特征工程技巧(kaggle比赛技巧、tx的做法)
- com.101tec.zkclient使用
- java统计词频算法_Java实现的词频统计——功能改进
- Vue.js安装方式
- 放假期间网站被挂马的解决办法