COR DIGITAL - INTRODUÇÃO

Documentos relacionados
TELEVISÃO DIGITAL LEEC 2006/2007

T4.1 Processamento de Imagem

Capítulo III Processamento de Imagem

Televisão Digital. Trabalho prático nº1. Filtragem espacial de imagem fixa e manipulação de histogramas. 2 de Novembro de 2006

Processamento de Imagens COS756 / COC603

2º ANO - FOTOGRAFIA. Rui Gonçalves

T4 Processamento de Imagem

Processamento de imagem a cores

FILTROS ESPACIAIS PASSA-BAIXA

EXTRACÇÃO DE INFORMAÇÃO VÍDEO DO DOMÍNIO COMPRIMIDO MPEG-4 2

Processamento Digital de Imagens

Processamento de Imagens

Processamento de Imagens Coloridas. Prof. Adilson Gonzaga

Capítulo II Imagem Digital

Lição de Processamento Digital de Sinais. Operação de Zooming em Processamento de Imagem. Rui Jesus

Cor SCC0251 Processamento de Imagens

Operações Pontuais. 1 operando. 2 operandos. Processamento e Análise de Imagem - A. J. Padilha - v ac

Processamento digital de imagens

FILTRAGEM DE IMAGEM NO DOMÍNIO ESPACIAL (Operações aritméticas orientadas à vizinhança)

PROCESSAMENTO DIGITAL DE IMAGENS

INTERPOLAÇÃO LINEAR E BILINEAR: APLICAÇÃO EM TRANSFORMAÇÕES GEOMÉTRICAS DE IMAGEM INTRODUÇÃO

INTRODUÇÃO AO PROCESSAMENTO DIGITAL DE IMAGENS SENSORIAMENTO REMOTO

Faculdade de Engenharia da Universidade do Porto. LEEC / MIEEC 5.º Ano - 1.º Semestre Televisão Digital

SEL-0339 Introdução à Visão Computacional. Aula 2 Processamento Espacial (Parte 2)

Introdução ao Processamento de Imagens Digitais Aula 01

PMR2560 Visão Computacional Conversão e Limiarização. Prof. Eduardo L. L. Cabral

UNIVERSIDADE ESTADUAL DO OESTE DO PARANÁ UNIOESTE CAMPUS UNIVERSITÁRIO DE CASCAVEL CURSO DE CIÊNCIA DA COMPUTAÇÃO LISTA DE EXERCÍCIOS

Fundamentos da Computação Gráfica

Detecção de Cortes de Cena

Filtragem. pixel. perfil de linha. Coluna de pixels. Imagem. Linha. Primeiro pixel na linha

Universidade Federal do Rio de Janeiro. Flávio Henrique Schuindt da Silva. Estimativa de Fluxo Ótico com o método de Lukas-Kanade

SEL Visão Computacional. Aula 2 Processamento Espacial

Processamento Digital de Imagens

2º ANO - FOTOGRAFIA. Rui Gonçalves

Os computadores processam dados digitais ou discretos. Os dados são informação representada num sistema digital de símbolos.

Universidade do Estado de Minas Gerais Curso de Sistemas de Informações. Multimídia. A Imagem (Parte I)

Implementação de um Sistema de Fusão de Imagens no Modelo

Computação Gráfica Síntese de Cores

Universidade Federal de Sergipe Departamento de Matemática. Imagem* Profª. Maria Andrade. *Parte desta apresentação foi do Prof. Thales Vieira.

ANÁLISE DE COMPLEXIDADE DOS ALGORITMOS

SEL-0339 Introdução à Visão Computacional. Aula 3 Processamento de Imagens Coloridas

Processamento de Imagens Filtragem Digital

Descritores de Imagens

Fundamentos sobre. Universidade Federal do Rio de Janeiro - IM/DCC & NCE. Antonio G. Thomé Sala AEP/1033. Processamento de Imagens

Filtragem de Imagens Fixas

Processamento digital de. Distorções

TRANSMISSÃO DE DADOS PROTEGIDOS POR CÓDIGOS CORRETORES DE ERRO

PROCESSAMENTO DE IMAGENS

Detecção de faces. Marta Villanueva Torres

Exercícios Práticos HTML5 + CSS3. Profa. Flávia Pereira de Carvalho

2 SIFT (Scale Invariant Feature Transform)

Processamento Digital de Imagens. Cor

