Corner Gauge

1 개요

설정한 사각형에 대해서 꼭지점을 검출하는 측정 알고리즘입니다.

2 알고리즘 상세 설명

Result Image
Result Image1 Result Image2
Fig. Corner Gauge

측정 사각형을 따라 이미지 변화량이 큰 지점을 검출합니다. 측정할 이미지 변화량을 설정할 수 있으며, 측정 범위 등을 설정하여 동작합니다.
밝기 변화 방향이나 경계점을 선택하는 기준에 따라 측정 결과가 다르게 얻을 수 있습니다.
또한 최소 진폭을 설정하여 이미지에서 노이즈라고 판단되는 범위를 무시할 수 있습니다.
결과는 각 지점들의 위치 값으로 계산하여 각 선을 검출 후 꼭지점을 검출합니다.

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

4 예제 코드

CCornerGauge cornerGauge;
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////

//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////

// 측정할 위치 설정
CFLRect<double> measurementCorner(100., 100., 200., 200.);
cornerGauge.SetMeasurementRegion(measurementCorner, 30);

cornerGauge.Execute();

// 측정 결과 꼭지점
// 순서는 LeftTop, RightTop, RightBottom, LeftBottom
CFLFigureArray resultCorner;
cornerGauge.GetMeasuredObject(resultCorner);
CCornerGauge cornerGauge = new CCornerGauge();
//////////////////////////////////
// 공통 파라미터 설정
//////////////////////////////////

//////////////////////////////////
// 추가 옵션 설정
//////////////////////////////////

// 측정할 위치 설정
CFLRect<double> measurementCorner = new CFLRect<double>(100.0, 100.0, 200.0, 200.0);
cornerGauge.SetMeasurementRegion(measurementCorner, 30);

cornerGauge.Execute();

// 측정 결과 꼭지점
// 순서는 LeftTop, RightTop, RightBottom, LeftBottom
CFLFigureArray resultCorner = new CFLFigureArray();
cornerGauge.GetMeasuredObject(ref resultCorner);
cornerGauge = CCornerGauge()
######################
# 공통 파라미터 설정
######################

######################
# 추가 옵션 설정
######################

# 측정할 위치 설정
measurementCorner = CFLRect[Double](100.0, 100.0, 200.0, 200.0)
cornerGauge.SetMeasurementRegion(measurementCorner, 30)

cornerGauge.Execute()

# 측정 결과 꼭지점
# 순서는 LeftTop, RightTop, RightBottom, LeftBottom
resultCorner = CFLFigureArray()
cornerGauge.GetMeasuredObject(resultCorner)

5 관련 알고리즘

CPointGauge, CLineleGauge, CCircleGauge, CEllipseGauge, CCornerGauge, CCrossGauge