Visión artificial. Tomás Domínguez Mínguez
Чтение книги онлайн.
Читать онлайн книгу Visión artificial - Tomás Domínguez Mínguez страница 4
![Visión artificial - Tomás Domínguez Mínguez Visión artificial - Tomás Domínguez Mínguez](/cover_pre1032113.jpg)
En este libro aprenderá a usar la librería OpenCV para realizar estos procesos, y se ocultará la complejidad matemática de los algoritmos en los que se basa cada uno de ellos. Eso le permitirá desarrollar, de forma sencilla y práctica, aplicaciones de visión artificial en tiempo real.
Adéntrese en este fascinante mundo con Pyhton de la mano de OpenCV.
1.2 OPENCV
OpenCV (Open Source Computer Vision Library) es una librería orientada al procesamiento y análisis de imágenes. Desarrollada inicialmente por Intel en 1999, ha ido ganando popularidad rápidamente, siendo hoy en día una de las más empleadas en el desarrollo de aplicaciones de visión artificial.
OpenCV (https://docs.opencv.org/) es muy utilizada en grupos de investigación, organismos gubernamentales y empresas como Google, Yahoo, Microsoft, Intel, IBM, Sony, Honda y Toyota. Sus ámbitos de aplicación son muchos, y entre ellos destacan:
• Reconocimiento facial
• Identificación de objetos o personas
• Inspección y vigilancia
• Juegos y controles
• Recuento de objetos
• Análisis de imágenes médicas
• Robótica
• Realidad aumentada
En 2008, Willow Garage se hizo cargo del soporte de OpenCV 2.3.1, por lo que a partir de dicha versión viene con una interfaz de programación C++, Java y Python. Además, está disponible en diferentes plataformas, incluidas Windows, Linux, Mac OS X y Android. Este libro se centrará en OpenCV-Python, que combina las mejores cualidades del API (application programming interface, interfaz de programación de aplicaciones) de OpenCV y el lenguaje Python.
Además de ser multiplataforma y multilenguaje, es destacable el hecho de que OpenCV sea un producto con licencia BSD (Berkeley Software Distribution), con menos restricciones que otras como GPL (General Public License, Licencia Pública General de GNU), ya que permite incluso el uso de su código fuente en software comercial.
1.3 PYTHON
Como se acaba de comentar, OpenCV está disponible en los principales lenguajes de programación. De todos ellos, utilizará Python, quizás el empleado por un mayor número de programadores en el mundo. Los motivos de la enorme aceptación de este lenguaje seguramente estén en su sencillez de aprendizaje y facilidad de uso.
No solo permite el clásico modo de programación imperativo, sino que también admite una programación orientada a objetos, con lo que se abre al uso de infinidad de librerías que, como OpenCV, están basadas en este paradigma.
Su entorno multiplataforma hace que se pueda trabajar con él, independientemente de si dispone de un ordenador con Windows, Mac o Linux (incluso Raspberry). Como requisito adicional, necesitará disponer de una webcam, que podrá ser la integrada en el propio ordenador o cualquier otra conectada vía USB.
La versión de Python utilizada será la 3.x (a fecha de publicación del libro es la 3.7). No tiene sentido utilizar Python2 cuando fue oficialmente descontinuado el 1 de enero de 2020.
¿Todavía no conoce Python? Al final del libro dispone de un amplio anexo que representa en sí mismo un curso de iniciación a este lenguaje. En primer lugar, aprenderá cómo se instala y utiliza su entorno de desarrollo. Haciendo uso de él, practicará con los tipos de datos básicos, los operadores y las estructuras de datos o de control imprescindibles del lenguaje. La orientación a objetos tendrá un tratamiento especial, así como el desarrollo de funciones o el uso de módulos (librerías). Se explica todo lo necesario (incluso más) para que pueda entender el código de las múltiples prácticas con las que se demuestran los conceptos de visión artificial introducidos en cada capítulo de la mano de OpenCV. El objetivo final es que, inspirándose en estos programas de prueba, usted pueda desarrollar sus propios proyectos. Los límites que pueda llegar a alcanzar estarán en su imaginación.
Unidad 2
INSTALACIÓN DE OPENCV
Puesto que va a trabajar con la librería OpenCV para Python, deberá tener instalado el entorno de desarrollo de este lenguaje en su ordenador. Si no fuera así, en el anexo final se indica cómo hacerlo. Aunque esta librería funciona tanto con la versión 2.7 como con la 3.4 y superiores, tal como se ha comentado en el apartado anterior, se utilizará únicamente Python 3.7.
Evidentemente, para usar la librería OpenCV, primero hay que instalarla. Para ello, abra una ventana de símbolo del sistema y ejecute el comando:
pip install opencv-python
Recuerde que en algunas distribuciones de Linux el comando que debe utilizar es pip3.
La forma más sencilla de abrir una ventana de símbolo del sistema en Windows es escribiendo su nombre en el campo de búsqueda situado en la parte inferior izquierda del escritorio. Enseguida le aparecerá un icono sobre el que podrá pulsar para abrir dicha ventana.
En la instalación de este paquete, puede observar que también se carga la librería NumPy, utilizada para trabajar con matrices.
Aunque no entraremos en conceptos matemáticos, para entender por qué la visión artificial y las matrices están tan unidas, piense que una imagen puede definirse como una función f(x, y) cuyos argumentos son las coordenadas x, y de cada píxel, y el resultado es el nivel de luz (o color) del píxel situado en dichas coordenadas.
En otras palabras, una imagen no es más que un array de dos dimensiones (de tres en el caso de imágenes en color) cuyos elementos contienen el valor de cada uno de sus píxeles. A los arrays de dos dimensiones se les llama matrices. Si tuvieran tres serían tensores. Sin embargo, por simplicidad, generalmente se empleará el término matriz.
Para saber si OpenCV está correctamente instalado, entre en el intérprete de Python (comando python) y ejecute las siguientes sentencias: