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.