Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Java / API completo y ligero para el uso de webcams desde java

API completo y ligero para el uso de webcams desde java

Autor jc mouse martes, septiembre 10, 2019

Webcam Capture es un API  que permite usar una cámara web incorporada o externa directamente desde código Java utilizando para ello solo las bibliotecas proporcionadas, los usuarios pueden leer imágenes desde una webcam e incluso detectar el movimiento. Está diseñado para abstraer las características de la cámara de uso común y admite múltiples frameworks de captura.

Webcam Capture API fue desarrollado por el ingeniero de software polaco Bartosz Firyn (sarxos) en primera instancia como una prueba de concepto después de leer el libro de Andrew Davison titulado «Killer Game Programming»  luego sarxos decidió escribir un contenedor de propósito general para diferentes API (como JMF, OpenCV, OpenIMAJ, LTI-CIVIL, VLC) y el resultado fue la biblioteca que se menciona en este post. Webcam Captura esta bajo un Copyright (C) 2011 – 2014 Bartosz Firyn and contributors que se puede leer a detalle en la página del proyecto (http://webcam-capture.sarxos.pl/)

Características:

  • API simple, segura para subprocesos y sin bloqueo
  • No requiere software adicional
  • Multiplataforma (Windows, Linux, Mac OS, etc.) y varias arquitecturas (32 bits, 64 bits, ARM)
  • Capture imágenes de cámaras web de PC incorporadas o conectadas por dispositovos USB
  • Capture imágenes de cámaras IP / de red (como MJPEG o JPEG)
  • Detector de movimiento
  • Disponible en Maven Central o como binario ZIP independiente
  • Admite múltiples frameworks de captura: OpenIMAJ, LTI CIVIL, Java Media Framework (JMF), Freedom for Media in Java (FMJ), OpenCV via JavaCV, VLC via vlcj, GStreamer (0.10.x only) via gstreamer-java MJPEG IP Cameras

¿Qué se puede hacer con esta API?

Webcam Capture se destaca por su facilidad de implementación, por ejemplo a continuación se muestra el código necesario del clásico «Hola Mundo», en este caso, para tomar una captura de la webcam y guardar esta en disco.

Webcam webcam = Webcam.getDefault();
webcam.open();
ImageIO.write(webcam.getImage(), "PNG", new File("hello-world.png"));

Webcam Capture nos proporciona una variada selección de códigos de ejemplo

  • Cómo detectar la cámara web
  • Cómo tomar una foto y guardarla en un archivo
  • Cómo mostrar la imagen de la cámara web en un panel Swing
  • Cómo escuchar en eventos de conexión / desconexión de la cámara
  • Cómo configurar la resolución de captura
  • Cómo configurar una resolución de captura no estándar
  • Cómo guardar la imagen capturada en PNG / JPG / GIF / BMP, etc.
  • Cómo capturar con muchos hilos paralelos
  • Cómo detectar movimiento
  • Cómo mostrar imágenes de múltiples cámaras IP exponiendo imágenes en formato JPG
  • Cómo mostrar la imagen de la cámara IP exponiendo la transmisión MJPEG
  • Cómo usar el controlador compuesto para mostrar imágenes de cámara IP incorporadas

Y también se  incluye ejemplos más avanzados como:

reconocimiento facial

lectura de código QR

webcams con javafx

  • Cómo usar la API de captura de cámara web en JavaFX y FXML
  • Cómo usar la API de captura de cámara web en SWT
  • Cómo usar WebcamImageTransformer para dibujar efectos directamente en la imagen de la cámara

enjoy!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Personlizar JTable: Header Table con iconos

Personlizar JTable: Header Table con iconos

En este post mostramos como personalizar el Header (encabezado) de un componente JTable en Java colocando iconos, centra...

Añade un PlaceHolder a un JTextField

Añade un PlaceHolder a un JTextField

PlaceHolder: PlaceHolder es un atributo propio de HTML5 y es el texto que aparece dentro de un campo de texto (un JTextF...

Autenticación en php con MySql y POO

Autenticación en php con MySql y POO

Autenticación en una pagina web es el proceso de confirmar que un usuario es quien dice ser, asi de simple. En el siguie...

Dibujar figuras geométricas con java

Dibujar figuras geométricas con java

Problema: Escriba un programa en java que permita dibujar con el mouse cuadrados, círculos y triángulos. El usuario debe...

Como paginar registros en Java/Access

Como paginar registros en Java/Access

En este post veremos una forma de realizar la paginación en una base de datos Access utilizando el lenguaje de programac...

Sub Tablas: Agregar tablas dentro de otras tablas en Java

Sub Tablas: Agregar tablas dentro de otras tablas en Java

El JTable de Java es un gran componente para mostrar datos en una tabla de una forma rápida y sencilla, sin embargo en v...

Comparte lo que sabes

Categorias

Últimas entradas

WhatsApp anuncio a través de su blog que ya se encuentra disponible la función de envío de fotos y videos TEMPORALES, es...

Muchas de las innovaciones computacionales de la NASA se desarrollaron para ayudar a explorar el espacio, pero ahora la...

TikTok es una plataforma de microvideos muy popular entre los jóvenes el cual cuenta ya con millones de videos cortps de...

Una clase JTree permite mostrar datos de una forma jerárquica y en realidad este objeto no contiene sus datos; es decir,...

Herramientas

Generador de Enlaces a Whatsapp