使用参数--output_weight_and_json将openvino模型转换为tensorflow时保存json时出错

问题描述 投票:0回答:1

我想根据 https://github.com/PINTO0309/openvino2tensorflow 存储库的文档将我的 openvino-model 转换为 tf saving_model。

但是当我使用命令时:

openvino2tensorflow --model_path model.xml --output_saved_model --output_weight_and_json

我收到错误:

ERROR: cannot pickle 'module' object
Traceback (most recent call last):
  File "/usr/local/bin/openvino2tensorflow", line 7156, in convert
    open(f'{model_output_path}/model_float32.json', 'w').write(model.to_json())
  File "/usr/local/lib/python3.8/dist-packages/keras/engine/training.py", line 3086, in to_json
    model_config = self._updated_config()
  File "/usr/local/lib/python3.8/dist-packages/keras/engine/training.py", line 2954, in _updated_config
    config = self.get_config()
  File "/usr/local/lib/python3.8/dist-packages/keras/engine/functional.py", line 781, in get_config
    return copy.deepcopy(get_network_config(self, config=config))
  File "/usr/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.8/copy.py", line 205, in _deepcopy_list
    append(deepcopy(a, memo))
  File "/usr/lib/python3.8/copy.py", line 172, in deepcopy
    y = _reconstruct(x, memo, *rv)
  File "/usr/lib/python3.8/copy.py", line 296, in _reconstruct
    value = deepcopy(value, memo)
  File "/usr/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.8/copy.py", line 230, in _deepcopy_dict
    y[deepcopy(key, memo)] = deepcopy(value, memo)
  File "/usr/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.8/copy.py", line 210, in _deepcopy_tuple
    y = [deepcopy(a, memo) for a in x]
  File "/usr/lib/python3.8/copy.py", line 210, in <listcomp>
    y = [deepcopy(a, memo) for a in x]
  File "/usr/lib/python3.8/copy.py", line 146, in deepcopy
    y = copier(x, memo)
  File "/usr/lib/python3.8/copy.py", line 210, in _deepcopy_tuple
    y = [deepcopy(a, memo) for a in x]
  File "/usr/lib/python3.8/copy.py", line 210, in <listcomp>
    y = [deepcopy(a, memo) for a in x]
  File "/usr/lib/python3.8/copy.py", line 161, in deepcopy
    rv = reductor(4)
TypeError: cannot pickle 'module' object

此错误发生在执行

model.to_json()
期间,我不知道如何解决它。有没有办法修复这个错误或通过其他方式保存json?

python-3.x tensorflow neural-network pickle openvino
1个回答
0
投票

OpenVINO Toolkit 不正式支持将 IR 模型转换为 TensorFlow 格式。请参阅 GitHub 页面,您可以尝试使用执行示例中的命令来转换模型,以实现OpenVINO IR 到 TensorFlow 模型的转换

© www.soinside.com 2019 - 2024. All rights reserved.