snpe-tensorflow-to-dlc --graph tensorflow/deeplab-v3-plus-mobilenet-v2.pb --input_dim sub_7 1,513,513,3 --out_node ResizeBilinear_2 --dlc deeplabv3.dlc --allow_unconsumed_nodes
error :
2019-06-26 17:02:11,579 - 404 - WARNING - ERROR_TF_FALLBACK_TO_ONDEMAND_EVALUATION: Unable to resolve operation output shapes in single pass. Using on-demand evaluation!
/home/jerry/software/snpe-1.25.1.310/lib/python/snpe/converters/tensorflow/layers/pad.py:110: RuntimeWarning: error_code=802; error_message=Layer parameter value is invalid in GPU. Layer MobilenetV2/expanded_conv_14/depthwise/depthwise/SpaceToBatchND : output width = 76, depth = 76 width * depth (packed) = 18240 exceeds maximum image width 16384 for Adreno A530; error_component=GPU Runtime; line_no=604; thread_id=140680950859584
output_name=output_name)
/home/jerry/software/snpe-1.25.1.310/lib/python/snpe/converters/tensorflow/layers/convolution.py:369: RuntimeWarning: error_code=802; error_message=Layer parameter value is invalid in GPU. Layer MobilenetV2/expanded_conv_14/depthwise/depthwise : input width = 76, depth = 960 width * depth (packed) = 18240 exceeds maximum image width 16384 for Adreno A530; error_component=GPU Runtime; line_no=604; thread_id=140680950859584
groups=descriptor.groups)
/home/jerry/software/snpe-1.25.1.310/lib/python/snpe/converters/tensorflow/layers/pad.py:110: RuntimeWarning: error_code=802; error_message=Layer parameter value is invalid in GPU. Layer MobilenetV2/expanded_conv_15/depthwise/depthwise/SpaceToBatchND : output width = 76, depth = 76 width * depth (packed) = 18240 exceeds maximum image width 16384 for Adreno A530; error_component=GPU Runtime; line_no=604; thread_id=140680950859584
output_name=output_name)
/home/jerry/software/snpe-1.25.1.310/lib/python/snpe/converters/tensorflow/layers/convolution.py:369: RuntimeWarning: error_code=802; error_message=Layer parameter value is invalid in GPU. Layer MobilenetV2/expanded_conv_15/depthwise/depthwise : input width = 76, depth = 960 width * depth (packed) = 18240 exceeds maximum image width 16384 for Adreno A530; error_component=GPU Runtime; line_no=604; thread_id=140680950859584
groups=descriptor.groups)
/home/jerry/software/snpe-1.25.1.310/lib/python/snpe/converters/tensorflow/layers/pad.py:110: RuntimeWarning: error_code=802; error_message=Layer parameter value is invalid in GPU. Layer MobilenetV2/expanded_conv_16/depthwise/depthwise/SpaceToBatchND : output width = 76, depth = 76 width * depth (packed) = 18240 exceeds maximum image width 16384 for Adreno A530; error_component=GPU Runtime; line_no=604; thread_id=140680950859584
output_name=output_name)
/home/jerry/software/snpe-1.25.1.310/lib/python/snpe/converters/tensorflow/layers/convolution.py:369: RuntimeWarning: error_code=802; error_message=Layer parameter value is invalid in GPU. Layer MobilenetV2/expanded_conv_16/depthwise/depthwise : input width = 76, depth = 960 width * depth (packed) = 18240 exceeds maximum image width 16384 for Adreno A530; error_component=GPU Runtime; line_no=604; thread_id=140680950859584
groups=descriptor.groups)
Hi,
This issue might be due to the procedure followed in converting a tensorflow model to frozen graph.
The below steps are followed to resolve this issue:
- Saving the model after training using "tf.train.Saver().save()" which inturn generates 3 files -> '.meta .data .index'.
- The generated .meta file is then used to generate the frozen graph which was not seen or applied in this post.
- Using the above frozen graph, we can obtain the .dlc file.
Further, as given in the post I have used tf.layers.flatten() to flatten the input tensor.
This leads to conversion failure due to unsupported layer in SNPE converter.
But when I have tried with tf.reshape(), the model successfully converted to dlc (tensorflow version 1.13.1, snpe version 1.24.0.256).