Guía de Creación de Personajes con NAI

Esta guía es la continuación de la guía de la Guía de instalación de NAI en Google Colab . Todo lo que corresponde a la creación de personajes es muy amplio, esta guía se ira actualizando Versión 3 (28/11/2022) Image

Advertencia NSFW

En esta guía se incluyen en su gran mayoría imágenes NSFW

Creación de Personajes (NSFW)

La inteligencia nos brinda muchas facilidades para la creacción de personajes, escenarios, logos y hasta videos. Pero para hacer cualquier de estas cosas se requiere tener ciertos conocimientos en la forma en la que nuestro modelo interpreta nuestras palabras o Prompt, podemos hacer basicamente cualquier cosa con la IA, pero en está guía nos centraremos en lo correspondiente a crear personajes usando NAI (NovelAI).

Toda la información de esta guía de basa en gran parte en mi experiencia y otras guías, en esta parte vamos a dar un vistazo básico de algunos prompts, tips y demás herramientas que podemos utilizar para la creación de personajes. El un tema muy amplio y que aún se sigue investigando nuevas formas de que la IA interprete de mejor maneras nuestras solicitudes.

¿Por donde empezar a crear a mi personaje?

Con NAI es posible conseguir crear personajes estilo anime con muchísima calidad, pero es importantísimo el saber como hacerlo

  • Primero, debo aclarar que si lo que quieres es generar imágenes de cierto personaje existente, sea Anime, manga o videojuegos, es Muy Importante que este tenga un buen número de Fanarts en internet, de otra forma será casi imposible reproducirlo a menos que entrenemos nuestra IA o usemos herramientas como img2img que por lo general son menos lo que podemos personalizar.
  • Segundo, la IA necesita que seas muy especifico, principalmente debes hacer una imagen mental de cual quieras que sea:
    • El Estilo Artístico
    • El sujeto o sujetos de tu imagen
    • Su pose
    • Su emoción
    • Su aspecto físico
    • Su vestimenta
    • La calidad y configuración de la imagen
  • Tercero, Para describir nuestro personaje dependemos de los tags, es muy importante conocerlas bien, paginas como Danbooru nos pueden ayudar a encontrar los tags que podríamos estar buscando. es muy importante a la hora de escribir los tags, que estos sean idénticos, hay tags que aunque signifiquen lo mismo, unos tienen más precisión que otros (Todos son en ingles).
  • Paso Extra, Habilita la opción de "Create a text file...", esta opción genera un archivo de texto junto a nuestra imagen generada y la guarda en outputs, este archivo contiene todo tu prompt y configuración, créeme es una opción muy útil.
    Image
  • Por ultimo, si tu personaje realizara cierta acción no describible con tags, debemos formar oraciones con lo que este estará haciendo.
    Eso es todo Ahora podemos Empezar Image (shimakaze va ser nuestra desafortunada modelo en gran parte de esta sección

El estilo artístico (Hypernetworks y Embeddings)

Podemos conseguir Hypernetworks y Embeddings realizados por otras personas en paginas donde se Recompilan gran parte de estos.

Esta es una de las partes que aún hoy más se siguen investigando para poder generar imágenes replicando el estilo único que tienen ciertos artistas.
Existen 2 opciones, para poder poder acercarnos al estilo que queremos, los Hypernetworks y los embeddings, ambos son herramientas que nosotros podemos entrenar con nuestras propias imágenes, para que ayuden a la generación de un estilo nuevo. Los embeddings son más ligeros, pero bastante más limitados, en su lugar los Hypernetworks son más versátiles trabajando en una capa extra al modelo para luego aplicar su pequeña red neuronal sobre el resultado. Esta es una definición muy vaga.

¿Como Instalar Hypernetworks?

Image Imagen generada por IA con NovelAI y un Hypernetwork de la artista Sakimichan

Paso 1: Si estamos utilizando Colab, es importante revisar si tiene la opción de habilitar la compatibilidad con Hypernetwork y activarla.

Image

Paso 2: Descargar algún Hypernetwork, podemos encontrar varios ya hechos aquí

Paso 3: Con el (archivo).pt vamos a subirlo en el Gdrive donde tenemos colab, vamos a subir todos los que descarguemos en la carpeta, /sd/stable-diffusion-webui/models/hypernetworks

Image

Paso 4: Iniciar nuestro colab o instalación local de NAI.

Paso 5: Nos iremos a la parte de Settings, y nos dirijimos a la parte de Hypernetworks, se nos presentara un desplegable con todos los Hypernetworks disponibles, selecionamos uno, y justo debajo podemos asignar la fuerza del Hypernetwork, según que Hypernetwork sea, conviene subir o bajar este valor, mientras más alto, la similitud con las imágenes con las que fue entrenado va ser mayor, intenta encontrar el balance.

Image

Image

Paso 6: Aplica Cambios Apply Settings.

Image

Paso 7: Ahora podemos hacer nuestro prompt normalmente, pero algo que puede o no afectar, es poner dentro de nuestro prompt el nombre del archivo pt que instalamos, por ejemplo para sakimichan.pt, puedo usar sakimichan sin más dentro del prompt o puedo hacer un art by sakimichan o solo by sakimichan

EJEMPLO

Sin Hypernetwork

Image

Hypernetwork Sakimichan

Image

Sin Hypernetwork

Image

Hypernetwork Dohna Dohna

Image

Si podemos darnos cuenta, los hypernetwork trabajan SOBRE la imagen generada, cosa que con los embeddings no pasa, son mucho más restrictivos y se puede decir que solo sirven para hacer un tipo de cosa bien, pero de forma muy precisa

¿Cómo verifico que mi Hypernetwork este funcionando? Justo debajo de donde se muestra tu imagen hay un resumen con todo tu prompt y configuración, puedes ver si se utilizo algún hypernetwork para la creación de la imagen.

Image

¿Como instalar Embeddings?

Para esta demostración hare uso de un embedding hecho con imagenes del artistas MだSたろう y Asanagi

MだSたろう Paso 1:
Muy facil, al descargar el embedding deseado nos quedara un (archivo).pt o (archivo).bin, este lo colocaremos dentro de la carpeta: sd/stable-diffusion-webui/embeddings
Paso 2:
Todo ya debería estar listo!
Ahora fíjate muy bien en el nombre de tu archivo (archivo).pt, puedes renombrarlo si su nombre es conflictivo, pero ahora a la hora de hacer tu prompt, agrega el Nombre de tu archivo, si se llamara asanagi.pt en mi prompt puede poner algo como 1girl, (describir la mona), asanagi, si crees que no esta funcionando puedes intentar agregarlo a tu prompt de la siguiente forma <asanagi>

Ejemplos

MだSたろう

MだSたろう

Algunos embeddings funcionan mejor con ciertos tags, por ejemplo asanagi sin pedirlo le agrega a shimakaze grandes pechos

Conectar

Los embedding depende mucho de usar tags para los que fueron entrenados, de otra forma generaran cosas bastante bizarras

En algún futuro

Guía de Hypernetworks y creación de Embeddings

Sujeto, poses, emociones

Me encantaría detallar más en toda esta parte, pero ya existe una guía muy buena que te puede ayudar Guía

Palabras Clave:

Cuerpo: shiny skin, sweaty, wet, naked, curvy, puffy nipples, tail, horns, wings, womb tattoo, tattoos, wide hips, thin waist, thick thighs, animal ears, tan lines, midriff, armpit, gyaru, gal, mature female, succubus, priestess, elf, milf, crotch seam

Cabello: twintails, ponytail, short bangs hair, redhead, hair slicked back, blonde, dark hair, hair ornament, hair bun, messy hair

Cara: big manga eyes, heart eyes, evil smile, light smile, teeth, sweet smile, tongue, open mouth, nose blush, horrified, :d, grin, :o, >:(, :p, sleepy, seductive grin, amazed, excited, naughty face

Ropa: skirt and shirt, fluffy sweater, jeans, sweatpants, streetwear, casual, boots, elegant dress, detached sleeves, leotard, detached collar, thigh strap, stockings, panties, pantyhose, lingerie, garter belt, garter strips, bathrobe, bath towel, thigh highs, micro bikini, kimono, pelvic curtain, ceremonial garment, cosplay, costume, barista, waitress, maid, apron, uniform, bodysuit, cheerleader, sport bra and shorts, cow print, animal print, glasses, necklace, baseball cap, jewelry, gems, sunhat

Camara: from below, from above, selfie, from behind, side-view, dutch angle, ass focus, thigh focus, navel focus, breast focus, POV, looking at viewer

Pose: sitting, squatting, legs spread, legs up, crossing legs, kneeling, kicking, lying, on back, on stomach, pointing, crossed arms, raising arm, leaning pose, leaning forward, hand on hip, ass grab, standing

Locación: indoors, outdoors, nightclub, fireplace, heavenly garden, temple, grassy field, beach, grocery shop isle, mall, bedroom, library, bathtub, steamy shower, tavern, dungeon, balcony, cafe bar, street, buildings, /blank/ in the background

Otros: sun flare, blue sky, god rays, fluffy cumulus clouds, light particles, sakura, moon, starry sky, planet, neon lit, blanket, cooking, food, half submerged, spoken heart, /you can use emojis/

Estilo: ancient, medieval, fantasy, rustic, gothic, victorian, royal, world war, cybernetic, cyberpunk, steampunk, solarpunk, futuristic, ornament, dakimakura, official art, official wallpaper, complex, intricate, ornate, azur lane

Esta es una traducción de este Rentry

Tan solo recuerda buscar bien por inspiraciones para tus tags, y recordar que no todas las tags funcionan igual de bien aunque signifiquen lo mismo (Gracias por las imágenes)

shimakaze

Cada tag tiene su cierta cantidad de imágenes con este, por eso algunos tienen más éxito que otros shimakaze

shimakaze

Prompts Negativos recomendados

Recuerda que no siempre aplicaran para todos los casos: lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry, out of focus, censorship, Missing vagina, Blurry faces, Blank faces, (( bad face, Ugly, lowres, bad anatomy, bad hands)), text, error, missing fingers, extra digit, fewer digits, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry, extra ear, amputee, missing hands, missing arms, missing legs, SFW, Extra fingers, 6 fingers, Extra feet, ((Missing nipples)), ghost

De igual forma que con el prompt positivo, podemos agregar () y [] para aumentar o disminuir el peso.

Configuración y Calidad de la imagen

Este es mi pequeño aporte a la guía anteriormente mencionada. Es muy importante decidir que queremos resaltar en nuestra imagen, para eso son muy útiles tags de la posición de la cámara

Cámara

shimakaze

Colores

Cabello Rojo

example

example

example

Cabello Rosa

example

example

example

Cabello Rubio

example

example

Cabello Naranja

example

example

Cabello Verde

example

example

example

example

Cabello Azul

example

example

example

Cabello Purpura

example

example

Cabello Castaño

example

example

Cabello Blanco

example

example

Extras

example

Extras 2 (Inconsistentes)

iridescent glowing hair, colorful glowing

example

multicolored hair example

{color1},(color2), gradient hair example

Focus (Enfoque)

Es bueno idea combinarlo con tags como close-up o puede no ser tan obvio el enfoque de la imagen shimakaze

Ojos

shimakaze

Iluminación

shimakaze

shimakaze

shimakaze

shimakaze

Extra

(on the cover of a manga:1.4), (magazine cover:1.3)

shimakaze

shimakaze

unfinished, poorly drawn, monochrome, artlines

shimakaze

shimakaze

Tips y Trucos

Énfasis

Puedes aumentar el énfasis en cierto tag, encerrándolo entre paréntesis y poner :(valor).
De la siguiente forma, por ejemplo: (((flowers))) == (flowers:1.331) de esta forma es mucho más ordenada.

Truco: Si no queremos escribir los paréntesis, podemos usar la siguiente combinación de teclas. CTRL+ALT+(Flecha arriba o Abajo) Esto hara que automáticamente se agreguen los paréntesis, y podemos subir y bajar su peso del Tag Seleccionado ahorrándonos el tiempo de escribirlo.

ejemplo

NovelAI official usa {}

# Referencia de pesos en el prompt
(n) = (n:1.1)
((n)) = (n:1.21)
(((n))) = (n:1.331)
((((n)))) = (n:1.4641) 
(((((n)))) = (n:1.61051)
((((((n)))))) = (n:1.771561)

[n] = (n:0.9090909090909091)
[[n]] = (n:0.8264462809917355)
[[[n]]] = (n:0.7513148009015778)
[[[[n]]]] = (n:0.6830134553650707)
[[[[[n]]]]] = (n:0.6209213230591552) 
[[[[[[n]]]]]] = (n:0.5644739300537775)

Ejemplo ejemplo

¿No sabes que tag usar?

Aparte del enorme repositorio de tags de danbooru, puedes usar herramientas como Deep Danbooru, Subes una imagen y este te devolverá sus posibles tags, y personajes de la imagen.

ejemplo

Ni siquiera es necesario salirse del WebUI de Stable diffusion incluso, en sección de img2img, podemos subir una imagen y usar interrogate clip de toda la imagen o un área especifica. (la primera vez tarda cierto tiempo).

ejemplo

ejemplo

ejemplo Esto nos sirve para entender que es lo que la IA "Piensa" que hay en nuestra imagen y poder nosotros intentar replicar resultados.

Actualización

Con las nuevas actualizaciones de WebUI ahora es posible hacer lo mismo de "interrogate clip" usando DeepDanbooru ofreciendo mejores y más precisas estimaciones.

¿Te olvidaste del prompt de una imagen?

Muchas veces generamos mucha imágenes, que en muchas ocasiones nos gustan y no guardamos el prompt (cosa que no debería pasar si seguimos todas las indicaciones de esta guía), pero en caso hayamos perdido el prompt, pero aún conservamos la imagen, podemos subirla al apartado de PNG info, de esta forma la IA analizara si ha trabajado la imagen, devolviéndote tu prompt, semilla y hasta la configuración utilizada.

ejemplo

Img2Img

a

Img2img es una muy poderosa herramienta que como lienzo para generar tu imagen, este toma una imagen que le des como referencia. Esto es muy útil cuando no encuentras la forma de describirle a la IA cierta pose o composición. Otra de sus grandes virtudes es que puedes "replicar" con mayor exactitud algún resultado, haciendo mucho más sencillo el modificar una seed en concreto.

pequeño consejo

Cuando generamos cualquier imagen usando txt2img, siempre existirá cierto valor RNG, por ejemplo si no definimos un color o el Angulo de cámara, la IA sacara alguno random. En muchas ocasiones puede salir algo que nos guste y queramos seguir generando imágenes parecidas para seguir experimentando con esa composición.
Para eso podemos mandar esta imagen generada directamente a Img2Img presionando el botón de Send to Img2Img, De esta forma WebUI copiara toda nuestra configuración al apartado de Img2Img ahorrándonos tiempo.

a Una vez pasada tu imagen a img2img puedes comenzar a experimentar diferentes prompts y el resultado se debería parecer a la imagen ingresada, si por ejemplo consigues generar una imagen aún mejor a la que ya tenías, puedes repetir este proceso y ahora usarla como tu nueva imagen de referencia.

Como funciona Img2Img

a Demos una vista general a que es lo que hacen cada uno de los parámetros y opciones que nos ofrece Img2Img.

  • WIDTH/HEIGHT: El tamaño de tu imagen resultado En el caso de las IA en local puede ser muy exigente para tu VRAM subirlo más del por defecto 512x512.
  • JUST RESIZE: Redimensiona tu imagen resultado, Normalmente la imagen de referencia en Img2Img, nunca será de las misma dimensiones que las que nosotros definimos con "WIDTH y HEIGHT"
  • CROP AND RESIZE: Recorta y Redimensiona tu imagen resultado según tu las dimensiones especificadas, Yo siempre intento por lo menos que mis dimensiones cubran un 90% de la imagen total. Este es el modo que más utilizo"
  • RESIZE AND FILL: Llena y Redimensiona tu imagen resultado según tu las dimensiones especificadas, Nunca la he usado"
  • SAMPLING STEPS: Cuantas imágenes va a repasar la IA para hacer tu imagen. Claramente, mientras mayor el numero, mejor, pero la velocidad será bastante reducida en función del tamaño, yo no recomiendo generalmente ir más de los 50, a menos que quieras que se refinen los detalles de tu imagen, aparte en algunos Sampling Method casi no hace casi diferencia.
  • SAMPLING METHOD: Como la IA interpreta tu imagen Cada uno da una diferente aproximación a la interpretación de tu Prompt.
    PROOMPT!
  • RESTORE FACES: Úsalo cuando trabajes con caras Con las caras Estilo Anime da un poco igual tenerlo o no activado, por lo menos a mi experiencia.
  • TILING: Sirve para que la IA repita un patrón, normalmente para aumentar el tamaño de la imagen usando RESIZE AND FILL (Nunca he utilizado esta opción), dejo un ejemplo de una imagen llenada a lo ancho.
    a

a

  • DENOISING STRENGTH: Define el nivel de detalle de la imagen, Debes experimentar, yo casi siempre lo dejo por defecto a menos que se trate de un Inpaint.
  • CFG SCALE: Que tanto quieres que la IA haga caso a tu prompt Si es bajo el resultado no va estar tan enfocado en lo que pediste, y a mayores la precisión será mayor.
  • Negative Prompt: Todo lo que NO queremos en nuestra imagen Es MUY importante hacer buen uso de estos.
    • Empezar de 5-15. Los resultados de enfocar demasiado o poco son muy extremos, es mejor un balance.
  • SEED: Es la ruta de procesamiento que seguirá la IA siempre y cuando los prompts y configuraciones sean las mismas, si se usa un mismo seed las imágenes resultantes serán idénticas.
    • Con -1 el resultado será random). Guarda las seeds y prompts que te gusten para replicarlas o hacerles modificaciones.
  • Batch count: Cuantas imágenes generas por cada iteración

Tu personaje es casi perfecto ¿Cómo arreglarlo?

inpainting

a

inpainting Nos permite cambiar solo cierta parte seleccionada de nuestra imagen.

Esta opción del modo img2img nos permite subir una imagen a la cual agregarle una mascara, la mascara es el único lugar de la imagen que la IA tocara, "Fill" sirve para llenar espacios con otra cosa que deseemos, "Original" nos permite conservar en su mayoría la imagen original haciendo modificaciones, siguiendo patrones (es la opción que más utilizo)

Imagen Original a Imagen editada con Inpainting a

Es muy importante que a cada minima mejora con respecto a lo que quieres, manda tu imagen resultado a Inpaint para trabajar sobre esta nueva imagen, itera las veces necesarias hasta que lo logres.
Inpainting no es magico y no siempre va ser la solución a todo.

Comentarios

Edit
Pub: 04 Nov 2022 05:46 UTC
Edit: 19 Jan 2023 15:14 UTC
Views: 1186