我正在尝试在 Windows 机器上的精心设计的机盖环境中设置 YOLO。由于 tensorflow 和 darkflow 在包管理器上似乎都不可用,我通过 pip 安装了它们
pip install tensorflow
从github下载darkflow目录并从canopy命令提示符导航到它
pip install .
接着
python setup.py build_ext --inplace
用于设置 cython_utils。现在,命令行演示似乎工作正常
python flow --model cfg/yolo.cfg --load bin/yolo.weights --demo videofile.mp4 --saveVideo
但是当我尝试在我的树冠编辑器中运行以下命令时:
from darkflow.net.build import TFNet
option = {'model': 'cfg/yolo.cfg', 'load': 'bin/yolo.weights', 'threshold': 0.3}
tfnet = TFNet(option)
它向我抛出了这个错误:
AssertionError Traceback (most recent call last)
c:\users\umair\appdata\local\temp\tmp9n4e92.py in <module>()
4 option = {'model': 'cfg/yolo.cfg', 'load': 'bin/yolo.weights', 'threshold': 0.3}
5
----> 6 tfnet = TFNet(option)
C:\Users\umair\AppData\Local\Enthought\Canopy\edm\envs\User\lib\site-packages\darkflow\net\build.py in __init__(self, FLAGS, darknet)
56
57 if darknet is None:
---> 58 darknet = Darknet(FLAGS)
59 self.ntrain = len(darknet.layers)
60
C:\Users\umair\AppData\Local\Enthought\Canopy\edm\envs\User\lib\site-packages\darkflow\dark\darknet.py in __init__(self, FLAGS)
11
12 def __init__(self, FLAGS):
---> 13 self.get_weight_src(FLAGS)
14 self.modify = False
15
C:\Users\umair\AppData\Local\Enthought\Canopy\edm\envs\User\lib\site-packages\darkflow\dark\darknet.py in get_weight_src(self, FLAGS)
45 else:
46 assert os.path.isfile(FLAGS.load), \
---> 47 '{} not found'.format(FLAGS.load)
48 self.src_bin = FLAGS.load
49 name = loader.model_name(FLAGS.load)
AssertionError: bin/yolo.weights not found
我尝试将 bin 和 cfg 文件夹从我提取 darkflow 的原始目录复制到 site-packages/darkflow 文件夹:
C:\Users\umair\AppData\Local\Enthought\Canopy\edm\envs\User\Lib\site-packages\darkflow
但这似乎也不起作用。具有讽刺意味的是,通过 canopy 命令提示符在 python 控制台中工作得非常好
那么这一切基本上有什么问题呢?我在安装包时犯了一些错误吗?错过了在某处添加路径?或者我将 bin 和 cfg 文件夹放置在不正确的位置?