16.6.1 Generalized Hough Transform
1 개요
Generalized Hough Transform 알고리즘은 허프 변환을 통해 사용자가 지정한 도형을 검출하는 알고리즘 입니다.
2 알고리즘 상세 설명
| 알고리즘 동작 결과 | |
|---|---|
대상 이미지 및 검출 도형 |
검사 결과 |
검출된 도형 결과
3 파라미터 설정 및 사용 방법
-
세팅 함수
SetPatternROI- 검출할 도형의 영역을 설정합니다.
SetPixelThreshold- 검출 기준 임계값을 설정합니다.
- 다채널 이미지에 대해서는 Format Converter를 사용하여 1채널 이미지로 변환 후에 논리값 확인이 진행됩니다.
SetAngleTolerance- 검출할 도형의 회전각 범위를 설정합니다. 단위는 Degree 입니다.
SetScaleTolerance- 검출할 도형의 크기 비율 범위를 설정합니다. 단위는 Percent 입니다.
SetConfidence- Confidence 값을 설정합니다. 설정한 Confidence 값 이상의 도형을 검출합니다. 0 ~ 1 사이의 값을 갖습니다.
SetMaxCount- 출력할 객체의 최대 개수를 설정합니다.
-
결과 함수
GetDetectedObjects검출된 도형 결과 값을 얻어오는 함수
4 예제 코드
CGeneralizedHoughTransform generalizedHoughTransform;
CFLImage fliSourceImage;
generalizedHoughTransform.SetSourceImage(fliSourceImage);
CFLCircle<int64_t> flfPatternROI(400, 520, 49, 0, 0, 360, EArcClosingMethod_EachOther);
generalizedHoughTransform.SetPatternROI(&flfPatternROI);
generalizedHoughTransform.SetPixelThreshold(128);
generalizedHoughTransform.SetConfidence(0.6);
generalizedHoughTransform.SetAngleTolerance(45);
generalizedHoughTransform.SetScaleTolerance(10);
generalizedHoughTransform.SetMaxCount(10);
generalizedHoughTransform.Execute();
CFLFigureArray flfaDetectedObjects;
generalizedHoughTransform.GetDetectedObjects(flfaDetectedObjects);
대상 이미지 및 검출 도형
검사 결과