R-FCN配置(python版)
阿新 • • 發佈:2018-12-30
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
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
替換成自己的模型,配置檔案,資料就行了