Hallo,
Ich mache mit folgen Code 2 Bilder mit 2 verschiedenen Webcams.
In einer anderen Klasse rufe ich die Methode "takePicture(int)" in einer Schleife auf.
Das Problem ist, das das aufnehmen dieses beiden Bilder jedes mal 250-270 ms dauert und das einfach zu lang ist.
Gibt es eine Möglichkeit um das etwas zu beschleunigen?
Ich hoffe ihr könnt mir helfen,
MfG $name
Ich mache mit folgen Code 2 Bilder mit 2 verschiedenen Webcams.
Code:
import java.awt.image.BufferedImage;
import com.googlecode.javacv.OpenCVFrameGrabber;
class Cam
{
static BufferedImage img_new = null;
static BufferedImage img_old = null;
static BufferedImage img_aimCam = null;
final static OpenCVFrameGrabber grabber_moveCam = new OpenCVFrameGrabber(1);
final static OpenCVFrameGrabber grabber_aimCam = new OpenCVFrameGrabber(0);
public static void takePicture(int numberFrames) throws Exception
{
if(numberFrames == 0) // (grabber....).start() nur beim ersten Aufruf
{
grabber_aimCam.setImageWidth(640);
grabber_aimCam.setImageHeight(480);
grabber_moveCam.setImageWidth(640);
grabber_moveCam.setImageHeight(480);
//grabber_moveCam.setFrameRate(20); // funktioniert nicht
//grabber_aimCam.setFrameRate(20); // funktioniert nicht
grabber_aimCam.start();
grabber_moveCam.start();
}
img_new = (grabber_moveCam.grab()).getBufferedImage();
img_aimCam = (grabber_aimCam.grab()).getBufferedImage();
}
}
In einer anderen Klasse rufe ich die Methode "takePicture(int)" in einer Schleife auf.
Das Problem ist, das das aufnehmen dieses beiden Bilder jedes mal 250-270 ms dauert und das einfach zu lang ist.
Gibt es eine Möglichkeit um das etwas zu beschleunigen?
Ich hoffe ihr könnt mir helfen,
MfG $name
Zuletzt bearbeitet: