使用5或6图像后的Java应用程序从网络摄像头捕获图像

时间:2012-11-06 16:03:35

标签: java image webcam capture

我正在使用java应用程序。在这个应用程序中捕获图像从网络摄像头使用jmf和java捕获4或5图像后,它进入视频模式。我当时无法再次捕获图像显示一些错误“堆内存异常异常错误”请任何人告诉我的想法。感谢先生

1 个答案:

答案 0 :(得分:0)

首先检查您是否在通过dispose()创建的Graphics2D上呼叫BufferedImage.createGraphics(),然后检查您是否在flush()上调用了BufferedImage方法你不想再使用这个图像了。如果这没有帮助,您可以尝试使用现成的解决方案,例如利用这个项目:

https://github.com/sarxos/webcam-capture

代码示例(从网络摄像头拍照并保存在test.png文件中):

Webcam webcam = Webcam.getDefault();
BufferedImage image = webcam.getImage();
ImageIO.write(image, "PNG", new File("test.png"));

使用此库,您不需要处理图形,也不需要在不再使用后刷新缓冲图像 - 底层驱动程序将为您完成。