Gaze Demo for Jetson/L4T - Xavier AGX (L4T R32.4.2) Not Working

Description

Followed the instructions here: Gaze Demo for Jetson/L4T | NVIDIA NGC

Jetson Xavier AGX in version L4T 32.4.2 JetPack 4.4 Developer Preview (https://developer.nvidia.com/jetpack-sdk-44-dp-archive)

Downloaded Docker container:

sudo docker pull nvcr.io/nvidia/jetson-gaze:r32.4.2

Tried running the container:

sudo xhost +si:localuser:root
sudo docker run --runtime nvidia -it --rm --network host -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/jetson-gaze:r32.4.2 python3 run_gaze_sequential.py /videos/gaze_video.mp4 --loop --codec=h264

Get the following errors:

(python3:1): GStreamer-CRITICAL **: 05:55:11.582: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed

(python3:1): GStreamer-CRITICAL **: 05:55:11.582: gst_caps_truncate: assertion 'GST_IS_CAPS (caps)' failed

(python3:1): GStreamer-CRITICAL **: 05:55:11.583: gst_caps_fixate: assertion 'GST_IS_CAPS (caps)' failed

(python3:1): GStreamer-CRITICAL **: 05:55:11.583: gst_caps_get_structure: assertion 'GST_IS_CAPS (caps)' failed

(python3:1): GStreamer-CRITICAL **: 05:55:11.583: gst_structure_get_string: assertion 'structure != NULL' failed

(python3:1): GStreamer-CRITICAL **: 05:55:11.583: gst_mini_object_unref: assertion 'mini_object != NULL' failed
NvMMLiteOpen : Block : BlockType = 261 
NVMEDIA: Reading vendor.tegra.display-size : status: 6 
NvMMLiteBlockCreate : Block : BlockType = 261 
Allocating new output: 480x272 (x 10), ThumbnailMode = 0
OPENMAX: HandleNewStreamFormat: 3605: Send OMX_EventPortSettingsChanged: nFrameWidth = 480, nFrameHeight = 270 
[ WARN:0] global /home/nvidia/host/build_opencv/nv_opencv/modules/videoio/src/cap_gstreamer.cpp (896) open OpenCV | GStreamer warning: unable to query duration of stream
[ WARN:0] global /home/nvidia/host/build_opencv/nv_opencv/modules/videoio/src/cap_gstreamer.cpp (933) open OpenCV | GStreamer warning: Cannot query video position: status=1, value=3, duration=-1

A window pops up with no content in it, and crashes here. The following error msg is printed:

coreReadArchive.cpp (38) - Serialization Error in verifyHeader: 0 (Version tag does not match)
INVALID_STATE: std::exception
INVALID_CONFIG: Deserialize the cuda engine failed.
Assertion fail in file 'trtNet.cpp' line 146: _engine is null
terminate called after throwing an instance of 'std::exception'
  what():  std::exception

Tried running with the video included in the docker container and with a personal video. Not working with either of them.

Environment

NVIDIA Jetson AGX Xavier [16GB]
L4T 32.4.3 [ JetPack 4.4 ]
Ubuntu 18.04.4 LTS
Kernel Version: 4.9.140-tegra
CUDA 10.2.89
CUDA Architecture: 7.2
OpenCV version: 4.1.1
OpenCV Cuda: NO
CUDNN: 8.0.0.180
TensorRT: 7.1.3.0
Vision Works: 1.6.0.501
VPI: 0.3.7

1 Like

Hi,

The error indicates the TensorRT library version is not aligned.

coreReadArchive.cpp (38) - Serialization Error in verifyHeader: 0 (Version tag does not match)

Since the container is built for JetPack4.4 DP, please setup the environment with the same JetPack version.

Another alternative is to rebuild the TensorRT engine for your environment.
The detailed steps can be found in the below topic:

Thanks.

Hello, thank you for the response.

We are unable to find JetPack4.4 DP on the Nvidia SDK Manager (version 1.4.0.7363)

We’ve looked through the following links and are confused about how to flash JetPack4.4 DP for the Jetson AGX.
https://developer.nvidia.com/embedded/linux-tegra-r32.4.2
https://developer.nvidia.com/jetpack-sdk-44-dp-archive

Please advise, thank you!

Hi,

Sorry for the missing. DP version is removed.
Please try the second approach to recreate the TensorRT plan.

Thanks.