以下是最近做项目时用到的,亲测有效。
1、ShuffleNet
层定义:https://github.com/farmingyard/ShuffleNet
预训练模型:https://pan.baidu.com/s/1eS8NOm2,提取码:bcj6
(1)将cpp 和cu文件复制到caffe/src/caffe/layers目录下,将hpp文件复制到caffe/include/caffe/layers/目录下,
(2)修改在caffe/src/caffe/proto目录下的caffe.proto文件
message LayerParameter {
...
optional ShuffleChannelParameter shuffle_channel_param = 164;
...
}
...
message ShuffleChannelParameter {
optional uint32 group = 1[default = 1]; // The number of group
}
(3)编译caffe
cd caffe_ROOT
make all -j8
shufflenetv1和v2都有的版本:
https://github.com/miaow1988/ShuffleNet_V2_pytorch_caffe/releases
2、MobileNet
层定义:https://github.com/farmingyard/caffe-mobilenet
(1)将cpp 和cu文件复制到caffe/src/caffe/layers目录下,将hpp文件复制到caffe/include/caffe/layers/目录下,
(2)编译caffe
cd caffe_ROOT
make all -j8
(3)替换相应的层的名字
参考博文:https://blog.youkuaiyun.com/fengzhongluoleidehua/article/details/80797660