Non Maximum Suppression, NMS

1 개요

Non Maximum Suppression 알고리즘을 이용하여 이미지의 윤곽을 찾아내는 알고리즘입니다.

2 알고리즘 상세 설명

Sobel 또는 Prewitt 미분 필터링 후, 활성화된 경계의 방향을 고려하여 국소적인 극대값만을 유지해 이미지의 윤곽을 찾아내는 알고리즘입니다.

Grayscale 옵션을 통해 회색조 방식의 출력 여부를 설정할 수 있습니다.

다른 Edge Detector 알고리즘과 달리 임계값(Threshold) 처리를 수행하지 않으므로, 이진화되지 않은 연속적인 수치가 출력됩니다.

Source Image Destination Image
Source Image Destination Image
Fig. Source and Destination images of Non Maximum Suppression

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

동작을 위한 최소한의 기본 설정 파라미터는 아래와 같습니다.

4 예제 코드

CNonMaximumSuppression nms;

CFLImage fliSourceImage;
CFLImage fliDestinationImage;

nms.SetSourceImage(fliSourceImage);
nms.SetDestinationImage(fliDestinationImage);
nms.SetFilter(CNonMaximumSuppression::EFilter_Sobel);
nms.SetNMSInterpolationMethod(CNonMaximumSuppression::ENMSInterpolationMethod_NearestNeighbor);
nms.SetConflictHandlingMethod(CNonMaximumSuppression::EConflictHandlingMethod_KeepAll);
nms.EnableGrayscale(false);

nms.Execute();
CNonMaximumSuppression nms = new CNonMaximumSuppression();

CFLImage fliSourceImage = new CFLImage();
CFLImage fliDestinationImage = new CFLImage();

nms.SetSourceImage(ref fliSourceImage);
nms.SetDestinationImage(ref fliDestinationImage);
nms.SetFilter(CNonMaximumSuppression.EFilter.Sobel);
nms.SetNMSInterpolationMethod(CNonMaximumSuppression.ENMSInterpolationMethod.NearestNeighbor);
nms.SetConflictHandlingMethod(CNonMaximumSuppression.EConflictHandlingMethod.KeepAll);
nms.EnableGrayscale(false);

nms.Execute();

5 기타 사항

Supported Feature

Supported Format