Sei sulla pagina 1di 202
UNIVERS IDAD TECNOLÓGICA EQUINOCC IAL FACULT AD DE CIENCIAS DE LA INGENIE RÍA CARRERA INFO

UNIVERS IDAD TECNOLÓGICA EQUINOCC IAL

FACULT AD DE CIENCIAS DE LA INGENIE RÍA

CARRERA INFO RMÁTICA Y CIENCIAS DE LA COM PUTACIÓN

TEMA:

“RECONOC IMIENTO Y CLASIFICACIÓN DE

ROSAS

UTILIZANDO R. N.A. Y MANTENIMIENTO DE INVE NTARIO EN

UN SITIO WEB”

TESIS DE GRADO

PREVI A LA OBTENCIÓN DEL TÍTULO D E

INGENIER A EN INFORMÁTICA Y CIENCIAS COMPUTACIÓN

DE LA

AUTORA:

YESS ENIA KARINA BAJAÑA MENDOZA

DIRECTOR DE TESIS:

I NG. VLADIMIR BONILLA, MSC

CARÁTULA

QUITO, JULIO 2011

AUTORÍA

Yo, YESSENIA KARINA BAJAÑA MENDOZA, con cédula de ciudadanía 092286892-2,

declaro que el trabajo a continuación descrito es de mi autoría, titulado: “RECONOCIMIENTO

Y CLASIFICACIÓN

DE

ROSAS

UTILIZANDO

RNA

Y

MANTENIMIENTO

DE

INVENTARIO EN UN SITIO WEB” previo la obtención del título de INGENIERA EN

INFORMÁTICA Y CIENCIAS DE LA COMPUTACIÓN, fue desarrollado en su totalidad por

mi persona, bajo tutoría de INGENIERO VLADIMIR BONILLA; no ha sido previamente

presentado para ningún grado o calificación profesional; y, que he consultado las

referencias bibliográficas que se incluyen en este documento.

A través de la presente declaración cedo mis derechos de propiedad patrimonial, más no

intelectual correspondientes a este trabajo, a la Universidad Tecnológica Equinoccial,

según lo establecido por la Ley de Propiedad Intelectual, por su Reglamento y por la

normatividad institucional vigente.

Yessenia Karina Bajaña Mendoza

II

C.C.092286892-2

FACULTAD DE CIENCIAS DE LA INGENIERÍA CERTIFICACIÓN Certifico que el siguiente PROYECTO DE TESIS fue
FACULTAD DE CIENCIAS DE LA INGENIERÍA CERTIFICACIÓN Certifico que el siguiente PROYECTO DE TESIS fue

FACULTAD DE CIENCIAS DE LA INGENIERÍA

CERTIFICACIÓN

Certifico que el siguiente PROYECTO DE TESIS fue realizado en su totalidad

por la estudiante YESSENIA KARINA BAJAÑA MENDOZA, como requerimiento

parcial a la obtención del título de INGENIERA EN INFORMÁTICA Y CIENCIAS

DE LA COMPUTACIÓN.

En el presente proyecto se ha realizado la automatización del proceso de

inventario de rosas durante la plantación, este proyecto presenta tres partes. En primera

instancia, procesamiento de imágenes para el reconocimiento de la rosa, y la red

neuronal Kohonen para la clasificación por mercado de las rosas. Como segunda

instancia, y para automatizar el almacenamiento de datos del inventario se creó una base

de datos. Finalmente se realizó una aplicación web donde los clientes pueden visualizar

entre otras, los datos del último inventario realizado.

El diseño de este proyecto se compone de los siguientes capítulos:

Capítulo

I, describe una visión panorámica de la problemática a dar solución.

Capítulo

II, se detalla el Marco Teórico de Referencia.

Capítulo III, refiere a la Metodología de la Investigación e Informática.

Capítulo IV, contiene la descripción y el desarrollo del diseño del prototipo.

Capítulo V, conclusiones y recomendaciones.

Al final se incluye las referencias bibliográficas y anexos.

Atentamente

MSC. ING. Vladimir Bonilla Director de Tesis

DEDICATORIA

El presente proyecto de tesis va dedicado…

A mis padres José y Bethy, mis hermanos María José, Xavier y Bryan, quienes me han

dado todo lo que soy como persona, mis valores, mis principios, mi perseverancia y mi

empeño, todo esto con una gran dosis de amor y sin pedir nunca nada a cambio. En

especial a mi madre Mgs Bethy Mendoza, por haber fomentado en mí el deseo de

superación y el anhelo de triunfo en la vida. A

mi pequeña Nicole, quién inspira el

equilibrio que necesito para dar mi máximo esfuerzo, es sin duda mi referencia para el

presente y para el futuro.

A mis Abuelitos, tíos y primos por brindarme apoyo y fuerza a la distancia confiando

siempre en mí.

…Por su amor, comprensión y paciencia; esta tesis va para ustedes.

IV

Karina Bajaña

AGRADECIMIENTOS

Agradezco a Dios por darme sabiduría, entendimiento y paciencia para terminar

este proyecto de investigación y toda mi carrera universitaria.

A

la Universidad Tecnológica Equinoccial y a su cuerpo de docentes que con su

esfuerzo

y

pasión

han

logrado

sembrar

e

inculcar

en

la

investigación

y

autoformación,

características

esenciales

que

me

han

desempeño durante la carrera y vida profesional.

servido

para

un

excelente

A Ing. Vladimir Bonilla por su generosidad al brindarme la oportunidad de

recurrir a su capacidad y experiencia científica en un marco de confianza, amistad y

respeto, fundamentales para la concreción de este proyecto a pesar de la distancia

durante el mismo.

A los ingenieros Víctor Hugo Gálvez y Galo Ramos, quienes en el proceso de

calificación del proyecto, aportaron con sus valiosas sugerencias y opiniones en el

contenido y forma para mejorar la calidad de mi trabajo.

A toda mi familia que me han enseñado a encarar las adversidades sin perder

nunca la dignidad sin desfallecer en el intento.

A mis amigos y compañeros de clases, gracias por su voto de confianza.

Mil palabras no bastarían para agradecerles lo suficiente. A todos, espero no

defraudarlos y seguir contando siempre con su confianza y valioso apoyo incondicional.

V

ÍNDICE DE CONTENIDO

CARÁTULA

I

AUTORÍA

II

CERTIFICACIÓN

III

DEDICATORIA

IV

AGRADECIMIENTOS

V

ÍNDICE DE CONTENIDO

VI

ÍNDICE

GENERAL

VII

ÍNDICE DE ECUACIONES

XIV

ÍNDICE DE FIGURAS

XV

ÍNDICE DE TABLAS

XVI

ÍNDICE DE ANEXOS

XVII

RESUMEN

XVIII

SUMMARY

XIX

VI

ÍNDICE GENERAL

CAPÍTULO I

1

1.

INTRODUCCIÓN

2

1.1

ANTECEDENTES

3

1.2

SISTEMATIZACIÓN

4

1.2.1

DIAGNÓSTICO

4

1.2.2

PRONÓSTICO

6

1.2.3

CONTROL DEL PRONÓSTICO

7

1.3

FORMULACIÓN DEL PROBLEMA

7

1.4

OBJETIVOS

8

1.4.1

OBJETIVO GENERAL

8

1.4.2

OBJETIVOS ESPECÍFICOS

8

1.5

JUSTIFICACIÓN

8

1.6

ALCANCE

9

1.7

FACTIBILIDAD

10

1.7.1

TÉCNICA

10

VII

1.7.2

ECONÓMICA

11

1.7.3

13

CAPÍTULO II

14

2.

MARCO TEÓRICO

15

2.1

TAXONOMÍA Y MORFOLOGÍA DE LOS

15

2.1.1

CLASIFICACIÓN DE LOS

15

2.1.2

CLASIFICACIÓN DE LAS FLORES TIPO

16

2.1.2.1

NÚMERO DE

16

2.1.2.2

PUNTOS DE CORTE

17

2.1.2.3

18

2.1.3

FENOLOGÍA DEL

18

2.1.4

ETAPAS DE DESARROLLO EN EL CICLO DE CULTIVO

19

2.2

20

2.2.1

PROCESAMIENTO DE

20

2.2.1.1

VISIÓN COMPUTACIONAL

20

2.2.1.2

22

VIII

2.2.1.3

FILTROS

24

2.2.1.4

24

2.2.1.5

