R-FCN配置(python版)

https://github.com/Orpine/py-R-FCN
首先,需要安装Caffe和pycaffe,起码机子搭过caffe环境
其次,可能需要Python安装包:cython,python-opencv,easydict
先装一个python包管理器pip:

sudo apt-get install python-pip
再装那三个包:
sudo pip install cython
sudo pip install python-opencv
sudo pip install easydict

硬件准备
ResNet50:4个G显存;ResNet101:6个G显存

1、克隆工程:

git clone https://github.com/Orpine/py-R-FCN.git

2、克隆caffe

cd py-R-FCN
git clone https://github.com/Microsoft/caffe.git
cd caffe
git reset --hard 1a2be8e

3、编译caffe

cp Makefile.config.example Makefile.config
# In your Makefile.config, make sure to have this line uncommented
WITH_PYTHON_LAYER := 1
# Unrelatedly, it's also recommended that you use CUDNN
USE_CUDNN := 1
make -j8 && make pycaffe

4、编译lib
cd ../lib
make


5、下载数据(VOC,COCO),下载模型(ResNet,https://pan.baidu.com/s/1hrOZdju


6、修改./tools/train_net.py中的函数

def parse_args():
    """
    Parse input arguments
    """
    parser = argparse.ArgumentParser(description='Train a R-FCN network')
    parser.add_argument('--gpu', dest='gpu_id',
                        help='GPU device id to use [0]',
                        default=0, type=int)
    parser.add_argument('--solver', dest='solver',
                        help='solver prototxt',
                        default='models/pascal_voc/ResNet-50/rfcn_end2end/solver_ohem.prototxt', type=str)
    parser.add_argument('--iters', dest='max_iters',
                        help='number of iterations to train',
                        default=40000, type=int)
    parser.add_argument('--weights', dest='pretrained_model',
                        help='initialize with pretrained model weights',
                        default='data/imagenet_models/ResNet-50-model.caffemodel', type=str)
    parser.add_argument('--cfg', dest='cfg_file',
                        help='optional config file',
                        default='experiments/cfgs/rfcn_end2end_ohem.yml', type=str)
    parser.add_argument('--imdb', dest='imdb_name',
                        help='dataset to train on',
                        default='voc_2007_trainval', type=str)
    parser.add_argument('--rand', dest='randomize',
                        help='randomize (do not use a fixed seed)',
                        action='store_true')
    parser.add_argument('--set', dest='set_cfgs',
                        help='set config keys', default=None,
                        nargs=argparse.REMAINDER)

    # if len(sys.argv) == 1:
    #     parser.print_help()
    #     sys.exit(1)

    args = parser.parse_args()
    return args

我这里偷了个懒.还是用的py-faster-rcnn中的VOC2007数据
7、训练模型
python ./tools/train_net.py

7.1、官方脚本详见./experiments/scripts下的几个rfcn开头的脚本,默认情况需要合并voc2012和voc2007
7.2、训练自己的数据详见http://www.cnblogs.com/CarryPotMan/p/5390336.html


8、测试demo
修改

./tools/demo_rfcn.py
替换成自己的模型,配置文件,数据就行了




  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
R-FCN(Region-based Fully Convolutional Networks)是一种用于目标检测的深度学习网络模型。它是基于全卷积网络(Fully Convolutional Networks)和区域建议网络(Region Proposal Networks)的结合。R-FCN 在目标检测任务上取得了较好的性能。 关于 R-FCN 的 Matlab 实现,你可以参考以下步骤: 1. 下载 R-FCN 的源代码。你可以在 GitHub 上找到一些开源实现,如 https://github.com/daijifeng001/R-FCN 或者其他类似的仓库。 2. 安装 Matlab 并配置深度学习框架。Matlab 支持多种深度学习框架,如 TensorFlow、PyTorch、Caffe 等。根据你选择的 R-FCN 实现,安装对应的深度学习框架并配置 Matlab 的环境。 3. 加载预训练模型。R-FCN 需要在大规模数据集上进行预训练,你需要下载相应的预训练模型,并将其加载到 Matlab 中。 4. 准备数据集。为了使用 R-FCN 进行目标检测,你需要准备一个目标检测数据集,包括图像和标注信息。确保数据集格式与 R-FCN 的输入要求相符。 5. 运行训练代码。根据你选择的 R-FCN 实现,运行相应的训练代码来训练网络模型。你可能需要调整一些训练参数,如学习率、批大小等。 6. 进行目标检测。训练完成后,你可以使用 R-FCN 进行目标检测。提供待检测图像作为输入,R-FCN 将输出目标类别和位置信息。 请注意,以上步骤仅提供了一般的指导,具体实现可能因不同的 R-FCN 实现而有所差异。在实际操作中,请参考相应的文档和代码示例,以确保正确实现 R-FCN 网络。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值