GlyphDraw: Representación perfecta de texto con estructuras espaciales complejas en la generación de texto a imagen

GlyphDraw: representación perfecta de texto con estructuras espaciales complejas en la generación de texto a imagen (lectura en papel)

Jian Ma, OPPO Research Institute, CH, arXiv, Citado:1, Código , Papel

1. Introducción

Recientemente, se han logrado avances impresionantes en el campo de la generación de imágenes guiada por lenguaje, lo que permite la generación de imágenes diversas y de alta calidad basadas en las instrucciones del usuario. Si bien los resultados de la síntesis son sorprendentes, una limitación importante de los modelos de generación de imágenes actuales es su capacidad insuficiente para generar texto de forma coherente en imágenes, especialmente para estructuras de grafema complejas como los caracteres chinos. Para abordar este problema, presentamos GlyphDraw, un marco de aprendizaje general diseñado para potenciar los modelos generativos de imágenes para generar imágenes incrustadas con texto, para cualquier idioma específico. Primero diseñamos cuidadosamente la estrategia de construcción del conjunto de datos de imagen y texto, luego construimos nuestro modelo basado en el generador de imágenes basado en difusión y modificamos cuidadosamente la estructura de la red, para que el modelo pueda aprender a dibujar caracteres de idioma con la ayuda de glifo y información de posición. Además, conservamos la capacidad de síntesis de imágenes de dominio abierto del modelo para evitar el olvido catastrófico mediante el uso de una técnica de ajuste fino eficiente en parámetros. Extensos experimentos cualitativos y cuantitativos demuestran que nuestro método no solo genera con precisión los caracteres del idioma que coinciden con las indicaciones, sino que también combina a la perfección el texto generado con el fondo.

2. Pensamiento holístico

En primer lugar, debe haber un conjunto de datos de imágenes con texto en chino. Con el conjunto de datos, también podemos crear un indicador, usar BLIP-2 para generar un título para la imagen (para el indicador), y ahora tenemos una imagen y un título. con texto Si queremos generar imágenes de texto con texto, debemos hacer que el modelo de difusión sea consciente del texto y generar texto basado en la información del texto. El método utilizado en este artículo es el siguiente: en la fase de entrenamiento, deducimos el texto de la imagen en una máscara a través del reconocimiento OCR, y enviamos la imagen original, la máscara y el mensaje de texto cancat al eliminador de ruido, para que el modelo de difusión conozca el Ubicación de texto específico e información de texto, con la bendición de prontitud, el entrenamiento de este modelo puede hacer que aprenda a generar texto y contenido correspondiente a la ubicación de acuerdo con el texto. Este artículo puede ser el primer trabajo, y el efecto que genera es muy abrupto, como la forma de agregar texto a las imágenes hace 20 años.

3. Método

Los métodos actuales de síntesis de imágenes aún enfrentan muchos desafíos para generar estructuras complejas y de grano fino, como las manos humanas y el contenido del texto. El trabajo pionero Imagen demuestra que el texto en inglés se puede representar en imágenes utilizando modelos de lenguaje a gran escala de propósito general preentrenados congelados como T5-XXL, sin introducir redes diseñadas específicamente y estrategias de entrenamiento. Otro trabajo reciente propone utilizar modelos de lenguaje conscientes de los caracteres (como la familia ByT5) para mejorar aún más las capacidades de representación de texto visual de los modelos de síntesis de imágenes. Sin embargo, como se demuestra en este trabajo, estos métodos no son suficientes para generar caracteres no latinos como el chino. Esto se debe principalmente a la estructura espacial bidimensional más compleja de los caracteres chinos, que consta de ocho tipos diferentes de trazos básicos y una gran cantidad de caracteres de uso común (hasta miles). Por lo tanto, generar caracteres chinos precisos y diversos es más difícil y sigue siendo un problema de investigación abierto. Además, congelar un modelo de lenguaje general previamente entrenado es inflexible para ajustar un modelo de síntesis de imágenes para representar texto visual en un idioma posterior especificado por el usuario, mientras que entrenar un modelo de lenguaje específico desde cero es costoso y requiere muchos datos. Por lo tanto, estamos inspirados para diseñar un algoritmo general y adaptable para enfrentar el desafío de la presentación de texto visual mediante el uso de una estrategia de entrenamiento y un conjunto de datos livianos.

inserte la descripción de la imagen aquí

Para abordar este problema, proponemos GlyphDraw, un marco general diseñado para potenciar los modelos generativos de imágenes para generar texto visual coherente en imágenes. GlyphDraw utiliza glifos de caracteres y posiciones de texto como información auxiliar para controlar mejor el proceso de generación de caracteres. Nuestro método logra resultados impresionantes, capaces de generar diversos textos visuales que siguen con precisión las instrucciones dadas. Vale la pena señalar que el texto generado coincide de manera inteligente con el estilo de fuente más adecuado para el contexto y se combina a la perfección con el fondo mientras mantiene una generación de alta calidad y evita problemas como el sobreajuste y el olvido catastrófico, como se muestra en la Figura 1 para el ejemplo en chino e inglés. mostrado. Nuestras principales contribuciones se resumen a continuación:

  1. Presentamos GlyphDraw, un marco general y flexible para resolver el problema de la generación de caracteres visuales para cualquier idioma específico, como inglés o chino. GlyphDraw proporciona una guía detallada durante todo el proceso de generación, lo que permite que los caracteres complejos de alta calidad se mezclen perfectamente con los entornos de imagen en una variedad de estilos.
  2. Desarrollamos una estrategia de ajuste fino de parámetros eficientes basada en modelos previamente entrenados para evitar el sobreajuste y el olvido catastrófico, manteniendo así de manera efectiva el sólido rendimiento del modelo en la generación de dominio abierto y logrando simultáneamente una generación de texto visual precisa.
  3. Detallamos el proceso de construcción del conjunto de datos de entrenamiento y los puntos de referencia de evaluación, en los que nuestro GlyphDraw logra una excelente precisión de OCR para la representación de caracteres chinos e ingleses, alcanzando el 74 % y el 75 %, respectivamente, superando significativamente la resolución de resolución de imágenes anteriores.

3.1 Trabajo relacionado

Muchos estudios han explorado el desafío de incorporar contenido textual en la síntesis de imágenes. Por ejemplo, la investigación sobre la generación de fuentes tiene como objetivo crear fuentes novedosas al tratarlo como un problema de transferencia de estilo basado en una fuente de entrada dada. Diff-font utiliza un modelo de difusión para manejar las tareas de generación de fuentes. Sin embargo, estos trabajos solo se enfocan en generar glifos de fuente sin fondo y son inconsistentes con nuestro objetivo de mejorar la generación de texto en la síntesis de imágenes. Otro trabajo relacionado propone modelos de difusión conscientes de los caracteres para mejorar la generación de texto mediante la incorporación de funciones de entrada a nivel de caracteres. Sin embargo, los métodos conscientes de los caracteres funcionan mal en la generación de textos no latinos debido a la complejidad de su estructura espacial. Hasta donde sabemos, nuestro artículo es el primero en abordar el difícil problema de la generación de texto no latino (por ejemplo, chino) en la síntesis de imágenes de propósito general.

3.2 Introducción

En esta sección, primero revisamos brevemente la notación necesaria para la difusión estable (SD), para describir más convenientemente el algoritmo que proponemos más adelante. Luego detallamos una descripción general del marco GlyphDraw y explicamos cómo utilizamos la información auxiliar. Además, presentaremos nuestra estrategia de capacitación diseñada para evitar el olvido catastrófico. Finalmente, presentaremos el proceso de inferencia, que es ligeramente diferente de la fase de entrenamiento.