Modelo matricial. Modelo matricial. Resolução. Mundo real matriz. Píxel. Tipos de valores e dados. Geralmente cada píxel só tem um valor.

Processamento de Imagens Marcia A. S. Bissaco

Exemplos Práticos HTML5 + CSS3. Profa. Flávia Pereira de Carvalho

RESTAURAÇÃO E RECONSTRUÇÃO DE IMAGENS. Nielsen Castelo Damasceno

Processamento Digital de Imagens

Filtros espaciais. Processamento e Recuperação de Imagens Médicas. Prof. Luiz Otavio Murta Jr. Depto. De Computação e Matemática (FFCLRP/USP)

TE073 PDS II Programa de Pós-Graduação em Engenharia Elétrica

PROCESSAMENTO DE IMAGENS COLORIDAS. Nielsen Castelo Damasceno

Universidade Federal de Alagoas Instituto de Matemática. Imagem. Prof. Thales Vieira

Shading (sombreamento) & Smooth Shading

Algoritmos 3/17/ Algoritmos como área de estudo e investigação

dist:=distance(pos); ou seja, o somatório dos erros mínimos, que advém do cálculo da distância mínima, uma vez, que o erro é função da distância.

PMR2560 ELEMENTOS DE ROBÓTICA 2016 TRABALHO DE VISÃO COMPUTACIONAL CALIBRAÇÃO DE CÂMERAS E VISÃO ESTÉREO

PROCESSAMENTO DE IMAGENS COLORIDAS

Processamento digital de imagens

Processamento de Imagens Coloridas. 35M34 Sala 3D5 Bruno Motta de Carvalho DIMAp Sala 15 Ramal 227

STV 15 SET na figura acima a freqüência das variações do sinal de onda quadrada da câmera mostradas no topo do padrão xadrez é de 0,11 MHz

Processamento de Imagens Digitais

METODOLOGIA PARA A QUANTIZAÇÃO DE CORES PELO MÉTODO SMCb: INTRODUÇÃO E EXEMPLOS DE RESULTADOS

Imagens digitais. Armando J. Pinho. Introdução à Análise e Processamento de Sinal Universidade de Aveiro.

Avaliação da qualidade de imagens 2D reconstruídas a partir de imagens holoscópicas 3D

Filtros de Média Movente

Visão Computacional. Alessandro L. Koerich. Programa de Pós-Graduação em Engenharia Elétrica Universidade Federal do Paraná (UFPR)

Influência do Tamanho do Bloco na DCT

Introdução ao Processamento de Imagens. Profa. Dra. Soraia Raupp Musse Thanks to Prof. Dr. Cláudio Rosito Jung

Transformada de Discreta de Co senos DCT

DOCUMENTO TE CNICO. Hikvision. Tecnologia de Desembaçamento Digital. [Headline] Para liberação [12/01/2012]

Shading (sombreamento) & Smooth Shading

VISÃO COMPUTACIONAL. Marcelo Henrique dos Santos

Aula 3 Processamento Espacial

Processamento de Imagem. Convolução Filtragem no Domínio da Frequência (Fourier) Professora Sheila Cáceres

Módulo 6 Compressão Vídeo Sistemas Multimédia

Interpolação. Fotografia Digital. Prof. Rogério Simões

Compressão de Imagens Usando Wavelets: Uma Solução WEB para a Codificação EZW Utilizando JAVA. Utilizando JAVA. TCC - Monografia

Imagem, Pixels, Modelos de Cor e Operações. Visão Computacional - UFMA

Sistemas de Gestão De Bases de Dados. Criação de Tabelas na vista estrutura. Módulo 2. A Professora: Vanda Pereira

SEL-0339 Introdução à Visão Computacional. Aula 5 Segmentação de Imagens

Processamento Digital de Imagens Aula 04

Tratamento da Imagem Transformações (cont.)

4 Análise de Dados. 4.1.Procedimentos

Filtragem. Processamento digital de imagens. CPGCG/UFPR Prof. Dr. Jorge Centeno

O objetivo deste artigo é mostrar como é possível simular uma imagem 3D no MSX, através da técnica de anaglifo.

Processamento de Imagem. Histograma da Imagem Professora Sheila Cáceres

étodos uméricos INTERPOLAÇÃO, EXTRAPOLAÇÃO, APROXIMAÇÃO E AJUSTE DE FUNÇÕES Prof. Erivelton Geraldo Nepomuceno

PMR2560 Visão Computacional Detecção de cores e blobs. Prof. Eduardo L. L. Cabral

Transcrição:

COR DIGITAL - INTRODUÇÃO O uso de câmaras digitais está hoje em dia ampla e extensamente difundido. A razão desta maciça penetração no mercado e nas nossas vidas, é que se tratam de dispositivos de fácil e imediato manuseamento na obtenção de imagens. A crescente popularidade das câmaras digitais forneceu a motivação para melhorar todos os elementos da cadeia de obtenção de imagem digital em fotografia. Para baixar os preços do equipamento, as câmaras digitais a cores usam tipicamente um único detector de imagem. A obtenção de uma imagem latente em cor (num só disparo ) com um único detector requer o uso de uma disposito de filtros de cor, tipicamente conhecido como Color Filter Array (CFA) Matriz de filtros coloridos, que cubra totalmente o nosso detector. Neste arranjo cada pixel (foto sensor) do detector recebe apenas a intensidade numa das cores, das várias existentes na matriz de filtros. A construção plena de imagens coloridas num detector baseado em CFA, requer um método para calcular os valores de cor existentes nos outros pixéis filtrados por outras componentes do filtro. Estes métodos são geralmente conhecidos como algoritmo de interpolação de cor ou de reconstrução em mosaico de cor. Numa câmara de detector único, as variações de intensidade de luz são medidas numa área rectangular preenchida por micro foto células (pixéis), os nossos sensores CCD ou CMOS. Para construir uma imagem a cores, o CFA deve ser colocado entre a objectiva e o sensor. Um CFA tem tipicamente um filtro de um único elemento de cor, para cada sensor, isto é, cada pixel só regista unicamente uma componente de cor. Obviamente, os algoritmos de interpolação de cor dependem exclusivamente da configuração do CFA, visto que existem dezenas de configurações diferentes disponíveis nos CFA. Um do mais simples e popular, é o padrão de Bayer (introduzido por Bryce E. Bayer da Eastman Kodak, em 1975) que usa as três cores primárias aditivas; vermelho (Red), verde (Green) e azul Blue), o famoso trio RGB, como elementos do filtro (figura 1). Para compararmos vários algoritmos de (re)construção de cor, podemos recorrer unicamente às suas aplicações sobre o original e popular CFA de Bayer. No espaço de cor RGB. Mas tais testes podem ser efectuados sobre outro qualquer CFA. Figura 1 Tradicional matriz CFA de Bayer. C7b-1

ALGUNS CFAs Como já foi referido, existem inúmeras variações à matriz original CFA Bayer ou também conhecida pela sigla CFM de color filter mosaic (mosaico de filtros coloridos). Eis alguns deles, figura 2. Padrão Nome Descrição Tamanho (pixéis) Bayer RGB mais comum. 25% R, 50% G e 25% B 2 2 RGBE CYYM CYGM Modificação do RGB. 25% R, 25% G, 25% B e 25% E (esmeralda) alguns sensores Sony 25% C, 50% Y e 25% M alguns sensores Kodak 25% C, 25% Y, 25% G e 25% M usado em algumas câmaras 2 2 2 2 2 2 RGBW Bayer 25% R, 25% G, 25% B e 25% W 2 2 RGBW #1 12,5% R, 25% G, 12,5% B e 50% W 4 4 RGBW #2 12,5% R, 25% G, 12,5% B e 50% W 4 4 RGBW #3 12,5% R, 25% G, 12,5% B e 50% W 2 4 Figura 2 Descrição de alguns CFAs. O funcionamento de qualquer um destes CFA é análogo. Cada pixel só regista informação num único canal de cor, figura 3. A transmissão de cada filtro tem de ser tida em consideração no cálculo final da cor. Figura 3 Filtragem em cada pixel (CFA Bayer). C7b-2

DESCRIÇÃO DOS ALGORITMOS Nesta secção são descritos alguns dos algoritmos de interpolação de cor vulgarmente usados nas câmaras digitais. Na descrição destes algoritmos, podemos classifica-los em dois grupos distintos; em algoritmos não-adaptáveis e em algoritmos adaptáveis. Como as designações sugerem, os algoritmos não-adaptáveis denotam aqueles algoritmos que executam uma interpolação de um modo padrão fixo, sempre igual para cada pixel (dentro de um grupo). Enquanto os algoritmos adaptáveis implicam que aqueles algoritmos podem detectar as características espaciais que existem na vizinhança local do pixel, fazendo desse modo escolhas eficazes a respeito do modelo de cálculo a usar na mesma. Ou seja, os algoritmos adaptáveis possuem alguma inteligência e consequentemente são em general mais sofisticados. Há múltiplas maneiras de descrever estes algoritmos. A descrição gráfica, a convolução de funções núcleo, as equações aritméticas ou a descrição através de exemplos, são tudo modos úteis de explicar como o algoritmo funciona. Na apresentação de cada algoritmo, foram adoptados estes diversos meios ou suas combinações, para uma descrição mais facilmente compreensível. Como consequência, os diferentes algoritmos podem ser sujeitos a diferentes meios de descrição. Para além dos algoritmos aqui descritos, existem outros, como o método filtro mediano, o método de estimação linear, o método da classificação de padrões e o método baseado no gradiente. Algoritmos: Não-adaptáveis Métodos: 1. Replicação do vizinho mais próximo 2. Interpolação Bilinear 3. Convolução Cúbica 4. Transição suave de matiz 5. Transição logarítmica suave de matiz Adaptáveis Métodos: 1. Detecção de bordo interpolada I 2. Detecção de bordo interpolada II 3. Interpolação com correcção de cor I 4. Interpolação com correcção de cor II 5. Número de Gradientes variáveis 6. Reconhecimento de padrões 7. Acerto interpolado de padrões C7b-3

NÃO-ADAPTÁVEL - REPLICAÇÃO DO VIZINHO MAIS PRÓXIMO Neste método de interpolação, a cada pixel interpolado (output) é atribuído o valor do pixel vizinho mais próximo (input) na imagem inicial (original). O vizinho mais próximo pode ser qualquer um dos pixéis superior, inferior, à esquerda ou à direita. No exemplo ilustrado na figura 4, é escolhido o pixel vizinho à esquerda, para um bloco 3x3 pixéis no plano do filtro verde (G). É assim atribuído aos pixéis que não têm essa componente de cor verde, o valor existente no pixel imediatamente à sua esquerda. a) b) Figura 4 Preenchimento do pixel com informação do seu vizinho à esquerda. a) antes da interpolação, b) após a interpolação. Este processo é repetido para todos os pixeis de uma mesma cor (no exemplo, o G), preenchendo todos os pixeis vizinhos (pertencentes aos outros canais de cor). São depois efectuados os preenchimentos para os canais de cor restantes (R e B), aos quais podemos atribuir, por exemplo, o valor do pixel vizinho inferior esquerdo. A cor em cada pixel é assim uma composição da cor efectivamente observada pelo filtro nativo, com o valor interpolado para esse pixel nos filtros restantes. Por exemplo o pixel 14 é R. A cor neste pixel é composta pelo sinal real do R e pelo valor interpolado do G (valor de G13) e do B (valor de B18). C7b-4

NÃO-ADAPTÁVEL - INTERPOLAÇÃO BILINEAR Neste método a complexidade é acrescida, com mais cálculo envolvido no processo. Figura 5 Tradicional matriz CFA de Bayer. Interpolação do pixel verde G O valor do pixel interpolado será a média aritmética dos valores vizinhos; superior, inferior, esquerdo e direito ao pixel em questão. Por exemplo: G8 = (G3+G7+G9+G13) / 4 Interpolação do pixel vermelho R / azul B Interpolação do pixel vermelho/azul em uma posição verde. - a média de dois valores adjacentes do pixel na cor correspondente é atribuída ao pixel interpolado. Por exemplo: B7 = (B6+B8) / 2 e R7 = (R2+R12) / 2 Interpolação do pixel vermelho/azul em uma posição azul/vermelho. - a média aritmética dos quatro valores diagonais adjacentes do pixel é atribuída ao pixel interpolado. Por exemplo: R8 = (R2+R4+R12+R14) / 4 e B12 = (B6+B8+B16+B18) / 4 C7b-5

