【问题标题】:Reading Frames of uncompressed yuv video file?读取未压缩的 yuv 视频文件的帧?
【发布时间】:2015-02-24 07:04:25
【问题描述】:

我使用raspberry pi 的相机以yuv 格式录制了一个未压缩/未编码的视频。我想将每一帧读取为图像,并计算视频的总帧数

我找到了这个答案:How to read a frame from YUV file in OpenCV? 但它看起来很旧并且似乎不起作用。

我是否必须先将yuv 视频转换为其他格式才能读取每一帧。我应该怎么做?
OpenCVMatlab 或其他工具哪个更好?

【问题讨论】:

标签: matlab opencv raspberry-pi yuv


【解决方案1】:

我认为 OpenCV 可以从视频文件中读取 YUV 帧,因为底层媒体处理程序层(即 FFmpeg)可以完成这项工作。

此外,OpenCV 还支持YUV and BGRcv::cvtColor()CV_YCrCb2RGBCV_RGBYCrCb 之间的转换。

以下代码是否适用于您的视频?

cv::VideoCapture cap("PATH_TO_YUV");
if (!cap.isOpened())
{
    std::cout << "Failed to open file: " << "PATH_TO_YUV" << std::endl;
    return -1;
}

cv::Mat frame;
while(true)
{
    cap >> frame;

    if (frame.empty())             
        break;

    cv::imshow("YUV frame", frame);
    cv::waitKey(1);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    • 2023-03-24
    • 1970-01-01
    • 2017-03-21
    • 1970-01-01
    • 2011-01-14
    相关资源
    最近更新 更多