Docsity
Docsity

Prepara tus exámenes
Prepara tus exámenes

Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity


Consigue puntos base para descargar
Consigue puntos base para descargar

Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium


Orientación Universidad
Orientación Universidad


Seguimiento de Objeto, Apuntes de Programación Informática

Pequeno ejemplo de como seguir un objeto

Tipo: Apuntes

2017/2018

Subido el 01/12/2018

patox000
patox000 🇧🇴

1 documento

1 / 8

Toggle sidebar

Esta página no es visible en la vista previa

¡No te pierdas las partes importantes!

bg1
Universidad Autónoma Gabriel
Rene Moreno
Seguimiento y
Reconocimiento
de Imagen en
Tiempo Real
Nombre: Renato
Tosoni Justiniano
Registro: 215049756
Materia: Taller de Análisis y
Diseño de Redes (RDS-421)
Docente: Ing. Jorge Antonio
Gonzales Sandoval
Nro. De Presentación: 10ma
Semestre: 2-2018
Santa Cruz – 8 de Noviembre del 2018
1. PROPUESTA DE LABORATORIO
pf3
pf4
pf5
pf8

Vista previa parcial del texto

¡Descarga Seguimiento de Objeto y más Apuntes en PDF de Programación Informática solo en Docsity!

Universidad Autónoma Gabriel

Rene Moreno

Seguimiento y

Reconocimiento

de Imagen en

Tiempo Real

Nombre: Renato

Tosoni Justiniano

Registro: 215049756

Materia: Taller de Análisis y

Diseño de Redes (RDS-421)

Docente: Ing. Jorge Antonio

Gonzales Sandoval

Nro. De Presentación: 10ma

Semestre: 2-

Santa Cruz – 8 de Noviembre del 2018

  1. PROPUESTA DE LABORATORIO

1. Herramientas a Utilizar

1.1. Software

1.1.1. Python 3

Para la implementación del software que se utilizara para el seguimiento de un objeto en específico es Python 3 ya que es muy utilizado en procesamiento de imágenes como también en procesamiento de videos gracias a su librería OpenCV y para utilizar vectores y matrices de alto nivel la librería Numpy.

Python es un lenguaje de programación interpretado con una sintaxis de código legible que usa tipado dinámico y es multiplataforma.

Es multiparadigma, ya que soporta orientación a objetos, programación imperativa y, en menor medida, programación funcional, lo cual permite implementar el sistema seguidor de objeto sin saber a priori, sobre que tipo de hardware y sistema operativo es finalmente ejecutado.

1.1.2. OpenCV

OpenCV es una biblioteca libre de visión artificial desarrollada por Intel. OpenCV tiene una infinidad de aplicaciones desde sistemas de seguridad

Figura 1: Logotipo de Python

cámaras de red incluyen una lente, un sensor de imagen, uno o más procesadores y memoria. Como un ordenador, la cámara de red dispone de su propia dirección IP, es decir que trababa a nivel de capa 3 en el modelo OSI, está directamente conectada a la red y se puede colocar en cualquier ubicación en la que exista una conexión de red. Esta característica es la diferencia respecto a una cámara Web, que únicamente puede ejecutarse cuando está conectada a un ordenador personal (PC)o Laptop por medio del puerto USB

En las cámaras IP se pueden integrarse aplicaciones como detección de presencia (incluso él envió de mail si detectan presencia), grabación de imágenes o secuencias en equipos informáticos (tanto en una red local o en una red externa WAN), de manera que se pueda comprobar por que ha saltado la detección de presencia y se graben imágenes de lo sucedido

1.1.4.1. Cámara PTZ

Las cámaras PTZ pueden rotar alrededor de dos ejes, uno horizontal y otro vertical, también pueden acercarse o alejarse ( zoom ) para enfocar un área u objeto deseado de forma manual o automática. Dicho de otra forma, este tipo de cámaras es capaz de rotar en un plano vertical y ( tilt ) y en un plano horizontal x ( panning ), además de acercarse o alejarse de forma manual o automática.

Figura 4: Tipos de movimiento de Rotación de la PTZ

1.1.5. Computadora

Las características mínimas de una computadora o laptop para la implementación son las siguientes:

  • Procesador Core I3 de 4 núcleos
  • Tarjeta de video Integrada Intel o similar
  • Disco Duro de 500Gb
  • Memoria Ram 4GB
  • Sistema Operativo: Windows o Linux

Di

ag

ra

ma

gi

co

