Quais são os prós e os contras dos diferentes algoritmos de demosaicing da Bayer?


25

Os sensores Bayer usam um padrão de pixels vermelho, verde e azul e os mesclam em uma imagem colorida final, com um pixel para cada sensor de cor . Isso poderia ser feito através de uma mistura "ingênua" de sensores vizinhos, mas ouvi falar de abordagens mais complicadas com nomes como AHD, HPHD e AMaZE.

Quais são essas outras abordagens e quais vantagens elas trazem? Eles têm pontos fracos além da complexidade da computação?

Imagino que a abordagem usada para o JPEG na câmera seja mais rigorosamente protegida, mas claramente muita pesquisa e desenvolvimento entra nessa área. O poder limitado de processamento disponível na câmera força algum comprometimento nessa área?


Eu poderia estar errado, mas fiquei com a impressão de que a demosaiacing ocorre na câmera, caso contrário, a imagem sofreria um alias. Havia um artigo interessante sobre isso em uma recente fotografia popular falando sobre o Sigma (sensor Foveon X3), que é uma das poucas câmeras que não possuem um sensor bayer.
— Jakub Sisak GeoGraphics

11
Bem, uma rápida investigação indica que o AHD, ou desmossificação direcionada à homogeneidade adaptativa, é o "padrão da indústria" e parece ser usado pelo ACR / LR (pelo menos há algumas versões atrás ... quem sabe se possui introduziu algo mais avançado com o ACR 6.xe LR4.x). Parece um algoritmo ponderado que visa reduzir cores falsas.
— jrista

7
@Jakub: Desmossificação ocorre na câmera para imagens JPEG. O ponto principal de uma imagem RAW é que ela NÃO foi demonstrada ainda e é a gravação "bruta" de dados de pixel diretamente do sensor sem nenhum processamento adicional (fora da amplificação básica para obter o ISO necessário). O filtro de passagem (filtro AA) elimina o aliasing "borrando" fisicamente as frequências espaciais abaixo da taxa nyquist do sensor.
— jrista

Lembre-se de que os filtros de cor "Vermelho", "Verde" e "Azul em nossas matrizes Bayer não são iguais aos emissores Vermelho, Verde e Azul em nossos dispositivos RGB. É lamentável que usemos os mesmos nomes para ambos.
— Michael C

Eles realmente estão perto o suficiente para tratar dessa maneira. Você não terá cores perfeitas, mas está no estádio. Veja a visualização ampliada em petapixel.com/2013/02/12/… por exemplo - visualmente, as cores dos filtros são definitivamente as que os identificamos.
— mattdm 30/07

Respostas:


19

Há alguns meses, fiquei surpreso ao descobrir que minha câmera de visão por computador SDK usava a "interpolação" do vizinho mais próximo em sua função de incorporador. É o tipo mais rápido, mas o pior, fornecendo arestas duras, especialmente quando você começa a fazer cálculos nos canais de imagem para constância de cores ou invariância de brilho. Eu encontrei esta revisão de algoritmos:

http://www.arl.army.mil/arlreports/2010/ARL-TR-5061.pdf

O próximo passo é a interpolação bilinear e bicúbica, que pode ser calculada com bastante rapidez, porque se trata apenas de núcleos de convolução. Eles proporcionam dentes de serra coloridos em bordas inclinadas - bilineares mais que bicúbicas.

Pode ser visto neste artigo, e com dados de qualidade quantificados em 5 algoritmos diferentes:

http://research.microsoft.com/en-us/um/people/lhe/papers/icassp04.demosaicing.pdf

É por isso que eles fizeram interpolações baseadas na direção da borda. No entanto, eles tratam o verde como um "canal importante" (já que ele tem a melhor resolução e é responsável pela maior parte da nossa sensibilidade visual e da resolução dos olhos). E então eles criam azul e vermelho em função do canal verde, preservando a tonalidade. Isso, por sua vez, torna o conteúdo de alta frequência do canal verde mais propenso a erros. A complexidade é maior, pois eles precisam detectar o que está acontecendo e exigir vários passes. Moiré e milho são artefatos comuns desses tipos de interpolação.

Aqui eles mostram exemplos de desmossificação adaptativa da homogeneidade e versões bilineares com e sem addons de preservação de matiz e preservação de borda:

http://math.auburn.edu/~kilgota/ahd_bayer.pdf

Esse artigo favorece o AHD e não mostra a parte negativa. Nesta página, você pode ver os diferentes artefatos de padrão de Desmossificação adaptativa da homogeneidade, agrupamento de pixels padronizados e número variável de gradientes (passe o mouse sobre os nomes):

http://www.ruevski.com/rawhistogram/40D_Demosaicing/40D_DemosaicingArtifacts.html

Em resumo, existem várias suposições empregadas nesses algoritmos, e os artefatos ocorrem quando a suposição não é válida:

  • Suavidade por canal. Se os vizinhos mais próximos não forem os mesmos, faça a transição suave. Artefato: serras / zíperes, suavidade
  • Constância de brilho com bordas direcionadas (direção bilinear). Artefatos: moiré de textura de alta frequência, franjas de cores
  • Constância de matiz. se em uma vizinhança o matiz é o mesmo, então, se um canal muda, os outros devem seguir. Artefatos: zíperes de cores nas bordas das cores
  • A constância pode ser prevista a partir dos verdes. Artefato: labirintos

Pergunta rápida - na última linha, você quer dizer "milho" (tipos de milho?) Ou "labirintos"? Em ambos os casos, eu apreciaria um pouco mais de expansão do que esse tipo de artefato pode ser.
— mattdm

rato em um labirinto.
— Michael Nielsen

Legal :) Acho que sei o artefato a que se refere, mas não tenho muita certeza. É um padrão aleatório em nível de pixel de linhas horizontais e verticais curtas (possivelmente misturadas com ruído), certo? Interessante saber de onde isso vem - na verdade, quase fiz uma pergunta sobre isso outro dia, porque minha suposição era que é um artefato de NR.
— mattdm

são essas linhas sim e vem da maneira como o algoritmo bayer tenta adivinhar os dados.
— 22615 Michael Nielsen

5

Comecei a brincar um pouco com isso e descobri que a abordagem ingênua não é tão ruim assim. Isso é simplesmente tratar cada cor separadamente e interpolar para obter os pixels intermediários. A principal desvantagem disso é que, se você estiver espiando pixels em um local com alto contraste, poderá ver um pouco de cor. Dito de outra forma, se você tiver uma área cinza clara adjacente a uma área preta, verá alguns pixels coloridos no limite. Felizmente, esses valores são médios em geral, mas se a borda é quase vertical ou quase horizontal, eles são médios com baixa frequência. O mesmo efeito pode ser ainda mais óbvio em linhas finas e brilhantes que são quase verticais ou horizontais.

Aqui está um exemplo. Esta foto foi tirada deliberadamente como uma foto de teste:

Observe a aparente faixa da linha de acabamento cromado. Para colocar isso em perspectiva, aqui está o quadro completo:

Pensei em uma abordagem alternativa, mas até agora sempre houve outras coisas a fazer primeiro. Este esquema procuraria encontrar apenas o brilho primeiro. Este seria o único canal de dados da imagem se a imagem fosse em preto e branco. Cada sensel contribui um pouco para isso, embora as cores não contribuam igualmente. Depois que a intensidade é determinada, você interpola as cores como no método ingênuo, mas use o resultado apenas para definir as cores de maneira a preservar a intensidade. A intensidade teria maior largura de banda ou seria mais nítida em termos fotográficos do que as informações de tonalidade. A TV analógica usou esse truque para reduzir os requisitos de largura de banda de uma imagem colorida. Eles se safaram porque o sistema visual humano dá uma importância maior à intensidade do que as cores, principalmente o vermelho.

Enfim, esses são apenas alguns pensamentos. Como eu disse, eu ainda não tentei isso ainda nem trabalhei nos detalhes. Algum dia.


3

Entendo que as diferentes versões de processo no Lightroom (até agora temos 2003, 2010 e 2012) correspondem, entre outras coisas, a diferentes algoritmos de desmosaicing. Outro software interessante é o UFRaw, que oferece o seguinte (citação da página):


Após definir o balanço de branco, o UFRaw interpola o padrão Bayer.

  • A interpolação AHD é a interpolação dirigida à homogeneidade adaptativa. É a interpolação padrão.
  • A interpolação de VNG usa a interpolação de Número variável de gradientes baseada no limite. Essa costumava ser a interpolação padrão e ainda é muito boa .
  • A interpolação de quatro cores do VNG deve ser usada se você encontrar artefatos de padrão Bayer em sua foto (consulte as Perguntas frequentes do DCRaw para obter mais detalhes).
  • Interpolação PPG significa interpolação de agrupamento de pixels padronizados. É quase tão bom quanto o exposto e muito mais rápido.
  • A interpolação bilinear é uma interpolação muito básica, mas é muito mais rápida.

Isso poderia fornecer algum material para experimentar. A propósito, o UFRaw parece ser de código aberto, o que permite que você espreite os algoritmos.


0

Na astrofotografia, este tópico é investigado profundamente, porque ao usar um sensor de cor de uma única foto, há muita perda de resolução por desbaste. Por outro lado, o uso de um arquivo RAW ainda obtém acesso aos dados originais e pode ser processado antes do aplicativo em cores. Este tópico se aproxima do lado do software.

Em resumo, se você tiver acesso a muitas imagens com os mesmos dados de assunto (o que é algo feito para reduzir o ruído do sensor), você pode trocar uma conversão de quadro único com o AHD para uma abordagem de garoa que pode recuperar a resolução perdida. A escolha depende do tipo de dados de origem que você tem disponível. A maioria dos fotógrafos tem apenas uma imagem para usar.

Alguns softwares que usei com opções para processos de Debayering são: Deep Sky Stacker e Pix Insight. Há outros também. Muitos são baseados no DCRAW .

Aqui está o link para o artigo na página do Deep Sky Stacker, onde eles discutem algumas das opções: Opções de debayering


11
Isso é interessante (obrigado!), Mas acho que não responde à pergunta. Esse último elo parece promissor, mas se concentra em alternativas ao desmosaicing. No tópico em questão, diz apenas "Muitos métodos diferentes de interpolação estão disponíveis, produzindo resultados ruins a bons (linear, gradiente ...), mas todos estão degradando a qualidade da imagem final, adivinhando quais devem ser as cores ausentes. " Mas não vai mais longe nos detalhes práticos.
— mattdm
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.