随笔分类 - caffe
摘要:https://github.com/afantideng/R-FCN-PSROIAlign
阅读全文
摘要:下图是jiayangqing在知乎上的回答,其实过程就是把image转换成矩阵,然后进行矩阵运算 卷积的实现在conv_layer层,conv_layer层继承了base_conv_layer层,base_conv_layer层是卷积操作的基类,包含卷积和反卷积.conv_layer层的前向传播是通
阅读全文
摘要:https://hal.inria.fr/file/index/docid/112631/filename/p1038112283956.pdf caffe的卷积计算的优化来自这篇paper,实际上就是将卷积核矩阵和feature map矩阵(或者图像矩阵)转换为大的矩阵 jiayangqing自己
阅读全文
摘要:BLAS(Basic Linear Algebra Subprograms)库,是用Fortran语言实现的向量和矩阵运算库,是许多数值计算软件库的核心, 但也有一些其它的包装, 如cblas是C语言, 也有C++的包装, boost/ublas 是C++ template class的实现; 另外
阅读全文
摘要:实现新layer后,如果我还是在原来的build文件夹里面make,好像是不会编译新的层的,所以跑程序会报没有你新添加的这个层.要么make clear重新make,要么就直接./build.sh,这两个都是完全的重新编译.
阅读全文
摘要:首先要在caffe.proto中的LayerParameter中增加一行optional FocalLossParameter focal_loss_param = 205;,然后再单独在caffe.proto中增加 message FocalLossParameter{ optional floa
阅读全文
摘要:https://www.letslearnai.com/2018/03/10/what-are-l1-and-l2-loss-functions.html http://rishy.github.io/ml/2015/07/28/l1-vs-l2-loss/ L1-loss L2-loss L1 l
阅读全文
摘要:个人感觉相当于L2范式开平方,也相当于针对两个向量的欧氏距离开平方 说的更直白点就是两个向量对应位置相减得到每个位置的差,然后把每个位置的差开平方再相加 前向传播cpp代码: 注意:caffe_cpu_dot做的是点积,点积对应点相乘后还要把所有这些乘积结果相加,不只是做乘积 将bottom0和bo
阅读全文
摘要:这是在frcnn_data_layer的操作,即读图片的操作 这里的param是来自于这一层的参数FrcnnTrainDataParameter param = this->layer_param_.frcnn_train_data_param(); mu默认是0,sigma默认是8 randn是m
阅读全文
摘要:opencv的resize默认的是使用双线性插值INTER_LINEAR,也可以是尝试其他的方式进行插值操作
阅读全文
摘要:frcnn_train_data_param 下面是frcnn_train_data_layer使用distort的代码,通过调用ApplyDistort函数来实现,这个函数是在im_transforms.cpp里实现的 DistortionParameter是caffe.proto中的messag
阅读全文
摘要:就是将rgb图的3个channel随机打乱顺序,给定一个概率值是否执行这个操作,v系列模型的概率一般都设置的为0
阅读全文
摘要:https://www.cnblogs.com/wangyblzu/p/5710715.html HSV和RGB一样是一种图像的颜色模型,h表示色调,s表示饱和度 1.RandomHue 需要先把rgb图转成hsv图,然后对第一个通道也就是h的通道的每个值加上delta,最后再换转成rgb图 2.R
阅读全文
摘要:1. opencv的convertTo的讲解:https://blog.csdn.net/qq_22764813/article/details/52135686 https://blog.csdn.net/qq_15505637/article/details/53887274 type是是否改变
阅读全文
摘要:https://blog.csdn.net/zhaishengfu/article/details/51971768?locationNum=3&fps=1
阅读全文
摘要:http://blog.csdn.net/u013989576/article/details/73294131 都是按元素进行计算 Eltwise层的操作有三个:product(点乘)、sum(相加减)、max(取最大值),其中,sum是默认操作。PROD表示将A、B按元素相乘,SUM表示将A、B
阅读全文
摘要:A是要进行剪裁的blob,B是参考,C是由A剪裁出来的输出。 模式1和模式2不同在于offset,模式1中每个dimension可以不同,模式2中用一个值表示了所有dimension的值。 axis表示从哪一个轴开始剪裁,而不是只剪裁那一个轴 https://www.cnblogs.com/kuny
阅读全文
摘要:cnn网络中,网络更新一次参数是根据loss反向传播来,这个loss是一个batch_size的图像前向传播得到的loss和除以batch_size大小得到的平均loss。 softmax_loss前向传播中有这样一段代码: loss/get_normalizer(normalization_,va
阅读全文
摘要:对于layer层的cpp文件,你可以用LOG和printf、cout进行调试,cu文件不能使用LOG,可以使用cout,printf。 对于softmaxloss的layer层,既有cpp文件又有cu文件,其中cu文件只实现了前向和反向传播,cpp文件既实现了前向、反向,也实现了layer setu
阅读全文
摘要:outer_num_:相当于batch_size dim: c*w*h spatial_dim(inner_num_):w*h softmax_loss.cpp的代码: 其实可以看出来count的只取前,不取后,(0, softmax_axis_)只取了0这一个轴
阅读全文