我希望将Mat保存到std :: vector并在此之后播放视频。
#include "opencv2/opencv.hpp"
using namespace cv;
using namespace std;
int main(int, char**)
{
VideoCapture cap(0);
if (!cap.isOpened())
return -1;
vector<Mat> v;
Mat m;
for (int i = 0; i < 50; ++i)
{
cap >> m;
v.push_back(m);
}
puts("After:\n");
for (auto i = 0; i < v.size(); ++i)
{
imshow("Camera", v[i]);
}
return 0;
}
但没有什么:)打开&#34;相机&#34;窗口和关闭。
答案 0 :(得分:2)
v.push_back(m)
替换为v.push_back(m.clone())
,因为您需要将每个向量条目作为单独的矩阵,现在它们共享相同的数据。imshow()
waitKey(0)
; return 0
来电
醇>