A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Computação Gráfica: Imagens Prof. Rafael Vieira (Calibre seu monitor!)

Apresentações semelhantes


Apresentação em tema: "Computação Gráfica: Imagens Prof. Rafael Vieira (Calibre seu monitor!)"— Transcrição da apresentação:

1 Computação Gráfica: Imagens Prof. Rafael Vieira (Calibre seu monitor!)
THIS WORK IS LICENSED UNDER THE CREATIVE COMMONS ATTRIBUTION-SHAREALIKE 4.0 INTERNATIONAL LICENSE. TO VIEW A COPY OF THIS LICENSE, VISIT OR SEND A LETTER TO CREATIVE COMMONS, PO BOX 1866, MOUNTAIN VIEW, CA 94042, USA. CREATED BY RAFAEL S. T. VIEIRA

2 Sub-áreas da computação gráfica
Renderização Processamento De Imagens Modelagem Geométrica Dados Imagem Visão Computacional Ao adicionarmos a dimensão do tempo, obtemos as sub-áreas de Animação e Processamento de vídeos.

3 O que é uma imagem? Imagem é uma matriz de valores númericos que discretiza ou quantizifica dados gráficos ou não. Gráfico do crescimento da população mundial Angry Birds Filme2015 Foto de plutão pela NASA

4 O que é uma imagem? Dentro do universo dos 4 universos, uma imagem são dados que descrevem o mundo no universo físico, uma função f no universo matemático, e uma matriz no universo da representação. 𝑓:𝑈⊂ ℝ 2 →𝐶∈ ℝ 𝑛 𝑈= 𝑎,𝑏 𝑥 𝑐,𝑑 = 𝑥,𝑦 ∈ ℝ 2 ;𝑎⩽𝑥⩽𝑏 𝑒 𝑐⩽𝑦⩽𝑑 Cada elemento da matriz, representa um quadrângulo do reticulado, assim como um pixel. C é uma cor, U são dados do espaço plano.

5 Como representar uma imagem?
Se a nossa função f for contínua, os dois métodos mais comuns para representar o pixel no reticulado, é usando um ponto, ou a média dos pontos contidos no pixel. 𝑓:𝑈⊂ ℝ 2 →𝐶∈ ℝ 𝑛 C é uma cor, U são dados do espaço plano.

6 Propriedades de uma imagem
Resolução: é quantidade de pixels na horizontal x quantidade de pixels na vertical (Em dúvida? Olhe seu monitor.) Profundidade ou espaço de cores: quantidade de bits. Imagem: Raio-X Resolução: 150 x 177 Profundidade: 24 bits (sRGB) Tamanho sem compressão: approx. 80 KB (150x177x3) Imagem: Capa variante de Batman 8 Resolução: 200 x 304 Profundidade: 8 bits (escala de cinza) Tamanho sem compressão: approx. 60 KB (200x304) Tipo de compressão (se existe): BMP, TIFF, JPG, PNG, etc Toda imagem precisa ser rasterizada para ser exibida no monitor (printscreen).

7 Como realizar operações com Imagens?
Através da convolução de kernels (matrizes) através da matriz de pixels de uma imagem é possível realizar qualquer operação com imagens. Similar as transformações dos objetos gráficos. Mas o que é uma convolução? Convolução é espelhar uma função por um ou mais eixos de modo que os valores opostos de duas funções sejam multiplicados.

8 Convolução de Kernels Realizar a convolução de Kernels, no caso de imagens, garante que o nosso kernel esteja completamente inserido dentro do espaço geométrico da imagem (desde que ele seja menor ou igual ao tamanho da imagem). 𝐾= 𝑎 𝑏 𝑐 𝑑 𝑒 𝑓 𝑔 ℎ 𝑖 →𝐾′= 𝑔 ℎ 𝑖 𝑑 𝑒 𝑓 𝑎 𝑏 𝑐 →𝐾′′= 𝑖 ℎ 𝑎 𝑓 𝑒 𝑑 𝑐 𝑏 𝑎 𝐾 𝑒𝑠𝑝𝑒𝑙ℎ𝑎𝑑𝑜 = 𝑖 ℎ 𝑎 𝑓 𝑒 𝑑 𝑐 𝑏 𝑎 Se o kernel tem o tamanho da matriz de pixels de uma imagem, o que acontece ao aplicá-lo para todos os pixels sem convolução? Alguns kernels simétricos não precisam de espelhamento, mas NEM TODOS.

