基本配置流程
这里不讲环境配置,调试源码(坑比较多)
因为tensorflow版的源码是python3.5,所以我用anaconda又配了个python3.5的tensorflow。主要参考博客,博主写的很nice,然而该踩得坑,还是有。
流程:
1、首先给出源代码网址:https://github.com/dBeker/Faster-RCNN-TensorFlow-Python3.5及安装必须包
2、Go to ./data/coco/PythonAPI(进入文件位置,一定)
Run python setup.py build_ext --inplaceRun python setup.py build_ext install
3、Go to ./lib/utils and run python setup.py build_ext --inplace
4、下载地址:下载voc2007数据集,文件格式data\VOCDevkit2007\VOC2007
解压后需要把VOCDevkit改为VOCDevkit2007(没有注意,这也是一个坑)
http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar
到这里环境配置完毕(事实告诉我要仔细看readme)
下面讲一下踩得坑
-
坑一
这个问题真的是我想多了,我直接把python.exe 和setup.py给拉过去,我以为作用一样,要 Go to到setup.py文件路径,否则作者干嘛要提醒
-
坑二:unable to find vcvarsall.bat
原因:是没有安装vs2015/2017(cuda10以上,要求这些版本),我安了vs2017,可是奈何好像当初路径有点问题找不到,我又安了个vs2015,只选这两项即可
-
坑三:解决了二,又来了LINK : fatal error LNK1158: cannot run ‘rc.exe’
(无法运行rc.exe),参照博客
-
坑四:都是看博客,论仔细看readme的重要性
-
坑五:AssertionError: Path does not exist:
D:\Workspaces\python\Faster-RCNN-TensorFlow-Python3.5-master\data\VOCdevkit2007\VOC2007\ImageSets\Main\trainval.txt
原因:是网络模型地址和数据集地址有问题,检查后,发现要把VOCDevkit改为VOCDevkit2007
-
坑六:找不到vgg16.cpkt,可是我明明放在要求目录下,后来发现从作者网站下来的是vgg_16.cpkt
终于train能跑了,然而demo却有问题:
-
坑七:OSError: output\res101\voc_2007_trainval+voc_2012_trainval\default\res101_faster_rcnn_iter_110000.ckpt.meta
not found.Did you download the proper networks from our server and place them properly?
解决办法:参照博客
具体修改:
(1)把Demo.py中39行的NETS中的vgg16_faster_rcnn_iter_70000.ckpt改成vgg16_faster_rcnn_iter_40000.ckpt(train中训练最多40000);再把demo.py 122行中Parse_args()函数的default res101改成vgg16
(2)新建一个名为output的文件夹,具体的文件名就按它报错的位置跟着新建就行如下图。