Ellipse Gauge
1 개요
설정한 타원에 대해서 이미지 변동값이 큰 지점들로 측정 도형과 유사한 타원을 검출하는 측정 알고리즘입니다.
2 알고리즘 상세 설명
Result Image | |
---|---|
![]() |
![]() |
Fig. Ellipse Gauge
측정 타원을 따라 이미지 변화량이 큰 지점을 검출합니다. 측정할 이미지 변화량을 설정할 수 있으며, 측정 범위 등을 설정하여 동작합니다.밝기 변화 방향이나 경계점을 선택하는 기준에 따라 측정 결과가 다르게 얻을 수 있습니다.
또한 최소 진폭을 설정하여 이미지에서 노이즈라고 판단되는 범위를 무시할 수 있습니다.
결과는 각 지점들의 위치 값으로 계산하여 측정 도형과 유사한 타원을 검출합니다.
3 파라미터 설정 및 사용 방법
- 세팅 함수
SetMeasurementRegion
- 측정할 위치를 설정하는 함수
- 설정 타입
CFLPoint
- 측정 타원의 중심점입니다.
- 측정 범위와 타원의 지름을 설정합니다.
CFLEllipse
- 1개의 Ellipse과 범위를 지정하여 측정 영역을 설정합니다.
- 범위는 측정 타원을 기준으로 내/외부 방향의 범위를 설정하여 탐색합니다.
SetTransitionType
- 밝기 변화 방향을 설정합니다.
SetTransitionChoice
- 측정 기준을 선택합니다.
SetThreshold
- 검출 변화량 임계값을 설정합니다.
SetMinimumAmplitude
- 최소 진폭을 설정합니다.
SetThickness
- 측정 선의 두께를 설정합니다
SetSamplingStep
- 표본 추출단위를 설정합니다.
SetOutliersThreshold
- 이상치 범위 계수를 설정합니다.
SetOutliersThresholdCount
- 이상치 처리 횟수를 설정합니다.
EnableOptimalFitting
- 기본값은
true
이며, 밝기 변화 범위에 해당하는 실제 위치를 추정하여 반환합니다. false
로 설정 시 밝기 변화 시작점을 반환합니다.
- 기본값은
- 결과 함수
GetMeasuredObject
- 측정 결과 Ellipse을 반환합니다.
4 예제 코드
CEllipseGauge ellipseGauge;
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////
//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////
// 측정할 위치 설정
double radius1 = 150;
double radius2 = 200;
double angle = 33;
CFLEllipse<double> measurementEllipse(100., 100., radius1, radius2, angle);
ellipseGauge.SetMeasurementRegion(measurementEllipse, 50);
ellipseGauge.Execute();
// 측정 결과 지점
CFLEllipse<double> resultEllipse;
ellipseGauge.GetMeasuredObject(resultEllipse);
5 관련 알고리즘
CPointGauge
,
CLineGauge
,
CCircleGauge
,
CRectangleGauge
,
CCornerGauge
,
CCrossGauge