java JavaCV画布保持空白
我想经常捕捉一个网络摄像头,让它在画布上观看。图像的保存很好。它每秒拍一张照片。但是画布。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;
}
}
# 1 楼答案
尝试使用此代码捕获网络摄像头。 在运行此代码之前加载库。(JavaCV jar文件等)
}
# 2 楼答案
我自己也有同样的问题。最后用以下代码重写initCanvas方法: