我想使用opencv编写一个函数,它读取一个视频文件,抓取单帧并将它们存储在std::vector>中。问题在函数结束时出现,我有向量向量中的图像,但是当发布 VideoCapture 时,所有数据都消失了。
vector<Mat>load_single_video(string path)
{
vector<Mat> one_video_vector;
Mat video_img;
VideoCapture Temp_video_capture(path);
Temp_video_capture.read(video_img);
while (!video_img.empty())
{
one_video_vector.push_back(video_img);
Temp_video_capture.read(video_img);
}
Temp_video_capture.release();
return one_video_vector;
}