2

アプリで Web カメラを取得するために Aforge .NET フレームワークを使用していますが、常にすべて灰色の画像フレームが表示されます。

            this.videoSource = new VideoCaptureDevice(this.Moniker);
            this.videoSource.DesiredFrameSize = GetHighestResolution(this.videoSource.VideoCapabilities);
            this.videoSource.NewFrame += new NewFrameEventHandler(videoSource_NewFrame);
            this.videoSource.Start();

ベント ハンドラー:

    private void videoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
    {
        this.outputBox.Image = (Bitmap)eventArgs.Frame.Clone();
    }

これでうまくいくはずです。DesiredFrameSizeカムがサポートできる最大値に設定されます。

画像が常に灰色である理由はありますか? 書き込むときもディスク...

編集: 追加するには: Aforge samplesのサンプル アプリケーションSimplePlayer でも同じ問題が発生します。私のウェブカメラは Logitech QuickCam Pro 9000 です。

Edit2: 同じことが small にも当てはまりますDesiredFramesizes

4

1 に答える 1

0

おそらく、カメラはdirectshow(ある種のdirectxのもの)にラップされていません。一部のカメラには独自のドライバーが付属しているか、内部の動作が異なります。私はいくつかの高速産業用カメラを持っていますが、同様の問題があります。さまざまな方法を使用してそれらから生の画像を取得し、それらの画像に対してフォージ処理を行う必要がありました。

古い安価なUSB2カメラを使用してコードを確認してください

于 2016-03-10T17:01:10.787 に答える