TFFRCNN填坑记(使用python3.6)

忙了两天把这个坑给填了

1 首先中python3.6对应到环境中安装库(如果是在ubuntu系统中,系统自带python2.7和3.5,我用anaconda安装了python3.6并配置了环境):

   sudo apt-get install cython python-opencv python-tk python-scipy python-yaml
   sudo pip install easydict
   sudo pip install matplotlib
   sudo python -m pip install Pillow

2 下载源码:TFFRCNN  使用python自带到2to3转换所有.py文件为适合python3的语法结构(搜索2to3.py文件路径,在这个路径下终端命令行输入python 2to3.py -w /TFFRCNN路径) 

把lib/networks 重命名为lib/network 

3 编译代码:打开下载的源码/lib文件夹,打开 lib文件夹下的 make.sh,根据提示修改(根据gcc版本修改,查看gcc版本命令:gcc -v)。然后在这个路径下打开终端,输入命令:make

4 将 faster_rcnn/ 文件夹下的 demo.py copy到根目录下,在lib的同级目录中创建文件夹model,下载模型到这(下载训练好的模型:2 中的链接readme中有对应链接,这里放一个VGG16

执行如下命令:

cd ..
python demo.py --model model/VGGnet_fast_rcnn_iter_150000.ckpt #模型路径为lib同级的model中,模型.ckpt的名字对应下载的模型

出现关于cPickle的错误:就打开对应的.py文件将cPickle全部替换为pickle

出现错误no module named fast_rcnn:打开对应的init.py文件,把

import fast_rcnn 

更改为

from . import fast-rcnn

(from . 是指在同级目录中添加,from ..是指在上级目录中添加, 有很多no module 的问题都可以打开对应.py文件查看是否同级目录中存在对应的module,如果存在就在import前面加 from . )

如果以上不能解决问题,可能是没有添加pythonpath,命令行输入:

export PYTHONPATH=/TFFRCNN-master/lib:$PYTHONPATH #自行添加对应的路径 不要复制粘贴 这个命令每次只在当前终端生效 关掉终端得重新设置

出现错误W tensorflow/core/framework/op_kernel.cc:1192] Unknown: KeyError: b'TEST' :打开proposal_layer_tf.py文件,在70th行添加

cfg_key = cfg_key.decode("utf-8")

不行的话在中lib/network/VGG_test.py加入 

# -*- coding:utf-8 -*-

然后在重新运行

python demo.py --model model/VGGnet_fast_rcnn_iter_150000.ckpt #模型路径为lib同级的model中,模型.ckpt的名字对应下载的模型

如果还有其他错误就留言吧,大概一个星期内我还会记得,时间超过了就别问了,填了这些坑总算可以检测出物体了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值