Harmonic Interpolation

1 개요

Harmonic Interpolation 알고리즘은 손상된 데이터를 유효한 주변 값을 통해 보정하여 보정하는 알고리즘입니다.

2 알고리즘 상세 설명

사용자가 입력한 영역에 대해서 주변 픽셀 값을 사용하여 영역에 대해 보정을 진행합니다.

알고리즘 동작 결과
원본원본 이미지 결과결과
Fig. 보정 결과

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

4 예제 코드

// 알고리즘 객체 생성합니다.
CHarmonicInterpolation harmonicInterpolation;

// 이미지를 입력합니다.
CFLImage fliSourceImage;
fliSourceImage.Load(L"C:/Sky_Damaged.flif");
harmonicInterpolation.SetSourceImage(fliSourceImage);

// 보정할 영역을 설정합니다.
CFLRect<int32_t> flfInterpolationROI(164, 234, 339, 390, 0.000000);
harmonicInterpolation.SetInterpolationROI(flfInterpolationROI);

harmonicInterpolation.SetPrecision(0.0001); // 반복 정밀도 값을 설정합니다.
harmonicInterpolation.SetMaxIteration(999); // 최대 반복 횟수를 지정합니다.
harmonicInterpolation.Execute();
// 알고리즘 객체 생성합니다.
CHarmonicInterpolation harmonicInterpolation = new CHarmonicInterpolation();

// 이미지를 입력합니다.
CFLImage fliSourceImage = new CFLImage();
fliSourceImage.Load("C:/Sky_Damaged.flif");
harmonicInterpolation.SetSourceImage(ref fliSourceImage);

// 보정할 영역을 설정합니다.
CFLRect<int> flfInterpolationROI = new CFLRect<int>(164, 234, 339, 390, 0.000000);
harmonicInterpolation.SetInterpolationROI(flfInterpolationROI);

harmonicInterpolation.SetPrecision(0.0001); // 반복 정밀도 값을 설정합니다.
harmonicInterpolation.SetMaxIteration(999); // 최대 반복 횟수를 지정합니다.
harmonicInterpolation.Execute();
# 알고리즘 객체 생성합니다.
harmonicInterpolation = CHarmonicInterpolation()

# 이미지를 입력합니다.
fliSourceImage = CFLImage()
fliSourceImage.Load("C:/Sky_Damaged.flif")
harmonicInterpolation.SetSourceImage(fliSourceImage)

# 보정할 영역을 설정합니다.
flfInterpolationROI = CFLRect[Int32](164, 234, 339, 390, 0.000000)
harmonicInterpolation.SetInterpolationROI(flfInterpolationROI)

harmonicInterpolation.SetPrecision(0.0001) # 반복 정밀도 값을 설정합니다.
harmonicInterpolation.SetMaxIteration(999) # 최대 반복 횟수를 지정합니다.
harmonicInterpolation.Execute()