ValueError: ellipsis_mask not supported

I have been trying to convert MaskRCNN from tensorflow to UFF and the error “ValueError: ellipsis_mask not supported” comes up. Is there any way to mitigate this error?

Is this from a tensorflow strided_slice op? Looks like UFF doesn’t support ellipsis_mask. Can you share the complete error output?

The following the is output to the command “convert-to-uff mask_rcnn.pb”.

UFF Version 0.5.5
=== Automatically deduced input nodes ===
[name: “input_image”
op: “Placeholder”
attr {
key: “dtype”
value {
type: DT_FLOAT
}
}
attr {
key: “shape”
value {
shape {
dim {
size: -1
}
dim {
size: -1
}
dim {
size: -1
}
dim {
size: 3
}
}
}
}
, name: “input_image_meta”
op: “Placeholder”
attr {
key: “dtype”
value {
type: DT_FLOAT
}
}
attr {
key: “shape”
value {
shape {
dim {
size: -1
}
dim {
size: 21
}
}
}
}
, name: “input_anchors”
op: “Placeholder”
attr {
key: “dtype”
value {
type: DT_FLOAT
}
}
attr {
key: “shape”
value {
shape {
dim {
size: -1
}
dim {
size: -1
}
dim {
size: 4
}
}
}
}
]

=== Automatically deduced output nodes ===
[name: “mrcnn_mask/Reshape_1”
op: “Reshape”
input: “mrcnn_mask/Sigmoid”
input: “mrcnn_mask/Reshape_1/shape”
attr {
key: “T”
value {
type: DT_FLOAT
}
}
attr {
key: “Tshape”
value {
type: DT_INT32
}
}
]

Using output node mrcnn_mask/Reshape_1
Converting to UFF graph
Warning: No conversion function registered for layer: TopKV2 yet.
Converting roi_align_mask/TopKV2 as custom op: TopKV2
Warning: No conversion function registered for layer: ExpandDims yet.
Converting roi_align_mask/ExpandDims as custom op: ExpandDims
Warning: No conversion function registered for layer: Range yet.
Converting roi_align_mask/range as custom op: Range
Warning: No conversion function registered for layer: Where yet.
Converting roi_align_mask/Where_3 as custom op: Where
Warning: No conversion function registered for layer: Equal yet.
Converting roi_align_mask/Equal_3 as custom op: Equal
Warning: No conversion function registered for layer: Cast yet.
Converting roi_align_mask/Cast as custom op: Cast
Warning: No conversion function registered for layer: Round yet.
Converting roi_align_mask/Round as custom op: Round
Warning: No conversion function registered for layer: Split yet.
Converting roi_align_mask/split as custom op: Split
Traceback (most recent call last):
File “/home/ml7/miniconda2/envs/maskrcnn/bin/convert-to-uff”, line 11, in
sys.exit(main())
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/bin/convert_to_uff.py”, line 89, in main
debug_mode=args.debug
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/converters/tensorflow/conversion_helpers.py”, line 187, in from_tensorflow_frozen_model
return from_tensorflow(graphdef, output_nodes, preprocessor, **kwargs)
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/converters/tensorflow/conversion_helpers.py”, line 157, in from_tensorflow
debug_mode=debug_mode)
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/converters/tensorflow/converter.py”, line 94, in convert_tf2uff_graph
uff_graph, input_replacements, debug_mode=debug_mode)
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/converters/tensorflow/converter.py”, line 79, in convert_tf2uff_node
op, name, tf_node, inputs, uff_graph, tf_nodes=tf_nodes, debug_mode=debug_mode)
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/converters/tensorflow/converter.py”, line 47, in convert_layer
return cls.registry_[op](name, tf_node, inputs, uff_graph, **kwargs)
File “/home/ml7/miniconda2/envs/maskrcnn/lib/python2.7/site-packages/uff/converters/tensorflow/converter_functions.py”, line 410, in convert_strided_slice
raise ValueError(“ellipsis_mask not supported”)
ValueError: ellipsis_mask not supported

Hello,
It looks like the model you are converting to TensorRT contains many unsupported layers and operations "ex: TopKV2,ExpandDims Range , etc ".
For a list of supported operations, please reference: https://docs.nvidia.com/deeplearning/sdk/tensorrt-developer-guide/index.html#support_op

For unsupported layers, users can extend TensorRT functionalities by implementing custom layers using the IPluginV2 class for the C++ and Python API. Custom layers, often referred to as plugins, are implemented and instantiated by an application, and their lifetime must span their use within a TensorRT engine. https://docs.nvidia.com/deeplearning/sdk/tensorrt-developer-guide/index.html#extending

regards,
NVIDIA Enterprise Support

Hello,

I face the same problem.
If I don’t want to implement additional custom layers, is it possible to skip the probematic subgraph (in this case, it is “roi_align_mask”), or can I run tensorRT in an error-tolerant mode? Thanks

Regards,
James

@bj4hs0720111, not sure what you mean by “error-tolerant mode”, but you can skip the skip the unsupported layers, with the understanding that arbitrarily removing layers will effect inference results.

@yanpaioo94@bj4hs0720111 have you fix the problem,i face the problem when i want to run mask_rcnn in tensorrt

Using the newer version of UFF : 0.6.3 I get the same error when using python uff.from_tensorflow() method to transform frozen_graph to uff file.

ValueError: ellipsis_mask not supported

Any update about this ?
Do you know which node/layer implement ellipsis_mask ?

I have the same issue. Are there any updates? Could someone please share how they solved this problem?

Thanks