[背景]
老师要我和学长实现一个多分辨率的检测网。想法是在pvanet的基础上,从conv2-3生出一个分支子网络,分支网的rpn和fc还有分类器都是照搬pvanet主干网。用浅层特征去检测小目标,也就是单独用小目标训练分支网络,最后把分支网和主干pvanet合并。所以用到caffemodel的读取和修改。
1.caffemodel文件中参数的读取
caffemodel是二进制文件,caffe有提供python接口进行读取。读取时需要网络结构文件如test.prototxt和模型文件如pvanet_frcnn_384_iter_5000.caffemodel。
# -*- coding:utf-8 -*-
import numpy as np
import _init_paths
import collections
from collections import OrderedDict
caffe.set_mode_cpu
net0 = caffe.Net('test23-4-24.prototxt',\
'pvanet_frcnn_384_iter_5000.caffemodel',caffe.TEST)