You are on page 1of 248

PROYECTO FIN DE CARRERA

RECONOCIMIENTO DE IMGENES A
TRAVS DE SU CONTENIDO





AUTOR: Antonio Peralta Sez
MADRID, Junio 2009



UNIVERSIDAD PONTIFICIA COMILLAS
ESCUELA TCNICA SUPERIOR DE INGENIERA (ICAI)
INGENIERO EN INFORMTICA





Autorizada la entrega del proyecto del alumno/a:
Antonio Peralta Sez




EL DIRECTOR DEL PROYECTO
Rafael Palacios Hielscher


Fdo.: Fecha: / /


V B del Coordinador de Proyectos
David Contreras Brcena



Fdo.: Fecha: / /


I
RESUMEN


Los buscadores de imgenes actuales, como Google images, se basan principalmente en el
nombre del archivo que contiene la imagen, en el nombre del enlace y en el texto que aparece
en la pgina donde se encuentra la imagen. Es decir que la bsqueda se basa en informacin
de tipo texto y no en informacin grfica.
El objetivo de este proyecto es desarrollar algoritmos de tratamiento digital de imgenes
que permitan clasificar fotografas en base al contenido grfico.
La idea para el desarrollo de este proyecto se basa en la creacin de un conjunto de
imgenes para posteriormente segmentar la imagen, y extraer de ella objetos y fondos
conocidos, y clasificarlas de acuerdo a los elementos localizados.
En este proyecto se ha desarrollado tres algoritmos de alto nivel para el
reconocimiento de los siguientes elementos:
Imgenes con cielo. Imgenes con csped. Imgenes con caras.





Para la identificacin de los dos primeros casos, se combina la informacin de dos
algoritmos de ms bajo nivel que identifican el color y la textura. Para la identificacin
del color, primero se realiza un estudio de las proyecciones RGB y HSV, en el cual se
analiza cual de los dos mtodos es ms apropiado.
Para la clasificacin de un color se calcula el grado de pertenencia de un punto a
funciones de densidad FDP obtenidas experimentalmente a partir de imgenes reales.
Fig 3-Cielo25
Fig 1- Cesped8
Fig 2- Rostro3

II
La deteccin de las texturas se realiza mediante el anlisis del histograma de la imagen
en escala de grises.
Por ltimo, el algoritmo localizador de caras, se basa en la identificacin previa de
los ojos, donde se aplican restricciones de tipo geomtrico. A continuacin se intenta
identificar una boca, en la parte inferior de los ojos centrado entre ambos. En caso de
localizar afirmativamente los ojos y la boca, en la geometra apropiada, la respuesta del
algoritmo ser afirmativa.
A continuacin se muestra algunos resultados obtenidos con los algoritmos cielos y
rostros, tras un anlisis completo de la fotografa.









Todos estos algoritmos se desarrollan en matlab, debido a la gran capacidad de
clculo matricial que ofrece y a la facilidad de trabajo con imgenes gracias a la Image
Precessing Toolbox.
Todos los algoritmos desarrollados han sido evaluados con una librera de imgenes
formada por fotografas de diversos contenidos, iluminacin, ubicacin geometra, etc.
Fig 5-Resultados del algoritmo
de cielo (verde indica
clasificado como cielo)
Fig 4- Resultado obtenido tras analizar la
fotografa con el algoritmo rotro.

III

ABSTRACT

The current search engine images, such as Google image, base their search on the
file name that contains the picture, link name, or the text of the website in which the
picture appears. In other words, they base their search on text information, and not on
graphic information.
The objective of this project is to develop digital image processing algorithms to
classify pictures in accordance with the graphic information.
The main idea of this project is to create a set of images, segment them, and extract
the familiar objects and backgrounds from the pictures, in order to classify them.
In this project, three high level algorithms have been developed to recognize the
following elements:
Image with sky Image whith grass Image whith face





The information of two low level algorithms, that indentify the color and the
texture, is combined to identify images with sky, and image with grass. A study of the
RGB and HSV projections is carried out to identify the color; this study analyzes which
method, RGB or HSV, is more appropriated.
The grade of membership of a point to a density function FDP (obtained
experimentally throw real images) is calculated to classify the color.
Fig 3-Cielo25
Fig 2- Cesped8
Fig 1- Rostro3

IV
The detection of textures is carried out by means of the analysis of the grey scale
image histogram.
Finally, the algorithm that locates faces applies geometric restrictions to identify the
eyes. After identifying the eyes, the algorithmic tries to identify the mouth under the
eyes, and centered between them. In the case of locating the eyes and mouth in the
correct geometry, the algorithms answer will be affirmative.
Next, the results of the sky and face algorithms are shown after a complete analysis
of the pictures.









All of these algorithms were developed in Matlab owing to its high capacity of
matrix calculation, and its facility of working with images due to the Image Processing
Toolbox.
Every one of the algorithms has been evaluated using an image library that consists
of pictures of several contents, illumination, geometric location, etc
Fig 5- Result of sky algorithm
(green means classified as sky)
Fig 4- Result of the face algorithm.

V

1 Introduccin y estado del arte .................................................................... - 1 -


1.1 Reconocimiento de caracteres. ............................................................... - 3 -
1.1.1 Introduccin .......................................................................................... - 3 -
1.1.2 Arquitectura de reconocimiento de caracteres manuscritos ................. - 5 -
1.1.3 Extraccin de caractersticas ................................................................ - 7 -
1.1.4 Comparacin......................................................................................... - 8 -
1.1.5 Conclusiones ........................................................................................ - 9 -
1.2 Reconocimiento de firmas .................................................................... - 10 -
1.2.1 Introduccin ........................................................................................ - 10 -
1.2.2 Verificacin de firma off-line ............................................................. - 11 -
1.2.3 Descripcin del sistema ...................................................................... - 12 -
1.2.4 Modelos HMM ................................................................................... - 18 -
1.2.5 Resultados obtenidos .......................................................................... - 19 -
1.2.6 Conclusiones ...................................................................................... - 21 -
1.3 Reconocimiento de rostros y expresiones faciales ............................... - 22 -
1.3.1 Introduccin ........................................................................................ - 22 -
1.3.2 Descripcin del sistema ...................................................................... - 22 -
1.3.3 Programa............................................................................................. - 30 -
1.3.4 Resultados .......................................................................................... - 31 -
2 Identificacin de necesidades......................................................................... - 33 -
2.1 Introduccin IDN ...................................................................................... - 33 -
2.2 Documento de concept del sistema............................................................ - 34 -
2.2.1 Objetivos del sistema .......................................................................... - 34 -
2.2.2 Alcance del sistema ............................................................................ - 35 -
2.2.3 Topologa de usuario finales .............................................................. - 36 -

VI
2.2.4 Restricciones....................................................................................... - 36 -
3 Plan de gestin ............................................................................................ - 38 -
3.1 Descripcin general del proyecto ............................................................. - 38 -
3.2 Diagrama de actividades a realizar .......................................................... - 39 -
3.3 Descripcin detallada de las actividades .................................................. - 40 -
3.4 Diagrama del equipo de trabajo ............................................................... - 46 -
3.5 Descripcin de actividades de cada integrante......................................... - 47 -
3.6Estimacin del esfuerzo de cada integrante .............................................. - 51 -
3.7 Presupuesto ............................................................................................... - 52 -
3.8 Planificacin de las actividades ................................................................ - 53 -
4 Estudio de arquitectura ................................................................................. - 55 -
4.1 Introduccin E-ARQ .................................................................................. - 55 -
4.2 Hardware/software del sistema actual ...................................................... - 57 -
4.3 Especificaciones de las aternativas. .......................................................... - 59 -
4.4 Evaluacin de las alternativas .................................................................. - 65 -
4.4.1 Evaluacin tcnica .............................................................................. - 65 -
4.4.2 Evaluacin econmica ........................................................................ - 66 -
4.5 Seleccin de la alternativa ........................................................................ - 67 -
5. Reconocimiento de colores ............................................................................ - 69 -
5.1 Introduccin .............................................................................................. - 69 -
5.2 Modelo RGB .............................................................................................. - 79 -
5.3 Modelo HSV .............................................................................................. - 81 -
5.4 Estudio RGB del Cielo .............................................................................. - 83 -
5.5 Estudio RGB del csped ............................................................................ - 88 -
5.6 Estudio RGB: cielo vs csped .................................................................... - 92 -
5.7 Conclusin RGB ........................................................................................ - 96 -
5.8 Estudio HSV: Cielo.................................................................................... - 98 -

VII
5.9 Estudio HS Csped .................................................................................. - 100 -
5.10 HS Cielo y Csped ................................................................................. - 101 -
5.11 Estudio de conflictos ............................................................................. - 102 -
5.11.1 Conflictos en RGB: interior ........................................................... - 102 -
5.11.2 Conflictos en RGB: fondo marino .................................................. - 107 -
5.11.3 Conflictos en HSV: interior ............................................................ - 111 -
5.11.4 Conflictos en HSV: fondo marino .................................................. - 112 -
5.12 Eleccin RGB o HSV ............................................................................. - 113 -
5.12.1 RGB ................................................................................................ - 114 -
5.12.2 HSV ................................................................................................ - 117 -
5.12.3 Conclusin ...................................................................................... - 119 -
5.13 Descripcin del algoritmo. .................................................................... - 120 -
5.13.1 Algoritmo azul ................................................................................ - 120 -
1.13.1 Algoritmo verde ............................................................................. - 122 -
6. Reconocimiento de texturas ........................................................................ - 124 -
6.1 Introduccin ............................................................................................ - 124 -
6.2 A travs de su histograma ....................................................................... - 127 -
6.2.1 Textura lisa ....................................................................................... - 127 -
6.2.2 Textura binaria.................................................................................. - 135 -
6.2.3 Textura rugosa .................................................................................. - 142 -
6.3 Descripcin del algoritmo textura........................................................... - 149 -
6.4Texturas a travs de la funcin statxture[F1] ......................................... - 153 -
6.4.1 Textura lisa ....................................................................................... - 154 -
6.4.2 Textura binaria.................................................................................. - 155 -
6.4.3 Textura rugosa .................................................................................. - 156 -
7. Anlisis combinado de color y texturas ..................................................... - 158 -
7.1 Descripcin del algoritmo reconocimiento de cielo ............................... - 159 -

VIII
7.2 Descripcin del algoritmo para reconocimiento de csped. ................... - 161 -
8. Detector caras .............................................................................................. - 163 -
8.1 Introduccin ............................................................................................ - 163 -
8.2 YCbCr ...................................................................................................... - 164 -
8.3 Descripcin algoritmo implementado ..................................................... - 166 -
8.3.1 Funcin rostro. .................................................................................. - 166 -
8.3.2 Funcin ojos ..................................................................................... - 167 -
8.3.3 Funcin labio .................................................................................... - 170 -
8.3.4 funcin Localizador (basado en geometras) .................................... - 173 -
9. Pruebas ......................................................................................................... - 179 -
9.1 Evaluacin del algoritmo de deteccin de cielo...................................... - 179 -
9.2 Evaluacin del algoritmo de csped ....................................................... - 182 -
9.3 Pruebas del algoritmo de identificacin textura ..................................... - 185 -
9.4 Detalles de evaluacin del algoritmo de reconocimiento de cielo .......... - 187 -
9.5 Pruebas algoritmo reconocimiento ......................................................... - 193 -
Conclusiones ..................................................................................................... - 198 -
Algoritmos cielo y csped .............................................................................. - 198 -
Algoritmo de deteccin de rostros ................................................................. - 199 -
Bibliografa ....................................................................................................... - 200 -
Definiciones e imagenes ................................................................................ - 200 -
Libros de consulta ......................................................................................... - 202 -
Anexo A. Biblioteca imgenes cielo. ............................................................... - 203 -
Anexo B. Biblioteca imgenes csped. ........................................................... - 211 -
Anexo C. Biblioteca imgenes interior. ......................................................... - 216 -
Anexo D. Biblioteca imgenes submarinas ................................................... - 220 -
Anexo E. Biblioteca imgenes rostros. ........................................................... - 222 -
Anexo F. Cdigo del algoritmo cielo .............................................................. - 228 -

IX
Anexo G. Codigo del algoritmo reconocimiento de caras. ........................... - 233 -

Reconocimientodeimgenesatravsdesucontenido
1
1 Introduccinyestadodelarte

Los buscadores de imgenes actuales, como Google images, se basan principalmente en el
nombre del archivo que contiene la imagen, en el nombre del enlace y en el texto que aparece
en la pgina donde se encuentra la imagen. Es decir que la bsqueda se basa en informacin
de texto y no en informacin grfica.
En la actualidad, Google est desarrollando algoritmos basados en el contenido de las
imgenes reconociendo formas y analizando su parecido, para ello centran en un subconjunto
de las imgenes que Google ha catalogado, ya que el anlisis y comparacin de imgenes
digitales requiere de un coste computacional tremendo. Realizar esta labor para todas las
imgenes indexadas por el buscador sera una tarea casi imposible, a da de hoy.
El campo del procesamiento de imgenes est continuamente evolucionando.
Durante los ltimos aos ha habido un incremento significativo en el inters en
campos como morfologa de imgenes, redes neuronales artificiales, procesamiento
de imgenes a color y/o en escalas de grises, compresin de datos de imgenes,
reconocimiento de imgenes y sistemas de anlisis de imgenes basados en
conocimiento.
El reconocimiento es un atributo bsico del ser humano, as como de
otros organismos vivos. Este reconocimiento es generado normalmente por medio de
patrones.[D1]
Entre las principales aplicaciones del reconocimiento de formas cabe destacar
las siguientes:
Reconocimiento de caracteres. [D2]
Anlisis de documentos.
Reconocimiento de firmas.[D3]
Reconocimiento de huellas dactilares.
Reconocimiento de piezas industriales.
Reconocimiento de texturas.
Deteccin de defectos para control de calidad.
Reconocimientodeimgenesatravsdesucontenido
2
Reconocimiento de rostros y expresiones faciales.[D4]
A continuacin se muestran a modo de introduccin y de forma breve algunos
estudios realizado sobre estos temas. Estos mismos estudios sirven para visualizar como
se encuentra el estado del arte sobre estos temas en la actualidad.
Reconocimientodeimgenesatravsdesucontenido
3

1.1 Reconocimientodecaracteres.
1.1.1Introduccin


[D2] En la actualidad el desarrollo de sistemas de reconocimiento de escritura es
realizado casi en su totalidad, por empresas comerciales, quienes proponen el uso de
estilos de escritura predeterminados para que el reconocimiento sea vlido, requiriendo
para ello del aprendizaje del estilo por parte del dibujante. Con lo mencionado
anteriormente se pretende hacer notar que los problemas en el rea del reconocimiento
de escritura son numerosos, basta con que dos dibujantes distintos escriban la misma
palabra para comprobar que hay varias caractersticas que varan y que es preciso
considerar para lograr el reconocimiento. Por esto, el involucrar diversos algoritmos de
segmentacin y extraccin de caractersticas se vuelve necesario, sin embargo esto
mismo ocasiona un incremento considerable en el trabajo y en la experiencia requerida
para darle solucin.
El estudio en sta rea no es algo reciente, ya desde los aos setenta se han
realizado trabajos al respecto, y alrededor del mundo hay muchas personas dedicadas a
investigar un pequeo aspecto sobre el reconocimiento de caracteres, ya sea sobre
segmentacin, reconocimiento de patrones, contexto, semntica, etc., entre muchas otras
reas, que pueden a su vez dirigirse hacia alfabetos de distintos idiomas. En el idioma
espaol se han desarrollado pocos trabajos de este tipo, ya que la gran mayora de las
soluciones comerciales se encuentran en ingls. El tema es extenso, pues comprende
desde la captura de la escritura, el estudio o diseo de los medios electrnicos para
realizarla, el anlisis de los datos y la comunicacin con el dibujante por medio de la
programacin de interfaces, hasta la validacin y comprobacin de los resultados.
Considerando que existe una gran cantidad de mtodos para realizar cada parte del
proceso, segn el enfoque dado, se requiere sin duda del trabajo en equipo no slo de
ingenieros, sino de personas de diversas disciplinas especializadas en reas
relacionadas.
A continuacin se describe un sistema de reconocimiento de caracteres por
regiones, en particular las cinco vocales. La captura se realiza mediante una tableta
Reconocimientodeimgenesatravsdesucontenido
4
digitalizadora, y los trazos de la escritura se guardan como imgenes en formato bmp. El
algoritmo se basa en una estrategia por regiones en el dominio de la imagen y brinda al
escritor/dibujante una mayor facilidad en la escritura, en cuanto a que se respeta la
personalidad de ella, pues no se requiere del uso de un estilo predeterminado. Los
resultados de la evaluacin preliminar del algoritmo propuesto, sobre una pequea base
de datos, mostraron una alta tasa de reconocimiento para las diferentes vocales. Con la
finalidad de situar el algoritmo propuesto dentro del contexto de la arquitectura general
de un sistema de reconocimiento de caracteres manuscritos. El diseo e implementacin
del algoritmo, as como los resultados de la evaluacin de su desempeo se presentan a
continuacin.

Reconocimientodeimgenesatravsdesucontenido
5

1.1.2Arquitecturadereconocimientodecaracteresmanuscritos

La arquitectura de un sistema de reconocimiento de escritura manuscrita abarca
desde la captura de la imagen inicial de la escritura, hasta el reconocimiento de la
misma. El sistema se puede dividir de manera general en las secciones de pre-
procesamiento, reconocimiento, y post-procesamiento, tal como se encuentran divididos
la mayora de los sistemas de reconocimiento de la escritura manuscrita. El diagrama de
la arquitectura para el reconocimiento de la escritura se muestra en la Fig. 1.

Fig 6- Diagrama a bloques del sistema

El proceso inicia con la adquisicin de los datos mediante una tableta
digitalizadora. El escritor/dibujante utiliz la pluma incorporada y una interfaz grfica
hecha en Matlab, con lo cual se obtuvieron trazos de hasta seis pixeles de ancho,
guardados como imgenes en formato bmp. El siguiente paso del proceso es el
preprocesamiento de la seal, que consiste de varias etapas. La seal de informacin
puede ser amplificada y filtrada para corregir defectos como la atenuacin o el ruido. La
siguiente etapa de adecuacin, a nivel pxel, puede incluir tratamientos tales como
adelgazamiento (thinning), suavizado (smoothing), esqueletonizacin (squeletonizing),
vectorizacin, etc. La aplicacin de estos procesos se considera parte del pre-
procesamiento de la escritura, el cual incluye tambin a la segmentacin. En este
sistema propuesto, solo se requiri de adelgazamiento y correccin de inclinacin.
Reconocimientodeimgenesatravsdesucontenido
6
La segmentacin de la escritura se realiza antes de la aplicacin de los algoritmos
de reconocimiento, y se divide en dos tipos: externa e interna. En la segmentacin
externa se realiza la separacin de unidades de escritura, tales como caracteres o
palabras. Dado que varias letras pueden escribirse con un solo trazo en la escritura
cursiva, se requiere de algn reconocimiento previo a la separacin. A este tipo de
segmentacin que requiere reconocimiento se le llama segmentacin interna. El sistema,
utiliza tanto segmentacin externa, como interna. La segmentacin externa, es til para
separar en caracteres las palabras formadas por la unin de entre dos a seis vocales. El
mtodo consiste en el barrido de la imagen de la palabra, para la determinacin de
puntos mximos y mnimos. Adems de secuencias de puntos mnimos, que indican la
presencia de un enlace, el cual es analizado para lo obtencin del un corte central, que
separa a la vocal anterior de la siguiente. Aqu este tipo de segmentacin es requerida,
debido a que la escritura analizada es enlazada y el reconocimiento se realiza carcter
por carcter, con la finalidad de que el diccionario sea reducido (slo los caracteres del
abecedario).

Reconocimientodeimgenesatravsdesucontenido
7

1.1.3Extraccindecaractersticas


Las caractersticas extradas de la imagen del carcter una vez aislado (despus de
la segmentacin), se basan en el anlisis de la matriz que lo representa. Las primeras
caractersticas extradas son las variaciones que la vocal presenta en las regiones
superior, inferior, izquierda y derecha. Estas variaciones se obtienen de las vocales
prototipo y se guardan como cinco funciones para cada regin. Esas veinte funciones
forman parte de la base de datos, con la que posteriormente las funciones que genere la
vocal prueba (vocal desconocida) sern comparadas. Imgenes de vocales prototipo y
las funciones superiores generadas para cada imagen se muestran en la Fig. 2.




















Una vez obtenidas todas las funciones para el carcter prueba (desconocido), se
realiza un proceso de normalizacin, que consiste en un ajuste de estas funciones,
debido a que su tamao vara, adems de que puede posicionarse en cualquier zona del
rea de escritura. Es necesario entonces un proceso de escalamiento y alineacin. La
alineacin obtiene el inicio de la funcin prueba con lo cual se recorre la funcin de tal
forma que comience en la misma posicin que los caracteres prototipo. El siguiente
paso es el escalamiento, que obtiene la longitud de la funcin prueba en x y en y, y
calcula los factores de escalamiento fx=drx/dpx y fy=dry/dpy, en donde drx y dry, dpx y
dpy son las mximas longitudes en x y en y de la funcin prototipo y prueba
respectivamente. Esos factores permitirn el escalamiento de la funcin prueba al

Fig 7-Imgenes prototipo y funciones superiores.
Reconocimientodeimgenesatravsdesucontenido
8
tamao de la funcin prototipo. Con los procesos anteriores se pretende que la funcin
que se obtenga de la prueba sea lo ms cercano a las caractersticas del prototipo
(tamao y posicin), de tal forma que al comparar sea ms fcil el reconocimiento. Un
resultado de esa normalizacin se muestra en la Fig. 3.












Una vez obtenidas las funciones normalizadas, se sigue con la extraccin de
caractersticas por regiones del carcter, cortes, ancho, puntos mximos, puntos
mnimos, densidad, inclinacin, posicin de inicio, posicin de fin, caractersticas con
las que se forman vectores con parmetros ordenados, que se extraen tanto para los
caracteres prototipo, como para los prueba. Todos estos parmetros son obtenidos por
barridos optimizados sobre la imagen.

1.1.4Comparacin


Finalmente la comparacin se realiza calculando las distancias geomtricas entre el
vector obtenido para el carcter a reconocer y cada uno de los de la base de datos de
prototipos. Al obtener dichas distancias, se observa cual es la mnima y el carcter
prototipo relacionado con esa distancia mnima es asignado como el carcter
reconocido.


Fig 8- Normalizacin
Reconocimientodeimgenesatravsdesucontenido
9

1.1.5Conclusiones


Para un buen reconocimiento de la escritura manuscrita se requiere del estudio de
una gran cantidad de variables. Aqu se ha descrito de manera general las funciones de
los diferentes elementos que conforman a un sistema de reconocimiento de escritura
manuscrita. De manera particular, se aboca a la problemtica de reconocimiento de
caracteres manuscritos, y se propone un algoritmo sencillo para el reconocimiento de
vocales. El algoritmo est basado en una estrategia por regiones en el dominio de la
imagen. Los resultados de la evaluacin preliminar del algoritmo arrojaron una tasa de
reconocimiento de las vocales superior al 97% lo que hace al algoritmo propuesto un
buen candidato para una aplicacin real. Es importante mencionar que el algoritmo se
probo con una pequea base de datos y que restara entonces validar los resultados con
una base de datos ms grande.
Reconocimientodeimgenesatravsdesucontenido
10

1.2 Reconocimientodefirmas
1.2.1Introduccin

[D3] En la sociedad actual, la seguridad se ha convertido en un tema prioritario. A
fin de garantizar la proteccin de los sistemas frente a una mala utilizacin voluntaria,
es necesario realizar un proceso de identificacin y verificacin de la identidad de cada
persona de modo seguro, pero a la vez sencillo y natural.
La Biometra facilita la identificacin de cada individuo de forma unvoca mediante
la medicin de diferentes caractersticas personales e intransferibles. Estas
caractersticas individuales pueden clasificarse entre caractersticas fsicas, como por
ejemplo la huella dactilar, el iris o la retina; y caractersticas del comportamiento, como
la forma de hablar, escribir, firma o teclear.
Existe an cierto reparo en la sociedad frente a los sistemas de identificacin
biomtrica basados en caractersticas fsicas como las huellas, el iris o la retina, ya que
son asociados con cuestiones penales. En cambio, los sistemas basados en el
comportamiento, aunque proporcionan menor fiabilidad que los anteriores, son mejor
aceptados socialmente.
La Universidad Politcnica de Madrid, la Universidad Politcnica de Catalua, la
Universidad de Valladolid y la Universidad del Pas Vasco participan conjuntamente, a
travs de diferentes grupos de investigacin en el Proyecto de Investigacin titulado
Aplicacin de la Identificacin de Personas mediante Multimodalidad Biomtrica en
Entornos de Seguridad y Acceso Natural a Servicios de Informacin. El primer
resultado de este esfuerzo comn ha sido la creacin de una Base de Datos Biomtricos
Multimodal, que consta de huellas digitales, firmas manuscritas y voz, y que sirve de
base para el resto de tareas de investigacin de los grupos participantes. El presente
artculo es consecuencia de los trabajos de investigacin posteriores sobre firma
manuscrita a partir de dicha base de datos.

