CAPITULO II
“Es el cerebro el que escribe, y no la mano o el brazo.” - Xandro -
2. MARCO TEÓRICO
En este capítulo se presentan los conceptos básicos de las áreas principales que cubre este
proyecto: Grafología, Redes Neuronales Artificiales y Procesamiento de Imágenes. Así
como una descripción de software existente a utilizar para el desarrollo en este proyecto.
La organización del documento presenta los siguientes puntos:
• Grafología y un ejemplo de un análisis grafológico que determina algunos rasgos
de la personalidad.
• Signos de la firma en el software.
• Concepto y modelo matemático de la célula nerviosa.
• La estructura y clasificación de las redes neuronales artificiales.
• La red neuronal artificial de Hopfield.
• Procesamiento de imágenes y el algoritmo de Hotelling.
• Conclusiones.
2.1 Grafología.
La grafología comprende dos estudios, el de los signos y resultantes. Los signos
se encuentran en la escritura como son las palabras y letras; se considera seis elementos
fundamentales para calificar los signos, como son: la intensidad (comprende la velocidad
y la energía), la forma, la dimensión, la continuidad, la dirección y el orden. Las
resultantes, se obtienen cuando se ha observado en las letras algunos signos grafológicos,
y se hacen deducciones que indiquen un rasgo del carácter [3].
18
Quien lee los documentos sólo se percata de que la firma sea de la persona y que
sea la original o la que utiliza en papeles oficiales. Pero, que es lo que dice la firma. Al
analizar una firma siguiendo un método especial, se puede describir la personalidad del
firmante. Esta metodología implica el analizar los trazos del objeto, longitud, direcciones
y formato entre otros. Estos componentes son analizados y relacionados con reglas
deductivas que a lo largo del tiempo han formado los expertos en grafología. En la
sección 2.2.1 se muestran las reglas utilizadas en el software desarrollado para este
proyecto.
En base a los fenómenos del movimiento para plasmar la escritura, se extraen las
características que incluyen información importante de la personalidad [13]. Por ejemplo,
la figura 2.1 muestra una firma ficticia que podría pertenecer a Marilyn Monroe.
Analizándola según las características mostradas en el anexo 2 tendríamos lo siguiente:
Figura 2.1 [A].- Firma de Marilyn Monroe sin análisis. [B].- Firma de Marilyn Monroe con análisis.
• Es una firma con el nombre de la persona, por lo que se presume de que es una
persona sencilla, orgullosa, reservada, optimista y sociable.
19
• Firma legible, por lo que se presume que la persona se muestra tal cual es, sus
intenciones son claras, tiene seguridad en su manera de pensar y actuar.
1. La firma subrayada, por lo que se presume de una persona que siente orgullo de
su nombre, presunción y vanidad.
2. Firma descendente, por lo que se presume de que esta persona puede indicar
depresión, pesimismo, falta de confianza en si mismo o una gran fatiga mental o
psíquica.
3. Firma con rubrica ascendente o final filiforme, por lo que se presume que este
tipo de personas suelen tener diplomacia.
4. Firma donde en los finales se forma una curva con un pico, por lo que se presume
que este tipo de personas tiende a ser celosas.
5. Firma donde en los finales se forma una curva, se presume de que este tipo de
personas suelen demostrar el amor, de forma maternal.
6. Firma Inclinada > 100º, por lo que se presume de que este tipo de personas tienen
buen corazón y son sincera; la razón y el sentimiento van de la mano.
Estas son pequeñas características, que dan la personalidad. Ahora, qué pasaría si
cada vez que se quiere hacer un convenio, se analizará la firma de la persona que es el
interesado entonces se podría saber cual es su personalidad, de este modo cada contratista
tendría fundamentos para tomar una decisión y saber como podría trabajar la persona
interesada.
20
2.1.1 Signos de la firma en el software
Las reglas que se muestran a continuación (ver anexo 2), son determinadas por Crepieux-
Jamin, son los signos que se califican en las firmas interpretadas por el software
desarrollado en este proyecto para este proyecto.
• Firma Grande. Se presume de una persona que tiene presencia (ver figura 2.2)
[3].
• Firma Grande con dirección ascendente y punto o acento. Se presume de una
persona que posee emotividad, cordialidad y buen carácter (ver figura 2.3) [3].
• Firma pequeña. Se presume de una persona con poca presencia, tímida, y con
complejos (ver figura 2.4) [3].
• Firma que tiene puntos en la parte inferior. Se presume de una persona que puede
sufrir de paranoia (ver figura 2.5) [13].
• Firma ascendente. Existe una lucha por mejorar, se marcan metas ambiciosas, de
logros, de perfección personal. Siempre están buscando superarse constantemente
con espíritu de éxito y de lucha, alegría y optimismo (ver figura 2.6) [3].
• Firma descendente. Indica temor, tristeza, melancolía, desconfianza en si mismo
y se deprime con facilidad. (ver figura 2.7) [3].
• Firma horizontal. Es una persona que ha logrado sus metas. Tiene muy pocos
sentimientos de ambición. Tiene paciencia y madurez. (ver figura 2.8) [1].
21
Figura 2.2.
Firma Grande.
Figura 2.3.
Firma Grande ascendente,
con punto o acento.
Figura 2.4.
Firma Pequeña.
Figura 2.5.
Firma con puntos en la parte
inferior.
Figura 2.6.
Firma
ascendente
Figura 2.7.
Firma descendente.
Figura 2.8.
Firma horizontal.
2.2 Redes Neuronales Artificiales
Las redes neuronales artificiales (RNA) son la representación de matemáticos de las redes
neuronales biológicas, adaptadas y simuladas en computadoras convencionales [7]. Las
RNA al igual que las redes neuronales biológicas requieren de aprendizaje supervisado
(basado en la enseñanzas de algún instructor) y/o no supervisado (capacidad de aprender
sin un instructor) para determinar la solución a algún problema.
2.2.1 Célula Nerviosa o Neurona
La neurona es una célula nerviosa, elemento fundamental de la arquitectura nerviosa. Un
cerebro humano contiene más de 100.000 millones de neuronas. Estas se especializan en
la conducción, recolección y transmisión de información, que se codifica en la forma de
impulsos eléctricos. Las partes básicas de una neurona típica se ilustran en la figura 2.9.
22
Figura 2.9. Esquema de una neurona simple con axón. [14]
Una neurona se divide en:
• El núcleo de la neurona: se localiza dentro de una región llamada cuerpo celular.
• Dendritas: son extensiones finas que reciben la información entrante de las
fuentes externas, casi siempre de otras neuronas.
• Axón: tiene una sola extensión que conduce los impulsos que salen.
• Botón terminal: transmite los impulsos.
• Sinápsis: vincula a las neuronas mediante unidades especiales.
• Hendidura sináptica: es una brecha que existe entre la sinápsis y una célula a la
cual se quiere transmitir información.
Las neuronas están vinculadas con sus células blanco (células receptoras de un
órgano del cuerpo) mediante uniones especiales llamadas sinápsis. Esto significa que dos
células no hacen contacto directo con otra neurona, sino que están separadas por una
brecha de 20 a 50 nm. Hendidura sináptica se le denomina a la brecha que existe entre las
uniones de las neuronas. Una célula presináptica (una neurona) conduce los impulsos
hacia una sinápsis y una célula postsináptica (una neurona, célula muscular o glandular)
23
siempre esta en el lado de la sinápsis, y dado un problema son capaces de tomar
decisiones [4]. La manera como se toman esas decisiones aún es desconocida.
2.2.2 Modelo Matemático de una Célula Nerviosa (Neurona Artificial).
El proceso fundamental de una red neuronal es una neurona. McCulloch y Pitts realizaron
la representación matemática de una neurona [15] y teniendo los componentes básicos
siguientes: las entradas de los datos, sinápsis, cuerpo celular, axón y la salida. La figura
2.10 muestra este modelo.
Figura 2.10. Representación matemática de una neurona artificial tipo McCulloch y Pitts. [15]
En la neurona tipo McCulloch y Pitts sus funciones son similares, pero no
idénticas, a una neurona biológica y se describen a continuación:
1. Recibe un vector de entradas x (x1, x2, x3,…, xn), los datos que se reciben son de
otras neuronas; haciendo una analogía con las neuronas biológicas, éstas
recibirían la información de otras neuronas biológicas.
2. Los pesos sinápticos wij, en las neuronas biológicas establecen sinápsis entre las
dendritas y el axón. En las neuronas artificiales se les asignan pesos que se
modificarán durante el entrenamiento de la red neuronal.
24
3. Una regla de propagación; con el vector de entradas y los pesos sinápticos, se
realiza alguna operación para obtener un valor postsináptico, como lo es la suma
ponderada:
∑=
=N
iiii wxth
1)( (2.1)
4. Una función de activación, una vez obtenido el valor de la suma ponderada se
filtrará a través de una función de activación y ésta nos dará la salida de la
neurona. Se escogerá una función de activación, esto dependerá el entrenamiento
de la red neuronal, la función de activación puede ser lineal o no lineal. En la
tabla 2.1 se muestran algunas funciones de activación.
2.2.3 La estructura de una red neuronal artificial
Se puede ver una red neuronal artificial desde el punto de vista matemático como un
grafo dirigido y ponderado, donde los nodos son las neuronas y los arcos son las sinápsis.
La información se propaga en un único sentido de una neurona origen a una neurona
destino, las conexiones tienen asociado un número real o un peso que indica la
importancia de la conexión, si el peso es mayor a cero se dice que es una neurona
excitadora pero si el peso es menor a cero entonces se dice que la neurona es inhíbidora
[15].
Estructura general de las redes neuronales artificiales, es:
• Capa de entrada: se reciben los datos para que se transmitan por la red.
25
Tabla 2.1. Funciones de activación. [7] [15] Nombre Función Rango Grafica
Identidad
xy =
],[ +∞−∞
Escalón )(
)(xHy
xsigny==
}1,0{}1,1{
++−
Lineal
xCy *=
]1,0[ +
Lineal a tramos ⎪
⎩
⎪⎨
⎧
+>+−≤≤+
−<−=
lxsilxlsix
lxsiy
,1 ,
,1 ]1,1[ +−
Sigmoideo
)(1
1
xtghye
y x
=+
= − ]1,1[
]1,0[
+−
+
Gaussiana
2BxAey −=
]1,0[ +
Sinusoidal
)( ϕω += xAseny
]1,1[ +−
Umbral
⎩⎨⎧
≤>
= si ,0
si ,1TxTx
y ]1,0[ +
Tangente Hiperbólica
)tanh(xy =
]1,1[ +−
26
• Capas ocultas: realiza el procesamiento de los datos.
• Capa de salida: realiza parte del procesamiento de los datos, es la capa final que
da la respuesta que arroja la red neuronal.
Esto se puede apreciar con mayor claridad en la figura 2.11.
Figura 2.11. Diagrama simple de una red neuronal.
2.2.4 Clasificación de las redes neuronales artificiales
La comunicación entre las neuronas es importante para el procesamiento de los datos.
Podemos tener dos posibles arquitecturas de redes neuronales:
1. Unidireccional, llamadas también perceptrón multi-capas, cuando no se presentan
ciclos dentro de la red. Tienen varias capas o niveles de neuronas escondidas,
donde las salidas de las neuronas en el nivel 1, se conectan a las neuronas del
nivel i+1.
Ejemplos de esta arquitectura son las redes perceptrón de una-capa, perceptrón
multi-capas, redes basadas en funciones radiales.
27
2. Unidireccional, llamadas también perceptrón multi-capas, cuando no se presentan
ciclos dentro de la red. Tienen varias capas o niveles de neuronas escondidas,
donde las salidas de las neuronas en el nivel 1, se conectan a las neuronas del
nivel i+1. Ejemplos de esta arquitectura son las redes perceptrón de una-capa,
perceptrón multi-capas, redes basadas en funciones radiales.
3. Retroalimentadas, es cuando existen ciclos entre las neuronas. Esto quiere decir
que la salida de un neurón se manda como entrada a un neurón que se encuentra
en una capa anterior [17]. Las redes que pertenecen a esta clasificación son: Redes
Competitivas, SOM de Kohonen, redes de Hopfield, modelos ART y otros.
La figura 2.12 presenta un ejemplo de redes retroalimentadas y unidireccionales.
Figura 2.12. Diagrama de una red neuronal retroalimentada y unidireccional.
2.3 Red Neuronal de Hopfield
Fue desarrollada por Hopfield, en 1982 quien conceptualizó las redes neuronales como
sistemas dinámicos con energía. Esta es un red recurrente debido a que las salidas se
calculan y se retro-alimentan como entrada, hasta que se estabiliza la red [16].
28
2.3.1 Arquitectura
La red neuronal de Hopfield, es una red de una sola capa con N neuronas, cuyos valores
son: -1/+1. La función que contiene esta red es de tipo escalón (ver tabla 2.1). Cada
neurona de la red se encuentra conectada a las demás neuronas excepto consigo misma.
Además, los pesos asociados a las conexiones entre pares de neuronas son simétricos.
Esto significa que el peso de la conexión de un neurona i con otra neurona j es de igual
valor que el de la conexión de la neurona j con la i (wij=wji) [17]. En la figura 2.13 se
puede apreciar la red neuronal de Hopfield.
Figura 2.13 Red de Hopfield [17].
2.3.2 Funcionamiento
La red de Hopfield almacena diferentes patrones. Una vez entrenado, es cuando se inserta
un nuevo patrón de entrada, la red evoluciona hasta estar estable y genera como salida la
que más se parece a los patrones que aprendió [17]. Enseguida se describe el algoritmo de
entrenamiento de la red neuronal artificial de Hopfield.
Sea:
wij: Peso asociado entre las neuronas que coinciden con wij.
29
)(kie : Valor de los componentes i-ésima del vector correspondiente a la k-ésima
información.
N: Número de neuronas que tiene la red.
M: Número de patrones que aprenderá la red.
Los pasos a seguir de la red neuronal de Hopfield, son los siguientes:
1. Se calcula la matriz de pesos que conectan a los nodos, utilizando la fórmula:
jiNijit
jiNijieet
ij
M
k
kj
kiij
=≤≤=
≠≤≤=∑=
; si 0
; si 1
)()(
(2.3)
2. Después de obtener la matriz wij, la diagonal principal se hace cero.
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
0 ...
... 0 ... 0
321
23212
13121
NNN
N
N
www
wwwwww
WL
A fin de calcular el patrón de salida de una red, dado sus valores de entrada se realiza
lo siguiente:
1. En el tiempo t=0 se aplica la información de entrada, con valores (e1, e2, e3…ex).
Como se muestra en la ecuación 2.4.
ii ets == )0( Ni ≤≤1 (2.4)
2. La red realiza iteraciones hasta converger, como se muestra en la ecuación 2.5.
⎟⎟⎠
⎞⎜⎜⎝
⎛Θ−=+ ∑
=
N
jijiji tswfts
1)()1( Ni ≤≤1 (2.5)
30
3. Se aplica la función de activación (ecuación 2.6) tal que:
⎪⎪⎪⎪
⎩
⎪⎪⎪⎪
⎨
⎧
Θ<−
Θ=
Θ>+
=+
∑
∑
∑
=
=
=
N
jijij
N
jijiji
N
jijij
t
tsw
tswts
tsw
ts
1
1
1
)(,1
)(),(
)(,1
)1(
K
K
K
(2.6)
4. Los valores del tiempo t=0 se comparan con los valores del tiempo t=1. Si son
iguales, la red ha convergido y se detiene el proceso, sino:
5. Se repiten los pasos 2, 3 y 4 hasta que las salidas de las neuronas permanezcan sin
cambios, o que el resultado en S(t-1) = S(t).
Cuando la red de Hopfield llega a converger, su salida representa al patrón más
parecido a los patrones que aprendió [16].
2.3.3 Discusión
Las ventajas que presenta la red de Hopfield son:
• No existe un tiempo en que la red entrada, ya que no tienen un proceso
adaptativo, solo se calcula la matriz de pesos para la red [16].
• Puede funcionar como memoria asociativa [17].
• Son tolerantes al ruido [17].
• La red estable cuando los patrones no se parecen entre ellos mismos [17].
31
Las desventajas que presenta la red de Hopfield son:
• El número de patrones a aprender son limitados, esto se debe a que el número de
clases no puede ser mayor de 0.15 veces el número de nodos en la red [17].
• La red es inestable cuando los patrones se parecen entre si [17].
2.4. Procesamiento de imágenes
Anteriormente, las imágenes solo podían visualizarse en un dibujo hecho por papel y
lápiz pero el problema es que se perdían detalles de la imagen real; después la tecnología
fotográfica evolucionó y la realidad se podía captar en cuestión de segundos, obteniendo
todos los detalles pero el procesamiento de una imagen era muy tedioso. Llegó la
tecnología de la computadora y ahora se puede captar la realidad en cuestión de segundos
de este modo se puede hacer un procesamiento de imagen con mayor facilidad y calidad.
2.4.1 Imagen Digital
Una imagen digital está definida dentro de un plano con coordenadas (x, y) y la unidad
básica de una imagen digital es un píxel [18]. Dentro del procesamiento de imágenes
existe un paradigma, el cual considera tres tipos de procesamiento:
1. Nivel-Bajo: El proceso implica operaciones primitivas para reducir el ruido de
una imagen, o modificar su contraste. Este nivel es caracterizado por el hecho de
que las entradas y salidas son imágenes.
32
2. Nivel-Medio: El proceso implica tareas de segmentación (partiendo una imagen
en regiones u objetos), describiendo a los objetos para ser procesados y
clasificados (reconocimiento) de forma individual. Este nivel es caracterizado por
el hecho de que las entradas generalmente son imágenes pero las salidas son
atributos extraídos de estas imágenes (ejemplo: vértices, contornos y la identidad
de objetos).
3. Nivel-Alto: El procesamiento implica hacer sentido a un conjunto de objetos
reconocidos como análisis de una imagen y al final de la continuidad, realizando
unas funciones cognitivas que se asocian a la visión.
Las imágenes digitales son representadas por la unión de los píxeles, los píxeles
forman sus contornos, y los contornos describen las características de las imágenes como
son: longitud, altura, dirección [18].
2.4.2 Algoritmo de Hotelling
Este algoritmo se utiliza para la descripción de los contornos y regiones de una imagen,
entre otras cosas para rotar una imagen binaria..
1. Dar una matriz de R x N de la imagen original, donde R es igual a R renglones y
N es igual a N columnas.
2. Obtener las coordenadas de los píxeles deseados como se muestra en la figura 3.1,
esto será igual a ),( yxPixelesK = y esto dará como resultado un vector KX
donde se almacenarán todos los píxeles seleccionados tal que ].][[ yx X K
33
3. Calcular el vector principal m que es definido por la ecuación 3.1 y dará como
resultado.
⎟⎠⎞
⎜⎝⎛=
Ky
Kxmx , (3.1)
4. Calcular las matrices correspondientes a la ecuación 3.2 [18].
( )( ){ }Txxx mxmxEC −−= (3.2)
5. Calcular la sumatoria como se muestra en la ecuación 3.3 [18].
( )(∑=
−−=K
ik
Txxx mxmx
KC 1 ) (3.3)
6. Calcular los eigen-valores y eigen-vectoresλ de C resolviendo 0=− Iλ . Por lo
tanto la matriz de Cx queda de la siguiente forma [18]:
C
(3.3)
La diagonal principal de hace 0.
7. Calcular la matriz de transformación A, la cual se obtiene de los eigen-vectores.
(3.4) ⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
=
M
K
1,21,1
0,20,1
GenGenGenGen
A
8. Rotar cada coordenada en x multiplicando por la matriz A, como se puede ver en
la ecuación 3.5.
( )mxAx in −=' (3.5)
34
9. Almacenar los resultados del paso 8 y esto formara el vector KX ' que serán los
nuevos puntos de la imagen.
Se puede apreciar la aplicación del algoritmo Hotelling a un objeto, en la figura 2.14.
(a) solo esta el objeto. Se establecieron nuevas coordenadas donde se toma punto de
inicial el centroide de la imagen y de éste parten los eigen-vectores de la matriz Cx como
puede ver en la figura 2.14 (b). Se ha rotado el objeto completo como se aprecia en la
figura 2.14 (c).
se
Figura 2.14. (a). Objeto. (b). Eigen-vectores. (c). Rotado.
agen [18].
e una imagen [18].
s:
2.4.3 Discusión
El algoritmo de Hotelling presenta las siguientes ventajas:
• Los eigen-vectores pueden ser utilizados en cualquier tipo de imagen [18].
• Con los eigen-vectores se usa para normalizar el tamaño de la im
• Es útil para la descripción de los contornos y regiones d
• Rotar la representación de una imagen en forma binaria [18].
El algoritmo de Hotelling presenta las siguientes desventaja
35
• La descripción de la figura en 2-D deben ser independientes las posibles
• Cuando las firmas tienen un círculo que las envuelve los eigen-vectores dan como
punto más lejano, por lo que los resultados no son correctos.
redes neuronales resuelven
roblemas donde las “reglas” se desconocen, en este caso son muy útiles para el
conocimiento de patrones con procesamiento de imágenes.
variaciones de tamaño, translación y rotación [18].
• Modificar una imagen, cambia los resultados de los eigen-vectores [18].
resultado el
2.5 Conclusión
Los rasgos que se califican en la grafología son muy amplios por lo que se determinaron
algunos rasgos para realizar un análisis grafológico. Las
p
re
36