universidad de guayaquil facultad de ciencias matematicas y...

122
UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS CARRERA DE INGENIERIA EN NETWORKING Y TELECOMUNICACIONES Diseño de un sistema de gestión, monitoreo y reserva de espacios en estacionamientos públicos o privados a través de la aplicación móvil Incorporando machine learning y OpenCV en la gestión PROYECTO DE TITULACIÓN Previa a la obtención del Título de: INGENIERO EN NETWORKING Y TELECOMUNICACIONES AUTOR (ES): David Salazar Acosta Kevin Ortiz Vera TUTOR: Ing. Ronald Alfredo Barriga Díaz, PhD. GUAYAQUIL ECUADOR 2019

Upload: others

Post on 12-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS

CARRERA DE INGENIERIA EN NETWORKING Y

TELECOMUNICACIONES

Diseño de un sistema de gestión, monitoreo y reserva de espacios en

estacionamientos públicos o privados a través de la aplicación móvil

Incorporando machine learning y OpenCV en la gestión

PROYECTO DE TITULACIÓN

Previa a la obtención del Título de:

INGENIERO EN NETWORKING Y TELECOMUNICACIONES

AUTOR (ES):

❖ David Salazar Acosta

❖ Kevin Ortiz Vera

TUTOR:

Ing. Ronald Alfredo Barriga Díaz, PhD.

GUAYAQUIL – ECUADOR

2019

Page 2: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

ii

Repositorio Nacional en Ciencias y Tecnología

Ficha de Registro de Tesis

Título: “Diseño de un sistema de gestión, monitoreo y reserva de espacios en estacionamientos públicos o privados a

través de la aplicación móvil Incorporando machine learning y OpenCV en la gestión.”

Revisores: Ing. Christian Picón Farah,Msc

Institución: Universidad de Guayaquil Facultad: Ciencias, Matemáticas y Físicas

Carrera: Ingeniería en Networking y Telecomunicaciones

Fecha de Publicación: 1 de octubre del 2019 N° páginas: 121

Área Temática: Networking y Telecomunicaciones

Palabras Claves: App Móvil, api web, Panel de administración web, reservas, usuarios, establecimientos, roles,

reconocimiento de objetos, cobros

Resumen: El proyecto de titulación del sistema de gestión de estacionamiento busca satisfacer una necesidad que

permite a los usuarios de la aplicación conocer los espacios de estacionamiento disponibles, entre lugares de acceso

público como también privados. Para inicializar el proyecto se busca plantear un marco teórico, conceptual para detallar

los antecedentes previos al estudio, apoyo teórico y principio legal, adicionalmente se opta por incluir los resultados de la

fase de implementación del sistema de gestión de estacionamientos, incluyendo la funcionalidad de los siguientes

módulos: App Móvil, api web, Panel de administración web, gestión de reservas, gestión de usuarios, gestión de

establecimientos, roles por usuarios, reconocimiento de objetos, módulo de cobros. Finalizando con los respectivos

entregables del proyecto, de igual manera se elaborar una matriz de puntos de aceptación del proyecto identificando los

ítems cumplidos a la vez que se resaltaran las conclusiones y recomendaciones.

Para finalizar en los anexos se documentará los pasos de instalación y manual de usuario, preguntas frecuentes de

resultado de las encuestas.

N° de Registro (en base de datos): N° de Clasificación:

Dirección URL (Proyecto de Titulación en la web):

Adjunto de PDF: Si No

Contacto con Autor:

Kevin Ortiz Vera

David Salazar Acosta

Teléfono:

0978831398

0969594095

E-mail:

[email protected]

[email protected]

Contacto de la Institución: Nombre: Ab. Juan Chávez Atocha, Esp.

Teléfono:

x

Page 3: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

iii

CARTA DE APROBACIÓN DEL TUTOR

En mi calidad de Tutor del trabajo de investigación, “Diseño de un sistema de gestión,

monitoreo y reserva de espacios en estacionamientos públicos o privados a través de

la aplicación móvil Incorporando machine learning y OpenCV en la gestión.” elaborado

por el Sr. Kevin Christian Ortiz Vera, Sr. Josué David Salazar Acosta, Alumno no

titulados de la Carrera de Ingeniería en Networking y Telecomunicaciones, y

Facultad de Ciencias Matemáticas y Físicas de la Universidad de Guayaquil, previo a

la obtención del Título de Ingeniero en Networking y Telecomunicaciones, me permito

declarar que luego de haber orientado, estudiado y revisado, la Apruebo en todas sus

partes.

Atentamente,

Ing. Ronald Alfredo Barriga Díaz, PhD.

Tutor

Page 4: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

iv

DEDICATORIA

Este logro alcanzado se

lo dedico a mi familia

que durante todo este

proceso de aprendizaje

estuvo apoyándome a

seguir adelante

cumpliendo esta meta

alcanzada, así también

con las personas

siempre estuvieron

dispuestas ayudarme, y

los compañeros que

durante todo este

tiempo estuvieron

conmigo aprendiendo a

ser mejores

profesionales. Por

último, a los docentes

me guiaron hasta esta

etapa, haciendo posible

mi formación

profesional.

Page 5: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

v

AGRADECIMIENTO

Agradezco en primer

lugar a Dios, por

permitirme avanzar en

mi carrera Profesional,

así mismo a mis padres

por estar pendientes y

siempre dispuestos a

colaborar conmigo

Finalmente, a todos mis

seres queridos que

fueron partícipe de mis

múltiples logros

alcanzados durante

esta etapa.

Page 6: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

vi

TRIBUNAL DE PROYECTO DE TITULACION

Fausto Cabrera Montes, Msc.

DECANO DE LA FACULTAD

CIENCIAS MATEMÁTICAS Y

FÍSICAS

Ing. Abel Alarcón Salvatierra, Msc.

DIRECTOR DE LA CARRERA DE INGENIERÍA EN

NETWORKING Y TELECOMUNICACIONES

Ing. Christian Picón Farah, Msc

PROFESOR REVISOR DEL

PROYECTO

TRIBUNAL

Ing. William Rodríguez

PROFESOR DEL ÁREA TRIBUNAL

Ing. Ronald Alfredo Barriga Diaz, PhD.

PROFESOR TUTOR DEL PROYECTO DE TITULACION

Ab. Juan Chávez Atocha, Esp.

SECRETARIO (E) DE LA FACULTAD

Page 7: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

vii

DECLARACIÓN EXPRESA

Kevin Christian Ortiz Vera Josué David Salazar Acosta

“La responsabilidad del

contenido de este

Proyecto de titulación,

me corresponden

exclusivamente; y el

patrimonio intelectual

de la misma a la

UNIVERSIDAD DE

GUAYAQUIL”

Page 8: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

viii

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERA DE INGENIERIA EN NETWORKING Y

TELECOMUNICACIONES

DISEÑO DE UN SISTEMA DE GESTIÓN, MONITOREO Y RESERVA DE

ESPACIOS EN ESTACIONAMIENTOS PÚBLICOS O PRIVADOS A TRAVÉS DE

LA APLICACIÓN MÓVIL INCORPORANDO MACHINE LEARNING Y OPENCV EN

LA GESTIÓN

Proyecto de Titulación que se presenta como requisito para optar por el título de

INGENIERO EN NETWORKING Y TELECOMUNICACIONES

AUTOR/A: KEVIN CHRISTIAN ORTIZ VERA

C.I. 0953412897

JOSUÉ DAVID SALAZAR ACOSTA

C.I. 0931637151

TUTOR: ING. RONALD ALFREDO BARRIGA DIAZ, PhD.

Guayaquil, septiembre del 2019

Page 9: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

ix

CERTIFICADO DE ACEPTACIÓN DEL TUTOR

En mi calidad de tutor del Proyecto, nombrando por el consejo directivo de la Facultad

de Ciencias, Matemáticas y Físicas de la Universidad de Guayaquil

CERTIFICO:

Que he analizado el Proyecto de Titulación presentado por los estudiantes

KEVIN CRISTIAN ORTIZ VERA Y JOSUÉ DAVID SALAZAR ACOSTA, como requisito previo

para optar por el título de Ingeniero en Networking y Telecomunicaciones cuyo problema es:

DISEÑO DE UN SISTEMA DE GESTIÓN, MONITOREO Y RESERVA DE ESPACIOS EN

ESTACIONAMIENTOS PÚBLICOS O PRIVADOS A TRAVÉS DE LA APLICACIÓN MÓVIL

INCORPORANDO MACHINE LEARNING Y OPENCV EN LA GESTIÓN.

Considero aprobado el trabajo en su totalidad.

Presentado por:

KEVIN CHRISTIAN ORTIZ VERA

C.I. 0953412897

JOSUÉ DAVID SALAZAR ACOSTA

C.I. 093163715

TUTOR: ING. RONALD ALFREDO BARRIGA DIAZ, PHD.

GUAYAQUIL, SEPTIEMBRE DEL 2019

Page 10: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

x

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERA DE INGENIERIA EN NETWORKING Y TELECOMUNICACIONES

Autorización para Publicación de Proyecto de Titulación en Formato Digital

1. Identificación del Proyecto de Titulación

Nombre Alumno: Kevin Christian Ortiz Vera

Nombre Alumno: Josué David Salazar Acosta

Dirección: Coop. juan Montalvo Mz 1747 Sl 13

Dirección: Alborada 5 etapa Mz dc villa 5

Teléfono:0978831398 E-mail: [email protected]

Teléfono:0969594095 E-mail: [email protected]

Facultad: Ciencias, Matemáticas y Físicas

Carrera: Ingeniería En Networking Y Telecomunicaciones

Título Al Que Opta: Ingeniero En Networking Y Telecomunicaciones

Profesor de Tutor: Ing. Ronald Alfredo Barriga Díaz, PhD.

Título del Proyecto de titulación: Diseño de un sistema de gestión, monitoreo y reserva de espacios en

estacionamientos públicos o privados a través de la aplicación móvil Incorporando machine learning y OpenCV

en la gestión.

Tema del Proyecto de Titulación: Móvil, Aplicación, Servicios, Api, Front end, Back end, Multiplataforma,

OpenCV, Machine Learning

Page 11: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xi

2. Autorización de Publicación de Versión Electrónica del Proyecto de Titulación

A través de este medio autorizo a la Biblioteca de la Universidad de Guayaquil y a la Facultad

de Ciencias Matemáticas y Físicas a publicar la versión electrónica de este Proyecto de

titulación.

Publicación electrónica:

Inmediata Después de 1 año

Kevin Christian Ortiz Vera Josué David Salazar Acosta

3. Forma de envió:

El texto del proyecto de titulación debe ser enviado en formato Word, como archivo .Doc. O .RTF y.

Puf para PC. Las imágenes que la acompañen pueden ser: .gif, .jpg o .TIFF.

DVD ROM CD ROM

x

Page 12: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xii

INDICE GENERAL

Índice

CARTA DE APROBACIÓN DEL TUTOR .................................................................. iii

DEDICATORIA ..........................................................................................................iv

AGRADECIMIENTO .................................................................................................. v

TRIBUNAL DE PROYECTO DE TITULACION .........................................................vi

DECLARACIÓN EXPRESA ...................................................................................... vii

CERTIFICADO DE ACEPTACIÓN DEL TUTOR .......................................................ix

ABREVIATURAS ......................................................................................................xv

ÍNDICE DE TABLAS ................................................................................................ xvi

ÍNDICE DE GRÁFICOS .......................................................................................... xvii

INTRODUCCIÓN ....................................................................................................... 1

CAPITULO I ............................................................................................................... 2

EL PROBLEMA ........................................................................................ 2

PLANTEAMIENTO DE PROBLEMA ........................................................ 2

SITUACIÓN DE CONFLICTOS DE NUDOS CRÍTICOS .......................... 3

CAUSAS Y CONSECUENCIAS DEL PROBLEMA ................................. 3

FORMULACIÓN DEL PROBLEMA ......................................................... 4

EVALUACIÓN DEL PROBLEMA ............................................................. 5

OBJETIVOS ............................................................................................. 6

OBJETIVO GENERAL .......................................................................... 6

OBJETIVO ESPECIFICO...................................................................... 6

ALCANCE DEL PROBLEMA ................................................................... 7

JUSTIFICACIÓN E IMPORTANCIA ......................................................... 7

METODOLOGÍA DE PROYECTO ............................................................ 8

CAPITULO II .............................................................................................................. 9

MARCO TEÓRICO ................................................................................... 9

Antecedentes del Estudio ...................................................................... 9

2.1- FUNDAMENTACIÓN TEÓRICA ..................................................... 11

Page 13: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xiii

2.1.1- ¿QUÉ ES MACHINE LEARNING? ........................................... 11

2.1.2- ¿QUE ES LARAVEL? .............................................................. 12

2.1.3- ¿QUÉ ES OPENCV? ................................................................ 13

2.1.4- ¿QUÉ ES PYTHON? ................................................................ 14

2.1.5- ¿QUÉ ES IONIC? ..................................................................... 16

2.1.6- ¿QUÉ ES ANGULAR? ............................................................. 17

2.1.7- ¿QUÉ ES Y PARA QUÉ SIRVE JAVASCRIPT? ...................... 18

2.1.8- ¿QUÉ ES TYPESCRIPT? ......................................................... 19

2.1.9- ¿QUÉ ES UN SUPERSET? ...................................................... 20

2.1.10- ¿QUÉ ES ELECTRON JS? .................................................... 22

2.1.11- ¿Qué es socket.io? ............................................................... 23

2.1.12- ¿QUÉ ES SQL? ...................................................................... 24

2.1.13- ¿Qué es una base de datos? ................................................ 25

2.1.14- BASE DE DATOS RELACIONAL .......................................... 26

2.1.15- ¿QUÉ ES UNA RED LAN? ..................................................... 27

2.1.16- ¿Qué es y para qué sirve el Cloud Computing? ................. 34

2.1.17- ¿QUÉ ES UNA CÁMARA IP? ................................................ 37

2.1.18- Protocolo RTSP ..................................................................... 41

2.2- FUNDAMENTACIÓN LEGAL ......................................................... 45

2.3- DEFINICIONES CONCEPTUALES ................................................. 47

CAPITULO III ........................................................................................................... 49

PROPUESTA TECNOLÓGICA................................................................................ 49

3.1- Análisis de Factibilidad ................................................................. 49

3.1.1 Factibilidad Operacional .......................................................... 50

3.1.2 Factibilidad Técnica ................................................................. 50

3.1.3 Factibilidad Legal ..................................................................... 54

3.1.4 Factibilidad Económica ........................................................... 54

3.2 Etapas de la metodología del proyecto......................................... 55

3.2.1 Metodología de trabajo ............................................................ 55

3.2.2 Propósito de la documentación .............................................. 55

3.2.3 Alcance...................................................................................... 55

Page 14: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xiv

3.2.4 ETAPAS DE METODOLOGÍA DEL PROYECTO ...................... 56

3.3 - CRITERIOS DE VALIDACIÓN DE LA PROPUESTA .................... 78

3.3.1- ENCUESTAS ............................................................................ 78

3.3.2 -PROCESAMIENTO Y ANÁLISIS ............................................. 78

3.3.3- RESULTADOS DE LA ENCUESTA DIRIJIDA PARA LOS

USUARIOS DE LA UNIVERSIDAD DE GUAYAQUIL ........................ 79

CAPÍTULO IV ......................................................................................................... 88

CRITERIOS DE ACEPTACIÓN DEL PRODUCTO O SERVICIO........................... 88

CONCLUSIONES ....................................................................................................... 89

RECOMENDACIONES ................................................................................................ 90

Bibliografía ............................................................................................................... 91

ANEXOS .................................................................................................................. 95

Page 15: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xv

ABREVIATURAS

API: Application Programming Interface. IP: Protocolo de Internet UG: Universidad de Guayaquil RTSP: Real Time Streaming Protocol

HTTP: Protocolo de transferencia de hipertexto

ORM: Object-Relational mapping

TCP: Transmission Control Protocol

ftp: Protocolo de transferencia de archivos

Page 16: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xvi

ÍNDICE DE TABLAS

Tabla 1.Delimitación del Problema ........................................................................................................... 4

Tabla 2.COMPONENTES DEL PROYECTO............................................................................................ 51

Tabla 3.COSTOS DEL PROYECTO ......................................................................................................... 54

Tabla 4.Pregunta 1 ..................................................................................................................................... 79

Tabla 5.Pregunta 2 ..................................................................................................................................... 80

Tabla 6. Pregunta 3.................................................................................................................................... 81

Tabla 7.Pregunta 4 ..................................................................................................................................... 82

Tabla 8.Pregunta 5 ..................................................................................................................................... 83

Tabla 9. Pregunta 6.................................................................................................................................... 84

Tabla 10. Pregunta 7 ................................................................................................................................. 85

Tabla 11. Pregunta 8 ................................................................................................................................. 86

Tabla 12. Pregunta 9 ................................................................................................................................. 87

Tabla 13. Matriz de Aceptación del Producto ....................................................................................... 88

Page 17: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xvii

ÍNDICE DE GRÁFICOS

Gráfico 1.Análisis estadístico de congestionamiento vehicular....................................................... 10

Gráfico 2.MACHINE LEARNING .............................................................................................................. 11

Gráfico 3.LARAVEL ................................................................................................................................... 12

Gráfico 4.OPENCV ..................................................................................................................................... 13

Gráfico 5.PYTHON ..................................................................................................................................... 14

Gráfico 6.IONIC .......................................................................................................................................... 16

Gráfico 7.ANGULAR .................................................................................................................................. 17

Gráfico 8.JAVASCRIPT ............................................................................................................................. 18

Gráfico 9.TYPESCRIPT ............................................................................................................................. 19

Gráfico 10.ELECTRON JS MAIN PROCESS .......................................................................................... 22

Gráfico 11.SOCKET.IO SERVER ............................................................................................................. 23

Gráfico 12.DIAGRAMA DE SQL ............................................................................................................... 24

Gráfico 13.MOTOR DE BASE DE DATOS RELACIONAL .................................................................... 25

Gráfico 14.OTROS MOTORES DE BASE DE DATOS........................................................................... 26

Gráfico 15.INTEGRACIÓN DE BASE DE DATOS .................................................................................. 27

Gráfico 16.ESTRUCTURA DE ORDENADORES POR CONEXIÓN LAN ............................................ 30

Gráfico 17.CLOUD COMPUTING ............................................................................................................. 34

Gráfico 18.CÁMARA IP ............................................................................................................................. 37

Gráfico 19.CONEXIÓN A CAMARA DE VIDEO ...................................................................................... 39

Gráfico 20.Protocolo RTSP ...................................................................................................................... 42

Gráfico 21.PANTALLA DE HERRAMIENTA PUTTY ............................................................................. 58

Gráfico 22.Pantalla de Terminal del servidor ....................................................................................... 58

Gráfico 23.ACTUALIZACIÓN DE PAQUETES DE UBUNTU ................................................................ 59

Gráfico 24.TERMINAL DE DESCARGA DE XAMPP ............................................................................. 59

Gráfico 25.INSTALACIÓN DE XAMPP .................................................................................................... 60

Gráfico 26.DESCARGANDO PAQUETERIA DE COMPOSER ............................................................. 61

Gráfico 27.Pantalla de Terminal .............................................................................................................. 61

Gráfico 28.COMPOSER ............................................................................................................................. 61

Page 18: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xviii

Gráfico 29.INSTALACIÓN COMPLETA DE COMPOSER ..................................................................... 62

Gráfico 30.INSTALACIÓN DE NODE JS ................................................................................................. 62

Gráfico 31. -V NVM .................................................................................................................................... 63

Gráfico 32.DESCARGAR ULTIMA VERSIÓN DE NODE JS ................................................................. 63

Gráfico 33. INSTALACIÓN DE PYTHON ................................................................................................. 64

Gráfico 34.INSTALACIÓN DE DEPENDENCIAS ................................................................................... 64

Gráfico 35.INSTALACIÓN DE PYTHON-SOCKETIO............................................................................ 65

Gráfico 36.CLONACION DE REPOSITORIO .......................................................................................... 65

Gráfico 37.INSTALACIÓN DE DEPENDENCIAS ................................................................................... 66

Gráfico 38.VARIABLES DE ENTORNO................................................................................................... 66

Gráfico 39.CONFIGURACION DE ENV ................................................................................................... 67

Gráfico 40.INGRESO DE ACCESO .......................................................................................................... 67

Gráfico 41.ACTIVAMOS MYSQL ............................................................................................................. 68

Gráfico 42.CREACION DE LA BASE DE DATOS .................................................................................. 68

Gráfico 43.PANTALLA TERMINAL .......................................................................................................... 69

Gráfico 44.CLONACION DE REPOSITORIA GITLAB ........................................................................... 70

Gráfico 45.INSTALACIÓN DE DEPENDENCIAS ................................................................................... 70

Gráfico 46.HERRAMIENTA PM2 .............................................................................................................. 71

Gráfico 47.COMANDO START MAIN.JS ................................................................................................. 71

Gráfico 48.COMANDO GIT CLONE ......................................................................................................... 72

Gráfico 49.COMANDO PYTHON3 MAIN.PY & ....................................................................................... 72

Gráfico 50.INSTALACIÓN DE NPM ......................................................................................................... 73

Gráfico 51.INSTALACIÓN DEL PROJECTO .......................................................................................... 73

Gráfico 52.ESCRIBIMOS LA URL DEL SERVIDOR .............................................................................. 74

Gráfico 53.COMANDO NG BUILD-PROD ............................................................................................... 74

Gráfico 54.HERRAMIENTA WINSCP....................................................................................................... 75

Gráfico 55.EMPAQUETADO DE LOS ARCHIVOS ................................................................................. 75

Gráfico 56.COMANDO UNZIP .................................................................................................................. 76

Gráfico 57.DESCOMPRECIÓN DEL ARCHIVO ...................................................................................... 76

Gráfico 58.CAMBIO DE NOMBRE DE LA CARPETA ........................................................................... 77

Gráfico 59.PANTALLA DE INGRESO ..................................................................................................... 77

Gráfico 60.GRAFICO DE ENCUESTA PREGUNTA 1............................................................................ 79

Gráfico 61.GRAFICO DE ENCUESTA PREGUNTA 2............................................................................ 80

Gráfico 62.GRAFICO DE ENCUESTA PREGUNTA 3............................................................................ 81

Gráfico 63..GRAFICO DE ENCUESTA PREGUNTA 4........................................................................... 82

Page 19: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xix

Gráfico 64.GRAFICO DE ENCUESTA PREGUNTA 5............................................................................ 83

Gráfico 65.GRAFICO DE ENCUESTA PREGUNTA 6............................................................................ 84

Gráfico 66.GRAFICO DE ENCUESTA PREGUNTA 7............................................................................ 85

Gráfico 67.GRAFICO DE ENCUESTA PREGUNTA 8............................................................................ 86

Gráfico 68.GRAFICO DE ENCUESTA PREGUNTA 9............................................................................ 87

Gráfico 69.FORMULARIO DE ENCUESTA PREGUNTA 1 ................................................................... 96

Gráfico 70.FORMULARIO DE ENCUESTA PREGUNTA 2 & 3 ............................................................ 97

Gráfico 71.FORMULARIO DE ENCUESTA PREGUNTA 4-5-6 ............................................................. 98

Gráfico 72.FORMULARIO DE ENCUESTA PREGUNTA 7-8 ................................................................ 99

Gráfico 73.FORMULARIO DE ENCUESTA PREGUNTA 9 ................................................................... 99

Gráfico 74.ANEXO 1 FOTOGRAFIA DE ESTACIONAMIENTO.......................................................... 100

Gráfico 75.ANEXO 1 FOTOGRAFIA DE ESTACIONAMIENTO.......................................................... 100

Gráfico 76.EVIDENCIA ANEXO.............................................................................................................. 101

Gráfico 77.EVIDENCIA ANEXO.............................................................................................................. 101

Page 20: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xx

UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS

MATEMÁTICAS Y FÍSICAS

CARRERA DE INGENIERIA EN NETWORKING Y TELECOMUNICACIONES

“Diseño de un sistema de gestión, monitoreo y reserva de espacios en

estacionamientos públicos o privados a través de la aplicación móvil Incorporando

machine learning y OpenCV en la gestión.”

AUTOR: KEVIN CHRISTIAN ORTIZ VERA JOSUÉ DAVID SALAZAR ACOSTA

TUTOR: ING. RONALD ALFREDO BARRIGA DIAZ, PhD

Resumen

El proyecto de titulación del sistema de gestión de estacionamiento busca satisfacer una necesidad

que permita a los usuarios mediante una aplicación móvil, conocer los espacios de estacionamiento

disponibles, entre lugares de acceso público como también privados. Para inicializar el proyecto se

busca plantear un marco teórico, conceptual para detallar los antecedentes previos al estudio, apoyo

teórico y principio legal, adicionalmente se opta por incluir los resultados de la fase de implementación

del sistema de gestión de estacionamientos, incluyendo la funcionalidad de los siguientes módulos:

App Móvil, ,api web, Panel de administración web, gestión de reservas, gestión de usuarios, gestión

de establecimientos, roles por usuarios, reconocimiento de objetos, módulo de cobros. Finalizando

con los respectivos entregables del proyecto, de igual manera se elaborar una matriz de puntos de

aceptación del proyecto identificando los ítems cumplidos a la vez que se resaltarán las conclusiones

y recomendaciones.

Para finalizar en los anexos se documentará los pasos de instalación y manual de usuario, preguntas

frecuentes de resultado de las encuestas.

Palabras Claves: App Móvil, api web, Panel de administración web, reservas, usuarios,

establecimientos, roles, reconocimiento de objetos, cobros.

Page 21: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

xxi

UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS

MATEMÁTICAS Y FÍSICAS

CARRERA DE INGENIERIA EN NETWORKING Y TELECOMUNICACIONES

"Design of a management, monitoring and reservation system for public or private

parking spaces through the mobile application Incorporating machine learning and

OpenCV in management."

AUTOR/A: KEVIN CHRISTIAN ORTIZ VERA JOSUÉ DAVID SALAZAR ACOSTA

TUTOR: ING. RONALD ALFREDO BARRIGA DIAZ PhD

Abstract.

The title project of the parking management system seeks to satisfy a need that allows users through a

mobile application to know the available parking spaces, between public and private access places. In

order to initialize the project, the aim is to propose a theoretical, conceptual framework to detail the pre-

study background, theoretical support and legal principle, in addition, it is decided to include the results

of the implementation phase of the parking management system, including the functionality of the

following modules: Mobile App, web api, Web administration panel, reservation management, user

management, establishment management, user roles, object recognition, payment module. Finalizing

with the respective deliverables of the project, in the same way a matrix of points of acceptance of the

project will be developed identifying the items met while highlighting the conclusions and

recommendations.

To finalize in the annexes, the installation steps and user manual, frequently asked questions about the

results of the surveys will be documented.

Keywords: Mobile App, web api, Web administration panel, reservations, users, establishments, roles,

object recognition, collections.

Page 22: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

1

INTRODUCCIÓN

Actualmente en los lugares de estacionamientos cuentan con una propuesta firme acerca de

un sistema de gestión de estacionamientos en los sectores públicos y privados, pero no

disponen con una herramienta eficiente para el monitoreo y control apropiado de los lugares

de estacionamientos. Nuestro sistema pretende optimizar la forma de monitorear y gestionar

los espacios disponibles para los lugares de facilitan parqueo vehicular.

Se busca la implementación de cámaras de seguridad que gestionarán en tiempo real los

espacios disponibles para los vehículos en el estacionamiento, los usuarios podrán tener

acceso, una vez registrados, a nuestra aplicación móvil para ubicar sitios en lugares públicos

y privados donde poder estacionar sus vehículos. En el módulo publico podrán conocer que

espacios están disponibles en el alcance de la zona de cobertura y en módulo privado el re

direccionará a establecimientos que cuenten con espacios listos para usar, previo a la

cancelación de la respectiva tarifa del parqueadero. Las pruebas de este prototipo se

implementarán en los patios de la universidad de Guayaquil en la facultad de ciencias

matemáticas y física de las calles Víctor Manuel Rendón 429 entre Baquerizo Moreno y

Córdova.

A continuación, se presenta el resumen del proyecto en función de cada capítulo a desarrollar:

• Capítulo I: En este capítulo se describe el problema sobre la falta de un sistema de gestión

de control de espacios de estacionamientos y el efecto que presenta en los conductores de

automóviles con sus respectivas causas, consecuencias y situación de nudo crítico. Además,

se describe el objetivo general, los objetivos específicos y alcances.

• Capitulo II: Se detalla el marco teórico, antecedentes de estudio, fundamentación legal,

hipótesis o pregunta científica a contestarse y definiciones conceptuales.

• Capítulo III: Se presenta la propuesta tecnológica sobre la implementación de un sistema

de gestión de control de espacios de estacionamientos describiendo los recursos: técnicos,

operacionales, económicos y legales, además en las etapas de metodología del proyecto se

anexan la configuración de la plataforma culminando con los entregables del proyecto y

criterios de validación de la propuesta.

• Capítulo IV: Se elabora una matriz de aceptación del producto validando el cumplimiento

de cada objetivo específico, culminando con las conclusiones y recomendaciones.

Page 23: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

2

CAPITULO I

EL PROBLEMA

PLANTEAMIENTO DE PROBLEMA

Ubicación del Problema en un Contexto

Debido al incremento vehicular en la ciudad Guayaquil, existe una desorganización total; pero

si hablamos de la Universidad de Guayaquil y sus alrededores, las calles fueron diseñadas

para manejar volúmenes de circulación menores a los que se generan hoy en día a

determinadas horas pico. Debido a que los conductores no saben dónde pudiesen encontrar

un estacionamiento libre, manejan despacio para identificar un lugar desocupado. El

resultado de este procedimiento, es un gran congestionamiento provocado por vehículos que

desean circular normalmente y los que se encuentran buscando estacionamiento, lo cual

ocasiona que los conductores se estacionen en doble columna en la vía públicas

exponiéndose a las multas por parte de las autoridades de la agencia de tránsito. Además,

de causar frustración y estrés a los conductores.

El congestionamiento trae algunos problemas:

Pérdida de tiempo: los conductores deben invertir mucho tiempo antes de que puedan

encontrar un aparcamiento libre, y como consecuencia pueden llegar tarde a su lugar de

trabajo e incluso tarde a la hora de clases, por el contrario, sin el congestionamiento podrían

hacerlo de forma más rápida. Además, esto afecta a otros conductores que están dentro de

la universidad por la demora provocadas en cadena.

Situaciones peligrosas: Mientras que los conductores están buscando un aparcamiento libre,

su atención está dividida entre el manejo y la búsqueda, por lo que suelen estar distraídos y

la probabilidad de un accidente puede crecer e incluso robos e inseguridad general.

Page 24: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

3

El enfoque principal será diseñar un prototipo de control y monitoreo para parqueos

vehiculares con el fin que el usuario tenga más precisión al momento de buscar e identificar

un lugar para parquear su automóvil.

SITUACIÓN DE CONFLICTOS DE NUDOS CRÍTICOS

Actualmente dentro y los alrededores de la universidad de Guayaquil, que es nuestro objetivo,

tiene mucho congestionamiento, desorganización en los espacios asignados para

estacionamiento, lo que para los usuarios le dificultad al momento de buscar un lugar para

parquear, generando malestar, inseguridad e incluso los riesgos a las multas que imponen el

personal de tránsito acantonado en el sector, esto provocado por la falta de un sistema de

monitoreo y control ordenado de entrada y salida de cada usuario.

CAUSAS Y CONSECUENCIAS DEL PROBLEMA

A continuación, se demuestran las siguientes causas y consecuencias del problema.

Causas:

• Usuarios no autorizados en el momento parquear.

• Disponibilidad de parqueo

• Control de entrada y salida de los vehículos

Consecuencia:

• Provocar mucho congestionamiento

• Pérdida de tiempo

• Pérdida de control y desorganización

Page 25: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

4

DELIMITACIÓN DEL PROBLEMA

Tabla 1.Delimitación del Problema Campo

Desarrollo Software

Área:

Sistemas y redes

Aspecto:

Monitoreo de espacios de estacionamientos

Tema:

Diseño de un sistema de gestión, monitoreo y reserva de

espacios en estacionamientos públicos o privados a través

de la aplicación móvil Incorporando machine learning y

OpenCV en su gestión

Fuente: Trabajo de Investigación

Autor: Kevin Ortiz – Josué Salazar

FORMULACIÓN DEL PROBLEMA

1. ¿Cree usted que con un sistema de gestión de espacios de estacionamientos se podrá

obtener una mayor optimización y eficiencia al momento buscar un sitio disponible

para estacionar su vehículo?

Page 26: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

5

EVALUACIÓN DEL PROBLEMA

A continuación, se describen 6 aspectos en la evaluación del problema estos son los

siguientes:

• Delimitado: Gestión de espacios de estacionamiento, Universidad de Guayaquil

(Sede Centro: Víctor M. Rendón entre Baquerizo Moreno y Córdova)

• Evidente: Se va a crear un sistema optimizado para los paqueos vehiculares

• Concreto: Pretende solucionar el mal manejo de parqueos

• Original: Trae un aspecto nuevo e innovador referente a los estacionamientos

• Factible: Es factible ya que no requiere de mucho recurso a nivel económico

• Identifica los productos esperados: Si es útil, contribuye a la gestión de

estacionamientos en espacios públicos y privados

Page 27: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

6

OBJETIVOS

OBJETIVO GENERAL

• Diseñar un sistema de gestión y monitoreo de espacios en estacionamientos para los

usuarios, a través de una aplicación móvil compuesta por soluciones en machine

learning y OpenCV, que permita detectar e identificar a los espacios de

estacionamiento libres.

OBJETIVO ESPECIFICO

• Analizar la situación actual en la gestión a los estacionamientos

• Identificar nuevas estrategias a la gestión de estacionamientos para los usuarios

• Establecer los sitios o lugares de parqueos

• Utilizar un sistema de cámara de vigilancia para así determinar disponibilidades de

parqueo.

• Crear una plataforma móvil que permita gestionar espacios mediante video analítica.

Page 28: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

7

ALCANCE DEL PROBLEMA

Los alcances del problema son los siguientes:

▪ Diseño de un prototipo que permita a los usuarios acceder a la zona de parqueo a

través de una aplicación móvil y sea administrada por una plataforma web.

▪ Implementar un software dedicado a la detección de objetos con cámaras de vigilancia

▪ Aplicar un control para gestionar los espacios de estacionamientos.

JUSTIFICACIÓN E IMPORTANCIA

En los estacionamientos de la Universidad de Guayaquil existen una serie de espacios

concebidos para el parqueo de personal autorizado de la institución, con lo antes mencionado,

nuestra solución del problema plantea llevar un control de los estacionamientos, permitiendo

más facilidad al personal institucional para que en el menor tiempo posible pueda encontrar

y determinar su lugar de ubicación mediante el uso de la aplicación móvil, la cual puede

reducir los tiempos muertos.

Este sistema tendrá como avance tecnológico el uso de OpenCV, el cual a través de la

cámara de vigilancia nos permitirá monitorear constantemente los sitios de parqueos que se

encuentran disponibles u ocupados a cualquier hora y espacio de tiempo solicitado.

El OpenCV es una herramienta de software de visión artificial, la cual hoy en día es de mucha

utilidad porque permite identificar objetos, caras, clasificar acciones humanas en vídeo, hacer

tracking de movimientos de objetos, seguir el movimiento de los ojos, reconocer escenarios,

la detección de intrusos, monitorización de equipamientos, entre otros mediante video.

Page 29: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

8

METODOLOGÍA DE PROYECTO

Los resultados de esta investigación se basan en hacer un sistema para los usuarios las

cuales les permita determinar los estacionamientos disponibles a través de una aplicación

móvil e incluso detectar el objeto.

La metodología que se va aplicar en nuestro proyecto son las siguientes:

• Fase I: Recopilación de información dentro de la universidad de Guayaquil (personal,

docente, administrativo)

• Fase II: Diseño de la Implementación del prototipo para el control de entrada y salida

de estacionamiento

• Fase III: Monitoreo y Control de cada usuario por medio de la aplicación móvil y página

web dentro del parqueadero

Page 30: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

9

CAPITULO II

MARCO TEÓRICO

Antecedentes del Estudio

En la actualidad el incremento de vehículos se ha vuelto una necesidad en torno a las

personas, y más aún en las familias. La afluencia de vehículos en la ciudad es notoria debido

al grado de poder adquisitivo de un vehículo en la actualidad.

Desde que asumieron el control de tránsito los Agentes Municipales (ATM), tienen como

desafío disminuir el tráfico, ya que es un gran impacto que aqueja a toda la ciudad;

conductores indican que el caos vehicular ha aumentado en la ciudad, y que la hora pico se

ha extendido a prácticamente todo el día. La ATM, también incidió a que se establecería un

proceso para modernizar la tecnología para mejorar las intersecciones en la ciudad, señala

que un promedio de 200 autos puede ser paralizados en hora pico, si un bus se estanca en

una intersección, y apuntan que el problema del tráfico radica en las intersecciones de las

avenidas. (Pacheco, 2017)

Inrix ha definido a las horas pico de 06:00- 09:00 y de 16:00- 19:00. Sin embargo, a partir del

2016 se definen en función de los hábitos de conducción reales en cada ciudad. En Guayaquil

son entre 06:00 y 09:00 y entre 17:00 y 20:00, según la ATM (expreso, 2019)

Según la Consultora Internacional Inrix en un estudio realizado en el 2015 coloca a la ciudad

de Guayaquil en el puesto 21 como las ciudades con más congestión vehicular de la región,

mencionando que el número de horas de espera es de 33.2, con un 12 % de congestión al

día esto a diferencia de la ciudad de Bogotá la cual ocupa el primer lugar de América del Sur,

con un tiempo de espera de 79.8, y con un 33% congestión diaria. (Pacheco, 2017)

Page 31: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

10

Gráfico 1.Análisis estadístico de congestionamiento vehicular

Fuente: (Pacheco, 2017)

Autor: (Pacheco, 2017)

Según el Inrix para sacar el número promedio de horas de congestionamiento durante las

horas pico para cada ciudad se miden los 240 días hábiles. Los atascos registrados los fines

de semana tienen un porcentaje distinto al general.

Esto se da como resultado de factores tales como la pérdida de productividad de los

empleados, mayores costos de transporte y más contaminación.

Este proyecto va dirigido a los usuarios vehiculares para brindarles un buen servicio en los

estacionamientos, utilizando un sistema de visión artificial la cual nos facilitará reconocer los

objetos y los espacios de estacionamientos

Page 32: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

11

2.1- FUNDAMENTACIÓN TEÓRICA

2.1.1- ¿QUÉ ES MACHINE LEARNING?

Es inteligencia artificial que crea sistemas que aprenden de manera automatizada, es decir,

identificar patrones complejos en millones de datos, predecir comportamientos todo mediante

un algoritmo y que además de todo son capaces de mejorarse de manera independiente con

el tiempo. Existen dos tipos de Machine Learning, supervisado y no supervisado.

Gráfico 2.MACHINE LEARNING

Fuente: (roadshow, 2018)

Autor: (roadshow, 2018)

El aprendizaje supervisado es en pocas palabras aquel aprendizaje al que previamente le

has incluido etiquetas en la información para que él detecte patrones y por lo mismo

proyecciones o realice alguna acción

El aprendizaje no supervisado, el algoritmo se modifica solo y no contiene conocimiento a

priori, es decir ningún dato ha sido etiquetado, saca sus conclusiones de acuerdo al algoritmo

tomando factores de manera indistinta que no tienen ni nombre, ni orden, ni marca. (Alondra

Castro, 2017)

El machine learning es un método de análisis de datos que automatiza la construcción de

modelos analíticos. Es una rama de la inteligencia artificial basada en la idea de que los

sistemas pueden aprender de datos, identificar patrones y tomar decisiones con mínima

intervención humana. (SAS, 2019)

Page 33: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

12

2.1.2- ¿QUE ES LARAVEL?

Laravel es un nuevo y poderoso Framework PHP desarrollado por Taylor Otwell, que promete

llevar al lenguaje PHP a un nuevo nivel.

Gráfico 3.LARAVEL

Fuente: (ikerg1972, 2019)

Autor: (ikerg1972, 2019)

Laravel, propone una forma de desarrollar aplicaciones web de un modo mucho más ágil. Por

ejemplo, en Laravel opcionalmente podemos usar el patrón de diseño MVC (Modelo-Vista-

Controlador) tradicional, donde al igual que otros frameworks PHP, el controlador es

programado como una clase. Un controlador es una clase PHP que dispone de métodos

públicos que son el punto de entrada final de una petición HTTP (Request PHP) a nuestra

aplicación. Pero, Lavarel propone además una forma distinta y más directa de responder a la

solicitud HTTP, las Desarrollos en aplicaciones usando Laravel es muy sencillo,

fundamentalmente debido a su expresiva sintaxis, sus generadores de código, y su ORM

incluido de paquete llamado Eloquent ORM. (Que es laravel, 2013)

¿Por qué Laravel?

Laravel es un framework PHP, básicamente es un conjunto de clases PHP que hacen la

creación de tu proyecto web más fácil.

Page 34: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

13

Gestión de las rutas con Laravel

Nos permite gestionar de forma simple, pero potente, los endpoints de la aplicación. De

'http://www.example.com/posts' nos quedamos con la parte de '/posts', ahí le decimos a

Laravel "cuando vayan a '/posts' quiero que que realices esta acción. No solo gestiona de

'/posts' a una acción, sino que es capaz de distinguir entre 6 formas de ir a '/posts (Bonito,

2017)

2.1.3- ¿QUÉ ES OPENCV?

OpenCV (Open Source Computer Vision) es una librería software open-source de visión

artificial y machine learning. OpenCV provee una infraestructura para aplicaciones de visión

artificial.

Gráfico 4.OPENCV

Fuente: (Rosebrock, 2019)

Autor: (roadshow, 2018)

OpenCV tiene una licencia BSD, lo que permite utilizar y modificar el código, tiene una

comunidad de más de 47000 personas y más de 7 millones de descargadas. Es una librería

muy usada a nivel comercial, desde Google, Yahoo, Microsoft, Intel, IBM, Sony, Honda,

Toyota, Applied Minds, VideoSurf, Zeitera.

OpenCV está escrito en C++, tiene interfaces en C++, C, Python, Java y MATLAB interfaces

y funciona en Windows, Linux, Android y Mac OS. O (Gracia, 2013)

Page 35: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

14

¿PARA QUÉ SIRVE EL OPENCV?

Identificar objetos, caras, clasificar acciones humanas en vídeo, hacer tracking de

movimientos de objetos, extraer modelos 3D, encontrar imágenes similares, eliminar ojos

rojos, seguir el movimiento de los ojos, reconocer escenarios

Se usa en aplicaciones como la detección de intrusos en vídeos, monitorización de

equipamientos, ayuda a navegación de robots, inspeccionar etiquetas en productos. (Gracia,

2013)

2.1.4- ¿QUÉ ES PYTHON?

Python se define como un lenguaje de programación interpretado en donde la filosofía de

trabajo hace énfasis en que la sintaxis siempre asegure que el código pueda ser legible. Es

así mismo un lenguaje de programación multiparadigma, que puede soportar la orientación a

objetos, una programación imperativa y en una medida menor la programación funcional.

(Python (informática) | Qué es, para qué sirve y por qué usarlo?, 2018)

Gráfico 5.PYTHON

Fuente: (GONZÁLEZ, 2019)

Autor: (GONZÁLEZ, 2019)

Page 36: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

15

¿Para qué sirve Python?

Al hablar de para qué sirve Python hay que resaltar que uno de los objetivos con este lenguaje

de programación es que se automaticen procesos para que así se consiga ahorrar tiempo y

evitar complicaciones. Por esa razón son varias las soluciones que se logran con pocas líneas

de código en este programa. (Python (informática) | Qué es, para qué sirve y por qué usarlo?,

2018)

Características de Python

Python es definido como un lenguaje de programación multiparadigma. Lo anterior implica

que no se trata de forzar a quienes programas a que interioricen un estilo de programación

en especial, sino que son varios los estilos que se pueden implementar:

❖ Programación imperativa.

❖ Programación orientada a objetos.

❖ Programación funcional.

❖ Otros paradigmas al incluir extensiones.

Python se caracteriza porque usa tipado dinámico y conteo de referencias al administrar la

memoria. Además, se destaca su resolución dinámica de nombres, por ende, enlaza un

método y un nombre de variable al ejecutar el programa. (Python (informática) | Qué es, para

qué sirve y por qué usarlo?, 2018)

Page 37: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

16

2.1.5- ¿QUÉ ES IONIC?

Ionic es un framework para el desarrollo de aplicaciones híbridas, inicialmente pensado para

móviles y tablets, aunque ahora también capaz de implementar aplicaciones web e incluso

dentro de pocas aplicaciones de escritorio multiplataforma (Alvarez, Que es Ionic?, 2017)

Gráfico 6.IONIC

Fuente: (González, 2018)

Autor: (González, 2018)

¿QUÉ ES UNA APLICACIÓN HÍBRIDA?

Una aplicación híbrida es aquella que permite desarrollar apps para móviles en base a las

tecnologías web. las aplicaciones híbridas se ejecutan en lo que se denomina un “web view”,

que no es más que una especie de navegador integrado en el móvil y en el que solamente se

ejecuta la app híbrida. HTML + CSS + JavaScript.

Integración con Angular

Ionic está desarrollado sobre el framework JavaScript Angular. Esto quiere decir que para el

desarrollo con Ionic 2 podemos apoyarnos en todas las ventajas de desarrollo con Angular,

lo que nos permitirá contar con una excelente estructura de proyecto, el trabajo con buenas

prácticas, uso de patrones de diseño de software variados y una buena gama de

componentes y directivas. (Alvarez, Que es Ionic?, 2017)

Page 38: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

17

2.1.6- ¿QUÉ ES ANGULAR?

Angular es un framework de desarrollo para JavaScript creado por Google. La finalidad de

Angular es facilitarnos el desarrollo de aplicaciones web SPA y además darnos herramientas

para trabajar con los elementos de una web de una manera más sencilla y óptima.

Angular es la separación completa entre el front-end y el back-end en una aplicación web.

(Robles, 2019)

Gráfico 7.ANGULAR

Fuente: (nareshit, 2018)

Autor: (nareshit, 2018)

AngularJS es JavaScript. Es un proyecto de código abierto, realizado en JavaScript que

contiene un conjunto de librerías útiles para el desarrollo de aplicaciones web y propone una

serie de patrones de diseño para llevarlas a cabo. En pocas palabras, es lo que se conoce

como un framework para el desarrollo. (Alvarez, que es AngularJs, desarrollos Web, 2014)

¿QUE ES UNA APLICACIÓN WEB SPA DESARROLLADA CON ANGULAR?

Una aplicación web SPA creada con Angular es una web de una sola página, en la cual la

navegación entre secciones y páginas de la aplicación, así como la carga de datos, se realiza

de manera dinámica, casi instantánea, así síncronamente haciendo llamadas al servidor

(backend con un API REST) y sobre todo sin refrescar la página en ningún momento.

Es decir, las aplicaciones web que podemos hacer con Angular son reactivas y no recargan

el navegador, todo es muy dinámico y asíncrono con ajax. (Robles, 2019)

Page 39: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

18

2.1.7- ¿QUÉ ES Y PARA QUÉ SIRVE JAVASCRIPT?

JavaScript es un lenguaje de programación, al igual que PHP, si bien tiene diferencias

importantes con éste. JavaScript se utiliza principalmente del lado del cliente (es decir, se

ejecuta en nuestro ordenador, no en el servidor) permitiendo crear efectos atractivos y

dinámicos en las páginas web. Los navegadores modernos interpretan el código JavaScript

integrado en las páginas web.

Gráfico 8.JAVASCRIPT

Fuente: (DevCode)

Autor: (DevCode)

Para entender lo que es JavaScript consideremos lo siguiente. Un usuario escribe una

dirección web en su navegador, por ejemplo http://www.aprenderaprogramar.com. El servidor

recibe la petición y como respuesta a esa petición envía al ordenador del usuario código

HTML junto a código JavaScript. El código HTML se encarga de que en la pantalla se muestre

algo, por ejemplo, una imagen, un menú, etc. El código JavaScript se puede encargar de

crear efectos dinámicos en respuesta a acciones del usuario, por ejemplo, que se despliegue

un menú tipo acordeón cuando el usuario pasa el ratón por encima de un elemento del menú.

La ventaja de JavaScript es que al estar alojado en el ordenador del usuario los efectos son

muy rápidos y dinámicos. Al ser un lenguaje de programación permite toda la potencia de la

programación como uso de variables, condicionales, bucles, etc. También podemos citar

algún inconveniente: por ejemplo, si el usuario tiene desactivado JavaScript en su navegador,

Page 40: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

19

no se mostrarán los efectos. No obstante, hoy día la mayoría de los usuarios navegan por la

web con JavaScript activado. (¿QUÉ ES Y PARA QUÉ SIRVE JAVASCRIPT?, 2006)

2.1.8- ¿QUÉ ES TYPESCRIPT?

Gráfico 9.TYPESCRIPT

Fuente: (robertcooper, 2019)

Autor: (robertcooper, 2019)

TypeScript es un lenguaje de programación de código abierto desarrollado por Microsoft, el

cual cuenta con herramientas de programación orientada a objetos, muy favorable si se tienen

proyectos grandes. Anders Hejlsberg, arquitecto principal del desarrollo del lenguaje de

programación C#, es el principal participante en el desarrollo de este lenguaje.

TypeScript convierte su código en Javascript común. Es llamado también Superset de

Javascript, lo que significa que, si el navegador está basado en Javascript, este nunca llegará

a saber que el código original fue realizado con TypeScript y ejecutará el Javascript como

lenguaje original.

TypeScript es un superset hecho por Microsoft el cual tiene una sintaxis muy intuitiva y que

nos recuerda a otros lenguajes orientados a objetos. Agrega funcionalidades que extiende lo

que haría JavaScript por sí sólo, tal como Types y Decorators (htt)

Page 41: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

20

2.1.9- ¿QUÉ ES UN SUPERSET?

Se trata de un lenguaje escrito sobre otro lenguaje. En este caso Typescript es eso, un

lenguaje basado en el original, ofreciéndonos grandes beneficios como el descrito

anteriormente, aunque existen otros beneficios. Por ejemplo, mientras otros superset de

JavaScript nos alejan del código original, Types script, por el contrario, es muy similar a

JavaScript y a C# gracias a que su creador posee conocimientos de ambos lenguajes.

Actualmente Angular 2, uno de los frameworks más famosos de JavaScript, está siendo

desarrollando en TypeScript, para lo cual conocer este lenguaje será fundamental para

entender y darle un mejor uso a la nueva versión de Angular. (DevCode cursos, 2017)

TypeScript CLI

TypeScript CLI es la herramienta que nos va a ayudar a ‘transpilar’ nuestros archivos de

TypeScript a JavaScript. Podemos hacer entre otras cosas ‘transpilaciones’ globales, de un

solo archivo, elegir la versión de ECMAScript que queremos, etc (uriel, 2017). Recordando la

instalación:

npm install -g typescript

Para pasar de .ts a .js sólo necesitas ejecutar el comando

tsc "NombreDelArchivo".ts

Y al terminar, en el mismo directorio, encontrarás el .js trasformado con el mismo nombre de

tu archivo de TypeScript, y ya listo para usar para cualquier navegador.

Page 42: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

21

OBJETOS EN TYPESCRIPT

Un objeto es una abstracción de algo que existe en el mundo “real”, el cual llevamos todas

sus características a código. Estos objetos se crean por algo llamado “clases”. En TypeScript

tenemos la palabra reservada class (uriel, 2017). Ejemplo:

Es importante decir que una clase siempre tiene un constructor y ese constructor es lo primero

que se va a llamar por defecto cuando hagas una instancia de esa clase. Si tú no lo

implementas, por defecto es el constructor más sencillo.

Sin embargo, podemos tener parámetros obligatorios u opcionales, los opcionales que se

distinguen por tener un “?”.

constructor(_first_name?:string, _last_name?:string)

this.first_name = "_first_name";

this.last = "_last_name";

}

Para hacer una instancia de la clase, podemos crear una nueva variable o constante e indicar

la clase mediante la palabra new:

let personaUno = new Persona();

let personaDos = new Persona("Jorge");

let personaTres = new Persona("Jorge", "Cano");

¿Qué pasa si los parámetros de mi constructor no son opcionales?

En el caso de que tengamos parámetros obligatorios, no se podrá crear una instancia de la

clase sin mandar esos datos en el constructor:

Page 43: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

22

2.1.10- ¿QUÉ ES ELECTRON JS?

Electron.js es una plataforma para desarrollar aplicaciones de escritorio usando tecnologías

web (HTML, CSS y JavaScript) creada y mantenida por Github. Electron.js funciona creando

dos tipos de procesos, el proceso main y el proceso renderer. El primero es un proceso de

Node.js, este es nuestro proceso principal, viene a ser nuestra aplicación en sí misma, este

proceso tiene acceso a varias API de Electron.js solo para este proceso que nos ayudan a

comunicarnos con el SO y realizar distintas acciones o efectos.

El segundo (renderer) es un proceso de Chromium, con una diferencia, este Chromium tiene

un Node.js incorporado y acceso a todos sus módulos y los que instalemos con npm (esto

nos permitiría usar React.js, Angular.js, Polymer, etc. para desarrollar nuestra UI o cualquier

otra librería básicamente), por lo que desde nuestrorenderer podemos usar módulos como fs

para leer y escribir en el disco, o hacer peticiones a una base de datos directamente.

Además de acceder a los módulos de Node.js y npm, Electron.js nos da acceso a una pocas

API en este proceso igual que hace con el procesomain. (Platzi, 2018)

Gráfico 10.ELECTRON JS MAIN PROCESS

Fuente: (Platzi, 2018)

Autor: (Platzi, 2018)

Page 44: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

23

2.1.11- ¿Qué es socket.io?

Es una herramienta que nos permite crear comunicaciones en tiempo real entre

cliente/servidor.

Los servidores real time son muy utilizados para sistema de chat y de comentarios, en este

post crearemos un servidor real time que reporte números aleatorios al cliente y del cliente al

servidor para esto utilizaremos el módulo socket.io. (Decena, 2018)

Gráfico 11.SOCKET.IO SERVER

Fuente: (Decena, 2018)

Autor: (Decena, 2018)

Inicio y estructura del proyecto

Vamos iniciar un proyecto de npm desde la carpeta deseada ejecutando en consola:

• npm init –yes

Socket.io es una librería que nos permite controlar eventos en tiempo real a través de

conexiones TCP y nos ayuda a evitar problemas de compatibilidad entre equipos.

Page 45: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

24

Está desarrollado completamente en Javascript y, su objetivo es hacer que las aplicaciones

en tiempo real tengan posibilidad de ejecutarse en cualquier navegador, incluidos los

dispositivos móviles, salvando las diferencias entre los diferentes protocolos.

Existen muchas aplicaciones y ejemplos que se pueden hacer con socket.io. Por ejemplo,

controlar un coche vía Web con node.js instalado en Raspberry Pi, control de Arduino con

node.js, o incluso un chat entre distintos equipos. (geekytheory, 2018)

2.1.12- ¿QUÉ ES SQL?

Gráfico 12.DIAGRAMA DE SQL

Fuente: (Ozar, 2016)

Autor: (Ozar, 2016)

SQL (Structured Query Language) es un lenguaje estándar e interactivo de acceso a bases

de datos relacionales que permite especificar diversos tipos de operaciones en ellas, gracias

a la utilización del álgebra y de cálculos relacionales, el SQL brinda la posibilidad de realizar

consultas con el objetivo de recuperar información de las bases de datos de manera sencilla.

Las consultas toman la forma de un lenguaje de comandos que permite seleccionar, insertar,

actualizar, averiguar la ubicación de los datos, y más. SQL es un lenguaje declarativo

estándar internacional de comunicación dentro de las bases de datos que nos permite a todos

el acceso y manipulación de datos en una base de datos, y además se puede integrar a

Page 46: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

25

lenguajes de programación, por ejemplo, ASP o PHP, y en combinación con cualquier base

de datos específica, por ejemplo MySQL, SQL Server, MS Access, entre otras. (Prado, 2017)

El Lenguaje de Consulta Estructurado popularmente conocido por sus siglas en inglés como

SQL, es un tipo de lenguaje de programación que ayuda a solucionar problemas específicos

o relacionados con la definición, manipulación e integridad de la información representada

por los datos que se almacenan en las bases de datos. (Ramos, 2018)

2.1.13- ¿Qué es una base de datos?

Una base de datos es una aplicación independiente que almacena una colección de datos.

Así que podemos decir que se trata de una colección de información organizada por campos,

registros y archivos, de manera que se pueda seleccionar rápidamente los fragmentos de

datos que se necesiten.

Gráfico 13.MOTOR DE BASE DE DATOS RELACIONAL

Fuente: (Lozada, 2018)

Autor: (Lozada, 2018)

Page 47: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

26

2.1.14- BASE DE DATOS RELACIONAL

Una base de datos es relacional cuando esta cumple con el modelo relacional, que se refiere

a la relación que existe entre las distintas entidades o tablas de la base. También conocidas

como sistemas de gestión de bases de datos relacionales (RDBMS), las cuales nos permiten

almacenar y gestionar gran cantidad de datos. Los datos se almacenan en diferentes tablas

y las relaciones se establecen usando claves primarias u otras llaves conocidas como claves

externas o foráneas. Existen un sinnúmero de sistemas de gestión de bases de datos

relacionales y cada una de ellas posee una forma diferente de manejar su data, algunos

ejemplos de RDBMS son: Oracle, MySQL, SQL Server, entre otras.

Gráfico 14.OTROS MOTORES DE BASE DE DATOS

Fuente: (cristianglopez, 2017)

Autor: (cristianglopez, 2017)

Sin embargo, con el paso de los años, estos se fueron unificando y universalizando para dar

paso a mejores técnicas y mejores formas de manejo. Así nació SQL. (Prado, 2017)

Page 48: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

27

Gráfico 15.INTEGRACIÓN DE BASE DE DATOS

Fuente: (Pearlman, 2019)

Autor: (Pearlman, 2019)

2.1.15- ¿QUÉ ES UNA RED LAN?

Una red de área local (Local Área Network, o LAN) es un grupo de equipos de cómputo y

dispositivos asociados que comparten una línea de comunicación común o un enlace

inalámbrico con un servidor. Normalmente, una LAN abarca computadoras y periféricos

conectados a un servidor dentro de un área geográfica distinta, como una oficina o un

establecimiento comercial. Las computadoras y otros dispositivos móviles utilizan una

conexión LAN para compartir recursos como una impresora o un almacenamiento en red.

(Rouse, 2018)

Una red de área local puede servir a sólo dos o tres usuarios (por ejemplo, en una red de

oficina pequeña) o a varios cientos de usuarios en una oficina más grande. Las redes LAN

incluyen cables, conmutadores, enrutadores y otros componentes que permiten a los usuarios

conectarse a servidores internos, sitios web y otras redes LAN a través de redes de área

extensa (WAN). (Rouse, 2018)

Esto es debido fundamentalmente a la característica más significativa de una LAN: la de

permitir que se interconecten múltiples computadoras, llamados para este caso nodos, con el

fin de acceder a los datos y recursos que estos almacenan o tienen conectados. Esto significa

Page 49: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

28

que una computadora puede acceder tanto a los documentos como a las impresoras, discos

externos y otros dispositivos y periféricos conectados a estas PC`s remotas, lo que nos

permite ampliar el abanico de tareas que podemos realizar con nuestra propia computadora

Ruptura. (Rouse, 2018)

La importancia de una LAN en el mundo actual

Sin duda alguna, el mundo actual no podría funcionar sin la ayuda de un sistema que permita

compartir datos y recursos a través de las distancias, y en este punto, las redes LAN son

prácticamente la columna vertebral en donde las más grandes empresas del mundo se

apoyan para llevar a cabo sus actividades, tanto locales como internacionales. (tecnologia-

facil, 2011)

Soluciones que proporcionan las redes LAN

En una organización puede haber múltiples computadoras (PC) que requieren de varios

servicios a la vez, como, por ejemplo, las impresoras; la red LAN permite disminuir costos al

permitir compartir recursos, en vez de implementarlos para cada PC. Además, permite el

acceso a la información de una PC a las demás conectadas en la red, lo que optimiza los

procesos y permite que los datos sean resguardados en un solo lugar. (reportedigital, 2015)

De esta manera, cuando se describe qué es una red LAN, se puede decir que es la red que

permite compartir bases de datos (se elimina la redundancia de datos), aplicaciones (se

reduce la redundancia de software) y periféricos (se reduce la adquisición de hardware). Por

otra parte, permite disponer de otros medios de comunicación, como son el correo electrónico

y el chat. (reportedigital, 2015)

Para las organizaciones una red de área local repercute en los gastos, ya que es una

herramienta importante de ahorro en tiempo y dinero. (reportedigital, 2015)

Page 50: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

29

Características de la red LAN:

• Opera dentro de un área geográfica limitada.

• Permite el multiacceso a medios con alto ancho de banda.

• Controla la red de forma privada con administración local.

• Proporciona conectividad continua a los servicios locales.

• Conecta dispositivos físicamente adyacentes.

Tipos de redes LAN

Cuando se determina qué es una red LAN, se facilita la elección de la tipología de la red. Para

esto hay que analizar varias circunstancias específicas de cada empresa, como son el

número de PC instaladas, la distancia entre ellas, la posibilidad de instalación del cableado,

los requerimientos de rapidez de procesamiento de datos o la capacidad para enviar diversos

tipos de información a través de la red. (reportedigital, 2015)

Como ejemplo de lo antes mencionado, se puede realizar una comparación de los tres tipos

de redes habituales. Para ello, supongamos que el tipo Ethernet y ARCNET se instalan con

cable coaxial y Token Ring con cable de par trenzado apantallado. En cuanto a las facilidades

de instalación, ARCNET resulta ser la más fácil de instalar debido a su topología, mientras

Ethernet y Token Ring necesitan de mayor capacitación o personal calificado para su

implementación. (reportedigital, 2015)

Lo que respecta a la rapidez de trasmisión, Ethernet es la más veloz, 10/100/1000 Mb/s,

ARCNET se ejecuta a 2,5 Mb/s y Token Ring, a 4 Mb/s. En la actualidad se desarrolla una

versión de Token Ring a 16 Mb/s, pero requiere de un cableado con características más

costosas. (reportedigital, 2015)

Page 51: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

30

Dispositivos básicos para conexión de redes

Las redes informáticas son grupos de ordenadores conectados mediante una estructura de

cableado o mediante un sistema inalámbrico, que les permite compartir archivos y servicios

entre sí. Para lograr un buen rendimiento de dichas redes, es necesario contar con varios

dispositivos para realizar las conexiones y unir nuestra red con otras redes, y ofrecer un

sistema de comunicación mucho más seguro y eficiente. (culturacion, 2016)

Gráfico 16.ESTRUCTURA DE ORDENADORES POR CONEXIÓN LAN

Fuente: (culturacion, 2016)

Autor: (culturacion, 2016)

Entre los dispositivos denominados básicos que son utilizados para el diseño de redes,

tenemos los siguientes:

• Modems.

• Hubs.

• Repetidores.

• Bridges.

• Routers.

• Gateways.

• Brouters.

Page 52: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

31

Más adelante, vamos a describir cada uno de estos componentes para que el lector tenga

una idea de para que se usa cada uno.

Módems

Los populares módems, son dispositivos que tienen la importante función de comunicar los

equipos informáticos que forman parte de una red con el mundo exterior, es decir, es el

aparato en donde se conecta el cable principal de red y que recibe la información de la línea

telefónica. Estos dispositivos pueden conectar varias redes entre sí.

El funcionamiento de los modem es simple. El ordenador o red emisora envía señales

digitales que son convertidas a señales analógicas en el modem emisor y viajan a través de

líneas telefónicas hasta su destino, donde el modem receptor convierte la señal analógica

nuevamente en una señal digital que podrá ser interpretada por un ordenador.

El modem cuenta con una interfaz de comunicación en serie (RS-232) y una interfaz de línea

telefónica RJ-11. Las velocidades de transmisión de datos de los módems actuales van desde

57500 bps hasta 76800 bps.

Hubs

Otro de los dispositivos básicos para la conexión de redes, es el Hub. Este dispositivo, permite

expandir la red a tantos ordenadores como deseemos, utilizando la topología de punto

estrella, que consiste en dividir el punto de red en tantas salidas como tenga el Hub.

Los Hub reciben los datos a través de la conexión de entrada y ofrecen varias salidas para

conectar a varios ordenadores. En la mayoría de las redes, podemos conectar Hubs en serie

para aumentar la cantidad de quipos que pueden estar conectados en una red.

Page 53: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

32

Repetidores

Cuando se transmiten señales a través de cables, estas tienden a degradarse a medida que

llegan más lejos. Este fenómeno, también puede verse en redes inalámbricas.

Afortunadamente, existe una respuesta para esta situación, que consiste en utilizar los

famosos repetidores.

Estos dispositivos toman la señal distorsionada de un cable o de una señal y la regeneran

para transmitir la señal de la red o los datos a lugares mucho más remotos, utilizando el

modelo de referencia OSI.

Los repetidores sólo pueden trabajar en señales o paquetes de datos que trabajen con los

mismos protocolos de comunicación, es decir, será imposible que un repetidor mejore la señal

de una red Ethernet y lo envíe a una red Token Ring.

Los repetidores son dispositivos que deben ser utilizados para unir segmentos alejados de

una red LAN. Estos no realizan ningún tipo de filtrado o re-direccionamiento, sólo conectan

segmentos de red y restauran señales degradadas.

Bridges

Los Bridges son dispositivos que tiene una finalidad muy parecida a la de los repetidores,

pero a diferencia de estos, pueden dividir una red para aislar un ala de esta y poder realizar

las reparaciones que se requieran.

Los Bridges son utilizados, por lo general, para:

• Extender la longitud de un segmento de red.

• Incrementar el número de ordenadores de una red.

• Reducir el efecto de cuello de botella de una red.

Page 54: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

33

• Dividir redes sobrecargadas.

• Enlazar medios físicos

Router

Los router quizás son los dispositivos más conocidos de las redes. Estos dispositivos, tienen

la particularidad de realizar el trabajo de un bridge ofreciendo una serie de bondades extra,

como, por ejemplo, la posibilidad de determinar el camino más rápido para enviar datos a

través de la red y por supuesto, realizar el filtrado de tráfico en un segmento de red

determinado.

Estos dispositivos pueden conmutar y encaminar los paquetes de información que son

transmitidos a través de la red de intercambio de información de protocolos de comunicación.

Existen diferentes tipos de router, los estáticos, dinámicos y de difusión y pueden trabajar con

cables o de manera inalámbrica, aumentado el rango de alcance de estos dispositivos que

llegan a gestionar toda la información que pasa hacia un segmento de la red.

Brouter

Los Brouter son un híbrido entre Router y bridge, pudiendo trabajar como un tipo de

dispositivo u otro, de acuerdo al segmento de red en donde se esté trabajando.

Gateway

Estos dispositivos activan la comunicación entre arquitecturas y entornos y realizan el

empaquetado y conversión de paquetes de datos que se van a transmitir a través de una red.

Page 55: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

34

2.1.16- ¿Qué es y para qué sirve el Cloud Computing? El Cloud Computing o computación en nube significa que el hardware y software es

proporcionado como un servicio de otra empresa a través de Internet, por lo general de una

manera completamente transparente.

Gráfico 17.CLOUD COMPUTING

Fuente: (editafacil, 2017)

Autor: (editafacil, 2017)

Este nuevo término promete varias ventajas atractivas para las empresas y los usuarios

finales. La computación en la nube es un término general para la prestación de servicios

alojados a través de Internet, y permite a las empresas consumir recursos informáticos como

una utilidad (igual que la electricidad) en lugar de tener que construir y mantener

infraestructuras de computación en tu casa o tus oficinas. (editafacil, 2017)

La mayoría de nosotros usamos la computación en nube durante todo el día sin darnos

cuenta. Si te sientas en tu PC y escribes una consulta en Google, la computadora no está

haciendo mucho en la búsqueda de las respuestas que necesita: no es más que un

mensajero. Las palabras que se escriben son transportadas rápidamente por la red a uno de

los cientos de miles de ordenadores conectados en clúster, que desentierran sus resultados

y los envía rápidamente de nuevo a ti mediante Google.

Page 56: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

35

Por ejemplo: cuando se hace una búsqueda en Google, el verdadero trabajo en la búsqueda

de sus respuestas podría ser realizado por un ordenador que se encuentra en California,

Dublín, Tokio, o Beijing, tu no lo sabes y lo más probable es que no te importe en absoluto.

(editafacil, 2017)

Tipos de computación en la nube

Podríamos catalogar tres clases de computación en la nube, donde los diferentes servicios

son proporcionados para ti o tu empresa. Hay que tener en cuenta que existe cierta

superposición entre ellos.

Infraestructura como Servicio (IaaS): un alojamiento web ordinario es un simple ejemplo

de IaaS, en el cual pagas una suscripción mensual o una tarifa por gigabytes o megabytes

consumidos. Esto significa que estás comprando el acceso al hardware de computación en

bruto través de la red, tales como servidores o almacenamiento.

Software como Servicio (SaaS): significa que se utiliza una aplicación completa que se

ejecuta en el sistema de otra persona, estos pueden ser, por ejemplo: el correo electrónico

basado en web y documentos de Google.

Plataforma como servicio (PaaS): significa poder desarrollar aplicaciones haciendo uso de

herramientas basadas en la Web para que se ejecuten en sistemas de software y hardware

proporcionado por otra compañía. Así, por ejemplo, podrías desarrollar tu propio sitio web de

comercio electrónico, pero tienes todo, incluyendo el carrito de la compra, pago, envío y el

mecanismo de pago ejecutándose en el servidor de un comerciante. Algunos ejemplos de

PaaS son Force.com de salesforce.com y Google App Engine. (editafacil, 2017)

Page 57: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

36

¿Cómo funciona el Cloud computing?

En un sistema Cloud computing se puede encontrar dos partes claramente diferenciadas del

sistema. La primera es el frontend o interfaz del usuario y la segunda es el backend, que es

el servicio en la nube en sí mismo.

La interfaz del usuario incluye la red informática que este use y la aplicación necesaria para

acceder al servicio en la nube. Una interfaz sencilla para el usuario que está conectada al

backend a través de internet. En la parte del backend se puede encontrar todos los sistemas

que usa la nube para almacenar la información, los servidores que usa y los ordenadores del

sistema. (gluppi, 2018)

Todo este engranaje se conecta a un servidor central que administra el funcionamiento de

todo el sistema, supervisa el tráfico del mismo y se asegura de que las demandas de los

clientes se realicen sin ningún tipo de inconveniente. Las reglas del sistema siguen unos

protocolos y usan un software middleware que facilita la conexión entre las computadoras en

red para que se comuniquen entre sí. Un sistema muy complejo a simple vista pero que

repercute en grandes beneficios para usuarios y empresas como son las comunicaciones

unificadas.

La tecnología de cloud computing está revolucionando la forma en la que empresas y

personas individuales realizan una gran multitud de tareas y servicios distintos. Encontrar

toda la información de forma segura y rápida a través de una conexión a internet sin tener

que descargar ningún programa adicional ni pagar diferentes licencias para cada ordenador

es una revolución que empresas de todo el mundo están sabiendo aprovechar. (gluppi, 2018)

Page 58: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

37

2.1.17- ¿QUÉ ES UNA CÁMARA IP?

Una Cámara IP (también conocidas como cámaras Web o de Red) son videocámaras

especialmente diseñadas para enviar las señales (video, y en algunos casos audio) a través

de Internet desde un explorador (por ejemplo, el Internet Explorer) o a través de concentrador

(un HUB o un SWITCH) en una Red Local (LAN)

Gráfico 18.CÁMARA IP

Fuente: (camaraipwifi, 2019)

Autor: (camaraipwifi, 2019)

En las cámaras IP pueden integrarse aplicaciones como detección de presencia (incluso el

envío 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 qué ha saltado la detección de presencia y se graben imágenes de lo

sucedido. (TVC, 2014)

Page 59: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

38

¿Qué necesito para ver una cámara IP desde una red externa?

Lo más importante para poder usar una cámara IP es disponer de una conexión a Internet si

tenemos intención de poder las imágenes en una red externa, para ello conecto la cámara IP

a un Router ADSL, XDSL, o Cable modem (o a un HUB) u otros sistemas de banda ancha.

No es necesario IP fija, ya que en el caso de IP dinámica podemos acudir a sitios como

http://www.no-ip.com (algunas cámaras vienen con sitios de resolución dinámica de IP`s

especiales) para la resolución DNS. (TVC, 2014)

¿Qué puedo hacer con una cámara IP? ¿Qué ventajas tiene?

Las cámaras IP se utilizan mucho en entornos de vigilancia:

• En el hogar: para poder " vigilar " tu casa, negocio, empresa, a personas mayores, a

niños o bebes, y hacerlo desde tu trabajo, desde tu lugar de vacaciones, desde

cualquier lugar con una conexión Internet y un explorer.

• En el trabajo: puede utilizarse para controlar puntos de tu comercio a los que tu vista

no alcanza y no quieres dejar sin vigilancia o para ver lo que ocurre en tu cadena de

tiendas desde tu casa.

• Empresas: para vigilar almacenes, aparcamientos, obras, entradas.

• Hostelería: restaurantes, hoteles, o simplemente para promoción de estos.

• Zonas deportivas

Y no sólo para vigilancia: muchos organismos de turismo utilizan cámaras IP para que los

futuros turistas o gente interesada puedan ver la ciudad que van a visitar o el tiempo que hace

o algún monumento, y han decidido poner cámaras para que puedan verse por Internet. (TVC,

2014)

Page 60: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

39

¿Cuántas personas pueden conectarse simultáneamente a una cámara IP?

El número de usuarios que admite una cámara IP o un servidor de Vídeo depende del tipo de

cámara, pero en general es de alrededor de 10 a 20. También se puede enviar "snapshots"

automáticamente (con un periodo de refresco establecido (por ejemplo, unos segundos)) a

una Web determinada, para que el público en general pueda ver esas imágenes. (TVC, 2014)

Gráfico 19.CONEXIÓN A CAMARA DE VIDEO

Fuente: (ticoespia, 2017)

Autor: (ticoespia, 2017)

¿Se puede transmitir audio?

En general, la mayoría de cámaras IP disponen de micrófonos de alta sensibilidad

incorporados en la propia cámara, con objeto de poder transmitir audio mediante el protocolo

de conexión UDP. (TVC, 2014)

Page 61: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

40

¿Qué sistemas de compresión utilizan las Cámaras IP?

El sistema de Compresión de Imagen de las cámaras IP sirve para hacer que la información

obtenida de la cámara, que es mucha información y de gran tamaño, y que si no se comprime

adecuadamente es imposible que se envíe por los cables de una red Local (LAN) o de las

líneas telefónicas. Al comprimir pretendemos que ocupe lo menos posible, sin que las

imágenes enviadas sufran pérdidas en la calidad o en la visualización. Audio y Vídeo nos

exigen conexiones con mayor ancho de banda) (TVC, 2014)

Para el acceso a las Cámaras IP ¿Es necesario algún software específico?

Para la visualización de las Cámaras IP lo único que se necesita es que en el sistema

operativo del PC se encuentre instalado el Microsoft Internet Explorer, gracias al cual

tendremos acceso a la dirección propia de la cámara IP, que nos mostrará las imágenes de

lo que en ese momento este sucediendo. Esto resulta extremadamente útil, ya que permitirá

poder visualizar la cámara desde cualquier ordenador, en cualquier parte del mundo, sin

necesidad de haber instalado un software específico (TVC, 2014)

¿Es posible configurar las Cámaras IP de forma remota?

Las cámaras IP y los servidores de Vídeo solamente necesitan conectarse directamente a un

PC mediante un cable de red "cruzado" cuando se instalan por primera vez.

Una vez instalada, cualquier modificación de la configuración, de los ajustes de calidad de

imagen, de las contraseñas de acceso, se realizará de forma remota desde cualquier punto

del mundo, bastará con conectarse a la cámara en modo "Administrador". (TVC, 2014)

Page 62: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

41

2.1.18- Protocolo RTSP

RTSP es un protocolo de capa de aplicación, no orientado a la conexión. En lugar de esto el

servidor RTSP mantiene una sesión asociada a un identificador (Session ID).

En la mayoría de los casos RTSP usa TCP para el envío de datos de control del reproductor

(mensajes "out of band") y UDP para los datos de audio y vídeo (mensajes "in band"), aunque

también puede usar TCP en caso de que se necesitara confiabilidad en el envío de paquetes,

lo cual no es provisto por UDP. (profesores.elo, 2018)

El concepto de "in band" y "out of band" se refiere a que el protocolo es capaz de enviar

distintos tipos de información por distintos puertos.

De forma intencionada, el protocolo es similar en sintaxis y operación a HTTP, por lo que los

mecanismos de expansión añadidos a HTTP pueden, en muchos casos, añadirse a RTSP.

Sin embargo, RTSP difiere de HTTP en un número significativo de aspectos:

• RTSP introduce nuevos métodos y tiene un identificador de protocolo diferente.

• Un servidor RTSP necesita mantener el estado de la conexión.

• Tanto el servidor como el cliente pueden hacer solicitudes.

• Los datos son transportados por un protocolo diferente.

El protocolo soporta las siguientes operaciones:

Recuperar contenidos multimedia del servidor: El cliente puede solicitar la descripción de una

presentación por HTTP o cualquier otro método. Si la presentación es multicast, la descripción

contiene los puertos y las direcciones que serán usados. Si la presentación es unicast el

cliente es el que proporciona el destino, por motivos de seguridad. (profesores.elo, 2018)

Page 63: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

42

Invitación de un servidor multimedia a una conferencia: Un servidor puede ser invitado a

unirse a una conferencia existente en lugar de reproducir la presentación o grabar todo o una

parte del contenido. Este modo es útil para aplicaciones de enseñanza distribuida donde

diferentes partes de la conferencia van tomando parte en la discusión.

Adición multimedia a una presentación existente: Particularmente para presentaciones en

vivo, útil si el servidor puede avisar al cliente sobre los nuevos contenidos disponibles.

En la siguiente figura se ilustra el esquema de comunicación entre un cliente (Web Browser)

y el servidor RTSP (Web Server). (profesores.elo, 2018)

Gráfico 20.Protocolo RTSP

Fuente: (profesores.elo, 2018)

Autor: (profesores.elo, 2018)

Page 64: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

43

1. Web Browser solicita Presentation Description File a Web Server.

2. Web Server encapsula Presentation Description File en un mensaje HTTP de respuesta y

envía el mensaje al Web Browser.

3. Cuando el Web browser recibe mensaje HTTP de respuesta, invoca a un Media Player (eg.

Quicktime) basándose en el campo Payload Type (PT) del mensaje.

4. Media Player envía una petición RTSP SETUP y Media Server responde RTSP OK.

5. Media Player envía una petición RTSP PLAY y Media Server responde RTSP OK.

6. Media Server inicia el streaming de video hacia Media player.

7. Si usuario desea pausar la transmisión, envía RTSP PAUSE a Media Server y éste

responderá RTSP OK.

8. Cuando el usuario ha terminado, Media player envía RTSP TEARDOWN, a lo que Media

server responde RTSP OK.

Finalmente se hace una breve descripción del significado de las solicitudes RTSP

SETUP

Especifica cómo debe transportarse un tipo específico de audio o video. La solicitud debe

hacerse antes de que se envíe una petición PLAY. El mensaje contiene la dirección URL y

un especificador de transporte. La respuesta del servidor usualmente confirma los parámetros

elegidos y determina los campos incompletos, como por ejemplo los puertos elegidos por el

servidor.

Page 65: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

44

PLAY

Permite el envío de un stream multimedia (audio o video). Las solicitudes PLAY pueden

acumularse enviando múltiples solicitudes PLAY. La dirección URL puede estar asociada a 1

sólo flujo multimedia o a varios. Debe especificarse un rango de reproducción, en caso

contrario el flujo es reproducido de principio a fin. Y en caso de ser pausado, seguirá desde

el mismo punto, cuando el cliente reanude la reproducción.

PAUSE

Detiene temporalmente la reproducción de 1 o más flujos multimedia. Posteriormente se

puede reanudar la reproducción mediante la solicitud PLAY. Puede especificarse un rango

en la pausa, en caso contrario la pausa será inmediata.

TEARDOWN

Se utiliza para terminar la sesión. Cuando el cliente envía esta solicitud, el servidor detiene

todos los flujos asociados a la sesión, y libera los recursos para su posterior uso.

Ventajas:

Seguro: RTSP reutiliza mecanismos de seguridad web ya sea a los protocolos de transporte

(TLS) o dentro del mismo protocolo. Todas las formas de identificación HTTP son

directamente aplicables.

Capacidad multi-CMS: Tiene la capacidad de mostrar diferentes streams de video

independientes a uno o varios CMS.

Control de dispositivos de grabación: El protocolo puede controlar dispositivos de

grabación y reproducción (p.ej cámaras IP RTSP). (Angeles, 2018)

Page 66: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

45

2.2- FUNDAMENTACIÓN LEGAL

LEY ORGÁNICA DE TRANSPORTE TERRESTRE, TRÁNSITO Y

SEGURIDAD VIAL

Art. 162.- Las calzadas son para uso exclusivo de los vehículos. Excepcionalmente podrán

ser usadas por los peatones cuando los sitios destinados para su circulación se encuentren

obstruidos. En este caso, deberán hacerlo extremando las precauciones necesarias para

transitar con seguridad.

Art. 163.- Las aceras son para uso exclusivo de los peatones. Excepcionalmente podrán ser

utilizadas por los vehículos para atravesarlas para ingresar o salir de los estacionamientos.

Art. 164.- Las bermas sólo podrán ser usadas por los vehículos, con precaución, para

circulación de emergencia y detenciones de igual carácter. Los peatones podrán usarlas para

transitar de

frente al sentido de la circulación, cuando no existan otras zonas transitables más seguras.

Art. 165.- La Agencia Nacional de Tránsito o los GADs, en el ámbito de sus competencias

podrán establecer limitaciones al uso o circulación de peatones, vehículos y animales o al

estacionamiento vehicular.

Art. 171.- Si como resultado de un accidente de tránsito quedare abandonado un vehículo,

se procederá a la aprehensión del mismo y será puesto a órdenes del fiscal a fin de que dé

inicio a las investigaciones pertinentes.

En los demás casos se entiende por abandono del vehículo, el hecho de dejarlo en la vía

pública sin conductor o en sitios donde no esté prohibido el estacionamiento, por un espacio

Page 67: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

46

mayor de 24 horas. En los sitios prohibidos para el estacionamiento, se considera

abandonado el vehículo transcurrido 5 minutos después de haberlo dejado el conductor. Los

vehículos abandonados o estacionados en contravención a lo dispuesto en este Reglamento

serán conducidos a los patios de retención vehicular de las Unidades Administrativas o de los

GADs, según el caso. Los gastos del traslado y de bodegaje del vehículo serán de cargo del

contraventor.

HIPOTESIS

Existen diversos sistemas de estacionamiento inteligentes que pueden hacer posible

aumentar la capacidad de los parqueos esto se debe a la gran cantidad de usuarios pueden

parquearse para poder realizar sus actividades laborales normalmente, pero pocos

indicadores de parqueo que permitan a los usuarios encontrar un lugar donde estacionarse

de una manera más rápida reduciendo, de esta manera, la congestión en los

estacionamientos.

VARIABLES DE LA INVESTIGACIÓN

Variables dependientes:

Diseño de un sistema de gestión, monitoreo con la aplicación móvil machine learning y

OpenCV en su gestión

Variable independiente;

Reserva de espacios de estacionamientos (disponibles, ocupado o reservado)

Page 68: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

47

2.3- DEFINICIONES CONCEPTUALES

JavaScript: es un lenguaje de programación, al igual que PHP, se lo utiliza principalmente

del lado del cliente (es decir, se ejecuta en nuestro ordenador y no en el servidor) permitiendo

crear efectos atractivos y dinámicos en las páginas web.

SQL: es un tipo de lenguaje de programación que ayuda a solucionar problemas específicos

o relacionados con la definición, manipulación e integridad de la información representada

por los datos que se almacenan en las bases de datos

TypeScript: es un superset hecho por Microsoft el cual tiene una sintaxis muy intuitiva y que

nos recuerda a otros lenguajes orientados a objetos. Agrega funcionalidades que extiende lo

que haría JavaScript por sí sólo, tal como Types y Decorators

Angular: es un framework de desarrollo para JavaScript creado por Google. La finalidad de

Angular es facilitarnos el desarrollo de aplicaciones web SPA

Ionic: es un framework para el desarrollo de aplicaciones híbridas, inicialmente pensado para

móviles y tabletas,

Machine learning: es un método de análisis de datos que automatiza la construcción de

modelos analíticos. Es una rama de la inteligencia artificial basada en la idea de que los

sistemas pueden aprender de datos, identificar patrones y tomar decisiones con mínima

intervención humana.

Python: es un lenguaje de programación interpretado que es muy conocido, multiparadigma

con soporte de orientación a objetos y que es muy bien considerado por quienes se dedican

a estas tareas.

Page 69: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

48

OpenCV (Open Source Computer Vision): es una librería open source de visión por

computador, análisis de imagen y aprendizaje automático. Para ello dispone de infinitud de

algoritmos que permiten, con sólo escribir unas pocas líneas de código, identificar rostros,

reconocer objetos, clasificarlos, detectar movimientos de manos.

OpenCV es una librería multiplataforma disponible para Windows, Mac, Linux y Android

distribuida bajo licencia BSD. Puede programarse con C, C++, Python, Java y Matlab.

Cámara IP (también conocidas como cámaras Web o de Red): son videocámaras

especialmente diseñadas para enviar las señales (video, y en algunos casos audio) a través

de Internet desde un explorador (por ejemplo, el Internet Explorer) o a través de concentrador

(un HUB o un SWITCH) en una Red Local (LAN)

Page 70: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

49

CAPITULO III

PROPUESTA TECNOLÓGICA Dentro de este capítulo se realizará el desarrollo del respectivo proyecto “Diseño de un

sistema de gestión, monitoreo y reserva de espacios en estacionamientos públicos o privados

a través de la aplicación móvil Incorporando machine learning y OpenCV en la gestión”, con

el respectivo análisis necesario en cuanto a las herramientas utilizadas en la implementación

del proyecto dentro de la Universidad de Guayaquil Facultad de ciencias matemáticas y física

de las calles Víctor Manuel Rendón 429 entre Baquerizo Moreno y Córdova.

Con el propósito de recolectar información referente al comportamiento de los usuarios y el

desarrollo utilizado para este prototipo. La propuesta constara de varios tipos de enfoques

con el respectivo análisis a estas metodologías las cuales son: Técnica, operacional,

económica y legal pudiendo medir el 100% de confiabilidad en los datos validando la

información necesaria en base a las metodologías enfocadas en esta etapa del proceso.

3.1- Análisis de Factibilidad

Con respecto a este análisis de factibilidad agrego que existen pocas fuentes de información

necesarias para complementar el desarrollo del prototipo, sin embrago se realizará un

detallado análisis de implementación al concluir los objetivos previstos para el proyecto

cumpliendo con los criterios establecidos.

En el análisis de factibilidad busca validar todos los componentes y herramientas tanto

hardware con software, en este proceso se consideró que la propuesta del proyecto es viable

debido a que se cuentan con todas las herramientas para el desarrollo de este prototipo, los

cuales se detallan a continuación:

Page 71: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

50

• Servidor en la nube

• Cámara IP (compatible con RTSP)

• Lenguajes de programación

• Bases de datos

• Máquina para ambiente de desarrollo

• Máquina para ambiente de pre producción

3.1.1 Factibilidad Operacional

En cuanto a esta etapa de factibilidad operacional se realizó un barrido de todas las

actividades que han tenido mayor relevancia para llevar a cabo el proyecto de forma que se

pueda brindar una muestra del grado de eficiencia, además se cuenta con el apoyo de la

Universidad de Guayaquil - Facultad de Ciencias Matemáticas y Física ubicado en las calles

Víctor Manuel Rendón 429 entre Baquerizo Moreno y Córdova.

Sitio donde se facilitó el espacio para realizar las operaciones de testeo y en la cual el

personal a cargo ha brindado todas las facilidades para dicha prueba obteniendo resultados

exitosos durante la misma.

Sobre el punto de vista operacional se considera que el proyecto es completamente factible,

de acuerdo con los lugares donde se realizó el streaming con las cámaras de seguridad.

3.1.2 Factibilidad Técnica

Dentro de la siguiente tabla se detallan todos los componentes tanto hardware y software en

la implementación del prototipo del proyecto de titulación.

Page 72: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

51

Tabla 2.COMPONENTES DEL PROYECTO Componentes de software

Es una librería de visión artificial que crea

sistemas de manera automatizada, para el

desarrollo de identificar patrones de datos

mediante un algoritmo

Es una librería software de visión artificial y

machine learning para el desarrollo de

aplicaciones (Identificar objetos, caras, acciones

humanas en vídeo, hacer tracking de

movimientos de objetos, encontrar imágenes

similares, reconocer escenario, etc.)

Phyton es un lenguaje de programación

interpretado y multiparadigma es decir conjunto

de instrucciones que permitir operar con datos

de entrada y salida agrupándolos y Compilarlos.

Es un framework igual que php que sirve para

desarrollar aplicaciones web mediante de un

diseño de patrón MVC (Modelo-Vista-

Controlador) que son el punto de entrada final de

una petición HTTP (Request PHP) para

responder a la solicitud HTTP.

Page 73: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

52

Es un lenguaje de programación que permite que

la página web sea más dinámica e atractivo

Es un framework la cual contiene un proporciona

una serie de patrones de diseño para el

desarrollo de aplicaciones web

TypeScript es un lenguaje de programación de

código abierto desarrollado por Microsoft cuenta

con herramientas de programación orientada a

objetos

Es un framework de código abierto para el

desarrollo de aplicaciones móviles híbridas

Es un sistema que almacenan y administran los

datos.

Es una plataforma para desarrollar aplicaciones

de escritorio usando tecnologías web (HTML,

CSS y JavaScript) creada y mantenida por

Github. Electron.js

Page 74: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

53

Es una herramienta que nos permite crear

comunicaciones en tiempo real entre

cliente/servidor.

Los servidores real time son muy utilizados para

sistema de chat y de comentarios, en este post

crearemos un servidor real time que reporte

números aleatorios al cliente y del cliente al

servidor para esto utilizaremos el módulo

socket.io.

Es un conjunto de herramientas y servicios de

cloud computing para poder realizar distintos

tipos de actividades en la nube. Desde

almacenamiento a la gestión de instancias,

imágenes virtuales, desarrollo de aplicaciones

móviles, etc.

Componentes de hardware

Es una computadora portátil que permite

almacenar, descargar, visualizar los datos

de forma ágil

Son videocámaras diseñadas para enviar

videos, imágenes, mail la cual pueden

integrarse en cualquier aplicación como

detección de intruso, visión en vivo, etc.

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 75: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

54

3.1.3 Factibilidad Legal

La propuesta al usar herramientas de origen Open Source no recae en ningún tipo de

quebranto o violación en algún parámetro legal. Por lo tanto, se puede utilizar la

infraestructura lógica y física presentada de modo gratuito sin recargo alguno.

3.1.4 Factibilidad Económica

Para la elaboración de este prototipo se requirió varios elementos de hardware que se

figuraran en la tabla N° 3 dónde se detallará descripción y costo. En cuanto al software al

usar programas Open Source no se generó algún costo adicional.

Tabla 3.COSTOS DEL PROYECTO Cantidad Descripción de Producto Costo Unitario Total

1 Laptop Lenovo para desarrollo 780

1 Cámara IP 40

1 Servicios de cloud en nube 60

Otros 90

Total: 970

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 76: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

55

3.2 Etapas de la metodología del proyecto

3.2.1 Metodología de trabajo

La metodología a utilizar en el proyecto de tesis es el procedimiento en campo, cuyo enfoque

del tema de tesis se efectúa en el proyecto y desarrollo integrado en el trabajo de equipo

donde se lleva a cabo los procesos de manera ideal con el único fin de lograr más orden y

control en los estacionamientos vehiculares

3.2.2 Propósito de la documentación

El Propósito de esta documentación es la indagación requerida y necesaria de todos los

miembros involucrados en el transcurso de este proyecto, haciendo énfasis en la

investigación necesaria para la elaboración, así como la implementación del prototipo

conjunto al desarrollo y los temas complementarios a la investigación.

3.2.3 Alcance

En la presente propuesta del proyecto de titulación buscará abarcar el desarrollo y la

implementación de un sistema de gestión de parqueos, así como la integración de una

aplicación móvil para los usuarios finales que consuman dicho servicio, el cual se encuentra

almacenado en la nube y podrá ser utilizado por los usuarios móviles a través de la aplicación

y acceso a internet una vez registrados a la plataforma.

Se estima, que el desarrollo de la propuesta estará cumpliendo los objetivos establecidos

anteriormente mencionados y culminará de forma total una vez finalizada las actividades y

tareas dentro de período de desarrollo del prototipo.

Page 77: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

56

3.2.4 ETAPAS DE METODOLOGÍA DEL PROYECTO

Para etapa del desarrollo de este trabajo de titulación se opta por la metodología AGILE que

consta de 5 fases que se mencionaran a continuación:

• Análisis y diagnóstico: Para esta fase se procederá elaborar un plan de trabajo y

análisis de framework de desarrollo que se utilizarán para el despliegue de la

plataforma, así como la integración con las cámaras de seguridad.

• Diseño: En esta fase se procederá a realizar un levantamiento de información idóneo

de la situación actual de la universidad de Guayaquil y sus alrededores, así como la

infraestructura necesaria para arrancar el prototipo y poner en marcha la solución

propuesta a dicha institución.

• Implementación: En esta fase se procede a implementación del ambiente de la

proforma web, móvil y escritorio utilizando los siguientes framework, lenguajes de

programación y herramientas de desarrollo:

➢ Node js

➢ Angular 8

➢ Laravel 5.8

➢ Librería OpenCV

➢ PYTON 3

➢ MySQL

➢ socket io

Page 78: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

57

Para la parte de desarrollo móvil se utilizaron los siguientes recursos:

➢ Ionic 4 framework de desarrollo móvil

En cuanto al desarrollo de la plataforma de escritorio de enlace cámaras

seguridad con la plataforma en nube

➢ Electrón js

Plataformas y Utilidades:

➢ Sistemas operativo Windows

➢ Putty

Herramientas de desarrollo:

➢ Xampp

➢ Visual estudio code

➢ Android estudió

• Implementación:

1.- Realizamos una conexión remota a nuestro servidor mediante putty ingresando el

respectivo hostname o dirección IP

Page 79: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

58

Gráfico 21.PANTALLA DE HERRAMIENTA PUTTY

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

2.- Iniciamos sesión con nuestras respectivas credenciales de nuestro servidor

Gráfico 22.Pantalla de Terminal del servidor

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 80: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

59

3.- Actualizamos la paquetería del sistema operativo con el siguiente comando:

sudo apt update

Gráfico 23.ACTUALIZACIÓN DE PAQUETES DE UBUNTU

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

4.- Descargamos xampp con el siguiente comando:

Wget https://www.apachefriends.org/xampp-files/7.2.22/xampp-linux-x64-7.2.22-0-

installer.run

Gráfico 24.TERMINAL DE DESCARGA DE XAMPP

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 81: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

60

5.- Instalamos xampp dándole permisos de ejecución al archivo descargado y luego

ejecutándolo con los comandos:

chmod +x xampp-linux-x64-7.2.22-0-installer.run

./xampp-linux-x64-7.2.22-0-installer.run

Luego aceptamos las configuraciones por defecto

Gráfico 25.INSTALACIÓN DE XAMPP

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

6.- Descargamos composer y lo configuramos para que use la versión de php que trae

xampp con los siguientes comandos:

sudo curl -s https://getcomposer.org/installer | /opt/lampp/bin/php

Page 82: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

61

Gráfico 26.DESCARGANDO PAQUETERIA DE COMPOSER

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

sudo ln -s /opt/lampp/bin/php /usr/local/bin/php

Gráfico 27.Pantalla de Terminal

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

sudo mv composer.phar /usr/local/bin/composer

Gráfico 28.COMPOSER

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Podemos confirmar que todos los pasos están activos ahora ejecutamos el comando:

composer

Page 83: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

62

Gráfico 29.INSTALACIÓN COMPLETA DE COMPOSER

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Instalación entorno Node.js

1.- Descargamos Node js, para esto usaremos la herramienta Node js versión manager

(NVM), descargándola del siguiente enlace

wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.34.0/install.sh | bash

Gráfico 30.INSTALACIÓN DE NODE JS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 84: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

63

Para verificar debemos salir y volver a entrar a la terminal del servidor, luego ejecutar el

comando:

Command -v nvm

Gráfico 31. -V NVM

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

2.- Ahora descargamos la última versión de Node js con el comando:

nvm install node

Gráfico 32.DESCARGAR ULTIMA VERSIÓN DE NODE JS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 85: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

64

Instalación entorno Python

1.- Por defecto, Ubuntu nos trae preinstalado Python en sus versiones 2 y 3, lo que nos hará

falta será el manejador de paquetes pip, este lo instalamos con el comando:

sudo apt install python3-pip

Gráfico 33. INSTALACIÓN DE PYTHON

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

2.- Ahora instalaremos las 2 dependencias que necesitamos para este proyecto, las cuales

son opencv y socket.io, las cuales instalamos con el comando:

pip3 install opencv-python

Gráfico 34.INSTALACIÓN DE DEPENDENCIAS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 86: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

65

pip3 install "python-socketio[client]"

Gráfico 35.INSTALACIÓN DE PYTHON-SOCKETIO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Obteniendo código desde gitlab :Tesis_backend

1.- Nos ubicamos en la carpeta /op/lampp/htdocs y clonamos el repositorio tesis_backend con

el comando:

git clone https://gitlab.com/DaveSalazar/tesis_backend.git

Gráfico 36.CLONACION DE REPOSITORIO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 87: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

66

2- Nos ubicamos dentro de la carpeta tesis_backend y ejecutamos el comando:

composer install

Este nos instalara todas las dependencias necesarias para la ejecución del modulo

Gráfico 37.INSTALACIÓN DE DEPENDENCIAS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

2.- Ahora configuramos nuestro archivo. env, este es el que gestiona todas las variables de

entorno del módulo, generamos una nueva con el comando:

sudo cp .env.example .env

Gráfico 38.VARIABLES DE ENTORNO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 88: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

67

3.- Luego procedemos a editar las configuraciones con el comando: sudo nano. env

Gráfico 39.CONFIGURACION DE ENV

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

4.-Aquí podemos setear las conexiones al a base de datos y entre otras configuraciones, para

ejemplo práctico setearemos todo por defecto y sin contraseña.

La base de datos será parkingdb, usuario root y sin contraseña

Gráfico 40.INGRESO DE ACCESO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 89: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

68

5.- Procederemos a crear la base de datos. Activamos MySQL con el comando:

Sudo /opt/lamp/lamp start

Gráfico 41.ACTIVAMOS MYSQL

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Luego nos ubicamos en la carpeta /op/lampp/bin y ejecutamos: ./myqsl Y creamos la base de

datos desde la consola escribiendo.

create database parkingdb;

Gráfico 42.CREACION DE LA BASE DE DATOS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 90: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

69

6.- Luego regresamos a la carpeta /opt/lampp/htdocs/tesis_backend y ejecutamos los

siguientes comandos:

sudo Php artisan key:generate

sudo Php artisan jwt:secret

sudo Php artisan migrate

sudo Php artisan db:seed

Gráfico 43.PANTALLA TERMINAL

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

tesis-video-stream-server

1.- Nos ubicamos en la carpeta /opt/lampp/htdocs y clonamos el repositorio con el comando:

git clone https://gitlab.com/DaveSalazar/tesis-video-stream-server.git

Page 91: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

70

Gráfico 44.CLONACION DE REPOSITORIA GITLAB

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

2.- Entramos a la carpeta tesis-video-stream-server y ejecutamos el comando npm install, se

instalarán las respectivas dependencias del proyecto.

Gráfico 45.INSTALACIÓN DE DEPENDENCIAS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 92: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

71

3.- Luego nos ayudaremos de la herramienta pm2 para gestionar el despliegue de la aplicación. Este lo instalamos con el comando: npm install pm2 -g

Gráfico 46.HERRAMIENTA PM2

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

4.- Dentro de la carpeta tesis-video-stream-server ejecutamos el módulo con el comando pm2

start main.js

Gráfico 47.COMANDO START MAIN.JS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 93: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

72

5.- Nos ubicamos en la carpeta /opt/lampp/htdocs y clonamos el repositorio con el comando:

Git clone https://gitlab.com/DaveSalazar/tesis-opencv-module.git

Gráfico 48.COMANDO GIT CLONE

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

6.- Ejecutamos el módulo y lo dejamos como demonio con el comando python3 main.py &

Gráfico 49.COMANDO PYTHON3 MAIN.PY &

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Tesis-frontend

1.- En nuestro ambiente local descargamos el repositorio de angular y ionic con el comando

git clone

Page 94: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

73

https://gitlab.com/DaveSalazar/tesis-project.git (debemos tener instalado git en el

ambiente local)

2.- Nos ubicamos dentro de la carpeta frontend-admin y ejecutamos el comando: npm install

Gráfico 50.INSTALACIÓN DE NPM

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

2.- Nos ubicamos dentro de la carpeta frontend-admin y ejecutamos el comando: npm install

Gráfico 51.INSTALACIÓN DEL PROJECTO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 95: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

74

3.- Usamos el editor de código de preferencia y editamos el archivo environment.prod.ts

Escribimos la url de nuestro servidor mas /tesis_backend/public, similar a lo siguiente:

Gráfico 52.ESCRIBIMOS LA URL DEL SERVIDOR

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

4.- Realizaremos el build de nuestra aplicación con el comando: ng build –prod

Gráfico 53.COMANDO NG BUILD-PROD

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 96: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

75

Esto generara una carpeta dist con la cual el frontend está listo para ser desplegado

5.- Se debe empacar la carpeta dist en un zip y subirla al servidor mediante ftp, para este

caso usaremos el programa winscp, este nos abrirá una ventana donde pondremos las

credenciales del servidor a conectarnos.

Gráfico 54.HERRAMIENTA WINSCP

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

6.- Pasamos el proyecto empacado al servidor arrastrándolo a la ventana de la derecha.

Gráfico 55.EMPAQUETADO DE LOS ARCHIVOS

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 97: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

76

7.- Descomprimimos el archivo con el comando unzip, este lo instalamos con sudo apt unzip

Gráfico 56.COMANDO UNZIP

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Gráfico 57.DESCOMPRECIÓN DEL ARCHIVO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 98: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

77

Movemos la carpeta descomprimida a /opt/lampp/htdocs y le cambiamos el nombre a

tesis_frontend

Gráfico 58.CAMBIO DE NOMBRE DE LA CARPETA

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Si todos los pasos han sido seguidos correctamente, se podrá acceder completamente a

todas las funcionalidades de la plataforma

Gráfico 59.PANTALLA DE INGRESO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 99: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

78

3.3 - CRITERIOS DE VALIDACIÓN DE LA PROPUESTA

El criterio de validación del proyecto está compuesto de análisis y desarrollo del prototipo

automatizado para el monitoreo de un sector del total de estacionamientos de parqueo dentro

de la Universidad De Guayaquil, el cual medirá el impacto de las variables en los procesos

de manera que se identifique los cambios y de los resultados obtenido de las encuestas

cumpliendo las necesidades de los usuarios

3.3.1- ENCUESTAS

La encuesta se hizo en base a una población de 100 personas considerando ahí el total de

la población que está orientado al personal administrativo, docentes y estudiantes de la

Universidad de Guayaquil asociados a la problemática a resolver.

3.3.2 -PROCESAMIENTO Y ANÁLISIS

Para llevar a cabo el estudio analítico se procederá tabular los resultados obtenidos de las

encuestas y graficarlas. De este modo se podrá interpretar los resultados de modo más

sencillo y de fácil comprensión

Page 100: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

79

3.3.3- RESULTADOS DE LA ENCUESTA DIRIJIDA PARA LOS USUARIOS DE

LA UNIVERSIDAD DE GUAYAQUIL

1.- ¿Cuánto tiempo te toma buscando un parqueadero dentro de la Universidad de

Guayaquil?

TABLA 4.Pregunta 1

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados los obtuvimos de la encuesta es del 0 a 5 minutos es de 11.8%, el 5 a 10

minutos es de 42.1%,10 a 20 minutos es de 27.6%, Más de 20 minutos es 5% son el tiempo

que se demoran buscando parqueaderos y el 18.4% restante no saben ya que ellos no tienen

automóviles

ALTERNATIVA CANTIDAD PORCENTAJE

0 A 5 MINUTOS 12 11.8%

5 A 10 MINUTOS 42 42.1%

10 A 20 MINUTOS 27 27.6%

MAS DE 20 MINUTOS 17 18.4%

NO SABEN 3 1%

TOTAL 100 100%

0

10

20

30

40

50

60

70

0 A 5 MINUTOS 5 A 10 MINUTOS 10 A 20 MINUTOS MAS DE 20 MINUTOS

NO SABEN

Cuánto tiempo te toma buscando un parqueadero

CANTIDAD PORCENTAJE

Gráfico 60.GRAFICO DE ENCUESTA PREGUNTA 1

Page 101: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

80

2.- ¿Le parecen ineficientes los sistemas actuales de parqueo?

Tabla 5.Pregunta 2

ALTERNATIVA CANTIDAD PORCENTAJE

SI 50 53.9%

NO 20 19.7%

TAL VEZ 30 26.3%

TOTAL 100 100%

Gráfico 61.GRAFICO DE ENCUESTA PREGUNTA 2

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados lo obtuvimos a través de las encuestas son los siguientes: El 53.9% dijeron

que, SI son ineficiente los sistemas de parqueos ya que no cumple con sus necesidades, el

19.7% NO estuvieron de acuerdo ya que algunos sistemas de parqueos se le hace fácil

manejarlo y el 26.3% restante están indecisos ya que la mitad del mismo no tiene ningún tipo

vehicular.

0

10

20

30

40

50

60

70

80

SI NO TAL VEZ

Le parecen ineficientes los sistemas de parqueo

CANTIDAD

Page 102: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

81

3.- ¿A qué le da más importancia a la hora de parquear?

Tabla 6. Pregunta 3

ALTERNATIVA CANTIDAD PORCENTAJE

TIEMPO 25 30.3%

UBICACIÓN 57 60.5%

NO LE DAS MUCHA IMPORTANCIA 8 9.2%

TOTAL 100 100%

Gráfico 62.GRAFICO DE ENCUESTA PREGUNTA 3

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados lo obtuvimos a través de las encuestas son los siguientes: El 30.3% le da

importancia al tiempo, el 60.5% le da importancia a la ubicación y el 9.2% no le da

importancia al momento de parquear.

0

20

40

60

80

100

TIEMPO UBICACIÓN NO LE DAS MUCHAIMPORTANCIA

qué le da más importancia a la hora de parquear

CANTIDAD PORCENTAJE

Page 103: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

82

4.- ¿Cuántas veces frecuentas el mismo parqueadero?

Tabla 7.Pregunta 4

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados de las encuestas obtuvimos son los siguientes: El 23.7% nunca frecuenta al

parqueadero, 52.6% frecuente de 1 a 3 veces al parqueadero y 23.7% van más de 3 veces

frecuenta al parqueadero.

ALTERNATIVA CANTIDAD PORCENTAJE

NUNCA 20 23.7%

1 A 3 VECES 47 52.6%

MAS DE 3 VECES 20 23.7%

TOTAL 100 100%

0

50

100

NUNCA 1 A 3 VECES MAS DE 3 VECES

Cuántas veces frecuentas el mismo parqueadero

CANTIDAD PORCENTAJE

Gráfico 63..GRAFICO DE ENCUESTA PREGUNTA 4

Page 104: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

83

5.- ¿Ha perdido tiempo buscando parqueo?

Tabla 8.Pregunta 5

ALTERNATIVA CANTIDAD PORCENTAJE

SI 58 76.3%

NO 8 7.9%

TAL VEZ 15 18.4%

TOTAL 100 100%

Gráfico 64.GRAFICO DE ENCUESTA PREGUNTA 5

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados de las encuestas obtuvimos son los siguientes: el 76.3% dijeron que pierden

tiempo buscando parqueadero, el 7.9% no estuvieron de acuerdo ya que si les alcanza el

tiempo para buscar el parqueadero y el 18.4% restante están indecisos.

0

10

20

30

40

50

60

70

80

90

SI NO TAL VEZ

Haz perdido tiempo buscando parqueo

CANTIDAD PORCENTAJE

Page 105: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

84

6.- ¿Le gustaría la implementación de un software para el parqueo?

Tabla 9. Pregunta 6

ALTERNATIVA CANTIDAD PORCENTAJE

SI 75 76.3%

NO 5 5.3%

TAL VEZ 20 18.4%

TOTAL 100 100%

Gráfico 65.GRAFICO DE ENCUESTA PREGUNTA 6

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados de las encuestas obtuvimos son los siguientes: 76.3% dijeron que SI de

implementar el software, 5.3% dijeron que no implementaría un software para el parqueadero

y el 18.4% están indecisos de la implementación del software.

0

10

20

30

40

50

60

SI NO TAL VEZ

Le gustaría la implementación de un software para el parqueo

Porcentaje Cantidad

Page 106: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

85

7.- ¿Le gustaría reducir el tiempo de búsqueda de un sitio de parqueo?

Tabla 10. Pregunta 7

ALTERNATIVA CANTIDAD PORCENTAJE

SI 90 90.8%

NO 0 0%

TAL VEZ 10 9.2%

TOTAL 100 100%

Gráfico 66.GRAFICO DE ENCUESTA PREGUNTA 7

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados de las encuestas obtuvimos son los siguientes: el 90.8% dijeron que SI le

gustaría reducir el tiempo búsqueda al sitio de parqueadero el 0% NO están de acuerdo Y

UN 9.2% DIJIERON TAL VEZ reducirían el tiempo de búsqueda para un sitio de parqueo

0

10

20

30

40

50

60

70

80

90

SI NO

Reduciria el tiempo de búsqueda de un sitio de parqueo

PORCENTAJE CANTIDAD

Page 107: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

86

8.- ¿Con qué frecuencia se presentan congestiones al momento de parquear?

Tabla 11. Pregunta 8

ALTERNATIVA CANTIDAD PORCENTAJE

SIEMPRE 70 48%

DE VEZ EN CUANDO 26 49.3%

CASI NUNCA 4 2.7%

TOTAL 100 100%

Gráfico 67.GRAFICO DE ENCUESTA PREGUNTA 8

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados de las encuestas obtuvimos son: El 48% dicen que SIEMPRE hay

congestionamiento al momento de parquear, 49.3% dicen que DE VEZ EN CUANDO hay

congestionamiento al momento de parquear y el 2.7% CASI NUNCA presenta

congestionamiento al momento de parquear.

0%

10%

20%

30%

40%

50%

60%

70%

80%

SIEMPRE DE VEZ EN CUANDO CASI NUNCA

CONGESTIONAMIENTO DE PARQUEO

SIEMPRE DE VEZ EN CUANDO CASI NUNCA

Page 108: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

87

9.- Poniéndose en el lugar de los usuarios del parqueadero, ¿estaría usted dispuesto a

acceder a un sistema que le indicará dónde debe parquear desde el momento en el que

entra y así no perder tiempo?

Tabla 12. Pregunta 9

ALTERNATIVA CANTIDAD PORCENTAJE

SI 91 90.8%

NO 3 2.6%

TAL VEZ 6 6.6%

TOTAL 100 100%

Gráfico 68.GRAFICO DE ENCUESTA PREGUNTA 9

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Los resultados de las encuestas obtenidos son: El 90.8%% SI le gustarían que le muestren

donde parquearse, 2.6%% NO le gustaría que le muestren donde parquearse y el 6.6%%

TAL VEZ le gustarían que le muestren donde parquearse ya que aún están indecisos.

0

10

20

30

40

50

60

si no tal vez

Le gustaria que muestren donde parquear

si no tal vez

Page 109: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

88

CAPÍTULO IV

CRITERIOS DE ACEPTACIÓN DEL PRODUCTO O SERVICIO

Tabla 13. Matriz de Aceptación del Producto

CRITERIOS DEL PROYECTO CUMPLIMIENTO % CUMPLIMIENTO

Instalación y configuración de la cámara IP. X 100 %

Ejecución del Proyecto en forma local. X 100 %

Instalación y configuración del servidor en la nube. X 100 %

Diseño de la arquitectura y red X 100 %

Realización de las encuestas. X 100 %

Cronograma de Actividades X 100 %

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 110: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

89

CONCLUSIONES

El desarrollo e implementación de esta propuesta se lograron cumplir todos y cada uno de los objetivos

planteados obteniendo como resultados las siguientes conclusiones.

OpenCV es una librería de software que, gracias a la combinación de 2 elementos, importantes como

la adquisición de imágenes a través de las cámaras de video vigilancia y el segundo llevado a cabo por

el procesamiento de la información trasmitida a través del servidor local conectados a nuestro servidor

en la nube con lo cual mediante la conexión se procede a optimizar resultado simulando la acción que

permite reconocer objetos y tomar una decisión tal con interpreta un cerebro humano a través de los

algoritmos utilizados.

Los reconocimientos de los espacios disponibles para los estacionamientos se procesan mediante la

visión de la cámara de seguridad en conjunto con los sistemas de la aplicación móvil y la plataforma

web realizando operaciones de toma de decisiones.

Este trabajo presenta un enfoque alternativo para tratar el problema expuesto en los parqueaderos, éste

se basa en el uso de técnicas de visión artificial, la base fundamental es la detección de bordes en cada

lugar de estacionamiento mediante esta técnica podemos discreta el estado ocupado o libre de este

sitio.

El uso de visión artificial en este tipo de aplicaciones permite reducir el número de nodos sensores lo

cual se ve reflejado en la reducción de costos y también en la reducción de consumo energético, dicho

esto, este tipo de tecnologías es muy viable para este tipo de aplicaciones. (Cristian Erazo, 2017)

Page 111: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

90

RECOMENDACIONES

• La para llevar a cabo esta implementación se debe contar con bases solidad en

programación y desarrollo de app móviles, e arquitectura de servicios, así como el

despliegue en servidores en la nube.

• Realizar pruebas en ambientes controlados de testing y de manera local tratando de

corregir posibles errores al momento de publicar la plataforma producción, así como

pruebas de conectividad con las cámaras de seguridad.

• Identificar los posibles factores de riesgo en cuanto a la seguridad de los usuarios

finales que consumirán en servicio en la nube.

• Tener un servidor de respaldo en caso de un posible fallo o anomalía presentada en

el momento del despliegue de la plataforma

• De la misma manera tener todo el código fuente respaldado en un repositorio en cual

permita disponer de control de versiones de la plataforma

Page 112: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

91

BIBLIOGRAFÍA

Bibliografía (s.f.). Obtenido de https://platzi.com/blog/typescript/

(s.f.).

¿QUÉ ES Y PARA QUÉ SIRVE JAVASCRIPT? (2006). Obtenido de ¿QUÉ ES Y PARA QUÉ SIRVE

JAVASCRIPT?:

https://www.aprenderaprogramar.com/attachments/article/590/CU00731B%20Que%20es

%20para%20sirve%20JavaScript%20embeber%20HTML%20ejemplo%20sencillo.pdf

Alondra Castro, M. L. (11 de agosto de 2017). ¿QUÉ ES MACHINE LEARNING Y PARA QUÉ SIRVE?

Obtenido de ¿QUÉ ES MACHINE LEARNING Y PARA QUÉ SIRVE?:

https://www.inbest.cloud/comunidad/qu%C3%A9-es-machine-learning-y-para-qu%C3%A9-

sirve

Alvarez, M. A. (28 de agosto de 2014). que es AngularJs, desarrollos Web. Obtenido de que es

AngularJs: https://desarrolloweb.com/articulos/que-es-angularjs-descripcion-framework-

javascript-conceptos.html

Alvarez, M. A. (2 de Marzo de 2017). Que es Ionic? Obtenido de Manual de Ionic:

https://desarrolloweb.com/articulos/que-es-ionic2.html

Angeles, N. (4 de julio de 2018). tecnosinergia.zendesk. Obtenido de tecnosinergia.zendesk:

https://tecnosinergia.zendesk.com/hc/es/community/posts/115000357991-Protocolo-RTSP-

Para-que-sirve-

Bonito, S. (28 de junio de 2017). Porque Laravel? Obtenido de https://www.drauta.com/por-que-

laravel

camaraipwifi. (24 de mayo de 2019). camaraipwifi.com. Obtenido de camaraipwifi.com:

https://camaraipwifi.com/wp-content/uploads/2019/01/Camara-IP-WIFI-de-Seguridad-

Victure-Modelo-PC540.jpg

chiefit.me. (27 de junio de 2019). chiefit.me. Obtenido de chiefit.me: https://chiefit.me/wp-

content/uploads/2019/06/Amazon-Web-Services_logo835x396.png

Cristian Erazo, S. N. (3 de agosto de 2017). repositorio.utn.edu.ec. Obtenido de

repositorio.utn.edu.ec:

http://repositorio.utn.edu.ec/bitstream/123456789/9075/2/ART%C3%8DCULO.pdf

cristianglopez. (10 de mayo de 2017). cristianglopez. Obtenido de cristianglopez:

http://cristianglopez.weebly.com/uploads/3/9/7/5/39757782/9782599_orig.png

culturacion. (6 de enero de 2016). culturacion. Obtenido de culturacion:

https://culturacion.com/dispositivos-basicos-para-conexion-de-redes/

Decena, E. (23 de julio de 2018). medium.com. Obtenido de medium.com:

https://medium.com/@eddydecena/servidor-real-time-con-socket-io-18e84d39d12b

Page 113: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

92

DevCode. (s.f.). Obtenido de

https://www.google.com/url?sa=i&source=images&cd=&ved=2ahUKEwjx44mmwcbkAhWBs

lkKHRi6BRIQjRx6BAgBEAQ&url=https%3A%2F%2Fdevcode.la%2Ftutoriales%2Ffunciones-en-

javascript%2F&psig=AOvVaw12Va2VUKQLrJdqO3E-hc-s&ust=1568213662392827

DevCode cursos, M. C. (2017). ¿Qué es TypeScript? Obtenido de ¿Qué es TypeScript?:

https://devcode.la/blog/que-es-typescript/

diezdediez.es. (5 de junio de 2012). diezdediez.es. Obtenido de diezdediez.es:

http://diezdediez.es/blog/que-es-amazon-web-services/

editafacil. (11 de Febrero de 2017). editafacil. Obtenido de editafacil: http://blog.editafacil.es/que-

es-y-para-que-sirve-el-cloud-computing/

expreso. (11 de agosto de 2019). expreso. Obtenido de La consultora Inrix ubica a Guayaquil en el

puesto 91 de 200 ciudades principales con más tráfico en el mundo. Expertos analizan las

causas de la congestión.: https://www.expreso.ec/guayaquil/trafico-guayaquil-vehiculos-

demora-inrix-IA2323280

geekytheory. (17 de enero de 2018). geekytheory.com. Obtenido de geekytheory.com:

https://geekytheory.com/introduccion-a-socket-io

gluppi. (26 de agosto de 2018). gluppi. Obtenido de gluppi: https://gluppi.com/que-es-cloud-

computing/

González, A. S. (28 de febrero de 2018). como-programar.net. Obtenido de como-programar.net:

https://como-programar.net/wp-content/uploads/2019/04/ionic-background-mode.png

GONZÁLEZ, G. (13 de agosto de 2019). genbeta. Obtenido de genbeta:

https://i.blogs.es/62f583/python/450_1000.jpg

Gracia, L. (9 de octubre de 2013). ¿Qué es OpenCV? Obtenido de ¿Qué es OpenCV?:

https://unpocodejava.com/2013/10/09/que-es-opencv/

ikerg1972. (19 de mayo de 2019). CURSO DE LARAVEL. Obtenido de

https://i2.wp.com/www.ikerg1972.com/wp-

content/uploads/2019/05/LARAVEL.png?fit=801%2C401&ssl=1

Lozada, A. (16 de abril de 2018). ed.team. Obtenido de ed.team:

https://drupal.ed.team/sites/default/files/2018-04/sql.jpg

nareshit. (4 de mayo de 2018). nareshit. Obtenido de nareshit: https://nareshit.com/wp-

content/uploads/2018/08/angular-JS-online-training-nareshit.jpg

Ortiz, J. S.-K. (2019). Guayaquil - Ecuador.

Ozar, B. (22 de septiembre de 2016). brentozar. Obtenido de brentozar:

https://www.brentozar.com/wp-content/uploads/2018/09/Polybase.png

Pacheco, J. P. (20 de septiembre de 2017). repositorio ug. Obtenido de repositorio ug:

http://repositorio.ug.edu.ec/bitstream/redug/23908/1/TESIS%20SEMAFORIZACI%C3%93N%

20I.pdf

Pearlman, S. (29 de enero de 2019). es.talend. Obtenido de es.talend: https://es.talend.com/wp-

content/uploads/database-integration.jpg

Page 114: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

93

Platzi. (2 de MAYO de 2018). platzi.com. Obtenido de platzi.com:

https://platzi.com/blog/aplicaciones-escritorio-electron-js/

Prado, C. E. (2017). ¿Qué es y por qué aprender SQL? Obtenido de DevCode:

https://devcode.la/blog/que-es-sql/

profesores.elo. (12 de diciembre de 2018). profesores.elo. Obtenido de profesores.elo:

http://profesores.elo.utfsm.cl/~agv/elo323/2s10/projects/ApablazaBustamante/desc.html#

Python (informática) | Qué es, para qué sirve y por qué usarlo? (16 de junio de 2018). Obtenido de

Python (informática) | Qué es, para qué sirve y por qué usarlo?:

http://247tecno.com/python-para-que-sirve-por-que-usarlo/

Que es laravel. (21 de marzo de 2013). Obtenido de Que es laravel:

http://desarrollandowebsdinamicas.blogspot.com/2013/03/que-es-laravel.html

Que es laravel. (21 de marzo de 2013). Obtenido de Que es laravel:

http://desarrollandowebsdinamicas.blogspot.com/2013/03/que-es-laravel.html

Ramos, P. (14 de septiembre de 2018). Styde. Obtenido de Qué es y para qué sirve SQL:

https://styde.net/que-es-y-para-que-sirve-sql/

reportedigital. (17 de junio de 2015). reportedigital. Obtenido de reportedigital:

https://reportedigital.com/negocios/tecnologia/que-es-una-red-lan/

roadshow. (4 de junio de 2018). roadshow. Obtenido de roadshow:

https://www.roadshow.com.ar/wp-content/uploads/machine-learning-espana.jpg

robertcooper. (14 de enero de 2019). robertcooper. Obtenido de robertcooper:

https://www.robertcooper.me/static/0cf501bada61bd930003ec6c08be25fa/46606/banner.

png

Robles, V. (2019). ¿Que es Angular y para que sirve? Obtenido de ¿Que es Angular y para que sirve?:

https://victorroblesweb.es/2017/08/05/que-es-angular-y-para-que-sirve/

Rosebrock, A. (28 de agosto de 2019). pyimagesearch. Obtenido de pyimagesearch:

https://www.pyimagesearch.com/wp-

content/uploads/2017/08/faster_for_loop_header.png

Rouse, M. (5 de junio de 2018). searchdatacenter. Obtenido de searchdatacenter:

https://searchdatacenter.techtarget.com/es/definicion/Red-de-area-local-LAN

SAS. (2019). machine learning . Obtenido de machine learning :

https://www.sas.com/es_mx/insights/analytics/machine-learning.html

tecnologia-facil. (23 de Diciembre de 2011). tecnologia. Obtenido de tecnologia: https://tecnologia-

facil.com/que-es/que-es-lan/

ticoespia. (16 de Septiembre de 2017). ticoespia. Obtenido de ticoespia:

http://ticoespia.com/site/images/stories/camip3.jpg

TVC. (24 de julio de 2014). que es y como funciona una camara ip. Obtenido de que es y como

funciona una camara ip: http://www.foro.tvc.mx/kb/a551/que-es-y-como-funciona-una-

camara-ip.aspx

uriel, p. (2017). platzi, ¿Qué es y cómo usar TypeScript? Obtenido de ¿Qué es y cómo usar

TypeScript?: https://platzi.com/blog/typescript/

Page 115: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

94

Yaneidis Jc, E. (13 de diciembre de 2015). Que es Laravel. Obtenido de Que es Laravel:

https://www.ecured.cu/Laravel

Page 116: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

95

ANEXOS

Page 117: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

96

Gráfico 69.FORMULARIO DE ENCUESTA PREGUNTA 1

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 118: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

97

Gráfico 70.FORMULARIO DE ENCUESTA PREGUNTA 2 & 3

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 119: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

98

Gráfico 71.FORMULARIO DE ENCUESTA PREGUNTA 4-5-6

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 120: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

99

Gráfico 72.FORMULARIO DE ENCUESTA PREGUNTA 7-8

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Gráfico 73.FORMULARIO DE ENCUESTA PREGUNTA 9

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 121: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

100

Gráfico 74.ANEXO 1 FOTOGRAFIA DE ESTACIONAMIENTO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Gráfico 75.ANEXO 1 FOTOGRAFIA DE ESTACIONAMIENTO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Page 122: UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y …repositorio.ug.edu.ec/bitstream/redug/44880/1/B-CINT-PTG... · 2019-10-24 · ii Repositorio Nacional en Ciencias y

101

Gráfico 76.EVIDENCIA ANEXO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta

Gráfico 77.EVIDENCIA ANEXO

Fuente: Trabajo de Investigación

Autores: Kevin Ortiz vera – Josué Salazar Acosta