codeformer: hacia una restauración robusta de cara ciega con transformador de búsqueda de libro de códigos

Interpretación del códigoFormer paper_bilibili_bilibili Es hora de que comparta mi artículo mientras estoy en el trabajo. Por cierto, me gustaría compartirlo contigo. Si tienes alguna idea, puedes dejar un mensaje y compartirla. Jaja , esta máquina de subtítulos es un poco estúpida. Echemos un vistazo. No lo haré la próxima vez. Tengo subtítulos. . , vistas de video 422, comentarios 0, me gusta 19, monedas lanzadas 18, favoritos 14, reenvíos 1, autor del video Lei Ge juega con una pistola, introducción del autor, videos relacionados: Intercambio de papel de súper resolución: LDL y HGGT, video AI real -superresolución en tiempo, [Interpretación en papel] [Gráfico + Autosupervisión] ¿Cuándo ayuda la autosupervisión a graficar redes convolucionales?, intercambio de papel en video con superresolución: BasicVSR, BasicVSR++, RealBasicVSR, filtrado de imágenes (filtro gaussiano, filtrado bilateral , principio de filtrado guiado e implementación), el médico informático analiza exhaustivamente el código fuente de MedicalTransformer y comparte las últimas direcciones de investigación en el campo CV en 2023. El artículo de Mike.com interpreta el uso de tubos de calor para el análisis de gestión térmica de baterías de iones de litio. Cuando se utiliza la superresolución de IA para comprimir una imagen 512 veces, la Universidad del Sureste midió la resistencia cero por primera vez. ¿Está el superconductor a temperatura ambiente de Corea del Sur un paso más cerca de la verdad? Interpretación del artículo, interpretación del artículo LK-99: ¡El Laboratorio Lawrence Berkeley en los Estados Unidos simuló la estructura del LK-99 a través de una supercomputadora! 【Chino】https://www.bilibili.com/video/BV11M4y1U7z2/?spm_id_from=333.337.search-card.all.click&vd_source=4aed82e35f26bb600bc5b46e65e25c22

Ingrese imágenes de baja calidad y genere imágenes de alta calidad de la misma manera que la súper resolución general. La idea de Codeformer es diferente de las dos imágenes siguientes. Una de sus motivaciones es que algunos modelos actuales son muy sensibles a la entrada de baja calidad durante el proceso de degradación severa. Cuando la entrada de baja calidad tiembla o cambia ligeramente, la alta -entrada de calidad La producción de recursos humanos cambiará enormemente y la degradación de la calidad será grave, ¿cuál es la razón? Por ejemplo, gfpgan tiene una gran cantidad de conexiones de salto en la red, que es la estructura residual, que transmitirá información de baja calidad al decodificador posterior para asentar sus funciones. Cuando la degradación es grave, algunas características de imagen de baja calidad será Afecta directamente a la generación de hr.

La imagen de arriba es una referencia previa. Durante el proceso de generación, algunas imágenes faciales de alta calidad se utilizarán para el entrenamiento. El modelo aprenderá automáticamente algunas estructuras o características faciales de las imágenes faciales de alta calidad y las tratará como una referencia antes de guiar la generación de imágenes de baja calidad.  

La imagen de arriba es gfpgan, que genera priors. Utiliza una red entrenada como generador para codificar y decodificar imágenes faciales de baja calidad, y luego alimenta diferentes niveles de características en el stylegan entrenado para ayudar. Generación de imágenes. 

1. Codeformer convierte la tarea de superresolución facial en predicción de un libro de códigos discreto. El método anterior es predecir un vector latente continuo y luego predecirlo a través del codificador para decodificarlo como la entrada del decodificador, pero Codeformer no lo codifica. .Un espacio continuo, pero codificado en un libro de códigos discreto. Por ejemplo, el libro de códigos tiene 1024 dimensiones, el número es 1024 y la dimensión es 256. Se predice en el libro de códigos porque la imagen se asigna a un espacio continuo. El rango es demasiado grande. Ahora, el libro de códigos es un espacio limitado. Completa el mapeo de una imagen a un libro de códigos más pequeño, lo que reduce en gran medida la incertidumbre y reduce la dependencia de la red de lr, porque el formador de códigos básicamente no tiene conexión residual; 2. Utilice un transformador en lugar de la coincidencia del vecino más cercano.

Hay una imagen que codifica un vector de características a través de un codificador. La dimensión de este vector de características es mxnxd. Si es una estructura VAE, genera un vector continuo. De hecho, genera una distribución y toma muestras directamente de la distribución y lo envía al decodificador. En vqvae, vqvae tiene más operaciones vq y cuantificación de vectores. Por ejemplo, el cuadrado verde en esta imagen es mxnxd, la profundidad es dimensión d y el cuadrado 0 es 1x1xd. Al encontrar el más cercano a él en el libro de códigos discreto, la dimensión del libro de códigos es 1024xd. Coloque el índice del vector vecino más cercano en el libro de códigos en la tabla azul, use el libro de códigos para hacer un mapeo y apueste por el índice en la tabla azul para ganar la incrustación en el libro de códigos. De esta manera, puede obtener el libro de códigos de la tabla azul. La entrada al decodificador en la tabla luego es reconstruida por el decodificador. vqgan y vqvae son consistentes. Después de obtener las características a través del codificador, el decodificador se entrena mediante la coincidencia del vecino más cercano. Después de entrenar este proceso, el codificador se descarta y solo se necesita el decodificador. Sin embargo, si desea realizar una generación no supervisada, necesita tener una tabla de índice correspondiente, de modo que la incrustación correspondiente se pueda encontrar en el libro de códigos para obtener la entrada del decodificador. Luego, esta tabla de índice se genera a través de gpt2 y se predice mediante autorregresión. Con una tabla de índice, la entrada puede Ser obtenido. La razón por la que se llama vqgan es simplemente porque se agregan algunas pérdidas de gan.

