Cómo mejorar el análisis de poses con DWPose en ComfyUI

¿Estás teniendo problemas con el análisis de poses en ComfyUI? Es fundamental entender que un modelo como DWPose no «entiende» una pose como lo haría un humano; simplemente detecta puntos anatómicos basándose estrictamente en la información visual. Cuando los resultados fallan, suele ser porque la entrada no le está dando suficiente contexto para localizar articulaciones correctamente.

Comparativa visual entre la dificultad de detectar un cuerpo pequeño y el éxito al aumentar su escala
El tamaño del sujeto es clave para una detección precisa.

Para mejorar bastante tus resultados, hay varios factores críticos que debes ajustar. En primer lugar, el tamaño de la imagen es vital. Si el cuerpo ocupa solo 200–300 píxeles de alto, DWPose tendrá dificultades para localizar manos, codos y rodillas. Lo ideal es que el sujeto ocupe al menos ~500 píxeles de altura.

Además, debes evitar recortes donde las extremidades salgan parcialmente del cuadro, ya que esto puede hacer que todo el brazo quede mal inferido. También es crucial mejorar el contraste entre la persona y el fondo; fondos muy complejos o ropa con iluminación plana perjudican la detección.

Estrategias para optimizar tu pipeline

Es importante distinguir entre «mejorar DWPose» y «mejorar lo que haces con él», especialmente si estás haciendo experimentos de reemplazo de personajes o escenarios. Si estás usando un flujo como `video original → DWPose → pose conditioning → MiniMax/Wan/LTX`, probablemente no quieras que el modelo reproduzca cada micro-movimiento literal, ya que eso puede interferir con tu nuevo personaje.

Diagrama mostrando la exclusión de landmarks faciales y manuales en el análisis
La estrategia cuerpo solamente ignora extremidades inestables para mayor robustez.

Para abordar esto, puedes probar tres variantes principales:

Diagrama del pipeline de procesamiento para optimizar la entrada a DWPose
El proceso de recorte y upscaling antes del análisis mejora significativamente los keypoints.
  1. DWPose cuerpo solamente: Esta es la opción más robusta. Excluye las manos y la cara si tu objetivo principal es conservar la acción corporal pura.
  2. Cuerpo + manos: Útil si necesitas gestos concretos, aunque debes tener en cuenta que las manos son una de las partes más inestables de cualquier detección.
  3. DWPose con corrección manual: Para casos difíciles, puedes revisar visualmente el mapa de pose y corregir manualmente puntos erróneos antes de pasarlo al modelo de generación.

Hay un truquito particularmente interesante para tu caso específico: no necesariamente necesitas aplicar DWPose sobre el frame completo del vídeo. Si la persona ocupa poca parte del plano, puedes seguir este flujo:

frame → recorte de persona → upscale → DWPose → reescalar coordenadas → pose sobre canvas original

Haciendo esto, le das a DWPose una versión upscada de la persona para que trabaje con mayor detalle. Al final, solo necesitas reescalar las coordenadas resultantes al tamaño del canvas original.