[Visão Computacional] Aplicação de Rede Neural Recursiva em Super Resolução de ImagensRede Residual Recursiva Profunda para Super Resolução de Imagens

DRCN: Rede Convolucional Profundamente Recursiva para Super-Resolução de Imagens

Resumir

Este artigo é a primeira vez que aplica a estrutura de rede neural recursiva anteriormente existente à super-resolução de imagens. A fim de aumentar o campo receptivo da rede e melhorar o desempenho da rede, uma rede neural recursiva profunda foi introduzida.O compartilhamento de peso do módulo recursivo reduz o número de parâmetros necessários para o modelo, mas ocorre o problema de explosão/desaparecimento de gradiente, e dois recursivos foram desenvolvidas conexões de supervisão e de salto . Método de extensão.
Características:

  1. Supervisão recursiva: O mapa de características após cada recursão é usado para reconstruir a imagem alvo de alta resolução HR. Como cada recursão leva a diferentes previsões de RH, os autores combinam todas as previsões produzidas por diferentes níveis de recursão para fornecer uma previsão final mais precisa. As previsões de cada recursão são supervisionadas pelo GT
  2. Ignorar conexões: No SR, imagens de baixa resolução (entrada) e imagens de alta resolução (saída) compartilham em grande parte as mesmas informações. A informação precisa da entrada pode decair durante muitas passagens para frente. Assim, o autor conecta a entrada e a saída de cada camada à camada de reconstrução para restauração da imagem. Aliviando a carga de memória da rede, a rede só precisa aprender o resíduo
  3. A imagem LR original é ampliada por interpolação e a resolução é aumentada antes de entrar na rede.

detalhes do método

Modelo básico:

Insira a descrição da imagem aqui
O modelo básico consiste em três sub-redes: rede de incorporação, rede de inferência e rede de reconstrução.

  • A rede de incorporação é usada para representar uma determinada imagem como um mapa de recursos,
  • A rede de inferência aprofunda a profundidade da rede e mapeia os recursos de saída da rede incorporada para dimensões superiores. Observe que a rede de inferência é chamada recursivamente.
  • A rede de reconstrução gera imagens de saída com base nos mapas de características finais da rede de inferência.
  • A imagem de entrada na figura acima é a imagem após o aumento da resolução de interpolação da imagem LR original.

Há um problema:

  • Gradientes desaparecendo e explodindo. Gradientes explosivos são causados ​​pela natureza multiplicativa dos gradientes encadeados. Para recursão profunda, isso pode crescer exponencialmente. O problema do gradiente evanescente é o oposto do problema do gradiente explosivo. O gradiente acelera exponencialmente até o vetor zero. Portanto, a existência de explosão e desaparecimento de gradiente torna muito difícil para redes recorrentes profundas compreender a relação entre informações de pixels distantes.
  • Não é fácil reter as informações originais do LR após múltiplas recursões. Na tarefa SR, a saída é muito semelhante à entrada, portanto a informação da imagem LR é muito importante, e a informação precisa da imagem de entrada precisa ser preservada para as camadas recorrentes mais profundas subsequentes.
  • Existe um problema para encontrar o número ideal de recursões. Se a recursão for muito profunda para uma determinada tarefa, o número de recursões precisa ser reduzido. Encontrar o número ideal requer o treinamento de muitas redes com diferentes profundidades de recursão.

Modelo avançado

Insira a descrição da imagem aqui
A Figura a é o modelo final do artigo:

  • Supervisão Recursiva: Supervisiona cada camada de recursão para mitigar os efeitos de gradientes de desaparecimento/explosão. Supõe-se que o processo de convolução na camada de inferência usa repetidamente o mesmo núcleo de convolução, e a mesma camada de reconstrução é usada para prever a imagem SR reconstruída recursivamente para cada tempo. A camada de reconstrução produz imagens previstas D, e todas as previsões são supervisionadas ao mesmo tempo durante o treinamento. Esta etapa é refletida na fórmula adicionando uma parte da perda, que será introduzida em detalhes na fórmula abaixo.
      a. Calcule o resultado final por meio da soma ponderada de todas as imagens D previstas (os pesos são aprendidos pela rede). A recursão facilita o treinamento de redes recursivas, e a retropropagação fornece um efeito de suavização ao somar os gradientes de retropropagação gerados por diferentes perdas de previsão, o que pode efetivamente aliviar a explosão ou desaparecimento do gradiente.
      b. Além disso, como a supervisão é capaz de explorar as informações preditivas de todas as camadas intermediárias, a importância de escolher o número ideal de recursões é reduzida.

  • Skip-Connection: Para tarefas de reconstrução de imagem, as imagens de entrada e saída são altamente correlacionadas, de modo que as informações LR podem ser transferidas diretamente para a camada de reconstrução SR por meio de uma conexão de salto de camada. Essa abordagem tem duas vantagens: economiza o complexo poder de computação da transmissão de longa distância e retém em grande medida informações completas de baixa frequência.

