FasterRCNN是物体检测主流方法之一,keras版本的FasterRCNN是在2017年6月发布的,这是核心代码。其后Anaconda、TensorFlow和Keras都在不断更新,不同版本的组合可能无法运行该程序。去年和今年小象学院推出了计算机视觉深度学习的两期课程,这两期课程的物体检测部分的示例都采用了该代码,他们内容相同,如下图。
也可以点击这里查看。
由于最新版的TensorFlow和Keras变动比较大,许多老的函数有位置变动或被删除,可能导致无法运行该代码。我尝试了自己的几种环境,给出了运行结果。
- Python3.5.2+tensorflow-gpu1.1.0+keras2.1.5,可以正常运行,如下图。
Tensorflow的版本为1.1.0,GPU版本,如下图。
Keras版本为2.1.5,如下图。
代码运行结果如下。
- Python3.5.5+tensorflow-gpu1.5.0+keras2.0.8,运行时报错,提示如下:
> File "D:/test/pycv/chinahadoop/ChinaHadoop_C5-master/ChinaHadoop_C5-master/C5_FasterRCNN_KERAS/test_frcnn.py", line 9, in <module>
> import keras
> File "d:\Anaconda3\lib\site-packages\keras__init.py", line 3, in <module>
> from . import utils
> File "d:\Anaconda3\lib\site-packages\keras\utils\init.py", line 6, in <module>
> from . import conv_utils
> File "d:\Anaconda3\lib\site-packages\keras\utils\conv_utils.py", line 3, in <module>
> from .. import backend as K
> File "d:\Anaconda3\lib\site-packages\keras\backend\init__.py", line 83, in <module>
> from .tensorflow_backend import *
> File "d:\Anaconda3\lib\site-packages\keras\backend\tensorflow_backend.py", line 2, in <module>
> from tensorflow.python.training import moving_averages
>
> ImportError: cannot import name ‘moving_averages‘
可见该版本的tensorflow没有moving_averages函数。
- Python3.6.6+tensorflow-gpu1.6.0+keras2.1.3,运行时没有报错,但提示kernel died。如下图:
查看版本时可在Spyder的Python控制台输入命令查看,如下图:
如果使用pycharm,可以在设置的project interpreter中查看,如下图。
如果某个包安装了多个版本,可在这里可以指定其中一个版本。
原文地址:http://blog.51cto.com/8764888/2334756