在OpenCV中写入和保存图像
我编写了一个程序,从avi格式的电影中捕获一帧,并将其以JPEG格式保存在C:\目录中。当我运行我的程序时,我没有得到任何错误,但是当我转到C:\目录查找JPEG文件时,该文件甚至不在那里。 我做错了什么?我在用avi格式编写视频文件时遇到了同样的问题。我就是在目录里找不到这个文件 这是我的密码在OpenCV中写入和保存图像,opencv,Opencv,我编写了一个程序,从avi格式的电影中捕获一帧,并将其以JPEG格式保存在C:\目录中。当我运行我的程序时,我没有得到任何错误,但是当我转到C:\目录查找JPEG文件时,该文件甚至不在那里。 我做错了什么?我在用avi格式编写视频文件时遇到了同样的问题。我就是在目录里找不到这个文件 这是我的密码 using namespace std; using namespace cv; int main() { VideoCapture cap("C:\\airbus.avi"); ca
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;
}
只需使用imwriteC进行尝试:\\hello.jpg,img,compression\u params;不,还是不行你能加载视频吗?然后尝试保存在当前目录中,如imwritefilename.jpg、img;你确定你真的有图像吗?我相信如果图像检索不起作用,它只会返回Null的等价值,在c中不确定。在保存之前,你能在img上做一个imshow吗?你看到了什么?@Haris是的!成功了。我可以将图像保存在当前目录中。谢谢。我想我发现了问题所在。我真是个傻瓜。我的C:\目录需要管理员的许可才能对其进行更改。我的程序适用于所有其他目录。我只需删除C中的权限:\