按键拍照及退出循环
直接上代码
注意需要包含头文件#include <conio.h>
#include <iostream>
#include <opencv2/opencv.hpp>
#include <conio.h>
using namespace std;
using namespace cv;
int main() {
char name_save[60];
int cap_count = 0;
VideoCapture cap(1);
if (!cap.isOpened()) {
cout << "cap not open!" << endl;
return -1;
}
Mat frame;
char key = 'a';
while (1) {
cap >> frame;
if (_kbhit()) {
key = _getch();
}
if (key == 'c') { //按键“c”拍照
sprintf_s(name_save, "E:\\visualstudio\\VSWorkspace\\measure_distance\\img\\%d.jpg", cap_count);
imwrite(name_save, frame);
cout << name_save << endl;
key = 'a';
cap_count++;
}
if (key == 27) //按下esc退出while循环
{
cout << "按下esc键" << endl;
key = 'a';
break;
}
imshow("读取视频", frame);
waitKey(30);
}
}