求助!!为啥按ESC ,C 程序没反应
opencv吧
全部回复
仅看楼主
level 1
谢谢!!在一个,视频一会儿可以读取,一会儿又不行,为啥了??
2017年06月10日 10点06分 1
level 6
程序不放上来谁知道
2017年06月10日 11点06分 2
谢谢!
2017年06月10日 15点06分
level 1
#include<opencv2/opencv.hpp>
using namespace cv;
using namespace std;
int main()
{
CvCapture* capture;
capture = cvCreateCameraCapture(0);
if (capture == 0){
printf("无法捕获摄像头设备!\n\n");
return 0;
}
else{
printf("捕获摄像头设备成功!!\n\n");
}
IplImage* frame;
cvNamedWindow("帧截取窗口", 1);
printf("按“c”键截取当前帧并保存为标定图片...\n按“Esc”键退出截取帧过程...\n\n");
int number_image = 1;
char *str1;
str1 = ".jpg";
char filename[20] = "";
while (true)
{
frame = cvQueryFrame(capture);// 从摄像头或者文件中抓取并返回一帧
if (!frame)
break;
cvShowImage("帧截取窗口", frame); //图像显示
if (cvWaitKey(10) == 'c'){
printf("进入截取程序!!!!!!");
sprintf_s(filename, "%d.jpg", number_image);
cvSaveImage(filename, frame);//保存
cout << "成功获取当前帧,并以文件名" << filename << "保存...\n\n";
printf("按“c”键截取当前帧并保存为标定图片...\n按“Esc”键退出截取帧过程...\n\n");
number_image++;
}
else if (cvWaitKey(10) == 27){
printf("截取图像帧过程完成...\n\n");
cout << "共成功截取" << --number_image << "帧图像!!\n\n";
break;
}
}
cvReleaseImage(&frame); //释放图像
cvDestroyWindow("帧截取窗口");
return 0;
}
2017年06月10日 15点06分 3
求大神帮助!!
2017年06月11日 02点06分
@有昵称就是任性 可以呀,由于是两个按键检测,要轮到检测你按的才会执行相应的动作
2017年06月11日 03点06分
@白芦花 我按了没反应啊!也不退出,也不截图!
2017年06月11日 07点06分
@大蘑菇马里奥 我这里是可以了,多按几下
2017年06月11日 08点06分
1