【Java】 javaでusbカメラ、内蔵カメラを操作する

こちらのライブラリがとても便利です。
https://github.com/sarxos/webcam-capture

使い方はこちら
youtube: Java Webcam Capture for Beginners#1 : Introduction and Capture webcam image with 3 lines of code
https://www.youtube.com/watch?v=2BHyL_XK8YQ

本気で三行から始められます。

キャプチャしてファイルに保存するサンプル
https://github.com/sarxos/webcam-capture/blob/master/webcam-capture/src/example/java/TakePictureExample.java

カメラ映像をライブでウインドウに表示するサンプル
https://github.com/sarxos/webcam-capture/blob/master/webcam-capture/src/example/java/WebcamPanelExample.java


おまけ

webcamの解像度を設定したいとき

        Dimension[] nonStandardResolutions = new Dimension[] {
            WebcamResolution.PAL.getSize(),
            WebcamResolution.HD.getSize(),
            new Dimension(720, 480),
            new Dimension(1280, 720),
            new Dimension(1000, 500),
        };

などとしておいて

        webcam.setCustomViewSizes(nonStandardResolutions);
        webcam.setViewSize(new Dimension(1280, 720));

パネルに出るデバグ情報を消す

        WebcamPanel panel = new WebcamPanel(webcam);
        panel.setFPSDisplayed(false);
        panel.setDisplayDebugInfo(false);
        panel.setImageSizeDisplayed(false);
        panel.setMirrored(false);

2つ以上カメラが接続されてる場合、任意のカメラを操作する
webcamnoに1とか2とか入れて

        List<Webcam> webcams = Webcam.getWebcams();
        //Webcam webcam = Webcam.getDefault();
        Webcam webcam = webcams.get(webcamno); 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です