Harmonic Mean Filter
1 개요
Harmonic Mean Filter 알고리즘은 조화 평균을 사용하여 Smoothing과 Noise 감소를 수행하는 알고리즘입니다.
2 알고리즘 상세 설명
- : 필터 적용 후 결과 이미지 좌표의 픽셀 값
- : 원본 이미지 좌표의 픽셀 값
- : 좌표를 중심으로 하는 커널 영역
- : 커널 내 픽셀 개수
원본 픽셀을 중심으로 사용자가 설정한 필터 영역의 조화 평균을 계산하여 결과 픽셀 값으로 출력합니다. Harmonic Mean Filter는 낮은 값에 더 가중치를 두므로 Salt & Pepper Noise에서 Salt Noise를 제거하는데 유리합니다.
일반적으로 Arithmetic Mean Filter보다 이미지의 Edge를 보존하며 Smoothing 하는 효과가 있습니다. 필터 크기를 키움에 따라 더 강한 필터 효과를 얻을 수 있지만, Blur 현상이 발생할 수 있습니다. 또한, 양수가 아닌 이상치에 취약합니다.
| 원본 이미지 | 노이즈 이미지 | 결과 이미지 |
|---|---|---|
![]() |
![]() |
![]() |
위의 예시는 원본 이미지에 노이즈를 발생시킨 후, 필터 크기를 7x7으로 적용한 예시입니다.
CFLImage fliSourceImage;
CFLImage fliDestinationImage;
CHarmonicMeanFilter harmonicMeanFilter;
harmonicMeanFilter.SetSourceImage(fliSourceImage);
harmonicMeanFilter.SetDestinationImage(fliDestinationImage);
harmonicMeanFilter.SetKernel(7);
harmonicMeanFilter.SetPaddingMethod(EPaddingMethod_DecreasingKernel);
harmonicMeanFilter.Execute();
3 파라미터 설정 및 사용 방법
| 멤버함수 | 파라미터 | 설 명 | ||
|---|---|---|---|---|
| SetKernel | int64_t | i64KernelSize | IN | 커널 크기 |
i64KernelSize - Default Value : 3, Recommended Value : 3~11
| 멤버함수 | 파라미터 | 설 명 | ||
|---|---|---|---|---|
| SetPaddingMethod | ImageProcessing::EPaddingMethod | ePaddingMethod | IN | 가장자리 패딩 방식 |
Decreasing Kernel 설정 시, 커널 영역이 이미지의 범위를 벗어나는 경우 이미지에 포함되는 커널 영역만을 계산합니다. Interpolation 설정 시, 유효 범위 가장자리 부분의 값을 복사합니다. Constant 설정 시, 스칼라 값을 사용자로부터 입력받아 범위를 벗어나는 영역을 해당 스칼라 값으로 출력합니다.
ePaddingMethod - Default Value : EPaddingMethod_DecreasingKernel, Recommended Value : EPaddingMethod_DecreasingKernel
| 멤버함수 | 파라미터 | 설 명 | ||
|---|---|---|---|---|
| SetPaddingValue | CMultiVar<double> | mvPaddingValue | IN | Padding Method가 Constant인 경우, 패딩 값 |
Padding Method를 Constant로 설정한 경우, 범위를 벗어나는 영역의 값을 사용자가 설정한 스칼라 값으로 출력합니다.


