Sistema de información para la detección de patrones presentes en actos delictivos

Page 1

SISTEMA DE INFORMACIÓN PARA LA DETECCIÓN DE PATRONES PRESENTES EN ACTOS DELICTIVOS Richard Osmar Leon Ingaruca Especialidad: Ingeniería Informática. Lima - Perú 2012

Richard Osmar Leon Ingaruca


TÍTULO

4

PLANTEAMIENTO DE LA INVESTIGACIÓN PLANTEAMIENTO DEL PROBLEMA Definición del Problema Formulación del Problema Problema General Problemas secundarios Delimitación del Problema Justificación del estudio HIPÓTESIS Hipótesis general Hipótesis alternativas OBJETIVOS Objetivo General Objetivos Específicos DEFINICIÓN DE VARIABLES

4 4 4 4 4 5 5 5 6 6 6 6 6 7 7

FUNDAMENTOS TEÓRICOS Marco de referencia Marco teórico Red Neuronal Reconocimiento Óptico de Caracteres Algoritmo de Canny Centroide Esqueletización ESB Mule ESB Apache ActiveMQ Plataforma Java Marco conceptual Detector de armas Detector de actividades humanas

7 7 8 8 8 9 9 10 10 10 11 11 11 12 13

METODOLOGÍA 4.1 Tipo de investigación 4.2 Nivel de investigación 4.3 Diseño metodológico

13 13 13 14

Richard Osmar Leon Ingaruca


BIBLIOGRAFÍA

14

Richard Osmar Leon Ingaruca


1. TÍTULO Sistema de información para la detección de patrones presentes en actos delictivos. En este documento deseo compartir la investigación que realicé hace años la cual por temas de tiempo no he podido implementar. 2. PLANTEAMIENTO DE LA INVESTIGACIÓN

2.1. PLANTEAMIENTO DEL PROBLEMA 2.1.1.

Definición del Problema

El incremento de asaltos en Lima causados por un gran número de delincuentes ha obligado a muchas instituciones a la instalación de cámaras de video vigilancia. Estas cámaras requieren de uno o varios operadores, los cuales constantemente las monitorean en búsqueda de incidencias. El problema que surge es que la información obtenida no está siendo procesada de una manera óptima, debido a que la intervención de un operador humano conlleva a la fatiga, imprecisión y/o demora en la detección.

2.1.2.

Formulación del Problema

2.1.2.1.Problema General ¿Cómo podríamos optimizar la detección de incidencias a partir de las imágenes obtenidas de las cámaras de vigilancia? 2.1.2.2.

Problemas secundarios

Richard Osmar Leon Ingaruca


¿Qué tipos de incidencias delictivas se pueden detectar en un video? ¿Qué algoritmos o herramientas hacen posible la extracción de información a partir de las imágenes obtenidas de la cámara de vigilancia? ¿Qué arquitectura hará posible la comunicación entre las cámaras de vigilancia, los detectores, el dashboard y las alarmas?

2.1.3.

Delimitación del Problema

Los asaltos pueden ser realizados de distintas formas y usando diversos tipos de armas, a su vez, éstos se llevan a cabo tanto en la vía pública como al interior de establecimientos. En esta investigación sólo contemplaremos armas de corto alcance como pistolas y revólveres y aquellos ocurridos dentro de los establecimientos, utilizando para la captura del video, cámaras IP.

2.1.4.

Justificación del estudio

En los últimos años, nuestra sociedad se ha visto afectada por el incremento de la violencia, generando temor en las personas a ser víctimas de posibles agresiones, asaltos, secuestros y demás. Ante esta situación se ha optado por hacer uso de la tecnología, instalando cámaras de seguridad con sus respectivos centros de monitoreo. Esta investigación plantea desarrollar una plataforma informática que permita procesar sistemáticamente la información obtenida de las cámaras de vigilancia dentro de una institución. Para lo lograr esto se usarán algoritmos de inteligencia artificial, manejo de imágenes y software especializado en la gestión de mensajes entre aplicaciones, siendo capaz de detectar presuntos actos delictivos. El uso de la plataforma a desarrollar traerá como beneficio ambientes más confiables y seguros para la sociedad ya que permitirán automatizar la detección y/o alertar rápidamente situaciones delictivas.

Richard Osmar Leon Ingaruca


2.2. HIPÓTESIS 2.2.1.

Hipótesis general

El uso de algoritmos de inteligencia artificial, manejo de imágenes y una arquitectura adecuada para gestionar la información proveniente de las cámaras de vigilancia, permite detectar la ocurrencia de actos delictivos.

2.2.2.

Hipótesis alternativas

a. Nula

La capacidad de detectar actos delictivos por un observador no puede ser automatizada usando redes neuronales multicapa con retropropagación del error ni filtros de imágenes b. Alternativas El uso de redes neuronales multicapa con retropropagación del error con ayuda de filtros de imágenes posibilita la detección de actos delictivos automáticamente.

2.3. OBJETIVOS 2.3.1.

Objetivo General

Diseñar e implementar una plataforma que detecte la ocurrencia de actos delictivos a partir de imágenes de una cámara de vigilancia.

2.3.2.

Objetivos Específicos ℘ Aplicar algoritmos de procesamiento de imágenes para filtrado y/o detección de bordes.

Richard Osmar Leon Ingaruca


℘ Aplicar algoritmos de redes neuronales para el reconocimiento de actos delictivos.

2.4. DEFINICIÓN DE VARIABLES Variables independientes: ℘ ℘ ℘

Algoritmos de inteligencia artificial. Algoritmos de manejo de imágenes. Información visual obtenida de las cámaras de vigilancia.

Variable dependiente: ℘

Detección de actos delictivos.

3. FUNDAMENTOS TEÓRICOS

3.1. Marco de referencia El objetivo principal de esta tesis consiste en diseñar e implementar una plataforma que detecte la ocurrencia de actos delictivos a partir de imágenes de una cámara de vigilancia. El marco de referencia en el que se inscribe este trabajo se centra en el ámbito de demostrar que es posible detectar actos delictivos combinando teorías de inteligencia artificial con tecnologías de vanguardia para el desarrollo de software. La arquitectura propuesta está diseñada especialmente para facilitar la labor de las entidades de seguridad a la hora de monitorear y/o resguardar instituciones públicas o privadas, introduciendo la posibilidad de que este proceso pueda ser automático. Asimismo la arquitectura proporcionará mecanismos que permitan añadir nuevos servicios usando la data procesada a partir de las cámaras de vigilancia. En las siguientes secciones se exponen brevemente los principios básicos de redes neuronales, actividades humanas, detección de bordes, representación de formas, centroide, etc. Además se hace un breve repaso a las características más relevantes de los sistemas de integración servicios y/o mensajería entre aplicaciones. Finalmente se describe la arquitectura del sistema de detección que se desarrollará en la localidad de Ate en la planta envasadora de gas Poly Gas y que permitirá demostrar que es posible imitar la habilidad de un ser humano para detectar actos delictivos.

Richard Osmar Leon Ingaruca


3.2. Marco teórico 3.2.1.

Red Neuronal

Para lograr el factor de reconocimiento o clasificación se usará un modelo bastante investigado por la comunidad académica: Redes Neurales Artificiales de 3 capas con aprendizaje por retropropagación. Este Modelo básicamente encuentra la relación entre 02 conjuntos de datos y almacena esta relación en los pesos de las neuronas. Estos conjuntos serán los diversos vectores característicos extraídos de las imágenes provenientes de la cámara y las respectivas clases a identificar.

3.2.2.

Reconocimiento Óptico de Caracteres

El Reconocimiento Óptico de Caracteres (ROC), o generalmente reconocimiento de caracteres, es un proceso dirigido a la digitalización de textos, los cuales identifican automáticamente a partir de una imagen símbolos o caracteres que pertenecen a un determinado alfabeto, para luego almacenarlos en forma de datos, así poder interactuar con estos mediante un programa de edición de texto o similar. Con frecuencia es abreviado en textos escritos en el idioma español, utilizando el acrónimo a partir del inglés OCR.

3.2.3.

Algoritmo de Canny

Es un método para la detección de bordes, el cual se basaba en tres criterios, estos son: ℘ ℘ ℘

