PCに接続したカメラから動画像を取得する

以下のコードでPCに接続したカメラから動画像を取得することができる

#include <cv.h>
#include <highgui.h>
#include <ctype.h>

int main (int argc, char **argv)
{
  int key;
  CvCapture *capture = NULL;

//(1)カメラ情報の取得
  if( ( capture = cvCreateCameraCapture( 0 ) ) == NULL ) {
    return -1;
  }

//(2)動画像取得
   IplImage *frame = cvQueryFrame (capture);

//(3)取得する動画像のフレームサイズのセット
  cvSetCaptureProperty (capture, CV_CAP_PROP_FRAME_WIDTH, frame->width);
  cvSetCaptureProperty (capture, CV_CAP_PROP_FRAME_HEIGHT, frame->height);

//(4)取得した動画像を表示する為のフレーム生成
  cvNamedWindow ("Capture", CV_WINDOW_AUTOSIZE);

//(5)メインループ
  while (1) {
//(6)動画像の取得、表示
    frame = cvQueryFrame( capture );
    cvShowImage ("Capture", frame);

//(7)キーイベントの登録
    key = cvWaitKey (10);
    if (key == 'q')
      break;
  }

//(8)確保していたメモリの解放
  cvReleaseCapture (&capture);
  cvDestroyWindow ("Capture");

  return 0;
}