Eu trabalhei com vários algoritmos de interpolação, incluindo interpolações lineares, cúbicas (e bilineares e bicúbicas), outras bezier (e nurbs, etc.), interpolação lagrange e outras, mas não consegui encontrar nenhuma informação básica que explique o que é upsampling bilateral.
Consegui encontrar informações sobre Upsampling Conjunto Bilateral , o melhor que posso dizer interpola vários dados em paralelo, usando dicas de cada um para ajudar o outro a interpolar melhor, mas estou tendo problemas para separar as informações de BU e JBU.
Alguém é capaz de explicar as idéias básicas sobre o que é um upsampling bilateral?
image-processing
interpolation
image
Alan Wolfe
fonte
fonte
Respostas:
Parece que você está perguntando duas coisas. Eu realmente não posso falar tecnicamente sobre JBU, mas posso dar uma visão geral dos conceitos necessários e filtragem bilateral em geral. Você provavelmente precisará encontrar mais detalhes, mas isso deve fornecer uma estrutura coerente para começar.
Corrigindo "Imagem" s
Muitas pessoas que processam imagens veem a filtragem como algo a ser feito como um pós-processo ou como uma maneira de dimensionar imagens. A perspectiva do matemático é mais precisa, descritiva e complexa.
Quando você tem um arquivo de imagem, não tem uma imagem real. Você tem "valores" de pixel, que são estritamente válidos apenas no centro dos pixels. Grosso modo, cada pixel tem uma área que assume essa cor. Matematicamente, o que você está fazendo é usar um filtro de reconstrução do vizinho mais próximo para reconstruir a imagem verdadeira a partir dos valores de pixel. Portanto, uma "imagem" é realmente um conjunto de amostras e um filtro de reconstrução, normalmente o vizinho mais próximo .
Reamostragem
Quando você aprimora uma imagem, o que realmente está fazendo é reamostrar . Como você faz isso? Você pega seu sinal e gera um novo conjunto de amostras a partir dele. Mas para uma imagem, eu apenas disse que não temos a imagem real; nós temos que reconstruí-lo primeiro. Portanto, um procedimento típico de reamostragem se parece com o seguinte:
O ponto principal é que o filtro de reconstrução usado é o "filtro" usado para reamostragem. Por exemplo, uma "amostra superior bicúbica" usaria um filtro de reconstrução bicúbica.
Acontece que se você usar uma função sinc para o filtro de reconstrução e não encolher a imagem, obtém (teoricamente) a mesma imagem de volta. De fato, se você aumentar a escala da imagem e diminuí-la novamente, obterá a mesma resposta. Isso geralmente não é verdade para qualquer outro filtro.
A maioria dos filtros aproxima um filtro sinc em graus mais ou menos. Desvios resultam em perda de imagem.
Filtragem
Se você usar a mesma taxa de amostragem antes / depois, faça algo chamado "filtragem". Formalmente, a filtragem é realizada uma nova amostragem sem uma alteração na taxa de amostragem. A filtragem é um caso especial de reamostragem.
O único objetivo possível de filtrá-lo para descartar informações (por exemplo, um gaussiano) ou possivelmente também distorcer ou adicionar informações falsas (por exemplo, um Sobel).
Filtragem Bilateral
Você pode usar muitos filtros diferentes para filtrar. A filtragem bilateral é um deles. Eu não acredito que seja considerado o estado da arte para qualquer finalidade agora (embora eu não saiba o que é; provavelmente algo novo de aprendizado de máquina que eu espero).
Um filtro bilateral é um filtro não linear, o que significa que ele não possui uma boa representação de Fourier. Conceitualmente, é como um gaussiano, mas as cores de origem também são consideradas a "distância" de um pixel dos outros. Isso tende a suavizar áreas planas enquanto preserva as bordas.
Upscaling bilateral
Até agora, espero que você veja onde estou indo com isso: qualquer filtro que você possa usar para filtragem, você pode usar para aumentar ou diminuir a escala, que são realmente a mesma coisa (porque tudo isso é uma nova amostra).
Se você implementou um filtro bilateral, deve ser capaz de simplesmente implementar um reamostrador de filtro bilateral - assim como, se você implementou um filtro gaussiano, deve ser capaz de implementar um reamostrador de filtro gaussiano.
A única dificuldade pode ser as definições. Infelizmente, a distinção entre filtragem e reamostragem é sistematicamente confusa a uma inexistência ocasional na literatura de processamento de imagens. Para implementar um filtro do tipo bilateral, eu confiaria fortemente em suas semelhanças com a reamostragem gaussiana. A filtragem bilateral do IIRC (não leio o jornal há anos) é apresentada em termos de pixels, não de amostras.
fonte
Provavelmente, isso não explora toda a profundidade do termo, mas a primeira coisa que me vem à cabeça quando ouço "upsampling bilateral" é a mistura consciente de imagens de baixa resolução em imagens de alta resolução; por exemplo, quando você renderiza a geometria combinada alfa em um buffer de meia resolução (para economia de desempenho) e a compõe de volta no principal destino de renderização. Angelo Pesce escreveu um post que explica bem.
fonte