Tasa de error: el detector de contorno debe responder sólo a contornos, y debe encontrarlos todos. Ubicación: la distancia entre los píxeles del contorno encontrados por el detector y el contorno real debe ser la menor posible. El detector de contorno no debe identificar múltiples píxeles de contorno donde sólo exista un único contorno.

Esta técnica, que se caracteriza por estar optimizada para la detección de bordes diferenciales, consta de tres etapas principales: filtrado, decisión inicial, e histéresis.

Richard Osmar Leon Ingaruca


Filtrado: en este paso se calcula la magnitud y orientación del vector gradiente en cada píxel La segunda etapa realiza una primera toma de decisiones sobre los posibles bordes de la imagen, mediante el cálculo de los picos de las imágenes obtenidas en la primera etapa. Histéresis de umbral: en este paso se aplica una función de histéresis basada en dos umbrales; con este proceso se pretende reducir la posibilidad de aparición de contornos falsos.

3.2.4.

Centroide

Se conoce como centroide al centro de masa de una región sin masa en un plano. En la Física, el centroide, el centro de gravedad y el centro de masas pueden, bajo ciertas circunstancias, coincidir entre sí, aunque designan conceptos diferentes. El centroide es un concepto puramente geométrico que depende de la forma del sistema; el centro de masas depende de la distribución de materia, mientras que el centro de gravedad depende también del campo gravitatorio. El centroide, es el caso especial del centro de masas en el que el objeto tiene su peso uniformemente distribuido, o si la figura y densidad del objeto son simétricas en ese punto. Si todas las masas son iguales, o si no las tomamos en cuenta, al centroide también se le conoce como isobaricentro.

3.2.5.

Esqueletización

Esqueletización es una técnica de representación de formas. Se ha estudiado ampliamente y se establece que la esqueletización tiene propiedades atractivas que son adecuadas para el reconocimiento de patrones estructurales. Hay dos tipos de métodos esqueletización: basado en píxeles y no basado en pixeles. En el método basado en píxeles, todos los píxeles dentro de una forma son usados en el proceso de esqueletización. Estos métodos suelen utilizar técnicas de adelgazamiento. En el método no basado en píxeles, sólo los píxeles de contorno de una forma se utilizan para la esqueletización. Un método no basado en píxeles es generalmente más rápido que un método basado en píxeles ya que menos datos se utilizan para esqueletización. Para extraer el esqueleto de una forma desde su contorno, las simetrías locales de la forma necesitan ser identificados con precisión.

Richard Osmar Leon Ingaruca


3.2.6.

ESB

Un bus de servicios empresariales (ESB) [7] es fundamentalmente una arquitectura. Es un conjunto de normas y principios para la integración de múltiples aplicaciones a más de una. El software ESB permite a los usuarios construir este tipo de arquitectura, pero varían en la forma en que lo hacen y las capacidades que ofrecen. El concepto central de la arquitectura ESB es que permite integrar diferentes aplicaciones, poniendo un bus de comunicación entre ellos y luego permitir que cada solicitud establezca una conexión con el bus. Esto desacopla los sistemas entre sí, lo que les permite comunicarse sin dependencia. El concepto de ESB nació de la necesidad de alejarse de la integración punto a punto. Esto se refiere a menudo como "código espagueti" ya que crea dependencias estrechas entre las aplicaciones.

3.2.7.

Mule ESB

Mule es un framework de mensajería ESB [8] (Enterprise Service Bus). Es un gestor de objetos escalable y distribuible que puede manejar interacciones con servicios y aplicaciones que usan distintas tecnologías de transporte y mensajería. Mule fue diseñado para ser liviano y fácilmente embebible en aplicaciones Java y servidores de aplicación o correr como un servidor stand alone. Se integra con un número de frameworks como spring, hivemind y plexus y soporta muchos componentes de transporte y servicio como JMS, SOAP, JBI, BPEL, EJB, AS/400, HTTP, JDBC, TCP, UDP, SMTP, FILE, FTP y más.

3.2.8.

Apache ActiveMQ

Apache ActiveMQ [9] es un bróker de mensajería de código abierto (bajo licencia Apache 2.0) que implementa plenamente la especificación de Java Message Service 1.1 (JMS). Ofrece "Características empresariales" tales como clustering, múltiples almacenes para mensajes, así como la capacidad de emplear cualquier administrador de base de datos como proveedor de persistencia JMS, aparte de VM, caché y persistencia de jornales.

3.2.9.

Plataforma Java

Richard Osmar Leon Ingaruca


La plataforma Java es hoy en día una de las tecnologías líderes del mercado. Su capacidad multiplataforma y potentes Apis hacen que java sea la alternativa preferida desde desarrolladores hasta grandes empresas. La plataforma Java es el nombre de un entorno o plataforma de computación originaria de Sun Microsystems, capaz de ejecutar aplicaciones desarrolladas usando el lenguaje de programación Java u otros lenguajes que compilen a bytecode y un conjunto de herramientas de desarrollo. En este caso, la plataforma no es un hardware específico o un sistema operativo, sino más bien una máquina virtual encargada de la ejecución de las aplicaciones, y un conjunto de bibliotecas estándar que ofrecen una funcionalidad común.

3.3. Marco conceptual Es una búsqueda detallada y concreta, de conceptos relacionados con el tema de ordenamiento urbano; para que la investigación tenga un soporte teórico, necesarios para interpretarlos y organizarlos. Gracias a una exhaustiva investigación bibliográfica se aplicara correctamente los diferentes conceptos expuestos anteriormente en la elaboración de las soluciones presentadas en la tesis. Esta tesis se centra en el desarrollo de un sistema inteligente capaz de detectar actos delictivos usando cámaras de video. La primera fase es la identificación de patrones. Esta investigación se centra en 02 patrones: El arma de fuego y las actividades humanas. Para cada patrón se elabora un conjunto de entrenamiento con las imágenes y/o videos obtenidos de diversas fuentes. Después de ello, se elaborarán los algoritmos (filtros de imágenes) que harán posible la extracción de los vectores de datos o características de este conjunto. Luego se desarrollarán múltiples redes neuronales con retropropagación del error. Estas redes serán entrenadas con los vectores de datos o características obtenidos en la fase anterior (pertenecientes a diferentes tipos o clases). El objetivo de cada red será formar los siguientes detectores: Un detector de armas y un detector de actividades humanas.

Detector de armas

Richard Osmar Leon Ingaruca


Para la detección de armas nos basaremos en el principio básico de un OCR Un OCR es un reconocedor óptico de caracteres. Es decir se encarga de identificar los caracteres de una imagen. Haciendo una analogía, la imagen con caracteres a reconocer sería nuestro conjunto de bordes y los caracteres a reconocer serían el contorno o la forma de un arma. Por lo anterior la primera fase consiste en extraer todos los bordes de una imagen. Para ello usaremos el Algoritmo de Canny el cual gracias a múltiples etapas es capaz de detectar una amplia gama de bordes en imágenes. Esto es usado tanto en la etapa de entrenamiento como en la etapa de clasificación. La segunda fase usa un clasificador basado en Red Neuronal Artificial para determinar si alguno de los bordes hallados (resultado de Canny a partir de la cámara de vigilancia) pertenece a una de las armas modeladas en la etapa de entrenamiento.

Detector de actividades humanas Para la detección de las actividades humanas nos basamos en que la posición de un ser humano experimenta un patrón característico mientras realiza dichas actividades (inactivo, caminar, correr y pelear). Debido a esto la primera fase consiste en detectar la presencia de personas en una imagen dada. Para ello usaremos el método de Esqueletonización el cual usando algoritmos de adelgazamiento logra extraer la forma general de un objeto. Al detectar a una persona tomaremos como referencia las coordenadas del centroide de su cuerpo. Esto será usado tanto en la etapa de entrenamiento como en la etapa de clasificación. La segunda fase consiste en analizar la variación de estas coordenadas en la imagen a través del tiempo. Esta variación nos ayudará a calcular parámetros como la posición, velocidad y rapidez. A su vez estos parámetros harán posible el cálculo de parámetros más complejos. La tercera fase involucra un clasificador basado en Red Neuronal Artificial el cual determinará qué tipo de actividad está ejecutando la persona objetivo. Esto se logrará gracias a los datos estadísticos de cada una de las actividades indicadas contrastadas con los cálculos obtenidos como la velocidad y energía del centroide.

4. METODOLOGÍA

Richard Osmar Leon Ingaruca