9 Exemplos de Kernels (núcleos)
Aplicando um kernel. 𝐾 𝑎 𝑥 = 1 −0.5⩽𝑥⩽ 𝑐.𝑐. 𝐾 𝑏 𝑥 = 1− 𝑥 𝑥 ⩽1 0 𝑐.𝑐. 𝐾 𝑐 𝑥 = 1−2 𝑥 𝑥 ⩽ 𝑥 ⩽1 4−8 𝑥 +5 𝑥 2 − 𝑥 < 𝑥 ⩽2 0 𝑐.𝑐.

10 Criação de um Kernel (Interpolação bilinear; AA)
Caso desejássemos fazer um Kernel baseado na fórmula de interpolação Bilinear. Devemos encontrar uma matriz que representa a fórmula desejada para o tamanho desejado do Kernel (3x3): 𝑀= Queremos que o ponto de maior peso fique no centro do kernel (aonde estará o pixel, então imaginamos que existem outros pontos acima e abaixo da matriz) 𝑀= As funções de criação de um Kernel devem variar conforme os eixos das ordenadas e abicissas.

11 Criação de um Kernel (Interpolação bilinear)
Soma-se todos os valores do Kernel obtido: 𝑁= = 𝑖,𝑗 𝑁 =4 Multiplica-se o kernel pelo inverso do valor obtido pela soma anterior: 𝑁= ∗ →𝐾=

12 Criação de um Kernel (Gaussiano; Blur)
Gráfico da Função tridimensional de Gauss Função tridimensional de Gauss: 𝐺= cos α σ 𝑥 2 + sin α σ 𝑦 2 𝑒 − 𝑥 2 2 σ 𝑥 𝑦 2 2 σ 𝑦 2 Matriz de variação x e y com origem no meio da matriz (Grade ou Reticulado) 𝑀 𝑥,𝑦 = −1,−1 0,−1 1,−1 −1,0 0,0 1,0 −1,1 0,1 1,1 Aplicação de Gauss para criar Kernel 𝑀 𝐺 = = 1 𝑖,𝑗 𝑀 𝐺 𝑀 𝐺 → 𝐾 𝐺 = Note que os valores do somatório de um Kernel é igual a 1.

13 Aplicação de Kernels (Alterar o tamanho de uma imagem)
Quando ampliamos uma imagem pixels ficarão vazios, como podemos preencher os valores dos pixels ausentes? Foto de uvas original (162x179) Foto de uvas ampliada em 100% com pixels pretos (324x358)

14 Aplicação de Kernels (Alterar o tamanho de uma imagem)
Podemos manter os pixels antigos, e usar kernels para preencher os valores intermediários (kernel mais comum, pixel mais próximo ou interpolação). Para dobrar de tamanho (não precisa dividir): 𝐾 𝑝𝑖𝑥𝑒𝑙−𝑝𝑟𝑜𝑥𝑖𝑚𝑜 = Em kernels de ordem par, ou retangulares fixamos um item próximo ao centro. Foto de uvas ampliada em 100% com pixels pretos (324x358) Foto de uvas ampliada em 100% com pixels pretos (324x358) Foto de uvas ampliada em 100% com pixels preenchidos com pixel mais próximo (324x358)

15 Exercícios Exercícios 1, 2, 3 e 4; pp 193-194.
Fundamentos da Computação Gráfica (3° Edição) Autores: Jonas Gomes & Luís Velho. Editora: IMPA. Ano: 2015. ISBN:

16 Fim


Carregar ppt "Computação Gráfica: Imagens Prof. Rafael Vieira (Calibre seu monitor!)"

Apresentações semelhantes


Anúncios Google