1
我是OpenCV - Java的初学者,并尝试通过从笔记本电脑中的摄像头捕捉图像来学习基础知识。我在eclipse中运行以下代码,我可以看到相机闪烁一秒钟,表明它确实启动了。但存储的图像是全黑的。OpenCV中的摄像头捕捉的图像是全黑的
import org.opencv.core.*;
import org.opencv.videoio.VideoCapture;
import org.opencv.imgcodecs.*;
public class VideoCap {
public static void main(String[] args){
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
VideoCapture camera = new VideoCapture(0);
if(!camera.isOpened()) {
System.out.println("Erro in opening camera");
}
else {
Mat frame = new Mat();
while(true) {
if(camera.read(frame)) {
System.out.println("Camera obtained");
System.out.println("Captured frame width" + frame.width()
+ " catured frame height " + frame.height());
Imgcodecs.imwrite("cam.jpg", frame);
break;
}
}
}
camera.release();
}
}
控制台没有错误,可能出了什么问题?
是宽度和高度是否正确?你有没有尝试过'Imshow'(在'imwrite'之前),看看那里有什么? –