paint-brush
Crea retratos de mascotas de gran calidad con ComfyUIpor@hacker5029997
284 lecturas

Crea retratos de mascotas de gran calidad con ComfyUI

por 5m2024/08/19
Read on Terminal Reader

Demasiado Largo; Para Leer

Las herramientas de manipulación de imágenes con IA han avanzado mucho en los últimos años. Hoy en día es bastante fácil crear retratos hermosos y estilizados de personas y animales. Pero los modelos de IA son muy impredecibles, por lo que la mayoría de las herramientas dependen del usuario (o de algún humano) para eliminar las malas generaciones y encontrar la mejor. Con algunos trucos inteligentes y un ajuste cuidadoso, puede crear una secuencia de comandos que funcione de manera confiable para la gran mayoría de las mascotas. Es extremadamente resistente a las variaciones de pose, iluminación, etc.
featured image - Crea retratos de mascotas de gran calidad con ComfyUI
undefined HackerNoon profile picture
0-item

Las herramientas de manipulación de imágenes con IA han avanzado mucho en los últimos años. Hoy en día es bastante fácil crear retratos hermosos y estilizados de personas y animales. Pero los modelos de IA son muy impredecibles. Por eso, la mayoría de las herramientas dependen del usuario (o de algún ser humano) para descartar las generaciones malas y encontrar la mejor.


Este es el clásico problema de “humano en el circuito” que suele afectar a las herramientas de IA. Resulta que, con algunos trucos inteligentes y un ajuste cuidadoso, se puede crear un flujo de trabajo que funcione de manera confiable para la gran mayoría de las mascotas. Es extremadamente resistente a las variaciones de pose, iluminación, etc.


En esta publicación, analizaré en profundidad cómo funciona y todos los trucos interesantes que lo permiten. A continuación, se muestran algunos ejemplos de retratos que puede generar con este flujo de trabajo.

¡Empecemos!

Los ingredientes clave

Adaptador IP

El quid de la técnica es el IPAdapter. Es esencialmente una forma de solicitar un modelo usando una imagen en lugar de texto (literalmente significa Image Prompt Adapter). Por lo tanto, en lugar de tomar incrustaciones de texto, utiliza una imagen para obtener las incrustaciones. Esto es muy poderoso porque puede capturar con precisión el estilo y la estructura en una imagen directamente, en lugar de que alguien tenga que traducir lo que quiere de una imagen a texto. En nuestro nodo IPAdapter de ComfyUI, tenemos dos entradas, una para el estilo y otra para la composición. Usamos una imagen de pintura de acuarela para el estilo y alimentamos la imagen original para la composición (ya que queremos mantener la misma composición, pero cambiar el estilo).


La imagen de arriba se utiliza como indicador de imagen para el IPAdapter

Redes de control

Ahora que tenemos una manera de mantener el estilo consistente, podemos centrarnos en representar fielmente a la mascota. Los adaptadores IP tienen una marcada tendencia hacia la calidad de la imagen, y la semejanza de la imagen se ve afectada. Por lo tanto, debemos hacer algo para que la salida parezca el mismo objeto que la entrada.


La respuesta a eso es ControlNet. ControlNets es otra técnica interesante para proporcionar restricciones adicionales al proceso de generación de imágenes. Con ControlNet, puedes especificar restricciones en forma de bordes, profundidad, pose humana, etc. Una gran característica de ControlNets es que se pueden apilar. Por lo tanto, puedes tener un controlnet de bordes que obligue a que la salida tenga bordes similares a los de la entrada, y también un controlnet de profundidad que obligue a que la salida tenga un perfil de profundidad similar. Y eso es exactamente lo que hago aquí.


Salida de un ControlNet de Canny Edge (izquierda) y un ControlNet de profundidad (derecha). Estos hacen que la salida parezca similar a la entrada.


Resulta que las redes de control no solo se pueden apilar con otras redes de control, sino que también pueden funcionar en conjunto con el IPAdapter mencionado anteriormente. Y esas son las herramientas que usaremos para esto: IPAdapter con una imagen de origen para obtener el estilo, ControlNet con un detector de bordes Canny para restringir en función de los bordes y controlnet con profundidad para restringir en función del perfil de profundidad.


En términos de técnicas, eso es todo lo que se necesita, pero lo que he aprendido al experimentar con el aprendizaje automático para la producción es que gran parte del valor de estas cosas proviene de tomarse el tiempo para ajustar todos los parámetros a la perfección. Por eso quiero hablar un poco sobre eso.

Sintonia FINA

¿Alguna vez has encontrado un modelo con resultados de ejemplo sorprendentes, lo has probado en tus propias imágenes y te has dado cuenta de que se ven terribles? A menudo, la única razón para eso es que el modelo no se ha ajustado para tus imágenes. A veces puede parecer un obstáculo total, porque ¿por dónde empezamos a ajustar un modelo preentrenado? Esto es lo que he aprendido sobre el tema. Esto también se extiende más allá de este proceso en particular, por lo que es bueno tener conocimientos en general.

Redes de control

Las redes de control son muy potentes, por lo que hay que tener cuidado de controlar su efecto en la salida. Afortunadamente, los nodos personalizados en ComfyUI nos permiten reducir el efecto de las redes de control y también detener sus efectos en cualquier momento. Por lo tanto, configuramos el detector de bordes con una fuerza del 75 % y hacemos que deje de influir en la generación al 75 %, y el detector de profundidad se detiene al 30 %. La razón por la que los detenemos al final en lugar de simplemente reducir su fuerza es que esto permite que la red "limpie" cualquier artefacto causado por ellos en los últimos pasos sin estar restringida externamente. Simplemente hace que la imagen sea más bonita. Por lo tanto, solo utiliza sus datos de entrenamiento para hacer que las cosas se vean lo mejor posible, ignorando los bordes y la profundidad.



El otro gran elemento que hay que ajustar es el KSampler. Hay muchas cosas pequeñas que están sucediendo aquí, pero voy a mencionar brevemente algunas de ellas:

KSampler - Pasos

Primero tenemos los pasos. Esto es literalmente la cantidad de veces que el modelo se ejecutará repetidamente. Cuanto más se ejecute, más estilizado será el resultado y más se alejará de la imagen original. Los efectos de esto a menudo no son tan obvios, por lo que vale la pena experimentar con esto.


KSampler-CFG

Luego está CFG. Honestamente, no lo entiendo del todo, pero por su nombre (Classifier Free Guidance) supongo que controla cuánto se le permite al modelo modificar la imagen sin restricciones de las indicaciones para que se vea mejor. Esto también afecta significativamente la imagen de salida, por lo que vale la pena experimentar con él.


Reducir el ruido

Otro truco que utilizo aquí es comenzar el proceso de generación de imágenes con la imagen de entrada en lugar de una imagen en blanco y mantener la eliminación de ruido baja. Esto garantiza que el resultado se vea similar en términos de colores y texturas.


Texto de aviso

Una cosa que notarás que nunca mencioné es el mensaje de texto hasta ahora. Es sorprendente, ya que ese suele ser el único condicionamiento que normalmente se proporciona a los modelos de difusión. Pero en este caso, tenemos tantas otras formas de condicionamiento que los mensajes de texto generalmente solo se interponen. Entonces, en este caso, el mensaje es literalmente solo "un perro". Utilizo el mensaje de texto un poco más en algunos de los retratos más estilizados, como el perro chef o el que está en el baño.

Añadiendo accesorios

En esencia, se trata más o menos de un "filtro de IA" que convierte imágenes en retratos de acuarela. Pero es sorprendente lo flexible que puede ser. Por ejemplo, para hacer el retrato del perro duchándose, ¡literalmente junté imágenes en una herramienta de edición de imágenes y las usé como entrada! El modelo se encarga de unificar todo y limpiar la imagen.


Conclusión

Ahora quita el fondo, agrega algo de texto y ¡listo! ¡Tienes un hermoso retrato que captura todos los pequeños detalles de tu mascota y siempre los pinta de la mejor manera!


¡Muchas gracias a @cubiq por su trabajo en los nodos ComfyUI y su increíble serie de explicaciones en YouTube! La mayor parte de esta secuencia de comandos fue creada y explicada por él en sus videos.


Si quieres un retrato de tu mascota sin pasar por todos estos problemas, ¡considera comprar uno aquí: pawprints.pinenlime.com!