int main( int argc, char** argv ) {
//int i=0;
cvNamedWindow( "Example2_9", CV_WINDOW_AUTOSIZE );
CvCapture* capture;
capture = cvCreateCameraCapture(0);
assert( capture != NULL );
IplImage* frame;
//frame = cvQueryFrame( capture ); //先读一次规避掉第一帧
while(1) {
frame = cvQueryFrame( capture );
if( !frame ) break; //如果程序不能读取摄像头,那么将此句删除或加个判断即采用注释掉的i语句又或者在while前读一次
//if( !frame&i>0 ) break;
//if(i>0)
cvShowImage( "Example2_9", frame );
char c = cvWaitKey(10);
if( c == 27 ) break;
//i++;
}
cvReleaseCapture( &capture );
cvDestroyWindow( "Example2_9" );
return 0;
}
//在运行书上第2章练习2运动跟踪时,删掉掉if语句不能运行,加个判断可以OPENCV之运行摄像头程序闪退 备注
最新推荐文章于 2024-07-05 03:19:26 发布
本文提供了一个使用OpenCV进行摄像头捕获的C++示例代码,通过创建窗口并实时显示摄像头画面,同时介绍了如何处理无法读取摄像头的情况。
585

被折叠的 条评论
为什么被折叠?



