C++结合OpenCV实现视频播放器

1. 导入OpenCV库和相关头文件。

#include

#include

2. 创建一个窗口,用于显示视频帧。

cv::namedWindow("Video Player", cv::WINDOW_NORMAL);

3. 打开视频文件。

cv::VideoCapture cap("video.mp4"); // 替换为你的视频文件路径

if (!cap.isOpened()) {

    std::cout << "Error opening video file" << std::endl;

    return -1;

}

4. 循环读取视频帧并显示在窗口中。

while (true) {

    cv::Mat frame;

    cap >> frame; // 读取一帧图像

    if (frame.empty()) {

        break; // 如果读取失败,跳出循环

    }

    cv::imshow("Video Player", frame); // 显示图像

    if (cv::waitKey(30) >= 0) { // 等待用户按键,如果按下任意键则退出循环

        break;

    }

}

5. 释放资源并关闭窗口。

cap.release(); // 释放视频文件资源

cv::destroyAllWindows(); // 关闭所有窗口

完整的代码如下所示:

#include

#include

 

int main()

{

    cv::namedWindow("Video Player", cv::WINDOW_NORMAL);

    cv::VideoCapture cap("video.mp4"); // 替换为你的视频文件路径

    if (!cap.isOpened())

{

        std::cout << "Error opening video file" << std::endl;

        return -1;

    }

    while (true) {

        cv::Mat frame;

        cap >> frame; // 读取一帧图像

        if (frame.empty()) {

            break; // 如果读取失败,跳出循环

        }

        cv::imshow("Video Player", frame); // 显示图像

        if (cv::waitKey(30) >= 0) { // 等待用户按键,如果按下任意键则退出循环

            break;

        }

    }

    cap.release(); // 释放视频文件资源

    cv::destroyAllWindows(); // 关闭所有窗口

    return 0;

}

 

你可能感兴趣的:(图像处理,计算机视觉)