[c++] 동영상 파일에서 특정 해상도 설정하기

동영상 파일 열기

동영상 파일을 열어서 프레임을 읽기 위해 OpenCV VideoCapture 클래스를 사용합니다.

#include <iostream>
#include <opencv2/opencv.hpp>

int main() {
    cv::VideoCapture cap("input_video.mp4");
    if (!cap.isOpened()) {
        std::cerr << "동영상 파일을 열 수 없습니다." << std::endl;
        return -1;
    }

    cv::Mat frame;
    cap >> frame;
    // (프레임 처리)

    cap.release();  // 열린 동영상 파일 해제
    return 0;
}

특정 해상도로 설정

동영상의 해상도를 설정하려면 VideoCapture::set 메서드를 사용하여 해상도를 지정해야 합니다.

int width = 640;
int height = 480;
cap.set(cv::CAP_PROP_FRAME_WIDTH, width);
cap.set(cv::CAP_PROP_FRAME_HEIGHT, height);

전체 예제

아래는 동영상을 열고 지정된 해상도로 설정하는 전체 예제입니다.

#include <iostream>
#include <opencv2/opencv.hpp>

int main() {
    cv::VideoCapture cap("input_video.mp4");
    if (!cap.isOpened()) {
        std::cerr << "동영상 파일을 열 수 없습니다." << std::endl;
        return -1;
    }

    int width = 640;
    int height = 480;
    cap.set(cv::CAP_PROP_FRAME_WIDTH, width);
    cap.set(cv::CAP_PROP_FRAME_HEIGHT, height);

    cv::Mat frame;
    while (cap.read(frame)) {
        // (프레임 처리)
        cv::imshow("Video", frame);
        if (cv::waitKey(30) == 27) break;  // ESC 키를 누르면 종료
    }

    cap.release();
    cv::destroyAllWindows();
    return 0;
}

동영상 파일을 열고 특정 해상도로 설정하는 방법에 대해 설명했습니다. 도움이 되셨기를 바랍니다.