4.1 Tipo de investigación Investigación aplicada, debido a que se desarrollarán algoritmos para la detección de actos delictivos usando la información visual de las cámaras de vigilancia.

4.2 Nivel de investigación De acuerdo a la naturaleza del estudio de la investigación, es de nivel: Descriptivo

4.3 Diseño metodológico El diseño metodológico por la naturaleza del estudio será Experimental ya que se procesarán las imágenes obtenidas para determinar patrones y datos de interés. 5. BIBLIOGRAFÍA Wikipedia http://es.wikipedia.org/wiki/Reconocimiento_%C3%B3ptico_de_caracteres Character Recognition Using Neural Networks - Fakhraddin Mamedov, Jamal Fathi Abu Hasna http://ucmss.com/books/LFS/CSREA2006/ICA5025.pdf A Neural Network Implementation of Optical Character Recognition - Brandon Maharrey maharbk@auburn.edu http://www.eng.auburn.edu/files/acad_depts/csse/csse_technical_reports/csse10-05.pdf Handwritten Character Recognition using Neural Network: Chirag I Patel, Ripal Patel, Palak Pate http://www.ijser.org/researchpaper%5CHandwritten_Character_Recognition_using_Neural_Network.pdf Neuronal-Net Applications in Character Recognition and document analysis: AT&T Bell Laboratories http://yann.lecun.com/exdb/publis/pdf/jackel-95.pdf [2] Canny: Detección de bordes mediante el algoritmo de Canny: Jorge Valverde Rebaza http://analizador-osteoporosis.googlecode.com/svn/trunk/textos/Detecci%C3%B3ndeBordes-Canny.pdf Implementación del Detector de Bordes de Canny sobre Redes Neuronales Celulares Miguel A. Jaramillo, J. Álvaro Fernández, Enrique Martínez de Salazar http://eii.unex.es/profesores/jalvarof/pdf/canny00.pdf Capitulo 3: Pasos realizados para la detección de bordes de imágenes a color http://bibing.us.es/proyectos/abreproy/11892/fichero/MEMORIA%252F5.ALGORITMO.pdf Implementación del detector de contorno http://www.cs.toronto.edu/~dmac/images/ProjectFiles/sraf/srafdoc/implemen.html

Richard Osmar Leon Ingaruca


Antecedentes de los métodos de Segmentación http://www.ptolomeo.unam.mx:8080/xmlui/bitstream/handle/132.248.52.100/171/A4.pdf Redes neuronales artificiales y sus aplicaciones http://cvb.ehu.es/open_course_ware/castellano/tecnicas/redes_neuro/contenidos/pdf/libro-del-curso.pdf Fundamentals of Neural Networks http://www.myreaders.info/08_Neural_Networks.pdf Redes neuronales: algoritmos, aplicaciones y técnicas de programación - James A Freeman; David M Skapura Redes Neuronales - James A.Anderson Redes Neuronales Artificiales. Fundamentos modelos y aplicaciones. - Jose R.Hilera; Victor J. Martinez Redes Neuronales Artificiales y Sistemas Borrosos. 3° Edicion - Bonifacio Martin del Brío; Alfredo Sanz Molina; Prologo de Lotti A. Zadeh Human Activity Recognition from Video: modeling, feature selection and classification architecture - Pedro Canotilho Ribeiro & Jose Santos-Victor http://vislab.isr.ist.utl.pt/publications/05-harem.pdf Neural Network based Approach for Recognition Human Motion using Stationary Camera - Rachana V. Modi; Tejas B. Mehta http://www.ijcaonline.org/volume25/number6/pxc3874110.pdf A Bayesian Approach to Human Activity Recognition by Anant Madabhushi http://www-2.cs.cmu.edu/~dgovinda/pdf/recog/00780265.pdf Reconocimiento de acciones humanas basadas en modelos probabilísticos de espacio de estados http://digibug.ugr.es/bitstream/10481/4855/1/1861565x.pdf A Fast Parallel Algorithm for Thinning Digital Patterns - T. Y. ZHANG and C. Y. SUEN http://www-prima.inrialpes.fr/perso/Tran/Draft/gateway.cfm.pdf Pedestrian head detection and tracking using skeleton graph for people counting in crowded environments - Kheir-Eddine AZIZ, Djamel MERAD and Bernard FERTIL http://webia.lip6.fr/~thomen/papers/MVA2011_Final.pdf http://www.inf.u-szeged.hu/~palagyi/skel/skel.html Image Thinning/Skeletonization (C/C++ Implementation) http://mafahir.wordpress.com/2011/02/02/image-thinningskeletonization-cc-implementation Centroide: Finding Centroids the Easy Way : Xabier Basogain Olabe http://mamikon.com/USArticles/EasyCentroids.pdf Centroid of Area and Moment of Inertia Calculation - McMaster Faculty of Engineering; Hamilton Ontario Canada http://materials.mcmaster.ca/undergraduate/courses/2H04/tasks/Centroid%20of%20Area%20and%20Moment%20of%20 Inertia%20Calculation.pdf Multiple Object Tracking by Kernel Based Centroid Method for Improve Localization - Rahul Mishra, Mahesh K.Chouhan,Dr.Dhiiraj Nitnawwre http://www.ijarcsse.com/docs/papers/July2012/Volume_2_issue_7/V2I700124.pdf Centroide http://es.wikipedia.org/wiki/Centroide http://pier.guillen.com.mx/algorithms/07-geometricos/07.8-centroide.htm Head Centroide http://www-2.cs.cmu.edu/~dgovinda/pdf/recog/00780265.pdf ESB Integración de soluciones ESB y BPMN en arquitecturas SOA http://soaengine.wordpress.com/2009/09/08/integracion-de-soluciones-esb-y-bpmn-en-arquitecturas-soa/

Richard Osmar Leon Ingaruca


Service Oriented Architecture (SOA) and Specialized Messaging Patterns http://www.adobe.com/enterprise/pdfs/Services_Oriented_Architecture_from_Adobe.pdf Evaluating a Service-Oriented Architecture - Software Engineeering Institute http://www.sei.cmu.edu/reports/07tr015.pdf SOA e Integração http://www.marcomendes.com/ArquivosBlog/EstrategiaIntegracao_SOA_PlataformaJava_templateMGJUG.pdf Mule Soft ESB http://www.mulesoft.com Mule ESB http://www.rich-software.com/mule-esb-demo-0909/Mule%20ESB,%200909-full.pdf Apache ActiveMQ Enterprise Messaging with Apache ActiveMQ http://people.apache.org/~jstrachan/talks/ActiveMQ-Dublin07.pdf ActiveMQ in action http://www.zengcode.com/files/FckAjaxFileManage/uploaded/documentations/ActiveMQInAction.pdf Diseños experimentales y no experimentales http://www.slideshare.net/uabcpsique/diseos-no-experimentales-transversales-transversales-descriptivos-y-exploratorios Sugerencia para el desarrollo de una tesis http://web.usal.es/~mom/sugerencias_tesis.pdf Sugerencia para el desarrollo de una tesis http://web.usal.es/~mom/sugerencias_tesis.pdf Diferencia entre marco teórico y marco conceptual http://www.authorstream.com/Presentation/jorgegiraldomont-1484225-diferencia-entre-marco-teorico-conceptual Marco Teórico http://www.marcoteorico.com/que-es-el-marco-teorico Proyecto 1 Investigación-diseño de una silla. http://biblio3.url.edu.gt/CDTK/DelValle-Andres.pdf Diseños no experimentales transversales, transversales descriptivos y exploratorios http://www.slideshare.net/uabcpsique/diseos-no-experimentales-transversales-transversales-descriptivos-y-exploratorios ¿Cómo elaborar la metodología en una tesis? Parte 1 https://www.youtube.com/watch?v=_S-Tp8pQVO0 ¿Cómo elaborar la metodología en una tesis? Parte 2 https://www.youtube.com/watch?v=s1fR0nhV2Cw Tipos y niveles de investigación científica http://www.scribd.com/doc/97318021/Tipos-y-Niveles-de-Investigacion-Cientifica Niveles de investigación - Metodología de la investigación https://www.youtube.com/watch?v=hVmjWV4rpEQ Hypothesis Testing http://explorable.com/hypothesis-testing Proyecto de Tesis: Las Variables http://www.slideshare.net/jcbenitezp/utp-ptiis8las-variables

Richard Osmar Leon Ingaruca


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.