为了使用带有Tensorflow的预训练模型,我们克隆TensorFlow模型园,然后在模型动物园中选择一个模型,例如,检测模型动物园:EfficientDet D0 512x512。
是否可以检测到Tensorflow的正确版本,例如2.7.0
、2.7.1
或2.8.0
,这样肯定会与上述设置一起工作吗?
文档(README.md
)似乎没有提到这一要求。也许这是暗示的?
我检查了setup.py
的对象检测,但仍然没有线索!
\models\research\object_detection\packages\tf2\setup.py
REQUIRED_PACKAGES = [
# Required for apache-beam with PY3
'avro-python3',
'apache-beam',
'pillow',
'lxml',
'matplotlib',
'Cython',
'contextlib2',
'tf-slim',
'six',
'pycocotools',
'lvis',
'scipy',
'pandas',
'tf-models-official>=2.5.1',
'tensorflow_io',
'keras'
]
发布于 2022-02-08 08:20:24
我不知道有一种正式/快速的方法来确定的右Tensorflow版本,给出一个特定的 模范花园版本master
分支。然而,这里是我的解决办法:
REQUIRED_PACKAGES
中,我们看到了tf-models-official>=2.5.1
。2.8.0
。\models\research\object_detection\packages\tf2\setup.py
文件时,pip
自然会获取tf-models-official
的最新版本,即2.8.0
,这要归功于>=
符号。tf-models-official
、v2.8.0
,其所需的包是在tf-models-official-2.8.0\tf_models_official.egg-info\requires.txt
中定义的(注意:下载包并使用链接解压缩)。tensorflow~=2.8.0
...meaning所需的Tensorflow版本是2.8.*
。
这可能是不需要的,例如在CoLab中,目前的版本是2.7.0
。
tf-models-official
,v2.7.0
。注意,它与Tensorflow版本匹配。在这个版本的2.7.0
的requires.txt
中,我们应该看到tensorflow>=2.4.0
,它已经被CoLab的默认Tensorflow版本(2.7.0
)所满足。\models\research\object_detection\packages\tf2\setup.py
从'tf-models-official>=2.5.1'
修改为'tf-models-official==2.7.0'
。警告:我认为这一攻击不会影响对象检测API的功能,因为它最初需要任何tf-models-official
>= 2.5.1
。我们只需将其修改为==2.7.0
即可。
https://stackoverflow.com/questions/71032585
复制