https://github.com/tensorflow/models/tree/master/research/object_detection/exporter_main_v2.py
TypeError: Expected Operation, Variable, or Tensor, got block4 when trying to export the model.
Using RetinaNet152 1024x1024 model from the Model Zoo, error persists with other models
Traceback (most recent call last):
File "exporter_main_v2.py", line 126, in <module>
app.run(main)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/absl/app.py", line 299, in run
_run_main(main, args)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/absl/app.py", line 250, in _run_main
sys.exit(main(argv))
File "exporter_main_v2.py", line 122, in main
FLAGS.output_directory)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/object_detection/exporter_lib_v2.py", line 180, in export_inference_graph
signatures=concrete_function)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/saved_model/save.py", line 951, in save
obj, export_dir, signatures, options, meta_graph_def)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/saved_model/save.py", line 1022, in _build_meta_graph
_ = _SaveableView(checkpoint_graph_view)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/saved_model/save.py", line 173, in __init__
self.checkpoint_view.objects_ids_and_slot_variables())
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/training/tracking/graph_view.py", line 415, in objects_ids_and_slot_variables
trackable_objects, path_to_root = self._breadth_first_traversal()
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/training/tracking/graph_view.py", line 199, in _breadth_first_traversal
for name, dependency in self.list_dependencies(current_trackable):
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/saved_model/save.py", line 108, in list_dependencies
extra_dependencies = self.list_extra_dependencies(obj)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/saved_model/save.py", line 137, in list_extra_dependencies
self._serialization_cache)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/engine/base_layer.py", line 2746, in _list_extra_dependencies_for_serialization
.list_extra_dependencies_for_serialization(serialization_cache))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/base_serialization.py", line 74, in list_extra_dependencies_for_serialization
return self.objects_to_serialize(serialization_cache)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/layer_serialization.py", line 73, in objects_to_serialize
serialization_cache).objects_to_serialize)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/layer_serialization.py", line 92, in _get_serialized_attributes
serialization_cache)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/model_serialization.py", line 53, in _get_serialized_attributes_internal
serialization_cache))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/layer_serialization.py", line 101, in _get_serialized_attributes_internal
functions = save_impl.wrap_layer_functions(self.obj, serialization_cache)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 163, in wrap_layer_functions
'{}_layer_call_and_return_conditional_losses'.format(layer.name))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 503, in add_function
self.add_trace(*self._input_signature)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 418, in add_trace
trace_with_training(True)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 416, in trace_with_training
fn.get_concrete_function(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 547, in get_concrete_function
return super(LayerCall, self).get_concrete_function(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 959, in get_concrete_function
concrete = self._get_concrete_function_garbage_collected(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 865, in _get_concrete_function_garbage_collected
self._initialize(args, kwargs, add_initializers_to=initializers)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 506, in _initialize
*args, **kwds))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2446, in _get_concrete_function_internal_garbage_collected
graph_function, _, _ = self._maybe_define_function(args, kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2777, in _maybe_define_function
graph_function = self._create_graph_function(args, kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2667, in _create_graph_function
capture_by_value=self._capture_by_value),
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/framework/func_graph.py", line 981, in func_graph_from_py_func
func_outputs = python_func(*func_args, **func_kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 441, in wrapped_fn
return weak_wrapped_fn().__wrapped__(*args, **kwds)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 524, in wrapper
ret = method(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 170, in wrap_with_training_arg
lambda: replace_training_and_call(False))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 65, in smart_cond
pred, true_fn=true_fn, false_fn=false_fn, name=name)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/framework/smart_cond.py", line 54, in smart_cond
return true_fn()
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 169, in <lambda>
lambda: replace_training_and_call(True),
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 165, in replace_training_and_call
return wrapped_call(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 566, in call_and_return_conditional_losses
return layer_call(inputs, *args, **kwargs), layer.get_losses_for(inputs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/object_detection/meta_architectures/ssd_meta_arch.py", line 251, in call
return self._extract_features(inputs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/object_detection/models/ssd_resnet_v1_fpn_keras_feature_extractor.py", line 235, in _extract_features
fpn_features = self._fpn_features_generator(fpn_input_image_features)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/engine/base_layer.py", line 968, in __call__
outputs = self.call(cast_inputs, *args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 71, in return_outputs_and_add_losses
outputs, losses = fn(inputs, *args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 170, in wrap_with_training_arg
lambda: replace_training_and_call(False))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 65, in smart_cond
pred, true_fn=true_fn, false_fn=false_fn, name=name)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/framework/smart_cond.py", line 54, in smart_cond
return true_fn()
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 169, in <lambda>
lambda: replace_training_and_call(True),
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 165, in replace_training_and_call
return wrapped_call(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 541, in __call__
self.call_collection.add_trace(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 418, in add_trace
trace_with_training(True)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 416, in trace_with_training
fn.get_concrete_function(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 547, in get_concrete_function
return super(LayerCall, self).get_concrete_function(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 959, in get_concrete_function
concrete = self._get_concrete_function_garbage_collected(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 865, in _get_concrete_function_garbage_collected
self._initialize(args, kwargs, add_initializers_to=initializers)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 506, in _initialize
*args, **kwds))
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2446, in _get_concrete_function_internal_garbage_collected
graph_function, _, _ = self._maybe_define_function(args, kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2777, in _maybe_define_function
graph_function = self._create_graph_function(args, kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/function.py", line 2667, in _create_graph_function
capture_by_value=self._capture_by_value),
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/framework/func_graph.py", line 981, in func_graph_from_py_func
func_outputs = python_func(*func_args, **func_kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/eager/def_function.py", line 441, in wrapped_fn
return weak_wrapped_fn().__wrapped__(*args, **kwds)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 524, in wrapper
ret = method(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 484, in wrap_with_training_arg
return call_fn(*args, **kwargs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 566, in call_and_return_conditional_losses
return layer_call(inputs, *args, **kwargs), layer.get_losses_for(inputs)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/engine/base_layer.py", line 1627, in get_losses_for
reachable = tf_utils.get_reachable_from_inputs(inputs, losses)
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 140, in get_reachable_from_inputs
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
exporter_lib_tf2_test.py also fails:
`
[ FAILED ] ExportInferenceGraphTest.test_export_yields_correct_directory_structure(input_type='tf_example')
[ RUN ] ExportInferenceGraphTest.test_session
[ SKIPPED ] ExportInferenceGraphTest.test_session
FAIL: test_export_yields_correct_directory_structure(input_type='image_tensor') (__main__.ExportInferenceGraphTest)
test_export_yields_correct_directory_structure(input_type='image_tensor') (__main__.ExportInferenceGraphTest)
test_export_yields_correct_directory_structure(input_type='image_tensor')
Traceback (most recent call last):
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/absl/testing/parameterized.py", line 263, in bound_param_test
test_method(self, **testcase_params)
File "exporter_lib_tf2_test.py", line 133, in test_export_yields_correct_directory_structure
'variables.data-00000-of-00001')))
AssertionError: False is not true
FAIL: test_export_yields_correct_directory_structure(input_type='encoded_image_string_tensor') (__main__.ExportInferenceGraphTest)
test_export_yields_correct_directory_structure(input_type='encoded_image_string_tensor') (__main__.ExportInferenceGraphTest)
test_export_yields_correct_directory_structure(input_type='encoded_image_string_tensor')
Traceback (most recent call last):
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/absl/testing/parameterized.py", line 263, in bound_param_test
test_method(self, **testcase_params)
File "exporter_lib_tf2_test.py", line 133, in test_export_yields_correct_directory_structure
'variables.data-00000-of-00001')))
AssertionError: False is not true
FAIL: test_export_yields_correct_directory_structure(input_type='tf_example') (__main__.ExportInferenceGraphTest)
test_export_yields_correct_directory_structure(input_type='tf_example') (__main__.ExportInferenceGraphTest)
test_export_yields_correct_directory_structure(input_type='tf_example')
Traceback (most recent call last):
File "/home/mate/venv/tensorflow2.2/lib/python3.7/site-packages/absl/testing/parameterized.py", line 263, in bound_param_test
test_method(self, **testcase_params)
File "exporter_lib_tf2_test.py", line 133, in test_export_yields_correct_directory_structure
'variables.data-00000-of-00001')))
AssertionError: False is not true
Ran 9 tests in 3.731s
FAILED (failures=3, skipped=1)
`
Run python exporter_main_v2.py --input_type image_tensor --pipeline_config_path pipeline.config --trained_checkpoint_dir training/checkpoint --output_directory export
Different models result in similar errors.
Or run exporter_lib_tf2_test.py
Model should be exported successfully
Tried both --input_type image_tensor and float_image_tensor
I have same problem after training my object detection, using ssd mobilenet v2 fpnlite 640x640.
Running exporter_main_v2.py,got same error message:
File "/opt/tensorflow2/lib/python3.6/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 140, in get_reachable_from_inputs
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
I have same problem after training my object detection, using ssd mobilenet v2 fpnlite 640x640.
Running exporter_main_v2.py,got same error message:File "/opt/tensorflow2/lib/python3.6/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 140, in get_reachable_from_inputs
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
+1
I have same problem after training my object detection, using ssd mobilenet v2 fpnlite 640x640.
Running exporter_main_v2.py,got same error message:File "/opt/tensorflow2/lib/python3.6/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 140, in get_reachable_from_inputs
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
me 2
I am getting the same error when I try to convert the ssd_resnet50_v1_fpn_640x640_coco17_tpu-8 model after training.
Surprisingly, I dont get this error when I conver the ssd_mobilenet_v2_320x320_coco17_tpu-8 model after training.
The command is:
`python3 -W ignore object_detection/exporter_main_v2.py --input_type=image_tensor
--pipeline_config_path=/home/inflectionpoint/Documents/AI_models/tf2/ssd_resnet50_v1_fpn_640x640_coco17_tpu-8/pipeline.config
--trained_checkpoint_dir=/home/inflectionpoint/Documents/Code/tf2/training_folder/
--output_directory=/home/inflectionpoint/Documents/Code/tf2/trained_models/20200724_facemask_resnet50_fpn_640x640/`
The error (in full) is:
WARNING:tensorflow:Skipping full serialization of Keras layer <object_detection.meta_architectures.ssd_meta_arch.SSDMetaArch object at 0x7f5903bbcac0>, because it is not built.
W0724 12:46:36.478574 140022447019840 save_impl.py:75] Skipping full serialization of Keras layer <object_detection.meta_architectures.ssd_meta_arch.SSDMetaArch object at 0x7f5903bbcac0>, because it is not built.
Traceback (most recent call last):
File "object_detection/exporter_main_v2.py", line 126, in <module>
app.run(main)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/absl/app.py", line 299, in run
_run_main(main, args)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/absl/app.py", line 250, in _run_main
sys.exit(main(argv))
File "object_detection/exporter_main_v2.py", line 120, in main
exporter_lib_v2.export_inference_graph(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/object_detection/exporter_lib_v2.py", line 178, in export_inference_graph
tf.saved_model.save(detection_module,
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/saved_model/save.py", line 950, in save
_, exported_graph, object_saver, asset_info = _build_meta_graph(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/saved_model/save.py", line 1022, in _build_meta_graph
_ = _SaveableView(checkpoint_graph_view)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/saved_model/save.py", line 173, in __init__
self.checkpoint_view.objects_ids_and_slot_variables())
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/training/tracking/graph_view.py", line 415, in objects_ids_and_slot_variables
trackable_objects, path_to_root = self._breadth_first_traversal()
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/training/tracking/graph_view.py", line 199, in _breadth_first_traversal
for name, dependency in self.list_dependencies(current_trackable):
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/saved_model/save.py", line 108, in list_dependencies
extra_dependencies = self.list_extra_dependencies(obj)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/saved_model/save.py", line 136, in list_extra_dependencies
return obj._list_extra_dependencies_for_serialization( # pylint: disable=protected-access
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/engine/base_layer.py", line 2745, in _list_extra_dependencies_for_serialization
return (self._trackable_saved_model_saver
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/base_serialization.py", line 74, in list_extra_dependencies_for_serialization
return self.objects_to_serialize(serialization_cache)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/layer_serialization.py", line 72, in objects_to_serialize
return (self._get_serialized_attributes(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/layer_serialization.py", line 91, in _get_serialized_attributes
object_dict, function_dict = self._get_serialized_attributes_internal(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/model_serialization.py", line 52, in _get_serialized_attributes_internal
super(ModelSavedModelSaver, self)._get_serialized_attributes_internal(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/layer_serialization.py", line 101, in _get_serialized_attributes_internal
functions = save_impl.wrap_layer_functions(self.obj, serialization_cache)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 161, in wrap_layer_functions
call_fn_with_losses = call_collection.add_function(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 503, in add_function
self.add_trace(*self._input_signature)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 418, in add_trace
trace_with_training(True)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 416, in trace_with_training
fn.get_concrete_function(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 547, in get_concrete_function
return super(LayerCall, self).get_concrete_function(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 959, in get_concrete_function
concrete = self._get_concrete_function_garbage_collected(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 865, in _get_concrete_function_garbage_collected
self._initialize(args, kwargs, add_initializers_to=initializers)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 505, in _initialize
self._stateful_fn._get_concrete_function_internal_garbage_collected( # pylint: disable=protected-access
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 2446, in _get_concrete_function_internal_garbage_collected
graph_function, _, _ = self._maybe_define_function(args, kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 2777, in _maybe_define_function
graph_function = self._create_graph_function(args, kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 2657, in _create_graph_function
func_graph_module.func_graph_from_py_func(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/framework/func_graph.py", line 981, in func_graph_from_py_func
func_outputs = python_func(*func_args, **func_kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 441, in wrapped_fn
return weak_wrapped_fn().__wrapped__(*args, **kwds)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 524, in wrapper
ret = method(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 167, in wrap_with_training_arg
return tf_utils.smart_cond(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 64, in smart_cond
return smart_module.smart_cond(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/framework/smart_cond.py", line 54, in smart_cond
return true_fn()
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 169, in <lambda>
lambda: replace_training_and_call(True),
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 165, in replace_training_and_call
return wrapped_call(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 566, in call_and_return_conditional_losses
return layer_call(inputs, *args, **kwargs), layer.get_losses_for(inputs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/object_detection/meta_architectures/ssd_meta_arch.py", line 251, in call
return self._extract_features(inputs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/object_detection/models/ssd_resnet_v1_fpn_keras_feature_extractor.py", line 235, in _extract_features
fpn_features = self._fpn_features_generator(fpn_input_image_features)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/engine/base_layer.py", line 968, in __call__
outputs = self.call(cast_inputs, *args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 71, in return_outputs_and_add_losses
outputs, losses = fn(inputs, *args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 167, in wrap_with_training_arg
return tf_utils.smart_cond(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 64, in smart_cond
return smart_module.smart_cond(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/framework/smart_cond.py", line 54, in smart_cond
return true_fn()
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 169, in <lambda>
lambda: replace_training_and_call(True),
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/utils.py", line 165, in replace_training_and_call
return wrapped_call(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 541, in __call__
self.call_collection.add_trace(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 418, in add_trace
trace_with_training(True)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 416, in trace_with_training
fn.get_concrete_function(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 547, in get_concrete_function
return super(LayerCall, self).get_concrete_function(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 959, in get_concrete_function
concrete = self._get_concrete_function_garbage_collected(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 865, in _get_concrete_function_garbage_collected
self._initialize(args, kwargs, add_initializers_to=initializers)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 505, in _initialize
self._stateful_fn._get_concrete_function_internal_garbage_collected( # pylint: disable=protected-access
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 2446, in _get_concrete_function_internal_garbage_collected
graph_function, _, _ = self._maybe_define_function(args, kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 2777, in _maybe_define_function
graph_function = self._create_graph_function(args, kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/function.py", line 2657, in _create_graph_function
func_graph_module.func_graph_from_py_func(
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/framework/func_graph.py", line 981, in func_graph_from_py_func
func_outputs = python_func(*func_args, **func_kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/eager/def_function.py", line 441, in wrapped_fn
return weak_wrapped_fn().__wrapped__(*args, **kwds)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 524, in wrapper
ret = method(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 484, in wrap_with_training_arg
return call_fn(*args, **kwargs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/saving/saved_model/save_impl.py", line 566, in call_and_return_conditional_losses
return layer_call(inputs, *args, **kwargs), layer.get_losses_for(inputs)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/engine/base_layer.py", line 1627, in get_losses_for
reachable = tf_utils.get_reachable_from_inputs(inputs, losses)
File "/home/inflectionpoint/.local/lib/python3.8/site-packages/tensorflow/python/keras/utils/tf_utils.py", line 140, in get_reachable_from_inputs
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
TypeError: Expected Operation, Variable, or Tensor, got block4
Same issue for me.
Same error for me, when executing tf.saved_model.save(detection_model, 'filepath')
Try this
https://tensorflow-object-detection-api-tutorial.readthedocs.io/en/latest/issues.html#export-error
at this topic “TypeError: Expected Operation, Variable, or Tensor, got level_5”
look at the line that error print out.
Copy the path to the tf_utils.py
file; in the example case this was C:UserssglvladiAnaconda3envstf2libsite-packagestensorflowpythonkerasutilstf_utils.py
Open the file and replace line 140 of the file as follows:
Change:
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
to:
if not isinstance(x, str):
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
that works, the solution by noptanit12
if not isinstance(x, str):
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
I change this line but still getting the same error!
Most helpful comment
Try this
at this topic “TypeError: Expected Operation, Variable, or Tensor, got level_5”
look at the line that error print out.
Copy the path to the
tf_utils.py
file; in the example case this was C:UserssglvladiAnaconda3envstf2libsite-packagestensorflowpythonkerasutilstf_utils.pyOpen the file and replace line 140 of the file as follows:
Change:
raise TypeError('Expected Operation, Variable, or Tensor, got ' + str(x))
to: