2012-05-03 10 views
0

私はWindowsでOpenCV 2.1とVisual Studio 2008を使用しています。私はCCDカメラからフレームをつかみようとしていて、Windowsで表示したいと思っています。カメラはPAL形式です。カメラは検出していますが、白い灰色の画面が表示されます。opencv - cvCaptureFromCAM(CV_CAP_DSHOW)空白フレームを取得

空白の画面に関連する投稿が多数見つかりましたが、私の場合は誰も仕事がありません。だから投稿私はこの質問を投稿します。

#include "stdafx.h" 
#include "cv.h" 
#include "cxcore.h" 
#include "highgui.h" 
#include <iostream> 

int main(int argc, char* argv[]) 
{ 
    cvNamedWindow("mywindow", CV_WINDOW_AUTOSIZE); 

    CvCapture* capture = cvCaptureFromCAM(CV_CAP_DSHOW); 

    if (!capture) { 
     fprintf(stderr, "ERROR: capture is NULL \n"); 
     getchar(); 
     return -1; 
    } 

    while (1) { 
     IplImage* frame = cvQueryFrame(capture); 

     if (!frame) { 
      fprintf(stderr, "ERROR: frame is null...\n"); 
      getchar(); 
      break; 
     } 
     else 
     { 
      fprintf(stderr, "Size of camera frame %d X %d\n",frame->width,frame->height); 
     } 

     cvShowImage("mywindow", frame); 

     if ((cvWaitKey(10) & 255) == 27) break; 
    } 

    // Release the capture device housekeeping 
    cvReleaseCapture(&capture); 
    cvDestroyWindow("mywindow"); 

    return 0; 
} 

コードリターンフレームサイズ320 X 240が、空白の画面上:

以下は私のコードです。

コードは、私は私のボード上のAVerMediaのゴールドカメラカードを使用していたコードCvCapture* capture = cvCaptureFromCAM(1);

付きのUSBウェブカメラのために正常に動作しています。だから私はこのカメラを使用するSDKが必要ですか、またはCCDカメラを使用する任意のオプションはありますか?

ドライバが正しくインストールされ、EzCaptureVCアプリケーションで確認してください。

答えて

2

OpenCVはあなたのカメラをサポートする必要があります。それ以外の場合、動作する保証はありません:compatibility listを確認してください。

また、2.1は古くなっています。この分野でいくつかの改善がなされているので、2.3.1で再度試してみることをお勧めします。

+0

karlphillipに感謝します。私はカメラの互換性リストをチェックし、私のカメラはそのリストにありません。だから、私はopencv 2.3.1を使用するつもりです。私は私の結果を教えてくれます。しかし前に直面した結果に関するいくつかの情報を追加しましょう。質問で指定された私の現在のコードは、別のカメラキャプチャカードで数日前に正常に動作していました。私は高機能のカメラキャプチャカードを変更し、私はカメラからのフィードを失った。 – user934179

+0

これは問題が** camera&opencv **であり、あなたのコードとopencvではないことを確認します。 – karlphillip

+0

ビデオキャプチャのモード​​を変更しました。私はvideoInputを使用してカメラからキャプチャしようとしていますが、動作しています...しかし、私はvideoInputのビデオサイズを変更できません。それは320X280のデフォルトサイズで表示されていますそして私は640X480サイズでそれが必要です。どのような助け??????? – user934179