En SD, la imagen de entrada se transforma en una representación latente mediante un autocodificador y el proceso de difusión también se realiza en el espacio latente. donde se usa una U-Net condicional para predecir el paso actual ttt , ruido espacial latentezt z_tzty condición de construcción CCEl ruido ϵ \epsilonbajo Cϵ , donde la condición es el módulo de atención cruzada agregado al módulo U-Net.
Atención ⁡ ( Q , K , V ) = softmax ⁡ ( QKT d ) ⋅ V donde Q = WQ ( yo ) ⋅ φ yo ( zt ) , K = WK ( yo ) ⋅ C , V = WV ( yo ) ⋅ C . \operatorname{Atención}(Q, K, V)=\operatorname{softmax}\left(\frac{QK^{T}}{\sqrt{d}}\right) \cdot V \\ donde \quad Q= W_{Q}^{(i)} \cdot \varphi_{i}\left(z_{t}\right), K=W_{K}^{(i)} \cdot C, V=W_{V} ^{(i)} \cdot C .Atención ( Q ,K ,V )=softmax(d Q KT)Vdonde _ _q=Wq( yo )Fiyo( zt),k=Wk( yo )C ,V=WV( yo )C.
Entre ellos, φ i ( zt ) \varphi_{i}(z_{t})Fiyo( zt) es el vector aplanado después del eliminador de ruido,WQ ( i ) , WK ( i ) , WV ( i ) W_{Q}^{(i)},W_{K}^{(i)},W_{ V}^ {(i)}Wq( yo ),Wk( yo ),WV( yo )
es una matriz de proyección aprendible. En el contexto de la generación de texto a imagen, la condición C = τ θ ( y ) C=\tau_{\theta}(y)C=ti( y ) es el codificador de texto CLIP preentrenadoτ θ \tau_{\theta}tienviar un mensaje de textoy código obtenido.

3.3 Resumen del modelo

inserte la descripción de la imagen aquí

El marco de entrenamiento general de nuestro método GlyphDraw propuesto se muestra en la figura. Nos enfocamos en modificar el mecanismo de atención cruzada en Stable Diffusion. Variable latente de entrada original zt z_tztse reemplaza por la variable latente de la imagen zt z_tzt, máscara de texto lm l_myomy la imagen del glifo lg l_gyogLa concatenación. Además, mediante el uso de módulos de fusión específicos de dominio, el CC condicionalC viene con características mixtas de glifo y texto. La introducción de máscaras de texto e información de grafemas permite un control de difusión detallado durante todo el proceso de entrenamiento, que es uno de los componentes clave para mejorar el rendimiento. Para la parte latente de la imagen, la máscara de carácter lm l_mdetectada por OCRyomy una imagen de glifo lg l_g que contiene solo la información visual del carácteryogy características latentes de la imagen zt z_tztpara conectar. Entonces, las características latentes combinadas zt ′ z’_tzt′′se utiliza como entrada para UNet. En cuanto a la parte de acondicionamiento de texto, el modelo CLIP preentrenado codifica sugerencias e imágenes de glifos como incrustaciones et e_tmitpor ejemplo , por ejemplomig. Luego, se emplea un módulo de fusión para fusionar aún más las incrustaciones de texto y grafema en características condicionales CCC , la característica se utiliza como los componentes clave y de valor de la capa de atención cruzada de UNet. Durante la inferencia, se emplea un módulo de predicción de máscara similar a MLP para estimar los mapas de máscara de caracteres.

3.4 Exploración de información auxiliar

La representación de píxeles de información textual, especialmente ideogramas como caracteres chinos, es bastante diferente de la representación de objetos naturales. Por ejemplo, el carácter chino "天天" es solo una estructura bidimensional compuesta de múltiples trazos, mientras que la imaginación correspondiente de su imagen natural es "una enorme pantalla azul salpicada de nubes blancas". El texto visual es una función de granularidad muy fina, e incluso pequeños cambios o deformaciones pueden provocar una representación incorrecta del texto, lo que genera una generación de imágenes poco realista. Al incrustar caracteres en fondos de imágenes naturales, también es necesario considerar cómo controlar con precisión la generación de píxeles de texto sin afectar los píxeles de imágenes naturales adyacentes. Por lo tanto, para representar caracteres perfectos en imágenes naturales realistas sin incongruencias, diseñamos cuidadosamente dos componentes clave, a saber, control de posición y control de grafema, en nuestro modelo de síntesis basado en difusión.

inserte la descripción de la imagen aquí

