5

ウェブカメラから高解像度の画像スナップショットをキャプチャする目的で使用できる Java ライブラリを知っている人はいますか?

より正確には: - 利用可能な Web カメラを検出します (ラップトップには内蔵のものと、USB 接続を介して接続された外付けのものがある場合があります) - 使用する Web カメラを選択します。- IMAGE キャプチャで使用可能な解像度を検出します (例: 1.3 Mp センサーを搭載した Web カメラの場合、最大 1280x1024)。通常、ビデオ キャプチャよりもはるかに大きくなります (例: 同じ Web カメラで最大 640x480)。- 使用する解像度を選択します。- 要求に応じて (API 関数を呼び出して)、選択したカメラから選択した解像度でスナップショットをキャプチャします。

私は試しました: - JMF: 最悪、接続された Web カメラの自動検出をサポートしていません。- FMJ: ウェブカメラのサポートに LTI-CIVIL を使用します。- LTI-CIVIL: ビデオ キャプチャのみをサポートします。コードも非常に古いです (私の記憶が正しければ 2007 年)。ウェブカメラ アクセス用に C++ で記述されたネイティブ ライブラリを使用します。Windows 用の DirectX と (明らかに) Linux 用の Video4Linux。しかし、C++ コードを見ると、私の目的ではないビデオ ストリーミングに向けられていることが明らかになります (必要なものの説明に反映されています)。

誰かが私が必要とするプロファイルに適合する Java ライブラリを教えてくれたらありがたいです。

ありがとう。

4

4 に答える 4

2

openCV は、一般的な C++ コンピューター ビジョン ライブラリです。ただし、Java バインディングもあります。 http://code.google.com/p/javacv/

OpenCV を使用すると、画像とビデオの処理、および複数の Web カメラからの画像とビデオのキャプチャにもアクセスできます。

于 2011-07-10T15:56:50.437 に答える
1

次の Java API がその役割を果たします: http://webcam-capture.sarxos.pl/ 次のコードは、写真を撮影し、プロジェクトのワークスペース フォルダーに .png ファイルとして保存します。作成者のウェブサイトで他の例を確認してください。

import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import com.github.sarxos.webcam.Webcam;

public class TakePictureExample {

public static void main(String[] args) throws IOException {

    // get default webcam and open it
    Webcam webcam = Webcam.getDefault();
    webcam.open();

    // get image
    BufferedImage image = webcam.getImage();

    // save image to PNG file
    ImageIO.write(image, "PNG", new File("test.png"));
}
}
于 2016-05-14T20:47:10.477 に答える
0

次のオープン ソース プロジェクトであるwebcamstudio http://code.google.com/p/webcamstudio/は、Java を使用して Webcam をサポートするという優れた成果を上げています。おそらくそこからいくつかのアイデアを得るでしょう。

于 2011-07-10T14:12:08.040 に答える
0

JMyronを使用できます。ライブラリはここにあり、この例でどのように機能するかを確認できます

于 2011-07-10T16:05:32.723 に答える