Documentos de Académico
Documentos de Profesional
Documentos de Cultura
pág. 1
Administración de hardware
Docente
Víctor Agusto Pedraza Bonilla
pág. 2
Resumen
Computer Vision (Visión Artificial Abierta), esta librería es altamente compatible con
(información, 2018) Desarrollada por Intel, OpenCV es una biblioteca libre de visión
artificial que desde 1999 se viene empleando en todo tipo de aplicaciones que requieren
Abstract
In this document, a small investigation of the OpenCV (Open Computer Vision) library
is carried out, this library is highly compatible with C / C ++ and Python, but includes
(information, 2018) Developed by Intel, OpenCV is a free computer vision library that
since 1999 has been used in all types of applications that require incorporating object
recognition.
pág. 3
Contenido
Objetivos ....................................................................................................................................... 5
General ...................................................................................................................................... 5
Específicos ................................................................................................................................. 5
Lenguaje Java ................................................................................................................................ 5
El compilador Java ..................................................................................................................... 5
La JVM ....................................................................................................................................... 6
OpenCV ......................................................................................................................................... 6
Class VideoCapture ................................................................................................................... 7
Conclusiones ........................................................................................................................... 11
Bibliografía .................................................................................................................................. 12
pág. 4
Objetivos
General
Específicos
• Desde el monitor del sistema operativo se logre visualizar que la memoria está
Lenguaje Java
plataforma Java y sus componentes. Vea Recursos para aprender más acerca de los
El compilador Java
código con las reglas de sintaxis del lenguaje, luego escribe los códigos byte en
archivos .class. Los códigos byte son instrucciones estándar destinadas a ejecutarse
pág. 5
La JVM
escribió la JVM. La JVM interpreta los códigos byte del mismo modo en que una
CPU interpretaría las instrucciones del lenguaje del conjunto. La diferencia es que la
es el corazón del principio «escrito una vez, ejecutado en cualquier lugar» del
lenguaje Java.
OpenCV
OpenCV tiene una licencia BSD, lo que permite utilizar y modificar el código,
descargadas. Es una librería muy usada a nivel comercial, desde Google, Yahoo,
Microsoft, Intel, IBM, Sony, Honda, Toyota, Applied Minds, VideoSurf, Zeitera…
learning y de visión artificial para usar. Estos algoritmos permiten identificar objetos,
objetos, extraer modelos 3D, encontrar imágenes similares, eliminar ojos rojos,
pág. 6
Class VideoCapture
cámaras. La clase proporciona la API de C++ para capturar vídeo de cámaras o para
%VideoCapture. Nota:
pág. 7
Constructores
VideoCapture() Constructor predeterminado Nota: EnREF: videoio_c "C API", cuando termine de trabajar con
video, libere la estructura de CvCapture con cvReleaseCapture(), o usar Ptr<CvCapture> que llama
cvReleaseCapture() automatically en el destructor.
VideoCapture Abrir archivo de vídeo o secuencia de archivos de imagen o un dispositivo de captura o una
(java.lang.String filename) secuencia de vídeo IP para la captura de vídeo Igual que VideoCapture(const String& filename, int
apiPreference) pero usando backends predeterminados de Capture API
VideoCapture Abrir archivo de vídeo o un dispositivo de captura o una secuencia de vídeo IP para la captura de
(java.lang.String filename, vídeo con API Preference
int apiPreference)
pág. 8
Todos los métodos
java.lang.String getBackendName() Devuelve el nombre de API de back-end usado Nota: Se debe abrir Stream.
long getNativeObjAddr()
boolean grab() Toma el siguiente fotograma del archivo de vídeo o del dispositivo de captura.
boolean open(int index) Abrir una cámara para capturar vídeo Los parámetros son los mismos que el constructor
VideoCapture(int index)
boolean open(int cameraNum, Abrir una cámara para capturar vídeo Parámetros son similares al constructor VideoCapture(int
int apiPreference) index),excepto que toma un argumento adicional apiPreference.
pág. 9
boolean open(java.lang.String filename) Abrir archivo de vídeo o un dispositivo de captura o una secuencia de vídeo IP para la captura
de vídeo Parámetros son los mismos que el constructor VideoCapture(const String& filename)
boolean open(java.lang.String filename, Abrir archivo de vídeo o un dispositivo de captura o una secuencia de vídeo IP para la captura
int apiPreference) de vídeo con parámetros de preferencia de API son los mismos que el constructor
VideoCapture(const String& filename, int apiPreference)
boolean retrieve(Mat image, int flag) Descodifica y devuelve el fotograma de vídeo capturado.
https://docs.opencv.org/3.4/javadoc/org/opencv/videoio/VideoCapture.html
(team, 2020)
pág. 10
Conclusiones
• Opencv es una librería basada en C muy útil para el manejo de la cámara web, aunque
claramente es mucho más potente como para abrir la webcam, puesto que permite
• Esta pre configura para trabajar principalmente con C/C++ y Python, aunque en Java es
un poco más intrincado el proceso de incluirla funciona con todas las opciones.
• Una gran mejora fui incluir opencv en versiones de Java para escritorio puesto que no
existía una versión que soportara la configuración de la JDK, esto es posible desde la
versión 2.4.x.x.x.
pág. 11
Bibliografía
pág. 12