sexta-feira, 16 de setembro de 2016

Introdução ao Processamento Digital de Imagens



O Processamento Digital de Imagens pode ser entendido como um processo de computação onde a entrada e a saída são imagens, se estendendo desde a captura de uma imagem até a sua exibição em um dispositivo de saída. É um assunto extremamente complexo e de natureza inerentemente multidisciplinar, englobando fundamentos e conceitos de diversas áreas do conhecimento, como álgebra, óptica, física do estado sólido, teoria dos grafos, estatística, redes neurais, inteligência artificial, percepção visual, ciência cognitiva e etc.. O objetivo deste texto não é detalhar esse processo, mas sim trazer alguns conceitos fundamentais da construção de imagens, que podem servir como base introdutória para quem está começando a se aventurar com o tema.


Tudo o que enxergamos é luz!

Luz é radiação eletromagnética, e como tal, comporta-se como onda, definida por uma frequência e um comprimento de onda. O sistema visual humano consegue capturar uma minúscula faixa desse espectro (aproximadamente de 400 a 770 nm), a qual denominamos luz visível. Dentro da luz visível, o olho percebe comprimentos de onda distintos como cores distintas.
Espectro eletromagnético, com foco na luz visível

A radiação eletromagnética penetra no olho através de um buraquinho na íris chamado de pupila, passa por uma estrutura translúcida chamada de cristalino, que por ação muscular se deforma para focalizar essa luz, e finalmente atinge uma camada interna posterior chamada de retina, que possui fotossensores conhecidos como cones, que convertem a radiação em sinapses elétricas que são transmitidas para o cérebro interpretar e nos dar essa ilusória sensação de que percebemos tudo o que miramos.

Os principais instrumentos utilizados para capturar imagens a serem processadas por um computador são as câmeras, que funcionam basicamente como imitações do olho humano. O obturador da câmera funciona de forma análoga à íris, controlando a quantidade de luz que entra. Assim como o cristalino, a lente serve para focalizar a luz, dando nitidez às imagens formadas. E o filme ou sensor digital funciona como a retina, ressignificando pura radiação em algo que faça sentido.

Comparativo entre uma câmera fotográfica e o olho humano


Modelos cromáticos

Emissores de luz são percebidos pelo sistema visual a partir da combinação de proporção variável das faixas correspondentes às sensações das cores vermelho, verde e azul, gerando todas as cores percebidas pelo olho humano. Esse processo, denominado aditivo, inspirou a criação do modelo cromático RGB (Red, Green, Blue). Vermelho, verde e azul são consideradas cores primárias nesse modelo. A combinação binária em igual intensidade dessas cores produz ciano, magenta e amarelo, consideradas cores secundárias. E a combinação balanceada entre as três cores gera o branco.
Objetos que não são emissores de luz são vistos a partir da radiação que os mesmos refletem. Objetos de determinada pigmentação refletem uma parte do espectro visível e absorvem a outra. Existe um outro modelo cromático baseado na absorção de luz, o CMY (Cyan, Magenta, Yellow), onde as cores primárias são obtidas a partir da absorção de uma cor principal da luz branca incidente. Ciano é obtido com a absorção do vermelho, magenta com a absorção do verde e amarelo com a absorção do azul. Quando vermelho, verde e azul são absorvidos, temos o preto.
Modelos cromáticos RGB e CMYK

A formação de imagens em dispositivos que emitem luz, como televisores, monitores ou projetores, se dá com um processo que mistura RGB em proporção variada. Já dispositivos de impressão utilizam o modelo CMY. Como a tecnologia empregada nos pigmentos utilizados nos toners e cartuchos não produzem um preto puro, faz-se necessário o acréscimo de um quarto pigmento, formando assim o modelo CMYK (Cyan, Magenta, Yellow, Black).

Existem ainda diversos outros tipos de modelagem digital em função de outros atributos da percepção cromática humana, como por exemplo os focados em saturação, intensidade, matiz e etc..


Modelagem Digital

Uma imagem monocromática (com um único comprimento de onda), é uma função contínua f(x,y), onde x e y são coordenadas de um plano e o valor de f no ponto (x,y) é a intensidade de luz.
Como se sabe, computadores não representam números reais, apenas uma quantidade finita de valores binários, logo, para representar uma imagem digitalmente é preciso discretizar a função. Para isso, cria-se uma matriz finita de pontos. Cada ponto nesta grade bidimensional é chamado de pixel.

Representação de uma imagem digital monocromática

A intensidade de luz de cada pixel pode ser decomposta pelo produto da quantidade de luz emitida no ponto pela quantidade de luz refletida no ponto. Levando assim à equação:

f(x,y) = e(x,y) * r(x,y)

com 0 ≤ e(x,y) < ∞ e 0 ≤ r(x,y) ≤ 1, onde e(x,y) depende da fonte de iluminação e r(x,y) das características da superfície do objeto.

Já uma imagem colorida no modelo RGB pode ser representado como uma terna, onde cada termo é a intensidade de uma das cores. Uma imagem colorida é entendida então como a composição de três imagens monocromáticas:

f(x,y) = fR(x,y) + fG(x,y) + fB(x,y)

onde fR(x,y), fG(x,y) e fB(x,y) são as intensidades de luz dos canais vermelho, verde e azul respectivamente.
Canais monocromáticos de uma imagem e o resultado da sua composição


Amostragem e Quantização

Conforme supracitado, para uma imagem ser computacionalmente representada, faz-se necessária a sua discretização tanto em quantidade de pontos no plano quanto em nível de luminosidade desses pontos. Chamamos de amostragem o processo de discretização dos pontos, e de quantização o processo de discretização da luminosidade. Em geral a amostragem é feita em pontos igualmente espaçados, dispostos em uma matriz M x N, cada ponto quantizado em níveis de intensidade de luz que variam entre {0, 1,  2, …, L-1} sendo L o total de níveis de intensidade, que é usualmente relacionado a potências de 2 (L = 2l).

Naturalmente os processos de amostragem e quantização suprimem informação da imagem real, sendo assim sua qualidade diretamente dependente dos valores de M, N e l. e quanto maiores forem esses valores, maior será o número de bits necessários para representar a imagem. Para uma imagem monocromática de dimensão M x N, o número de bits será dado por:

b = M * N * l
Influência da amostragem e da quantização na qualidade de uma imagem digital:
(Superior Esquerda) 800 x 600 pixels/ 256 níveis de intensidade;
(Superior Direita) 40 x 30 pixels/ 256 níveis de intensidade;
(Inferior Esquerda) 800 x 600 pixels/ 2 níveis de intensidade;
(Inferior Direita) 40 x 30 pixels/ 2 níveis de intensidade.

Para representar uma imagem colorida seguindo o modelo RGB utiliza-se 3 canais de cor, com quantidade de níveis geralmente idêntica. O número de bits necessários para representar a imagem será portanto:

b = M * N * (lR + lG + lB)


Percebam que com l = 8 poderemos representar um total de 28 * 28 * 28 = 256 * 256 * 256 = 16.777.216 cores distintas (o olho humano só consegue perceber cerca de 10.000.000).


Por, Laybson Plismenn - Integrante do PET Computação