Come scattare istantanee singoli da una webcam?
Domanda
Voglio prendere una fotografia con la mia webcam utilizzando Java e salvarlo in un file jpg. Quali sono i passi necessari per farlo? Un tutorial sarebbe molto apprezzato.
Saluti,
Burkhard
Soluzione
JMF (Java Media Framework) è un buon punto di partenza. Tuttavia, non ci sono riuscito con esso.
ho finalmente trovato la soluzione qui .
La parte importante essere:
Buffer buf = frameGrabber.grabFrame();
// Convert frame to an buffered image so it can be processed and saved
Image img = (new BufferToImage((VideoFormat) buf.getFormat()).createImage(buf));
buffImg = new BufferedImage(img.getWidth(this), img.getHeight(this), BufferedImage.TYPE_INT_RGB);
//TODO saving the buffImg
Altri suggerimenti
quello che stai cercando potrebbe essere il Java Media Framework (JMF). Vedere la Sun Tutorial . Mi auguro che aiuta.
Io preferisco utilizzare JMyron invece di JMF. JMyron è facile da usare per l'accesso webcam. Per salvare l'immagine catturata non vi resta che salvare il BufferedImage utilizzando ImageIO.write (); questo post del blog Come usare Webcam Utilizzo di Java è utile per iniziare a utilizzare JMyron.
progetto webcam-capture.
Questo codice prendere una fotografia istantanea da webcam (integrata, collegata alla porta USB o telecamera IP) e salvarlo in un file JPG:
Webcam webcam = Webcam.getDefault();
webcam.open()
BufferedImage image = webcam.getImage();
ImageIO.write(image, "JPG", new File("test.jpg"));