Total Variation Denoising
1 개요
Total Variation Denoising 알고리즘은 이미지에서 주변 픽셀들 간의 변동성을 합하여 총 변동성을 전체적으로 억제하는 알고리즘입니다.
2 알고리즘 상세 설명
- : Noise Image
- : Denoised Image
- : Set of functions with bounded variation over the domain
- : Total variation over the domain
시그널 사이에 분포한 노이즈는 시그널의 변동성을 증폭시킵니다. Total Variation Denoising 은 이러한 변동성 들을 합하여 총 변동성이 작아지는 방향으로 노이즈를 억제시킵니다.
| 입력 이미지 | 결과 이미지 | 확대 이미지 |
|---|---|---|
![]() |
![]() |
![]() |
Fig. Total Variation Denoising 동작 예시
CTotalVariationDenoising totalVariationDenoising;
CFLImage fliSourceImage;
totalVariationDenoising.SetSourceImage(fliSourceImage);
totalVariationDenoising.SetModelType(CTotalVariationDenoising::EModelType_Anisotropic);
totalVariationDenoising.SetLambda(0.1);
totalVariationDenoising.SetIteration(5);
totalVariationDenoising.Execute();
3 파라미터 설정 및 사용 방법
| 멤버함수 | 파라미터 | 설 명 | ||
|---|---|---|---|---|
| SetModelType | EModelType | eModelType | IN | 연산 모델 설정자 |
| GetModelType | EModelType | eModelType | OUT | 연산 모델 접근자 |
EModelType::EModelType_Anisotropic - 비등방성 수식을 이용하여 노이즈를 억제합니다.
EModelType::EModelType_Isotropic - 등방성 수식을 이용하여 노이즈를 억제합니다.
| 멤버함수 | 파라미터 | 설 명 | ||
|---|---|---|---|---|
| SetLambda | double | f64Lambda | IN | Lambda 설정자 |
| GetLambda | double | f64Lambda | OUT | Lambda 접근자 |
는 노이즈 억제 과정 중 총변동성에 어느정도의 가중치를 둘 것인지 결정하는 변수입니다.
f64Lambda - Default Value : 0.1, Recommended Value : 0 ~ 1
| 멤버함수 | 파라미터 | 설 명 | ||
|---|---|---|---|---|
| SetIteration | int64_t | i64Iteration | IN | Iteration 설정자 |
| GetIteration | int64_t | i64Iteration | OUT | Iteration 접근자 |
Iteration 은 노이즈 억제 과정을 몇 번 반복할 것인지 나타내는 변수입니다.
i64Iteration - Default Value : 1, Recommended Value : 1 ~ 5


