PDF de programación - CAPITULO 4 DISEÑO DEL SISTEMA

Imágen de pdf CAPITULO 4 DISEÑO DEL SISTEMA

CAPITULO 4 DISEÑO DEL SISTEMAgráfica de visualizaciones

Publicado el 20 de Julio del 2017
617 visualizaciones desde el 20 de Julio del 2017
525,2 KB
14 paginas
Creado hace 21a (29/05/2002)
CAPITULO 4

DISEÑO DEL SISTEMA

Considerando el propósito primordial de este proyecto, que consiste en desarrollar



algunas herramientas que permitan la recuperación personalizada de imágenesen base del

reconocimiento de imágenes, y habiendo revisado trabajos relacionados con el área, en

este capítulo se presenta el diseño de este marco de trabajo.



4.1.-Arquitectura del Sistema



Para ofrecer el servicio de recuperación de información en un navegador en

Intranet, este sistema propone un marco de trabajo en el que se considera la reducción de

imágenes mediante mx-quadtrees y el servicio de recuperación de imágenes parecidas. En

este diseño se incluyen cadenas generadas que representan una imagen.



Hay dos módulos que forman la arquitectura de nuestro sistema: módulo de

reducción de información y el módulo de comunicación cliente-servidor, el cual contiene

los submódulos de almacenamiento en base de datos, toma de decisiones, recuperación

de información y la interfaz. Estos componentes están interrelacionados y son capaces de

ofrecer al usuario el servicio de recuperación de imágenes parecidas. A continuación se

presenta una descripción de cada uno de ellos.



4.1.1.-Módulo de reducción de información



Este es sin duda uno de los componentes más importantes de nuestro sistema. En

este sistema se propone representar y reducir una imagen para poder enviarla a través de

la red de una manera más fácil y más rápida para lograr una recuperación lo más parecida

posible de imágenes. Este módulo es capaz de representar una imagen en una cadena sin

tener que enviar cada uno de los pixeles que representan dicha imagen mediante la

segmentación de la misma por medio de mx-quadtrees. Este módulo tiene que segmentar

la imagen mediante mx-quadtrees en el orden de la curva de Peano (Figura4.1), y leer

cada píxel de la imagen y por cuadrante representar con un solo píxel, el que más abunde

en el total de pixeles que representen ese cuadrante.



Figura4.1.-Representación de la curva de Peano



4.2.2.-Módulo de comunicación cliente-servidor



Como podemos ver en la figura 4.2 , este módulo establece una comunicación

entre un cliente que hace peticiones de búsquedas de imágenes, y un servidor que recibe

las peticiones, las busca en una base de datos y las regresa al cliente. En esta

comunicación se llevan las características de la búsqueda definidas por el usuario, así

como la cadena representativa de la imagen, necesaria para la recuperación de la

información. Es necesario tener el servidor y una base de datos para poder hacer las

búsquedas. Interactúa con el DBMS local y regresa los resultados pertinentes al cliente.







CLIENTE

estado inicial

estado. final



Intranet



SERVIDOR

DBMS
Local

Figura4.2.-Comunicación del sistema



-Submódulo de almacenamiento en base de datos



Este módulo es muy pequeño, solamente almacena las imágenes que se dan de

alta, incluyendo un número que represente el orden en el que se almacenan, el path de la

imagen y su cadena generada. Es importante ya que cuando se hace una búsqueda , el

servidor se comunica con esta base de datos y busca de acuerdo a las cadenas generadas

cuáles son parecidas y cuáles no.



-Submódulo de toma de decisiones: Es muy importante, porque aquí se va a decidir que

imágenes recuperadas de la base de datos se parecen en cierto porcentaje, de un 50% en

adelante; si se parecen en menos no las regresa.



-Submódulo de recuperación de

información :La

información que contienen

los

resultados se refieren a la imagen parecida, el path de la imagen y el porcentaje de

similitud con la imagen solicitada que coincidieron con las necesidades del usuario.



-Submódulo de la interfaz: Es el medio por el cual el usuario se comunica con el

servidor. En ella se pueden definir los detalles de búsqueda que su dueño desea realizar,

es decir, escoger la imagen que desea que se encuentren parecidas. Los resultados

obtenidos por el servidor se pueden consultar también en este componente.



4.2.-Diseño del sistema en UML

En este capítulo se presenta el diseño del sistema en UML. UML(Unified

Modeling Language) se define por un conjunto de documentos de Rational Software

Corporation y de Object Management Group [Si Alhir, 1998]. Es el sucesor de métodos

de análisis y diseño orientados a objetos, que surgió a finales de la década de los 80´s y a

