CAFFE源码阅读(compute_image_mean.cpp)
2015-10-07 16:46
483 查看
介绍
在使用caffe时,需要从原始的图像数据中建立caffe接受的输入数据imdb。在此过程中,有一步为计算平均值。是用$CAFFE/tool/compute_image_mean.cpp实现的。根据教程,对这一部分代码的阅读可以学习熟悉如何操作多个组件,包括:protocol buffers,leveldbs和logging。这里是我对与compute_image_mean.cpp的阅读理解。该文件内容比较少,是一个很好的例子文件,将作为我阅读caffe源码的第一个文件。阅读中可能需要了解的东西:
gflags,这里我参考了http://www.leoox.com/?p=270对于gflags的一些介绍。
boost::scoped_ptr,Boost智能指针。这里不在介绍。
进入主题
第一个遇到的类DB。数据结构: 类DB,头文件caffe/util/db.hpp,CPP文件caffe/src/caffe/util/db.cpp。
[code]class DB { public: DB() { } virtual ~DB() { } virtual void Open(const string& source, Mode mode) = 0; virtual void Close() = 0; virtual Cursor* NewCursor() = 0; virtual Transaction* NewTransaction() = 0; DISABLE_COPY_AND_ASSIGN(DB); };
这里定义了类DB,都是一些虚函数。
接着是lmdb与leveldb,是DB的子类,对应于caffe输入的两类数据。这里主要使用到lmdb,因此以它为例。
相关文章推荐
- 很容易学习的JQuery库 : (四) 效果
- gurnt js css 压缩合并
- css position 应用(absolute和relative用法)
- HTML5学习之css3.0
- JSP-标准动作标记
- HTML5移动Web开发(十)——在浏览器中启动手机原生应用
- JSP-注释,脚本元素,指令
- 行内脚本的位置放置----css阻塞行内脚本
- node lesson2
- 深入理解javascript闭包
- js中函数之函数名带括号与不带括号的区别
- 用JavaScript动态加载CSS和JS文件
- jsp的部分用法
- JavaScript编程常用函数
- JSP页面用EL表达式 输出date格式
- UVA 1213 Sum of Different Primes
- Bootstrap框架学习
- hdu 5487 Difference of Languages BFS
- jQuery源码分析之parents,parentsUntil,next,prev,nextAll,prevAll,nextUntil,prevUntil,siblings,children
- jsp中的几个内置对象