#include <iostream>
#include <cstdio>
#include <opencv2/opencv.hpp>
#include <unistd.h>
using namespace std;
using namespace cv;
int main()
{
VideoCapture cap; //定义视频对象
cap.open(0); //0为设备的ID号 ,usb摄像头为1(0为默认的,像笔记本本身的就是0。如果只有一个usb,那usb设备号也是0)
Mat frame;
cap.set(CV_CAP_PROP_FRAME_WIDTH, 640);//设置分辨率
cap.set(CV_CAP_PROP_FRAME_HEIGHT, 480);
cap >> frame;
if(frame.data)
{
cout << "!0"<<endl; //拍到了图片
imshow("frame",frame); //窗口名“frame",显示frame
waitKey(3000);//等待按下函数:参数如果写负数或者0。当显示图片后,按下任意键后程序退出。如果参数写为3000就是3秒后程序自动退出
}
//waitKey(30); //0.03s获取一帧,不是很明白,注释掉暂时没发现影响
imwrite("./1.jpg",frame); //保存在当前目录
/*显示出来
int c ;
Mat img1 = imread("2.jpg");
namedWindow("图像显示");
while(1)
{
imshow("图像显示",img1);
c = waitKey(0);
imwrite("33.jpg",img1);
if(c==27 || char(c)=='q' || char(c) == 'Q')
break;
}
*/
return 0;
}
使用opencv设置分辨率并保存在本地
猜你喜欢
转载自blog.csdn.net/yuhuqiao/article/details/84242003
今日推荐
周排行