231017 Anti-Aliasing

aliceshard·2023년 11월 23일
0
  • 앨리어싱(Aliasing)이 발생하는 이유

    원본 데이터가 High frequency로 표현되는데, 이를 표현할 때 low frequency로 샘플되는 경우. 시간 샘플링이 문제인 경우 Temporal aliasing, 공간 샘플링이 문제인 경우 Spatial aliasing이라고 한다.

  • 선분 안티 앨리어싱

    먼저 선분을 두껍게 만들고, 선을 번지게 만든 다음, 샘플링을 수행한다. 적은 샘플 레이트에서도 쉽게 특징을 잡을 수 있도록 처리하는 것이다.

  • Sol 1: Unweighted Area Sampling

    하나의 픽셀을 선분이 얼마나 커버하는가? 로 동등한 가중치로 샘플링. 간단하고, 납득 가능한 결과물을 보여준다.

  • Sol 2: Weighted Area Sampling

    픽셀 하나에 대해서 원뿔 모양의 가중치를 준다고 가정한다. 살짝 더 비싸지만 더 나은 결과물이 나온다.

  • Sol 3: Super-sampling

    픽셀 하나의 크기를 2x2, 3x3, ... 로 더 늘리고 선분을 그린다. 이후 다시 각 픽셀 내부의 색칠된 점들로 평균을 내어 최종 결과물을 완성시킨다. 구현하긴 쉽지만 비싸다.


    Super-sampling을 어떻게 할 것인가? 도 중요한 토픽이다.
    1) Grid: 간단하지만 여전히 규칙적인 사각형으로 샘플링 하기 때문에(regularity) 앨리어싱이 발생할 수도 있다.
    2) Random: Grid의 규칙성은 피했지만, 샘플점들이 한 구간에 몰릴수도 있다.
    3) Poisson disc: 두 샘플점들끼리 너무 가깝지 않게 조정하지만, 컴퓨팅 자원을 많이 사용한다.
    4) Jittered: 영역을 나눠서 랜덤하게. Poisson disc를 근사하는 방법이지만 여전히 편중이 일어날 가능성이 있다.
    5) Rotated grid: Grid를 살짝 회전 시킨다. 이러면 샘플링 라인이 수직/수평선과 평행해지는 일이 없게 된다. 간단하면서도 효과적인 안티 앨리어싱 방법이다.

profile
안녕하세요.

0개의 댓글