ETIQUETAMIENTO

26

2.2.1.6

EXTRACCIÓN DE CARACTERÍSTICAS DE UNA

26

2.2.2

CÁMARA

29

2.3

REDES NEURONALES

29

2.3.1

COMPARACIÓN ENTRE REDES

30

2.3.2

RED NEURONAL KOHONEN

32

2.3.2.1

ARQUITECTURA

32

2.3.2.1.1

ARQUITECTURA LVQ

32

2.3.2.1.2

ARQUITECTURA SOM

34

2.3.2.2

ENTRENAMIENTO

34

2.3.2.3

35

2.3.2.4

ALGORITMO

36

2.4

BASE DE DATOS

38

2.4.1

BASE DE DATOS

38

2.5

APLICACIONES

38

IX

2.5.1

ARQUITECTURA

39

2.5.1.1

DESARROLLO

39

2.5.1.2

INTERFAZ DE USUARIO (USER

40

2.5.1.3

LÓGICA DE NEGOCIOS

40

2.5.1.4

ACCESO A DATOS (ENTITYS)

41

2.5.1.5

ORIGEN DE

41

2.5.1.6

ENTIDADES DEL

41

2.5.1.7

41

2.5.1.8

COMPONENTES

41

2.6

HERRAMIENTAS Y PLATAFORMAS DE

42

2.6.1

MATLAB

42

2.6.1.1

NEURONAL NETWORK

42

2.6.1.2

IMAGING PROCESING TOOLBOX

44

2.6.1.3

DATABASE

46

2.6.2

46

2.6.3

GOOGLE CHROME

47

2.6.4

RATIONAL ROSE

47

X

2.6.5

MICROSOFT WINDOWS

47

2.6.6

JAVA SCRIPT

48

CAPÍTULO III

49

3.

50

3.1

METODOLOGÍA DE LA

50

3.1.1

MÉTODO

50

3.1.2

MÉTODO

50

3.1.2.1

ANÁLISIS E INTERPRETACIÓN DE DATOS

52

3.1.2.1.1

ENCUESTAS A LA ALTA GERENCIA

52

3.1.2.1.2

ENCUESTAS AL NIVEL TÉCNICO

53

3.1.2.1.3

ENCUESTAS AL NIVEL

56

3.1.2.1.4

FICHAS DE REGISTRO DE

66

3.2

METODOLOGÍA DE

71

3.2.1

PROGRAMACIÓN ORIENTADA A

71

3.2.1.1

PRINCIPIOS Y CONCEPTOS DE

72

3.2.2

FASES DEL MODELADO ORIENTADO A

73

XI

3.2.2.1

ANÁLISIS

74

3.2.2.2

DISEÑO

75

3.2.2.3

IMPLEMENTACIÓN

75

3.3

METODOLOGÍA DE

76

3.3.1

MICROSOFT SOLUTION FRAMEWORK

76

3.3.1.1

ELEMENTOS DE

76

3.3.1.2

MODELO Y DISCIPLINA

77

3.3.2

DIAGRAMAS UML

78

CAPÍTULO IV

80

4.

81

4.1

DOCUMENTOS DE VISIÓN Y

81

4.2

DOCUMENTO DE

82

4.2.1

DEFINICIÓN DE ARQUITECTURA

82

4.2.1.1

ESTÁNDARES DE DISEÑO DE BASE DE DATOS

82

4.2.1.2

ESTÁNDARES DE DISEÑO DE INTERFACES

82

4.3

DOCUMENTO DE DESARROLLO DEL PROTOTIPO

83

XII

4.3.1

GUÍA

DE

DESARROLLO

83

4.3.2

GUÍA DE ITERACIONES

83

4.4

DOCUMENTO DE ESTABILIZACIÓN Y

84

4.5

IMPLEMENTACIÓN

84

4.5.1

MANUAL DE INSTALACIÓN

84

4.5.1.1

MANUAL TÉCNICO

84

4.5.1.2

MANUAL DE USUARIOS

84

CAPITULO V

 

85

5.

CONCLUSIONES Y

86

5.1

86

5.2

87

BIBLIOGRAFIA

 

88

LIBROS

88

PÁGINA WEB

 

88

XIII

ÍNDICE DE ECUACIONES

ECUACIÓN 1: MAGNITUD DEL

24

ECUACIÓN 2: FUNCIÓN PARA SEGMENTAR LOS

25

ECUACIÓN 3: SEGMENTACIÓN POR DISTANCIA DE PIXEL

25

ECUACIÓN 4: FUNCIONAMIENTO DE RED NEURONAL KOHONEN

35

XIV

ÍNDICE DE FIGURAS

FIG. 1: ROSA CORTE 1

17

FIG. 2: ROSA CORTE 2

17

FIG. 3: ROSA CORTE 3

17

FIG. 4: ROSA CORTE 4

17

FIG. 5: ROSA CORTE 5

17

FIG. 6: ROSA CORTE 6

17

FIG. 7: ROSA CORTE 7

17

FIG.

8: ETIQUETAMIENTO

26

FIG. 9: RED NEURONAL KOHONEN. ARQUITECTURA LVQ

33

FIG. 10: RED NEURONAL KOHONEN. INTERACCIÓN LATERAL

33

FIG. 11: RED NEURONAL KOHONEN. ARQUITECTURA SOM

34

FIG. 12: DESARROLLO N-CAPAS

40

FIG. 13: JERARQUÍA DE LOS DIAGRAMAS UML 2.0, MOSTRADOS COMO

UN DIAGRAMA DE CLASES

XV

79

ÍNDICE DE TABLAS

TABLA 1: ANÁLISIS FODA

5

TABLA 2: COSTOS

11

TABLA 3: COSTOS INDIRECTOS

12

TABLA 4: COSTO REAL DEL SISTEMA

13

TABLA 5. CLASIFICACIÓN POR EL NÚMERO DE PÉTALOS

16

TABLA 6. TABLA DE PUNTOS DE CORTE

17

TABLA 7. FENOLOGÍA DEL BOTÓN

18

TABLA 8: COMPARACIÓN ENTRE REDES NEURONALES

30

XVI

ÍNDICE DE ANEXOS

ANEXO A

ENCUESTA Y ENTREVISTAS AL PERSONAL DE LA EMPRESA

I

ENCUESTA DIRIGIDA AL PERSONAL OPERATIVO

1

ENTREVISTA DIRIGIDA A LA ALTA GERENCIA

2

ENTREVISTA

DIRIGIDA

AL PERSONAL TÉCNICO

3

ANEXO B

DOCUMENTOS MSF DE DESARROLLO

II

VISIÓN Y ALCANCES

 

1

DISEÑO

16

DESARROLLO

33

ESTABILIZACIÓN Y PRUEBAS

56

IMPLEMENTACIÓN

 

69

XVII

RESUMEN

En el presente proyecto se ha realizado la automatización del proceso de

inventario de rosas durante la plantación, para evitar el deterioro de las rosas durante su

permanencia en los

cuartos fríos, para la elaboración del mismo se emplea la

programación orientada objetos en escenarios Windows Forms y Web; y conceptos de

base de datos e inteligencia artificial.

Este proyecto presenta tres partes. En primera instancia, se usa procesamiento de

imágenes para el reconocimiento del color de la rosa, y la Red Neuronal Kohonen para

la clasificación por mercados de las rosas. Como segunda instancia, se creó una base de

datos para automatizar el almacenamiento de datos del inventario. Finalmente se realizó

una aplicación web, en la que los clientes pueden ingresar para visualizar los datos del

último inventario realizado.

Ing. Vladimir Bonilla, Msc Director de Tesis

XVIII

SUMMARY

The project proposes to automate the inventory process for planting roses, and

avoid the deterioration of the roses while waiting in the cold rooms. To develop the

project will use OOP in Windows Forms and Web scenarios, and concepts of database

and artificial intelligence.

This project has three parts. Firstly, image processing is used to recognize the

color of the roses, and the Kohonen Neural Network to classify roses according to

markets. As second instance, a database to automate the storage of inventory data.

Finally a web application, which customers can enter to view the latest inventory data

undertaken.

Ing. Vladimir Bonilla, Msc Thesis Project Manager

XIX

CAPÍTULO I

1.

INTRODUCCIÓN

CAPÍTULO I

El presente trabajo de tesis está orientado a resolver uno de los muchos

problemas de las floricultoras, el mismo que consiste en dejar de realizar inventarios

manualmente evitando

mantener las

rosas

en

el

cuarto

frio

hasta

ser vendidas;

existiendo la posibilidad de que se negreen los bordes, se golpeen, se marchiten, etc.

siendo por tales razones desechadas y obviamente se pierde la venta. Por lo que es

necesario automatizar estos procesos en las floricultoras para lo cual se presentará el

diseño de un prototipo.

El diseño del este proyecto se compone de los siguientes capítulos:

El capítulo I, describe una visión panorámica de la problemática actual que

ocurre en las floricultoras, contiene objetivos, general y específicos, justificación,

alcance y factibilidad técnica, económica y operativa.

En el capítulo II, se enuncia el Marco de Referencia, que incluye

el Marco

Teórico, que hace referencia a

Los Rosales, Imágenes, Redes Neuronales Artificiales

(RNA), Base de Datos, Aplicaciones Web, Metodología de Desarrollo, Herramientas y

Plataformas de Desarrollo. Además se definen las directrices legales autoría y coautoría

del presente trabajo de tesis.

El capítulo III, se refiere a la Metodología de la Investigación, contempla el

enfoque de la investigación, métodos, población y muestra, instrumentos de recolección,

tabulación y la interpretación de resultados de las encuestas y entrevistas aplicadas a

2

vendedores, empleados y alta gerencia de las floricultoras que han colaborado con

información para el proyecto. La Metodología Informática, en la cual se definirá los

principios de programación y diseño de sistemas informáticos, fundamentando en la

programación orientada a objetos, y aplicaciones web.

El capítulo IV, es el desarrollo del diseño del prototipo, que se refiere a la

elaboración de la arquitectura del programa mediante la utilización de diagramas UML,

programa de reconocimiento y clasificación de rosas, almacenamiento en una base de

datos y mantenimiento de sitio web.

El capitulo V, contiene las conclusiones y recomendaciones, obtenidas durante

el desarrollo del proyecto.

Al final se incluyen las referencias bibliográficas ordenadas alfabéticamente y anexos.

1.1 ANTECEDENTES.

En el Ecuador, específicamente en la zona norte de la región sierra se encuentran

lugares que se

dedican al cultivo y comercialización de flores tipo rosas; los mismos

que no cuentan con tecnología dentro del área de control de inventarios.

Las redes neuronales artificiales o también conocidas por sus siglas RNA; tienen

muchas ventajas debido a que están basadas en la estructura del sistema nervioso,

principalmente el cerebro.

Las RNA tienen la habilidad de aprender, que consiste en proporcionar datos

como entrada y a su vez se le indica cuál es la salida (respuesta) esperada. Una RNA

crea su propia representación de la información en su interior, descargando al usuario de

3

esto. Debido a que una RNA almacena la información de forma redundante, ésta puede

seguir respondiendo de manera aceptable aun si se daña parcialmente.

La RNA puede manejar cambios no importantes en la información de entrada,

como señales con ruido u otros cambios en la entrada (ej. si la información de entrada es

la imagen de un objeto, la respuesta correspondiente no sufre cambios si la imagen

cambia un poco su brillo o el objeto cambia ligeramente). La estructura de una RNA es

paralela, por lo cual si esto es implementado con computadoras o en dispositivos

electrónicos especiales, se pueden obtener respuestas en tiempo real.

Conociendo las ventajas de las RNA, nace el objetivo de desarrollar un prototipo

para un sistema automático de reconocimiento, clasificación y proyección de inventario

del tipo de rosas cultivadas que sería muy útil para los productores proyectar la cantidad

de flores que dispondrán en determinada fecha, así podrán realizar sus ventas antes de

que en la floricultora se hayan cultivado las rosas, además que se evitaría mantener las

rosas en el cuarto frio hasta ser vendidas; existiendo la posibilidad de que se negreen las

bordes, se golpeen, etc. y sean desechadas.

1.2 SISTEMATIZACIÓN

Inmediatamente se detalla la idea principal del proyecto.

1.2.1

DIAGNÓSTICO

Para analizar la situación de la problemática a la que se pretende dar solución, se

usará una metodología de estudio de la situación competitiva del proyecto de tesis en su

mercado (situación externa) y de las características internas (situación interna) del

4

mismo,

a

efectos

y Amenazas.

de

determinar

sus Fortalezas, Oportunidades,

Debilidades

La situación interna se compone de dos factores controlables: fortalezas y

debilidades,

mientras

que

la

situación

externa

se

compone

controlables: oportunidades y amenazas.

de

dos

factores

no

A continuación, se detalla un análisis FODA de las empresas floricultoras, el

cual nos servirá para emitir un diagnostico sobre si tiene o no es o no necesario

desarrollar el proyecto.

Análisis FODA

Fortalezas

Debilidades

Análisis

Buen grupo de trabajo Contar con recursos económicos Tener una buena relación con sus clientes Poseer los estados contables al día

Resistencia de los trabajadores al cambio Problemas de motivación del personal. Recibir continuas quejas de sus clientes por la mala atención ofrecer productos deficientes o con problemas de fabricación

Interno

 

Oportunidades

Amenazas

Análisis

Debilitamiento de competidores Posicionamiento estratégico Políticas laborales afines a sus necesidades Política crediticia favorable Tecnología al alcance de su mano

Competencia desleal Cambio monetario desfavorable Créditos inalcanzables Imposibilidad de contar con maquinaria acorde a sus necesidades

Externo

Tabla 1: Análisis FODA

De la combinación de fortalezas y oportunidades surgen las potencialidades, las

cuales señalan las líneas de acción más prometedoras para el proyecto.

Las limitaciones, surgen de las debilidades y amenazas, colocan una seria

advertencia.

Los riesgos (combinación de fortalezas y amenazas) y los desafíos (combinación

de debilidades y oportunidades), determinados por su correspondiente combinación de

5

factores, exigirán una cuidadosa consideración a la hora de marcar el rumbo que la

organización deberá asumir hacia el futuro deseable.

1.2.2

PRONÓSTICO

De acuerdo al FODA realizado anteriormente, a continuación se realiza un

análisis de lo que acarrearían cada una de las amenazas y debilidades de la empresa si

no se hace la automatización.

Debilidades

Resistencia de los trabajadores al cambio.- En todas las empresas existen

trabajadores con temor a ser reemplazados por la tecnología, cambio del viejo sistema

de trabajo y lo que es más sienten el temor de no poder adecuarse a una nueva realidad.

Problemas de motivación del personal.- Recibir continuas quejas de sus clientes

por la mala atención.- El maltrato que sufren las rosas durante el tiempo que se

encuentran en los cuartos fríos, ocasiona que los clientes se disgusten porque las rosas

exportadas no llegan en óptima calidad.

Ofrecer productos deficientes o con problemas de fabricación.

Amenazas

Competencia desleal.

Cambio monetario desfavorable.

Créditos inalcanzables.

6

Imposibilidad de contar con maquinaria acorde a sus necesidades.

1.2.3 CONTROL DEL PRONÓSTICO

A continuación se describe el control del pronóstico, lo cual hará posible el

control y disminución de los problemas detectados anteriormente.

Automatizar el inventario permitirá al empresario:

Planificar el cultivo para evitar pérdidas en la plantación.

Ofrecer con antelación al cliente una cantidad aproximada de rosas.

Evitar mantener las rosas mucho tiempo en los cuartos fríos

1.3 FORMULACIÓN DEL PROBLEMA

Se ha planteado el problema ya detectado en el antecedente, mismo que se

resolverá durante el desarrollo del presente proyecto, en función del diagnóstico,

pronóstico y control del pronóstico.

La formulación es la siguiente:

¿Cómo usar la tecnología RNA y procesamiento de imágenes para facilitar

el inventario de rosas durante su cultivo, y posibles proyecciones de ventas?

Para la cual se espera una respuesta afirmativa al finalizar el proyecto de tesis, la

misma

que

se

continuación:

sustentará

con

el

cumplimiento

7

de

los

objetivos

planteados

a

1.4

OBJETIVOS

Una vez definido el tema de investigación basado en el planteamiento del

problema, se debe establecer los objetivos.

1.4.1 OBJETIVO GENERAL

Desarrollar un sistema automático de reconocimiento, clasificación y proyección

de inventario del tipo de rosas cultivadas.

1.4.2 OBJETIVOS ESPECÍFICOS

Definir la situación actual de inventarios y manejo de proyecciones de ventas de las

flores tipo rosas.

Digitalizar patrones de imágenes de las flores tipo rosas, e imágenes de las rosas en

la cama de la plantación.

Procesar las imágenes patrones para obtener un mapa de características.

Elaborar el diseño funcional de una red neuronal artificial que permita realizar la

clasificación de cortes y mercados de las rosas en la plantación.

Diseñar un sitio Web para visualizar los resultados del inventario de las rosas

clasificadas.

1.5 JUSTIFICACIÓN

Actualmente, y con distribución mundial, existen una enorme variedad de

cultivares de rosas a partir de diversas hibridaciones, y cada año aparecen nuevos.

Sus principales mercados de consumo son Europa, donde figura Alemania; En

América el principal consumidor es Estados Unidos y en Asia destaca Japón.

8

México,

Colombia

y

Ecuador,

han

incrementado

en

los últimos

años

su

producción.

El desarrollo del presente sistema ahorrará a las empresas floricultoras,

tiempo

de estadía de la rosa en cuartos fríos, como consecuencia directa ahorro de energía; así

mismo

se

evitará

daños

físicos

en

la

estructura

de

la

Rosa;

incrementará

considerablemente las ventas y sobre todo las proyecciones a futuro serán 90% certeras.

Un

sistema

de

información

automatizado

de

clasificación

permitirá,

a

la

comercializadora verificar el stock en la plantación cuando consideren oportuno, porque

las cámaras estarán complementadas con sistemas mecatrónicos que les permitirán la

captura

de

las

imágenes

de

las

rosas

en

la

plantación

en

cualquier

momento.

Inmediatamente la información obtenida será enviada a la base de datos para su proceso

y presentación a través del sitio Web de la comercializadora.

1.6 ALCANCE

El diseño del presente proyecto será de utilidad para las floricultoras que se

dediquen al cultivo de flores tipo Rosas.

El módulo que se diseñará en el sistema es: control de inventario el mismo que

se realizará a partir de la captura de imágenes de las rosas de cada camada por medio de

una cámara web.

Seguido se procederá al análisis de las imágenes, usando una red neuronal que

reconocerá tres colores: rojas, blancas y amarillas; y se clasificará cada una de las rosas

por etapa de corte según el número de pétalos sueltos que tenga, para la simulación del

prototipo considerará solo rosas que se encuentren en corte cinco, seis y siete.

9

Una

vez obtenidos los resultados se almacenarán

en una

base de

datos,

finalmente se hará una proyección de venta, la misma que será presentada en un sitio

Web donde además el usuario final podrá ver los resultados del inventario según fechas

de cosecha.

La exposición y presentación del presente diseño se realizará a través de la

simulación del funcionamiento total del sistema utilizando para ello un prototipo que

simula al sistema, una maqueta de camadas de rosas y los medios tecnológicos

necesarios.

1.7 FACTIBILIDAD

Se refiere a la disponibilidad de los recursos necesarios para llevar a cabo los

objetivos señalados, es una de las primeras etapas del desarrollo de un sistema

informático.

1.7.1

TÉCNICA.

La tecnología moderna, permite realizar sistemas informáticos muy complejos

que agilitan y optimizan todo tipo de procesos. El presente proyecto de tesis es factible

de realizar porque las herramientas, equipos tecnológicos y software necesarios se

encuentran disponibles en nuestro medio.

Para el desarrollo del prototipo se ha decido usar como herramienta de

desarrollo MATLAB y HTML-PHP; de Diseño Rational Rose; de Gestión de Datos MY

SQL; Sistema Operativo WINDOWS XP.

10

Se usará Matlab por la facilidad que ofrece al traer los diferentes Toolboxs para

desarrollo

de

aplicaciones

para

la

creación

de

algoritmos,

análisis

de

datos,

visualización

de

datos

y

cálculo

numérico;

procesamiento

de

imágenes

y

redes

neuronales. A continuación los resultados se llevarán a una base de datos, se seleccionó

MySql como herramienta de gestión de datos porque es

relacional, multihilo y

multiusuario. Finalmente en un sitio web se podrá observar los datos del inventario.

1.7.2

ECONÓMICA

Económicamente el diseño del sistema e Implantación en un futuro si es factible,

considerando que para las empresas floricultoras, éste no es un gasto sino una inversión,

cuyos beneficios se verán reflejados en un mediano tiempo.

Costos Directos

 

Costos Directos

 

Descripción

Valor por hora ($)

Trabajo en

Costo total ($)

horas

Hora programador

$ 8,00

400

$ 3.200,00

Hora computador

$ 0,70

800

$ 600,00

Hora internet

$ 0,25

400

$ 100,00

Herramientas de Software

$ 1,00

800

$ 800,00

Hora analista

$ 5,00

400

$ 2.000,00

TOTAL

 

2800

$ 6.700,00

Tabla 2: Costos Directos.

11

Costos Indirectos

Costos Indirectos

Descripción

Precio

Material de Análisis

$ 20,00

Depreciación computadoras

$ 30,00

Movilización

$ 100,00

Servicios Básicos

$ 100,00

Extras

$ 50,00

TOTAL

$ 300,00

Costo Real del Sistema

Tabla 3: Costos Indirectos

   

Herramientas de Desarrollo

   
 

Descripción

   

Precio

Licencia Original Windows Xp SP3

 

$

300,00

 

Licencia Profesional Matlab 2010

 

$

10.307,09

 

My Sql

 

$

00,00

TOTAL

 

$

10.607,09

 
 

Hardware

 

Descripción

 

Cant.

P.U.

 

Subtotal

 

Disponibilidad

Cámara Digital

 

1

$

300,00

$

300,00

 

Disponible

Computadora core2duo, 2 Gb RAM

 

1

$ 1.200,00

$

1.200,00

 

Disponible

Impresora Canon Multifunción 250

 

1

$

70,00

$

90,00

 

Disponible

TOTAL

$

1.590,00

   
 

Recursos Humanos

   

Recursos

Nº Horas

V/H

 

Total

 

Desarrollador

600

$

8,00

$ 4.800,00

 

Otros Insumos

   

Descripción

 

Cant.

P.U.

 

Subtotal

Libros

3

$

75,00

$

225,00

Revistas

 

1

$

30,00

$

30,00

Suministros y material de oficina

   

$

100,00

Servicios Básicos

 

6

$

40,00

$

240,00

TOTAL

 

$

595,00

 

12

En resumen, el costo total del proyecto:

Resumen

Descripción

TOTAL

Herramientas de Desarrollo

$

10.607,09

Hardware

$

1.590,00

Recursos Humanos

$

4.800,00

Otros Insumos

$

595,00

TOTAL

$

17.592,09

Tabla 4: Costo Real del Sistema

El precio total de la implementación del Software es de $17.592,09 + 30% por

margen de ganancia y riesgos; el valor redondeado es $ 23.000,00

1.7.3

OPERATIVA.

La administración del software final y del equipo tecnológico es operable por

personal con medianos conocimientos en el área informática.

Función Operativa del Usuario en el Software.

El usuario tendrá una interfaz muy amigable, para adquirir las fotografías de las

rosas durante la plantación.

Así mismo la presentación del resultado será por medio de un sitio web, de igual

forma muy amigable para el usuario.

13

CAPÍTULO II

CAPITULO II

2. MARCO TEÓRICO.

Es importante señalar en el proyecto la estrecha relación entre teoría, el proceso

de investigación y la realidad, del entorno.

A

continuación

se

presenta

una

breve

introducción

teórica

respecto

a

información básica de los temas que conforman parte del proyecto, como información

importante de rosas, redes neuronales artificiales, base de datos, arquitectura web y

herramientas

de

desarrollo,

los

cuales

son

de

gran

importancia

para

el

usuario

administrador.

 

2.1 TAXONOMÍA Y MORFOLOGÍA DE LOS ROSALES.

 

Los

rosales

son

un

conocido

género

de

arbustos

espinosos

y

floridos

representantes principales de la familia de las rosáceas. Aproximadamente 200 especies

botánicas de rosas son nativas del hemisferio norte, aunque no se conoce la cantidad

real debido a la existencia de poblaciones híbridas en estado silvestre.

La rosa era

considerada como símbolo de belleza por babilonios, sirios, egipcios, romanos y

griegos.

2.1.1 CLASIFICACIÓN DE LOS ROSALES.

Desde el punto de vista de la práctica de la jardinería, y esquemáticamente, los

rosales se clasifican en 4 grupos:

Rosales silvestres: son los que sin ser cultivados crecen en la naturaleza.

15

Rosales antiguos: son los tipos de rosales que existían antes de 1867, año en que

apareció el primer Híbrido de Te, un híbrido artificial.

Rosales modernos: son los rosales posteriores a 1867 hasta la actualidad; a veces

este grupo se lo divide en generaciones.

Otros tipos: este grupo incluye tipos especiales de rosales.

2.1.2 CLASIFICACIÓN DE LAS FLORES TIPO ROSAS.

Según distintos criterios: número de pétalos, color y puntos de corte.

2.1.2.1 NÚMERO DE PÉTALOS.

Las rosas pueden clasificarse según la cantidad de pétalos. Pueden ser sencillas,

semidobles, dobles, moderadamente llenas, llenas y muy llenas.

Clasificación

Número de pétalos

Sencillas

Poseen menos de 8 pétalos

Semidobles

Poseen de 8 a 20 pétalos

Dobles moderadamente llenas:

Poseen entre 21 y 29 pétalos

Dobles llenas:

Poseen entre 30 y 39 pétalos.

Tabla 5. Clasificación por el número de pétalos Fuente: Empresa ROSAFLOR

16

2.1.2.2 PUNTOS DE CORTE.

El número de corte de cosecha la rosa depende del gusto y pedido del cliente.

PUNTO DE

DESCRIPCIÓN

GRÁFICO

CORTE

CORONA

PETALOS

UNO

Cerrada

Cerrados

UNO Cerrada Cerrados

Fig. 1: Rosa Corte 1

DOS

Cerrada

Comienza a abrirse

DOS Cerrada Comienza a abrirse

Fig. 2: Rosa Corte 2

TRES

Cerrada

Abiertos

TRES Cerrada Abiertos

Fig. 3: Rosa Corte 3

CUATRO

Comienza a abrirse

Abiertos

CUATRO Comienza a abrirse Abiertos

Fig. 4: Rosa Corte 4

CINCO

Poco Abierta

Abiertos

CINCO Poco Abierta Abiertos

Fig. 5: Rosa Corte 5

SEIS

Medio Abierta

Abiertos

SEIS Medio Abierta Abiertos

Fig. 6: Rosa Corte 6

SIETE

Abierta

Abiertos

SIETE Abierta Abiertos

Fig. 7: Rosa Corte 7

Tabla 6. Tabla de Puntos de Corte Fuente: Empresa ROSAFLOR

17

Como se muestra en la tabla 6, la rosa debe ser cultivada según su punto de corte

para ello se ha establecido siete diferentes puntos de corte, observando la corona y los

pétalos.

2.1.2.3

COLORES.

Las rosas comúnmente se cultivan en colores como Rojo, Rosado, Rosado

oscuro, Rosado Ligero, Blanco, Amarillo, Anaranjado, Borgoña y Negro, pero existen

una amplia gama de colores con diversos matices y sombras.

2.1.3 FENOLOGÍA DEL BOTÓN.

Desarrollo y crecimiento del botón en algunas variedades en las poblaciones de

Cayambe y Tabacundo.

Botón arroz:

Botón definido, apenas visible.

 
 

Botón de unos 0.8 cm

de diámetro, alrededor de 1.5 cm

de

Botón arveja:

pedúnculo, casi entre las primeras hojas.

 

Botón de más o menos 1.2 cm

de diámetro, entre 3 y 4 cm

de

Botón garbanzo:

pedúnculo, sin color en la mayoría de variedades.

 

El botón mide unos 2.0 cm

de diámetro, algunas variedades

Botón uva:

presentan color, sépalos juntos enrollados en el ápice.

 
 

Color claramente definido, máximo un sépalo suelto y mínimo 3

Botón color:

aún enrollados en el ápice.

Tabla 7. Fenología del Botón Fuente: Empresa ROSAFLOR

18

2.1.4 ETAPAS DE DESARROLLO EN EL CICLO DE

CULTIVO.

Las etapas de desarrollo a tener en cuenta para completar el ciclo de cultivo

difieren de la especie cultivada y de su aprovechamiento ornamental, bien sea para flor

cortada, verde de complemento, planta en maceta, etc. Así, para un cultivo de flor

cortada como la rosa, Pasian et al. (1994) consideraron las siguientes etapas de

desarrollo:

Desde poda hasta el desarrollo del brote, esto es, hasta que este alcanza una

longitud de 10 mm.

Desde este momento hasta el completo crecimiento y desarrollo de la hoja.

Desde la presencia de la hoja hasta que se hace visible el botón floral o botón

color.

Desde este momento hasta la presencia de la última hoja.

Desde ésta última hoja hasta la recolección.

En general, se trata de definir en un primer momento cuando se inicia el ciclo de

cultivo, que normalmente coincide con el trasplante, o con la poda, tras una recolección

en especies perennes de flor cortada o verde de complemento, aunque en ciertas

especies con requerimientos vernalizantes este inicio podría coincidir con la finalización

de un periodo de forzado de bajas temperaturas para completar dichos requerimientos

(Clough, et al., 2001; Yuan et al., 1998); seguiría con las distintas fases de desarrollo

que se consideren oportunas, según la fisiología del crecimiento y desarrollo de la

planta; y por último finalizaría con el momento óptimo de su comercialización, que es

diferente según el aprovechamiento ornamental de la especie en cuestión (antesis de la

primera flor, longitud determinada del brote, número concreto de brotes u hojas, etc.).

19

2.2 IMÁGENES.

Una

imagen

puede

ser

definida

matemáticamente

como

una

función

bidimensional, f(X, Y) donde x y y son coordenadas especiales (en un plano), y f en

cualquier par de coordenadas es la intensidad o nivel de gris de la imagen en esa

coordenada.

A continuación se presentan los métodos y algoritmos utilizados para el

desarrollo del sistema para el reconocimiento y clasificación de rosas.

2.2.1 PROCESAMIENTO DE IMÁGENES.

Un área muy ligada a la de visión computacional es la de procesamiento de

imágenes. Aunque ambos campos tienen mucho en común, el objetivo final es diferente.

El objetivo de procesamiento de imágenes es mejorar la calidad de las imágenes

para su posterior utilización o interpretación. [Escalera 01]

2.2.1.1 VISIÓN COMPUTACIONAL

Su función principal es reconocer y localizar objetos en el ambiente mediante el

procesamiento

de

imágenes.

La

visión

computacional

es

el

estudio

de

los

procesamientos de imágenes, para entenderlos y construir máquinas con capacidades

similares a las humanas. [Sucar 03]

Objetivo de la Visión Computacional

El objetivo de la visión computacional es extraer características de una imagen

para su descripción e interpretación por la computadora.

20

La base del software de un sistema de visión es la interpretación y análisis de los

píxeles.

El

resultado

final

puede

ser,

desde

la

medida

de

una

partícula,

a

la

determinación o lectura de una serie de caracteres (OCR), pasando por cualquier otro

proceso que podamos imaginar sobre las imágenes.

Dependiendo de si la aplicación se realiza en entorno industrial o científico los

pasos a seguir en un sistema de visión serán algo distintos.

Aplicación Industrial

• Captura de la Imagen

• Definición de la región de interés donde se realizarán las medidas

• Inicialización de las tolerancias para determinar si la pieza a determinar es o no

correcta.

• Ejecutar las medidas

• Generar una salida apropiada

Aplicación Científica

• Capturar la Imagen

• Hacer un proceso de mejora

• Determinar los elementos a medir

• Ejecutar la medida

• Almacenar las medidas y realizar procesos gráficos o estadísticos.

21

2.2.1.2

DIGITALIZACIÓN.

El término digitalización se puede asociar cómo un texto, sonido, movimiento,

fotos, formas convertidos en código binario comprensible para los computadores,

mediante la utilización de programas y de acuerdo a los requerimientos.

La función de imagen digital representa un valor de brillo en ese punto, ya que

por medio de esta se podrá partir para cumplir el objetivo.

La imagen digital se compone de un número finito de elementos, cada uno con

un lugar y valor específicos. Estos elementos son llamados pels, o pixels.

Resolución de Imágenes.

El color visualizado en un punto concreto será el resultante de combinar los valores

de ese punto en las tres bandas, en la proporción indicada por esos valores. O bien se

puede tener una tabla de colores (una paleta) y hacer que los valores de la imagen estén

'apuntando' a los colores de esa paleta. De cualquiera de las formas podemos distinguir:

blanco y negro, escala de grises, color indexado 16, color indexado 256, color real RVA

y color real CMAN. Los tipos de datos se diferencian por la resolución en bits (número

de bits de información de la imagen por píxel) y por el número de canales que

comprende la imagen. La resolución en bits determina cuántos colores o niveles de gris

puede representar cada píxel.

Blanco y negro.- Cada píxel de una imagen en blanco y negro es blanco o

negro. Los tonos intermedios (grises) se crean ordenando los píxeles blancos y

negros para simular gris. Es lo que se llama técnica de 'dithering'.

22

Escala de grises.- Cada píxel de una imagen en escala de grises puede ser uno

de los 256 valores distintos de gris, del negro (cero) al blanco (255). Este tipo de

datos muestra suaves cambios de tono utilizando tonos intermedios de gris. La

resolución de una imagen en escala de grises determina el tamaño de los píxeles

y, en consecuencia, el número de píxeles de una imagen. Cuanto mayor sea la

resolución, los cambios de tono de gris serán más suaves y por tanto más exacta

la representación de la imagen (las imágenes de alta resolución también utilizan

más memoria).

Color indexado 16 y 256.- En una imagen en color indexado, cada píxel puede

ser uno de 16 o de 256 colores. Estos colores vienen especificados en la tabla de

colores de la imagen. A cada píxel se le asigna un número que se refiere a un

color de la tabla de colores. Los colores que no estén disponibles en la tabla se

simulan por ordenamiento y por proximidad con respecto a los píxeles cuyos

colores están disponibles. El tipo de datos de color indexado 16 es el usado por

la pantalla VGA estándar en modo de 16 colores. El tipo de datos de color

indexado 256 es el usado por la mayoría de las pantallas de 256 colores, incluida

la IBM 8514/A, XGA y los adaptadores VGA estándar en modo de 256 colores

con 320 x 200 píxeles y algunos adaptadores VGA especiales en modo de 256

colores.

Color real RVA.- En una imagen en color real RVA, cada píxel puede ser uno

de los más de 16,7 millones de colores disponibles. El tipo de datos de color real

RVA es actualmente el mejor tipo de datos para editar imágenes en color debido

a que retiene mayor cantidad de información de la imagen.

23

2.2.1.3 FILTROS

Los filtros se utilizan para la modificación de imágenes, ya sea para detectar los

bordes de una escena o para modificar el aspecto, otra función de los filtros es para la

eliminación de ruido de la imagen.

Al hablar de un filtro nos estamos refiriendo a realizar una Convolución de una

matriz con respecto a un pixel y la vecindad de este, esto quiere decir, si la imagen es de

200x300 pixeles y el filtro con el cual se va a realizar la convolución es una matriz de

3x3 entonces se irá desplazando el filtro pixel a pixel iniciando en la posición (1,1)

hasta llegar a la (199,299). La magnitud del gradiente es entonces calculada con la

siguiente fórmula:

| |

Ecuación 1: Magnitud del gradiente.

2.2.1.4 SEGMENTACIÓN.

Es el proceso en que se divide una escena percibida en sus partes para extraer

objetos para su posterior reconocimiento y análisis. Por lo que se hace una subdivisión

del espacio de parámetros llamados células de acumulación donde a ; a y

b ; b son los intervalos.

Segmentación por bordes

Se centran en la detección de contornos. Delimitan el borde de un objeto y

segmentan los píxeles dentro del contorno como pertenecientes a ese objeto. Su

desventaja consiste en conectar contornos separados o incompletos, lo que los hace

susceptibles a fallas.

24

La imagen de contornos , se puede formar a partir de:

, , ,

Ecuación 2: Función para segmentar los bordes.

Segmentación por distancia de cada píxel en regiones.-

Se toma la distancia de cada píxel a sus vecinos (máscara de 3x3), se suman y se

normalizan (dividir entre 8). De esta forma la “magnitud” de la orilla aumenta al

aumentar la diferencia en intensidad, croma o saturación. En esta aproximación todos

los píxeles que correspondan a un objeto se agrupan juntos y son marcados para indicar

que pertenecen a una región. Los píxeles son asignados a regiones según algún criterio

que los distingue del resto de la imagen. Un criterio muy estricto puede provocar

fragmentación mientras uno poco estricto ocasiona uniones indeseadas.

Ecuación 3: Segmentación por distancia de pixel

Segmentación por umbral

Esta

técnica

segmenta

la

imagen

píxel

por

píxel,

es

decir,

no

toma

en

consideración el valor de los píxeles vecinos para el proceso. Si el valor de un píxel está

dentro de un rango de valores especificado para un objeto el píxel es segmentado. Son

efectivas cuando los objetos y el fondo de la imagen tienen rangos de valores diferentes

y existe un contraste marcado entre ellos. Como la información de los píxeles vecinos es

ignorada, las fronteras de regiones borrosas pueden ocasionar problemas.

25

2.2.1.5 ETIQUETAMIENTO

Cuando se hace una búsqueda de un objeto por color se busca su valor de umbral

y una vez encontrado, se modifica cambiándolo a un valor definido. De esta forma

aparecen valores homogéneos definidos en la imagen.

forma aparecen valores homogéneos definidos en la imagen. Fig. 8: Etiquetamiento Fuente: www. kirainet.com De esta
forma aparecen valores homogéneos definidos en la imagen. Fig. 8: Etiquetamiento Fuente: www. kirainet.com De esta

Fig. 8: Etiquetamiento Fuente: www. kirainet.com

De esta forma a cada valor homogéneo se le asignan un valor o etiqueta, para

conocer el número de objetos existentes en cada célula y luego identificar dentro del

sistema, siendo identificados todos los objetos totalmente. Una vez en funcionamiento

los métodos de procesamiento de imágenes, generan una salida

2.2.1.6 EXTRACCIÓN DE CARACTERÍSTICAS DE

UNA IMAGEN.

Una imagen contiene una gran cantidad de datos, la mayoría de los cuales

proporciona muy poca información para interpretar la escena. Cualquier sistema que

pretenda trabajar con ella debe, en un primer paso, extraer de la forma más eficaz y

robusta

posible

determinadas

características

26

que

nos

proporcionen

la

máxima

información posible. Estas características deben cumplir, entre otras, las siguientes

condiciones:

Su extracción a partir de la imagen no debe suponer un coste excesivo al sistema en

el cual está integrado. El tiempo total de extracción debe ser lo más pequeño

posible.

Su localización debe ser muy precisa. El error cometido en la estimación de las

características también debe ser lo más pequeño posible.

Deben ser robustas y estables. Deberían permanecer a lo largo de una secuencia.

Contendrán la máxima información posible de la escena, es decir, debemos ser

capaces de extraer información de tipo geométrico a partir de ellas.

Las aristas, esquinas y uniones satisfacen estas condiciones. Aparecen de forma natural

en la mayoría de escenarios tanto naturales como artificiales (construidos por el

hombre). Sin embargo, la obtención de las aristas suele ser fuente de muchos errores.

Pongamos por ejemplo el algoritmo de detección de aristas más comúnmente utilizado,

el algoritmo de Canny2. Este algoritmo combina un operador diferencial con un filtro

gaussiano. Variando el parámetro de varianza del filtro que utiliza el algoritmo,

podemos tener el siguiente comportamiento. Este comportamiento sucede también en la

mayoría de los filtros de detección de aristas. También el uso de derivadas de la imagen

para el cálculo de aristas supone un error adicional por el ruido que se produce en el

proceso de captación.

Puntos característicos a partir de aristas.

27

Todos los métodos de obtención de esquinas y/o uniones dentro de este grupo

tienen en común una primera fase de extracción de aristas. Una vez obtenida las aristas

estas se representan mediante un código de cadena. Un código de cadena permite

expresar, por ejemplo, el cambio de dirección de un píxel al siguiente o la discretización

de la tangente para todos los puntos de la arista. El objetivo consiste en encontrar puntos

de máxima curvatura dentro del código de cadena.

Puntos característicos a partir de la propia imagen.

Existen otros métodos que obtienen los puntos de máxima curvatura de una

imagen utilizando directamente los valores de la imagen, sin realizar el paso previo de

obtención de aristas. Estos métodos definen una medida que suelen denominar de

“esquinidad” la cual se calcula para todos los puntos de la imagen. Cuando esta medida

supera un cierto umbral se considera que el punto es una esquina. La mayoría de estos

métodos utilizan operadores diferenciales. Uno de los primeros métodos para la

obtención de puntos característicos es el de Moravec4.

Dada una ventana rectangular, este operador calcula el valor de cambio de la

intensidad de la imagen cuando desplazamos ligeramente esta ventana. Una esquina

viene caracterizada por elevados cambios de intensidad. Es altamente sensible a ruido.

Beaudet5 propone un operador que calcula el determinante de una matriz y queda

definido como:

Donde Ixy es la derivada parcial de la imagen con respecto al eje x y después

con respecto al eje y,

respectivamente.

y Ixx

y Iyy

es

la

28

segunda derivada con respecto a x e y,

2.2.2 CÁMARA WEB.

Una cámara web o webcam es una pequeña cámara digital conectada a una

computadora, la cual puede capturar imágenes y transmitirlas a través de Internet, ya sea

a una página web o a una o varias computadoras de forma privada. Las webcams

necesitan una computadora para transmitir las imágenes, normalmente conectada a

través del puerto USB. El software de la webcam toma un fotograma "frame" de la

cámara cada cierto tiempo y la envía a otro punto para ser visualizada.

Las cámaras web normalmente están formadas por una lente, un sensor de

imagen y la circuitería necesaria para manejarlos. La circuitería electrónica es la

encargada de leer la imagen del sensor y transmitirla a la computadora. Algunas

cámaras usan un sensor CMOS integrado con la circuitería en un único chip de silicio

para ahorrar espacio y costes. El modo en que funciona el sensor es equivalente al de

una cámara digital normal.

2.3 REDES NEURONALES ARTIFICIALES.

Existen numerosas formas de definir lo que son las redes neuronales, desde las

definiciones cortas y genéricas hasta las que intentan explicar más detalladamente lo

que significa red neuronal o computación neuronal.

“Redes neuronales artificiales son redes interconectadas masivamente en

paralelo de elementos simples (usualmente adaptivos) y organización jerárquica, las

cuales intentan interactuar con los objetos del mundo real del mismo modo que lo hace

el sistema nervioso biológico”. [Kohonen 88c.].

29

2.3.1

COMPARACIÓN ENTRE REDES NEURONALES.

Para

desarrollar

una

propuesta,

se

ha

realizado

el

estudio

de

tres

redes

importantes dentro de su tipo, y se ha elaborado una tabla con ciertos aspectos a

considerar sobre las redes en estudio:

Aspectos

Hopfield

 

Backpropagation

 

Kohonen

 

Simple. Esto es debido

Compleja, ya que se requiere un tiempo considerable debido a la metodología prueba y error para la determinación de la cantidad de capas ocultas, números de neuronas en las mismas y valor de los factores de aprendizaje y momento.

Compleja, porque el aprendizaje no concluye después de presentarle una vez todos los patrones de entrada, sino que habrá que repetir el proceso varias veces para refinar el mapa topológico de salida.

al

tipo

de

Complejidad

en la

implantación

entrenamiento,

ya que

una

vez

hecha

la

estructura

de

datos

correspondiente

solo

resta por encontrar una buena configuración de

 

patrones

 

de

entrenamiento.

 

Mínimos.

Todo

el

Altos, esto es respecto a la fase de entrenamiento, la cual requiere n iteraciones hasta que la red converja. Una vez entrenada la red, el funcionamiento (reconocimiento) puede ejecutarse con recursos computacionales mínimos.

Altos, cuantas más veces

Computacionales

Recursos

procesamiento

en

se

presenten los datos en

Hopfield se

resume

a

la

fase

de

cálculos matriciales.

entrenamiento,

tanto

 

más se reducirán las

zonas de neuronas que

se

deben activar ante

entradas

parecidas,

 

consiguiendo que la red

 

pueda realizar una

clasificación

más

selectiva.

Rendimiento

 

Según los experimentos realizados, Hopfield cuenta con un rendimiento favorable de tan solo el 50%.

Según pruebas ya hechas y ante los mismos patrones de pruebas la BPN presenta un rendimiento favorable del 100%.

Ante patrones de pruebas, Kohonen presenta un rendimiento favorable que varía del 92% al 100%; a pesar de sus limitaciones en cuanto a la duración del

proceso de aprendizaje y

a

la imposibilidad de

 

aprender nuevos datos sin tener que volver a repetir completamente

el

proceso de

aprendizaje con todos

los

patrones.

Tabla 8: Comparación entre Redes Neuronales

30

Por los resultados expuestos hasta el momento se puede concluir que, la

implementación de una red Hopfield no es adecuada para este dominio de problema,

esto es debido a que es muy difícil cumplir con la ortogonalidad necesaria en los

patrones de manera que la red aprenda lo suficiente para que en su funcionamiento

infiera correctamente las salidas ante cada entrada.

Se ha decidido usar la red Kohonen, a pesar de sus limitaciones en cuanto a la

duración del proceso de aprendizaje y a la imposibilidad de aprender nuevos datos sin

tener que volver a repetir completamente el proceso de aprendizaje con todos los

patrones, ya que tiene la capacidad para formar mapas de características y establecer

clases o categorías de datos sin supervisión para demostrar que una información de

entrada es suficiente para forzar la formación de mapas de características, con lo que se

garantiza

que

las

neuronas

topológicamente

próximas

sean

sensibles

a

entradas

físicamente similares.

 

Por

esta

causa,

la

red

es

especialmente

útil

para

establecer

relaciones,

desconocidas previamente, entre conjuntos de datos para finalmente conseguir que la

red pueda realizar una clasificación más selectiva.

Como

aplicaciones,

destacan

las

relacionadas

con

el reconocimiento

de

patrones (voz, texto, imágenes, señales, etc.), codificación de datos, compresión de

imágenes y resolución de problemas de optimización. Esta Red se utiliza en robótica,

comprobándose su utilidad en el diseño de sistemas para controlar el movimiento de un

brazo mecánico en un espacio tridimensional.

31

2.3.2 RED NEURONAL KOHONEN.

KOHONEN en 1982, presentó un modelo de red neuronal con capacidad para

formar mapas de características de manera similar a como ocurre en el cerebro.

El objetivo de Kohonen era demostrar que un estímulo externo (información de

entrada) por sí solo, suponiendo una estructura propia y una descripción funcional del

comportamiento de la red, era suficiente para forzar la formación de los mapas.

Este

modelo

tiene

dos

variantes,

denominadas

LVQ

(Learning

Vector

Quantization) y TPM (Topology-Preserving Map). Ambas forman mapas topológicos

para establecer características comunes entre las informaciones de entrada.

2.3.2.1

ARQUITECTURA

Los vectores de entrada a la red pueden ser de diferentes dimensiones, siendo en

el caso de LVQ de una dimensión, y en el caso de TPM bidimensionales o incluso

tridimensionales.

2.3.2.1.1 ARQUITECTURA LVQ

Se trata de una red de dos capas con N neuronas de entrada y M de salida. Cada

una de las N neuronas de entrada se conecta a las M de salida mediante conexiones

hacia delante (feedforward).

Entre las neuronas de las capas de salida existen conexiones laterales, ya que

cada una de ellas tiene influencia sobre sus vecinas a la hora de calcular los pesos de las

conexiones hacia delante entre la capa de salida y la capa de entrada.

32

En las neuronas de la capa de salida, cada neurona está conectad a con otras de su

entorno, de manera que produce una excitación en las más próximas y

las más alejadas.

una inhibición en

Tanto la excitac ión como la inhibición laterales son gradualme nte más débiles a

medida que nos alejamo s de la neurona en cuestión.

Capa de Salida

Neuronas

Capa de Entrad

Capa 2 Capa 1 a
Capa 2
Capa 1
a
Capa de Salida Neuronas Capa de E ntrad Capa 2 Capa 1 a N …… a

N

……

a i
a i

w ij

P

P

j

Fig. 9: Red Neuronal Kohonen. Arquitectura LVQ

Las influencias l aterales se suelen representar por una Gaussia na: mientras más

cercana más influenci a, si la distancia es muy grande, la influe ncia llega a ser

despreciable; es decir l a influencia que una neurona ejerce sobre las d emás es función

de la distancia entre ella s, siendo muy pequeña cuando están muy alejad as.

entre ella s, siendo muy pequeña cuando están muy alejad as. Fig. 10: Red Neuronal Kohonen.

Fig. 10: Red Neuronal Kohonen. Interacción lateral

33

2.3.2.1.2 ARQUITECTURA SOM

Trata de estable cer una correspondencia entre los datos de entr ada y un espacio

bidimensional de salida , de modo que ante datos con características co munes se activen

neuronas situadas en zo nas próximas de la capa de salida.

Cada neurona de la capa de entrada está conectada con cada un a de las neuronas

de la capa de salida med iante pesos.

Las interaccione s laterales siguen existiendo en relación con la distancia que se

toma como una zona bi

imensional alrededor de la neurona.

se toma como una zona bi imensional alrededor de la neurona. Fig. 11: Red Neuronal Kohonen.

Fig. 11: Red Neuronal Kohonen. Arquitectura SOM

2. 3.2.2

ENTRENAMIENTO

Su funcionamien to, es relativamente simple. Cuando se presenta

a la entrada una

información E k =(e 1 (k) ,

, e N (k) ), cada una de las M neuronas de la capa d e salida la recibe

a través de las conexion es feedforward con pesos w ji,

También estas

neuronas reciben las correspondientes entrad as debido a las

conexiones laterales co n el resto de las neuronas de salida y cuya influ encia dependerá

de la distancia a la que s e encuentra.

34

Así, la salida generada por una neurona de salida j ante un vector de entrada Ek,

sería:

Ecuación 4: Funcionamiento de Red Neuronal Kohonen (tomado de Kohonen [8])

Donde Int pj es una función que representa la influencia lateral de la neurona p

sobre la neurona j. la función de activación de las neuronas de salida (f) será del tipo

continuo, lineal o sigmoidal, ya que esta red trabaja con valores reales.

Durante la etapa de entrenamiento, se presenta a la red un conjunto de

informaciones de entrada para que ésta establezca, en función de la semejanza entre los

datos, las diferentes categorías (una por neurona de salida) que servirán durante la fase

de funcionamiento para realizar clasificaciones de nuevos datos que se presenten a la

red. Los valores finales de los pesos de las conexiones entre cada neurona de la capa de

salida con las de entrada se corresponderán con los valores de los componentes del

vector de aprendizaje que consigue activar la neurona correspondiente.

2.3.2.3

APRENDIZAJE.

El aprendizaje es de tipo OFF LINE, por lo que se distingue una etapa de

aprendizaje y otra de funcionamiento. En la etapa de aprendizaje se fijan los valores de

los pesos de las conexiones (feedforward) entre la capa de entrada y la de salida.

El aprendizaje no concluye después de presentarle una vez todos los patrones de

entrada, sino que habrá que repetir el proceso varias veces para refinar el mapa

topológico de salida, de tal forma que cuantas más veces se presenten los datos, tanto

35

más se reducirán las zonas de neuronas que se deben activar ante entradas parecidas,

consiguiendo que la red pueda realizar una clasificación más selectiva.

La selección de los parámetros es muy importante para conseguir una buena

representación. Normalmente se distinguen dos fases en el período de aprendizaje:

Organización

topológica

de

los

pesos,

(supondremos que precisa de N iteraciones)

definición

de

los

entornos

o La función de vecindad (gaussiana u otras) debe mantenerse grande,

cubriendo el espacio de salidas completamente para permitir a neuronas

que responden a pesos similares que se acerquen entre sí. La variación se

suele tomar: y el coeficiente de aprendizaje debe ser alto (mayor que

0.1) para permitir a la red organizarse:

Convergencia en la que las neuronas se ajustan con precisión a los detalles de

la distribución de las entradas. Es usualmente mucho más larga, el coeficiente

de aprendizaje se debe conservar pequeño (0.01) y los entornos muy pequeños

(sólo la neurona vencedora o sus más próximas).

2.3.2.4

ALGORITMO

Sea N el número de neuronas de entrada y M el número de neuronas de salida.

Objetivo: establecer los valores de los pesos de las conexiones.

1. Inicializar los pesos, wji, con valores aleatorios pequeños, fijando la zona inicial de

vecindad entre las neuronas de salida.

2. Presentar a la red una información de entrada en forma de vector Ek = (e1,

cuyas componentes, ei, sean valores continuos.

36

, eN),

3.

Determinar la neurona vencedora de la capa de salida: será aquella cuyo vector de

pesos, Wj, sea el más parecido a la información de entrada Ek. Recordemos que las

componentes de Wj son los valores de los pesos de las conexiones entre esa

neurona, j, y cada una de las neuronas de entrada. Para ello se calcula las distancias

entre los vectores Ek y Wj para cada neurona de salida. La expresión matemática

sería la siguiente:

dj = Sum i=1

N

(ei - wji) 2

para 1 <= j <= M

4. Una vez localizada la neurona vencedora, j*, se actualizan los pesos de sus

conexiones de entrada y también los de las neuronas vecinas (las que pertenecen a

su zona de vecindad, Zonaj). Lo que se consigue es asociar la información de

entrada con una cierta zona de la capa de salida.

wji(t+1) = wji(t) + ß(t) [ei(k) - wj*i(t)]

para j perteneciente a Zonaj*(t)

El término ß(t) es un parámetro de ganancia o coeficiente de aprendizaje, con un

valor entre

0

y

1

que decrece con

el número de

iteraciones del proceso de

entrenamiento. Puede utilizarse la expresión ß(t) = 1/t.

5. El proceso se debe repetir, volviendo a presentar todo el juego de patrones de

aprendizaje E1, E2,

, un mínimo de 500 veces (t = 500).

37

2.4

BASE DE DATOS.

Es un conjunto de datos interrelacionados y almacenados de forma organizada.

2.4.1 BASE DE DATOS TRANSACCIONALES.

Son bases de datos cuyo único fin es el envío y recepción de datos a grandes

velocidades, estas bases son muy poco comunes y están dirigidas por lo general al

entorno de análisis de calidad, datos de producción e industrial, es importante entender

que su fin único es recolectar y recuperar los datos a la mayor velocidad posible, por lo

tanto la redundancia y duplicación de información no es un problema como con las

demás bases de datos, por lo general para poderlas aprovechar al máximo permiten

algún tipo de conectividad a bases de datos relacionales.

2.5 APLICACIONES WEB.

En los últimos años las aplicaciones web han sufrido un gran auge gracias en

gran parte a Internet y la proliferación de sitios web, sobre todo con el fin de fomentar el

comercio electrónico.

Su facilidad de administración centralizada las hace ideales tanto para su

despliegue en internet como en intranets corporativas.

La facilidad de uso de los interfaces web y el hecho de que cada día más

personas están acostumbradas a la navegación por internet hace que el tiempo de

aprendizaje

se

reduzca

considerablemente

respecto

a

aplicaciones

tradicionales

standalone.

38

El auge de multitud de soluciones o frameworks open source hace que su

desarrollo sea sencillo y que un gran número de desarrolladores tengan experiencia con

ellos. Otro hecho a tener en cuenta es que una vez realizada una aplicación web para uso

interno de una empresa, por ejemplo en una intranet, el poner esa funcionalidad, o

incluso funcionalidades nuevas, a disposición de empleados o el público general tiene

un coste mínimo a la vez que una potencial proyección mundial.

2.5.1

ARQUITECTURA.

Una arquitectura orientada a objetos, es aquella que utiliza a los objetos en

forma de Entidades del Negocio para transmitir los datos entre las distintas capas, y

como fuente de datos en los componentes de la capa de vista y capa de negocio, para

migrar del modelo de objetos al modelos entidad relación mediante los componentes

lógicos de acceso a datos.

Para el caso de estudio de esta tesis vamos a omitir la implementación de

interfaces de servicios internos o externos, y de los flujos de trabajo empresariales ya

que estos conceptos van directamente relaciones con aplicaciones muy complejas.

2.5.1.1 DESARROLLO N-CAPAS.

La arquitectura que se diseñará será el pilar fundamental de la aplicación. En ella

se definirán los medios para acceder a los orígenes de datos, cómo se manejará la lógica

de negocio, cómo estará estructurados los componentes de presentación, entre otras.

En la Figura

se puede observar seis tipos de componentes indispensables en

cualquier arquitectura basada en objetos, los cuales se resumen a continuación: