很久没写博客了,0.0,不能这样下去,今天写一下关于学了两个多月的神经网络吧
原GitHub地址,比起其他环境下的rcnn实现,这应该是最容易的了
Faster-RCNN-TensorFlow-Python3.5
其实环境搭建别的博客也有了,这里主要做个补充------参考
首先注意一定得是py3.5的环境,不能是py3.5.6或别的的只能是py3.5.0的,我就因为这个重建了两遍环境
Run python setup.py build_ext –inplace
Run python setup.py build_ext install
这两行代码在./data/coco/PythonAPI 的路径下运行,如果报错可能是因为没有vs,我下的是vs2015
Voc2007
vgg16预训练模型
下载完后路径名要和GitHub上的路径对的上,对不上重命名下,(比如我配置的时候vgg_16要重命名成vgg16)
其他的就不多说了,实在有错误不行就重装o(╯□╰)o ╯
主要补充下关于运行的
这个目录下的config文件里有训练时用的各种参数,可以自己调
tf.app.flags.DEFINE_integer('snapshot_iterations', 5000, "Iteration to take snapshot")
比如这里每隔5000次迭代,保存一次模型
它会将ckpt文件保存在根目录下default下面,我嫌太慢了调成了1000次保存一次
然后除了train原作者还准备了demo可以展示模型的测试效果
不过要在根目录下新建一个output文件夹,路径如上,把train保存的模型拷到这个目录下,该重命名的还是得重命名
def parse_args():
"""Parse input arguments."""
parser = argparse.ArgumentParser(description='Tensorflow Faster R-CNN demo')
parser.add_argument('--net', dest='demo_net', help='Network to use [vgg16 res101]',
choices=NETS.keys(), default='res101')
parser.add_argument('--dataset', dest='dataset', help='Trained dataset [pascal_voc pascal_voc_0712]',
choices=DATASETS.keys(), default='pascal_voc_0712')
args = parser.parse_args()
return args
注意作者设置了运行参数,所以要运行指令是:
python demo.py --net vgg16
demo.py的测试图片放在这个目录,你也可以放上自己的图片
im_names = ['000456.jpg', '000457.jpg', '000542.jpg', '001150.jpg',
'001763.jpg', '004545.jpg','111.jpg']
但是要在demo.py里添加自己的图片名,111.jpg就是我自己添加的图片
运行结果:
这张是自己添加的图片,识别成了摩托车 ╮(╯▽╰)╭