Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Computação Gráfica Aliasing e Anti-aliasing Universidade Federal Rural do Semi-Árido - UFERSA Leandro C. Souza leandro.souza@ufersa.edu.br Introdução Algoritmos de rasterização calculam posições de pixels para representar primitivas gráficas. Pixel é, portanto, um ponto. Não tem dimensão; Não ocupa área; Pode ter coordenadas; É mais do que um ponto, é uma amostra. 2 Introdução Problemas encontrados com os algoritmos de rasterização: O processo de amostragem digitaliza coordenadas dos pontos de um objeto em posições discretas de pixels. Isto resulta em objetos com aparência “serrilhada”, ou “de escadinha.” Esta distorção é causada pela sub-amostragem do objeto (amostragem em baixa frequência) e é chamada de aliasing. 3 Exemplos de Aliasing Efeito serrilhado: 4 Exemplos de Aliasing Perda de geometria dos detalhes: 5 Exemplos de Aliasing Erros de textura: 6 Densidade de Amostragem Com que densidade devemos amostrar uma imagem? Se sub-amostrarmos o sinal, não poderemos reconstruí-lo de maneira fiel. O sinal amostrado de maneira insuficiente será confundido com um sinal mais simples no momento de sua reconstrução. 7 Densidade de Amostragem Sub-amostragem: exemplo 8 Densidade de Amostragem Sub-amostragem: 9 Densidade de Amostragem Sub-amostragem: sinal reconstruído 10 Teorema de Nyquist-Shannon Frequência de amostragem: 11 Teorema de Nyquist-Shannon Amostrando um sinal mais complexo: 12 Teorema de Nyquist-Shannon O sinal do exemplo anterior é composto por senóides com frequências 1Hz, 2Hz e 3Hz. Pelo teorema de Nyquist, devemos amostrar o sinal a pelo menos 2 vezes a maior frequência encontrada. Portanto, a amostragem do sinal do exemplo anterior a uma frequência de 6Hz é suficiente. 13 Teorema de Nyquist-Shannon Amostragem do sinal: 14 Sub-Amostragem e Aliasing Exemplo sem filtragem passa-baixa: Com filtragem passa-baixa: 15 Superamostragem (ou Pós-Filtragem) Método de antialiasing que consiste em aumentar a taxa de amostragem. Considera uma grade mais fina que a grade efetivamente disponível. Computa intensidades em subpixels e combina os resultados para obter a intensidade de um pixel. 16 Superamostragem de Retas Divisão de cada pixel em subpixels. Intensidade do pixel é determinada pela quantidade de subpixels contida na reta. A quantidade de subpixels define os diferentes níveis de intensidade que podem ser atribuídos a um pixel. Por exemplo, 9 subpixels definem 3 níveis; 16 subpixels definem 4 níveis e 25 subpixels definem 5 níveis de intensidade distintos. 17 Superamostragem de Retas Exemplo com três níveis: Pixel (10, 20) é representado com máxima intensidade. Pixels (11, 21) e (12, 21) são representados com a segunda maior intensidade. Pixels (11, 20) e (12, 22) são representados com a menor intensidade. 18 Superamostragem de Retas Uma variação do método: A largura da reta é considerada. Subpixels são considerados dentro da reta se seu canto inferior esquerdo estiver dentro da área definida pela reta. 19 Superamostragem de Retas Levar a largura da reta em consideração apresenta vantagens: O número de níveis de intensidade possíveis para o pixel corresponde ao número total de subpixels encontrados dentro da área definida pela reta. A quantidade de níveis de intensidade para cada pixel é igual ao número de subpixels. Intensidade total da reta é distribuída por mais pixels. No exemplo anterior, o pixel (10, 21) agora é “aceso”, com nível de intensidade 1. 20 Superamostragem de Retas Levar a largura da reta em consideração apresenta vantagens: Em imagens coloridas, podemos estender o método para considerar cores de fundo. Exemplo: se 5 subpixels de um dado pixel estão dentro de uma reta vermelha e os 4 subpixels restantes estão em uma área com cor de fundo azul, a cor do pixel em questão será dada por: pixel.cor = (5*vermelho + 4*azul)/9 21 Superamostragem de Retas Levar a largura da reta em consideração apresenta, também, desvantagens: Determinar os subpixels dentro da reta requer mais cálculos. O posicionamento da reta com relação às suas fronteiras muda de acordo com a sua inclinação. 45: a reta está no centro da área. Reta vertical e horizontal: a reta será uma das fronteiras. Se |m| < 1, a reta é posicionada mais próximo à fronteira mais baixa. Se |m| > 1, a reta é posicionada mais próximo à fronteira mais alta. 22 Máscaras de Subpixels Atribuem pesos aos subpixels. Especificam a importância relativa de cada subpixel. Pós-filtragem calcula a média ponderada dos subpixels para determinar a intensidade do pixel. Podem ser estendidas para incluir a contribuição de pixels vizinhos, de modo que a intensidade de um pixel possa ser considerada sobre os pixels adjacentes. 23 Amostragem de Área para Retas A intensidade do pixel é proporcional à área de sobreposição da reta sobre o pixel. A reta é tratada como um retângulo. A área compreendida entre a reta e os limites da grade determinam um trapezóide. A porção do trapezóide que sobrepõe ao pixel determina a intensidade do mesmo. 24 Amostragem de Área para Retas Exemplo: pixel (10, 20) está aproximadamente 90% coberto pelo trapezóide. Portanto, ele terá intensidade de 90%. Em imagens coloridas, a cor do pixel será determinada como a média das diferentes cores de sobreposição. 25 Pré-Filtragem Determina a intensidade de um pixel calculando-se as áreas de sobreposição de cada pixel com os objetos a serem desenhados. Pixels são tratados como áreas. Áreas de sobreposição são obtidas determinando-se onde as fronteiras dos objetos interceptam as fronteiras de um pixel. 26 Técnicas de Filtragem Similar à aplicação de máscaras de pixels, mas agora imaginamos uma superfície ponderada (ou função de filtragem) cobrindo o pixel. Exemplos: Função retangular Função cônica Função Gaussiana 27 Técnicas de Filtragem Função Gaussiana (usada nos monitores CRT) 28 Antialiasing de Fronteiras de Áreas Pode-se aplicar as mesmas técnicas aplicadas para retas. Alguns métodos aplicam intensidades aos pixels da fronteira de acordo com a porcentagem de suas áreas que se encontram dentro do polígono. 29
Compartilhar