principios de la siguiente. UML es un lenguaje de modelado.



El lenguaje de modelado consiste en la notación principalmente gráfica de la cual

se valen los métodos para expresar los diseños y el proceso son los pasos a seguir para

hacer el diseño [ Fowler et.al.,1997]. UML es aplicable por personas que se dedican a la

producción,

implantación y mantenimiento de

software. Como hemos descrito

anteriormente, UML es un lenguaje estándar con un vocabulario gráfico y reglas para la

representación de sistemas:



?? Visualización: UML es un lenguaje gráfico que permite la comunicación en base

a un modelo explícito.

?? Especificación: UML permite describir modelos precisos, sin ambigüedades y

completos.

?? Construcción: Los modelos de UML tienen un mapeo directo a lenguajes de

programación como JAVA, C++ y VisualBasic.

?? Documentación: UML abarca la documentación del sistema a todos sus niveles.



Es muy importante para poder explicarle a una persona el diseño de cualquier

sistema, que se comparta el lenguaje de modelado y no el proceso que se siguió para

hacer el diseño. Los modelos son necesarios para comunicar

la estructura y el

comportamiento del sistema, para que nosotros mismos comprendamos mejor el sistema

que desarrollamos y buscar oportunidades de reutilización y optimización.



A continuación mostramos los diagramas de clase de nuestro proyecto:

1.-Diagramas de clase relacionados con las clases involucradas para segmentar la

imagen en mx-quadtrees y generar una cadena representativa de la imagen.



Las responsabilidades de la clase Image Coder son (Figura4.3): Sacar el ancho y
el largo de una imagen dada , obtener el color de cada uno de los pixeles de la imagen y
calcular el color predominante en cada cuadrante.



Figura 4.3.-Diagrama de clase de ImageCoder



La clase Quadtree es una de las principales ya que su propósito es segmentar la

imagen en cuadrantes mediante la técnica mx-quadtrees. (ver figura 4.4)





Figura 4.4.-Diagrama de clasela clase Quadtree



El objetivo de la clase ScannerColorPixelImage (Figura 4.5) es leer el color de

cada pixel y regresar un vector con todos los pixeles de la imagen.



Figura4.5.-Diagrama de clase de la clase ScannerColorPixelImage.



La clase principal del módulo de

reducción de

información es

llamada:

GeneraCadena, (Figura 4.6) donde se implementa una interfaz gráfica para poder mostrar

al usuario el procedimiento para escoger una imagen y poder desplegar una imagen y su

cadena. Principalmente esa es la responsabilidad de la clase GeneraCadena, la cual

incluye dos clases: CanvasImage y FileExplorer cuyos objetivos son crear un canvas

donde será posible desplegar la imagen y un explorador de archivos para poder accesar a

un archivo donde se encuentren las imágenes, poder escoger una imagen y desplegarla en

pantalla. Una de las cosas importantes que realiza la clase FileExplorer es explorar

archivos como se mencionó anteriormente y regresar un String en caso de que haya

cancelado la exploración.



Figura 4.6.-Diagrama de clase de la clase GeneraCadena.



En los diagramas anteriores hemos visto los atributos y métodos de cada clase.



Para entender mejor las figuras anteriores, basta con mencionar, que un diagrama

de clase en UML es un conjunto de clases, interfaces, colaboraciones y sus relaciones

entre ellas. La firma de un método es lo que recibe cada método.



2.-Diagramas de clase relacionadas con el módulo de comunicación cliente-servidor.

La clase ConnectionPool lo que hace es entregar la conexión a la base de datos



Figura 4.7.-Diagrama de clase de ConnectionPool.java



En la figura 4.8 se observa la clase SvtUploadFile la cual es la que hace la

mayoría de las actividades, es la que hace la conexión a la base de datos, la que da de alta

las imágenes en la base de datos, la que integra las clases que generan la cadena de la

imagen y la que compara las cadenas.



Figura 4.8.-Diagrama de clase de SvtUploadImage.java



0..* 1

Modelado de clases

SvtUploadFile


-connPool: ConnectionPoll= null
-stPathImgs: String = “C:\\
Inetpub\\wwwroot\\Tesis\\Img\\”

-addToDB(req:
HttpServletRequest,conn:Connection):void
-createImg(req: HttpServletRequest, conn:
Connection):void
+destroy():void
-getCoderImg(pathImg: String, width:int,
height:int):String
-getFileName(conn: Connection): File
  • Links de descarga
http://lwp-l.com/pdf5649

Comentarios de: CAPITULO 4 DISEÑO DEL SISTEMA (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad