0% encontró este documento útil (0 votos)
469 vistas33 páginas

Ejercicios Practicos Vision Artificial

Cargado por

mledesma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
469 vistas33 páginas

Ejercicios Practicos Vision Artificial

Cargado por

mledesma
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Ejemplos prácticos de visión

artificial

FREE

Copyright © 2018-2020 Actumlogos, todos los derechos reservados 1


Free © 2018-2020 Actumlogos
Detección de rostros

FREE

Copyright © 2018-2020 Actumlogos, todos los derechos reservados 2


Free © 2018-2020 Actumlogos
Detección de objetos

La detección de objetos es una de las principales tareas dentro de la visión por computadora y es
usado en muchas áreas de aplicación tanto industrial como comercial.

Detección de 3
objetos
Free © 2018-2020 Actumlogos
Detección de rostros

La detección de rostros busca identificar la presencia y la posición de los rostros humanos en


imágenes digitales. La detección de rostros es básicamente una tarea de clasificación, en particular
una clasificación binaria, en decidir si hay rostros o no lo hay.

Detección de rostros 4
Free © 2018-2020 Actumlogos
¿Cómo se realiza la detección?

Para llevar a cabo esta tarea, OpenCV cuenta con un clasificador basado en características de tipo
Haar, el cual es un algoritmo ampliamente usado. Este es un modelo pre-entrenado, lo que significa
que ya completó el entrenamiento con miles de imágenes. Los 4 puntos clave para comprender este
algoritmo son la extracción de características de Haar, imagen integral, Adaboost y clasificadores en
cascada.

Articulo 5
Viola-Jones
Free © 2018-2020 Actumlogos
Extracción de característica de Haar

Las características tipo Haar son filtros


utilizados en la detección de objetos.
Deben su nombre a su similitud intuitiva
con las wavelets de Haar, propuestas
originalmente por Alfréd Haar. Durante la
detección, pasamos la ventana a una
imagen y hacemos la operación
convolucional con los filtros para ver si la
función que estamos buscando está en la
imagen. Aquí está el video que visualiza
cómo funciona la detección.

Video 6
Free © 2018-2020 Actumlogos
Imagen integral

Aunque este no es un cálculo complejo, la cantidad total de cómputo se vuelve enorme cuando lo
consideramos en una imagen completa. Y aquí es donde entra en juego una imagen integral. Como
puede ver a continuación, hay los píxeles de una imagen a la izquierda y una imagen integral a la
derecha. Comenzando desde el punto superior izquierdo, calcula la suma acumulada de píxeles bajo
un área rectangular dada. En la imagen integral, la suma de los píxeles en el cuadro con la línea
discontinua se escribe en el punto inferior derecho del cuadro a la derecha.

7
Free © 2018-2020 Actumlogos
Clasificador en cascada con Adaboost

Para reducir aún más el costo computacional, se implementa un clasificador en cascada con
Adaboost. Este va a permitir que regiones que definitivamente no tiene un rostro sean descartadas.

Las formas básicas de las características se implementan en las primeras etapas y las más
complejas se aplican sólo para aquellas regiones prometedoras. Y en cada etapa, el modelo
Adaboost se entrenará mediante la formación de aprendices débiles. Si una subparte, o una
subventana, se clasifica como "una región no similar a una cara" en la etapa anterior, se rechaza al
siguiente paso. Al hacerlo, podemos considerar sólo a los sobrevivientes y lograr una velocidad
mucho mayor.
8
Free © 2018-2020 Actumlogos
Implementacion en OpenCV

9
Free © 2018-2020 Actumlogos
10
Free © 2018-2020 Actumlogos
11
Free © 2018-2020 Actumlogos
12
Free © 2018-2020 Actumlogos
13
Free © 2018-2020 Actumlogos
Reto 1: En el archivo Retos_clasif_casc y en 5 minutos, cargue una imagen donde haya rostros de
personas y ajuste los parámetros del detector multiescala hasta detectar la mayor cantidad de rostros
de forma correcta.
Resultado esperado:
Tips:

● Utilice los métodos


cv2.CascadeClassifier()
CascadeClassifier.detectMultiScale(),
● Consulte en “San Google”