Reconocimientodeimgenesatravsdesucontenido
11

1.2.2Verificacindefirmaoffline

El uso de la firma manuscrita como modo de identificacin est muy arraigado y
goza d una aceptacin social: firmamos con frecuencia para mostrar conformidad con el
contenido de documentos o para autorizar transacciones comerciales.
La verificacin de las firmas se limita normalmente a una inspeccin visual, como
si se tratara de la comparacin de dos fotos, pero este mtodo no es eficaz frente a
falsificadores y en la mayora de las ocasiones no se lleva a cabo proceso de
verificacin alguno. La autorizacin de la verificacin de firmas manuscritas puede
proporcionar la solucin adecuada para evitar posibles fraudes.
La tecnologa biomtrica de verificacin automtica de firmas manuscritas se
compone de dos reas principales de investigacin dependiendo del mtodo de
adquisicin de los datos. La primera de ellas se refiere a la firma manuscrita on-line o
dinmica, en la que se captura sobre una tableta digitalizadora la ejecucin completa de
la firma. La otra rea hace referencia a la verificacin de firmas off-line o estticas. De
la firma manuscrita slo est disponible su forma grfica en un documento escrito que
es escaneado para obtener la representacin digital de la imagen. Los sistemas on-line
cuentan con mayor informacin que los sistemas off-line, ya que, adems de la imagen
2D de la firma, conocen sus parmetros dinmicos con el tiempo de adquisicin,
velocidad, presin, inclinacin del bolgrafo, etc., lo cual los hace a priori ms atractivos
desde el punto de la investigacin.
En este artculo se presenta un sistema de verificacin de firmas off-line basado en
tcnicas dinmicas, con el objetivo de acercar ambas reas de investigacin, probando la
viabilidad de la aplicacin a la firma off-line de mtodos empleados habitualmente en
sistemas dinmicos.
Reconocimientodeimgenesatravsdesucontenido
12

1.2.3Descripcindelsistema

A continuacin se hace una descripcin de los mdulos esenciales del sistema de
verificacin off-line: adquisicin de firmas, base de datos, preprocesado, entrenamiento
de los modelos, verificacin y seleccin de umbrales.
A. Adquisicin de firmas manuscritas
La captura de las firmas manuscritas se realiza de manera dinmica
mediante una tableta digitalizadora Intuos A6 de WACOM y el lpiz Intuos
Inking Pen. El lpiz permite firmar igual que con un bolgrafo convencional,
con lo cual se dispone de una versin en papel de todas las firmas manuscritas
digitalizadas en la base de datos.
El rea activa de la tableta posee una resolucin de 100 puntos por
milmetro y captura coordenadas x-y, presin, inclinacin y acimut a una
frecuencia de 100 muestra por segundo. Todos los datos capturados de la firma,
tanto puntos con presin o pen down, como puntos sin presin o pen ups, son
almacenados en ficheros de la base de datos de firmas manuscritas dinmicas.
Por otro lado, se almacenan las ejecuciones de cada firma en formato papel
para su posterior proceso de escaneado.

Fig 9- Firma propia del usuario9

El proceso de escaneado a 600 puntos por pulgada pticos, no
interpolados, genera el formato grfico esttico u off-line de las firmas. La
figura 4 representa un ejemplo de una firma propia en formato esttico.
Reconocimientodeimgenesatravsdesucontenido
13

B. Base de datos e firmas
El sistema parte de una base de datos de firmantes, de cada uno de los
cuales se dispone de 25 firmas propias y de 25 falsificaciones de 5 impostores,
ya que cada firmante acta tambin de impostores proporcionando 25
falsificaciones, 5 de cada uno de los 5 firmantes inmediatamente anteriores a l
en la base de datos.
Las falsificaciones almacenadas en la base de datos son de tipo entrenadas
o skilled forgery,ya que cada impostor repite varis veces las firmas de la
vctima, hasta considerar su imitacin lo suficientemente buena, antes de que
dicha falsificacin sea adquirida y almacenada definitivamente. Con el nimo
de mejorar an ms la calidad de las falsificaciones se ha estimulado a los
participantes con un premio. Todo esto hace que la calidad de las
falsificaciones se alta.
La base de datos de firmas manuscritas se crea con un conjunto de
subcorpora independientes, uno por cada equipo de trabajo participante en el
proyecto de investigacin, de 75 firmantes enlazados en una cola circular. El
subcorpus utilizado en este trabajo ha sido adquirido en la Escuela de
Ingenieros de Bilbao.

C. Preprocesado de las firmas
La ejecucin de una firma nunca es idntica a otra previa ya que depende
de muchos factores, como puede ser el tamao, la zona de la tableta donde se
adquiere, etc. Por ello se realiza un preporcesado para obtener la representacin
de la firma independientemente de dichos factores.
La segmentacin de cada firma manuscrita requiere extraer la firma
esttica y off-line del fondo en la imagen electrnica obtenida tras el
escaneado. Pare ello, es posible utilizar diferentes operaciones morfolgicas
[I107], no teniendo en cuenta el factor de la rotacin de las firmas.
Este trabajo se centra en los aspectos posteriores a esta etapa de
segmentacin, ya que a travs de la informacin capturada con la tableta de
digitalizacin, se pueden sintetizar la imagen de la firma independiente del
fondo, eliminando cualquier rasgo dinmico de la misma. A partir de la
Reconocimientodeimgenesatravsdesucontenido
14
informacin esttica de la firma, es decir, los puntos considerados como pen
downs o con tinta de la misma, se genera artificialmente un fichero con la
informacin grfica o imagen de la firma manuscrita.
Las imgenes extradas del fondo de las firmas se normalizan a unas
dimensiones mximas de 512 pxeles de ancho por 256 de alto y son
justificadas al centro de dichas dimensiones. Las firmas con tendencia
horizontal presentan lneas vacas y las de tendencia vertical columnas vacas.


Fig 10-Firmas propias de los usuarios 9 y 28 normalizadas
Cada una de las imgenes as generadas, guarda su propia escala de
conversin de pxeles a milmetros y la relacin de aspecto es siempre de 2:1,
vase la figura 5.
Estos ficheros grficos contienen nicamente la informacin grfica 2D
esttica de cada firma, ya que se ha eliminado cualquier parmetro temporal, de
inclinacin o de presin obtenidos durante la captura.
Partiendo de la imagen de la firma se realiza el ltimo paso del
preporcesado, el relativo al seguimiento del contorno de la imagen de la firma.
A travs del estudio de la conectividad se analizan las estructuras blob que
conforman la imagen de la firma. Un blob representa una estructura continua
identificable en una imagen por ser de un color distintivo de su fondo.
El conjunto de blobs, resultado de la conectividad, incluye informacin de
los ejes de inercia, el centro de gravedad, los puntos del permetro, etc. de cada
blob. Adems de dichos datos es posible conocer la estructura jerrquica que
relaciona cada blob de la imagen con el resto de blobs mediante su ralacin de
parentesco.
Reconocimientodeimgenesatravsdesucontenido
15

Fig 11- Blobs de la firma ejemplo presentada en la Fig. 2
En la figura 6 se incluyen en azul los blobs pieza o hijos del fondo de la
imagen y en rojo los blobs hijo dependientes de los anteriores. En el ejemplo se
observan cuatro blobs pieza, uno principal y otro tres de menor tamao
correspondientes a las letras b e i que se representan aisladas en la imagen
de la firma.
Las cadenas de puntos (x, y) del permetro de blobs, tanto piezas como de
sus hijos, que conforman la imagen constituyen la informacin biomtrica
relevante en este trabajo. Dicha cadena de puntos (x, y) se recorre en sentido
horario partiendo del punto situado ms arriba en la imagen.

D. Entrenamiento del sistema
Un sistema de verificacin de firmas requiere un proceso de entrenamiento
de modelos representativos de las firmas que se desea verificar. Los modelos
utilizados en este trabajo se denominan modelos ocultos de Markov o HMM
(Hidden Markov Models).
Un modelo HMM es por definicin un autmata de estados finitos
estocsticos, a travs del cual se representa a una seal estocstica cuyas
caractersticas estadsticas varan a lo largo del tiempo, mediante una secuencia
de estados.
Los modelos HMM se utilizan mayoritariamente para el reconocimiento
de la voz, representada como una secuencia de muestras ordenadas en el
tiempo campo en el que han demostrado una alta eficiencia. Tambin
comienzan a usarse en otros campos como es el reconocimiento de imgenes.
Reconocimientodeimgenesatravsdesucontenido
16
En este trabajo se utiliza como secuencia de muestras para el
entrenamiento de los modelos, la cadena de puntos del permetro (x, y) de los
blobs que conforman la imagen de las firmas propias listadas anteriormente.
El entrenamiento del modelo HMM de cada firmante se realiza a partir de
las versiones 00, 01, 02, 03, 04, 05, 10, 15, 20 de sus firmas originales, las 5
primeras se utilizan para inicializar el modelo, mientras que el proceso de
reestimacin se realiza con el conjunto de las nueve firmas.
La topologa del modelo HMM que proporciona un mejor comportamiento
es la denominada como izquierda derecha o left right (L-R) de 6 estados, en
el que los estados inicial y final no se comportan como los otros cuatro estados
intermedios del modelo, estados activos del mismo.

E. Verificacin y Seleccin del Umbral
Una vez obtenidos los modelos HMM de cada firmante, el proceso de
verificacin consiste en calcular el dato de similitud entre el modelo y firma a
verificar. A partir de dicho valor de similitud es posible determinar si la firma
verificada fue ejecutada por un usuario impostor o por el propio firmante.
La decisin se fundamenta en la utilizacin de un valor umbral, el cul se
obtiene a partir de las curvas DET (Detection Error Tradeoff). Esta curva
permite representar los datos relativos a las tasas de error que permiten calibrar
la calidad o nivel de seguridad del sistema de verificacin, la tasa FAR (False
Acceptance Rate) y la tasa FRR (False Reject Rate).
Para la obtencin del umbral en el que el comportamiento de ambas tasas
es ptimo es posible priorizar una de ellas, lo que implica empeorar la otra,
para ello se utiliza una funcin coste:

DCF = Cmiss x Pmiss x Ptrue + Cfa x Pfa x Pfalse.
Siendo Cmiss la constant de la ponderacin de un falso rechazo, Cfa la
ponderacin de una falsa aceptacin, Ptrue la probabilidad a priori y Pfalse, su
complementacin (1-Ptrue).
Reconocimientodeimgenesatravsdesucontenido
17
La tasa de error EER (Equal Error Rate) o tasa de equierror
correspondiente al punto en que FAR y FRR coinciden, por lo que permite
conocer el mejor funcionamiento mutuo de ambas tasas de error.
El clculo de las curvas DET se realiza a travs del software de libre
distribucin del NIST [I110] y mediante sus coeficientes estndar. Los valores
estndar de los coeficientes se corresponden con los siguientes valores:
Cmiss = 10, Cfa = 1 y Ptrue = 0.01 lo que provoca que se priorice
fuertemente el valor de la tasa FAR frente al de la tasa FRR.
Reconocimientodeimgenesatravsdesucontenido
18

1.2.4ModelosHMM

Para la verificacin de las firmas estticas u off-line se parte de la secuencia de
puntos de los permetros de los blobs que conforman la imagen de la firma. Dicha
secuencia de puntos aunque no estn presentadas en funcin del tiempo, permiten
aplicar los modelos HMM, tcnica dinmica de reconocimientos, a la verificacin de
firmas off-line.
Se utilizan dos posibles ordenamientos para las cadenas de puntos del permetro de
los blobs de una firma, el ordenamiento por tamao (TAM) y el ordenamiento segn la
distribucin Izquierda-Derecha (ID) de los blobs de la imagen de la firma. El
ordenamiento ID prioriza a los blobs situados en posicin arriba abajo / izquierda
derecha, adecuada para la escritura latina en la que se han capturado las firmas. Para el
ordenamiento por tamao, se prioriza a los blobs de mayor tamao frente a los menores.
Para ambos ordenamientos la generacin de la secuencia de puntos del permetro, a
utilizar en el entrenamiento de modelos y la verificacin de las firmas, se realiza como
la concatenacin de las cadenas de puntos de los permetros de los blobs ordenados. Se
concatenan los puntos del blob pieza que es su padre, tras los cuales se insertan los
puntos del siguiente blob pieza e hijos segn el orden utilizado.
Para cada ordenamiento, TAM e ID, se genera un modelo HMM representativo de
las firmas propias de cada firmante segn el ordenamiento utilizado.

Fig 12- Ordenamiento segn ID (escala x 2)
Una misma imagen de firma proporciona las mismas estructuras blob, por lo que la
diferencia viene representada por la ordenacin de los puntos del permetro de los
Reconocimientodeimgenesatravsdesucontenido
19
mismos. En la figura 7 se observa la ordenacin TAM frente a la ordenacin ID que se
presenta en la figura 3. Ambas figuras incluyen una numeracin creciente entre los
blobs hijos de la imagen en funcin del ordenamiento utilizado.

1.2.5Resultadosobtenidos

Se presentan los resultados de la calidad del sistema de verificacin de firmas off-
line a travs de las tasas de error medias obtenidas para todos los firmantes de la base de
datos, mediante los dos modelos HMM generados por usuario, el modelo TAM y el
modelo ID.

Tabla 1- Resultados para Tasa de Equierror para Skilled forgeries
El sistema de verificacin proporciona un resultado de la tasa de equierror EER
levemente mejor para el ordenamiento ID de los puntos del permetro de blob. conocida
la naturaleza entrenada de las falsificaciones verificadas una tasa de equierror cercano al
30 % es ptimo.
El valor de la tasa EER se representa por un punto curva DET representada en la
figura 8, el cual corresponde al mejor comportamiento mutuo de las tasas de error FAR
y FRR obtenidas en el proceso de verificacin.
Reconocimientodeimgenesatravsdesucontenido
20

Fig 13-Curva DET firmante 33

Mediante la presentacin de la curva DET se puede observar el comportamiento
relativo de las tasas FAR (eje x) y la tas FRR (eje y), en el que cuando una aumenta la
otra disminuye y viceversa. Los valores ptimos de ambas tasas para los ordenamientos
TAM e ID y firmas falsificadas entrenadas se presentan a continuacin:

Tabla 2- Resultados para Skilled Forgeries

En la tabla 2 se presentan los valores medios de las tasas de error obtenidas para los
75 firmantes de la base de datos, mediante la utilizacin de los coeficientes estndar de
NIST. Se obtiene una tasa de falsa aceptacin FAR cercana al 0 %. Lo que provoca un
rechazo de todas las falsificaciones, frente a una tasa FRR elevada, lo que proporciona
un rechazo de las firmas propias de los firmantes. En casos particulares de firmas
estables difciles de falsificar, como en el caso del usuario 13 se observa un valor FAR
igual a 0 y un valor de FRR de 12.5%.
Reconocimientodeimgenesatravsdesucontenido
21
A partir de otros valores de coeficientes distintos a los estndares de NIST y
conociendo el ERR, que es invariante, FRR ajustndolos a las necesidades de las
aplicacin.
El ordenamiento de los puntos del permetro de los blobs mediante la distribucin
ID, es decir, el ordenamiento basado en la escritura latina, proporciona un mejor
rendimiento del sistema.

1.2.6Conclusiones

Se ha desarrollado un sistema de verificacin de firmas off-line basado en HMM
que ha sido probado sobre una base de datos de skilled forgerys.
Se obtienen mejores resultado con modelos en los cuales los blobs se ordenan de
arriba-abajo e izquierda-derecha que en modelos con blobs ordenado por tamaos, de
mayor a menor.
Reconocimientodeimgenesatravsdesucontenido
22

1.3 Reconocimientoderostrosyexpresionesfaciales

1.3.1Introduccin


[D4] Desde la percepcin del ser humano, la forma ms sencilla de reconocer
personas es a travs del rostro, ya que este tiene caractersticas nicas como distancia
entre los ojos, anchura de la nariz, forma de la barbilla, pmulos, forma de la boca, etc.
El presente apartado describe un sistema computacional de seguridad basado en el
reconocimiento de rostros, que explota las caractersticas anteriormente mencionadas.
En el presente proyecto se ha desarrollado un procedimiento de deteccin de caras
como parte de algoritmos de clasificacin de imgenes.

1.3.2Descripcindelsistema

El sistema estudiado est conformado por un programa desarrollado en MATLAB y
por una parte de hardware. Esta ltima es conformada por una computadora conectada a
una cmara web para poder capturar las imgenes de los rostros de diferentes personas.
La cmara web estar colocada sobre un soporte, el cual a su vez tendr una base donde
la persona colocar el rostro para que la cmara web pueda capturar la imagen
respectiva. El diseo consiste en una caja, donde se encontrar la cmara web en un
extremo y en el otro el soporte del rostro. Adems se colocar una lmpara fluorescente
en la parte superior para asegurar una adecuada iluminacin. El esquema de la base
propuesta se muestra en la Fig. 9.
Reconocimientodeimgenesatravsdesucontenido
23

Fig 14- Base para la captura de imgenes
En la parte de software, se ha implementado un algoritmo que permite segmentar
las imgenes capturadas para obtener nicamente la imagen del rostro de esa forma se
descarta informacin de otro tipo que puede ser no relevante para los objetivos del
programa. Posteriormente, se procede con la descomposicin de las imgenes para
luego aplicarles la tcnica de Anlisis de Componentes Principales, con lo cual
finalmente se procede a realizar el reconocimiento. A continuacin se explicarn los
temas involucrados para la realizacin del algoritmo y posteriormente los pasos que se
siguieron para la implementacin del programa.
1. Segmentacin de imgenes
Una vez que la imagen es capturada con la cmara web, se procede con el algoritmo
de segmentacin, el cual est basado en las proyecciones de las derivadas de las filas y
columnas de los valores de la imagen.
Previamente, se le aplica el filtrado de mediana a la imagen, para quitar el ruido y
suavizar la imagen. Luego se procede a recuantizar la imagen a dos bits, para que los
cambios sean ms bruscos y de esta manera las derivadas se detecten mejor. Luego, se
obtiene el negativo de la imagen recuantizada para que el fondo y todo elemento no
perteneciente al rostro sea oscuro y facilitar la segmentacin (ver Fig. 10).
Reconocimientodeimgenesatravsdesucontenido
24

Fig 15- (a) Imagen capturada despus de aplicar el filtrado de mediana. (b) Imagen recuantizada
a dos bits. (c)
De la imagen negativa, se obtienen los vectores Pv(n) y Ph(n), que son las
proyecciones de las columnas y las filas, respectivamente (ver Fig. 11). Como cada fila
y columna tiene informacin de los valores de los pxeles, las proyecciones tienen la
informacin de los pxeles de toda la imagen. A estos vectores se les calcula la derivada
para poder ver los cambios de estos valores, es decir, cambios de tonalidades en la
imagen.
A partir de de Ph(n) y Pv(n), se obtienen las derivadas Ph(n) y Pv(n) (ver Fig. 12).
, donde n es el ndice que corresponde a cada elemento que contienen los vectores.

Fig 16- Proyecciones de filas y columnas
Reconocimientodeimgenesatravsdesucontenido
25


Fig 17- Derivada de las proyecciones de filas y columnas, respectivamente
Para las columnas, se obtiene el valor mximo, que indica la primera variacin de
tonalidad. Este valor se va a usar para segmentar la imagen en el eje vertical. El valor
mximo de Pv(n) puede ser expresado como :
Pvmax = Pv(nmax) (1)
donde:
Pv(nmax) > Pv(n) para todo n nmax (2)
El valor nmax es el ndice del valor mximo del vector. De la misma forma,
nmin es el ndice del valor mnimo del vector.
Luego se procede a calcular el valor :
Lp = N nmax (3)
Donde N es el nmero de columnas de la imagen y Lp el valor equivalente al
nmero de columnas posteriores al valor mximo.
Luego se procede a calcular el vector Pv1(n), el cual contendr los valores de las
proyecciones posteriores al valor mximo. De manera similar, se calcula el vector
Pv2(n). Este vector contiene los valores de Pv1(n) desde la mitad hasta el ltimo
Reconocimientodeimgenesatravsdesucontenido
26
valor, ya que en este tramo se encuentra el valor mnimo, el cual indica la segunda
variacin de tonalidad. Con estos valores, se procede a segmentar la imagen. El
procedimiento matemtico se puede expresar como :
Pv1(n) = Pv(n + nmax) n = 0, 1, ., Lp - 1 (4)
Pv1(n) = Pv(n + nmax) n = 0, 1, ., Lp - 1 (5)
Pv2(n) = Pv1(Lp/2 + n) n = 0, 1, ., Lp/2 - 1 (6)
Pv2min = Pv2(nmin) (7)
donde:
Pv2(nmin) < Pv2(n) para todo n nmin (8)
Luego se forma el vector con los valores de las proyecciones, desde el ndice del
valor mximo hasta el ndice del valor mnimo, con lo cual se obtiene las proyecciones
de la imagen segmentada con sus respectivos ndices. Estos ltimos son utilizados para
indicar las columnas a descartar y finalmente segmentar la imagen en las columnas.
Posteriormente se procede a segmentar la imagen en las filas. A diferencia de las
columnas, en las filas no se utilizar la derivada de las proyecciones debido a que, como
se puede observar en la figura 11, slo hay un cambio brusco cerca de la fila 50, lo cual
indica que hay cambio de tonalidad. Si se observa la figura 6c, en las primeras filas
tienen valores bajos, lo cual se ve reflejado en las proyecciones, y luego cambia a
valores altos que corresponden al rostro. Pero en las ltimas filas, donde termina el
rostro, no hay cambios significativos como en el caso de las columnas, por lo que no se
podra utilizar el mismo tipo de segmentacin que en las columnas ya que no
segmentara bien, para lo cual se requiere que el lmite inferior del rostro vaya apoyado
en una base y de esta manera descartar la parte del cuello o los hombros. De las filas, se
obtiene Ph(m), donde m = 0, 1, ., M-1 (M es el nmero de filas de la imagen).
Luego se calcula el valor mximo del vector Ph(m) para segmentar la parte superior
de la imagen :
Ph(mmax) > Ph(m) para todo m mmax (9)
Luego se obtiene :
Reconocimientodeimgenesatravsdesucontenido
27
Ph1(m) = Ph(m = 0, 1, , mmax/2) (10)
Donde Ph1(m) contendr los valores de las proyecciones desde la primera fila
hasta aquella cuyo ndice es la mitad del mmax (donde mmax es el ndice del valor
mximo de las filas). De esta manera se obtiene el rango donde se encuentra el cambio
brusco que indica cambio de tonalidad (de fondo a rostro).
Para que el cambio sea ms evidente, se procede con el submuestreo en factor de 3
de Ph1(m), y a este ltimo vector se le calcula la derivada, con lo cual se procede a
segmentar la imagen en las filas. El procedimiento se puede expresar como :
Phd(m) = Ph1(3m) Donde m = 0, 1, , mmax/6 (11)
Phd(m1) > Phd(m) Para todo m m1 (12)
Donde m1 es el ndice del valor mximo de Phd(m)

Fig 18-Proyecciones de las filas, proyecciones de las filas hasta la mitad del vector y las
proyecciones
Como el tamao de las imgenes segmentadas puede variar, se procede a
estandarizarlo con pixeles de la imagen entera o quitndole pixeles sobrantes, segn sea
el caso. Luego de esto, se obtiene finalmente la imagen segmentada, como se puede
apreciar en la Fig. 14.
Reconocimientodeimgenesatravsdesucontenido
28

Fig 19- Imagen segmentada

2. Descomposicin Wavelet

La descomposicin wavelet es una tcnica que se utiliza para descomponer la
imagen de entrada en cuatro sub-imgenes. En el programa se utiliza la descomposicin
wavelet para reducir las dimensiones de las imgenes sin perder la informacin facial
necesaria. El resultado de la descomposicin est conformado cuatro sub-imgenes, que
contienen detalles principales, detalles verticales, detalles horizontales y detalles
diagonales. En el presente documento, se descompuso la imagen dos veces, por lo cual
se obtienen cuatro subimgenes cuyas dimensiones son cuatro veces menor que la
imagen original; sin embargo, los detalles principales no se pierden. Para el programa,
se utiliza la sub-imagen con los detalles principales y se le normaliza, a fin de que el
rango de grises, se encuentre entre 0 y 255.
Reconocimientodeimgenesatravsdesucontenido
29

