Inicio rápido: Configuración del seguimiento corporal de Azure Kinect
Este inicio rápido le guiará a través del proceso de ejecución del seguimiento corporal en Azure Kinect DK.
Requisitos del sistema
El SDK de Body Tracking requiere una GPU NVIDIA instalada en el equipo host. El requisito de equipo host de seguimiento corporal recomendado se describe en la página de requisitos del sistema.
Instalación del software
Instalación del controlador NVIDIA más reciente
Descargue e instale el controlador NVIDIA más reciente de la tarjeta gráfica. Es posible que los controladores antiguos no sean compatibles con los archivos binarios de CUDA redistribuidos con el SDK de Body Tracking.
Visual C++ Redistributable para Visual Studio 2015
Descargue e instale Visual C++ Redistributable para Visual Studio 2015.
Configuración del hardware
Configuración de Azure Kinect DK
Inicie el visor de Azure Kinect para comprobar que Azure Kinect DK está configurado correctamente.
Descarga del SDK de Body Tracking
- Seleccione el vínculo para descargar el SDK de Body Tracking.
- Instale el SDK de Body Tracking en el equipo.
Comprobación del seguimiento corporal
Inicie el visor de seguimiento corporal de Azure Kinect para comprobar que el SDK de Body Tracking está configurado correctamente. El visor se instala con el instalador MSI del SDK. Puede encontrarlo en el menú Inicio o en <SDK Installation Path>\tools\k4abt_simple_3d_viewer.exe
.
Si no dispone de una GPU con suficiente potencia pero quiere probar el resultado, puede iniciar el visor de seguimiento corporal de Azure Kinect en la línea de comandos con el comando <SDK Installation Path>\tools\k4abt_simple_3d_viewer.exe CPU
.
Si todo está configurado correctamente, aparecerá una ventana con una nube de puntos 3D y los cuerpos que se han seguido.
Especificar el entorno de ejecución en tiempo de ejecución de ONNX
El SDK de seguimiento de cuerpos es compatible con los entornos de ejecución de CPU, CUDA, DirectML (solo Windows) y TensorRT para inferir el modelo de estimación de supuestos. De K4ABT_TRACKER_PROCESSING_MODE_GPU
forma predeterminada, la ejecución de CUDA en Linux y DirectML se ejecuta en Windows. Se han agregado tres modos adicionales para seleccionar entornos de ejecución específicos: K4ABT_TRACKER_PROCESSING_MODE_GPU_CUDA
, K4ABT_TRACKER_PROCESSING_MODE_GPU_DIRECTML
y K4ABT_TRACKER_PROCESSING_MODE_GPU_TENSORRT
.
Nota
El tiempo de ejecución de ONNX muestra advertencias de códigos de tiempo que no se aceleran. Se pueden omitir sin ningún problema.
El tiempo de ejecución de ONNX incluye variables de entorno para controlar el almacenamiento en caché del modelo TensorRT. Los valores recomendados son:
- ORT_TENSORRT_ENGINE_CACHE_ENABLE=1
- ORT_TENSORRT_CACHE_PATH="pathname"
La carpeta debe crearse antes de iniciar el seguimiento del cuerpo.
Importante
TensorRT procesa previamente el modelo antes de la inferencia, lo que genera tiempos de inicio extendidos en comparación con otros entornos de ejecución. El almacenamiento en caché del motor limita esto a la primera ejecución, pero es experimental y es específica del modelo, la versión del Runtime de ONNX, la versión de TensorRT y el modelo de GPU.
El entorno de ejecución de TensorRT admite tanto FP32 (predeterminado) como FP16. El FP16 ofrece un aumento de rendimiento de ~2 veces a cambio de una disminución mínima de la precisión. Para especificar FP16:
- ORT_TENSORRT_FP16_ENABLE=1
Archivos DLL necesarios para entornos de ejecución en tiempo de ejecución de ONNX
Mode | ORT 1.10 | CUDA 11.4.3 | CUDNN==8.2.2.26 | TensorRT 8.0.3.4 |
---|---|---|---|---|
CPU | msvcp140 | - | - | - |
onnxruntime | ||||
CUDA | msvcp140 | cudart64_110 | cudnn64_8 | - |
onnxruntime | cufft64_10 | cudnn_ops_infer64_8 | ||
onnxruntime_providers_cuda | cublas64_11 | cudnn_cnn_infer64_8 | ||
onnxruntime_providers_shared | cublasLt64_11 | |||
DirectML | msvcp140 | - | - | - |
onnxruntime | ||||
DirectML | ||||
TensorRT | msvcp140 | cudart64_110 | - | nvinfer |
onnxruntime | cufft64_10 | nvinfer_plugin | ||
onnxruntime_providers_cuda | cublas64_11 | |||
onnxruntime_providers_shared | cublasLt64_11 | |||
onnxruntime_providers_tensorrt | nvrtc64_112_0 | |||
nvrtc-builtins64_114 |
Ejemplos
Aquí puede encontrar los ejemplos sobre cómo usar el SDK de seguimiento corporal.