RTMO / YOLO-NAS-Pose Inference with CUDAExecutionProvider / TensorrtExecutionProvider DEMO
demo.sh: DEMO main program, which will first install rtmlib, and then use rtmo-s to analyze the .mp4 files in the video folder.demo_batch.sh: Multi-batch version of demo.shrtmo_gpu.py: Defines an RTMO_GPU (& RTMO_GPU_BATCH) class, making fine adjustments to CUDA & TensorRT settings.rtmo_demo.py: Python main program, which has three arguments:path: The folder location that contains the .mp4 files to be analyzed.model_path: The local path to the ONNX model or a URL pointing to the RTMO model published on mmpose.--yolo_nas_pose: If you run inference with YOLO NAS Pose Model instead of RTMO model.
rtmo_demo_batch.py: Multi-batch version of demo_batch.shvideo: Contains one test video.
Note
- Original ONNX models come from MMPOSE/RTMO Project Page trained on body7. We did only
- DEMO Inferecne Code is modified from rtmlib
- TensorrtExecutionProvider only supports Models with fixed batch size (*_batchN.onnx) while CUDAExecutionProvider can run with dynamic batch size.
We did the following to make them work with TensorRTExecutionProvdier
- Shape inference
- batch size 1,2,4 fixation
PS. FP16 ONNX model is also provided.