En la Fig. 15 se observa la descomposicin Wavelet de una imagen facial.

Fig 20-Imagen facial y sus respectivas subimgenes. (wavelets)

3. Anlisis de Componentes Principales (ACP)

El ACP es un mtodo matemtico que da origen al mtodo de eigenfaces. El
mtodo consiste en la recoleccin de imgenes de rostros de varias personas que son
luego combinadas y convertidas en una matriz. Los vectores que conforman esta matriz
son los denominado vectores eigenfaces. Estos pueden ser combinados
adecuadamente para reconstruir cualquier imagen facial del conjunto.
Para describir el mtodo, asmase en primer lugar que se tiene un conjunto de M
imgenes, que previamente fueron segmentadas (de P filas y Q columnas), que son
convertidas a vectores i. Con ello se construye una matriz que contiene a cada vector
como columna. La matriz resultante presenta por tanto PxQ filas y M columnas.

Reconocimientodeimgenesatravsdesucontenido
30

1.3.3Programa

Inicialmente el programa adquiere una imagen de rostro en escala de grises. Luego
se realiza el procedimiento ACP y se obtiene el vector eigenfaces de la imagen
adquirida. En seguida el vector es comparado con todos los vectores de las imgenes
proyectadas almacenadas, calculando la distancia euclidiana normalizada entre ellos. La
distancia mnima obtenida ser la que indique el usuario registrado con el cual el rostro
de entrada tiene mayor semejanza. Sin embargo, esta distancia mnima puede ser muy
grande, lo que indicara que ninguno de los usuarios registrados coincide
adecuadamente con el usuario de entrada. Para evitar este tipo de problemas, se
procedi a establecer un umbral, a fin de colocar un lmite en la distancia mnima, y
rechazar usuarios que no estn verdaderamente registrados. Si la distancia es menor al
umbral, entonces el usuario se considera como identificado, mostrando en pantalla el
nombre respectivo y su foto reconstruida.
El programa ofrece tambin la opcin de modificar la dimensin del espacio y de
esa forma alterar el tiempo de ejecucin del mismo. As mismo se ofrece la opcin de
poder registrar un nuevo usuario en cualquier momento.
La interfaz visual de usuario del sistema propuesto es mostrada en la Fig. 16.
Reconocimientodeimgenesatravsdesucontenido
31

Fig 21-Interfaz visual del sistema propuesto
1.3.4Resultados

Con estas adiciones al programa, se procedi al reconocimiento de las imgenes y
despus de comparar resultados se obtuvo lo siguiente:
Verdaderos aciertos: 92.26%
Verdaderos Rechazos: 89.94%
Falsos aciertos: 7.04 %
Falsos Rechazos: 10.06%






Reconocimientodeimgenesatravsdesucontenido
32











2. IDENTIFICACION DE NECESIDADES
Reconocimientodeimgenesatravsdesucontenido
33

2 Identificacin de necesidades

2.1IntroduccinIDN

Esta etapa es el soporte a la peticin que el cliente realiza para determinar las
pautas generales de sus necesidades y del contexto del sistema.
El cliente debe establecer sus objetivos y necesidades generales, como
consecuencia del enlace entre los Sistemas de Informacin de la empresa y los sistemas
Informticos a desarrollar.
El objetivo es exponer el entorno global del problema en estudio, especificando:
Objetivos del sistema: objetivos de tipo empresarial.
Alcance del sistema: funciones de negocio a considerar dentro del alcance del
proyecto.
Tipologa de los usuarios finales: conocer a qu perfil de personas va dirigido el
producto final a obtener.
Restricciones: se considerarn las restricciones que puedan afectar al plan del
proyecto y su desarrollo.
Organizacin y funciones empresariales: conocer bien cmo est organizado el
cliente, para ello se analizar el organigrama de la empresa.
Antecedentes: informacin de los motivos que han llevado a la organizacin del
cliente a realizar el proyecto.
En la realizacin se obtendrn todos los datos necesarios para una buena
identificacin de necesidades, se realizarn entrevistas, obteniendo un conjunto valioso
de informacin del sistema.
El producto que se obtiene se representara mediante el Documento de
Conceptos del Sistema.
Reconocimientodeimgenesatravsdesucontenido
34

2.2Documentodeconceptdelsistema

PROYECTO
RECONOCIMIENTO
DE IMGENES
DOCUMENTO DE CONCEPTOS DEL
SISTEMA
EMPRESA: IIT

2.2.1Objetivosdelsistema

Hay dos objetivos globales en este proyecto:
1. Reconocimiento de tipos de fondo: cielo, csped.
1.1 Generacin de un algoritmo capaza de clasificar las imgenes por su
color. En nuestro caso que contengan azul (cielo) o verde (csped).
1.2 Generacin de un algoritmo capaza de diferenciar entre tres posibles
texturas. Las texturas que deber ser capaz de diferenciar son:
Lisas
Binarias
Rugosas
1.3 A travs de la unin de ambos algoritmos, poder diferenciar imgenes
que contengan cielo o csped, con una tasa de error inferior al 10%.
2. Deteccin de personas.
2.1 Localizacin de caras de personas en la imagen.
2.2 Si en la imagen se ha localizado alguna cara en base a localizar ojos y
boca. Se concluye que la imagen contiene personas.

Reconocimientodeimgenesatravsdesucontenido
35

2.2.2Alcancedelsistema

Reconocimiento de color: Para esta parte, habr que realizar un anlisis de los
modelos de color RGB y HSV.
Para ambos modelos de color, ser necesario estudiar si dado un color es posible
identificar dicho color mediante sus coordenadas.
En el caso de RGB, se comprobaran las siguientes proyecciones del espacio:
R vs G
R vs B
G vs B
R vs G vs B
Tras realizar las evaluaciones pertinentes, se identificara la mejor entre las cuatro
proyecciones para clasificar un color.
En el caso HSV, se comprobaran las siguientes proyecciones del espacio:
H vs S
H vs V
S vs V
H vs V vs S
Al igual que en modelo RGB, habr que identificar la mejor entre las cuatro
proyecciones.
Una vez seleccionados las proyecciones, se analizara con cul de los dos moleos es
ms precios a la hora de clasificar el color.

Reconocimiento de texturas: El reconocimiento de texturas, se realizara a travs de
histogramas, para ello, ser necesario implementar un algoritmo capaz de clasificar las
Reconocimientodeimgenesatravsdesucontenido
36
texturas como lisas, binarias o rugosas. Tambin ser necesario realizar un breve
documento sobre la funcin statxture.
Deteccin de caras: Para la deteccin de caras se crearan dos algoritmos
independientes, uno para la localizacin de los ojos, y otro para la localizacin de la
boca. En ambos algoritmos se trabajara con la proyeccin YCbCr.

2.2.3Topologadeusuariofinales

Los usuarios finales sern empresas que por algn motivo necesiten clasificar
imgenes de manera automtica en base al contenido.

2.2.4Restricciones

Las restricciones a las que est sujeto el proyecto son de tipo temporal, puesto que
el plazo de entrega del proyecto no puede superar la primera semana de junio del 2008.
Adems los algoritmos generados, debern consumir el mnimo nmero de
recursos.
Al ser un proyecto fundamentalmente de investigacin, la optimizacin del tiempo
de ejecucin queda fuera del alcance, pero es necesario que los algoritmos sean
suficientemente rpidos como para permitir correr los procesos de evaluacin.

Reconocimientodeimgenesatravsdesucontenido
37


3. PLAN DE GESTION

Reconocimientodeimgenesatravsdesucontenido
38

3 Plandegestin
3.1Descripcingeneraldelproyecto

A continuacin se mostrar una visin general del proyecto, el cual consiste en
desarrollar algoritmos capaces de reconocer objetos en imgenes. Para lograr esto se
utilizarn las siguientes tcnicas:
1. Reconocimiento de colores: Se estudiar la imagen a travs de los colores, para
ello se har un estudio previo entr dos formas posible de reconocimiento de
colores, RGB y HSV. Esta tcnica es vlida para reconocimiento de cielos,
nieve, mar, csped, etc, es decir, imgenes donde haya un color predominante.
2. Reconocimiento de textura: Esta tcnica es ms compleja que el
reconocimiento de colores, se utilizar para validar que una textura es lisa,
binaria o rugosa. Un ejemplo podra ser el reconocer un rbol en distintos
entornos, como uno rural y otro de ciudad, en donde los distintos elementos que
lo rodean son muy distintos. El reconocimiento del rbol se podra hacer
mediante la textura de la madera del tronco.
3. Deteccin de caras: Para conseguir este objetivo se utilizara la proyeccin
YCbCr. La deteccin de caras tendr que ser efectiva en aquellas imgenes que
contengan a una persona de medio cuerpo para arriba, no teniendo porque ser
efectiva en aquellas imgenes donde las personas salgan de cuerpo entero.

Para el desarrollo de este proyecto se ha decidido utilizar como herramienta Matlab.
Matlab es un leguaje matemtico capaz de ejecutar elevados clculos matriciales
adems de poseer unas Toolbox de imgenes, necesarios para este proyecto.
Reconocimientodeimgenesatravsdesucontenido
39
3.2Diagramadeactividadesarealizar

A continuacin se muestra un diagrama de las distintas actividades de las que se
compone el proyecto. Las actividades se numerarn de la forma WP XX.YY, donde
XX corresponde a un nmero consecutivo referente a la tarea principal, e YY a la
subtarea de XX.




Reconocimiento de
imgenes a travs de su
contenido
WP-01
Construccin
Lgica
WP-02
Construccin
Fsica
WP-03
Documentacin
WP-00.01
Color
WP-00.02
Textura
WP-04
Direccin de
proyecto
WP-00.03
Localizador
de rostros
WP-01.01
Estudio de
Gaussinas
WP-01.02
Diseo de
texturas
WP-02.01
Implantacin
de Gaussinas
WP-02.02
Algoritmos
WP-02.03
Pruebas de
algorimos
Fig 22-Diagrama de actividades
WP-05
Coordinacin
WP-00
Investigacin
Reconocimientodeimgenesatravsdesucontenido
40
3.3Descripcindetalladadelasactividades

A continuacin, se proceder a describir las actividades finales del proyecto,
estas son aquellas actividades que no se dividan en otras sub-actividades.

Identificador de
Actividad
WP-00.01
Nombre Color
Entradas Informacin sobre los modelos de color RGB
y HSV.
Actividades Realizar un documento con los modelos de
color RGB y HSV, indicando las propiedades de
cada uno, para poder realizar los estudios
pertinenetes.
Salidas Documento RGB
Documento HSV
Gestin
Tabla 3- W-00.01
Identificador de
Actividad
WP-00.02
Nombre Textura
Entradas Informacin sobre texturas
Actividades Realizar un documento con las formas
posibles de reconocimiento de textura.
Salidas Documento sobre texturas

Gestin
Tabla 4-WP-00.02
Reconocimientodeimgenesatravsdesucontenido
41

Identificador de
Actividad
WP-00.03
Nombre Localizador de rostros
Entradas Informacin sobre localizadores de rostros
Actividades Realizar un documento con los mtodos
empleados para alcanzar el objetivo.
Salidas Documento YCbCr
Documento sobre localizador de rostros

Gestin
Tabla 5-WP-00.03


Identificador de
Actividad
WP-01.01
Nombre Estudio de Gaussinas
Entradas Conjunto de puntos que definen los colores
azul y verde.
Actividades Estudiar la mejor forma a travs de
gaussianas para clasificar un color como azul o
verde.
Salidas Programa elegido para realizar la
clasificacin.

Gestin
Tabla 6-WP-01.01
Reconocimientodeimgenesatravsdesucontenido
42


Identificador de
Actividad
WP-01.02
Nombre Diseo de texturas
Entradas Histogramas correspondientes a texturas lisas,
binarias y rugosas.
Actividades Definir la formar de diferenciar las distintas
formas de texturas mediante los histogramas.
Salidas Documento en el que se explica la forma
lgica de diferenciar entre las tres texturas
definidas.

Gestin
Tabla 7-WP-01.02
Reconocimientodeimgenesatravsdesucontenido
43

Identificador de
Actividad
WP-02.01
Nombre Implantacin de Gaussianas
Entradas Programa elegido para la clasificacin de un
color mediante gaussianas.
Actividades Implantar dentro del algoritmo el programa.
Salidas Algortimo sin terminar.

Gestin
Tabla 8-WP-02.01
Identificador de
Actividad
WP-02.02
Nombre Algoritmo
Entradas Resultados de los documentos.
Actividades Mediante la informacin recibida de los
documentos desarrollados anteriormente, generar
los algoritmos de color y textura.
Salidas Algoritmos terminados.

Gestin
Tabla 9-WP-02.02
Identificador de
Actividad
WP-02.03
Nombre Pruebas de los algoritmos
Entradas Algoritmos.
Actividades Comprobar el grado de acierto de los
algoritmos generados.
Salidas Eficiencia de los algoritmos generados.

Gestin
Tabla 10-WP-02.03
Reconocimientodeimgenesatravsdesucontenido
44

Identificador de
Actividad
WP-03
Nombre Documentacin
Entradas Informacin sobre los algoritmos
Actividades Desarrollo de un documento final del
proyecto.
Salidas Documento final de proyecto.

Gestin
Tabla 11-WP-03
Identificador de
Actividad
WP-04
Nombre Direccin del proyecto
Entradas Documento final del proyecto
Algoritmos generados
Actividades Validacin del proyecto por parte del director
del proyecto.
Salidas Documento firmado por el director de
proyecto.
Calificacin del proyecto por parte del
director del proyecto

Gestin
Tabla 12-WP-04
Reconocimientodeimgenesatravsdesucontenido
45


Identificador de
Actividad
WP-05
Nombre Coordinacin
Entradas Documento final del proyecto
Algoritmos generados
Actividades Validacin del proyecto por parte del
coordinador del proyecto.
Salidas Documento firmado por el coordinador del
proyecto.
Nota final del proyecto.

Gestin
Tabla 13-WP-05
Reconocimientodeimgenesatravsdesucontenido
46
3.4Diagramadelequipodetrabajo

Posteriormente se mostrar el organigrama del proyecto



Como se observa en la Error! No se encuentra el origen de la referencia. 23 ,
existe una colaboracin entre el director y el coordinador del proyecto, mientras que la
funcin de Jefe de Proyecto depende tanto del director como del coordinador, y a su
vez, de ste depende el analista, el programador y el diseador
Coordinador del
proyecto fin de
carrera
Director del proyecto
fin de carrera
Jefe del proyecto
Analista Programador Diseador
Fig 23- Organigrama del proyecto
Reconocimientodeimgenesatravsdesucontenido
47
3.5Descripcindeactividadesdecadaintegrante

A continuacin se mostrar una relacin de tareas de cada integrante del equipo de
trabajo:

Identificador del
integrante
Coordinador
Nombre David Contreras Brcena
Tareas Concretar la definicin del proyecto
Controlar/Supervisar el proyecto, junto con el
director del mismo
Supervisa los plazos de entrega
Homogeniza la calidad de los proyectos
Supervisin final del proyecto
Tabla 14-Coordinador
Reconocimientodeimgenesatravsdesucontenido
48

Identificador del
integrante
Director
Nombre Rafael Palacios
Tareas Dirigir el proyecto
Facilitar las orientaciones adecuadas ante los
problemas que vayan surgiendo
Proponer una calificacin al coordinador del
proyecto
Controlar/Supervisar el proyecto, junto con el
coordinador
Tabla 15-Director
Identificador del
integrante
Jefe de Proyecto
Nombre Antonio Peralta Sez
Tareas Gestiona el proyecto y es el mximo
responsable del mismo
Verifica el trabajo realizado por sus
subordinados
Tabla 16-Jefe de proyecto
Reconocimientodeimgenesatravsdesucontenido
49

Identificador del
integrante
Analista
Nombre Antonio Peralta Sez
Tareas Analiza el contenido del proyecto, marcando
pautas para la realizacin del mismo
Tabla 17-Analista
Identificador del
integrante
Programador
Nombre Antonio Peralta Sez
Tareas Lleva a cabo toda la parte de programacin
del proyecto
Instala el software necesario para llevar a
cabo el proyecto
Verifica la programacin haciendo un banco
de pruebas para comprobar la calidad del proyecto
Tabla 18-Programador
Reconocimientodeimgenesatravsdesucontenido
50

Identificador del
integrante
Diseador
Nombre Jaime Martn Talavera
Tareas Analiza y define las interfaces que se deben
llevar a cabo para la realizacin de la
programacin
Tabla 19-Diseador



Reconocimientodeimgenesatravsdesucontenido
51

3.6 Estimacindelesfuerzodecadaintegrante

Para el proyecto, la estimacin del esfuerzo de cada integrante es la que se muestra
a continuacin (mostrada en horas/hombre):

COORDINADOR DIRECTOR JEFEPROYECTO ANALISTA PROGRAMADOR DISEADOR TOTAL


WP00 10 10 20
WP01 5 15 30 50
WP02 5 30 50 110 40 235
WP03 5 15 70 90
WP04 10 10 5 25
WP05 15 15
TOTAL 15 25 80 165 110 40 435
Tabla 20-Estimacin del esfuerzo



Reconocimientodeimgenesatravsdesucontenido
52

3.7Presupuesto

A continuacin se mostrarn dos tablas, la primera con el desglose de las horas
hombre invertidas por cada miembro del equipo y la segunda con la descomposicin del
precio por paquetes de trabajo del proyecto:
DIRECTOR JEFEPROYECTO ANALISTA PROGRAMADOR DISEADOR
HORAS/HOMBRE 25 80 165 110 40
TARIFA 100,00 80,00 60,00 30,00 45,00
IMPORTE 2.500,00 6.400,00 9.900,00 3.300,00 1.800,00
TOTAL 23.900,00
Tabla 21-Horas hombre

Tabla 22-Descomposicin del precio por paquetes


HORAS TARIFAMEDIA IMPORTE
WP00 20 70 1.400,00
WP01 50 70 3.500,00
WP02 235 46.81 11.000,00
WP03 90 65.56 5.900,00
WP04 25 84 2.100,00
WP05 15 0 0
TOTAL 23.900,00
Reconocimientodeimgenesatravsdesucontenido
53

3.8Planificacindelasactividades

A continuacin se muestra un diagrama de Gantt con la planificacin del proyecto


Fig 24-Planificacin

Tanto la documentacin, direccin del proyecto como la coordinacin se realiza en
paralelo desde el inicio de proyecto al fin del mismo.
Reconocimientodeimgenesatravsdesucontenido
54



















4. ESTUDIO DE ARQUITECTURA

Reconocimientodeimgenesatravsdesucontenido
55
4 Estudio de arquitectura

4.1IntroduccinEARQ

En esta etapa se definirn las posibles soluciones de arquitectura tcnica que
satisfagan tanto los requisitos como las restricciones de diseo. La arquitectura debe
indicar que componentes bsicos de software, hardware y comunicaciones se deben
adquirir o desarrollarse.
Los objetivos entonces sern:
Definir las posibles soluciones de arquitectura tcnica que satisfagan los
requisitos y las restricciones de diseo.
Elegir una alternativa propuesta, que ser la que se implante.
Obtener la aprobacin del cliente o comit informtico para la alternativa
elegida.
Para la realizacin se llevara a cabo funciones tales como:
Especificar la tecnologa hardware, software y de comunicaciones de cada
alternativa.
Evaluar cada alternativa en sus aspectos: estratgicos, organizativos,
operativos, tcnicos y econmicos.
Seleccionar la alternativa a adquirir o desarrollar.
Elaborar la planificacin general del desarrollo y programacin del
proyecto.
Los productos que se obtienen son:
Esquema grfico de funcionamiento de cada alternativa. Especificacin de
los componentes software, hardware y de comunicaciones.
Matriz de evaluacin de las distintas alternativas.
Planificacin general del proyecto: etapas, actividades, hitos importantes,
recursos y calendarios.
Reconocimientodeimgenesatravsdesucontenido
56
El nmero de alternativas a considerar depende del tamao del proyecto a realizar y
de la complejidad del mismo.
Reconocimientodeimgenesatravsdesucontenido
57

4.2Hardware/softwaredelsistemaactual

En la lista siguiente se enumeran los elementos hardware y software del los
sistemas utilizado actualmente.
Mquina 1
Placa base: ASUS P5KPL
o Chipset Intel G31
o CPU Intel LGA775 Pentium 4
o DDR2 de Dual-Channel
o Audio Realtek ALC 662 6-chanel
o Stack Cool
o AI NOS
o AI NET2

Procesador: Intel P4 3.02 Ghz 800 mhz 2Mb Cache Socket 775
o Processor Frequency: 3 GHz
o CPUID String: 0F43h
o Package Type: 775 pin
o Core Voltage: 1.25V-1.388V
o Bus Speed: 800 MHz
o Thermal Guideline: 84.0W
o Core Stepping: N0
o Thermal Spec: 67.7C
o L2 Cache Size: 2 MB
o Manufacturing Technology: 90 nm
o L2 Cache Speed: 3.00 GHz
o Bus/Core Ratio: 15
Memoria: CORSAIR DIMM DDR2 800 2 x 1024 MB xms2 CL4
Tarjeta grfica: SPARKLE 6600 PCX 256MB TV HDTV
Reconocimientodeimgenesatravsdesucontenido
58
o Bus de grficos PCI Express
o Memoria 256MB
o Interfaz de memoria 128 bits
o Ancho de banda de memoria (GB/s.) 22,4
o Tasa de relleno (miles de millones de pxeles/s) 6,7
o Vrtices/s. (millones) 700
o Pxeles por ciclo de reloj (pico) 12
o RAMDAC (MHz) 400
Disco Duro: SATA 200GB 7200rmp MAXTOR
o Capacidad: 200GB
o Interface: SATA 1.5Gb/s
o Buffer: 8MB
o RPM: 7200

DVD: AOPEN 16x 48x IDE CAMALEON
Grabadora DVD: PIONEER 109 16X Doble capa 4X OEM
Impresora: Hewlett Packard K550
Scanner: Hewlett Packard ScanJet 3300C
Aplicaciones: Windows XP, Microsoft Office Excel, Matlab 7.0.1
Reconocimientodeimgenesatravsdesucontenido
59

4.3Especificacionesdelasaternativas.

Debido al elevado tamao de las matrices a tratar y de la complejidad de los
clculos para resolver las gaussianas, se aconseja la utilizacin de estaciones de trabajo
con alto rendimiento.
A continuacin se detalla los elementos hardware y software de la mquina Sun
Ultra 40 Workstation







P
rocesador:
o Processor: two AMD Opteron dual-core 2.6 GHz 285 with
three 8-GBps HyperTransport interconnects per CPU.
o Secondary cache (Level 2): 1 MB per CPU.
Memoria:
o 16GB maximum; up to four registered DIMMs per CPU.
Interfaz estandar:
o Network: Two on-board 10/100/1000 Base-T Gigabit
Ethernet interfaces.
o I/O
Fig 25-Estacin de trabajo Sun Ultra 40 Workstation
Reconocimientodeimgenesatravsdesucontenido
60
Eight USB 2.0 ports.
Two IEEE 1394a (FireWire) ports
o Audio I/O
One line-in Two front ports and eight back ports
o Expansion bus
Two PCI Express x16 graphics slots (x8 logically)
One PCI-Express x8 expansion slot (x4 logically)
Two conventional 32-bit PCI slots operating at
33MHz
Memoria de almacenamiento
o Internal disk:
Up to four Serial ATA drives 500 GB
2 TB maximum RAID 0 and RAID 1 support Optical
drive: One slim dual DVD-RW/CD-RW drive.
o Optical drive:
DVD Dual (DVD-ROM and CD-RW combo)
Grficos y imgenes
o High-end 3-D: NVIDIA Quadro FX 540 (PCIe)
Sotfware
o Operating System: Operating Systems supported by Sun
Solaris OS, Red Hat Enterprise Linux, SUSE Linux
Enterprise Server, and Microsoft Windows.
o Free Software: Preloaded Development Tools. Includes fully-
licensed versions of the following:
Sun Java Studio Creator 2 - 90-day installation support
+ 1-year support via Sun Developer Network (SDN)
Sun Java Studio Enterprise 8 - 90-day installation
support + 1-year support via SDN.
Sun Java Studio Enterprise 8 - 90-day installation
support + 1-year support via SDN.
Sun Studio 11ML - 90-day installation support.
NetBeans 5.0 open source IDE
Grid Software:
Reconocimientodeimgenesatravsdesucontenido
61
N1 Grid Engine 6 software license.
Other:
Matlab 7.0.1

