Modulation Transfer Function

1 개요

Modulation Transfer Function 알고리즘은 측정 영역에 가장 밝은 부분과 가장 어두운 부분의 차이를 계산하는 알고리즘 입니다.

Modulation=ImaxIminImax+Imin \text{Modulation} = \frac{I_{\text{max}} - I_{\text{min}}}{I_{\text{max}} + I_{\text{min}}}\

max=최대밝기\text{max} = 최대 밝기

min=최소밝기\text{min} = 최소 밝기

2 알고리즘 상세 설명

알고리즘 동작 결과
원본원본 이미지 결과검사 결과
최대 밝기와 최소 밝기 비율을 나타냅니다.

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

4 예제 코드

CModulationTransferFunction modulationTransferFunction; // 알고리즘 객체 생성

CFLImage fliSourceImage; // 이미지 객체 생성
fliSourceImage.Load(L"D:/Image/MTF/ISO12233Crop.flif"); // 이미지 파일 로드
modulationTransferFunction.SetSourceImage(fliSourceImage); // 이미지 설정

CFLRect<double> flfSourceROI(335.248244, 37.425415, 347.388826, 94.561544, 0.000000); // 측정 영역 객체 생성
modulationTransferFunction.SetSourceROI(flfSourceROI); 

modulationTransferFunction.Execute();  // 알고리즘 동작

CFLArray<double> flaResultMTF; // 측정 결과를 받아올 객체 생성

modulationTransferFunction.GetResults(flaResultMTF); // 측정 결과 반환
CModulationTransferFunction modulationTransferFunction = new CModulationTransferFunction(); // 알고리즘 객체 생성

CFLImage fliSourceImage = new CFLImage(); // 이미지 객체 생성
fliSourceImage.Load("D:/Image/MTF/ISO12233Crop.flif"); // 이미지 파일 로드
modulationTransferFunction.SetSourceImage(ref fliSourceImage); // 이미지 설정

CFLRect<double> flfSourceROI = new CFLRect<double>(335.248244, 37.425415, 347.388826, 94.561544, 0.000000); // 측정 영역 객체 생성
modulationTransferFunction.SetSourceROI(flfSourceROI);

modulationTransferFunction.Execute();  // 알고리즘 동작

List<double> flaResultMTF = new List<double>(); // 측정 결과를 받아올 객체 생성

modulationTransferFunction.GetResults(ref flaResultMTF); // 측정 결과 반환
modulationTransferFunction = CModulationTransferFunction() # 알고리즘 객체 생성

fliSourceImage = CFLImage() # 이미지 객체 생성
fliSourceImage.Load("D:/Image/MTF/ISO12233Crop.flif") # 이미지 파일 로드
modulationTransferFunction.SetSourceImage(fliSourceImage) # 이미지 설정

flfSourceROI = CFLRect[Double](335.248244, 37.425415, 347.388826, 94.561544, 0.000000) # 측정 영역 객체 생성
modulationTransferFunction.SetSourceROI(flfSourceROI);

modulationTransferFunction.Execute();  # 알고리즘 동작

flaResultMTF = List[Double]() # 측정 결과를 받아올 객체 생성

modulationTransferFunction.GetResults(flaResultMTF) # 측정 결과 반환