Control de posición : la distribución de las características latentes de los píxeles de los caracteres es muy diferente de la de los píxeles de la imagen natural. Para evitar el colapso del aprendizaje del modelo, introducimos de manera innovadora un control de región de ubicación detallado para desacoplar la distribución entre diferentes regiones. Específicamente, se genera un mapa de características de máscara binaria en las características latentes de la imagen original y se concatena con las características latentes de la imagen original. En la etapa de entrenamiento, las máscaras de forma de cuadrilátero se extraen mediante información de detección OCR. En la etapa de inferencia, dado que no hay una imagen de referencia disponible, la máscara es generada por el módulo de predicción de máscara en la etapa de difusión temprana, que se analizará con más detalle en la Sección 3.5.

Control de glifos : además del control posicional mencionado anteriormente, otro desafío importante es el control detallado sobre la síntesis de trazos de caracteres del lenguaje. Dada la complejidad (que a menudo consta de 1 a 20 trazos 2D) y la diversidad (hasta 10 000 caracteres de uso común) de los caracteres chinos, aprender únicamente a partir de conjuntos de datos de imágenes y texto a gran escala sin ninguna inyección de conocimiento previo explícito es extremadamente difícil. Para generar caracteres chinos con precisión, introducimos imágenes de glifos explícitos como información condicional adicional en el proceso de difusión del modelo. Específicamente, como se muestra en la Figura 2, una imagen de glifo extraída previamente que contiene solo caracteres chinos ubicados en el centro de la imagen con un fondo blanco, como "Río Beidai (río Beidai)", se inyecta en la parte latente de la imagen y el texto pieza de incrustación. Primero, la imagen de glifo en escala de grises lg l_g extraída por el generador de glifosyogse concatena con la característica latente de la imagen ruidosa zt z_tzty una máscara de texto binario lm l_myomFormar una nueva característica latente de imagen zt ′ = concat ( zt , lg , lm ) z'_t = concat(z_t, l_g, l_m)zt′′=co n c a t ( zt,yog,yom) . Después del ajuste de dimensión de la capa convolucional, el vector de característicasz ~ t = convin ( zt ′ ) \tilde z_t = conv_{in}(z'_t)z~t=co n ven( zt′′) se ingresa a UNet como un componente de consulta. En términos de información condicional,C = M [ concat ( eg , et ) ] C = M [concat(e_g, e_t)]C=M [ co n c a t ( eg,mit)] por módulo de fusiónMMM de incrustaciones de grafemas (p. ej. = I θ (lg) e_g = I_θ(l_g)mig=Ii( yog) ) e incrustaciones de texto (et = τ θ ( y ) e_t = τ_θ(y)mit=ti( y ) ), donde las incrustaciones de glifos se extraen de un codificador de imagen CLIP fijo (I θ I_θIi) extracción, incrustaciones de texto del codificador de texto ( τ θ τ_θti) 提取因此此,gphdraw 的基目标是:
lgd b ε ( x 0 ) , y , , , ϼ ϼ ∼ Σ ψ cecepti ZT , T , y , lg , lm ) ∣ ∣ 2 2 ] \mathcal {L}_ {GD_b}=\mathbb{E_{\varepsilon(x_0),y,l_g,l_m,\epsilon\sim N(0,1), t}}=[||\epsilon-\epsilon_{\theta}(z_t ,t,y,l_g,l_m)||^2_2]LG Dsegundo=mie ( x0) , y , lg, yom, ϵ norte ( 0 , 1 ) , t=[ ∣∣ ϵϵi( zt,t ,y ,yog,yom) 22]

3.5 Formación

Durante la fase de aprendizaje, solo actualizamos los parámetros de red para aprender la generación de caracteres del idioma, mientras congelamos otros parámetros para preservar la capacidad general del modelo. Para permitir que UNet use información de máscara de posición y glifo como canales adicionales junto con variables latentes de imagen, adaptamos el módulo de entrada "conv_in" de UNet en consecuencia para acomodar la información adicional y actualizarla durante el aprendizaje. De manera similar, el módulo de fusión también debe actualizarse, lo que modifica la condición de generación C al integrar información de glifos e incrustar señales de texto. Además, y lo que es más importante, al actualizar el mapeo de una distribución de texto a imagen determinada, solo es necesario actualizar cada bloque de atención cruzada iii MedioWK i W^i_KWkyoWV i W^i_VWVyoes suficiente ya que las características del texto son la única entrada para las matrices de proyección de clave y valor. Al seleccionar los parámetros que se van a actualizar, nuestro método mantiene de manera efectiva el rendimiento generativo del modelo y logra una generación de texto coherente mientras actualiza solo el 3 % de los parámetros totales, lo que acelera en gran medida la convergencia del modelo.

