Gaussian Filter

1 개요

Gaussian Filter 알고리즘은 Gaussian 함수를 사용하여 이미지 Smoothing을 수행하는 알고리즘입니다.

2 알고리즘 상세 설명

G(x,y)=12πσ2ex2+y22σ2G(x,y) = \frac{1}{2 \pi \sigma^{2}} e^{- \frac{x^{2}+y^{2}}{2 \sigma^{2}}}

입력 받은 Kernel 크기에 따라서 σ\sigma 값이 설정되며 크기를 6으로 나눈 값에 가까운 σ\sigma를 설정합니다.

노이즈 이미지 결과 이미지
Noise Image Gauss Filter Result
Fig. Gauss Filter 동작 예시

위의 예시는 1024x1024 사이즈의 노이즈 이미지에 Kernel 크기를 7로 적용한 예시입니다.

CGaussianFilter GaussianFilter;

CFLImage fliSourceImage;
GaussianFilter.SetSourceImage(fliSourceImage);

GaussianFilter.SetKernel(7);

GaussianFilter.Execute();
CGaussianFilter GaussianFilter = new CGaussianFilter();

CFLImage fliSourceImage = new CFLImage();
GaussianFilter.SetSourceImage(ref fliSourceImage);

GaussianFilter.SetKernel(7);

GaussianFilter.Execute();
GaussianFilter = CGaussianFilter()

fliSourceImage = CFLImage()
GaussianFilter.SetSourceImage(fliSourceImage)

GaussianFilter.SetKernel(7)

GaussianFilter.Execute()

3 파라미터 설정 및 사용 방법

멤버함수 파라미터 설 명
SetKernel int64_t i64KernelSize IN Gaussian Kernel의 크기
GetKernel int64_t i64KernelSize OUT Gaussian Kernel의 크기

Gaussian Filter 의 σ\sigmaKernelSize/6Kernel Size / 6와 비슷한 값으로 결정됩니다. 예를 들어 Kernel Size가 6인 경우 σ\sigma의 값은 약 0.5가 됩니다.

i64KernelSize - Default Value : 3, Recommended Value : 3 ~ 9