我有几个不同文件的文件:
- 主文件
- 观看.py
- 读取.py
- detect.py <-- 使用
darkflow
依赖于图形模式的基于 tensorflow 的库 - translate.py <-- 使用 tf 急切执行
在暗流的 TFNet 初始化期间,我收到此错误:
Traceback (most recent call last):
File "/home/justin/Projects/comp3931/main.py", line 6, in <module>
watcher = Watcher('res/vid/planet_earth_s01e01/video.mp4', 'res/vid/planet_earth_s01e01/english.srt')
File "/home/justin/Projects/comp3931/watch.py", line 9, in __init__
self.detector = Detector()
File "/home/justin/Projects/comp3931/detect.py", line 6, in __init__
self.tfnet = TFNet(self.options)
File "/usr/local/lib64/python3.6/site-packages/darkflow/net/build.py", line 75, in __init__
self.build_forward()
File "/usr/local/lib64/python3.6/site-packages/darkflow/net/build.py", line 105, in build_forward
self.inp = tf.placeholder(tf.float32, inp_size, 'input')
File "/usr/local/lib/python3.6/site-packages/tensorflow/python/ops/array_ops.py", line 1677, in placeholder
raise RuntimeError("tf.placeholder() is not compatible with "
RuntimeError: tf.placeholder() is not compatible with eager execution.
所以,我假设当我Translator
从文件中实例化类时,它会在整个程序上调用急切执行,这与在类中使用的translate.py
对暗流类的调用不兼容TFNet
Dectector
detect.py
如果我translate.py
独立于其他人运行它可以正常工作,如果其他模块在不translate.py
涉及的情况下运行它们也可以正常工作。
我猜他们使用不同的上下文(图形/渴望),整个事情不能在同一个程序中一起运行。我试过查看文档,但找不到在需要时切换回图形模式的方法。
有什么方法可以在不同地方的同一个应用程序中同时运行渴望和图形模式?