Artigo de referência

Algoritmo de super-resolução DRCN: Rede Convolucional Profundamente Recursiva para Reconstrução de Super-Resolução de Imagem

DRRN: Super-resolução de imagem via resíduo recursivo profundo

Resumir

O autor apontou as desvantagens do processamento de interpolação antes da entrada da imagem na rede (aumentando a quantidade de cálculo), e mencionou a estratégia Sub-Pixel utilizada na rede de super-resolução ESPCN, método que visa aumentar a resolução no final do a rede, reduzindo assim, reduz a quantidade de computação e alivia a carga de memória na rede.

Apresentando aprendizagem residual global e local. Semelhante ao ResNet, a unidade residual (que também significa a introdução de aprendizagem residual local) é introduzida, de modo que a rede realizará uma aprendizagem residual após algumas camadas (isto é mais propício à reconstrução e manutenção de informações de alta frequência durante a operação da rede. ), e um grande aprendizado residual também será realizado na camada de saída final.

método

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

bloco recursivo residual

Insira a descrição da imagem aqui

desempenho

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

LapSRN: Redes de Pirâmide Laplaciana Profunda para Super-Resolução Rápida e Precisa

Resumir

Usando a ideia da estrutura piramidal laplaciana, gradualmente realizamos a super-resolução elevada à potência de 2 e combinamos os resíduos para fazer previsões do modelo.
Os pontos inovadores do artigo incluem:

  1. Alta precisão. LapSRN usa perda de Charbonnier para melhorar a qualidade da reconstrução e reduzir artefatos.
  2. alta velocidade. Como o FSRCNN, ele pode atingir superpontuação em tempo real na maioria dos conjuntos de testes.
  3. Reconstrua passo a passo. O modelo utiliza a estrutura da pirâmide Laplaciana para gerar múltiplos resultados intermediários em um processo de predição, que podem ser usados ​​como resultados de super-resolução de diferentes múltiplos.

Problemas com o método anterior:

  1. Alguns métodos usam operações de upsampling predefinidas para interpolar entradas de baixa resolução em saídas de alta resolução para superresolução. Isto aumentará a quantidade de cálculos e produzirá artefatos (aumenta o custo computacional desnecessário e muitas vezes resulta em artefatos de reconstrução visíveis). Embora FSRCNN use deconvolução e ESPCN use convolução de subpixel para acelerar o método de classe SRCNN, mas como a resolução de entrada é muito alta, a capacidade da estrutura do modelo é restrita e relacionamentos de mapeamento mais complexos não podem ser aprendidos.
  2. A perda L2 é sensível ao ruído. O artigo diz que a imagem gerada pela perda L2 é muito suave e inconsistente com a percepção do olho humano.
  3. A maioria dos métodos usa apenas um upsampling para obter a imagem final, o que é difícil para imagens 8x.
  4. Os métodos existentes não conseguem gerar processos intermediários, exigindo o treinamento de uma ampla variedade de modelos para diversas aplicações com diferentes taxas de upsampling desejadas e cargas computacionais

método

Comparação de semelhanças e diferenças de métodos

Insira a descrição da imagem aqui

Métodos existentes

Insira a descrição da imagem aqui

Métodos deste artigo

  • Verde representa operações de adição em nível de elemento, laranja representa camadas de convolução recursivas e azul representa convoluções transpostas.
  • dois módulos
    • Extração de recursos: convolução da camada d (extrair [nível s] recursos de resolução l) + desconvolução da camada 1 (aumentar a resolução para [nível s + 1] recursos de resolução mais finos) e, em seguida, dividir em dois ramos Caminho: um reconstrói a imagem residual através a camada de convolução, e a outra chama recursivamente a convolução da camada d para continuar extraindo recursos l de resolução [nível s+1]. Como a convolução da camada d anterior é operada em baixa resolução , a quantidade de computação é bastante reduzida em comparação com o método de aumento da resolução da imagem para alta resolução antes de entrar na rede .
    • Upsampling: Convolução transposta (deconvolução) com uma escala de 2 aumenta a resolução da imagem + a imagem residual e adiciona os elementos de posição correspondentes
      Insira a descrição da imagem aqui

Estrutura de modelo de rede recursiva

Insira a descrição da imagem aqui

derrota: Charbonnier

Problema de perda L2:

  • y ^ s \hat{y}_ssim^eé a imagem HR dos níveis previstos pela rede
  • sim, sim_ssimeé a imagem HR do nível s do GT, obtida a partir da imagem original de alta resolução por meio de redução da resolução bicúbica.
  • xs x_sxeé uma imagem ampliada de uma imagem de baixa resolução
  • rs rs_sReé a imagem residual do nível s

O artigo diz que a imagem de alta resolução de saída ideal é modelada por esta fórmula, ys = xs + rs y_s=x_s+r_ssime=xe+Re.Na verdade,
meu entendimento é xs x_sxee rs r_sReEles são todos previstos pela rede. Deve ser a imagem HR do nível s previsto pela rede y ^ s = xs + rs \hat{y}_s=x_s+r_ssim^e=xe+Re
所以perda应该写成:
ζ ( y ^ , y ; θ ) = 1 N ∑ i = 1 N ∑ s = 1 L ρ ( ys ( i ) − y ^ s ( i ) ) = 1 N ∑ i = 1 N ∑ s = 1 L ρ ( ys ( i ) − ( xs ( i ) + rs ( i ) ) ) \zeta(\hat{y},y;\theta)=\frac{1}{N}\sum_{i =1}^{N}\sum_{s=1}^{L}\rho(y_s^{(i)}-\hat{y}_s^{(i)})=\frac{1}{N }\sum_{i=1}^{N}\sum_{s=1}^{L}\rho(y_s^{(i)}-(x_s^{(i)}+r_s^{(i)} ))g (sim^,você ;eu )=N1eu = 1Ns = 1eup ( sé( eu )-sim^é( eu ))=N1eu = 1Ns = 1eup ( sé( eu )-( xé( eu )+Ré( eu )))
ρ(x)=sqrt(x22) é a função de penalidade de Charbonnier (uma variante da norma L1), N é o número de cada lote e L é o número de níveis da pirâmide. Sob esta função de perda, a saída de cada nível da pirâmide estará próxima do HR em uma determinada escala, de modo que a super-resolução 2x, 4x e 8x pode ser alcançada ao mesmo tempo.

A perda de Charbonnier (também conhecida como perda L1-Charbonnier ou perda de Huber) é uma função de perda usada na reconstrução computacional de imagens ou em tarefas de geração de imagens. Foi proposto por Charbonnier em 1989 para resolver problemas de suavização e ruído no processamento de imagens.
A perda de Charbonnier é usada principalmente para substituir a perda L2 tradicional (perda de diferença quadrada), porque a perda L2 é mais sensível a outliers (outliers), porque o quadrado amplificará o erro e é fácil fazer com que o modelo suavize demais o ruído ou detalhes . Em contraste, a perda de Charbonnier tem uma resposta relativamente pequena a valores discrepantes e pode reter melhor informações detalhadas.
A fórmula de cálculo da perda de Charbonnier é a seguinte:
L Charbonnier ( x , y ) = ( x − y ) 2 + ϵ 2 L_{\text{Charbonnier}}(x, y) = \sqrt{(x - y)^ 2 + \épsilon^2}euCharbonnier( x ,você )=( x-você )2+ϵ2
Entre eles, xxx é a saída gerada pelo modelo,yyy é o valor alvo real,ϵ \epsilonϵ é um pequeno número positivo (geralmente assume um valor menor, como1 0 − 3 10^{-3}1 03 ou1 0 − 6 10^{-6}1 06 ), usado para evitar a divisão por zero.
A perda de Charbonnier calcula a diferença entre o valor previsto e o valor alvo e adiciona um termo quadrado e um termo de suavização, de modo que tenha uma certa tolerância para valores discrepantes, mantendo a suavidade. Ao minimizar a perda de Charbonnier, o modelo pode se adaptar melhor ao ruído, preservar detalhes e gerar imagens mais nítidas e realistas.
Deve-se notar que a perda de Charbonnier é apenas uma escolha de função de perda.De acordo com tarefas e requisitos específicos, outros tipos de funções de perda também podem ser selecionados para otimizar o modelo.

desempenho

Insira a descrição da imagem aqui

experimento de ablação

Insira a descrição da imagem aqui

Pode-se descobrir que a perda Pirâmide e Robusta tem um impacto mais significativo no desempenho, embora o resíduo tenha um impacto menos significativo no desempenho, mas pode fazer a rede convergir mais rapidamente e a perda não irá oscilar.

Se um projeto é útil, não só podemos comparar o desempenho, mas também observar: complexidade, velocidade de convergência, dificuldade de treinamento, jitter de perda, renda adicional, etc.

Artigo de referência

Revisão Clássica: LapSRN
[Super Pontuação] [CVPR2017] LapSRN

Acho que você gosta

Origin blog.csdn.net/weixin_43693967/article/details/132422096
Recomendado
Clasificación