Open Source Computer Vision Library: biblioteca de C++ de procesamiento de imágenes y algoritmos de visión artificial, con bindings para varios lenguajes.
bytedeco/javacv
Wrappers de Java y clases auxiliares para OpenCV, FFmpeg y otras bibliotecas de visión artificial y multimedia.
- Estrellas
- 8,350
- Forks
- 1,615
- Issues abiertos
- 466
- Último commit
- hace 2 meses
¿Qué es?
JavaCV permite a los desarrolladores de Java acceder a bibliotecas de uso común para visión artificial y multimedia, como OpenCV y FFmpeg. Los wrappers se basan en JavaCPP Presets y sus definiciones de clases siguen de cerca los encabezados originales de C/C++, por lo que es posible llamar a las APIs de OpenCV y FFmpeg de forma muy similar a como se hace en código nativo.
Además de los bindings directos, JavaCV ofrece clases auxiliares para tareas habituales: visualización de imágenes acelerada por hardware (CanvasFrame, GLCanvasFrame), captura de fotogramas de cámaras y archivos de video mediante FrameGrabber, escritura de video mediante FrameRecorder, calibración de cámaras y proyectores, emparejamiento de puntos característicos y análisis de blobs. Los conversores vinculan fotogramas con Java 2D, bitmaps de Android y objetos Mat de OpenCV.
Las dependencias se distribuyen a través de Maven Central como javacv-platform, que incluye binarios nativos para Linux, macOS, Windows y Android. Algunas clases también incluyen variantes compatibles con OpenCL y OpenGL.
Funciones clave
- 01Bindings de Java para OpenCV y FFmpeg con APIs que reflejan las originales de C/C++.
- 02Captura de cámaras y archivos de video mediante implementaciones de FrameGrabber.
- 03Codificación y salida de video mediante FrameRecorder.
- 04Visualización de imágenes acelerada por hardware con CanvasFrame y GLCanvasFrame.
- 05Clases auxiliares para calibrar cámaras y proyectores, emparejar características y analizar blobs.
- 06Binarios nativos distribuidos mediante Maven y Gradle para varias plataformas, incluido Android.
Casos de uso
- Desarrollar aplicaciones de procesamiento de imágenes o visión artificial en Java o Kotlin.
- Capturar fotogramas de una webcam o de un flujo de video y procesarlos en tiempo real.
- Convertir o grabar archivos de video desde un backend Java.
- Añadir detección de rostros o análisis de contornos a una aplicación basada en la JVM.
Inicio rápido
- 1
Instala un JDK de Java SE 8 o posterior
- 2
Añade la dependencia javacv-platform a tu archivo pom.xml (Maven) o build.gradle (Gradle) con la versión 1.5.14
Antes de usarlo
- La licencia del proyecto no está claramente indicada en los metadatos (NOASSERTION), así que compruébala antes de usarlo.
- La dependencia javacv-platform descarga binarios nativos para todas las plataformas, por lo que ocupa mucho espacio, a menos que configures la propiedad javacpp.platform.
- No se pueden combinar módulos de 32 y 64 bits, por lo que todos los componentes deben tener la misma arquitectura.
Temas
Preguntas frecuentes
- ¿Qué es javacv?
- Wrappers de Java y clases auxiliares para OpenCV, FFmpeg y otras bibliotecas de visión artificial y multimedia. JavaCV permite a los desarrolladores de Java acceder a bibliotecas de uso común para visión artificial y multimedia, como OpenCV y FFmpeg. Los wrappers se basan en JavaCPP Presets y sus definiciones de clases siguen de cerca los encabezados originales de C/C++, por lo que es posible llamar a las APIs de OpenCV y FFmpeg de forma muy similar a como se hace en código nativo.
- ¿javacv es gratuito? ¿Qué licencia tiene?
- javacv es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿javacv sigue mantenido?
- Actualizado en los últimos 6 meses. El último commit de javacv fue el 12 ago 2026.
- ¿Para qué puedo usar javacv?
- Desarrollar aplicaciones de procesamiento de imágenes o visión artificial en Java o Kotlin. Capturar fotogramas de una webcam o de un flujo de video y procesarlos en tiempo real. Convertir o grabar archivos de video desde un backend Java. Añadir detección de rostros o análisis de contornos a una aplicación basada en la JVM.
- ¿Cómo se instala javacv?
- Instala un JDK de Java SE 8 o posterior Añade la dependencia javacv-platform a tu archivo pom.xml (Maven) o build.gradle (Gradle) con la versión 1.5.14
- ¿Dónde consigo javacv?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/bytedeco/javacv
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Herramienta de línea de comandos y biblioteca de Python que convierte una imagen estilo pizarra en un MP4 renderizado en CPU que se revela como si estuviera dibujado a mano, con ritmo ajustable a la narración.
Motor de OCR de código abierto (libtesseract) y herramienta de línea de comandos para extraer texto de imágenes, con reconocimiento basado en LSTM y compatibilidad con más de 100 idiomas.
Framework de análisis de video en C++ que conecta nodos intercambiables para leer streams, ejecutar inferencias de modelos, hacer seguimiento y generar resultados.
Quince películas de motion design de 10 segundos, cada una creada por Claude escribiendo código, con el prompt y el código fuente completo publicados para cada estilo.
Interfaz gráfica multiplataforma para FFmpeg que permite cortar, recortar y remultiplexar archivos de video y audio sin volver a codificarlos.