8

C# でオープン CV ウェブカメラ機能を統合するために Emgu ライブラリを使用しています。

このコードを使用して、キャプチャ デバイスを選択し、そのサイズを設定します。

camera = new Capture(0);
camera.SetCaptureProperty(CAP_PROP.CV_CAP_PROP_FRAME_WIDTH, videoSettings.width);
camera.SetCaptureProperty(CAP_PROP.CV_CAP_PROP_FRAME_HEIGHT, videoSettings.height);

次に、次のように imageBox に表示します。imageBox1.Image = camera.QueryFrame();

次に、現在のフレームのスナップショットをキャプチャするために、次のコードを使用します。

Image<Bgr, byte> snapshot = camera.QueryFrame();
snapshot.Save("snapshot.jpg");

スナップショットをプレビュー ウィンドウよりも高い解像度で保存できるようにしたいのですが。

しかし問題は、私が知る限り、同じ Web カメラを使用して新しい「キャプチャ」オブジェクトを作成できないことです。高さと幅を 1028x720に設定camera.setCapturePropertyして、514x360 の解像度で imageBox に表示するために何らかの方法でトリミングすることは可能でしょうか?

または、これを行う他の方法はありますか?

4

2 に答える 2

10

私はこれを使用して解決しました

imageBox1.SizeMode = PictureBoxSizeMode.StretchImage;
于 2012-07-11T08:00:47.500 に答える
2

QueryFrame()のResize()メソッドを使用してこれを解決しました

currentFrame = grabber.QueryFrame().Resize(320, 240, Emgu.CV.CvEnum.INTER.CV_INTER_CUBIC);
于 2013-04-18T14:22:33.977 に答える