Monitor
o 24.1-inch Sun wide-screen TFT color flat-panel LCD
Equivalent to 27.5-inch CRT display.
0.27-mm dot pitch.
Up to 1920 x 1200 at 60 Hz (16:10 aspect ratio).
Entorno
o Acoustics:
Operating Noise: 4.9 Bels.
Idle Noise: 4.7 Bels.
o Power supply: 1000 watts.
o Operating temperature:
2 C to 35 C (41 F to 95 F).
7-93 percent relative humidity, noncondensing
o Nonoperating temperature:
-40 C to 68 C (-40 F to 158 F);
93 percent relative humidity, noncondensing.
Regulacin
o Safety: UL/CSA-60950-1, EN 60950-1, IEC 60950-1 CB.
o Ergonomics: EK1-1TB-2000.
o RFI/EMC: EN 55022/CISPR22 Class B, FCC CFR47 Part 15
Class B, EN 61000-3-2, EN 61000-3-3.
o Immunity: EN55024.
o Regulatory markings UL/cUL, TUV-GS, CE, FCC, ICES-
003, C-Tick, VCCI, GOST-R, BSMI, CCC, S-Mark, Korean
(MIC) Mark, WEEE.
Dimensiones y peso
o Height 445mm (17.5 in.).
o Width 205 mm (8.1 in.).
Reconocimientodeimgenesatravsdesucontenido
62
o Depth 569 mm (22.4 in.).
o Weight 26.31 kg (58 lbs) fully configured, depending on
configuration.
Precio:
o 2,295.00 $

Reconocimientodeimgenesatravsdesucontenido
63

A continuacin se detalla los elementos hardware IBM IntelliStation A Pro.







Procesador:
o Dual-core AMD Opteron

processors Dual-capable Opteron


200 Series processors up to 2.8 GHz.
o 1MB L2 cache per processor core
Memoria:
o 16GB max, PC3200 ECC DDR SDRAM, 128-bit controller; 8
DIMM slots total.
Interfaz estandar:
o Network: Integrated high-bandwidth Gigabit Ethernet with
Wake on LAN

.
o I/O:
USB 2.0 (2 front, 3 back).
2 IEEE 1394 (1 front, 1 back).
2 serial.
1 parallel.
o Audio I/O
AC-97 audio.
Microphone in (front and back).
Line in.
Fig 26-Estacin de trabajo IBM IntelliStation A Pro
Reconocimientodeimgenesatravsdesucontenido
64
Line out.
Integrated speaker.
o Expansion bus:
(1/0) PCI Express x16.
(1/1) 64-bit/133MHz PCI-X.
(4/4) 64-bit/100MHz PCI-X.
Memoria de almacenamiento
o Internal disk:
80GB/7,200rpm.
160GB/7,200rpm.
250GB/7,200rpm (optional).
o Optical drive: IBM MultiBurner Plus CD-R, CD-RW, DVD-
RAM, DVD-ROM, DVD-R, DVD-RW, DVD+R, DVD+RW.
Grficos y imgenes
o Extreme 3D NVIDIA

Quadro

FX 4500, 512MB GDDR3


SDRAM, 470 MHz GPU core.
Sotfware:
o Microsoft

Windows

XP Professional (32-bit)
and XP Professional x64 Edition available preinstalled.
o Matlab 7.0.1
Entorno:
o 530W.
o 3 temperature-controlled fans.
Precio:
o 5,219.00 $





Reconocimientodeimgenesatravsdesucontenido
65
4.4Evaluacindelasalternativas

4.4.1Evaluacintcnica

En la tabla 23 podemos ver una comparacin entre las dos mquinas propuestas.


Tabla 23-Comparativa mquinas


Reconocimientodeimgenesatravsdesucontenido
66
Como podemos observar en la mayora de los elementos es superior Sun Ultra 40
Workstation a la mquina IBM IntelliStation A Pro.
En este aspecto apostaremos por la mquina Sun Ultra 40 Workstation al ser esta
mas potente.

4.4.2Evaluacineconmica

En el anlisis de los costes de adquisicin tecnolgica se pondr especial nfasis en:
Costes hardware: costes del equipo para el nuevo sistema.
Costes software: licencias de productos ya desarrollados y comercializados
a adquirir como hojas de clculo (estas son necesarias para poder salvar los
datos calculados), sistemas operativos, matlab (para poder correr la
aplicacin).

ALTERNATIVA 1 2
Costes del hardware
$2,295.00 $5,219.00
Costes software
* *
Tabla 24-Alternativas

* En cuanto a los costes software en ambos casos sern los mismos ya que en
ambas mquinas vienen instalados sistemas operativos, los nicos costes serian los de la
adquisicin de la licencia de Matlab 7.0.1 y un programa de hojas de clculo, de este
ultimo hay software de libre distribucin.
En cuanto al mbito econmico optaramos por la alternativa 1 ya que esta es ms
econmica.
Reconocimientodeimgenesatravsdesucontenido
67

4.5Seleccindelaalternativa

La alternativa elegida ser la ALTERNATIVA 1 (Sun Ultra 40 Workstation),
puesto que es la que ms se acerca a los requisitos y necesidades del software.
La implantacin de esta mquina permitir a las empresas que obtengan este
software un mayor rendimiento, debido a la disminucin de los tiempos de los clculos,
est disminucin de tiempo supone un ahorro econmico.

Reconocimientodeimgenesatravsdesucontenido
68

5. RECONOCIMIENTO DE COLORES

Reconocimientodeimgenesatravsdesucontenido
69
5.Reconocimientodecolores

5.1Introduccin

Qu es el color?, antes de explicar en qu consisten los modelos RGB y HSV, hay
que tener claro, porque vemos los objetos en color. Esto es debido hay una serie de
variables que inciden directamente en la percepcin que tenemos de los colores y que
pueden diferenciarse en tres categoras:
La fuente luminosa: De ms est decir que gracias a la presencia de la luz
percibimos no slo los objetos sino tambin su cromaticidad. De las diferencias e
intensidades lumnicas que inciden sobre el objeto resultan variaciones en la percepcin
de un mismo color. Existe, por ejemplo, diferencia entre luz solar y luz artificial; y
dentro de la luz natural, las diferentes posiciones del Sol a lo largo del da hacen que la
incidencia de luz provoque variaciones en el color del objeto. Esto fue apuntado por
Leonardo da Vinci (1452-1519) en su Tratado de la pintura, donde hace referencia a la
coloracin azulada que asumen las sombras por la maana hasta irse tiendo de matices
cada vez ms rojizos a medida que avanza la tarde. Ni qu hablar de las variaciones de
intensidad durante el transcurso de las estaciones del ao. Por todos es sabido que los
rayos solares inciden de forma ms oblicua en el solsticio de invierno y ms
perpendicular en el de verano.
En relacin con la luz artificial, e independientemente de los diferentes tipos que se
ofrecen en el mercado, hay que sealar dos ejemplos cotidianos. La lmpara de
filamento (el tradicional foco) genera una luz de coloracin amarillenta que incide
directamente sobre el color particular de los objetos, y la llamada luz blanca de los
tubos fluorescentes tie los objetos con una coloracin azulada.
Podemos concluir que la fuente luminosa o de emisin de energa electromagntica
ejerce una influencia cualitativa y cuantitativa en la percepcin cromtica.
El objeto: Las caractersticas texturales de los objetos como transparencia, opacidad
y brillo, entre otras, as como la forma y el tamao, inciden en la percepcin del color.
Reconocimientodeimgenesatravsdesucontenido
70
Si pintramos, por ejemplo, dos superficies con un mismo pigmento, pero una de ellas
fuera mate y la otra brillante, la percepcin sera de un color menos intenso en el primer
caso y ms luminoso en el segundo.
Es importante aclarar que no es la materia la que posee el color, sino que ste es
una percepcin sensorial. La constitucin molecular del objeto permite que absorba y
refleje determinadas longitudes de onda. Cuando observamos que una manzana es roja,
lo que sucede es que su superficie absorbe todas las longitudes de onda, menos la que
corresponde a lo que vemos como rojo; de ah que percibamos ese color.
El sujeto: En este punto se hace referencia al tipo de observador. No todos los
animales perciben los colores como lo hace el ser humano. Es creencia popular, por
ejemplo, que el toro se enfurece y excita con el rojo de la capa del torero. Esto es
errneo ya que los vacunos no distinguen la longitud de onda para ese color. Lo que
capta la atencin del animal es el movimiento de la capa del torero, no su color.
En el ojo se encuentra una serie de terminaciones nerviosas conocidas como conos
y bastones que por su cualidad fotorreceptora hacen posible la visin. Los conos
permiten la visin diurna y cromtica por la conversin de las distintas longitudes de
onda en sensaciones de color; los bastones permiten la visin nocturna, acromtica.
Cabe recordar que la sensacin de color producida por el estmulo existe slo en el
cerebro del sujeto.
En conclusin, no slo la luz es una condicin necesaria para percibir los colores; la
presencia de los otros dos componentes es tambin imprescindible. Se puede tener luz y
objeto que recoja sta, pero si no hay observador no habr percepcin; puede haber luz
y observador, pero si no hay objeto no hay color.
Color luz y color pigmento
Un aspecto importante de la teora del color es la diferencia entre el color luz (el
que proviene de una fuente luminosa coloreada) y el color pigmento o color materia
(leo, tmpera, lpices de color, etctera).
Color luz. Sntesis aditiva
Reconocimientodeimgenesatravsdesucontenido
71
Gracias a Newton (1642-1727) sabemos que la luz blanca al descomponerse origina
los siete colores del espectro visible: rojo, anaranjado, amarillo, verde, azul cian, azul y
violeta. La suma de todos los colores del espectro luminoso recompone la luz blanca
(fig. 22).










Fig 28-Representacion espectral.
Es importante sealar que del amplio espectro electromagntico, slo una pequea
parte puede ser percibida por el ojo humano. Por debajo del violeta se encuentran
longitudes de onda ms bajas como los rayos ultravioleta y por encima del rojo se hallan
longitudes de onda ms altas como los rayos infrarrojos (fig. 23).
Para el color luz se utiliza un criterio de orden aditivo o, mejor dicho, de sntesis
aditiva. Esto significa que a medida que sumamos color luz se restituye gradualmente el
blanco.
De la serie de colores que componen el espectro luminoso podemos diferenciar tres
colores fundamentales o primarios. Ellos dan origen a los otros colores y son: rojo,
verde y violeta. De las respectivas mezclas de estos colores derivan los llamados colores
secundarios o complementarios, que son (fig. 24).



Fig 27-Espectro visible
Reconocimientodeimgenesatravsdesucontenido
72
verde + violeta = azul cian
violeta + rojo = rojo magenta
verde + rojo = amarillo

Fig 29-Representacion primaria de los colores

De lo dicho ms arriba podemos inferir que dos colores se llaman complementarios
cuando combinados en una cierta proporcin equitativa recomponen la luz blanca o,
dicho de otro modo, un color es complementario de otro cuando para su mezcla no
participa el color del que es complementario. Podemos decir tambin que es aquel color
que dentro de una ordenacin circular se encuentra en el radio opuesto; de ah el nombre
de colores opuestos. Por lo tanto, la relacin de luces complementarias quedara
definida de la siguiente manera:
rojo + cian
azul + amarillo
verde + magenta
El principio de sntesis aditiva lo vemos aplicado en los televisores, monitores y
programas de diseo y retoque fotogrfico orientados a la creacin de imgenes y
grficos cuyo destino sea la publicacin en la Web o sobre una pantalla de proyeccin,
ya sea otro monitor o un televisor. En el caso de los televisores y monitores, cada uno
de los fsforos que componen la pantalla contiene un impulso de uno de los colores
primarios de la luz. Los programas de diseo y fotografa optan por el modo de
coloracin en R (red, rojo), G (green, verde) y B (blue, azul).
El manejo de las luces coloreadas es ampliamente utilizado por fsicos,
escengrafos, decoradores, escaparatistas, cromatlogos y psiclogos, entre otros.
Reconocimientodeimgenesatravsdesucontenido
73

Color pigmento. Sntesis sustractiva
Al utilizar colores pigmentarios, las mezclas que se hacen involucran un tipo
distinto de sntesis: la sustractiva. A medida que incorporamos color materia,
restituimos gradualmente el negro.
De la misma forma que para el color luz existen tres colores fundamentales o
primarios, tambin los hay en el caso del color pigmento y ellos originan al resto de los
colores. Se llaman primarios porque no pueden obtenerse por mezcla y son: el rojo
magenta, el azul cian y el amarillo.
Es interesante destacar que los colores primarios para el color pigmento son
secundarios para el color luz.
Los colores secundarios, de igual forma que para el color luz, se obtienen de la
mezcla de los primarios, y son (fig. 25):
rojo magenta + azul cian = violeta
amarillo + rojo magenta = rojo bermelln
azul cian + amarillo = verde
Fig 30-Obtencion de los
colores primarios.

El concepto de color complementario es el mismo utilizado para el color luz, con la
diferencia de que la suma de dos colores complementarios u opuestos recomponen el
negro. Las parejas de complementarios son las siguientes:
rojo magenta + verde
azul cian + anaranjado
amarillo + violeta

Reconocimientodeimgenesatravsdesucontenido
74
Como ya sealamos, las mezcla de dos colores primarios origina un secundario; de
la misma forma, podemos decir que la mezcla de un primario con un secundario origina
un color terciario. Si aplicamos esto a los seis colores obtenidos tenemos:
amarillo + rojo bermelln = naranja
rojo magenta + rojo bermelln = rojo
violeta + rojo magenta = violeta rojizo
azul cian + violeta = azul violceo
verde + azul cian = azul verdoso
amarillo + verde = verde amarillento
Ya hemos visto cmo se obtienen los 12 colores (3 primarios, 3 secundaros y 6
terciarios).
A lo largo de la historia, diversos investigadores han intentado ordenar el color de
varias maneras, ya sea en forma bidimensional o tridimensional, tomando en cuenta las
distintas variables. Una de las formas de organizacin en el plano ms conocida es la
utilizacin de un crculo llamado crculo cromtico (fig. 5).

Fig 31- Circulo cromtico


Reconocimientodeimgenesatravsdesucontenido
75
Variables del color
El matiz, el tono, el valor o luminosidad y la saturacin son las cuatro variables
bsicas de un color y operan siempre simultneamente.
Matiz
Es el croma de un color y depende de la longitud de onda dominante. Es la cualidad
que permite clasificar a los colores como amarillo, rojo, violeta, etc. El matiz se mide de
acuerdo con la proximidad que tiene un color con relacin a otro que se halle prximo
en el crculo cromtico; por ejemplo: verde amarillento, naranja rojizo, azul violceo,
etctera (fig. 27).



Fig 32- Representacin del matiz.
Valor o luminosidad
Indica las luminancias de un color; es decir, el grado de claridad u oscuridad que
posee como cualidad intrnseca. Dentro del crculo cromtico, el amarillo es el color de
mayor luminancia y el violeta el de menor.
Independientemente de los valores propios de los colores, stos se pueden alterar
mediante la adicin de blanco que lleva el color a claves o valores de luminancia ms
altos, o de negro que los disminuye.
Reconocimientodeimgenesatravsdesucontenido
76

Tono
Es la resultante de la mezcla de los colores con blanco o negro y tiene referencia de
valor y de matiz. Por ejemplo, el amarillo mezclado con negro modifica su matiz hacia
el verde y se oscurece (fig. 28).

Fig 33 Representacin del tono.
Saturacin
Se refiere al grado de pureza de un color y se mide con relacin al gris. Los colores
muy saturados poseen mayor grado de pureza y se presentan con ms intensidad
luminosa en relacin con su valor. Los colores con menor saturacin se muestran ms
agrisados, con mayor cantidad de impurezas y con menor intensidad luminosa (fig. 29).

Fig 34- Representacin de la saturacin.
En relacin directa con la saturacin se encuentra la diferencia proporcional entre el
pigmento y el vehculo (medio solvente). A mayor cantidad de vehculo corresponde
menor saturacin y a mayor cantidad de pigmento con relacin al medio, mayor
saturacin.
Reconocimientodeimgenesatravsdesucontenido
77

Contraste simultneo
ste tambin puede incluirse dentro de las variables del color. Alude a la influencia
recproca de un color con relacin a otro, a la capacidad que tiene un color de modificar
a otro que se encuentra en su proximidad hacia su complementario.
Un mismo color situado sobre dos campos de color distintos se ve modificado en
dos de sus variables, matiz y valor. Por ejemplo, un naranja situado sobre un campo
verde se hace notoriamente ms rojizo y por lo tanto ms oscuro, ya que de su ubicacin
original dentro del crculo cromtico se ve desplazado hacia el rojo. Si colocamos ese
mismo color sobre un campo azul violceo, observamos que se hace ms amarillento y,
por lo tanto, ms luminoso, ya que dentro del orden determinado por el crculo
cromtico se desplaz hacia los amarillos (fig. 40).

Fig 35- Contraste.
Si colocamos un gris sobre un fondo anaranjado se oscurece, a diferencia de cuando
lo colocamos sobre un rojo, donde se aclara (fig. 41).
Reconocimientodeimgenesatravsdesucontenido
78

Fig 36- Contraste
Este cambio en la percepcin se debe a un fenmeno fisiolgico. Nuestra vista se
satura del color que posee mayor rea dentro del espacio y, en consecuencia, tie del
complementario al color o colores que se encuentran en su proximidad. As, en el
primer ejemplo el campo verde tie de rojo al anaranjado y el azul violceo de naranja
amarillento (esto se puede corroborar si observamos la relacin diametral de un color
con respecto a otro dentro en el crculo cromtico). En el segundo ejemplo el campo
anaranjado tie de azul al gris y el rojo de verde (fenmeno que es apenas perceptible
con relacin a las variantes de valor).[D5]
Reconocimientodeimgenesatravsdesucontenido
79

5.2ModeloRGB

La descripcin RGB (del ingls Red, Green, Blue; "rojo, verde, azul") de un color
hace referencia a la composicin del color en trminos de la intensidad de los colores
primarios con que se forma: el rojo, el verde y el azul. Es un modelo de color basado en
la sntesis aditiva, con el que es posible representar un color mediante la mezcla por
adicin de los tres colores luz primarios. Indicar que el modelo de color RGB no define
por s mismo lo que significa exactamente rojo, verde o azul, razn por la cual los
mismos valores RGB pueden mostrar colores notablemente diferentes en distintos
dispositivos que usen este modelo de color. Aunque utilicen un mismo modelo de color,
sus espacios de color pueden variar considerablemente.
Para indicar con qu proporcin mezclamos cada color, se asigna un valor a cada
uno de los colores primarios, de manera, por ejemplo, que el valor 0 significa que no
interviene en la mezcla y, a medida que ese valor aumenta, se entiende que aporta ms
intensidad a la mezcla. Aunque el intervalo de valores podra ser cualquiera (valores
reales entre 0 y 1, valores enteros entre 0 y 37, etc.), es frecuente que cada color
primario se codifique con un byte (8 bits). As, de manera usual, la intensidad de cada
una de las componentes se mide segn una escala que va del 0 al 255.


Fig 37-Cubo RGB Fig 38-Mezcla aditiva de colores

Reconocimientodeimgenesatravsdesucontenido
80
Por lo tanto, el rojo se obtiene con (255,0,0), el verde con (0,255,0) y el azul con
(0,0,255), obteniendo, en cada caso un color resultante monocromtico. La ausencia de
color lo que nosotros conocemos como color negro se obtiene cuando las tres
componentes son 0, (0,0,0).
La combinacin de dos colores a nivel 255 con un tercero en nivel 0 da lugar a tres
colores intermedios. De esta forma el amarillo es (255,255,0), el cyan (0,255,255) y el
magenta (255,0,255).
Obviamente, el color blanco se forma con los tres colores primarios a su mximo
nivel (255,255,255).
El conjunto de todos los colores se puede representar en forma de cubo. Cada color
es un punto de la superficie o del interior de ste. La escala de grises estara situada en
la diagonal que une al color blanco con el negro.[D6]

Fig 39-Cubo de color RGB


Reconocimientodeimgenesatravsdesucontenido
81
5.3ModeloHSV

El modelo HSV (del ingls Hue, Saturation, Value Tonalidad, Saturacin, Valor),
tambin llamado HSB (Hue, Saturation, Brightness Tonalidad, Saturacin, Brillo),
define un modelo de color en trminos de sus componentes constituyentes en
coordenadas cilndricas:
Tonalidad, el tipo de color (como rojo, azul o amarillo). Se representa como un
grado de ngulo cuyos valores posibles van de 0 a 360 (aunque para algunas
aplicaciones se normalizan del 0 al 100%). Cada valor corresponde a un color.
Ejemplos: 0 es rojo, 60 es amarillo y 120 es verde.
Saturacin, se representa como la distancia al eje de brillo negro-blanco. Los
valores posibles van del 0 al 100%. A este parmetro tambin se le suele llamar
"pureza" por la analoga con la pureza de excitacin y la pureza colorimtrica de la
colorimetra. Cuanto menor sea la saturacin de un color, mayor tonalidad griscea
habr y ms decolorado estar. Por eso es til definir la insaturacin como la inversa
cualitativa de la saturacin.
Valor del color, el brillo del color. Representa la altura en el eje blanco-negro. Los
valores posibles van del 0 al 100%. 0 siempre es negro. Dependiendo de la saturacin,
100 podra ser blanco o un color ms o menos saturado.
El modelo HSV fue creado en 1978 por Alvy Ray Smith. Se trata de una
transformacin no lineal del espacio de color RGB, y se puede usar en progresiones de
color. Ntese que HSV es lo mismo que HSB pero no que HSL o HSI.
Es comn, que deseemos elegir un color adecuado para alguna de nuestras
aplicaciones, cuando es as resulta muy til usar la ruleta de color HSV. En ella la
tonalidad se representa por una regin circular; una regin triangular separada, puede
ser usada para representar la saturacin y el valor del color. Normalmente, el eje vertical
del tringulo denota la saturacin, mientras que el eje horizontal corresponde al valor
del color. De este modo, un color puede ser elegido al tomar primero la tonalidad de una
regin circular, y despus seleccionar la saturacin y el valor del color deseados de la
regin triangular.[D7]
Reconocimientodeimgenesatravsdesucontenido
82


Fig 40-Cono de colores del espacio HSV


Fig 41-Espacio de color HSV como una rueda de color.

Reconocimientodeimgenesatravsdesucontenido
83

5.4EstudioRGBdelCielo

Para el estudio del sistema RGB del color del cielo, se ha decidido estudiar una
librera de fotografa que consta de 28 imgenes las cuales contienen partes de cielo.
Ests imgenes han sido tomadas en distintos lugares del mundo a distintas horas y en
distintas pocas del ao, esto ha sido necesario por lo explicado anteriormente, la
intensidad de la luz varia a lo largo del da aunque la mayor variacin de la intensidad
se observa en las distintas estaciones del ao.
El proceso seguido para la obtencin de la nube de puntos, ha consistido en
seleccionar en cada una de estas 28 imgenes aproximadamente 100 puntos del cielo,
para representar las grficas de RGB. Tras seleccionar los puntos de las 28 imgenes, la
nube de puntos finalmente est formada por un total de 2814 puntos.
En las siguientes grficas se muestra la nueve de puntos que representan al color del
cielo en las distintas proyecciones del espacio RGB.
Reconocimientodeimgenesatravsdesucontenido
84

Fig 42-Representacin RGB de las muestras del cielo
Reconocimientodeimgenesatravsdesucontenido
85

Fig 43-Muestras de color cielo proyectadas en el plano RG



Reconocimientodeimgenesatravsdesucontenido
86

Fig 44-Muestras de color cielo proyectadas en el plano RB
Reconocimientodeimgenesatravsdesucontenido
87



Fig 45-Muestras de color cielo proyectadas en el plano GB
Reconocimientodeimgenesatravsdesucontenido
88
5.5EstudioRGBdelcsped

Para el estudio del sistema RGB del color del csped, se ha decidido estudiar una
librera de fotografa que consta de 15 imgenes las cuales contienen partes de csped.
Ests imgenes han sido tomadas en distintos lugares del mundo con luz natural y luz
artificial. Se ha decidido utilizar fotografas con luz natural y luz artificial ya que esta
ltima cambia la percepcin cromtica.
En la obtencin de puntos de estas 15 imgenes, se han seguido los mismos pasos
descritos en el punto anterior. Tras seleccionar los puntos de las 15 imgenes, la nube de
puntos finalmente est formada por un total de 1504 puntos.
En las siguientes grficas se muestra la nueve de puntos que representan al color del
cielo en las distintas proyecciones del espacio RGB.

Fig 46- Representacin RGB de las muestras del cielo
Reconocimientodeimgenesatravsdesucontenido
89


