java opencv video ffmpeg

OpenCV Java vincula VideoCapture desde el archivo que falla silenciosamente



ffmpeg (2)

Tuve el mismo problema con OpenCV 2.4.9. La solución que solucionó las cosas mintió al establecer la variable PATH en el directorio "bin" del directorio de instalación de OpenCV, por ejemplo "C: / opencv / build / x64 / vc11 / bin".

Estoy usando OpenCV 2.4.8 con el jar de Windows de 64 bits suministrado. He estado haciendo pleno uso de OpenCV en mi entorno actual hasta este momento.

No puedo abrir archivos de video con la clase VideoCapture sin embargo, las fuentes de la cámara web funcionan bien.

El siguiente funciona como se esperaba con el video.isOpened

VideoCapture video = new VideoCapture(); boolean result = video.open(0);

Lo siguiente falla con el video.isOpened devolución falsa

VideoCapture video = new VideoCapture(); boolean result = video.open("res/hand-test-1.mp4");

Ninguno de los formatos de archivo parece hacer una diferencia (Estos se convierten, no solo se renombran en la esperanza)

video.open("res/hand-test-1.mp4"); video.open("res/hand-test-1.avi"); video.open("res/hand-test-1.wmv");

La ubicación tampoco parece importar.

video.open("C:/hand-test-1.mp4"); video.open("C://hand-test-1.mp4"); video.open("hand-test-1.mp4");

Tampoco la basura, ni la excepción lanzada desde OpenCV a través de Java, parece fallar silenciosamente.

video.open("ashdkfhkajsjdfkhaksdf");

PATH contiene el directorio ffmpeg suministrado con la instalación de opencv,

C:/dev/opencv/sources/3rdparty/ffmpeg

En este momento me han quedado sin ideas, parece que todo lo que arroje al nativo a través de video.open(String) devolverá falso.

Cualquier ayuda sería muy apreciada


Tuve el mismo problema (también 2.4.9). Lo resolví copiando el archivo opencv.dll a la carpeta bin y vinculándolo a él a través de eclipse. Esto se puede hacer por:

  1. copie opencv_java249.dll encuentra en /opencv/build/java/x64 a /opencv/build/x64/vc12/bin

  2. En eclipse, haga clic derecho en el proyecto -> propiedades -> Java Build Path -> Libraries. Opencv debe aparecer en la lista, si no, agréguelo a través de Agregar JAR externos. ( opencv-249.jar y se puede encontrar en /opencv/build/java ).

  3. Haga clic en opencv-249.jar -> Ubicación de la biblioteca nativa -> Editar

  4. Ahora navegue a /opencv/build/x64/vc12/bin y guarde.

OpenCV ahora debería poder abrir los archivos.