더북(TheBook)

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    }

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