Canny() 함수를 사용하여 영상에서 에지를 검출하는 예제 코드를 코드 9-2에 나타냈습니다. 코드 9-2에 나타난 canny_edge() 함수는 두 가지 임계값 쌍을 이용하여 캐니 에지 검출을 수행하고 그 결과를 각각 화면에 출력합니다. canny_edge() 함수가 정의된 소스 파일은 내려받은 예제 파일 중 ch09/edges 프로젝트에서 확인할 수 있습니다.

    코드 9-2 캐니 에지 검출 예제 [ch09/edges]

    01    void canny_edge()
    02    {
    03        Mat src = imread("lenna.bmp", IMREAD_GRAYSCALE);
    04     
    05        if (src.empty()) {
    06            cerr << "Image load failed!" << endl;
    07            return;
    08        }
    09     
    10        Mat dst1, dst2;
    11        Canny(src, dst1, 50, 100);
    12        Canny(src, dst2, 50, 150);
    13     
    14        imshow("src", src);
    15        imshow("dst1", dst1);
    16        imshow("dst2", dst2);
    17     
    18        waitKey();
    19        destroyAllWindows();
    20    }

     

    11행 낮은 임계값을 50, 높은 임계값을 100으로 설정하여 캐니 에지 검출을 수행하고 그 결과를 dst1에 저장합니다.

    12행 낮은 임계값을 50, 높은 임계값을 150으로 설정하여 캐니 에지 검출을 수행하고 그 결과를 dst2에 저장합니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.