Fast-rcnn 训练(2)- 跑demo

1.准备预训练的模型

运行作者的demo之前,首先需要下载预训练好的模型

cd $FRCN_ROOT
./data/scripts/fetch_fast_rcnn_models.sh

这个fetch_fast_rcnn_models.sh文件就是帮你下载模型的。
下载下来的模型会放在
$FRCN_ROOT/data/fast_rcnn_models文件夹下面
同时还有一个“fetch_imagenet_models.sh”文件,这个文件下载的是一个空的模型,可以用于以后的训练。这个后面会说。

2.demo.py

在tools文件夹下面,有一个demo.py的文件,可以直接运行跑出demo
作者给的运行方法非常简单

cd $FRCN_ROOT
./tools/demo.py

效果如图所示
这里写图片描述
如果是用笔记本上的或者一些一般的显卡运行demo的话,需要加参数的。

./tools/demo.py --net caffenet

这时候来看一下demo.py的内部:

    print '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
    print 'Demo for data/demo/000004.jpg'
    demo(net, '000004', ('car',))

    print '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
    print 'Demo for data/demo/001551.jpg'
    demo(net, '001551', ('sofa', 'tvmonitor'))

首先是main函数中,可以看到测试特定图片的函数就是demo函数
第一个参数net刚已经说过了,可以运行的时候手动改为caffenet,不然默认就是VGG16
第二个参数是测试的图片名,第三个是要测试的类
下面是demo函数中开始的代码

  box_file = os.path.join(cfg.ROOT_DIR, 'data', 'demo',
                            image_name + '_boxes.mat')
  obj_proposals = sio.loadmat(box_file)['boxes']
  im_file = os.path.join(cfg.ROOT_DIR, 'data', 'demo', image_name + '.jpg')

那就可以看到,测试文件就是放在data/demo/这个文件夹下面。
如果图片文件是000004.jpg,mat文件就是000004_boxes.mat
不过后期测试自己的数据的时候,直接把代码要求的数据格式改成自己的数据格式就行了。

猜你喜欢

转载自blog.csdn.net/jiangph1001/article/details/54730448