Para mejorar aún más el rendimiento de generación de texto visual de nuestro modelo, implementamos una estrategia de ponderación en el diseño del objetivo de capacitación, cuyo objetivo es enfatizar el aprendizaje de la capacidad de generación de caracteres del idioma durante el proceso de aprendizaje. Específicamente, según la información de la máscara de ubicación lm l_myomGeneremos las siguientes ecuaciones para la ecuación cuantitativa:
LGD = E ε ( x 0 ) , y , lg , lm , ϵ ∼ N ( 0 , 1 ) , t = [ ∣ ∣ ϵ − ϵ θ ( zt , t , y , lg , lm ) ∣ ∣ 2 2 + α ∣ ∣ ( ϵ − ϵ θ ( zt , t , y , lg , lm ) ) ∗ ( 1 − lm ) ∣ ∣ 2 2 ] \mathcal{L} _{GD} =\mathbb{E_{\varepsilon(x_0),y,l_g,l_m,\epsilon\sim N(0,1),t}}=[||\epsilon-\epsilon_{\theta}( z_t,t, y,l_g,l_m)||^2_2+\alpha||(\epsilon-\epsilon_{\theta}(z_t,t,y,l_g,l_m))*(1-l_m)||^2_2 ]LGD _=mie ( x0) , y , lg, yom, ϵ norte ( 0 , 1 ) , t=[ ∣∣ ϵϵi( zt,t ,y ,yog,yom) 22+α ∣∣ ( ϵϵi( zt,t ,y ,yog,yom))( 1yom) 22]

3.6 Razonamiento

inserte la descripción de la imagen aquí
Durante la inferencia, la información de máscara lm no puede ser extraída directamente por el detector OCR debido a la falta de la imagen original x0. Por lo tanto, proponemos un módulo de predicción de máscaras (líneas y recuadros rojos) en la Fig. 2 para estimar máscaras gruesas con formas arbitrarias. Como se muestra en la Figura 3, estimamos las máscaras de caracteres en los primeros pasos de difusión (t = {T,T−1,...,tearly}) mediante el uso de una red MLP de píxeles simple entrenada con una pérdida de MSE de La pérdida entre la máscara estimada y la máscara verdadera. Después de obtener la máscara predicha, regeneramos la imagen a través del proceso de difusión completo (t = {T,T−1,...,rT,...,1}) a través de la estrategia de muestreo DDIM. Usamos el modelo Glyphdraw para muestrear los primeros pasos ({T, T−1, ..., rT + 1}) y los pasos restantes ({rT, ..., 1}) usando la difusión estable preentrenada model , Glyph y position priors se descartan, donde r ∈ [0,1] es un hiperparámetro que se compensa entre la precisión de representación del texto y el poder generativo de dominio abierto.

4. Experimenta

Basado en difusión estable, GlyphDraw consta de módulos VAE, UNet, CLIP y fusión, que contienen un total de 1900 millones de parámetros, de los cuales solo 1000 millones de parámetros (módulo de fusión, módulo conv_in y matriz de proyección W(i)K, W(i) )V ) se puede entrenar. El VAE y UNet se inicializan desde el punto de control del modelo de difusión estable, y los codificadores de imagen y texto CLIP se cargan desde el punto de control CLIP previamente entrenado. Después del codificador CLIP, las longitudes de token de imagen y texto son 257 y 64, respectivamente. Adoptamos un transformador con 6 capas, 8 cabezales de atención y 1024 dimensiones ocultas como módulo de fusión. Fijamos la tasa de aprendizaje en 2e-5 y el hiperparámetro de la escala de peso α en la ecuación en 0,5. Todo el modelo está entrenado en 24 GPU A100 con un tamaño de lote de 25 por GPU para un total de 20 épocas.
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/qq_43800752/article/details/130935198
Recomendado
Clasificación