我想根据 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?
OpenVINO Toolkit 不正式支持将 IR 模型转换为 TensorFlow 格式。请参阅 GitHub 页面,您可以尝试使用执行示例中的命令来转换模型,以实现OpenVINO IR 到 TensorFlow 模型的转换。