ウェブカメラを常にキャプチャして、キャンバスに表示したいと考えています。画像の保存は問題ありません。毎秒写真を撮ります。しかし、 canvas.showImage() は機能しません。画面が空白のままです。コンソールには、各フレームで「カメラをクリーンアップしました」と表示されます。
ファーストクラス:
public class StartUp {
public static void main(String[] args) {
CanvasFrame canvas = new CanvasFrame("Cam");
canvas.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
CaptureImage captureimage = new CaptureImage();
while(true){
try {
IplImage img = captureimage.captureFrame();
canvas.showImage(img);
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
セカンドクラス:
public class CaptureImage {
public IplImage captureFrame() {
final OpenCVFrameGrabber grabber = new OpenCVFrameGrabber(0);
try {
grabber.start();
IplImage img = grabber.grab();
if (img != null) {
cvSaveImage("Image.jpg",img);
return img;
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}