Fig 47-Muestras de color cielo proyectadas en el plano RG
Reconocimientodeimgenesatravsdesucontenido
90

Fig 48-Muestras de color cielo proyectadas en el plano RB

Reconocimientodeimgenesatravsdesucontenido
91

Fig 49-Muestras de color cielo proyectadas en el plano GB
Reconocimientodeimgenesatravsdesucontenido
92

5.6EstudioRGB:cielovscsped

Ahora para ver las posiciones que ocupan las dos nubes de puntos en las distintas
proyecciones del espacio RGB, se van a confrontar estas, y as poder estudiar cual sera
la forma ms sencilla y exacta de diferenciar el color del cielo del color del csped.
En las siguientes grficas se pude ver la nueve de puntos que representan al cielo y
la nube de puntos que representan al csped, en las distintas proyecciones del espacio
RGB.

Fig 50- Representacin RGB de las muestras del cielo y csped

Se puede observar en la como los puntos del cielo y el csped no coinciden en
ningn caso, esto hace posible separar los puntos del cielo y del csped utilizando
RGB.
Reconocimientodeimgenesatravsdesucontenido
93


Fig 51-Muestras del color del cielo y del color del csped proyectadas en el plano RG
Se pude observar como el cielo y el csped coinciden en muchos puntos, esto
hace imposible separar los puntos del cielo y del csped utilizando solo RG. Por lo que
se descarta la posibilidad de estudiar la pertenencia de un punto en RG.
Reconocimientodeimgenesatravsdesucontenido
94

Fig 52-Muestras del color del cielo y del color del csped proyectadas en el plano RB
Se pude observar como los puntos del color del cielo y del color del csped no
coinciden en ningn caso, esto hace posible separar los puntos del cielo y del csped
utilizando solo RG.
Reconocimientodeimgenesatravsdesucontenido
95



Fig 53-Muestras del color del cielo y del color del csped proyectadas en el plano GB

Se pude observar como los puntos del cielo y el csped no coinciden en ningn
caso, esto hace posible separar los puntos del cielo y del csped utilizando solo GB.
Reconocimientodeimgenesatravsdesucontenido
96

5.7ConclusinRGB

Para un buen reconocimiento de los colores se ha observado, tras analizar los
resultados obtenidos en las distintas proyecciones realizadas en los puntos anteriores
que hay dos posibilidades a la hora de desarrollar el algoritmo, aunque ambas tienen
algn inconveniente.
1. Utilizacin de la proyeccin RGB: como se puede ver en las figuras 37 41,
los colores del cielo y la tierra quedan claramente definidos usando esta
proyeccin, el nico problema que se podra producir es la coincidencia de
puntos de los colores del cielo y del csped. En la figura 45 queda demostrado
que no se produce ningn tipo de coincidencia, esto es obvio ya que los colores
del cielo corresponde a la gama de azules, mientras que los colores del csped
corresponden a la gama del verde.
El inconveniente de utilizar una proyeccin RGB radica en la creacin de
una gaussiana que sea capaz de definir una forma en 3D, esta gaussina ser ms
compleja que la necesaria para definir una forma en 2D.
2. Utilizacin combinada de las proyecciones RB y GB: mediante la utilizacin
nica de las proyecciones de RG o GB no es posible clasificar un color, ya que
estas por separado no dan la suficiente informacin, pero la utilizacin
combinada de ambas definen claramente las tres dimensiones de RGB. Como se
puede apreciar en las figuras 47 48, es posible diferenciar claramente los
puntos pertenecientes a los colores del cielo y del csped.
El inconveniente de utilizar la proyeccin combinada de RG y GB es claro,
en lugar de tener que utilizar una gaussiana hay que utilizar dos, una para definir
los puntos de RG y la otra para definir los puntos de GB.

Finalmente se ha optado por desarrollar un algoritmo utilizando la proyeccin
RGB, ya que se considera que es ms efectiva y adems se utiliza una sola gaussiana,
Reconocimientodeimgenesatravsdesucontenido
97
aun siendo esta ms complicada, est necesitara menos clculos que el tener que usar
dos gaussianas una para cada proyeccin RG y GB.

Reconocimientodeimgenesatravsdesucontenido
98

5.8EstudioHSV:Cielo

Para el estudio del sistema HSV del color del cielo, se utiliza la misma biblioteca de
imgenes que en RGB, se utiliza la misma seleccin de punto, los cuales se han
convertido de RGB a HSV. La conversin de puntos de RGB a HSV se realiza de la
siguiente manera:
Sea MAX el valor mximo de los componentes (R, G, B), y MIN el valor mnimo de
esos mismo valores, los componentes del espacio HSV se pueden calcular como: [D7]

Fig 54-Conversin de RGB a HSV

En este proyecto la conversin de RGB a HSV se ha realizado mediante la funcin
RGB2HSV ya implementada en matlab.
En el modelo HSV se va a descartar la proyeccin V, esto es debido a los explicado
anteriormente, el brillo es la cantidad de luminosidad que tiene un color, por ejemplo el
verde del csped podr variar entre un verde claro hasta un verde oliva, llegando al
negro, si se diera el caso del negro cambiaria de color, por lo que no afectara.
Reconocimientodeimgenesatravsdesucontenido
99
En la siguiente grfica se puede observar la nube de puntos que representan al cielo,
recordamos que la V se desprecia.


Fig 55-Muestras del color del cielo proyectadas en el plano HS
Reconocimientodeimgenesatravsdesucontenido
100
5.9EstudioHSCsped

Para el estudio del sistema HSV del color del csped, se utiliza la misma biblioteca
que en el anlisis basado en RGB, tambin se utilizan los mismos punto, los cuales se
han convertido de RGB a HSV, utilizando el mtodo explicado anteriormente.
En la siguiente grfica se puede observar la nube de puntos que representan al cielo.


Fig 56-Muestras del color del csped proyectadas en el plano HS

Reconocimientodeimgenesatravsdesucontenido
101
5.10HSCieloyCsped

Para analizar la capacidad de diferenciar muestras de color azul cielo de las
muestras de color verde csped, se pueden representar todas las muestras sobre el
mismo plano. Se obtiene una figura que aporta cierta informacin visual sobre la
posibilidad de reconocer cada categoria
En las siguiente grfica se puede observar la nube de puntos que representan al
cielo y la nube de puntos que representan al csped.


Fig 57-Muestras del color del cielo y del color del csped proyectadas en el plano HS
Se puede ver claramente que el cielo y el csped estn definidos por colores
completamente diferentes, y que la dispersin de cada uno no es muy grande. Al usar
solo dos dimensiones es ms fcil de acotar el intervalo.
Reconocimientodeimgenesatravsdesucontenido
102
5.11Estudiodeconflictos

5.11.1ConflictosenRGB:interior

Una vez analizada la posibilidad de diferenciar muestras de color azul cielo y verde
csped en la proyeccin HS del mapa de colores, se analiza en este apartado la
incidencia de falsos positivos. Al ajustar la tcnica de clasificacin descrita
anteriormente con colores que no corresponden a cielo o csped, se debera de obtener
rechazo sin embargo puede ocurrir que estas muestras se clasifiquen como cielo o como
csped dando lugar a un falso positivo. Para analizar estos conflictos se han tomado 50
puntos aleatorios de una biblioteca de fotografas de interior, que no contienen imgenes
del cielo ni del csped.
Aunque anteriormente se ha dicho que para la identificacin de colores en RGB se
utilizar la proyeccin RGB, en este y en los siguientes apartados se seguir mostrando
las nubes de puntos en todas las posibles proyecciones del plano RGB, para de estar
forma tener una visin ms precisa de la posicin que ocupan estas nubes en el modelo
RGB.
En las siguientes grficas se puede observar la nube de puntos formada en las
distintas variables de RGB.
Reconocimientodeimgenesatravsdesucontenido
103


Fig 58-Muestras del color del cielo, del color del csped y de color de interior, proyectadas en
el plano RGB

Se puede observar como al representar RGB en 3D, se forman tres nubes de puntos
claramente distinguibles, donde no se producen conflictos.

Reconocimientodeimgenesatravsdesucontenido
104














Fig 59- Muestras del color del cielo, del color del csped y de color de interior, proyectadas en
el plano RG
Se puede observar como no se producen conflictos con la nube de puntos de las
fotos del interior.
Reconocimientodeimgenesatravsdesucontenido
105


Fig 60- Muestras del color del cielo, del color del csped y de color de interior, proyectadas en
el plano RB


En este caso, se aprecia un conflicto entre los puntos del csped y los puntos del
interior.
Reconocimientodeimgenesatravsdesucontenido
106


Fig 61- Muestras del color del cielo, del color del csped y de color de interior, proyectadas en
el plano GB

Se puede apreciar un pequeo conflicto con algunos puntos del csped y en menor
medida un conflicto con los puntos del cielo.
Reconocimientodeimgenesatravsdesucontenido
107
5.11.2ConflictosenRGB:fondomarino

El mismo tipo de anlisis se puede realizar para la coleccin de imgenes de fondo
marino donde tampoco hay zonas de cielo o csped.

Fig 62-Muestras del color del cielo, del color del csped y de color de fondo marino,
proyectadas en el plano RGB

Se puede apreciar cmo se forman tres nubes de puntos claramente distinguibles,
donde no se producen conflictos.


Reconocimientodeimgenesatravsdesucontenido
108

Fig 63-Muestras del color del cielo, del color del csped y de color del fondo marino,
proyectadas en el plano RG

Se pueden ver conflictos dispersos, tanto en el csped como en el cielo.
Reconocimientodeimgenesatravsdesucontenido
109


Fig 64-Muestras del color del cielo, del color del csped y de color del fondo marino,
proyectadas en el plano RB

Como en el caso de RG, podemos ver conflictos dispersos, aunque en este caso, los
conflictos son mayores en el cielo que en el csped.
Reconocimientodeimgenesatravsdesucontenido
110


Fig 65-Muestras del color del cielo, del color del csped y de color del fondo marino,
proyectadas en el plano GB
Al igual que en RB, en este caso se producen mayor cantidad de conflictos en el
cielo que en el csped.
Reconocimientodeimgenesatravsdesucontenido
111

5.11.3ConflictosenHSV:interior

Al igual que en RGB, se pueden comprobar los conflictos producidos al tomar una
muestra de 50 puntos de la biblioteca de fotos de interior, e intentar clasificarlos en el
plano HS, se recuerda que la proyeccin V ha sido descartada por las razones explicadas
anteriormente.














Se puede apreciar como de los 500 puntos aleatorios pocos coinciden con los
puntos del csped o del cielo, y aunque algunos coinciden es muy difcil que al analizar
un sector de la fotografa este diera como resultado que todos ellos estuvieran dentro del
intervalo del cielo y ms difcil todava que fuera del csped.
Fig 66-Muestras del color del cielo, del color del csped y de color de interior, proyectadas
en el plano HS
Reconocimientodeimgenesatravsdesucontenido
112
5.11.4ConflictosenHSV:fondomarino















De los 500 puntos, pocos coinciden con los valores del csped y como en el caso
anterior es muy difcil que al analizar un sector de una fotografa todos los puntos
estuvieran contenidos dentro de los valores del csped. En cuanto a los puntos
coincidentes con el cielo, estos son mayores y la probabilidad de confusin con el cielo
aumenta debido a las razones obvias de que tanto el cielo como el fondo marino
contienen tonalidades azules, por lo tanto para evitar que sean confundidas ser
necesario aplicar otros parmetros de clasificacin adems del color.
Fig 67-Muestras del color del cielo, del color del csped y de color del fondo marino,
proyectadas en el plano HS
Reconocimientodeimgenesatravsdesucontenido
113
5.12EleccinRGBoHSV

En este apartado se realiza un estudio de la capacidad de clasificacin de colores
utilizando la informacin en formato RGB y haciendo la transformacin de coordenadas
a HSV, la forma de transformar RGB a HSV se explico en apartados anteriores.
El proceso de anlisis consiste en realizar el ajuste de funciones de densidad de
probabilidad utilizando un conjunto de muestras de entrenamiento y posteriormente
realizar una evaluacin utilizando un conjunto de muestras de test.
Para el entrenamiento y su posterior validacin se ha utilizado el programa
prbfnii_w_fdp.exe el cul ha sido desarrollada por Antonio Muoz San Roque de la
universidad Pontificia Comillas.
Reconocimientodeimgenesatravsdesucontenido
114
5.12.1RGB

Como se ha visto en los puntos anteriores, la mejor forma de distinguir los colores
en el espacio RGB, es utilizando todas las componentes del espacio RGB, como se ha
explicado anteriormente la utilizacin combinada de las componentes de RB y GB, hace
ms complicado el validar un punto, y con la utilizacin de la componente RG se
producen colisiones. Por estos motivos solo se estudia RGB, ya que se definen nubes de
puntos claramente separables.
RGB

Fig 68-Representacin de los puntos de entrenamiento y de validacin en RGB




Reconocimientodeimgenesatravsdesucontenido
115
Para el anlisis de RGB se ha probado con diferentes configuraciones del nmero
de unidades ocultas, esto ha sido necesario por la complejidad de la nube de puntos al
estar esta en 3D.

Primera configuracin:
Nmero de unidades ocultas = 4
Nmero de ciclos de entrenamiento = 1000
Grado de pertenencia > 0.95
Nmero de puntos de entrenamiento = 1500
Nmero de puntos de validacin = 1500
Una vez entrenado se realiza la validacin, de los 1500 puntos, solo 12 no estn
dentro del conjunto de entrenamiento, es decir, el grado de acierto es del 99,20%.
Segunda configuracin:

Nmero de unidades ocultas = 6
Nmero de ciclos de entrenamiento = 1000
Grado de pertenencia > 0.95
Nmero de puntos de entrenamiento = 1500
Nmero de puntos de validacin = 1500
Una vez entrenado se realiza la validacin, de los 1500 puntos, solo 10 puntos no
estn dentro del conjunto de entrenamiento, es decir, el grado de acierto es del 99,33%.
Reconocimientodeimgenesatravsdesucontenido
116

Tercera configuracin:
Nmero de unidades ocultas = 8
Nmero de ciclos de entrenamiento = 1000
Grado de pertenencia > 0.95
Nmero de puntos de entrenamiento = 1500
Nmero de puntos de validacin = 1500
Una vez entrenado se realiza la validacin, de los 1500 puntos, solo 13 no estn
dentro del conjunto de entrenamiento, es decir, el grado de acierto es del 99.13%.
Reconocimientodeimgenesatravsdesucontenido
117
5.12.2HSV


Fig 69-Representacin de los puntos de entrenamiento y de validacin en HSV

Para el anlisis de HSV se ha probado con diferentes configuraciones del nmero
de unidades ocultas.

Reconocimientodeimgenesatravsdesucontenido
118

Primera configuracin:
Nmero de unidades ocultas = 2
Nmero de ciclos de entrenamiento = 1000
Grado de pertenencia > 0.95
Nmero de puntos de entrenamiento = 1500
Nmero de puntos de validacin = 1500
Una vez entrenado se realiza la validacin, de los 1500 puntos solo 12 no estn
dentro del conjunto de entrenamiento, es decir, el grado de acierto es del 99.20 %.

Segunda configuracin:

Nmero de unidades ocultas = 4
Nmero de ciclos de entrenamiento = 1000
Grado de pertenencia > 0.95
Nmero de puntos de entrenamiento = 1500
Nmero de puntos de validacin = 1500
Una vez entrenado se realiza la validacin, de los 1500 puntos solo 10 no estn
dentro del conjunto de entrenamiento, es decir, el grado de acierto es del 99.33%.
Reconocimientodeimgenesatravsdesucontenido
119

Tercera configuracin:
Nmero de unidades ocultas = 6
Nmero de ciclos de entrenamiento = 1000
Grado de pertenencia > 0.95
Nmero de puntos de entrenamiento = 1500
Nmero de puntos de validacin = 1500
Una vez entrenado se realiza la validacin, de los 1500 puntos solo 13 no estn
dentro del conjunto de entrenamiento, es decir, el grado de acierto es del 99.13%.

5.12.3Conclusin

A partir de los resultados obtenidos en los puntos 5.11.1 y 5.11.3, se ha decidido
usar el modelo HSV mediante la proyeccin del plano HS, de este modelo se ha optado
por la segunda configuracin. Realmente se obtiene una mejor clasificacin mediante la
tercera opcin, est opcin al tener un mayor nmero de gaussianas define mejor la
forma de la nube de puntos y es por esto que excluye puntos que han sido aceptados por
la segunda opcin. Sin embargo se opta por la segunda opcin debido a que no hay una
gran mejora de clasificacin entre la segunda y tercera opcin, pero s que es apreciable
la disminucin de los clculos al ser esta segunda opcin ms sencilla.
Reconocimientodeimgenesatravsdesucontenido
120

5.13Descripcindelalgoritmo.
5.13.1Algoritmoazul

En este apartado, se va a describir el funcionamiento del algoritmo que reconoce el
color por el cual est formado el cielo.
respuesta=cielohsv(imagen)
Donde imagen es la imagen a analizar y respuesta es el resultado tras realizar el
anlisis.
Una vez recibida la imagen esta se convierte a RGB y posteriormente ha HSV.
Despus de convertir la imagen a HSV se determina el tamao de las muestras de la
imagen recibida, este tamao ser del 5% del ancho y largo. Tras saber el tamao de la
muestra se analizaran 20 muestras, estas muestras son seleccionadas aleatoriamente
pero solo del tercio superior de la imagen, para que se considere que la imagen tiene
color del azul 2 de las 20 han tenido que dar positivo como azul.
Reconocimientodeimgenesatravsdesucontenido
121

Fig 70-Evaluacin fotografa cielo1
El resultado que devolvi el algoritmo fue que la imagen contena color azul cielo,
de las 20 muestras las 20 dieron como resultado azul.
El funcionamiento seguido para evaluar cada una de las 20 muestras ha sido el
siguiente:
Se crea un fichero vali.dat el cual contiene el valor de los pixeles de las muestras
en formato HSV, se recuerda que solo se almacenan los valores de HS. Mediante el
programa prbfnii_w_fdp.exe se evala el fichero vali.dat con una red que ya ha sido
creada anteriormente con un conjunto de entrenamiento el cual contena los valores de
la nube de puntos que defina al color del cielo, esta evaluacin crea un fichero llamado
cielo.out. Tras la evaluacin se carga el fichero cielo.out en una matriz, recorremos
los valores de la segunda columna de dicha matriz, estos valores corresponden al grado
de pertenencia, si el grado de pertenencia es mayor al 95% se aumenta un contador
creado para saber cuntos puntos ha sido mayor al 95%. Por ltimo, para considerar que
esa muestra como cielo, el contador tiene que tener el 95% de los puntos, es decir, el
95% de los puntos han tenido que dar un grado de pertenencia mayor al 95%.
Reconocimientodeimgenesatravsdesucontenido
122

1.13.1Algoritmoverde

El funcionamiento de este algoritmo es el mismo que el del color azul, pero en este
caso, las muestras son tomadas del tercio inferior de la imagen. La evaluacin con el
programa prbfnii_w_fdp.exese realiza con una red que ya ha sido creada anteriormente
con un conjunto de entrenamiento el cual contena los valores de la nube de puntos que
defina al color del csped.

Fig 71-Evaluacin fotografa csped7

El resultado que devolvi el algoritmo fue que la imagen contena color verde, de
las 20 muestras las 20 dieron como resultado positivo.
Reconocimientodeimgenesatravsdesucontenido
123



6. RECONOCIMIENTO DE TEXTURAS

Reconocimientodeimgenesatravsdesucontenido
124

6.Reconocimientodetexturas
6.1Introduccin

La segunda fase despus de analizar el color de una fotografa, es analizar su
textura. La definicin de textura presenta ambigedades, debido a que tenemos un fuerte
concepto intuitivo del trmino, pero la podramos definir como:
La disposicin de las caractersticas de los elementos constituyentes de algo,
especialmente los relacionados con la apariencia superficial o la calidad al tacto.
Hay diversos mtodos de anlisis de texturas, que se dividen en los grupos que se
presentan aqu.
Estadsticos
Espectrales
Estructurales
Estadsticos:
Los mtodos estadsticos emplean medidas obtenidas a partir del histograma. El
histograma es la distribucin de niveles de gris en la imagen. A partir de l se podrn
caracterizar texturas con distribuciones de intensidad concretas. Una vez obtenido el
histograma podemos obtener, entre otros, los parmetros descritos. La media, los
momentos del histograma y la entropa.

Reconocimientodeimgenesatravsdesucontenido
125

Espectrales:
Este mtodo utiliza las transformadas de Fourier 2D que tambin permite
caracterizar texturas, ya que, la frecuencia de los niveles de gris es una de las
caractersticas de una textura. A partir de la transformada de Fourier de la regin que
posee la textura se calculan dos parmetros: La suma de valores a lo largo de un crculo
o a lo largo de un cierto ngulo.

Fig 72-(a) Representacin de la suma de los valores a lo largo de un crculo, (b) representacin
de la suma de los valores a lo largo de un cierto ngulo.

Estructurales:
Los mtodos estructurales suponen que la textura est formada por una estructura
que se repite, denominada primitiva. Se intenta detectar esa primitiva y estudiar su
distribucin.
[D8]
En este proyecto para analizar las texturas se han estudiado dos mtodos.
A travs de su histograma.
Mediante la funcin statxture (tambin basado en el histograma).
Reconocimientodeimgenesatravsdesucontenido
126

Estos mtodos, clasifican las texturas con tres valores posibles.
Lisa: Es aquella en las que hay un color predominante y no se producen
cambios bruscos de color, como por ejemplo el cielo.
Binaria: Hay dos o ms colores predominantes en la imagen, adems estos
colores son claramente diferentes, el ejemplo ms claro podra ser un tablero de
ajedrez.
Rugosa: Se producen cambios bruscos de color sin seguir un patrn, como
por ejemplo el mrmol travertino.

Reconocimientodeimgenesatravsdesucontenido
127

6.2Atravsdesuhistograma

Este mtodo es sencillo y rpido, consiste en generar un histograma agrupando los
256 valores que un pixel puede tomar en 16 tramos. Una vez generado el histograma se
estudia que proporcin de los pixeles hay en cada tramo. De esta manera se pude
clasificar una textura como lisa, binaria o rugosa. Segn el criterio que se explica ms
adelante.
A continuacin se explica cmo se ha obtenido el corte para clasificar la textura
como lisa, binaria o rugosa.


6.2.1Texturalisa

Se han analizado las diez primeras imgenes de la biblioteca de fotografas de cielo.
El proceso para analizar las fotografas ha sido el siguiente.
Se ha convertido la imagen a escala de grises, esto es necesario para poder emplear
el comando imhist.
A continuacin se ha extrado un fragmento de la fotografa de 190x190 pixeles.
Posteriormente se ha creado el histograma representando los 256 valores en 16
intervalos y se ha almacenado en un vector los valores de los 16 intervalos del
histograma, para posteriormente poder analizarlo.
A continuacin se muestra paso a paso, el proceso empleado en la obtencin de los
datos de las 10 fotografas.
Reconocimientodeimgenesatravsdesucontenido
128

Cielo 1

Fig 73-Cielo1, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.

Fig 74-Fragmento del cielo de la fotografa cielo 1.

Reconocimientodeimgenesatravsdesucontenido
129

Fig 75-Histograma del fragmento de cielo de la fotografa cielo1.


Reconocimientodeimgenesatravsdesucontenido
130

Cielo2

Fig 76- Cielo2, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.

Reconocimientodeimgenesatravsdesucontenido
131

Fig 77- Fragmento del cielo de la fotografa cielo 2.


Fig 78-Histograma del fragmento de cielo de la fotografa cielo2.
Reconocimientodeimgenesatravsdesucontenido
132

Cielo3

Fig 79- Cielo3, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.

Fig 80- Fragmento del cielo de la fotografa cielo 2.
Reconocimientodeimgenesatravsdesucontenido
133

Fig 81-Histograma del fragmento de cielo de la fotografa cielo3.

Se puede observar en los histogramas de las tres fotografas que los valores de los
pixeles se encuentran repartidos entre dos intervalos. Esto es lgico al ser una imagen
lisa, ya que todos sus valores estarn prximos entre s.
Reconocimientodeimgenesatravsdesucontenido
134