NÃO-ADAPTÁVEL - TRANSIÇÃO SUAVE DE MATIZ Uma das objecções graves na aplicação da interpolação bilinear é que as matizes dos pixéis adjacentes mudam abruptamente e duma maneira não natural. Por outro lado, o padrão CFA de Bayer pode ser pensado como consistindo num conjunto de sensores de luminância (os pixéis verdes, relativamente mais numerosos, em 50%) e em sensores cromáticos (os pixéis vermelhos e azuis, em menor número, 25% cada). Um esquema pode ser implementado para interpolar diferentemente estas canais de cor. Figura 6 Tradicional matriz CFA de Bayer. A interpolação dos pixéis verdes G é efectuada da mesma maneira que a interpolação bilinear. Esta interpolação nos pixéis verdes G tem de ser feita antes das interpolações dos pixéis vermelhos R e azuis B. Interpolação do pixel vermelho R / azul B A ideia é tentar introduzir uma variação suave no matiz, de pixel para pixel. Para tal, define-se o valor de matiz azul B, como B/G. Para o vermelho R define-se analogamente ao valor de matiz vermelha R, como R/G. Consideramos a interpolação do valor do pixel azul B: temos três casos diferentes na sua interpolação. - estimar o valor do pixel azul B, numa posição de pixel verde G e os pixéis azuis existem à esquerda e direita. Por exemplo: B7 = G7 (B6 / G6 + B8 / G8) / 2 - estimar o valor do pixel azul B, numa posição de pixel verde G e os pixéis azuis existem acima e abaixo deste. Por exemplo: B13 = G13 (B8 / G8 + B18 / G18) / 2 - estimar o valor do pixel azul B, numa posição de pixel vermelho R. Por exemplo: B12 = G12 (B6 / G6 + B8 / G8 + B16 / G16 + B18 / G18) / 4 A interpolação dos pixéis vermelhos R é efectuada de modo análogo. C7b-6

NÃO-ADAPTÁVEL - TRANSIÇÃO LOGARÍTMICA SUAVE DE MATIZ Mais uma vez, a interpolação dos pixéis verdes G é efectuada da mesma maneira que a interpolação bilinear. Tal como anteriormente, esta interpolação nos pixéis verdes G tem de ser feita antes das interpolações dos pixéis vermelhos R e azuis B. Figura 7 Tradicional matriz CFA de Bayer. Etapa essencial e crucial: depois de efectuadas as interpolações dos pixéis verdes G, transferem-se os valores originais dos pixéis G e dos valores dos pixéis verdes interpolados, do espaço linear da exposição para o espaço logarítmico da exposição. Vamos indicar esses valores logarítmicos como: G log, B log e R log respectivamente. Interpolação do pixel vermelho R / azul B no espaço logarítmico. No espaço logarítmico, define-se o valor de matiz azul B como: B log - G log. Para o vermelho R define-se analogamente ao valor de matiz vermelha R, como R log - G log. Consideramos a interpolação do valor do pixel azul B: temos três casos diferentes na sua interpolação. - estimar o valor do pixel azul B, numa posição de pixel verde G e os pixéis azuis existem à esquerda e direita. Por exemplo: B7 log = G7 log + (B6 log - G6 log + B8 log - G8 log ) / 2 - estimar o valor do pixel azul B, numa posição de pixel verde G e os pixéis azuis existem acima e abaixo deste. Por exemplo: B13 log = G13 log + (B8 log - G8 log + B18 log - G18 log ) / 2 - estimar o valor do pixel azul B, numa posição de pixel vermelho R. Por exemplo: B12 log = G12 log +(B6 log -G6 log +B8 log -G8 log +B16 log -G16 log +B18 log -G18 log)/4 A interpolação dos pixéis vermelhos R é efectuada de modo análogo. Por fim, transferir todos os valores de cada pixel de volta ao espaço linear da exposição. C7b-7

ADAPTÁVEL - DETECÇÃO DE BORDO INTERPOLADA I De descrição de algoritmos não-adaptáveis, pode ver-se que a maioria da interpolação de cor é feita calculando a média de pixéis vizinhos indiscriminadamente. Isto causa artefactos do tipo efeito zipper na imagem interpolada. Para combater este artefacto, é natural tentar derivar um algoritmo que possa detectar as estruturas espaciais locais na vizinhança do pixel e então fazer as escolhas efectivas e eficazes no tipo de interpolação a usar nessa vizinhança. O resultado é uma redução ou uma eliminação dos artefactos de efeito zipper. Algoritmos que envolvem este tipo do processo inteligente de detecção e de decisão, são referidos como algoritmos adaptáveis de interpolação da cor. Os sistemas visuais humanos, o nosso sistema olho-cérebro, é muito sensível na detecção de bordos e interfaces presentes nas imagens e os algoritmos não-adaptáveis de interpolação da cor, falham frequentemente nesses bordos uma vez que não conseguem detectar os bordos. Para tratar dos bordos, vamos primeiro olhar para algoritmos que detectam bordos. Interpolação dos pixéis verdes G: - primeiro, definir dois gradientes, um no sentido horizontal, o outro no sentido vertical, para cada posição azul/vermelha. Por exemplo, consideremos B8: definimos dois gradientes como; H = G7-G9 e V = G3-G13 onde. é o módulo (valor absoluto) - define-se um valor de variação T (threshold) - o algoritmo pode então ser descrito como segue: se H < T e V > T então G8 = (G7+G9) / 2 se H > T e V < T então G8 = (G3+G13) / 2 senão G8 = (G3+G7+G9+G13) / 4 A escolha do valor de T, depende das imagens e pode ter então valores optimizados para diferentes vizinhanças. Uma escolha em particular é a seguinte: T = ( H + V) / 2 Neste caso, o algoritmo anterior reduz-se a: se H < V então G8 = (G7+G9) / 2 se H > V então G8 = (G3+G13) / 2 senão G8 = (G3+G7+G9+G13) / 4 Interpolação dos pixéis vermelhos/azuis: aplica-se o mesmo processo que na transição logarítmica suave de matiz. Outros métodos podem também ser usados. C7b-8

ADAPTÁVEL - DETECÇÃO DE BORDO INTERPOLADA II Uma pequena modificação pode ser aplicada ao método anterior. A interpolação dos pixéis verdes G é a mesma que no algoritmo de detecção de bordo interpolado I, exceptuando que o gradiente horizontal e o gradiente vertical são diferentemente definidos. Vejamos a figura 6 abaixo, para estimar G5 em B5. Os gradientes são definidos como: B3 + B7 H = B5 e 2 V = B1+ B9 B5 2 Figura 8 Esquema de interpolação sobre CFA de Bayer. O algoritmo segue então como no algoritmo de detecção de bordo interpolado I. A interpolação dos pixéis vermelhos/azuis é similar ao algoritmo de interpolação bilinear exceptuando que a diferença de cor é interpolada em vez da cor propriamente dita. ADAPTÁVEL - INTERPOLAÇÃO COM CORRECÇÃO DE COR I (interpolação linear com correcção laplacina de 2ª-ordem I) Este algoritmo é aplicado para desempenho optimizado de imagens com bordos / interfaces horizontais e verticais. ADAPTÁVEL - INTERPOLAÇÃO COM CORRECÇÃO DE COR II (interpolação linear com correcção laplacina de 2ª-ordem II) Este algoritmo é uma extensão do anterior. C7b-9

COMPARAÇÃO DE ALGORITMOS Vamos comparar os diferentes algoritmos de interpolação da cor descritos anteriormente. Podemos faze-lo de variadas formas. 1º - comparação por medidas subjectivas, por identificação e observação visual (figuras 9, 10 e 11). 2º - por medidas objectiva da qualidade, usando o erro quadrático médio (mse) entre a imagem original do teste e a imagem reconstruída. 3º - comparamos o seu custo computacional, o que é vital para a execução na obtenção prática das imagens. Figura 9 Imagem de comparação (flor). Figura 10 Imagem de comparação (viatura). C7b-10

Observações: A Replicação do vizinho mais próximo: erros significativos ocorrem durante todo a imagem, são muito evidentes os efeitos de pixelização, muito mau para interfaces de alto contraste. Inaceitável para sistemas de fotografia (still image). Em aplicações vídeo, muitos destes problemas podem ser apagados por média de imagens. Interpolação Bilinear: muito melhor desempenho que o método anterior. Alguma desfocagem devido ao cálculo da média de pixéis adjacentes. Introduz o efeito zipper. Algoritmos de Transição suave de matiz. Menos desfocagem do que no algoritmo Bilinear. Por outro lado, pode introduzir um erro significativo de interpolação do matiz. Isso é devido à divisão (ou à subtracção no espaço logarítmico) na interpolação dos canais de R/B onde uma grande diferença entre valores de pixéis G adjacentes, causará erros enormes nos pixéis de R/B durante a interpolação. Algoritmos de Detecção de bordo interpolada. Como os seus nomes sugerem, as imagens obtidas exibem efectivamente bordos (interfaces) mais contrastadas. Como a interpolação dos canais R/B é obtida pelo mesmo algoritmo que nos algoritmos de transição suave de matiz, podemos ter o mesmo problema, referido anteriormente. Não muito apropriado para imagens contendo pequenos objectos coloridos. Algoritmos de interpolação linear com correcção laplacina de 2ª-ordem. Um dos algoritmos com melhor qualidade entre todos. Especialmente bom para os bordos e interfaces. Número de Gradientes variáveis. Parece ser o que apresenta o melhor resultado entre todos os algoritmos. Bordos e interfaces bem definidos. Reconhecimento de padrões. Resultados razoavelmente bons. Os bordos não são tão bem definidos como com os algoritmos Número de Gradientes variáveis ou interpolação linear com correcção laplacina de 2ª-ordem. C7b-11

