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?

mattdm
fonte
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
Michael Nielsen
fonte
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.

Olin Lathrop
fonte
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.

Francesco
fonte
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

smigol
fonte
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