14
Free © 2018-2020 Actumlogos
Solucion:

15
Free © 2018-2020 Actumlogos
Clasificación de imágenes
con Deep Learning

FREE

Copyright © 2018-2020 Actumlogos, todos los derechos reservados 16


Free © 2018-2020 Actumlogos
¿Que es el Deep Learning?

17
Free © 2018-2020 Actumlogos
Redes neuronales artificiales

Deep learning utiliza redes neuronales para poder


aprender. Una red red neuronal artificial de un algoritmo
que funciona como los científicos consideran que
funciona nuestro cerebro. Nuestro sistema nervioso
está constituido por células llamadas neuronas, que se
comunican unas con otras a través de caminos
llamados sinapsis. Estas células forman extensas redes
que procesan la información de nuestro cuerpo para la
toma de decisiones.

Sinapsis neuronal 18
Free © 2018-2020 Actumlogos
19
Free © 2018-2020 Actumlogos
Red Neuronal Convolucional (Convolutional Neural Network)

20
Free © 2018-2020 Actumlogos
Red Neuronal Convolucional (Convolutional Neural Network)

21
Free © 2018-2020 Actumlogos
Algoritmo de Retropropagación (Backpropagation)

Mas sobre Backpropagation 22


Free © 2018-2020 Actumlogos
Para este ejemplo vamos a ocupar un subconjunto del dataset disponible en Kaggle. El dataset
completo está compuesto por 25,000 imagenes de perros y gatos.

https://www.kaggle.com/c/dogs-vs-cats/data

Para nuestro ejemplo vamos a ocupar 4000 imágenes divididas de la siguiente forma:
● 2000 para entrenamiento (1000 perros y 1000 gatos)
● 1000 para validación (500 perros y 500 gatos)
● 1000 para prueba (500 perros y 500 gatos)

23
Free © 2018-2020 Actumlogos
24
Free © 2018-2020 Actumlogos
25
Free © 2018-2020 Actumlogos
26
Free © 2018-2020 Actumlogos
27
Free © 2018-2020 Actumlogos
28
Free © 2018-2020 Actumlogos
Como se habrá dado cuenta, nuestro clasificador acierta en un 80% de la imágenes, lo que aún es un
porcentaje bajo. Un clasificador entrenado con el dataset completo (25,000 imágenes), es presentado
en:

https://www.kaggle.com/tanmaypandey/dogs-vs-cats-keras-solution/output

29
Free © 2018-2020 Actumlogos
En el se utiliza una arquitectura de red neuronal convolucional llamada ResNet50. La cual contien 23
millones de parámetros.

30
Imagen
Free RESNET50 © 2018-2020 Actumlogos
¡Plus ultra! ...ir más allá

Cursos de Deep Learning y Machine Learning Práctico

Libros recomendados de Deep Learning

31
Free © 2018-2020 Actumlogos
Conclusión Final

● La detección de objetos es una de las tareas más importantes dentro del campo de la visión
artificial.

● Para detectar rostros, uno de los clasificadores más utilizados es el de Viola-Jones y que está
implementado en OpenCV

● En los últimos años un área de las disciplinas que ha cobrado mayor relevancia es al aprendizaje
profundo o deep learning, ya que ha permitido desarrollar modelos que han mejorado los
resultados en el área de la inteligencia artificial.

● Uno de los modelos de deep learning más conocidos son las redes neuronales convolucionales,
las cuales han tenido mayor impacto en área de la visión por computadora.

32
Free © 2018-2020 Actumlogos
Glosario

Deep Learning: Subárea de la inteligencia artificial y del machine learning que configura parámetros
básicos acerca de los datos y entrena a la computadora para que aprenda por cuenta propia
reconociendo patrones mediante el uso de muchas capas de procesamiento.

Neurona artificial: Algoritmo computacional que busca emular la forma en que se comporta una
neurona real.

Convolución: Operación matemática que transforma dos funciones f y g en una tercera función que en
cierto sentido representa la magnitud en la que se superponen ambas funciones.

33
Free © 2018-2020 Actumlogos

También podría gustarte