Figura 11 Imagens de comparação (flor e viatura). C7b-12

ERRO QUADRÁTICO MÉDIO Conclui-se, baseado na erro quadrático médio (mse) que: A Replicação do vizinho mais próximo dá o erro médio significativo maior do que todos outros algoritmos e consequentemente a imagem interpolada é a que apresenta mais artefactos e é visivelmente pior. Em termos das interpolações do canal verde G (ou da luminância), o algoritmo de Número de Gradientes variáveis exibe o melhor desempenho. O algoritmo de interpolação linear com correcção laplacina de 2ª-ordem tem também resultados impressionantes. Quanto aos restantes algoritmos, os seus valores de erro mse não mostram nenhuma diferença de maior. Em termos de interpolação dos canais vermelhos/azuis, não há nenhum algoritmo óbvio superior que se possa sobressair. O método do Número de Gradientes variáveis dá resultados ligeiramente melhores. O gráfico da figura 12 ilustra os erros (mse) calculados para cada canal de cor RGB. Figura 12 Comparação dos erros quadráticos médios, para os vários algoritmos. C7b-13

CUSTO COMPUTACIONAL É comparado o custo computacional associado com a cada um destes algoritmos. A maneira de computar os custos residiu na contagem dos flops (usando o software Matlab) ao processar algumas imagens de teste. Para os algoritmos não-adaptáveis, o custo é fixo independentemente do conteúdo da imagem de teste, desde que se fixe o seu tamanho. Quando aos algoritmos adaptáveis, o custo computacional é dependente da cena contida na imagem, pois as decisões de cálculo nestes algoritmos envolvem comparações e tomadas de decisão que podem variar muito. Como o custo computacional é determinado unicamente do ponto de vista do software, está naturalmente relacionado com a sua real implementação e optimização. Um programa mais eficiente reduz sempre o custo. Na comparação, supomos que existe em geral um comportamento e execução médias. A figura 13, retrata essas comparações. Figura 13 Comparação dos custos computacionais, para os vários algoritmos. Observações A Replicação do vizinho mais próximo não envolve nenhuma operação aritmética e consequentemente não impõe nenhum custo computacional. Excluindo este algoritmo, a interpolação Bilinear impõe menos quantidade de computação entre todos os métodos aqui apresentados. O método do Número de Gradientes variáveis tem uma penalização computacional significativa de custo, comparada com os outros, e é muito pouco prático para aplicações vídeo digitais de tempo-real. C7b-14

O algoritmo de interpolação linear com correcção laplacina de 2ª-ordem impõe também um custo computacional grande comparado com os outros algoritmos, mas com muito menos penalização quando comparado com o método do Número de Gradientes variáveis. Os restantes algoritmos têm um comportamento semelhante e um custo computacional similar. Sumário e Conclusões Neste estudo, são descritos e analisados vários algoritmos de interpolação da cor, usados na maior parte das câmaras digitais de sensor único. No detalhe, nota-se que o método de Replicação do vizinho mais próximo e o método do Número de Gradientes variáveis, ocupam posições extremas de algoritmos de interpolação. O método de Replicação do vizinho mais próximo é computacionalmente extremamente eficiente mas exibe o pior desempenho em termos de qualidade final de cor. O método do Número de Gradientes variáveis, produz reproduções de cor de alta qualidade, mas com a penalização de necessitar de uma computação pesada. Não existe nenhum algoritmo que satisfaça plenamente todas as necessidades de criação de imagens coloridas. Cada um tem as suas virtudes e defeitos. Adaptado de: A Study of Spatial Color Interpolation Algorithms for Single-Detector Digital Cameras, Ting Chen, Psych221/EE362 Course Project, 1999 C7b-15