Se muestra en la siguiente tabla cul ha sido el reparto de los valores de los pixeles
en los 16 intervalos posibles, de las 10 fotografas.


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Cielo1 0 0 4 30934 5542 1 0 0 0 0 0 0 0 0 0 0
Cielo2 0 0 0 0 0 0 0 0 0 18816 17665 0 0 0 0 0
Cielo3 0 0 0 0 0 0 0 0 24065 12416 0 0 0 0 0 0
Cielo4 0 0 0 0 0 0 4 24999 11478 0 0 0 0 0 0 0
Cielo5 0 0 0 81 35982 418 0 0 0 0 0 0 0 0 0 0
Cielo6 0 0 0 0 0 0 0 0 2 15177 21110 192 0 0 0 0
Cielo7 0 0 0 0 0 0 0 0 0 0 0 0 7389 29092 0 0
Cielo8 0 0 0 0 0 0 0 0 0 0 0 0 1 36478 2 0
Cielo9 0 0 0 0 0 0 0 0 10522 25959 0 0 0 0 0 0
Cielo10 0 0 0 0 0 0 0 0 6365 27810 2306 0 0 0 0 0

Tabla 25-Reparto de los valores de los pixeles.
En esta tabla se puede ver cmo la mayora de los puntos de cada fotografa recaen
sobre dos intervalos del histograma. Esto se produce por lo explicado anteriormente, al
ser una imagen lisa los colores estn muy cerca unos de otros, ya que slo se producen
pequeas variaciones de tonalidad en al regin.

Reconocimientodeimgenesatravsdesucontenido
135

6.2.2Texturabinaria

Se han analizado diez fragmentos de fotografas de la biblioteca de cielo, estos
fragmentos estn compuestos por colores binarios.
El proceso empleado ha sido el mismo que para la textura lisa.
A continuacin se muestra algunos ejemplos de la obtencin de los puntos y sus
respectivos histogramas.
Cielo1

Fig 82- Cielo1, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.
Reconocimientodeimgenesatravsdesucontenido
136

Fig 83-Fragmento con textura binaria, de la fotografa cielo1.


Fig 84- Histograma del fragmento de la fotografa cielo1.


Cielo3
Reconocimientodeimgenesatravsdesucontenido
137


Fig 85- Cielo3, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.


Fig 86-Fragmento con textura binaria, de la fotografa cielo3.


Reconocimientodeimgenesatravsdesucontenido
138

Fig 87- Histograma del fragmento de la fotografa cielo3.
Reconocimientodeimgenesatravsdesucontenido
139

Cielo4

Fig 88-Cielo4, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.

Fig 89-Fragmento con textura binaria, de la fotografa cielo4.
Reconocimientodeimgenesatravsdesucontenido
140


Fig 90- Histograma del fragmento de la fotografa cielo4.
Reconocimientodeimgenesatravsdesucontenido
141

Se muestra en la siguiente tabla cual ha sido el reparto de los valores de los pixeles
en los 16 intervalos posibles, de las 10 fotografas.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Cielo1 1 265 8576 5845 414 105 70 70 83 10074 10973 5 0 0 0 0
Cielo3 0 0 1 40 4764 13735 545 223 17072 101 0 0 0 0 0 0
Cielo4 0 0 0 0 0 302 3776 5549 2045 15380 7542 575 484 649 179 0
Cielo5 2 3041 11753 225 529 4516 2374 789 1129 1254 1551 3466 5791 61 0 0
Cielo11 8 352 2070 6910 8047 1034 1385 10341 6185 133 8 4 2 1 1 0
Cielo13 2 946 24483 1906 245 67 64 60 91 435 3302 4613 196 50 21 0
Cielo14 0 0 0 1 12 4631 7533 1387 752 413 514 21237 1 0 0 0
Cielo18 130 1129 1767 14776 2791 1117 859 1750 11853 234 12 17 19 8 5 14
Cielo24 0 0 999 11778 8109 210 113 5659 9613 0 0 0 0 0 0 0
Cielo27 0 4 89 2168 9251 2311 206 1523 9896 9041 453 511 1009 19 0 0

Tabla 26- Reparto de los valores de los pixeles
En esta tabla se puede ver cmo la mayora de los puntos se reparten en dos
intervalos separados. Esto se produce, porque se est analizando dos colores diferentes,
por lo que la mayora de los puntos caern en dos intervalos. El grado de dispersin de
cada intervalo depende de lo uniforme que sea la subregin correspondiente a cada
color.
Anlogamente si se detectan ms zonas de concentracin de barras, se concluye que
la imgen est tormada por tantos tonos como zonas de concentracin.

Reconocimientodeimgenesatravsdesucontenido
142


6.2.3Texturarugosa

Se han analizado fragmentos de siete fotografas de la biblioteca de cielo, las cuales
contenan ciertos fragmentos de textura rugosa. Esto es, fragmentos de imgenes donde
conviven pixeles de muy variada luminosidad, ms claros y otros oscuros.
El proceso empleado ha sido el mismo que para la textura lisa.
A continuacin se muestra algunos ejemplos de la obtencin de los puntos y sus
respectivos histogramas.
Cielo6

Fig 91- Cielo6, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.

Reconocimientodeimgenesatravsdesucontenido
143

Fig 92- Fragmento con textura rugosa, de la fotografa cielo6.


Fig 93-Histograma del fragmento de la fotografa cielo6.
Reconocimientodeimgenesatravsdesucontenido
144

Cielo7

Fig 94- Cielo7, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.


Fig 95- Fragmento de la fotografa cielo6.


Reconocimientodeimgenesatravsdesucontenido
145


Fig 96-Histograma del fragmento de la fotografa cielo7.
Reconocimientodeimgenesatravsdesucontenido
146

Cielo9

Fig 97- Cielo9, marcado en un cuadrado rojo esta el fragmento seleccionado de 190x190
pixeles.

Fig 98- Fragmento de la fotografa cielo9.
Reconocimientodeimgenesatravsdesucontenido
147

Fig 99-Histograma del fragmento de la fotografa cielo9.


Se puede observar en los histogramas de las tres fotografas que contienen texturas
rugosas, como los valores de los pixeles se encuentran repartidos por el histograma.
Esto es normal al contener el fragmento de la imagen distintos colores que se traducen
en valores de luminosidad.
Reconocimientodeimgenesatravsdesucontenido
148

Se muestra en la siguiente tabla cual ha sido el reparto de los valores de los pixeles
en los 16 intervalos posibles, de las 10 fotografas.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Cielo4 2 16 296 1466 4779 5941 5964 6329 3993 2487 3000 999 724 257 60 168
Cielo6 9 115 1774 5754 7830 5158 2816 6242 1761 1601 1422 1047 776 151 24 1
Cielo7 0 2 101 6996 17494 8559 2604 415 149 67 39 25 17 6 3 4
Cielo9 0 0 0 212 3139 6973 9099 9182 5980 1721 158 16 1 0 0 0
Cielo11 4 338 2592 13838 14937 4397 357 18 0 0 0 0 0 0 0 0
Cielo14 81 1000 3858 6191 6925 6810 3744 1717 1379 1290 1372 769 694 400 229 22
Cielo17 11 9401 13530 6035 3550 2004 942 488 243 104 67 34 22 12 12 26
Cielo20 0 175 2123 4146 4709 4464 3434 2678 2885 4408 3118 1619 1428 739 462 93
Cielo24 0 25 792 1748 2292 3388 5424 9936 11185 1657 22 5 5 2 0 0
Cielo26 54 298 2540 6737 6189 3153 2680 2344 1973 1879 1995 2456 1791 920 1015 527

Tabla 27-Reparto de los valores de los pixeles
En esta tabla se puede ver cmo puntos recaen sobre varios intervalos del
histograma. Esto se produce por lo explicado anteriormente, al ser una imagen rugosa
los colores son diversos, por lo que muchos intervalos del histograma tendrn puntos.
Reconocimientodeimgenesatravsdesucontenido
149

6.3Descripcindelalgoritmotextura

A continuacin se describe el funcionamiento del algoritmo implementado para la
clasificacin de las texturas.
tipo=textura(imagen)
El algoritmo recibe como entrada la variable imagen, que es una matriz
tridimensional RGB, es decir, una matriz 2D por cada uno de los colores bsicos, de
una imagen o sub-imagen.
Devuelve tipo, que es un vector de cuatro posiciones, a continuacin se describe
los posibles valores que puede tomar este vector y el significado de cada uno de ellos.
Tipo(1):Puede tomar los valores 0 o 1, el valor 0 significa que la imagen no
est formada por una textura lisa, mientras que si toma el valor 1 significa
que la imagen si est formada por una textura lisa.
Tipo(2):Puede tomar los valores 0 o 1, si toma valor 0 esto significa que la
imagen no est formada por una textura binaria, mientras que si toma el
valor 1 significa que la imagen est formada por una textura binaria.
Tipo(3):Al igual que en los casos anteriores, solo puede tomar los valores 0
o 1, si toma valor 0 esto significa que la imagen no est formada por una
imagen rugosa, mientras que si toma el valor 1 esto quiere decir que la
imagen est formada por una textura rugosa.
Tipo(4): Indica el nmero de colores por los que est formado una imagen
binaria, por lo que los valores que puede tomar son los siguientes, 0 que
significa que no es una imagen binaria (por lo tanto el valor de tipo(2)
tambin ser 0), 2 indicando que es una imagen binaria por lo que el valor
de tipo(2) ser 1. Por ejemplo si toma valor 3 indica que la imagen binaria
est formada por 3 colores.
Reconocimientodeimgenesatravsdesucontenido
150

Cuando se realiza una llamada a textura, este algoritmo lo primero que hace es
convertir la imagen o sub-imagen, a una imagen en escala de grises. Una vez convertida
a escala de grises, se genera un histograma (mediante la funcin imhist) de 16
intervalos. Este histograma es almacenado en un vector (vector1) al cual se le resta a
todas sus posiciones el entero por debajo del 5.75% del total de la suma de puntos, es
decir, si la suma de las 16 posiciones del vector es de 36000 a cada posicin del vector
habra que restarle 36022*0.0578 = 2071. Esto elimina todas las tonalidades poco
representativas, que se pueden considerar ruido.
El siguiente paso es almacenar en un nuevo vector (vector2), los valores que
contiene el vector1, pero teniendo en cuenta, que si este tiene un valor mayor a 0 se
almacena el valor que contenga el vector1, pero si el valor del vector1 es 0 o inferior en
el vector2 se almacenara el valor 0.
A continuacin se recorre el vector2, guardando cuantas barras del histograma han
tendido un valor superior a 0 y el nmero de barras coninuas, de esta forma
posteriormente se podr analizar el tipo de textura. Por ejemplo en el siguiente
histograma:
Reconocimientodeimgenesatravsdesucontenido
151

Fig 100-Histograma de una imagen binaria.
La lnea discontinua roja, representa el corte de los 2071 puntos, por lo que solo se
tendr en cuenta los valores que estn por encima, por lo tanto, el valor de tramo = 2,
mientras que el de continuas toma los valores de continua(1) = 2 y continua(2) = 1.
Por ltimo se analiza las variable tramo y el vector de continua. Se pueden dar tres
posibilidades.
1. Lisa: para ser textura lisa, tiene que cumplir que el nmero de tramos sea
uno y el valor de continua tiene que ser menor o igual a tres.
2. Binaria: para ser textura binaria, tiene que cumplir que el nmero de tramos
sea mayor o igual a dos y que el valor del contador para cada tramos se
menor o igual a tres.
3. Rugosa: para ser textura rugosa, tiene que cumplir que el valor del contador
de un tramo sea mayor a tres, mientras que el nmero de tramos puede
tomar cualquier valor.
Reconocimientodeimgenesatravsdesucontenido
152
Idealmente una imagen slo debera ser lisa, binaria rugosa y por lo tanto en las
tres primeras componentes del vector de resultado solo debera haber un uno. Sin
embargo se deja abierta la posibilidad de ser clasificada por varios criterios, lo cual
aporta flexibilidad y permite evaluar mejor los algoritmos.



Reconocimientodeimgenesatravsdesucontenido
153

6.4Texturasatravsdelafuncinstatxture[F1]

Esta funcin se ha obtenido del libro Digital Image Processing, a continuacin se
hace una breve descripcin de su funcionamiento.
t=statxture(f,scale);
Donde f es una imagen de entrada (o subimagen) y t es un vector fila de 6
elementos cuyos componentes son los descriptores, que se definen a continuacin
ordenados en el mismo orden. El parmetro scale tambin es un vector fila de 6
elementos, cuyos componentes multiplican los elementos correspondientes de t para
propsitos escalares. Si el valor scale es omitido, se le asigna un vector por de defecto
de 6 elementos cuyos valores sern 1.
Mean: Una medida del trmino medio de la intensidad.
Standard deviation: Una medida del trmino medio del contraste.
Smothness: Mide la suavidad relativa de la intensidad de una regin, R es 0 para
una regin de intensidad constante y se aproxima a 1 para regiones con
excursiones ms largas en los valores de sus niveles de intensidad. En la
prctica, la varianza utilizada en esta medida es normalizada al rango [0,1].
Third moment: Significa la asimetra de un histograma. Esta medida es 0 para
histogramas simtricos, positivo para histogramas asimtricos a la derecha
(sobre el significado) y negativo para histogramas asimtricos a la izquierda.
Uniformity: Mide la uniformidad. Esta medida es mxima cuando todos los
niveles grises son iguales y desciende desde all.
Entropy: Una medida de aleatoriedad.
Reconocimientodeimgenesatravsdesucontenido
154

6.4.1Texturalisa

En tabla 4 se muestran los valores obtenidos en las diez fotografas analizadas
anteriormente, pero ahora con la funcin statxture.
Mean Standard deviation Smothness Third moment Uniformity Entropy
Cielo1 56,418 3,1403 0,0002 0 0,0927 3,6875
Cielo2 161,3194 3,9099 0,0002 0 0,0697 3,9988
Cielo3 143,8766 1,7296 0 0 0,1765 2,8054
Cielo4 125,9209 3,0456 0,0001 0 0,0942 3,6344
Cielo5 69,9853 2,8048 0,0001 0 0,1057 3,5046
Cielo6 162,2645 5,5885 0,0005 0,0012 0,0573 4,4088
Cielo7 214,7608 2,6152 0,0001 0 0,1208 3,2833
Cielo8 222,2894 2,1562 0,0001 0 0,1405 3,0332
Cielo9 145,8803 2,7522 0,0001 0,0001 0,104 3,4832
Cielo10 151,3778 6,49616 0,0006 0,0004 0,0419 4,6748

Tabla 28

Las caractersticas de las texturas lisas, respecto a estos 5 valores (la media no es
significativa) son las siguientes.
Standard deviation: valor bajo, comprendido entre 26.5.
Smothness: valor bajo, comprendido entre 00.0006.
Third momento: valor bajo, comprendido entre -0.00010.0004.
Uniformity: valor alto, comprendido entre 0.050.15.
Entropy: valor bajo, comprendido entre 34.5.
Reconocimientodeimgenesatravsdesucontenido
155

6.4.2Texturabinaria

En tabla 4 se muestran los valores obtenidos en las diez fotografas analizadas
anteriormente, pero ahora con la funcin statxture.

Mean andard deviati Smothness Third momen Uniformity Entropy
Cielo1 111,5 59,4168 0,0515 1,1361 0,0387 5,2934
Cielo3 108,2 29,4892 0,0132 0,0100 0,0456 5,0091
Cielo4 148,4 26,3332 0,0106 0,0207 0,0463 5,5129
Cielo5 100,3 70,1094 0,0703 1,8158 0,0136 6,7850
Cielo11 90,3 34,9466 0,0184 0,0680 0,0138 6,4830
Cielo13 69,6 61,9229 0,0557 4,4206 0,0346 5,5471
Cielo14 153,6 44,1013 0,0290 0,6478 0,0631 4,9845
Cielo18 84,4 42,4865 0,0270 0,3421 0,0224 6,1453
Cielo24 85,17 37,3890 0,0210 0,1629 0,0407 5,0397
Cielo27 116,6 40,9523 0,0251 0,1409 0,0138 6,4890


Tabla 29
Las caractersticas de las texturas lisas, respecto a estos 5 valores (la media no es
significativa) son las siguientes.
Standard deviation: valor bajo, comprendido entre 2670.
Smothness: valor bajo, comprendido entre 0.010.07.
Third momento: valor bajo, comprendido entre -1.94.5.
Uniformity: valor alto, comprendido entre 0.010.05.
Entropy: valor bajo, comprendido entre 56.8.
Reconocimientodeimgenesatravsdesucontenido
156

6.4.3Texturarugosa

En tabla 4 se muestran los valores obtenidos en las diez fotografas analizadas
anteriormente, pero ahora con la funcin statxture.
Mean andard deviati Smothness Third moment Uniformity Entropy
Cielo4 114,0791 39,5144 0,0234 0,5803 0,0077 7,2417
Cielo6 95,2019 42,1775 0,0266 0,9175 0,0084 7,1876
Cielo7 72,3611 16,1822 0,004 0,1277 0,0214 5,841
Cielo9 108,14 22,7251 0,0079 0,0062 0,012 6,5258
Cielo11 61,0878 13,9308 0,003 0,0016 0,0207 5,8369
Cielo14 86,4696 45,9491 0,0314 1,667 0,0079 7,3088
Cielo17 43,4333 26,7221 0,0109 0,6251 0,0175 6,2711
Cielo20 113,5912 52,5547 0,0407 0,7753 0,0057 7,6017
Cielo24 111,7108 27,6927 0,0117 0,3165 0,0128 6,5802
Cielo26 108,6495 60,5981 0,0535 2,279 0,0063 7,6003

Tabla 30
Las caractersticas de las texturas rugosa, respecto a estos 5 valores (la media no es
significativa) son las siguientes.
Standard deviation: valor alto, comprendido entre 1460.
Smothness: valor alto, comprendido entre 0.0030.05.
Third momento: valor alto, comprendido entre -0.302.
Uniformity: valor bajo, comprendido entre 0.0080.02.
Entropy: valor alto, comprendido entre 5.87.6.
Reconocimientodeimgenesatravsdesucontenido
157


7. ANALISIS COMBINADO DE COLOR Y
TEXTURA
Reconocimientodeimgenesatravsdesucontenido
158

7.Anlisiscombinadodecolorytexturas

En este apartado se realizara un ltimo anlisis que combina los conceptos de los
puntos anteriores, es decir, se crear un algoritmo el cul analiza el color y las texturas
con objeto de detectar elementos concretos. Para ello es necesario realizar pequeas
modificaciones en los algoritmos creados anteriormente. Ahora estos algoritmos no
reciben la imagen completa sino que reciben una subimagen, esta subimagen es la
muestra a analizar.











Fig 101-Representacin de las llamadas a funciones

A continuacin, se explicara el funcionamiento de la funcin reconocimiento. No se
explicar el resto de funciones ya que han sido explicadas anteriormente, solo se han
modificado los datos de entrada (subimagen en lugar de imagen completa).
Funcion:
Reconocimiento
Funcion:
Color
Funcion:
Textura
Funcion:
Continuas
Reconocimientodeimgenesatravsdesucontenido
159

7.1Descripcindelalgoritmoreconocimientodecielo

En este se toman 20 muestras o subimagen. Estas muestras tienen un tamao del
5% del ancho y largo de la imagen (ver figura Ilustracin 1). Tras obtener la muestra,
esta se guarda en una matriz, seguidamente se llama a la funcin color, ha esta funcin
se le pasa la matriz convertida a HSV. Si la funcin color nos devuelve que la imagen
contena cielo llamamos a la funcin textura. A esta ltima funcin se le pasa la matriz
convertida a escala de grises.
Si la funcin textura ha devuelto como resultado que es una textura lisa, es decir, la
primera posicin del vector que devuelve vale 1 y el color es azul, se contabiliza el
fragmento como cielo y se incrementa un contador. Si tras evaluar las 20 muestras al
menos 2 de ellas son de color azul y textura lisa (el contador vale 2 o ms), entonces la
imagen contendr cielo.

Ilustracin 1-Evaluacin fotografa cielo1
Reconocimientodeimgenesatravsdesucontenido
160
El resultado que devolvi el algoritmo fue que la imagen contena cielo, de las 20
muestras las 19 dieron como resultado cielo, como se ver en el captulo de resultados.
Reconocimientodeimgenesatravsdesucontenido
161

7.2Descripcindelalgoritmoparareconocimientodecsped.

La segunda caracterstica que se ha querido extraer para clasificar imgenes es
detectar si la imagen contiene csped (por ejemplo imgenes de futbol y golf).
Anlogamente el reconocimiento de cielo, en el reconocimiento de csped se toman
20 muestras o subimagen. Estas muestras tienen un tamao del 5% del ancho y largo de
la imagen . Tras obtener la muestra, esta se guarda en una matriz, seguidamente se llama
a la funcin color, ha esta funcin se le pasa la matriz convertida a HSV. Si la funcin
color nos devuelve que la imagen contena csped llamamos a la funcin textura. A esta
ltima funcin se le pasa la matriz convertida a escala de grises.
Si la funcin textura ha devuelto como resultado que es una textura lisa, es decir, la
primera posicin del vector que devuelve vale 1 y el color es azul, se contabiliza el
fragmento como csped y se incrementa un contador. Si tras evaluar las 20 muestras al
menos 2 de ellas son de color verde y textura lisa (el contador vale 2 o ms), entonces la
imagen contendr cielo.

Reconocimientodeimgenesatravsdesucontenido
162



8. DETECTOR CARAS

Reconocimientodeimgenesatravsdesucontenido
163

8.Detectorcaras
8.1Introduccin

Aunque se ha localizado un algoritmo desarrollado en Matlab para deteccin de
caras llamado Face Detection Toolbox [D11], el programa de ejemplo tiene algunos
problemas que impiden su ejecucin en versiones actuales de Matlab. Por lo tanto en
este apartado se van a explicar los pasos seguidos a la hora de disear el algoritmo de
detencin de caras. El diseo de este algoritmo se ha basado en el documento Face
Deteccin in Color Images IEEE TRANSACTION ON PATTERN ANALYSIS AND
MACHINE INTELLIGENCE, VOL. 24, NO.5 MAY 2002 [D9].
Para la localizacin de la cara dentro de una imagen, el mtodo ms sencillo y
lgico es en primer lugar la detencin de los ojos y posteriormente localizar la boca en
una posicin predeterminada, es decir, supondremos que la imagen estar bien ajustada
y nunca invertida o girada. La boca se buscara por debajo de los ojos centrado entre
ambos y a una distancia equivalente a la separacin de los ojos.
Este algoritmo slo es capaz de detectar si existe un rostro dentro de una imagen y
si cumple las siguientes condiciones:
Slo puede haber un rostro en la imagen.
En la imagen la persona debe estar centrada de cintura para arriba.
Estas limitaciones son debidas, a la cantidad de puntos que forma un ojo en una
imagen de cuerpo entero o de medio cuerpo. Lgicamente en las de medio cuerpo el ojo
ser ms grande y por lo tanto el ojo estar formado por ms puntos. Adems la
distancia entre los ojos ser mayor en la imagen de medio cuerpo que en la de cuerpo
entero. Con estas restricciones se simplifica el proceso y aumenta la fiabilidad de la
clasificacin.
Antes de explicar el funcionamiento de dicho algoritmo, se explicara el modelo de
color YCBCR, utilizado tanto en la detencin de los ojos como de los labios.
Reconocimientodeimgenesatravsdesucontenido
164

8.2YCbCr
[D11] YPbPr (tambin denominado "Y/Pb/Pr", "YPrPb", "PrPbY", "B-Y R-Y Y" o
"PbPrY") es el acrnimo que designa las componentes del espacio de color RGB
utilizadas en el tratamiento de la seal de vdeo; en particular, referidas a los cables de
video compuesto. YPbPr es la versin de seal analgica del espacio de color YCbCr;
ambas son numricamente equivalentes, pero mientras que YPbPr se utiliza en
electrnica analgica, YCBCR est pensada para vdeo digital.
Y transporta la informacin de luminancia (brillo).
Pb transporta la diferencia entre la componente azul y la de luminancia (B - Y).
Pr transporta la diferencia entre la componente roja y la de luminancia (R - Y).

Fig 102-Cubo YCbCr 1 [I1]
Reconocimientodeimgenesatravsdesucontenido
165

Fig 103-Cubo YCbCr II [I1]


Reconocimientodeimgenesatravsdesucontenido
166

8.3Descripcinalgoritmoimplementado

En este apartado, se va a describir el funcionamiento del algoritmo que reconoce si
en una imagen hay una cara. Como se ha comentado, realmente detecta un retrato. Este
algoritmo est formado por cuatro funciones.
rostro: Recibe la imagen y la convierte a YCbCr, realiza la llamada a ojos y
localizador.
localizador: Recibe desde rostro la imagen YCbCr y el resultado del los
posibles ojos. Analiza los posibles ojos, una vez localizado los dos ojos,
llama a labios y comprueba si existe un labio en la parte inferior de los ojos
a la distancia apropiada.
ojos: Localiza los posibles ojos y los almacena en una imagen binaria.
labios: Localiza los posibles labios y los almacena en una imagen binaria.

A continuacin se describe la lgica de cada una de las fuciones.

8.3.1Funcinrostro.

Recibe la imagen a analizar y la convierte a YCbCr.

Fig 104-Imagen recibida por la funcion rostro
Reconocimientodeimgenesatravsdesucontenido
167

Fig 105- Imagen convertida a YCbCr

Una vez que la imagen ha sido convertida a YCbCr, se realiza la llamada a ojos
pasndole la imagen convertida. Posteriormente, se realiza la llamada a localizador, al
cual le pasa la mitad superior de la matriz formada por los posibles ojos, ya que
suponemos que si la foto es de medio cuerpo los ojos estarn en la parte superior. Antes
de llamar a localizador se realiza un filtrado de la matriz devuelta por la funcin ojos. El
filtro utilizado en la matriz de los posibles ojos, consiste en eliminar todos aquellos
candidatos que estn formados por ms de 5000 puntos y menos de 150.

8.3.2Funcinojos

Recibe la imagen convertida en YCbCr y devuelve una matriz binaria en la cual el
uno son los posibles ojos.
Su lgica segn se propone en [D9] es la siguiente:
Reconocimientodeimgenesatravsdesucontenido
168





Fig 108-Y Fig 107-Cr2 Fig 106-Cb2
Fig 110-EyeMapL
Fig 109-EyeMapC
AND
Fig 111-EyeMap
Reconocimientodeimgenesatravsdesucontenido
169

Una vez obtenida la matriz EyeMap, se realiza una operacin de dilatacin sobre
esta, para obtener unos ojos mejor definidos.

Fig 112-Dilatacion

La matriz dilatada es la respuesta proporcionada por la funcin ojos.
Posteriormente la funcin rostro filtra los posibles ojos con criterios de tamao mximo
y mnimo. El resultado obtenido para esta imagen seria:
Reconocimientodeimgenesatravsdesucontenido
170

Fig 113-Respuesta filtrada

8.3.3Funcinlabio

Al igual que la funcin ojos, recibe la imagen convertida en YCbCr y devuelve una
matriz binaria en la cual el uno son los posibles labios.
Su lgica segn se propone en [D9] es la siguiente:
Reconocimientodeimgenesatravsdesucontenido
171


Fig 115-Cr/Cb Fig 114-Cr2
XOR
Fig 117-Diferencia
A
N
D
Fig 116-MouthMap
Reconocimientodeimgenesatravsdesucontenido
172

Una vez obtenida la matriz MouthMap, se realiza una operacin de dilatacin sobre
esta, para obtener un labio mejor definidos.

Fig 118-Imagen dilatada
La matriz dilatada es la respuesta proporcionada de la funcin labios.
Posteriormente la funcin localizador filtra los posibles labios. El resultado obtenido
para esta imagen seria:

Reconocimientodeimgenesatravsdesucontenido
173


Fig 119-Respuesta filtrada

8.3.4funcinLocalizador(basadoengeometras)

Esta funcin es la encargada de una vez localizado un ojo, comprobar si en un


regin a su derecha existe otro posible ojo, este intervalo es igual a:
- Ymin = la coordenada Y del centro del primer ojo menos la altura de la
subimagen que contiene los ojos por 0.08.
- Ymax = la coordenada Y del centro del primer ojo mas la altura de la
subimagen que contiene los ojos por 0.08.
- Xmin = la coordenada X del centro del primer ojo mas el ancho de la
subimagen que contiene los ojos por 0.1.
- Xmax = la coordenada X del centro del primer ojo mas el acho de la
subimagen que contiene los ojos por 0.3.
Se trata por lo tanto de comprobaciones geomtricas que asumen un valor tpico de
distancias entre ojos con cierta tolerancia.
Reconocimientodeimgenesatravsdesucontenido
174
En el ejemplo anterior los procesos seguidos por esta funcin generaran los
siguientes resultados para la obtencin de los ojos

Fig 120-Imagen recibida por la funcion localizador, donde se encuentran los posibles ojos

Una vez que localizado el posible ojo que se encuentra dentro del crculo rojo,
obtiene la subimagen (en esta caso, sera el cuadrado azul), la cual es analizada
posteriormente en busca de otro ojo. La subimagen obtenida en este caso sera:

Fig 121-Subimagen a analizar en busca de un posible ojo

Tras obtener los dos ojos, se intenta localizar los labios, estos deberan encontrase
en la parte inferior de los ojos centrado entre ambos, la distancia en el eje Y entre los
ojos y la boca, es aproximadamente igual a la distancia en X entre ambos ojos. Es decir:
Reconocimientodeimgenesatravsdesucontenido
175




Fig 122- Relaciones geomtricas en Rostro2


Distancia entre ojos

Distancia vertical entre los ojos y los labios


Por lo que el intervalo de bsqueda de los labios seria:

- Ymin = la coordenada Y del centro del primer ojo mas la distancia X entre
ojos por 0.6
- Ymax = la coordenada Y del centro del primer ojo mas la distancia X entre
ojos por 1.2
- Xmin = la coordenada X del punto medio de la distancia entre los dos ojos
menos la distancia entre ojos partido de cuatro.
- Xmax = la coordenada X del punto medio de la distancia entre los dos ojos
mas la distancia entre ojos partido de cuatro.

En nuestro ejemplo los resultados obtenidos serian los siguientes:
Reconocimientodeimgenesatravsdesucontenido
176



Fig 123-Imagen filtrada de los posibles labios
Por lo que la subimagen creada a partir de los dos posibles ojos seria.


Fig 124-Subimagen donde se deberia encontrar el labio

Una vez obtenido acierto tanto en los ojos como en los labios, la respuesta del
algoritmo seria positiva.
Reconocimientodeimgenesatravsdesucontenido
177


Fig 125-Resultado obtenido tras la ejecucin de los algoritmos
Reconocimientodeimgenesatravsdesucontenido
178






9. PRUEBAS DE VALIDACION

Reconocimientodeimgenesatravsdesucontenido
179

9.Pruebas

9.1Evaluacindelalgoritmodedeteccindecielo.

Para ver el comportamiento del algoritmo, se han analizado todas las fotografas de
las distintas bibliotecas, distinguiendo entre los siguientes posibles resultados.
Caso1:
La fotografa analizada contiene cielo El resultado es positivo (acierto).
Caso2:
La fotografa analizada no contiene cielo El resultado es negativo (acierto).
Caso3:
La fotografa analizada no contiene cielo El resultado es positivo (fallo).
Caso4:
La fotografa analizada contiene cielo El resultado es negativo (fallo).
Reconocimientodeimgenesatravsdesucontenido
180

CASO1
Nombre Aciertosdelos20posibles Resultado
Cielo1 20 Acierto
Cielo2 18 Acierto
Cielo3 20 Acierto
Cielo4 19 Acierto
Cielo5 12 Acierto
Cielo6 20 Acierto
Cielo7 17 Acierto
Cielo8 20 Acierto
Cielo9 20 Acierto
Cielo10 20 Acierto
Cielo11 5 Acierto
Cielo12 20 Acierto
Cielo13 16 Acierto
Cielo14 17 Acierto
Cielo15 20 Acierto
Cielo16 17 Acierto
Cielo17 20 Acierto
Cielo18 17 Acierto
Cielo19 20 Acierto
Cielo21 18 Acierto
Cielo22 20 Acierto
Cielo23 17 Acierto
Cielo24 16 Acierto
Cielo25 10 Acierto
Cielo28 12 Acierto
Csped7 2 Acierto
Csped9 6 Acierto
Tabla 31- Imgenes que contienen cielo y han sido clasificadas como cielo.

CASO2
Nombre Aciertosdelos20posibles Resultado
Cielo20 0 Acierto
Cielo26 0 Acierto
Cielo27 0 Acierto
Csped1 0 Acierto
Csped2 0 Acierto
Csped3 1 Acierto
Csped4 0 Acierto
Csped5 0 Acierto
Csped6 0 Acierto
Csped10 1 Acierto
Csped11 0 Acierto
Csped12 0 Acierto
Csped14 0 Acierto
Reconocimientodeimgenesatravsdesucontenido
181
Interior1 0 Acierto
Interior2 0 Acierto
Interior3 0 Acierto
Interior4 0 Acierto
Interior5 0 Acierto
Interior6 0 Acierto
Interior7 0 Acierto
Interior8 0 Acierto
Interior9 0 Acierto
Interior10 0 Acierto
Submarina1 0 Acierto
Submarina2 0 Acierto
Submarina3 0 Acierto
Submarina4 1 Acierto
Submarian5 0 Acierto
Submarina6 0 Acierto
Submarina7 0 Acierto
Submarina8 0 Acierto
Submarina10 0 Acierto
Tabla 32- Imgenes que no contienen cielo y no han sido clasificadas como cielo.

CASO3
Nombre Aciertos Resultado
Csped13 4 Fallo
Csped15 2 Fallo
Submarina9 7 Fallo
Tabla 33- Imgenes que no contienen cielo y han sido clasificadas como cielo.

CASO4
Nombre Aciertos Resultado
Csped8 1 Fallo
Tabla 34- Imgenes que contienen cielo y no han sido clasificadas como cielo.

Despus de analizar un total de 60 fotografas, 56 han dado un resultado positivo, y
solo 4 resultado negativo, es decir, 93.33% han sido acierto.
Reconocimientodeimgenesatravsdesucontenido
182

9.2Evaluacindelalgoritmodecsped

Para ver el comportamiento del algoritmo, se han analizado todas las fotografas de
las distintas bibliotecas, distinguiendo entre los siguientes posibles resultados.
Caso1:
La fotografa analizada contiene csped El resultado es positivo (acierto).
Caso2:
La fotografa analizada no contiene csped El resultado es negativo (acierto).
Caso3:
La fotografa analizada no contiene csped El resultado es positivo (fallo).
Caso4:
La fotografa analizada contiene csped El resultado es negativo (fallo).
Reconocimientodeimgenesatravsdesucontenido
183

CASO1
Nombre Aciertos Resultado
Csped1 11 Acierto
Csped2 13 Acierto
Csped3 9 Acierto
Csped4 8 Acierto
Csped5 4 Acierto
Csped6 7 Acierto
Csped7 20 Acierto
Csped8 15 Acierto
Csped9 5 Acierto
Csped10 14 Acierto
Csped11 7 Acierto
Csped12 15 Acierto
Csped13 16 Acierto
Csped14 6 Acierto
Csped15 14 Acierto
Cielo27 4 Acierto
Tabla 35- Imgenes que contienen csped y han sido clasificadas como csped.

CASO2
Nombre Aciertos Respuesta
Cielo1 0 Acierto
Cielo2 0 Acierto
Cielo3 0 Acierto
Cielo4 0 Acierto
Cielo5 0 Acierto
Cielo6 0 Acierto
Cielo7 0 Acierto
Cielo9 0 Acierto
Cielo10 0 Acierto
Cielo11 1 Acierto
Cielo12 0 Acierto
Cielo13 0 Acierto
Cielo14 0 Acierto
Cielo15 0 Acierto
Cielo16 0 Acierto
Cielo17 0 Acierto
Cielo18 0 Acierto
Cielo19 0 Acierto
Cielo21 0 Acierto
Cielo22 0 Acierto
Cielo23 0 Acierto
Cielo24 0 Acierto
Cielo25 0 Acierto
Cielo26 1 Acierto
Reconocimientodeimgenesatravsdesucontenido
184
Cielo28 0 Acierto
Interior1 0 Acierto
Interior2 0 Acierto
Interior3 0 Acierto
Interior4 0 Acierto
Interior5 0 Acierto
Interior6 0 Acierto
Interior7 0 Acierto
Interior8 0 Acierto
Interior9 0 Acierto
Interior10 0 Acierto
Submarina1 0 Acierto
Submarina2 0 Acierto
Submarina3 0 Acierto
Submarina4 0 Acierto
Submarina5 0 Acierto
Submarina6 0 Acierto
Submarina7 0 Acierto
Submarina8 0 Acierto
Submarina9 0 Acierto
Submarina10 0 Acierto
Tabla 36-Imgenes que no contienen csped y no han sido clasificadas como csped.

CASO3
Nombre Aciertos Resultado
Cielo27 4 Fallo
Tabla 37-Imgenes que no contienen csped y han sido clasificadas como csped.

CASO4
Nombre Aciertos Resultado
Cielo8 0 Fallo
Ceilo20 0 Fallo
Tabla 38-Imgenes que contienen csped y no han sido clasificadas como csped.
Despus de analizar un total de 60 fotografas, 58 han dado un resultado positivo, y
solo 4 resultado negativo, es decir, 96.67% han sido acierto.
Reconocimientodeimgenesatravsdesucontenido
185

9.3Pruebasdelalgoritmodeidentificacintextura

Se han estudiado 30 fragmentos de fotografas para ver la eficiencia del algoritmo
generado. A continuacin se muestra en una tabla los resultados obtenidos y los
deseados.
NFragmento ResutadoObtenido ResultadoDeseado Acierto
1 1000 1000 si
2 1000 1000 si
3 1000 1000 si
4 1000 1000 si
5 1000 1000 si
6 1000 1000 si
7 1000 1000 si
8 1000 1000 si
9 1000 1000 si
10 1000 1000 si
11 0102 0102 si
12 0102 0102 si
13 0102 0102 si
14 0103 0103 si
15 0102 0102 si
16 0102 0102 si
17 0102 0102 si
18 0102 0102 si
19 0102 0102 si
20 0102 0102 si
21 0010 0010 si
22 0010 0010 si
23 0010 0010 si
24 0010 0010 si
25 0010 0010 si
26 0010 0010 si
27 0010 0010 si
28 0010 0010 si
29 0010 0010 si
30 0010 0010 si

Tabla 39-Resultados obtenidos con el algoritmo de texturas
Reconocimientodeimgenesatravsdesucontenido
186

Despus de ver los resultados obtenidos tras analizar los 30 segmentos de
fotografas con el algoritmo generado, podemos decir que la eficiencia del este es del
100% al no producirse ningn error en la clasificacin.
Reconocimientodeimgenesatravsdesucontenido
187

9.4Detallesdeevaluacindelalgoritmodereconocimientodecielo

Para ver si el algoritmo funciona correctamente, se ha realizado una prueba la cual
consista en analizar una imagen completa y marcar en un recuadro aquellas secciones
de la foto que dieron como resultado cielo. El tamao del recuadro ser igual que en los
casos anteriores del 5% del ancho y largo de la imagen.
A continuacin se muestran algunos resultados obtenidos.

Imagen cielo1


Fig 126-Imagen a analizar

Se puede observar en la figura 121 como muchas partes pertenecientes a la nieve
han sido confundidas con el cielo, esto es debido a que la nieve tiene textura lisa y tonos
Reconocimientodeimgenesatravsdesucontenido
188
azulados debido al reflejo del cielo. Un problema ms importante ha surgido en slo
siete muestras de tierra confundidas por cielo.

Fig 127- Resultado del anlisis


Reconocimientodeimgenesatravsdesucontenido
189

Imagen cielo5: Es otro ejemplo de imagen completa donde se ha realizado 400
evaluaciones de la funcin de deteccin de cielo


Fig 128-Imagen a analizar

En la figura 129, se puede ver cmo no se ha producido ninguna confusin y
todas las partes pertenecientes al cielo han sido reconocidas como tal. Las partes de la
derecha pertenecientes al cielo no han sido clasificadas como tal debido a que no poseen
el tamao suficiente para formar una muestra.
Reconocimientodeimgenesatravsdesucontenido
190


Fig 129-Resultados del anlisis

Reconocimientodeimgenesatravsdesucontenido
191

Imagen submarina9: Se trata de una imagen submarina con textura lisa y tonos
azules.

Fig 130-Imagen a analizar

Se pude observar en la fig 131, como el algoritmo ha confundido la mayor parte
de la imagen con cielo, la parte de inferior y derecha de la imagen, no han sido
analizadas debido a que el tamao de la muestra era mayor que el espacio sobrante.
Posiblemente si estas secciones hubieran sido analizadas, hubieran dado como resultado
cielo. Algunas partes de la raya no han sido confundidas por cielo, esto se debe a que se
observan dos colores que aunque pertenecen al cielo, al analizar la textura esta ha dado
como resultado binaria, por lo que el algoritmo no lo ha macado como cielo, ya que este
tiene textura lisa.
Reconocimientodeimgenesatravsdesucontenido
192

Fig 131-Resultado del anlisis

Para poder clasificar correctamente esta imagen, el algoritmo de deteccin de color
debera ser capaza de diferenciar la tonalidad azul-cielo de azul-mar.



Reconocimientodeimgenesatravsdesucontenido
193

9.5Pruebasalgoritmoreconocimiento

Para realizar las pruebas, se ha obtenido una base de datos con 15 fotografas, a
continuacin se describe los posibles resultados.
Caso1:
La fotografa analizada contiene rostro 14/16 Aciertos.
Caso2:
La fotografa analizada no contiene rostro El Acierta en 10 de 14.


CASO1
Nombre Respuesta Resultado
Rostro1 Positivo Acierto
Rostro2 Positivo Acierto
Rostro3 Positivo Acierto
Rostro4 Positivo Acierto
Rostro5 Positivo Acierto
Rostro6 Positivo Acierto
Rostro7 Positivo Acierto
Rostro8 Positivo Acierto
Rostro9 Positivo Acierto
Rostro10 Positivo Acierto
Rostro11 Positivo Acierto
Rostro12 Positivo Acierto
Rostro13 Positivo Acierto
Rostro14 Negativa Fallo
Rostro15 Negativa Fallo
Cesped3 Positivo Acierto
Tabla 40-Resultados obtenidos con el algoritmo rostro, analizando imgenes con rostros.
Reconocimientodeimgenesatravsdesucontenido
194


CASO2
Nombre Respuesta Resultado
Cesped7 Negativo Acierto
Cesped8 Positivo Fallo
Cesped9 Positivo Fallo
Cesped10 Negativo Acierto
Cesped13 Positivo Fallo
Cielo3 Negativo Acierto
Cielo4 Negativo Acierto
Cielo15 Negativo Acierto
Cielo16 Negativo Acierto
Cielo18 Negativo Acierto
Cielo20 Negativo Acierto
Cielo23 Positivo Fallo
Submarina1 Negativo Acierto
Submarian10 Negativo Acierto
Tabla 41-Resultados obtenidos con el algoritmo rostro, analizando imgenes sin rostro.

De las 16 fotografas analizadas que contenan rostro han dado positivo 14 por lo
que el grado de acierto ha sido del 87.5%.
De las 14 fotografas analizadas que no contenan rostro han dado positivo 4 por lo
que el grado de acierto ha sido del 71.43%.
A continuacin se muestran tres ejemplos de acierto sealando las identificaciones
que hace de ojo y boca.
Reconocimientodeimgenesatravsdesucontenido
195

Fig 132-Analisis rostro 4 Positivo Acierto
Se puede observar como en esta fotografa el algoritmo es capaz de identificar
perfectamente tanto los ojos como la boca, aunque en este caso solo ha identificado el
labio inferior.

Reconocimientodeimgenesatravsdesucontenido
196

Fig 133-Analisis rostro 3
En este caso podemos observar, que ha identificado incorrectamente los ojos y la
boca, aunque el algoritmo devolvi como resultado positivo y se ha contabilizado
como acierto. La mala ubicacin de los ojos y boca es debido, a que los posibles ojos
son numerados por columnas, y el anlisis se realiza por orden de los posibles ojos, y en
este caso localizo unos falsos ojos y boca antes de poder analizar los verdaderos ojos y
boca.
En un segundo paso si habra encontrado los ojos y la boca, el ojo verdadero se
encuentra entre los ojos falsos y como hemos dicho anteriormente los posibles ojos son
numerados por columnas.
Reconocimientodeimgenesatravsdesucontenido
197
Estimacin econmica

A continuacin se mostrarn dos tablas, la primera con el desglose de las horas
hombre invertidas por cada miembro del equipo y la segunda con la descomposicin del
precio por paquetes de trabajo del proyecto:
DIRECTOR JEFEPROYECTO ANALISTA PROGRAMADOR DISEADOR
HORAS/HOMBRE 25 80 165 110 40
TARIFA 100,00 80,00 60,00 30,00 45,00
IMPORTE 2.500,00 6.400,00 9.900,00 3.300,00 1.800,00
TOTAL 23.900,00
Tabla 42-Horas hombre

Tabla 43-Descomposicin del precio por paquetes
HORAS TARIFAMEDIA IMPORTE
WP00 20 70 1.400,00
WP01 50 70 3.500,00
WP02 235 46.81 11.000,00
WP03 90 65.56 5.900,00
WP04 25 84 2.100,00
WP05 15 0 0
TOTAL 23.900,00
Reconocimientodeimgenesatravsdesucontenido
198

Conclusiones

Las conclusiones de un proyecto es una de las partes ms esenciales del mismo,
pues en estas se culmina el trabajo de todo un ao.

A continuacin se explica las conclusiones obtenidas en cada uno de los
algoritmos.


Algoritmoscieloycsped

A lo largo del proyecto se ha demostrado, que el reconocimiento de caractersticas
como pueden ser el cielo, csped, nieve, mar, etc. donde hay un color predominante y
adems se pude aplicar el concepto de textura, es viable, puesto que los resultados
obtenidos as lo demuestran.
Los algoritmos desarrollados para estas dos caractersticas han obtenido un grado
de acierto del 95% aproximadamente.
El principal inconveniente que se ha observado, es la elevada carga computacional,
aunque esta solo es apreciable en fotografas con elevada resolucin, debido a que se
aumenta el tamao de las matrices. Por lo tanto, la implantacin de estos algoritmos en
buscadores es posible, siempre y cuando los buscadores estn en sistemas clusterizados
o en grid.
Reconocimientodeimgenesatravsdesucontenido
199

Algoritmodedeteccinderostros

Las pruebas realizadas con la biblioteca de imgenes creada para este proyecto, han
sido satisfactorias, as lo demuestra el grado de acierto obtenido, este ha sido del 85%
aproximadamente.
Al igual que sucede con los algoritmos cielo y csped, el principal inconveniente ha
sido la elevada carga computacional. Aunque la implantacin de este en un buscador es
posible siempre y cuando, se realicen en sistemas clusterizados o grid, no siendo posible
la localizacin de rostros en tiempo real, es decir, no es posible aplicarlo para sistemas
de video vigilancia, cmaras fotogrficas, etc.

La realizacin de este algoritmo ha resultado mucho ms compleja que en los
anteriores casos. Los principales inconvenientes encontrados a la hora del desarrollo de
este algoritmo han sido:
Determinar los cortes, para la creacin de las matrices binarias. Tanto para
la localizacin de los labios como para los ojos.
Determinar el corte de la luminosidad de los labios.
Determinar el corte de la luminosidad de los ojos.
Lgica desarrollada para determinar si en la fotografa hay un rostro.
Reconocimientodeimgenesatravsdesucontenido
200

Bibliografa
Definicioneseimagenes

[D1]
http://catarina.udlap.mx/u_dl_a/tales/documentos/msp/zenteno_t_fa/capitulo1.pdf
[D2] www.cio.mx/3_enc_mujer/files/extensos/Sesion%204/S4-ING12.doc
[D3]
http://w3.iec.csic.es/URSI/articulos_coruna_2003/actas_pdf/SESION%208/S8.%20Aul
a%202.4/1355-SISTEMA.PDF
[D4]
http://www.upc.edu.pe/RepositorioAPS/0/13/JER/PARTICIPACIONENCONGRESOS/
Reconocimiento-Rostros.PDF
[D5]
http://www.correodelmaestro.com/anteriores/2002/noviembre/1anteaula78.htm
[D6] http://es.wikipedia.org/wiki/Modelo_de_color_RGB
[D7] http://es.wikipedia.org/wiki/Modelo_de_color_HSV
[D8]
http://www.dfmf.uned.es/actividades/no_reglada/laboratorio/segmentacion3.pdf
[D9]
http://ieeexplore.ieee.org/Xplore/login.jsp?url=http%3A%2F%2Fieeexplore.ieee.org%2
Fiel5%2F34%2F21601%2F01000242.pdf%3Farnumber%3D1000242&authDecision=-
203
[D10] http://es.wikipedia.org/wiki/YPBPR
[D11] http://www.mathworks.com/matlabcentral/fileexchange/24092
Reconocimientodeimgenesatravsdesucontenido
201

[I1]
http://cannes.itam.mx/Alfredo/Espaniol/Cursos/Robotica/Material/VisionAIBO.pdf



Reconocimientodeimgenesatravsdesucontenido
202

Librosdeconsulta

