miniaturadaimagem|Calculando o valor final da cor miniaturadaimagem|Comparação de uma cena renderizada sem (lado esquerdo) e com antisserrilhado por superamostragem aplicado (lado direito). Não aplicar antisserrilhado é análogo a uma interpolação por vizinho mais próximo. A superamostragem ou antiserrilhado por superamostragem, e conhecida em inglês como Supersampling Anti-Aliasing (SSAA) é um método de antiserrilhado espacial, ou seja, um método usado para remover o aliasing (bordas serrilhadas e pixelizadas, coloquialmente conhecidas como "jaggies") de imagens renderizadas em jogos de computador ou outros programas de computador que geram imagens. O aliasing ocorre porque, ao contrário dos objetos do mundo real, que possuem curvas e linhas contínuas e suaves, a tela do computador mostra ao observador um grande número de pequenos quadrados que formam a imagem, os pixels. Eles possuem o mesmo tamanho e cada um possui uma única cor. Uma linha só pode ser representada como um conjunto de pixels e, portanto, aparece irregular, a menos que seja perfeitamente horizontal ou vertical. O objetivo da superamostragem é reduzir esse efeito. As amostras de cor são coletadas em vários instantes dentro de um pixel, e um valor médio de cor é calculado. Isso pode ser conseguido, por exemplo, renderizando a imagem em uma resolução muito maior do que a exibida e, em seguida, reduzindo-a para o tamanho desejado, usando os pixels extras para o cálculo. O resultado é uma imagem com resolução reduzida e transições mais suaves entre as linhas de pixels ao longo das bordas dos objetos. No entanto, cada pixel também pode ser sobreamostrado usando outras estratégias. O número de amostras determina a qualidade do resultado.

Motivação Em imagens 2D, o aliasing se manifesta como um padrão de moiré e com bordas pixelizadas, coloquialmente conhecidas como jaggles. O conhecimento comum em processamento de sinais e imagens sugere que, para eliminar completamente o aliasing, é necessária uma amostragem espacial adequada na taxa de Nyquist (ou superior) após a aplicação de um filtro anti-aliasing 2D. Como essa abordagem exigiria uma Transformada de Fourier direta e inversa, aproximações computacionalmente menos exigentes, como a superamostragem, foram desenvolvidas para evitar mudanças de domínio, permanecendo no domínio espacial ("domínio da imagem").

Método

Custo computacional e superamostragem adaptativa A superamostragem é computacionalmente "cara" porque consome uma grande quantidade de memória da placa de vídeo e largura de banda da mesma, já que o buffer é várias vezes maior. Uma maneira de contornar esse problema é usar uma técnica conhecida como superamostragem adaptativa, onde apenas os pixels nas bordas dos objetos são superamostrados.

Inicialmente, apenas algumas amostras são coletadas em cada pixel. Se esses valores forem muito semelhantes, somente essas amostras são usadas para determinar a cor. Caso contrário, mais amostras são utilizadas. O resultado desse método é que um número maior de amostras é calculado apenas onde necessário, melhorando assim o desempenho e evitando uma sensação de desfoque na imagem.

Padrões de superamostragem Ao coletar amostras dentro de um pixel, as posições das amostras precisam ser determinadas de alguma forma. Embora o número de maneiras de fazer isso seja infinito, existem algumas maneiras que são usadas com maior frequência.

Grade O algoritmo mais simples. O pixel é dividido em vários subpixels e uma amostra é retirada do centro de cada um. É rápido e fácil de implementar. No entanto, devido à natureza regular da amostragem, o aliasing ainda pode ocorrer se um número baixo de subpixels for usado.

Aleatório Também conhecida como amostragem estocástica, evita a regularidade da superamostragem em grade. No entanto, devido à irregularidade do padrão, as amostras acabam sendo desnecessárias em algumas áreas do pixel e insuficientes em outras. Pode gerar artefatos.

Disco de Poisson miniaturadaimagem|Amostras de pontos geradas usando amostragem de disco de Poisson e representação gráfica da distância mínima entre pontos. O algoritmo de amostragem de disco de Poisson posiciona as amostras aleatoriamente, mas verifica se duas delas não estão muito próximas. O resultado final é uma distribuição uniforme, porém aleatória, de amostras. O conjunto de Delone fornece uma descrição matemática de tal amostragem.

Jitter Uma modificação do algoritmo de grade para aproximar o disco de Poisson. Um pixel é dividido em vários subpixels, mas uma amostra não é retirada do centro de cada um, mas de um ponto aleatório dentro do subpixel.

Grade rotacionada É utilizado um layout de grade 2×2, mas o padrão de amostra é rotacionado para evitar o alinhamento das amostras nos eixos horizontal ou vertical, melhorando significativamente a qualidade do antialiasing nos casos mais comuns.

Ver também

Sobreamostragem Antisserrilhamento multiamostra Quincunce Placa gráfica Unidade de processamento gráfico Traçado de raios (gráficos) Framebuffer Motor de jogo DLSS

Ligações externas

Categoria:Processamento de imagem