I have trained and am trying to run a mmpose model I’ve converted to ONNX. I’m compiling this model with TensorRT in C++, and then running the created engine. The intent is to have an optimized runtime for use on Jetson products.
My question is about the output of my model. I’m using:
td-reg_res152_rle-8xb64-210e_coco-256x192.py
As my architecture, and the output shape is 1x17x4. My understanding that the 4 are (x, y, visibility, confidence), and I get an expected output when using the mmpose Python library to get this data (0.0-1.0 for the visibility and confidence).
The issue is with my TensorRT output, the visibility and confidence seem to be nonsense, it seems to range from -4.f to +4.f, and jumps around randomly. I’d think it was an issue with my TensorRT but the x & y are being returned completely fine (0-1).
So my best guess is that there’s some post-processing step that happens after the model outputs this data? Do you run the data through a sigmoid function on output?
If not, It would have to be my implementation. I however, the fact that I’m correctly getting the output of the x & y coordinates leads me to think that’s unlikely, and I have confirmed the output shape and datatype (F32) in netron.