[F1] Rafael C.Gonzalez, Richarcd E.Woods, Steven L. Eddins Digital Image
Processing Pearson Prentice Hall (2004)
[AREB01] Barranco, J., Metodologa del anlisis estructurado de sistemas ,
Universidad Pontificia Comillas, Madrid 2001.
[GARC05] Garca, J., Rodrguez J., Aprenda Matlab 7.0 como si estuviera en
primero, Escuela Tcnica de Ingenieros Industriales Universidad
Politcnica de Madrid, Madrid 2005.
Reconocimientodeimgenesatravsdesucontenido
203

AnexoA.Bibliotecaimgenescielo.



Cielo 1


Cielo 2


Cielo 3


Cielo 4

Reconocimientodeimgenesatravsdesucontenido
204

Cielo 5

Cielo 6



Cielo 7


Cielo 8


Cielo 9


Cielo 10
Reconocimientodeimgenesatravsdesucontenido
205


Cielo 11


Cielo 12


Cielo 13


Cielo 14


Cielo 15


Cielo 16
Reconocimientodeimgenesatravsdesucontenido
206


Cielo 17


Cielo 18


Cielo 19


Cielo 20


Cielo 21


Cielo 22
Reconocimientodeimgenesatravsdesucontenido
207


Cielo 23


Cielo 24


Cielo 25


Cielo 26



Reconocimientodeimgenesatravsdesucontenido
208

Cielo 27

Cielo 28


Cielo1.jpg: Tignes-Francia.
Resolucin: 2560x1920.
Cielo2.jpg: Seattle Estados unidos.
Resolucin: 1920x2560.
Cielo3.jpg: China.
Resolucin: 2560x1920.
Cielo4.jpg: Tailandia.
Resolucin: 1534x2048.
Cielo5.jpg: Cuba.
Resolucin: 2048x1536.
Cielo6.jpg: Palma de Mallorca-Espaa.
Resolucin: 1600x1200.
Cielo7.jpg: Ibiza-Espaa.
Resolucin: 2048x1536.
Reconocimientodeimgenesatravsdesucontenido
209
Cielo8.jpg: Rivera Maya-Mxico.
Resolucin: 2048x1536.
Cielo9.jpg: Egipto.
Resolucin: 2048x1536.
Cielo10.jpg: Vigo-Espaa.
Resolucin: 2048x1536.
Cielo11.jpg: Asturias-Espaa.
Resolucin: 2048x1536.
Cielo12.jpg: Comillas-Espaa.
Resolucin: 2048x1536.
Cielo13.jpg: La Rioja-Espaa.
Resolucin: 2560x1920.

Cielo14.jpg: Praga-Repblica-Checa.
Resolucin: 2560x1920.
Cielo15.jpg: Madrid-Espaa.
Resolucin: 2560x1920.
Cielo16.jpg: Cceres-Espaa.
Resolucin: 2048x1536.
Cielo17.jpg: Lisboa-Portugal.
Resolucin: 2048x1536.
Cielo18.jpg: Londres-Inglaterra.
Reconocimientodeimgenesatravsdesucontenido
210
Resolucin: 3072x2304.
Ceilo19.jpg: Lanzarote-Espaa.
Resolucin: 3072x2304.
Cielo20.jpg: Bournemouth-Inglaterra.
Resolucin: 3072x2304.
Cielo21.jpg: Segovia-Espaa.
Resolucin: 3072x2304.
Cielo22.jpg: Vancouver-Canad.
Resolucin: 2048x1536.
Cielo23.jpg: Paris-Francia.
Resolucin: 2048x1536.
Cielo24.jpg: Cdiz-Espaa.
Resolucin: 2816x2112.
Cielo25.jpg: msterdam-Holanda.
Resolucin: 2112x2816.
Cielo26.jpg: Victoria-Canad.
Resolucin: 2048x1536.
Cielo27.jpg: Sidney-Canad.
Resolucin: 1536x2048.
Cielo28: Whistter-Canad.
Resolucin: 2560x1920.
Reconocimientodeimgenesatravsdesucontenido
211
AnexoB.Bibliotecaimgenescsped.



Cesped 1


Cesped 2


Cesped 3


Cesped 4




Reconocimientodeimgenesatravsdesucontenido
212
Cesped 5 Cesped 6


Cesped 7

Cesped 8

Cesped 9


Cesped 10

Reconocimientodeimgenesatravsdesucontenido
213

Cesped 11

Cesped 12


Cesped 13


Cesped 14


Cesped 15

Csped1: Campo Zaragoza (www.as.com).
Resolucin: 663x489.
Reconocimientodeimgenesatravsdesucontenido
214
Csped2.: Campo Razing (www.as.com).
Resolucin: 489x489.
Csped3.: Campo Atltico (www.as.com).
Resolucin: 489x489.
Csped4: Campo Murcia (www.as.com).
Resolucin: 663x489.
Csped5: Campo Barcelona (www.as.com).
Resolucin: 663x489.
Csped6: Campo Sevilla (www.as.com).
Resolucin: 663x489.
Csped7: (http://www.manzanillo.com.mx/2005/images/stories/media/13golf2.jpg).
Resolucin: 1000x798.
Csped8: (http://lestartit.net/FotosActivitats/GolfEmporda2.JPG).
Resolucin: 600x394.
Csped9:
(http://www.mondial.at/content/newsdoc/Golf%20c%20Son%20Antem%20Golf%20Cl
ub.jpg).
Resolucin: 1772x1186.

Csped10: Campo Deportivo (www.as.com).
Resolucin: 489x489.
Reconocimientodeimgenesatravsdesucontenido
215

Csped11: Campo Almera (www.as.com).
Resolucin: 489x489.
Csped12: Campo Recreativo (www.as.com).
Resolucin: 663x489.

Csped13: Campo Getafe (www.as.com).
Resolucin: 489x489.
Csped14: Campo Villareal (www.as.com).
Resolucin: 663x489.
Csped15: Campo Lokomotiv (www.as.com).
Resolucin: 489x489.

Reconocimientodeimgenesatravsdesucontenido
216

AnexoC.Bibliotecaimgenesinterior.



Interior 1


Interior 2


Interior 3


Interior 4



Reconocimientodeimgenesatravsdesucontenido
217

Interior 5

Interior 6


Interior 7


Interior 8




Reconocimientodeimgenesatravsdesucontenido
218

Interior 9

Interior 10

Interior1: (www.idealista.com).
Resolucin: 300x300.
Interior2: (www.idealista.com).
Resolucin: 300x300.
Interior3: (www.idealista.com).
Resolucin: 650x487.
Interior4: (www.idealista.com).
Resolucin: 300x300.
Interior5: (www.idealista.com).
Resolucin: 650x487.
Interior6: (www.idealista.com).
Resolucin: 650x867.
Interior7: (www.idealista.com).
Resolucin: 650x487.
Interior8: (www.idealista.com).
Reconocimientodeimgenesatravsdesucontenido
219
Resolucin: 600x800.
Interior9: (www.idealista.com).
Resolucin: 650x487.
Interior10: (www.idealista.com).
Resolucin: 650x487.
Reconocimientodeimgenesatravsdesucontenido
220
AnexoD.Bibliotecaimgenessubmarinas

Submarina 1

Submarina 2


Submarina 3


Submarina 4

Reconocimientodeimgenesatravsdesucontenido
221
Submarina 5

Submarina 6

Submarina 7


Submarina 8

Submarina 9


Submarina 10

Reconocimientodeimgenesatravsdesucontenido
222

AnexoE.Bibliotecaimgenesrostros.




Rostro 1



Rostro 2


Rostro 3


Rostro 4
Reconocimientodeimgenesatravsdesucontenido
223




Rostro 5




Rostro 6


Rostro 7


Rostro 8
Reconocimientodeimgenesatravsdesucontenido
224



Rostro 9



Rostro 10


Rostro 11


Rostro 12


Reconocimientodeimgenesatravsdesucontenido
225



Rostro 13



Rostro 14


Rostro 15


Reconocimientodeimgenesatravsdesucontenido
226

Rostro 1: ().
Resolucin: 300x300.
Rostro 2:().
Resolucin: 300x300.
Rostro 3: ().
Resolucin: 650x487.
Rostro 4:
(http://www.mkt.com.mx/spdominios/get_imagen_adds.php?id_archivo=10289).
Resolucin: 300x300.
Rostro 5:
(http://images.google.es/imgres?imgurl=http://farm4.static.flickr.com/3642/334408
3138_32abc2bafb.jpg%3Fv%3D0&imgrefurl=http://flickr.com/photos/fernandodenogu
era/3344083138/&usg=__LcB1v4W1E6ezair9h6bdTvToSIM=&h=850&w=1272&sz=1
36&hl=es&start=630&tbnid=L7vENQOmhJ5tpM:&tbnh=87&tbnw=130&prev=/image
s%3Fq%3Dmodelos%2Bmujeres%26imgsz%3Dxxlarge%26gbv%3D2%26ndsp%3D20
%26hl%3Des%26sa%3DN%26start%3D620).
Resolucin: 650x487.
Rostro 6: ().
Resolucin: 650x867.
Rostro 7: (http://www.promotorasymodelos.com/galeria_ver.php?id=1682).
Resolucin: 650x487.
Rostro 8: (http://www.promotorasymodelos.com/galeria.php?pag=3).
Resolucin: 600x800.
Rostro 9: (http://www.promotorasymodelos.com/galeria_ver.php?id=1451).
Reconocimientodeimgenesatravsdesucontenido
227
Resolucin: 650x487.
Rostro 10: (http://www.promotorasymodelos.com/galeria_ver.php?id=435).
Resolucin: 650x487.
Rostro 11: (http://www.promotorasymodelos.com/galeria_ver.php?id=604).
Resolucin: 300x300.
Rostro 12: (http://www.promotorasymodelos.com.ar/fotos/ramos_308_1.jpg).
Resolucin: 300x300.
Rostro 13:
(http://www.grupoexclusive.es/castingonline/plantillamodelos.asp?Id=47480&Page
=1&Id_Tipo=10&id_subtipo=&pais=0&IdiomaWeb=1).
Resolucin: 650x487.
Rostro 14: (http://eka.espacioblog.com/myfiles/eka/IMG_3398.jpg).
Resolucin: 300x300.
Rostro 15: (http://farm2.static.flickr.com/1344/830109372_61352da94a_o.jpg).
Resolucin: 650x487.
Reconocimientodeimgenesatravsdesucontenido
228

AnexoF.Cdigodelalgoritmocielo

**********************************************************************
f unct i on r espuest a = Fot oTi eneCi el o( i magen) ;



r gb = i mr ead( i magen) ;

%muest r a1 det er mi na el t amao de l a vent ana en x, mi ent r as que
muest r a2
%det er mi na el t amaan de l a vent an en y
t amano = si ze( r gb) ;
muest r a1= 0. 05*t amano( 1) ;
muest r a2= 0. 05*t amano( 2) ;

r echazo = 0;
i t er aci on = 0;
cont = 0;
whi l e i t er aci on ~= 20
%sel ecci onamos al azar l a posi ci on x e y
x=0;
y=0;


whi l e( x<=0 | | x>1/ 3*t amano( 1) )
x = f i x( r and( ) *10000) ;
end

whi l e( y<= 0 | | y>t amano( 2) - muest r a2)
y = f i x( r and( ) *10000) ;
end


subi magen = r gb( x: x+muest r a1, y: y+muest r a2, : ) ;


r espuest a = EsSegment oCi el o( subi magen) ;

i f r espuest a == 0 | | r espuest a == 1
i t er aci on = i t er aci on + 1;
i f r espuest a == 1
cont = cont + 1;
end
el se
r echazo = r echazo + 1;
end
i f r echazo == 40
i t er aci on = 20;
end
Reconocimientodeimgenesatravsdesucontenido
229
end

i f cont >= 2
r espuest a = 1;
el sei f cont < 2 && r echazo >= 4
r espuest a = 2;
el se
r espuest a = 0;
end

r espuest a = [ r espuest a, r echazo, cont ] ;

**********************************************************************
f unct i on r espuest a = EsSegment oCi el o( subi magen)


azul = EsSegment oAzul ( subi magen) ;
t ext ur a = Text ur aSegment o( subi magen) ;


i f azul == 1 && t ext ur a( 1) == 1
r espuest a = 1;
el sei f azul == 2 && t ext ur a( 1) == 1
r espuest a = 2;
el se
r espuest a = 0;
end

**********************************************************************
f unct i on r espuest a = EsSegment oAzul ( subi magen)

mydi r = pwd;
mover = [ mydi r , f i l esep, ' azul ' ] ;
cd( mover ) ;

i mageHSV= r gb2hsv( subi magen) ;
i mageH = i mageHSV( : , : , 1) ;
t amano = si ze( i mageH) ;
i mageS = i mageHSV( : , : , 2) ;

r espuest a = 0;
cont sect or = 0;
r echazo = 0;


cont 2=0;
cont = 0;
p1=0;

f or i = 1 : t amano( 1)
f or j = 1 : t amano( 2)
p1= p1+1;
Reconocimientodeimgenesatravsdesucontenido
230
val i ( p1, 1) = i mageH( i , j ) ;
val i ( p1, 2) = i mageS( i , j ) ;
end
end
save( ' val i . dat ' , ' val i ' , ' - asci i ' ) ;

%ej ecut o el pr ogr ama par a ver el gr ado de per t enenci a
! pr bf ni i _w_f dp. exe azul 2 4 0 1000 0 - - val i . dat
%car go el f i cher o cr eado par a compr obar ahor a el gr ado de per t enenci a
%de l os punt os
out = l oad( ' azul . out ' ) ;
t out = si ze( out ) ;

%mi r amos cuant os punt os per t enecen al ci el o, si el gr ado de
per t enenci a
%es mayor al 95%se aument a el cont ador 1, est o qui er e deci r que el
%punt o per t enece al col or azul .
%Si el gr ado de per t enec a est ent r e el 0. 9 y 0. 95 aument amos el
%cont ador 2, est o qui er e deci r que se pr oduce un r echazo
f or k=1 : t out ( 1) ;
i f out ( k, 2) > 0. 95
cont =cont +1;
end
i f out ( k, 2) >= 0. 90 && out ( k, 2) <= 0. 95
cont 2 = cont 2+1;
end
end

i f cont / t out ( 1) > 0. 95
cont sect or = 1;
end
i f cont 2/ t out ( 1) > 0. 1
r echazo = 1;
end



%1 cont i ene ci el o, 0 no cont i ene ci el o
i f cont sect or == 1
r espuest a = 1;
el se i f r echazo == 1 && r espuest a ~= 1
r espuest a = 2;
el se
r espuest a = 0;
end
end

%r espuest a = [ r espuest a, r echazo] ;
cd( mydi r ) ;

**********************************************************************
f unct i on t i po=Text ur aSegment o( subi magen)

i magenGr i s = r gb2gr ay( subi magen) ;
hi st ogr ama = i mhi st ( i magenGr i s, 16) ;
Reconocimientodeimgenesatravsdesucontenido
231
suma = sum( hi st ogr ama) ;
hi st ogr ama = hi st ogr ama- suma*0. 0575;

f or i =1: 16
i f hi st ogr ama( i ) > 0
num( i ) = hi st ogr ama( i ) ;
el se
num( i ) = 0;
end
end


%se r ecor r e el vect or de hi st ogr ama guar dando cuant os t r amos han
t endi do
%un val or super i or a 0 y el nmer o de t r amos cont i nuos, de est a f or ma
%post er i or ment e se podr anal i zar el t i po de t ext ur a.

i = 0;
j = 0;
t r amos = 0;
whi l e i < 16
i = i + 1;
i f hi st ogr ama( i ) > 0
j = j + 1;
aux = cont i nuas( i , hi st ogr ama) ;
cont ( j ) = aux( 1) ;
i = aux( 2) ;
t r amos = t r amos + 1;
end
end

%par a ser t ext ur a l i sa, t i ene que cumpl i r que el nmer o de t r amos sea
uno y
%el val or de cont t i ene que ser menor o i gual a cuat r o.
t i po( 1) = 0;
i f t r amos == 1 && cont ( 1) <= 4
t i po( 1) = 1;
end

%par a ser t ext ur a bi nar i a, t i ene que cumpl i r que el nmer o de t r amos
sea
%mayor o i gual a dos y que el val or del cont ador par a cada t r amos se
menor
%o i gual a t r es
t i po( 4) = 0;
i f t r amos >= 2
t i po( 2) = 1;
f or i = 1: t r amos
t i po( 4) = t i po( 4) + 1;
i f cont ( i ) > 3
t i po( 2) = 0;
t i po( 4) = 0;
br eak;
end
end
end

%par a ser t ext ur a r ugosa, t i ene que cumpl i r que el val or del cont ador
sea
Reconocimientodeimgenesatravsdesucontenido
232
%mayor a cuat r o, y el nmer o de t r amos es i ndependi ent e.
t i po( 3) = 0;
f or i =1: t r amos
i f cont ( i ) > 4
t i po( 3) = 1;
end
end


**********************************************************************
f unct i on r espuest a=cont i nuas( pos, hi s)

cont = 0;

%r ecor r emos el vect or hi s hast a que encont r emos una posi ci n con val or
0

whi l e pos <= l engt h( hi s) && hi s( pos) > 0
cont = cont +1;
pos = pos +1;
end

r espuest a= [ cont , pos] ;

**********************************************************************
Reconocimientodeimgenesatravsdesucontenido
233

AnexoG.Codigodelalgoritmoreconocimientodecaras.

**********************************************************************
f unct i on r espuest a = r ost r o( i magen) ;

f ot o = i mr ead( i magen) ;
f ot o = i mr esi ze( f ot o, 1024/ max( si ze( f ot o, 2) ) ) ;
t amano = si ze( f ot o) ;
i mshow( f ot o) ;
hol d on
z = r gb2ycbcr ( f ot o) ;
cl = 0. 54; %cor t e l abi o

o = oj os( z) ;


j =1;
o2 = o( 1: si ze( o, 1) / 2, 1: si ze( o, 2) ) ; %paso l a par t e super i or de l a
i magen, si l os oj os est uvi er an abaj o no ent r ar a l a boca
f or i =1: max( o2( : ) )
suma=sum( sum( o2==i ) ) ;
i f suma<300 | suma>5000
o2( f i nd( o2==i ) ) =0;
el se
o2( f i nd( o2==i ) ) =j ;
j =j +1;
end
end
r espuest a = 0;


i nt ent os=0;
whi l e i nt ent os ~= 2
r espuest a = l ocal i zador ( z, o2, cl ) ;
i f r espuest a == 1
i nt ent os=2;
el se
cl =0. 8
i nt ent os=i nt ent os+1;
end
end

hol d of f

**********************************************************************

f unct i on r espuest a = oj os( z)

Reconocimientodeimgenesatravsdesucontenido
234

y = z( : , : , 1) ;
cb = doubl e( z( : , : , 2) ) ;
cr = doubl e( z( : , : , 3) ) ;
cb2 = cb. *cb;
cr _2 = ( 255- cr ) . *( 255- cr ) ;

e = 1/ 3*( cb2+cr _2+cb. / cr ) ;
en = e- mi n( e( : ) ) ;
en = en/ max( en( : ) ) ;

x =sum( en( : ) ) / ( si ze( en, 1) * si ze( en, 2) ) *1. 25;
i f x<0. 54
x=0. 54;
end
EyeMapC = en>x;

yd = st r el ( ' bal l ' , 5, si ze( en, 1) *0. 12) ;
ydd= i mdi l at e( y, yd) ;
yee = i mer ode( y, yd) +1;
EML = ( ydd. / yee) ;
EML1 = EML- mi n( EML( : ) ) ;
EML1 = EML1/ max( EML1( : ) ) ;
EyeMapL = EML1>x;

EyeMap = and( EyeMapC, EyeMapL) ;



se = st r el ( ' di sk' , r ound( max( si ze( en) ) / 300) ) ;
r espuest a = bwl abel ( i mdi l at e( EyeMap, se, ' f ul l ' ) ) ;

**********************************************************************

f unct i on r espuest a = l ocal i zador ( z, o2, cl )

r espuest a = 0;

l = l abi o( z, cl ) ;
t amano = si ze( o2) ;
t amano2 = si ze( z) ;

j =1;
f or i =1: max( l ( : ) )
suma=sum( sum( l ==i ) ) ;
i f suma<150 | suma>5000
l ( f i nd( l ==i ) ) =0;
el se
l ( f i nd( l ==i ) ) =j ;
j =j +1;
end
end

s = r egi onpr ops( o2, ' Cent r oi d' ) ; %cent r o de t odos l os posi bl es oj os
Reconocimientodeimgenesatravsdesucontenido
235
i =1;
whi l e i <=max( o2( : ) )

cent r o = s( i ) . Cent r oi d; %cent r o del oj o i
x = r ound( cent r o( 1) ) ;
y = r ound( cent r o( 2) ) ;

ymi n = r ound( y- t amano( 2) *. 08) ;
ymax =r ound( y+t amano( 2) *. 08) ;
xmi n = r ound( x+t amano( 2) *. 1) ;
xmax = r ound( x+t amano( 2) *. 3) ;

%t amao de l a vent ana
i f ymi n <= 0
ymi n = 1;
end
i f ymax > t amano( 1)
ymax = t amano( 1) ;
end
i f xmi n > t amano( 2)
xmi n = t amano( 2) ;
end
i f xmax > t amano( 2)
xmax = t amano( 2) ;
end

subi magen=o2( ymi n: ymax, xmi n: xmax) ; %posi bl e oj o
k=1;
%r ecor r emos l os val or es super i or es a i , l os val or es de l a
der echa
%son mayor es si empr e
val or oj os=0;
f or j =i +1: max( o2( : ) )
i f f i nd( subi magen( : ) ==j )
val or oj os=j ;
j =max( o2( : ) ) +1;
end
end
i f val or oj os>0
cent r o2 = s( val or oj os( 1) ) . Cent r oi d; %cent r o del oj o2, coj o
l a pr i mer a posi ci on posi bl e
di st anci aoj os = cent r o2( 1) - cent r o( 1) ;
punt omedi o = x + r ound( di st anci aoj os/ 2) ;
ymi n2 = r ound( y+di st anci aoj os*. 6) ;
ymax2 = r ound( y+di st anci aoj os*1. 2) ;
xmi n2 = punt omedi o- r ound( di st anci aoj os/ 4) ;
xmax2 = punt omedi o+r ound( di st anci aoj os/ 4) ;

i f ymi n2 <= 0
ymi n2 = 1;
end
i f ymax2 > t amano2( 1)
ymax2 = t amano2( 1) ;
end
i f xmi n2 <= 0
xmi n2 = 1;
end
i f xmax2 > t amano2( 2)
xmax2 = t amano2( 2) ;
Reconocimientodeimgenesatravsdesucontenido
236
end
subi magen2=l ( ymi n2: ymax2, xmi n2: xmax2) ; %posi bl e l abi o
val or l abi o=0;

f or h=1: max( subi magen2( : ) )
i f f i nd( subi magen2( : ) ==h)
val or l abi o=h;
h=max( subi magen2( : ) ) ;
end
end
i f h>0 %hay una car a
r espuest a = 1;
[ x0, y0] = f i nd( o2 == i ) ;
[ x1, y1] = f i nd( o2 == val or oj os) ;
[ x3, y3] = f i nd( l == val or l abi o) ;
pl ot ( y0, x0, ' r . ' ) ;
pl ot ( y1, x1, ' r . ' ) ;
pl ot ( y3, x3, ' b. ' ) ;
i =max( o2( : ) ) +5;

end

end


i =i +1;
end


**********************************************************************

f unct i on r espuest a = l abi o( z, cl ) ;


cb= doubl e( z( : , : , 2) ) ;
cr = doubl e( z( : , : , 3) ) ;
cr 2 = cr . *cr ;
cr 2n = cr 2- mi n( cr 2( : ) ) ;
cr 2n = cr 2n/ max( cr 2n( : ) ) ;
uno = cr 2n>0. 53;

co = sum( sum( cr 2) ) / ( si ze( cr , 2) *si ze( cr , 1) ) ;
di = ( sum( sum( cr ) ) / sum( sum( cb) ) *1/ ( si ze( cr , 2) *si ze( cr , 1) ) ) ;
n=0. 95*co/ di ;


a = cr 2;
an = a - mi n( a( : ) ) ;
an = an/ max( an( : ) ) ;
za = an>0. 8;
b = n*cr . / cb;
bn = b- mi n( b( : ) ) ;
bn = bn/ max( bn( : ) ) ;
zb = bn>0. 55;
Reconocimientodeimgenesatravsdesucontenido
237

dos = xor ( za, zb) ;

Mount Mapn= and( uno, dos) ;

se = st r el ( ' di sk' , r ound( max( si ze( z) ) / 300) ) ;

r espuest a = bwl abel ( i mdi l at e( Mount Mapn, se, ' f ul l ' ) ) ;

**********************************************************************

You might also like