
caffe源码与linux命令学习笔记
PoemK
这个作者很懒,什么都没留下…
展开
-
caffe源码与linux命令学习笔记
问题1: g++ 命令中的-I -L :例如: g++ -o netapp net_demo.cpp -I $CAFFE_ROOT/include -I $CAFFE_ROOT/.build_release/src/ -I /usr/local/cuda/include -L $CAFFE_ROOT/build/lib -lcaffe -lglog -lboost_system -lpro原创 2017-12-08 19:23:34 · 789 阅读 · 0 评论 -
C++ 中的访问权限与继承方式
1.访问权限:访问权限publicprotectedprivate对本类可见可见可见对子类可见可见不可见对外部(调用方)可见不可见不可见默认的继承方式是private继承:class B:原创 2017-12-09 11:28:34 · 271 阅读 · 0 评论 -
neuron_layer.cpp 、relu_layer.cpp 笔记
1.neuron_layer.hpp 、neuron_layer.cpp class NeuronLayer 这个类公有继承自Layer类,特点是输入blob数量为1,输出blob数量也为1。.cpp文件里面就实现了一个函数Reshape(在layer.hpp中Layer类里定义为虚函数),功能是将输出blob的形状改为和输入blob一样。 hpp:#ifndef CAFFE_NEURON_LA原创 2018-01-01 17:54:16 · 412 阅读 · 0 评论 -
caffe中的卷积层源码笔记
卷积层的实现在conv_layer.hpp和conv_layer.cpp,在于其中的ConvolutionLayer类,继承于BaseConvolutionLayer类。 卷积主要的处理过程是将图像bottom[i]->cpu_data()+j * this->bottom_dim_进行im2col处理,转化成一个新的矩阵col_buff,然后用权值矩阵weights∗*转化后的矩阵 得到原创 2018-01-12 10:57:56 · 929 阅读 · 0 评论 -
common.hpp、common.cpp 阅读笔记
简要说明common文件定义了一个Caffe类,Caffe类里面定义了一个RNG类(random number generator ),RNG类里面定义了一个Generator类,Generator类里面有一个指向rng_t的指针。rng_t其实就是就是boost::mt19937。(这是因为在rng.hpp中有这么一句话:typedef boost::mt19937 rng_t;)原创 2017-12-31 11:48:43 · 1532 阅读 · 0 评论 -
im2col.cpp
主要是两个函数,一个是im2col_cpu,一个是col2im_cpu函数。im2col函数功能的是将原始的图像数据转化为一个矩阵,用于卷积操作,转换的目的是为了方便矩阵乘法。在进行了矩阵乘法之后,还要转换为图像形式,所以还需要col2im函数。矩阵乘法参考: caffe im2col 详解im2col 具体例子参考: caffe源码深入学习6:超级详细的im2col绘图解析,分析caffe卷积操作原创 2018-01-03 10:55:04 · 1021 阅读 · 0 评论 -
layer_factory.hpp 阅读笔记
/** * @brief A layer factory that allows one to register layers. * During runtime, registered layers can be called by passing a LayerParameter * protobuffer to the CreateLayer function: * * L原创 2017-12-29 16:32:23 · 615 阅读 · 0 评论 -
caffe中的Solver、SGDSolver、 solver.prototxt 学习笔记
1.Solver、SGDSolver (Solver、SGDSolver类写自于文件:solver.h(c)pp、sgd_solvers.h(c)pp)class SGDSolver : public SolverDtype>SGDsolver类继承自Solver2.solver.prototxt caffe训练命令:两个例子:./build/tool原创 2018-01-07 12:14:42 · 3291 阅读 · 0 评论