我终于让 JavaCV 与我的网络摄像头一起工作,但我找不到改变抓取图像输出格式的方法。
我的 HP 笔记本电脑中有一个 HP HD (720p) 固定网络摄像头。我得到的唯一分辨率是 640x480。我尝试使用所有可用的 FrameGrabber 子类。
我正在使用这个简单的代码:
import com.googlecode.javacv.CanvasFrame;
import com.googlecode.javacv.FrameGrabber;
import com.googlecode.javacv.cpp.opencv_core.IplImage;
public class Webcam {
public static void main(String[] args) throws Exception {
FrameGrabber grabber = FrameGrabber.createDefault(0);
grabber.start();
IplImage grabbedImage = grabber.grab();
CanvasFrame frame = new CanvasFrame("Some Title", CanvasFrame.getDefaultGamma() / grabber.getGamma());
while (frame.isVisible() && (grabbedImage = grabber.grab()) != null) {
frame.showImage(grabbedImage);
}
frame.dispose();
grabber.stop();
}
}
我是否遗漏了什么,或者是否有其他方法可以使用 JavaCV 从网络摄像头捕获图像?