Par a la imp lem ent aci ón del proyecto se necesita una red con capacidad IP es decir ya sea igual o mayor a capa 3 del modelo OSI, es por eso que se necesita un router en la red. Es necesario que la cámara IP PTZ se le pueda asignar una IP ya sea por protocolo DHCP que brinda el router o de forma manual. La cámara PTZ cuenta con un servidor web incluido donde se encuentran las diferentes funciones y características de la cámara. Para acceder a este servidor web se debe colocar en el buscador la ip que se le asigno. Dicha cámara tiene capacitad de rotación en el eje X(horizontal) y en el eje Y(vertical) por lo que nos será muy útil para el seguimiento de un objeto en específico.

Figura 5: Diagrama Lógico del ProyectoFigura 6: Diagrama de bloque de la Explicación del Laboratorio

Pasos a seguir en la

implementación

1.1.6. Entrenamiento

La etapa de entrenamiento consiste en obtener un modelo del objeto al cual se pretende seguir. Para llevarla a cabo se puede utilizar un patrón témplate ya conocido o aprenderlo de imágenes capturadas del mismo objeto. Hay que tomar varios templates del objeto, donde cada uno de los templates corresponde a una pose diferente. Es muy importante cubrir con la mayor cantidad de templates del objeto posibles. Luego, este se utilizará´ en la detección para ubicar la representación del objeto dentro de una imagen cualquiera. Una vez conocido el témplate no se requiere de una nueva ejecución del entrenamiento.

1.1.7. Detección del objeto

La segunda etapa, la de detección, radica en encontrar dentro de un frame del video al objeto en cuestión, utilizando el método de detección deseado, valiéndose de la información obtenida en la etapa de entrenamiento. Esta etapa se ejecuta, con el propósito de encontrar en la imagen el objeto a seguir, al comienzo del sistema de seguimiento y cuando el seguimiento frame a frame falla. Dado que la etapa de detección suele ser la más costosa en términos de desempeño computacional es deseable que se ejecute la menor cantidad de veces posible.

1.1.8. Seguimiento de ese objeto

La tercera etapa es la de seguimiento de objetos, la cual depende de la etapa de detección del objeto. Si no se detecta correctamente al objeto no se puede proseguir a seguirlo, llegando a la conclusión, que el seguir la trayectoria de un objeto depende directamente de la detección de dicho objeto como observa en el diagrama de flujo de la figura 8. Esta etapa consiste en seguir frame a frame el objeto detectado en la etapa anterior. Esta etapa es la más importante ya que es la que se ejecuta en cada frame del video en tiempo real. Para seguir la trayectoria de un objeto, se necesita predecir su ubicación en el futuro a partir de las observaciones que se hayan hecho del mismo en tiempos pasados y presente. Una ves se estime la trayectoria futura, con la funcionalidad de la PTZ de girar en el eje X(horizontal), se prosigue a seguir al objeto, acoplar su trayectoria y velocidad a la del objeto seguido.

Figura 7: Diagrama de bloque de un sistema seguidor de objeto

En la figura 8, Las flechas negras indican las fases importantes del esquema presentado en la figura 6. Las flechas punteadas son transiciones opcionales que indican que el entrenamiento además puede nutrirse de la información recolectada del objeto durante la detección y el seguimiento del objeto. Si la técnica de seguimiento tiene una efectividad baja, es decir, no se logra identificar la nueva posición del objeto en el siguiente frame, se debe volver a la fase o etapa anterior degradando el desempeño de todo el sistema, como se mencionó anteriormente.

1.1.9. Análisis de ese Objeto

En la fase de análisis del objeto en los diferentes fotogramas de un video en tiempo real quizás sea la parte más compleja ya que no se puede saber con exactitud que va a ser un objeto en los próximos minutos ya que existen diferentes factores de dificultan el seguimiento de la trayectoria del objeto como ser: Cambios bruscamente de la posición del objeto (quizás la persona este corriendo muy rápido), Iluminación del Ambiente, Ruido o también si el objeto se encuentra obstruido. Se tratará de disminuir al máximo dichos factores para tener mejores resultados. El objetivo del análisis de video es extraer y procesar información relacionada con el comportamiento de un objeto en una escena en específico.

Hay que tomar en cuenta que existen ya modelos entrenados y listos para usar, que sirven para reconocer objetos comunes, como ser: persona, auto, bicicleta, auto. Para el objetivo del laboratorio es reconocer personas. En el caso de necesitar el reconocimiento de objetos específicos que no se encuentren en los modelos previamente entrenados, sólo se necesitaría contar con un set de datos etiquetados suficientemente grande y diverso, con imágenes de los objetos que queremos que el sistema reconozca para entrenar la red nuevamente, el cual se utilizara en la implementación del laboratorio como se explicó en la etapa de entrenamiento.

Figura 8: Diagrama de Flujo de un sistema seguidor de objeto