WinCNT

Blur 본문

Post Processing : 실시간 이미지 보정

 

Post Processing의 한계

이미지 왜곡은 불가능하다

Warping, Morphy 등

 

Morphy는 캐릭터 표정 변화에 사용하기도 한다

(표정 2개를 만들고 버텍스를 보간)

Blur(혹은 Bokeh)

Bloom 필터를 최초로 잘 만든 사람이 일본인(마사키 카와세)이라

Bokeh라는 용어가 전문 용어로도 사용되고 있다

 

Blur는 이미지를 흐릿하게 번지게 하는 것

가장 유명한 Blur 알고리즘은 Gaussian Blur이다

Gaussian 분포 함수

Gaussian Blur에 사용되는 함수

2차원

Plot[(E^(-(x^2)/2))/(Sqrt[2Pi]),{x,-4,4}]

 

3차원

Plot3D[(E^(-(((x^2)+(y^2))/(2*(1.398)^2))))/(Sqrt[2Pi]*(1.398)^2),{x,-4,4}, {y,-4,4}]

 

위의 식을 Wolfram Alpha에서 치면 그래프가 나온다

https://www.wolframalpha.com/

 

Wolfram|Alpha: Making the world’s knowledge computable

Wolfram|Alpha brings expert-level knowledge and capabilities to the broadest possible range of people—spanning all professions and education levels.

www.wolframalpha.com

다양한 Gaussian 분포 함수

Gaussian 분포 함수는 여러 종류가 있다

어떠한 함수를 쓰느냐에 따라서 가중치가 달라져서 블러도 바뀌게 된다

Gaussian Blur의 원리

천천히 조사해보자...

 

Blur 적용의 팁

축소 버퍼를 사용해라!

Blur를 더 잘 적용하기 위해서는 이미지를 축소 버퍼(가로/2, 세로/2의 버퍼)에 넣어야 한다

 

이미지를 축소할 때는 그다지 차이가 나지 않지만

이미지가 확대할 때는 필터(Linear 필터)가 크게 적용된다

 

즉 작은 버퍼에 이미지를 축소하고,

Blur를 적용하면 나중에 커지면서 필터가 적용되고 Blur가 잘 적용된다

(반면 Blur를 적용한 텍스처를 그대로 원본과 합치면 Blur가 그다지 예쁘게 적용되지 않음)

 

단순히 축소 버퍼의 이미지들을 합치기만 해도 Blur의 효과가 나온다!

(축소된 버퍼를 Upscaling, Upsampling할 때 자동적으로 Linear필터가 적용됨)

샘플링 테크닉

5번의 샘플링으로 20개의 픽셀을 샘플링 할 수 있다!!

Blur 같은 테크니겡서는 매우 유용한 샘플링 기법

Cone Filter

한 픽셀의 주변 픽셀를 읽어 오면 샘플링 되는 횟수가 Gaussian 분포 함수를 띄게 된다

 

SSS

'게임 프로그래밍(학습 내용 정리) > 게임 수학' 카테고리의 다른 글

Motion Blur  (0) 2022.06.21
Radial Blur  (0) 2022.06.14
NPR(None Photo Realistic) - Cartoon  (0) 2022.06.07
PBR - 2회차  (0) 2022.06.07
VRAM과 PCI express  (0) 2022.06.07