Anti-Aliasing
์ด ๊ธ์ ์ ๋ฆฌ๋ฅผ ์ํด ๊ฐ์ธ์ ์ธ ์ฉ๋๋ก ์์ฑ๋ ํฌ์คํธ์ ๋๋ค. ์ง์ ๊ณผ ์กฐ์ธ์ ์ธ์ ๋ ํ์์ ๋๋ค ใ ใ
Aliasing์ด๋?
Aliasing์ ์ปดํจํฐ ๊ทธ๋ํฝ์์ ๋ฌผ์ฒด์ ๊ฐ์ฅ์๋ฆฌ ๋ถ๋ถ์ด ๋งค๋๋ฝ์ง ์๊ณ ๊ณ๋จ์ฒ๋ผ ๋ณด์ด๋ ํ์์ ๋งํ๋ค.
Aliasing ํ์์ ๊ทธ๋ฆผ์ ๊ฐ์ฅ์๋ฆฌ์์ ๊ฐ์ฅ ์ฌํ๊ฒ ๋ถ๊ฐ๋๋ค.
์ด๋ฐ Aliasing์ ์ฒ๋ฆฌํ๊ธฐ ์ํด Anti-Aliasing ๊ธฐ๋ฒ์ ์ฌ์ฉํ๊ฒ ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก๋ ๊ณ๋จ์ ์ฌ์ด์ฌ์ด ํฝ์ ์ โ๊ทธ๋ฆผ์ ๊ฐ์ฅ์๋ฆฌ ์๊ณผ ๋ฐฐ๊ฒฝ๊ฐ์ ์ค๊ฐ๊ฐโ์ ๋ถ์ฌํ๋ ๋ฐฉ์์ ์ฌ์ฉํ๋ค.
๋ค๋ง, Anti-Aliasing์ ์ ์ฉํ๊ฒ ๋๋ฉด, ๋ชจ์๋ฆฌ๋ ๋งค๋๋ฌ์์ง์ง๋ง, ๊ทธ๋งํผ ์ถ๊ฐ์ ์ธ ์ปดํจํ ์ฐ์ฐ์ ์๊ตฌํ๋ค.
Aliasing์ ์ข๋ formalํ๊ฒ ์ ์ํ ๊ฒ์ ์๋์ ๊ฐ๋ค.
๋์งํธ ์ํ๋ง์์ (์ํ๋ง ์ฃผํ์)๊ฐ (์๋ณธ ์ ํธ์ ์ต๋ ์ฃผํ์)์ 2๋ฐฐ ๋ณด๋ค ๋ฎ์ ๊ฒฝ์ฐ, ์ธ์ ํ ์คํํธ๋ผ์ด ๊ฒน์ณ์ ์ถ๋ ฅ์ด ์๊ณก๋๋ ํ์
โFor a given sampling frequency, the maximum frequency you can accurately represent without aliasing is the Nyquist frequency. The Nyquist frequency equals one-half the sampling frequency, as shown by the following equation.โ
\[f_N = \frac{f_s}{2}\]์ฌ์ค ์ปดํจํฐ ๊ทธ๋ํฝ์ค์์ ๋ฐ์ํ๋ Aliasing์ limited granularity์ ์ํด ๋ฐ์ํ๋ค.
โDigital imprecision generated in the process of converting analog information into digital space is due to the limited granularity of digital numbering space. In computer graphics, aliasing is seen as pixelation.โ
- from Wikipedia
Digital Artifact
โDigital Artifact is any undesired or unintended alteration in data introduced in a digital process.โ
Aliasing๋ฅผ ์ด๋ฐ Artifact์ ์ํ ํ์ ์ค ํ๋๋ก ๊ฐ์ฃผํ๋ค.
Anti-Aliasing
Anti-Aliasing์ ๊ณ๋จํ์์ธ Aliasing์ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด๋ค.
Anti-Aliasing์ ์ ์ฌ์ง์ฒ๋ผ ๊ฐ์ ํ์ผ์ด ์์ ์ด ๋ฐ๋ณต๋๋ ๊ฒ์ ๋ฉ๋ฆฌ์ ๋ฐ๋ผ๋ณผ ๋, ํฐ ํจ๊ณผ๋ฅผ ๋ณผ ์ ์๋ค.
๊ฐ์ฅ ์ผ์ชฝ์ด Anti-Aliasing์ ์ ์ฉํ์ง ์์์ ๋๊ณ , ๊ฐ์ด๋ฐ์ ์ฐ์ธก์ ๊ทธ๋ฆผ์ด Anti-Aliasing์ ์ ์ฉํ ๊ทธ๋ฆผ์ด๋ค.
- ๋๋ฌด์ํค/Anti-Aliasing์์ ๋ ๋ง์ Anti-Aliasing ๊ธฐ๋ฒ๋ค์ ์ดํด๋ณผ ์ ์๋ค.
Anti-Aliasing Filter (AAF)
๊ฒฐ๊ตญ ์ด๋ฏธ์ง ๊ด์ ์์ ๋ฐ์ํ๋ Aliasing ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ค๋ฉด, ์ค๊ฐ๊ฐ์ ์ทจํ๋ ๊ฒ๊ณผ ๊ฐ์ด bluring ์์ ์ด ํ์ํ๋ค.
๊ฐ์ฅ ๊ฐ๋จํ ๋ฐฉ๋ฒ์ผ๋ก๋ ๊ณ๋จ ํ์์ ์ํํ ๋ถ๋ถ์ Gaussian Kernel์ ์ ์ฉํ๋ ๊ฒ์ด๋ค.
Image from here
์ฐธ๊ณ ๋ก 2D Filter๋ ๋ ๊ฐ์ 1D Filter๋ก ๋ถํด ๊ฐ๋ฅํ๋ค.
๊ทธ๋์ (2D Filter๋ฅผ ํ๋ฒ ์ ์ฉ)ํ๋ ๊ฒ๊ณผ (1D Filter๋ฅผ ๋๋ฒ ์ ์ฉ)ํ๋ ๊ฒ์ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฑ๋๋ค.
์ฐธ๊ณ ๋ก Anti-Aliasing Filter(AAF)
๋ Low-pass Filter(LPF)
๋ blur Filter
๋ ๋ชจ๋ ๋์ผํ ๋ง์ด๋ค.
torchvision.transform.GaussianBlue()
code-level์์๋ ์ด๋ฏธ์ง๋ฅผ ์ด๋ป๊ฒ Bluring ํ ์ ์๋์ง ์ดํด๋ณด์.
PyTorch
์์๋ Gaussian Blur๋ฅผ ํ ์ ์๋ transform
์ ์ ๊ณตํ๋ค.
๊ทธ๋์ torch.utils.data.Dataset
์ ์ ์ํ ๋, transform
ํญ๋ชฉ์ ์ธ์๋ก GaussianBlur()
๋ฅผ ๋๊ธธ ์ ์๋ค.
torchvision.transform.GaussianBlur(kernel_size, sigma=(0.1, 2.0))