El entrenamiento de Codeformer se divide en tres partes: la primera etapa es obtener un libro de códigos de alta definición y un decodificador capacitado, que utiliza directamente imágenes de alta definición como entrada y la salida también es una imagen de alta definición, pero este proceso no use cualquier conexión residual, como la entrada Es hxwx3. Después de la codificación, es mxnxd, que es el mismo proceso que la codificación discreta. Para cada d en la posición mxn, vaya al libro de códigos para encontrar la incrustación más cercana. Argmin coincide. El mxnxd generado por el codificador es en realidad un conjunto de características. Encuéntrelo en el libro de códigos. La característica más cercana a reemplazar la salida del codificador es en realidad la agrupación, lo que equivale a tener tantos centros de agrupación en el libro de códigos. También puede ver En la imagen superior, el efecto de agrupamiento de gráficos de hr es muy bueno. La conversión del libro de códigos Zc se obtiene inmediatamente como entrada del decodificador. Si usa directamente la imagen lr para el entrenamiento, es posible que el efecto no sea bueno. Por lo tanto, Si usa directamente la imagen hr para el entrenamiento, puede obtener un libro de códigos realmente bueno. Este método no tiene ninguna conexión residual. hr se recupera del libro de códigos. El código gt en la imagen superior es la imagen generada en la primera etapa. que está muy cerca de la imagen original. Pero argmin no es diferenciable. Copia directamente el gradiente de zc a zh durante la propagación hacia atrás, que es la línea de código anterior. Cuantizado representa zc. La fórmula anterior es una identidad. De hecho, después de separar, el gradiente es 0. El conjunto la pérdida en la primera etapa es igual a la pérdida l1, que en realidad es el proceso de codificación y decodificación (AE), Lper es la pérdida de percepción, lo que significa que después de que ambas imágenes se envían a vgg para extraer características, se compara la similitud de las características. , pero durante el proceso de entrenamiento, zc El gradiente se copia directamente a zh, por lo que el libro de códigos en realidad no está entrenado. Se propone una pérdida adicional de Lcode. sg es el gradiente detenido, que bloquea el gradiente de zh, por lo que Lcode en realidad está entrenando a zc. zc es una combinación unidimensional del libro de códigos, por lo que este en realidad optimiza el libro de códigos y el segundo optimiza zh de la misma manera.

En la primera etapa del entrenamiento, se obtienen un libro de códigos de alta definición y un decodificador entrenado. La segunda etapa es hacer coincidir las características de la imagen de baja definición con la codificación en el libro de códigos. Esta comparación utiliza la coincidencia del vecino más cercano en la primera etapa. La razón por la que se utilizan los vecinos más cercanos en la primera etapa es porque las características en sí mismas son fáciles de agrupar en imágenes de alta definición, pero en imágenes degradadas de baja definición, las características son más difíciles de agrupar. En este momento, se introduce el transformador para Reemplace el vecino más cercano. Vecino, en la segunda etapa, la entrada no tiene una imagen de alta definición. Se pasa una imagen degradada de baja definición a través del codificador para obtener un bloque mxnxd. Debido a que se usa un transformador, la entrada y la salida debe procesarse, la entrada se convierte en (mxn)xd., la salida se convierte en si, es decir, la tabla de índice en la primera etapa, que también es (mxn)xd, es decir, usar el transformador para predecir la tabla de índice. Esta sección es para entrenamiento de pérdida a nivel de código, no para pérdida de imagen. El mapa hr se entrena en la primera etapa. Cuando se genera si, este si es gt. Este gt también ha demostrado ser muy efectivo en la restauración de la imagen original. En la primera etapa, los s y si entrenados por el transformador se supervisan y el código L se convierte en una función de pérdida de entropía cruzada, la última parte de la pérdida es la misma que antes. En este momento, el codificador anterior está entrenado, con dos derrotas. 

La tercera etapa es el equilibrio entre fidelidad y calidad, la fidelidad se debe a que no tienes conexión residual, por lo que la imagen generada puede ser de alta calidad, pero no es como la imagen original, por lo que es necesario agregar una restricción, por lo que en Durante Durante el proceso de entrenamiento, w generalmente se establece en 0,5, lo que en realidad controla la similitud con la imagen original a través de una conexión residual. En esta etapa se utilizarán todas las pérdidas.

GFPGAN también funciona bien en escenas reales, pero no en escenas sintéticas. 

Transforme la entrada de imagen sin ruido en un problema de coincidencia. Convierta el espacio continuo en espacio discreto y reduzca el espacio de solución. Los problemas de clasificación suelen tener soluciones finitas, mientras que los problemas de regresión tienen soluciones infinitas, lo que los hace más difíciles. ¿La carga de destrucción será mayor que la capacidad tradicional de devolución de cajas? 

Supongo que te gusta

Origin blog.csdn.net/u012193416/article/details/132525606
Recomendado
Clasificación