ホームページ  >  記事  >  Java  >  JavaのOpenCVを使用してシステムカメラからスナップショットを取得する

JavaのOpenCVを使用してシステムカメラからスナップショットを取得する

王林
王林転載
2023-08-28 11:09:10737ブラウズ

###############導入###

OpenCV (オープンソース コンピューター ビジョン ライブラリ) は、オープンソースのコンピューター ビジョンおよび機械学習ソフトウェア ライブラリです。 2500 を超える最適化アルゴリズムが含まれており、リアルタイム アプリケーションで広く使用されています。 JavaのOpenCVを使用してシステムカメラからスナップショットを取得する

Java は JavaCV ライブラリを通じて OpenCV へのバインディングを提供し、Java 開発者がアプリケーションで OpenCV の機能を活用できるようにします。そのようなアプリケーションの 1 つは、Web カメラから画像をキャプチャすることです。

前提条件

続行するには、次のものが必要です -

OpenCV はシステムにすでにインストールされています。

    JavaCV、Java の OpenCV のラッパー。
  • OpenCV を使用したスナップショットのキャプチャ
  • スナップショットをキャプチャするには、ビデオ キャプチャ デバイスを表す VideoCapture クラスのインスタンスを作成する必要があります。次に、read メソッドを使用してビデオ ソースからフレームをキャプチャできます。

    ###例###
  • 例を見てみましょう -
リーリー

イラスト

上記のコードでは、最初に OpenCV ライブラリをロードします。

次に、デフォルトのカメラ (インデックス 0) の VideoCapture オブジェクトを作成します。複数のカメラがあり、別のカメラを使用したい場合は、VideoCapture オブジェクトを作成するときにそのインデックスを指定できます。

isOpened メソッドを使用して、カメラが正常に開かれたかどうかを確認します。カメラにアクセスできない場合は、エラー メッセージを出力し、メイン メソッドから戻ります。

次に、read メソッドを使用してカメラからフレームをキャプチャし、それを Mat オブジェクトに保存します。 Mat (Matrix の略) は、ピクセル データを保存するために使用される OpenCV の主要な画像構造です。

Imgcodecs クラスの imwrite メソッドを使用して、キャプチャしたフレームを画像として保存し、「snapshot.png」という名前を付けます。

最後に、release メソッドを使用してカメラを解放し、リソースを解放します。

このプログラムを実行すると、Web カメラから 1 つのフレームがキャプチャされ、プロジェクト ディレクトリに「snapshot.png」として保存されます。

###結論は###

OpenCV を使用して Java で Web カメラから画像をキャプチャする単純なプロセスは、顔認識、モーション検出などのより複雑なアプリケーションに多くの機会をもたらします。 Java で OpenCV ライブラリを使用する方法を理解すると、コンピューター ビジョンと画像処理を詳しく調べるための強固な基盤が得られます。

以上がJavaのOpenCVを使用してシステムカメラからスナップショットを取得するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。