TensorFlow训练数据错误,

1tu0hz3e  于 2023-02-24  发布在  其他
关注(0)|答案(2)|浏览(157)

我目前正在进行一个tensorflow项目,我得到这个错误。
值错误:模型配置的类型不是model_pb2.DetectionModel。
当我试着训练我的模型时,它就发生了。以前有人遇到过这个问题吗?第一个问题在这里问,所以要温和。

`Chinatowns-MacBook-Air:object_detection nathangrant$ python3 train.py --logtostderr --train_dir=training/ --pipeline_config_path=training/ssd_mobilenet_v1_pets.config
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/importlib/_bootstrap.py:219: RuntimeWarning: compiletime version 3.5 of module 'tensorflow.python.framework.fast_tensor_util' does not match runtime version 3.7
  return f(*args, **kwds)
WARNING:tensorflow:From /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tensorflow/python/platform/app.py:48: main (from __main__) is deprecated and will be removed in a future version.
Instructions for updating:
Use object_detection/model_main.py.
Traceback (most recent call last):
  File "train.py", line 184, in <module>
    tf.app.run()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tensorflow/python/platform/app.py", line 48, in run
    _sys.exit(main(_sys.argv[:1] + flags_passthrough))
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tensorflow/python/util/deprecation.py", line 136, in new_func
    return func(*args, **kwargs)
  File "train.py", line 180, in main
    graph_hook_fn=graph_rewriter_fn)
  File "/Users/nathangrant/Downloads/models-master/research/object_detection/legacy/trainer.py", line 245, in train
    detection_model = create_model_fn()
  File "/Users/nathangrant/Downloads/models-master/research/object_detection/builders/model_builder.py", line 105, in build
    raise ValueError('model_config not of type model_pb2.DetectionModel.')
ValueError: model_config not of type model_pb2.DetectionModel.`
ztigrdn8

ztigrdn81#

先试试这个,

    • 溶液A:**

1.下载完整的"models_shareToPublic".rar file
1.解压/解压缩文件。
1.将文件夹中包含的所有内容复制到项目库目录中
1.再次运行代码/程序。

    • 溶液B:**

1.请在您的项目库目录中打开cmd提示符在我的情况下,它是:(我的项目名称\venv\库\站点包)
1.在cmd提示符下键入下面的cmd命令,克隆Tensorflow Models资料档案库的主分支,该分支将在上面的指定目录中打开。(可能需要几分钟时间,具体取决于您的网络速度)
git克隆https://github.com/tensorflow/models.git
1.将models文件夹中的所有内容移动到步骤1中所述的库目录中。
1.按照this steps创建".pb2"文件
1.更改
model_builder. py*中下面的导入行
变更自:
从protos导入模型_pb2
改为:
从对象_检测. protos导入模型_pb2
1.再次运行您的代码/程序,您会注意到这个相同的错误将消失。

    • 备注:**如果出现
  • 模块未找到错误:没有名为"object_detection"的模块

转到"research"文件夹,将"object_detection"文件夹复制到与"research"文件夹相同的目录下,这样就可以直接调用库,如果不能,就需要调整每个. py文件中的import行(非常浪费时间)
希望对你也有效,祝你好运!

dgtucam1

dgtucam12#

在我的电脑中,我做了这些,并修复了这个问题:
model_builder.py中,不要使用

from protos import model_pb2

使用

from object_detection.protos import model_pb2

而不是。

相关问题