> ## Documentation Index
> Fetch the complete documentation index at: https://docs.comfy.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Pose ControlNet en ComfyUI: OpenPose y flujos de trabajo de dos pasadas

> Usa esqueletos de OpenPose para controlar la postura del personaje y afina el detalle con un flujo de trabajo de dos pasadas para imágenes grandes.

## Introducción a OpenPose

[OpenPose](https://github.com/CMU-Perceptual-Computing-Lab/openpose) es un sistema de código abierto para la estimación de pose de varias personas en tiempo real, desarrollado por la Universidad Carnegie Mellon (CMU), que supone un avance significativo en el campo de la visión por computador. El sistema puede detectar simultáneamente a varias personas en una imagen y captura:

* **Esqueleto corporal**: 18 puntos clave, incluidos cabeza, hombros, codos, muñecas, caderas, rodillas y tobillos
* **Expresiones faciales**: 70 puntos clave faciales para capturar microexpresiones y contornos faciales
* **Detalles de la mano**: 21 puntos clave de la mano para expresar con precisión la posición de los dedos y los gestos
* **Postura de los pies**: 6 puntos clave del pie, que registran las posturas al estar de pie y los detalles del movimiento

![Ejemplo de OpenPose](https://mintcdn.com/dripart/TwfNQ2dEaWQA7tIL/images/tutorial/controlnet/openpose_example.jpg?fit=max\&auto=format\&n=TwfNQ2dEaWQA7tIL\&q=85\&s=bf85624e63f724a95635801aea0af8d5)

En la generación de imágenes con IA, los mapas de estructura de esqueleto generados por OpenPose sirven como entradas de condicionamiento para ControlNet, lo que permite controlar con precisión la postura, las acciones y las expresiones de los personajes generados. Esto nos permite generar figuras humanas realistas con las poses y acciones esperadas, mejorando enormemente la controlabilidad y el valor práctico del contenido generado por IA.
En particular, con los modelos más antiguos de la serie Stable Diffusion 1.5, los mapas de esqueleto generados por OpenPose pueden evitar eficazmente problemas de acciones, extremidades y expresiones distorsionadas en los personajes.

## Ejemplo de uso de ControlNet de pose en 2 pasos en ComfyUI

### 1. Recursos del flujo de trabajo de ControlNet de pose

Descarga la imagen del flujo de trabajo que aparece a continuación y arrástrala a ComfyUI para cargar el flujo de trabajo:

![Flujo de trabajo de ComfyUI - Pose ControlNet](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/controlnet/pose_controlnet_2_pass.png)

> [!TIP]
>
> Las imágenes que contienen el JSON del flujo de trabajo en sus metadatos se pueden arrastrar directamente a ComfyUI o cargar con el menú `Workflows` -> `Open (ctrl+o)`.
> Esta imagen ya incluye los enlaces de descarga de los modelos correspondientes, y al arrastrarla a ComfyUI se te pedirá automáticamente que descargues los modelos.

Descarga la imagen que aparece a continuación, la cual usaremos como entrada:

![Imagen de entrada de pose de ComfyUI](https://raw.githubusercontent.com/Comfy-Org/example_workflows/main/controlnet/pose_controlnet_2_pass_input.png)

### 2. Instalación manual de los modelos

> [!NOTE]
>
> Si tu red no puede completar correctamente la descarga automática de los modelos correspondientes, intenta descargar manualmente los modelos que aparecen a continuación y colócalos en los directorios indicados:

* [control\_v11p\_sd15\_openpose\_fp16.safetensors](https://huggingface.co/comfyanonymous/ControlNet-v1-1_fp16_safetensors/blob/main/control_v11p_sd15_openpose_fp16.safetensors?download=true)
* [majicmixRealistic\_v7.safetensors](https://civitai.com/api/download/models/176425?type=Model\&format=SafeTensor\&size=pruned\&fp=fp16)
* [japaneseStyleRealistic\_v20.safetensors](https://civitai.com/api/download/models/85426?type=Model\&format=SafeTensor\&size=pruned\&fp=fp16)
* [vae-ft-mse-840000-ema-pruned.safetensors](https://huggingface.co/stabilityai/sd-vae-ft-mse-original/blob/main/vae-ft-mse-840000-ema-pruned.safetensors?download=true)

```
ComfyUI/
├── models/
│   ├── checkpoints/
│   │   └── majicmixRealistic_v7.safetensors
│   │   └── japaneseStyleRealistic_v20.safetensors
│   ├── vae/
│   │   └── vae-ft-mse-840000-ema-pruned.safetensors
│   └── controlnet/
│       └── control_v11p_sd15_openpose_fp16.safetensors
```

### 3. Ejecución del flujo de trabajo paso a paso

![Diagrama del flujo de trabajo Pose ControlNet de ComfyUI](https://mintcdn.com/dripart/TwfNQ2dEaWQA7tIL/images/tutorial/controlnet/flow_diagram_pose_controlnet_2_pass.jpg?fit=max\&auto=format\&n=TwfNQ2dEaWQA7tIL\&q=85\&s=f953cc0188bb242b6f03389d295bf551)

Sigue estos pasos según los marcadores numerados de la imagen:

1. Asegúrate de que `Load Checkpoint` pueda cargar **majicmixRealistic\_v7.safetensors**
2. Asegúrate de que `Load VAE` pueda cargar **vae-ft-mse-840000-ema-pruned.safetensors**
3. Asegúrate de que `Load ControlNet Model` pueda cargar **control\_v11p\_sd15\_openpose\_fp16.safetensors**
4. Haz clic en el botón de selección del nodo `Load Image` para subir la imagen de entrada de pose proporcionada anteriormente, o usa tu propio mapa de esqueleto OpenPose
5. Asegúrate de que `Load Checkpoint` pueda cargar **japaneseStyleRealistic\_v20.safetensors**
6. Haz clic en el botón `Queue` o usa el atajo `Ctrl(cmd) + Enter` para ejecutar la generación de la imagen

## Explicación del flujo de trabajo Pose ControlNet en dos pasadas

Este flujo de trabajo usa un enfoque de generación de imágenes en dos pasadas, que divide el proceso de creación de la imagen en dos fases:

### Primera fase: generación de la imagen básica de la pose

En la primera fase, el modelo **majicmixRealistic\_v7** se combina con Pose ControlNet para generar una imagen inicial de la pose del personaje:

1. Primero, carga el modelo majicmixRealistic\_v7 mediante el nodo `Load Checkpoint`
2. Carga el modelo de control de pose a través del nodo `Load ControlNet Model`
3. La imagen de pose de entrada se introduce en el nodo `Apply ControlNet` y se combina con las condiciones de prompt positivo y negativo
4. El primer nodo `KSampler` (normalmente con 20-30 pasos) genera una imagen básica de la pose del personaje
5. La imagen en espacio de píxeles de la primera fase se obtiene mediante `VAE Decode`

Esta fase se centra principalmente en la postura correcta del personaje, la pose y la estructura básica, asegurando que el personaje generado se ajuste a la pose del esqueleto de entrada.

### Segunda fase: optimización del estilo y mejora de detalles

En la segunda fase, la imagen de salida de la primera fase se usa como referencia, y el modelo **japaneseStyleRealistic\_v20** realiza la estilización y la mejora de detalles:

1. La imagen generada en la primera fase crea un espacio latent de mayor resolución mediante el nodo `Upscale latent`
2. El segundo `Load Checkpoint` carga el modelo japaneseStyleRealistic\_v20, que se centra en los detalles y el estilo
3. El segundo nodo `KSampler` usa una fuerza de `denoise` más baja (normalmente 0.4-0.6) para el refinado, conservando la estructura básica de la primera fase
4. Por último, se obtiene una imagen de mayor calidad y resolución mediante los segundos nodos `VAE Decode` y `Save Image`

Esta fase se centra principalmente en la coherencia del estilo, la riqueza de detalles y la mejora de la calidad general de la imagen.

## Ventajas de la generación de imágenes en dos pasadas

En comparación con la generación en una sola pasada, el método de generación de imágenes en dos pasadas ofrece las siguientes ventajas:

1. **Mayor resolución**: El procesamiento en dos pasadas puede generar imágenes de alta resolución que superan las capacidades de la generación en una sola pasada.
2. **Mezcla de estilos**: Puede combinar las ventajas de diferentes modelos, como usar un modelo realista en la primera fase y un modelo estilizado en la segunda fase.
3. **Mejores detalles**: La segunda fase puede centrarse en optimizar los detalles sin tener que preocuparse por la estructura general.
4. **Control preciso**: Una vez completado el control de pose en la primera fase, la segunda fase puede centrarse en refinar el estilo y los detalles.
5. **Menor carga de la GPU**: Generar en dos pasadas permite obtener imágenes grandes de alta calidad con recursos limitados de GPU.

> [!TIP]
>
> Para aprender más sobre las técnicas para mezclar varios ControlNet, consulta el tutorial [Mezclar modelos ControlNet](https://docs.comfy.org/es/tutorials/controlnet/mixing-controlnets.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.