在OpenCV中编写和保存图像

时间:2013-12-20 06:36:35

标签: opencv

我编写了一个程序,用于从avi格式的电影中捕获一个帧,并将其以JPEG格式保存在C:\目录中。我运行程序时没有出现任何错误,但是当我转到C:\目录找到JPEG文件时,文件就不存在了。 我做错了什么?在以avi格式编写视频文件时遇到同样的问题。我只是在目录中找不到该文件。

这是我的代码

using namespace std;
using namespace cv;

int main()
{
    VideoCapture cap("C:\\airbus.avi");
    cap.set(CV_CAP_PROP_POS_FRAMES,200);
    Mat img;
    cap >> img;

    vector<int> compression_params;
    compression_params.push_back(CV_IMWRITE_JPEG_QUALITY);
    compression_params.push_back(100);

    bool bSuccess = imwrite("C:/hello.jpg",img,compression_params);

    if (!bSuccess)
    {
        cout<<"Couldn't save the file"<<endl;
    }
    else
    {
        namedWindow("Open",CV_WINDOW_AUTOSIZE);
        Mat openImage = imread("C:\\hello.jpg",CV_LOAD_IMAGE_UNCHANGED);
        imshow("Open",openImage);
    }

    waitKey(0);
    return 0;
}

0 个答案:

没有答案