Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.
6404 Discussions

Error while Converting TF2custom trained model to IR.

Vivekkmr175
Beginner
561 Views

Info :-

Build openvino by taking latest pull from master branch.

Getting error while converting TF2 model ssd_mobilenet_v2_320x320_coco17_tpu-8 with custom trained on single class.

Tried converting the same using 2021.3 release but that didn't worked, as some folks suggested to use the 2.4 support json file which can be fetch from master branch.

Below is the error and command while conversion:-

python3 mo_tf.py --saved_model_dir '/home/it/PycharmProjects/Tensorflow/workspace/training_demo/exported-models/new_ssd_model_300/saved_model' --transformations_config 'extensions/front/tf/ssd_support_api_v2.0.json' --tensorflow_object_detection_api_pipeline_config '/home/it/PycharmProjects/Tensorflow/workspace/training_demo/exported-models/new_ssd_model_300/pipeline.config' --reverse_input_channels --output_dir '/home/it/Downloads/ssd_tf2_trained_ov_out/' --log_level DEBUG --input_shape [1,300,300,3]

Error:-

[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_1" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_2" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_3" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_4" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_5" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_6" does not exist in the graph. Do not add it as output
[ 2021-07-06 16:43:22,696 ] [ DEBUG ] [ ObjectDetectionAPI:1220 ] A node "StatefulPartitionedCall/Identity_7" does not exist in the graph. Do not add it as output
[ ERROR ] -------------------------------------------------
[ ERROR ] ----------------- INTERNAL ERROR ----------------
[ ERROR ] Unexpected exception happened.
[ ERROR ] Please contact Model Optimizer developers and forward the following information:
[ ERROR ] Exception occurred during running replacer "ObjectDetectionAPIOutputReplacement (<class 'extensions.front.tf.ObjectDetectionAPI.ObjectDetectionAPIOutputReplacement'>)": 'inputs'
[ ERROR ] Traceback (most recent call last):
File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/mo/utils/class_registration.py", line 290, in apply_transform
for_graph_and_each_sub_graph_recursively(graph, replacer.find_and_replace_pattern)
File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/mo/middle/pattern_match.py", line 60, in for_graph_and_each_sub_graph_recursively
for_each_sub_graph_recursively(graph, func)
File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/mo/middle/pattern_match.py", line 54, in for_each_sub_graph_recursively
for_each_sub_graph(graph, recursive_helper)
File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/mo/middle/pattern_match.py", line 39, in for_each_sub_graph
func(node[sub_graph_name])
File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/mo/middle/pattern_match.py", line 50, in recursive_helper
func(sub_graph)

File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/mo/front/tf/replacement.py", line 48, in find_and_replace_pattern
self.transform_graph(graph, desc._replacement_desc['custom_attributes'])
File "/opt/intel/openvino_2021/deployment_tools/model_optimizer/extensions/front/tf/ObjectDetectionAPI.py", line 1222, in transform_graph
add_output_ops(graph, _outputs, graph.graph['inputs'])
KeyError: 'inputs'

 

Please let me know if any thing needs to be added. New one on this forum. Any help will be highly appreciated.

 

0 Kudos
1 Solution
Peh_Intel
Moderator
536 Views

Hello Vivek,


Thanks for reaching out to us.


I noticed that you used ssd_support_api_v2.0.json file in your command. Please have a try with ssd_support_api_v2.4.json. Besides, I also noticed that there are few changes made for the conversion of TensorFlow Object Detection API 2.4 SSD models about 5 days ago. Please also check and edit all the codes in those files as stated here.  



Regards,

Peh


View solution in original post

0 Kudos
3 Replies
Peh_Intel
Moderator
537 Views

Hello Vivek,


Thanks for reaching out to us.


I noticed that you used ssd_support_api_v2.0.json file in your command. Please have a try with ssd_support_api_v2.4.json. Besides, I also noticed that there are few changes made for the conversion of TensorFlow Object Detection API 2.4 SSD models about 5 days ago. Please also check and edit all the codes in those files as stated here.  



Regards,

Peh


0 Kudos
Vivekkmr175
Beginner
521 Views

Hi Peh,

Thanks for the suggestion, was able to convert the same using latest tool kit new released one(branch code didn't worked). 

Hope that this release will work for other TF2 zoo models as well.

Regards,

Vivek

0 Kudos
Peh_Intel
Moderator
513 Views

Hello Vivek,


Thank you for confirming your problem is resolved.


This thread will no longer be monitored since this issue has been resolved. If you need any additional information from Intel, please submit a new question. 



Regards,

Peh


0 Kudos
Reply