I’m using the latest tensorrt 4.0.1.6 to run calibration on a tensorflow image segmentation network. Converting the frozen graph to uff succeeds, but during parsing of UFF (in trt.lite.engine constructor) it fails on a conv2d_transpose layer:
[TensorRT] INFO: UFFParser: parsing decoder/fpn_upscale2/Conv2d_transpose/strided_slice_2
[TensorRT] INFO: UFFParser: parsing decoder/fpn_upscale2/Conv2d_transpose/mul_1/y
[TensorRT] INFO: UFFParser: parsing decoder/fpn_upscale2/Conv2d_transpose/mul_1
[TensorRT] INFO: UFFParser: parsing decoder/fpn_upscale2/Conv2d_transpose/stack
[TensorRT] INFO: UFFParser: parsing decoder/fpn_upscale2/Conv2d_transpose/conv2d_transpose_1
[TensorRT] ERROR: UFFParser: Parser error: decoder/fpn_upscale2/Conv2d_transpose/conv2d_transpose_1: Output shape of UFF ConvTranspose is wrong
[TensorRT] ERROR: Failed to parse UFF model stream
File "/data/env/local/lib/python2.7/site-packages/tensorrt/utils/_utils.py", line 255, in uff_to_trt_engine
assert(parser.parse(stream, network, model_datatype))
Traceback (most recent call last):
File "./segmentation.py", line 78, in <module>
main()
File "./segmentation.py", line 74, in main
logger_severity=trt.infer.LogSeverity.INFO)
File "/data/env/local/lib/python2.7/site-packages/tensorrt/lite/engine.py", line 216, in __init__
self._create_engine(modelstream, **kwargs)
File "/data/env/local/lib/python2.7/site-packages/tensorrt/lite/engine.py", line 320, in _create_engine
kwargs.get("calibrator", None))
File "/data/env/local/lib/python2.7/site-packages/tensorrt/utils/_utils.py", line 263, in uff_to_trt_engine
raise AssertionError('UFF parsing failed on line {} in statement {}'.format(line, text))
It appears that there is an error with the conv2d_transpose (of type Conv2DBackpropInput in tensorrt terminology).
Any hints on what I can do to get past this?