내가 OpenCV의에 아주 간단한 프로그램을 가지고 :OpenCV 프로그램에서 리눅스 시스템을 대기시키는 방법은 무엇입니까?
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
using namespace std;
void showVideo(CvCapture *video)
{
int width = (int) cvGetCaptureProperty(video, CV_CAP_PROP_FRAME_WIDTH);
int height = (int) cvGetCaptureProperty(video, CV_CAP_PROP_FRAME_HEIGHT);
//int fps = (int) cvGetCaptureProperty(video, CV_CAP_PROP_FPS);
IplImage* frame = cvCreateImage(cvSize(width, height), 8, 1);
cvNamedWindow("Showing Video:", 0);
while (true)
{
frame = cvQueryFrame(video);
cvShowImage("Showing Video:", frame);
cvWaitKey(10);
}
//cvDestroyWindow("Showing Video:");
//cvReleaseImage(&frame);
}
int main()
{
CvCapture *video = cvCaptureFromCAM(CV_CAP_ANY);
showVideo(video);
return 0;
}
내가이 while(ch != 'q')
같은 char ch;
무언가를 갖고 싶어은 여전히 비디오를 재생합니다. kbhit()
또는 getch()
과 같은 몇 가지 방법이 있지만 표준이 아니므로 'q'키를 누를 때마다 동영상 표시가 끝나기를 원합니다. 그렇지 않으면 동영상 표시가 계속 실행됩니다.
이 작업을 어떻게 수행합니까?