resize() 함수와 다양한 보간법을 이용하여 영상을 확대하는 예제 코드를 코드 8-4에 나타냈습니다. 코드 8-4에 나타난 affine_scale() 함수는 480×320 크기의 rose.bmp 장미 영상을 다양한 보간법으로 확대하고, 결과 영상의 일부를 화면에 출력합니다. affine_scale() 함수가 정의된 소스 파일과 사용된 영상 파일은 내려받은 예제 파일 중 ch08/affine 프로젝트에서 확인할 수 있습니다.

    코드 8-4 다양한 방법에 의한 영상의 크기 변환 [ch08/affine]

    01    void affine_scale()
    02    {
    03        Mat src = imread("rose.bmp");
    04     
    05        if (src.empty()) {
    06            cerr << "Image load failed!" << endl;
    07            return;
    08        }
    09     
    10        Mat dst1, dst2, dst3, dst4;
    11        resize(src, dst1, Size(), 4, 4, INTER_NEAREST);
    12        resize(src, dst2, Size(1920, 1280));
    13        resize(src, dst3, Size(1920, 1280), 0, 0, INTER_CUBIC);
    14        resize(src, dst4, Size(1920, 1280), 0, 0, INTER_LANCZOS4);
    15     
    16        imshow("src", src);
    17        imshow("dst1", dst1(Rect(400, 500, 400, 400)));
    18        imshow("dst2", dst2(Rect(400, 500, 400, 400)));
    19        imshow("dst3", dst3(Rect(400, 500, 400, 400)));
    20        imshow("dst4", dst4(Rect(400, 500, 400, 400)));
    21     
    22        waitKey();
    23        destroyAllWindows();
    24    }

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