Java – image size supported by webcam
I am trying to retrieve the available picture size resolution supported by my webcam; Use opencv library I have tried to use similar Android questions / answers, but to no avail (for example, Android camera supported picture sizes) This is my code:
import org.opencv.highgui.VideoCapture;
import org.opencv.core.Size;
public class MyCameraCaptureClass {
public static void main(String[] args) {
System.out.println("Hello,OpenCV");
System.out.println("This program will display the webcam's supported sizes");
System.loadLibrary("opencv_java248"); //load .dll for the jar
VideoCapture vidCap0 = new VideoCapture(0);
if (vidCap0.isOpened()) {
System.out.println("Camera found,and it works so far...");
for (Size aSize : vidCap0.getSupportedPreviewSizes()) {
System.out.println("Doesn't print this at all");
System.out.println("Height:" + aSize.height + "Width:" + aSize.width);
}
}
vidCap0.release();
}
}
Stack traces are:
Exception in thread "main" java.lang.Exception: unkNown exception at org.opencv.highgui.VideoCapture.getSupportedPreviewSizes_0(Native Method) at org.opencv.highgui.VideoCapture.getSupportedPreviewSizes(VideoCapture.java:478) at webcam.MyCameraCaptureClass.main(MyCameraCaptureClass.java:19)
All the help will be sincerely appreciated
Solution
As pointed out in the comments, this is a reported error listed for 2.4 9. Amendments:
> http://code.opencv.org/issues/3387 > http://code.opencv.org/issues/3477
In other words, the project is open source, and view the code that modifies the code, which is a simple fix You can implement this bug fix directly and build it yourself until 2.4.0 9 release The relevant amendments are as follows:
>In videocapture Cpp file: revision 5f88e2b4
Line 332 - > 335:
Replacement:
return env->NewStringUTF(u.name);
Attached:
// VideoCapture::get can return 0.0 or -1.0 if it doesn't support
// CV_CAP_PROP_SUPPORTED_PREVIEW_SIZES_STRING
if (u.prop != 0.0 && u.prop != -1.0)
return env->NewStringUTF(u.name);
