centro nacional desarrollo · 2014-02-13 · s.e.p. s.e.i.t. d.g.i.t. centro nacional de...

92
S.E.P. S.E.I.T. D.G.I.T. CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO TECNOCOGICO cendet DESARROLLO DE UNA HERRAMIENTA PARA EL MODELADO AUTOMATIC0 DE OBJETOS ALFAFLUIBLES T E S I S PARA OBTENER EL GRADO DE MAESTRO EN CIENCIAS EN CIENCIAS COMPUTACIONALES P R E S E N T A : EDUARDO QRBE TRUJiLLO DIRECTORES DE TESIS DR. RAUL PINTO ELIAS CUERNAVACA, MORELOS JULIO DE 2003

Upload: others

Post on 27-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

  • S.E.P. S.E.I.T. D.G.I.T.

    CENTRO NACIONAL DE INVESTIGACION Y DESARROLLO TECNOCOGICO

    cendet

    DESARROLLO DE UNA HERRAMIENTA PARA EL MODELADO AUTOMATIC0 DE OBJETOS ALFAFLUIBLES

    T E S I S P A R A O B T E N E R E L G R A D O D E M A E S T R O EN C I E N C I A S EN C I E N C I A S C O M P U T A C I O N A L E S

    P R E S E ’ N T A :

    EDUARDO QRBE TRUJiLLO

    DIRECTORES DE TESIS DR. RAUL PINTO ELIAS

    CUERNAVACA, MORELOS JULIO DE 2003

  • IMITmuhn I-f

    FORMULARIO C3 REVISIÓN DE TESIS

    I iw€srGU%rrW&hu

    Cuemavaca, Mor., a 3 de Julio de 2003.

    Dr. Gerard0 Reyes Salgado Presidente de la Academia de Ciencias Computacionales Presente

    Nos es grato comunicarle, que‘conforme a los lineamientos para la obtención del grado de Maestro en Ciencias de este Centro, y después de haber sometido a revisión académica la tesis denominada: “Desarrollo de una Herramienta para el modelado de Objetos Alfaflexiblec”, realizada por el C. Eduardo orbe Trujillo, y habiendo realizado las correcciones que le fueron indicadas, acordamos no’tener objeción para que se le conceda la autorización de impresión de la tesis.

    Sin otro particular, quedamos de usted.

    Atentamente

    La comisión de revisión de tesis

    Lic. Olivia Maquinay Diaz, Jefe del Depto. de Servicios Escolares. C. Eduardo Ofbe Trujiiio, alumno del programa de maestria.

    INTERIOR INTERNADO PALMIRA UN. COL. PALMIRA , A.P. 5-1 64. CP. 62490. CUERNAVACA. MOR. - MEXICO lELS.(777)312 2314.318 7741,FAX(777) 312 2434 EMAIL pazos~rdcenidet.com.mx

  • w ~ y c m ~ D ( ~ w c I u o N ~ uI*zmuo61TEwaQxII FORMULARIO C4

    AUTORIZACIÓN DE IMPRESIÓN DE TESIS

    Cuemavaca, Mor., a 16 de Julio de 2003.

    C. Eduardo Orbe Trujillo Candidato al grado de Maestro en Ciencias en Ciencias Computacionales Presente

    Después de haber atendido las indicaciones sugeridas por la Comisión Revisora de la Academia de Ciencias Computacionales en relación a su trabajo de tesis: “Desarrollo de una Herramienta para el Modelado Automático de Objetos Alfaflexibles”, me es grato comunicarle, que conforme a los lineamientos establecidos para la obtención del grado de Maestro en Ciencias en este Centro, se le concede la autorización para que proceda con la impresión de su tesis.

    Y DESARROLLO TECNDLOGICO

    CIINCIAS E U M P U I A C I D ~

    C.C.P. Lic. Olivia Maquinay Díaz, Jefe Depto. de Servicios Escolares. INTERIOR INTERNADO PALMlRA S I N . COL. PALMlRA , A.P. 5-164. CP. 62490, CUERNAVACA, MOR. - M W C O TEE. (777) 312 23 14.318 77 41. FAX (777) 312 24 34 EMAlL [email protected]

  • AI arquitecto del universo por permitirme estar compartiendo mi vida en este mundo.

    A ti madre (Benita Trujillo Miranda) por todos los cuidados y consejos que me das.

    A ti esposa mía (Irma Gódínez Montaño) por todo el amor, comprensión, apoyo y la dicha que hemos compartido juntos, por el regalo más grande que me distes, un hijo (E. Uriel).

    A mis hermanos (René e Isabel) por la comprensión que tengo por parte de ellos

    ¿Quién eres tu, oh hombre, que presumes de tu propia sabiduna?¿Por qué te jactas de lo que has adquirido? El primer paso que conduce hacia la sabiduría consiste en conocer que has nacido mortalmente ignorante, y si no quieres ser tenido por necio según el juicio de los demás desecha la insensatez de ser sabio en tu propia mortalidad. Así como un sencillo atavío adorna mejor a una mujer hermosa, así una conducta decente es el mayor adorno de la sabiduría interna. Documentos del tihet.

    Eduardo Orbe Trujillo

  • Al director de mi tesis Dr. Raúl Pinto Elías por toda la enseñanza que ha dejado en mi.

    A mi Codirector de tesis M.C. Andrea'Magadán Salazar por las materias que nos impartió que son la base de mi tesis, por la ayuda y amistad que me brindó junto con la paciencia que me tuvo en la revisión de mi tesis y por la comprensión que nos tuvo en clase cuando bromeábamos.

    Al Dr. José. L. Liñan Garcia, Dr. Gerard0 Reyes Salgado M.C. Matilde Velasco Soni

    Por los conocimientos aportados para que esta tesis se pudiera concluir.

    A toda la institución (director, administrativos, recursos humanos) que intervinieron en mi estancia en esta institución.

    A todos mis amigos que me brindaron su amistad

    AI Consejo del Sistema Nacional de Educación Tecnológica (COSNET) por brindarme la ayuda económica para realizar mis estudios en esta noble Institución.

  • RESUMEN

    El análisis de imágenes es un proceso que consiste en descubrir, describir, identificar y

    comprender los patrones que son relevantes en las imágenes. Uno de los principales objetivos del análisis de imágenes por computadora consiste en dotar a una computadora, en algún sentido, de

    cierta función como la vista humana, de tal manera que sea una herramienta de apoyo a

    especialistas y expertos en sus respectivas áreas.

    Sin embargo, existe una gran cantidad de factores que limitan el proceso de análisis de tina imagen, tales como la rotación de los objetos, la traslación, escala e iluminación de los mismos;

    además, de los cambios que pueden sufrir algunos objetos que tienen la capacidad de

    transformación, por lo cual el objeto puede ser distinto en su textura, tamaño, forma, etc. Y debido a los cambios que puede presentar un objeto deformable o alfaflexible (objeto que puede cambiar

    en cierto grado de rotación y traslación sin que se modifique totalmente). Esto dificulta aun más el proceso de reconocimiento del objeto, ya que es más dificil establecer una descripción estándar del objeto. Estos cambios también pueden ser debidos al medio ambiente que nos rodea, como las

    vanaciones en la iluminación natural y con ello en cada cuadro parezca que se procesa una imagcn

    distinta a la anterior.

    El interés de la presente investigación es contribuir con una metodología para modelar cn

    forma automática los objetos alfaflexibles en una secuencia de imágenes. En esta metodologia se

    presentan en dos partes técnicas, una llamada snakes que actúa como una envolvente en el objcto por cada cuadro del vídeo. Esta técnica registra los cambios de los rasgos del objeto que realiza cn

    el movimiento, esto permite registrar la forma para la descripción de los objetos. También se

    consideraron los cuatro colores que más se registra en el histograma por cada color respecto a RGB

    (red,green,blue), se registra el área del objeto en cada cuadro, el centro de gravedad dcl snoke respecto a x y y. La siguiente técnica permite el conocer la importancia de las variables anteriorcs,

    llamada tesfores típicos que obtiene el conjunto mínimo de rasgos del objeto para podcr

    identificarlo. Por último se calcula la longiiud de cada tesfor para determinar el orden de

    importancia de los rasgos del objeto en orden decreciente. El resultado es el modelo del objeto. I

  • Lista de figuras

    Lista de tablas

    Lista de ecuaciones

    CAPITULO 1

    INTRODUCCI~N

    1.1 Antecedentes

    I .2 Descripción del problema

    1.3 Propuesta de solución

    1.4 Metodología de solución

    1.5 Objetivo

    1.6 Alcances

    1.7 Producto esperado

    1.8 Disciplinas involucradas

    1.9 Aplicaciones

    1.10 Organización de la tesis

    TABLA DE CONTENIDO V

    vii ...

    V l l l

    2

    5

    5

    6

    7

    7

    7

    8 8

    9

    CAPITULO 2 ESTADO DEL ARTE

    2.1 Estimación de movimiento de contornos en imágenes secuenciales I I

    2.2 Plantillas deformables geométricamente, basadas en segmentación y seguimiento en imágenes cardiacas 12

    2.3 Parámetros libres para registrar en 2 pasos, imágenes elásticas con puntos descritos y desplazamientos I3

  • 2.4 Snake pedals, modelos geométricos compactos y versatiles con control basado en física

    2.5 Snakes, formas, y flujo del vector gradiente 2.6 Un modelo de contorno activo para dibujar la corteza

    2.7 Contornos Activos y Modelos defomables

    2.8 Modelo de Clasificación Supervisada Basado en Conjuntos de Representantes 2.9 Enfoque lógico combinatorio al reconocimiento de patrones

    2.10 Filtro pasa alto

    CAPITULO 3

    SNAKES

    3.1 Introducción

    3.2 Preprocesamiento de snakes

    3.2.1 Gradiente

    3.3 Fundamentos de snakes

    3.3.1 Fundamentos matemáticos

    3.3.2 Pseudocódigo

    3.4 Ejemplos del funcionamiento

    3.5 Comentarios

    CAPITULO 4

    MODELADO

    4.1 Selección de rasgos

    4.2 Enfoque lógico combinatorio

    4.3 Teoría de testores 4.3.1 Algoritmo BT

    4.3.2 Importancia de los testores tipicos

    4.4 Rasgos a modelar

    4.4.1 Color por histograma 4.4.2 Centro de gravedad del snake relacionado con "x" y ')"

    4.4.3 Área

    4.4.4 Distancias entre todos los puntos de " x" y ')" del snake

    14

    15

    i6

    17

    17

    18

    18

    19

    20

    20

    22

    23

    29

    20

    33

    35

    36

    38

    39

    46

    47

    48

    49

    49

    49 . . . 111

  • 4.5 Ejemplo del modelado de un objeto alfafiexible

    4.6 Comentarios

    CAPITULO 5

    EXPERIMENTACI~N

    5.1 Introducción

    5.2 Casos de estudios realizados

    5.3 Análisis de los resultados

    CAPITULO 6

    CONCLUSIONES

    6.1 Introducción

    6.2 Metas alcanzadas

    6.3 Producto esperado

    6.4 Aportaciones

    6.5 Trabajos a futuro

    REFERENCIAS

    ANEXO A

    49

    53

    54

    55

    65

    66

    67

    67

    68

    68

    69

    12

    i Y

  • LISTA DE FIGURAS Figura Descripción Página

    Figura 1.1

    Figura 1.2

    Figura 3.1

    Figura 3.2

    Figura 3.3

    Figura 3.4

    Figura 3.5

    Figura 3.6

    Figura 3.8

    Figura 3.9

    Figura 3.10

    Figura 3.11

    Figura 3.12

    Figura 4.1

    Figura 4.2

    Figura 5.1

    Figura 5.2

    Figura 5.3 Figura 5.4

    Figura A.l

    Figura A.2

    Figura A.3

    Figura A.4

    Cambios que presenta la mano en los movimientos que realiza.

    Esquema de solución de este trabajo.

    Imagen de 24 bits, la cual es procesada a niveles de grises.

    Resultado del proceso con filtro gradiente.

    El snake adopta cualquier forma, como si fuera agua, basado en la

    4

    6

    22

    22

    23

    minimización de la energía:

    Evolución de la energía externa usando snakes. 23

    Se muestra la vecindad de los nodos. 26

    Se muestran los diferentes resultados al cambiar los valores de aJ3,y. 30

    Inicialización del snake. 31

    Valores iniciales a) Alfa=lO Beta=l b) Alfa=20, Beta = I 31

    Resultado del snake con los siguientes valores A) a= l , p= l

    Secuencias de imágenes utilizando la técnica del snake.

    imagen con su respectivo histograma.

    El snake se adecua a la forma del movimiento de los labios

    Se seleccionan los puntos alrededor de los párpados.

    Imágenes donde a)l Inicialización del snake b) resultado del snake. 32

    32

    B) a=I,p=2 C) a=1$=3.

    33

    48

    SO

    55

    60

    62 64

    73

    74

    75

    Lectura de los labios con ruido.

    Modelado de labios sin mucho ruido. Modelado de la cabeza en un ambiente natural.

    :I

    Imágenes del modelado del parpado del caso I .

    Modelado del objeto alfaflexible para el caso 2. Continuación del caso 2, Modelado del movimiento de los labios con un poco

    de mido.

    Modelado de los labios sin mido caso 3. 76

  • Figura Descripción Página

    Figura A S Modelado del movimiento de la cabeza utilizando un ambiente natural, caso 4.

    Figura A.6 Continuacion del caso 4, Modelado del movimiento de la cabeza utilizando u n

    ambiente natural.

    77

    78

    Y I

  • LISTA DE TABLAS Tablas Descripción Página

    Tabla 3.1 Esta máscara obtiene las líneas verticales 21

    Tabla 3.2 El cálculo de esta máscara permite obtener líneas horizontales. , 22 Tabla 4.1

    Tabla 4.2

    Tabla 4.3

    Tabla 4.4

    Tabla 4.5

    Tabla 4.6

    Tabla 4.7

    Tabla 5.1

    Tabla 5.2

    Representación de los rasgos y clases de los objetos.

    Representa una clase con tres objetos.

    La siguiente clase con dos objetos.

    Resultado de la matriz de diferencia.

    Se muestra una fila básica, esta fila básicaes S14.

    Resultado de la matriz básica.

    Testores típicos obtenidos del segundo caso.

    Distancias de los puntos que conforman el snakes alrededor del snake.

    Cuatro colores que mas aparecen del formato R.G.B que modela la herramienta.

    3X

    40

    41

    41

    4 2

    44

    51

    56

    57

    Tabla 5.3 Matriz generada mediante las distancias de los puntos mas los rasgos de la tabla 57

    5.1. Tabla 5.4 Resultado de la matriz de Diferencia. 5x

    Tabla 5.5 Resultado de la matriz Básica. 5X

    Tabla 5.6 Testores típicos. 5X

    Tabla 5.7 Testores típicos obtenidos del segundo caso. 61

    Tabla 5.8 Testores típicos obtenidos del segundo caso. 63 !\

  • LISTA DE ECUACIONES Figura Descripción Página

    Ecuación 3.1

    Ecuación 3.2

    Ecuación 3.3

    Ecuación 3.4

    Ecuación 3.5

    Ecuación 3.6

    Ecuación 3.7

    Ecuación 3.8

    Ecuación 3.9

    Gradiente en dirección de x .

    Gradiente en dirección dey.

    Cálculo del gradiente con su máscara en dirección de x

    Cálculo del gradiente con su mascara en dirección dey

    Ecuación del snake por [Kass, 871.

    Cálculo de la energía interna.

    Ecuación del snake por [SHAH, 921.

    Ecuación de la energía funcional del snake.

    Cálculo de la ecuación de la distancia media de los puntos del snake menos

    los puntos vecinos.

    Ecuación 3.10 Cálculo de distancia media de los puntos del snake.

    Ecuación 3.11 Normalización de la ecuación (3.9). ij

    Ecuación 3.12 Cálculo de energía curva.

    Ecuación 3.13 Normalización de la ecuación (3.12).

    Ecuación 3.14 Obtención de la energía minima y máxima de la imagen del gradiente.

    Ecuación 3.15 Normalización de las magnitudes del gradiente

    Ecuación 3.16 Ecuación de la curvatura del objeto.

    Ecuación 4.1 Obtención del peso informacional.

    Ecuación 4.2 Obtención de la longitud del testor típico.

    I!

    21

    21

    21

    21

    23

    24

    25

    26

    21

    21

    27

    2 1

    28

    28

    28

    28

    46

    41

    \ i l l

  • CAP~TULO 1

    Desde siempre el hombre ha tratado de inventar mecanismos, adaptándolos

    inconscientemente a la estructura de su propia constitución, no existe aparato ni ingeniosa resoluc¡ón.de problemas mecánicos que no este solucionado en nosotros, especialmente en

    aquellas actividades repetitivas Ó dificiles de realizar y que ponen en peligro la vida del ser

    humano, debido a que estas requieren una gran precisión manual como intelectual. El ser

    humano ha soñado con inventar máquinas que realicen artificialmente tareas afines a él,

    esto no supone que no pueda realizar estas actividades, de lo anterior surge una área de la

    inteligencia artificial llamada visión por computadora, que realiza las funciones de la vista

    humana, esta área observa escenas para procesarlas en una computadora.

    De acuerdo con [Maravall, 941 se considera que las tres cuartas partcs de

    información que maneja el ser humano es adquirida por imágenes visuales. La Visión por

    Computadora es un área que investiga los diferentes procesos naturales del ser humano

    relacionados con la vista humana, utilizando un dispositivo que digitalice tal como una

    cámara de fotografia o vídeoly una computadora para ver e interpretar dichas imágenes. La

    Visión por Computadora es una área de la inteligencia artificial que tiene como una de sus

    metas solucionar los problemas relacionados con la "percepción e interpretación" de

    escenas, objetivo excepcionalmente ambicioso y complejo, que aún se encuentra en una

    etapa muy primitiva [Maravall, 941.

    http://resoluc��n.de

  • Es posible hacer una analogía entre un sistema artificial de procesamiento de imágenes y el sistema visual humano. Por ejemplo, en el humano el proceso de

    “percepción” es realizado por el ojo y el de “interpretación” por el cerebro humano. En el

    sistema artificial, la adquisición de imágenes es realizada por medio de una cámara digital y

    la interpretación es procesada por una computadora [Maraval 941. En la actualidad el

    proceso de digitalizar las imágenes es factibie, pero el proceso de interpretación es muy

    pobre debido a los pocos avances de la neurociencia relacionada con la función del cerebro

    humano. Una de las principales actividades para tener una “interpretación” es contar con

    una adecuada interpretación, de los rasgos que integran a los objetos de las imágenes

    digitales.

    A

    1.1 ANTECEDENTES

    Desde que el hombre logra capturar las imágenes en una cámara fotográfica surge

    un gran interés por mejorarl’y conservar las imágenes con mejor calidad. Debido a esto

    surge el tratamiento de imágenes. Los problemas iniciales se presentan en 1920 cuando un

    equipo especializado codificaba las imágenes para trasmitirlas por cable y estas eran

    reconstruidas en el extremo de la recepción. A partir de los sesentas se pone de manifiesto el potencial de los conceptos de tratamiento de imágenes debido al avance tecnológico a

    través de las computadoras y las naves espaciales que permitieron enviar imágenes de la

    luna, algunas de estas imágenes requerían de un proceso digital [González, 19961.

    En la actualidad hay una gran necesidad de procesar las imágenes para resolver

    problemas en diversidad de áreas, como por ejemplo en imágenes enviadas por los satélites artificiales, en medicina, en biología, en aplicaciones industriales, etc.

    La evolución continúa en el campo de las técnicas de tratamiento de imágenes,

    surgiendo un segundo campo de aplicación de éstas que consiste en resolver problemas relacionados con la percepción automatizada, la cual se centra en procedimientos que

    extraen información de la imagen mediante un proceso realizado por una computadora para

    poder interpretarla. Este proceso tiene poco en común con respecto a la fomia en cómo lo

    realiza el ser humano. Sus aplicaciones, entre otras, son el reconocimiento de caracteres, la

    visión por computadora para el control automático de calidad, reconocimiento de huellas

    2

  • dactilares y del iris, predicciones del tiempo a través de las imágenes enviadas por los

    satélites [González, 961.

    Como ya se mencionó, básicamente el objetivo de la visión por computadora es

    automatizar las funciones de inspección visual realizadas por el hombre [Faúndez, 200 I].

    Para llevarse a cabo tal proceso, una actividad muy importante es realizar una correcta descripción de los objetos de trabajo, es decir, obtener ciertos rasgos que permitan modelar

    los objetos. De acuerdo a las iaracterísticas que presentan los objetos, es posible agruparlos

    en tres clases

    a) Objetos rigidos:

    Son aquellos que presentan las mismas características durante su movimiento o

    desplazamiento, siempre muestran las mismas relaciones geométricas. Por ejemplo

    un lápiz, una mesa, un libro, etc.

    b) Objetos articulados:

    Presentan algunos cambios, pero que sin embargo, estos cambios son totalmente

    conocidos o predecibles. Ejemplo de este tipo de objetos lo son las tijeras, las pinzas eléctricas, el brazo de un robot, etc.

    c) Objetos aifiafiexibles:

    Este tipo de objetos presentan una gran capacidad de transformación generando una

    gran cantidad de instancias del objeto que lo describen de manera distinta en cada

    Intervalo de tiempo, debido a lo antenor se vuelve mas complicado obtener una

    descripción única. Ejemplo de este tipo de objetos lo son la boca y mano del ser

    humano, una lombriz, etc. I,

    Además del tipo de objeto a procesar existen una gran cantidad de factores que

    dificultan el proceso de análisis de una imagen, tales como la rotación de los objetos, la traslación de los mismos y la escala e iluminación. Ya que no se sabe todos los posibles

    cambios o deformaciones que puede presentar dicho objeto, sobre todo cuando los cambios

    suelen ser variados e impredecibles (pueden ser provocados por el medio ambiente como

    respuesta a la traslación, rotación, deformaciones, movimientos rápidos etc.) por naturaleza.

    3

  • Debido a lo anterior, se combinan todos los factores mencionados y el proceso de

    descripción de los objetos' alfaf2exibies suele convertirse en un problema de mayor

    complejidad.

    Como ya se mencionó, la mano de una persona puede considerarse como un objeto

    alfqflexibíe ya que ai sufnr cambios en su forma, por los movimientos que realiza, genera un conjunto de patrones diferentes, dificultando en gran manera establecer el conjunto de

    rasgos o caractensticas que permita identificarla en el proceso de reconocimiento de una

    imagen o en una secuencia de imágenes, ver figura I . 1.

    Figura 1.1 Cambios que sufre la mano en los movimientos que realiza

    Para tener un sistema de modelado eficiente es necesario contar con una buena

    descripción de los objetos que se están trabajando. Generalmente esta caracterización se

    realiza de manera empírica, el experto decide el conjunto de características a utilizar o que

    van a integrar la descripción del objeto. Esta manera de obtener la descripción, puede

    resultar complicada al tener variables o características no significativas o que .proporcionen

    redundancia de información ::en la representación, y con ello el tiempo necesario para

    obtener los datos de la descripción puede requerir mucho tiempo de cómputo.

    4

  • 1.2 DESCRIPCI~N DEL PROBLEMA

    Actualmente, el registro y caracterización de los cambios que puede realizar o sufrir

    un objeto deformable se lleva a cabo de manera manual, dando como resultado un proceso bastante difícil de realizar y en muchos casos con muchos errores. Esto es debido a que el ojo humano se cansa demasiado rápido, por lo que la vista disminuye la capacidad de

    observar a detalle, y algunas veces existe distorsión o perdida de información del objeto

    observado. Si se agrega que existe gran cantidad de escenas para extraer los rasgos o caracteristicas del objeto a analizar, resulta una labor demasiado pesada para el ser humano.

    El interés de la presente. investigación es contribuir con una metodología para

    generar u obtener de manera automática una descripción o caracterización del objeto deseado, al registrar los cambios que presenta durante el movimiento del mismo en cada

    imagen de la secuencia, como su tamaño, color, área, centro de gravedad. El resultado de

    esta información se le aplicará un algoritmo de selección de variables, que elimina la

    redundancia de información de las variables del objeto dando como resultado el conjunto

    de variables que mejor describan al objeto que se esta modelando.

    1.3 PROPUESTA DE S O L U C I ~ N

    Como ya se mencionó, esta tesis pretende diseñar e implementar una herramienta

    que permita generar de manera automática el mínimo de información de las variables que

    conforman la descripción de un objeto alfqflexible.

    Pasos a seguir: ¡.-Se establece en la primera imagen digital de la secuencia de imágenes, el obJeto

    u objetos que se desean modelar. La imagen es tratada con algún filtro con el

    propósito de eliminar el posible ruido

    2.- En la segunda fase, es segmentar la imagen para localizar a detalle el objeto que

    se desea modelar, por lo cual se utiliza la técnica llamada snakes [kass, 881

    5

  • 3. Se localizan, registran y cuantifican, aquellos rasgos considerados en el modelo

    que describirá al objeto por medio de un conjunto inicial de características posibles,

    de tal forma que se tendrán los mismos descriptores del objeto que se analiza pero

    con valores diferentes. Toda esta información será almacenada en una base de

    conocimientos que integrará el modelo inicial del objeto y por medio de un

    algoritmo de selección de variables como testores típicos [Shulcloper, 991, se

    obtienen las mejores variables que representan al objeto.

    1.4 METODOLOG~A DE SOLUCI~N Estos pasos se muestran de manera gráfica en la figura 1.2.

    a

    a

    a . a .

    Carga el video en formato AVI.

    Selecciona el objeto o los objetos a modelar.

    Procesa la imagen de cada cuadro(resu1tado del snake)

    Obtiene los rasgos del objeto.

    Almacena los rasgos en archivos de texto.

    Aplica un algoritmo de selección de variables. . Obtiene el orden de importancia de los rasgos. a Obtención del modelo del objeto.

    I Carga el video con formato :vi

    + Selecciona los objetos a modelar

    Procesamiento de cada cuadro del

    Obtiene los rasgos del objeto a

    Almacena 10s rasgos del objeto en archivo dc texto ,

    Obtiene el minim, de rasgos, que mejor describan al objeto

    Orden de importancia de los rasgos en orden ascendente

    MODELO DEL OBJETO

    FiQura 1.2 Esquema de solución.

  • 1.5 OBJETIVO

    Desarrollar una herramienta que permita:

    Realizar la localización automática de los parámetros

    Registrar las variaciones del objeto por cada cuadro en una secuencia de imágenes Procesar y analizar la información de cada cuadro y cada parámetro mediante testores típicos. Generar modelos primarios de objetos.

    1.6 ALCANCES

    Se manejarán secuencias de imágenes’ de 24 bits con archivos AVI, con un

    tamaño de 250x250 en formato RGB.

    Se usará un conjunto técnicas que contemplen las características de extracción

    de los rasgos.

    La información que se genera de la extracción de características y de la

    deformación del objeto se almacenará en una base conocimientos.

    La información en bruto obtenida de los. cambios en los rasgos del objeto alfqflexible se procesará por medio de un algoritmo de selección de variables

    llamado testores típicos para obtener el conjunto mínimo de rasgos Ó

    características que permitan modelar el objeto para el reconocimiento de

    patrones.

    La herramienta será capaz de mostrar al usuario la importancia de los rasgos.

    en orden descendente.

    La herramienta permitirá modelar hasta 50 objetos como máximo.

    0

    0

    o

    1.7 PRODUCTO ESPERADO o Una herramienta, que de manera automática obtenga el modelo de un objeto

    alJ¿¿jlexi ble.

    1

  • A

    Información primaria del objeto obtenida por los cambios del objeto alfayexxible

    por medio de un algoritmo como testores típicos para obtener los parámetros o

    características que permitan modelar el objeto.

    1.8 DISCIPLINAS INVOLUCRADAS

    Las disciplinas involucradas ,son las siguientes:

    1) Procesamiento de imágenes, los cuales se utilizarán los siguientes métodos. I . 1 Procesamiento de las imágenes a niveles de gns.

    1.2 Cálculo del área del objeto.

    1.3 Centro de gravedad del snake con respecto a 'k" y "y".

    1.4 Histograma.

    1.5 Segmentación utilizando snakes.

    1.6 Base de conocimientos.

    2) Lógica combinatoria para el reconocimiento de patrones, utilizando los siguientes tópicos.

    2.1 Testores tipicos. 2.2 Orden de importancia de los testores típicos.

    1.9 APLICACIONES

    El contar con una herramienta que realice y proporcione de manera automática una

    buena descripción o modelado de objetos es una necesidad actual como se puede observar

    en las siguientes aplicaciones:

    a) Crecimiento de cepas de bacterias o microbios: La herramienta es capaz he modelar e l crecimiento, de cepas de microbios al utilizar la

    técnica de los snakes ya que permite adecuarse al contorno de la cepa que se desea modelar o investigar.

    8

  • b) Seguridad:

    El análisis de las deformaciones que presenta el cuerpo humano al caminar, se

    puede analizar para estudiar los movimientos de las personas sospechosas o que portan

    armas. La herramienta registra la forma de movimientos sospechosos, con esto se genera

    información que permite registrar y modelar los rasgos que más cambian en el movimiento

    de las personas con arma. Esta información puede ser utilizado en los aeropuertos, centros públicos, supermercados, bancos.

    c) Diseño de prótesis que contemple las deformaciones del cuerpo humano: La herramienta permite obtener información de las partes en donde el cuerpo

    necesita más libertad de movimiento, así como las partes en las cual carece de movimientos

    flexibles. Estudios de esta info&ación pewite crear prótesis que contemple las

    deformaciones del cuerpo humano, evitando que la prótesis se vuelva una molestia para el

    cuerpo humano.

    d) Conjunto mínimo de rasgos para el reconocimiento de objetos:

    La herramienta al realizar de forma automática el modelado de los objetos, registra

    los cambios o deformaciones que presenta el objeto bajo estudio en la secuencia de video.

    Esta información es redundante o repetitiva,~al aplicar un algoritmo de selección de

    variables a toda esta información, se elimina la redundancia de información y el uso de

    variables poco discriminantes. Este algoritmo permite encontrar el conjunto mínimo de

    rasgos que es posible utilizar en la descripción o representación del objeto que se estudia,

    siendo esta representación la base para el reconocimiento del objeto que se modeló en la

    secuencia de cuadros del vídeo.

    1.10 ORGANIZACI~N DE LA TESIS

    El presente trabajo está organizado de la siguiente manera. En el capítulo 2 se

    presenta el estado del arte. ,En este capitulo se describen técnicas relacionadas coil la

    segmentación y localización de objetos deformables, la obtención de los rasgos, la

    estimación de movimiento, el uso de plantillas deformables, y el registro de parámetros en

    dos pasos.

    9

  • En el capítulo 3 presenta la técnica de procesamiento para disminuir el ruido en la

    imagen; además, este capítulo explica el funcionamiento de los snakes y su fundamento matemático.

    En el capítulo 4 se explica la teoría de selección de variables mejor conocido como

    testores típicos. Esta técnica permite obtener los rasgos más importantes del objeto que se

    está modelando, estos rasgos permiten en un trabajo posterior, el reconocimiento del objeto

    que se ha modelado.

    En el capítulo 5 muestra las pruebas realizadas en la fase de experimentación de la

    metodología que corresponde a este trabajo.

    En el capítulo 6 se presentan las conclusiones generales relacionadas con esta investigación, así como las aportaciones del trabajo en el área de visión por computadora.

    Finalizando con propuestas de trabajos futuros que complementarían la herramienta de

    modelado.

    IO

  • ~APÍTULO 1 2 O DEL ARTE

    En este capítulo se realiza un breve análisis de algunos artículos,

    investigaciones describen problemas con objetos deformables, se describen las técnicas

    se utilizan para obtener las caractensticas de los objetos que se deforman en un intervalo

    tiempo, buscando obtener el modelo de los mismos.

    ESTA1

    cuyas

    que de

    contorno tiene un punto correspondiente en el contorno para la siguiente toma.

    En esta técnica se incluyen métodos numéricos donde la ecuación es discreta, se

    I El cálculo de la curvatura en el contorno se realiza a través del punto vecino más

    próximo, se usan dos puntos adyacentes y el punto mismo. Cuando se calcula e

    óptico de los puntos del contorno con la primera derivada se obtiene una imagen

    curvatura del contorno que permite localizar los correspondientes puntos en el contomo

    la siguiente imagen.

    , . . . . ..

    'I.!

    de

    1 I

  • En esta técnica se incluyen métodos numéricos donde la ecuación es discreta, se

    I

    la siguiente imagen.

  • 2.2 Plantillas deformables geométricamente, basadas

    en imágenes cardiacas [Rueckert, 961

    Propone el uso de una minimización de energía,

    objetos deformables bajo la influencia de la dirección de

    forma de la plantilla es medida por una función de las dos

    en segmentación y seguimiento

    la cual puede utilizarse en los

    la imagen. La degradación de la

    formas en 2D.

    12

    cristalino el cual minimiza su energía. Usando esta aleatoriamente nuevas configuraciones de la probabilidad

    Relajación deierminisiica. Para seguir un objeto

    analogía, el algoritmo genera

    de distribución o de deformación.

    en una secuencia de imágenes

  • comparan objetos con formas conocidas de 2,tipos de plantillas deformables que pueden ser

    caracterizados, las plantillas deformables rígidas como escalación, rotación y traslación.

    humano, se basa en contornos activos, se realizaron pruebas en segmentación

    I Plantillas deformables no rígidas como el utilizando la distribución de Fourier. En

    y tracking de superficies relacionadas al

    Este trabajo permite para compararla con

    se ha desplazado o qué dirección está se deforman mediante la minimización

    la siguiente imagen, y así obtener cuántos

    tomando. También propone segmentar

    2.3 Parámetros libres para imágenes elásticas con puntos

    con puntos descritos. Este

    de energía que se usa en los snakes.

    descritos y desplazamientos [Peckar, 961 Se plantea registrar en 2

    método está basado en la teoría de elasticidad1

    En el primer paso se to de correspondencia de algunos límites en ambas imágenes, usando un contorno mejor conocido como snakes, que se puede

    aplicar a numerosos problemas en omputadora, detección de arcos, seguimiento

    de objetos. Se resuelve la el snake, en forma iterativa, realizando

    aproximaciones, y usando parámetros

    constantes.

    Segundo paso, se deforma en forma elástica la plantilla de la imagen usando los

    valores de los snarels descritos anteriormente de desplazamiento en los limites de la

    estructura obtenidos en el primer paso en a ición a las condiciones de la imagen en su

    frontera. I. En contraste con los métodos tradi ionales, este planteamiento no depende de

    parámetros de la deformación del modelo c

    exacta concordancia de las estructuras de la

    constantes elásticas lo cual garantiza la

    utilizando snakes.

    13

  • Este trabajo permite obtener los primeros puntos en la imagen, que corresponden a

    los rasgos del objeto que se van modelar en forma automática, y permite la deformación del

    objeto utilizando la técnica de snakes.

    2.4 Snake pedals, modelos geométricos compactos y versátiles con control basado en

    física [Vemuri, 2000]

    En este trabajo se propone un modelo geométrico de formas, el cual permite la

    representación de formas globales con detalles locales usando relativamente pocos

    parámetros comparado con los modelos híbndos. Esto consiste en representar formas de

    curvas pedales. La curva pedal es una curva regular (se utilizan dos variables en dos

    dimensiones) con respecto a un punto fijo (pedal). Una curva pedal es capaz de sufrir

    deformaciones locales y globales, esta puede ser determinada por parámetros en forma de vector, por lo cual es un modelo geométrico que se obtiene por medio de la técnica llamada

    snakes, utilizada en deformaciones locales geométricas. Una vez que se obtiene el snake, se

    forma la curva pedal. Los parámetros globales de estimación se calculan por medio del

    descenso del gradiente.

    Los parámetros locales de estimación son resueltos por medio de sistemas lineales en forma de matriz. Se aplica en imágenes de 256x 256 y el tiempo de cálculo es de 258 a

    191 segundos en una SGI (Silicon Graphics International). Este modelo sólo funciona con

    pocos parámetros.

    Las curvas se presentan muy a menudo en los objetos que sufren deformaciones. por ejemplo los objetos alfqfIexibles y puede ser obtenida a través de los snakes utilizando la

    forma x,y en la representación de los puntos de los snuxels que es parecido a los puntos

    que representan los rasgos en el presente trabajo

    14

  • 2.5 Snakes, formas y flujo del vector gradiente [Xu, 981 Este trabajo presenta una nueva fuerza externa para contornos activos resolviendo

    los problemas de fuerza extendida, el cual se llama flujo del vector gradiente. Este es

    calculando los vectores de gradiente en niveles de gris o un mapa binario derivado de la

    imagen. Difiere fundamentalmente de los tradicionales snakes en que no pueden ser

    calculados como un gradiente negativo. Este snake es formulado como una fuerza balanceada.

    Para que se pueda solucionar por este método, el objeto debe de ser cerrado es decir no debe de estar incompleto en sus bordes, los snakes anteriores tienen problemas en las concavidades de la imagen, por lo que éste método soluciona los problemas anteriores.

    Primero se define un borde de la imagen por lo cual debe de estar en niveles de gris, una

    vez hecho lo anterior se obtiene el gradiente que minimiza la energía, donde el gradiente es

    el operador Laplaciano. También puede resolverse por métodos numéricos.

    Los snakes o contornos activos, son curvas definidas dentro del dominio de la

    imagen el cual puede moverse bajo la influencia de fuerzas extemas de la curva misma, y

    fuerzas externas calculadas de los datos de la imagen. Hay dos tipos de contomos activos

    los paramétricos y los contornos activos geométricos, este documento se enfoca a los

    contornos paramétricos. Típicamente las curvas son dibujadas hacia los arcos por fuerzas

    potenciales las cuales son definidas como un gradiente negativo, esto hace una fuerza de

    presión que comprime las fueizas externas.

    Se ha introducido un nuevo modelo de fuerzas externas para superficies

    deformables el cual es llamado el flujo del vector gradiente. Este es calculado como vector

    gradiente utilizando niveles de gris en la imagen a ser calculada para encontrar

    concavidades. Soluciona el problema de la concavidad, a través de la captura de la fuerza externa del snake.

  • Los snakes son utilizados en aplicaciones de procesamiento de imágenes

    particularmente por adecuarse a la forma del objeto. Los snakes o contornos activos, son usados ampliamente en visión por computadora para localizar fronteras, problemas

    asociados con inicialización y pobre convergencia a las concavidades de fronteras.

    Este trabajo sirve como referencia para resolver las concavidades que presenta un

    objeto que se deforma, y que está en niveles de gris debido a que cada cuadro de la imagen es tratada de la misma forma, es decir en niveles de gris.

    2.6 Un modelo de contorno activo para dibujar la corteza [Davatzikos, 971

    Un nuevo modelo para encontrar y dibujar la corteza de un cerebro. Utiliza el

    método de los snakes (contornos activos), mediante la especificación de fuerzas externas actuando como un contorno activo. Este determina la localización de la superficie del

    cerebro que es el primer paso para la visualización del cerebro. Esta técnica esta basada en

    contornos activos y sirve para modelar la curva inicial como un objeto físico el cual es

    llamado contorno activo, y los datos como fuerza externa, un procedimiento iterativo para

    que el contorno activo se mueva hacia los datos que conforman al objeto.

    Un contorno activo es caracterizado por tres partes:

    1.- Un modelo de fuerzas internas. El cual describe un contorno activo como un objeto.

    2.-Un modelo de fuerzas externas. El cual describe, como el contorno activo es

    atraído a los puntos previamente señalados.

    3.- Un procedimiento iterativo. El cual intenta encontrar la configuración que mejor concuerde con la fuerza interna y externa.

    Los contornos activos son utilizados por medio de la formulación usando el cálculo

    de variación para encontrar las variaciones de la ecuación de Euler. Ecuaciones que

    representan su equilibrio de fuerzas balanceadas que permiten una mejor definición de la

    forma del objeto.

  • Esta técnica permite obtener la forma del objeto a través de la energía externa que

    son los puntos del objeto a modelar.

    2.7 Contornos Activos y Modelos deformables [Young, 951

    El problema de obtener contornos de formas complejas es dificil, por io que existe un método de solución, que consiste en definir la estructura de un contorno activo o snake,

    mediante la elasticidad de la energía. La energía se detiene en el borde del gradiente de la

    imagen, mediante la combinación de las energías internas y externas, la combinación de

    energías permite obtener snakes iterativos y snakes flexibles, este método obtiene contomos

    de imágenes en movimiento.

    El trabajo se desarrolla sobre formas complejas que están en movimiento, utilizando

    snakes para obtener las formas de los contornos de los objetos que se están moviendo.

    Sirve de referencia para los contornos de la secuencia del objeto a modelar en cada cuadro.

    2.8 Modelo de Clasificación Supervisada Basado en Conjuntos de Representantes

    [Ariel, 981.

    Para clasificar un objeto normalmente existe información que utiliza un algoritmo

    de clasificación supervisada que permite trabajar con clases difusas y disjuntas, con la

    información mezclada sobre los objetos, con criterios de analogías no booleanos y

    descripciones incompletas de los objetos. Este modelo produce sus decisiones teniendo en

    cuenta factores a favor y en contra, evaluando las descripciones parciales de los objetos en

    estudio. Se dan procedimientos para la determinación de todos los parámetros.

    Conclusión: Lo anterior permite utilizarlo en los rasgos del objeto que se está

    modelando, ya que el algoritmo de snakes podría perder información, debido a los

    problemas de una inadecuada iluminación.

    17

  • 2.9 Enfoque .lógico combinatorio al reconocimiento de patrones [Shulcloper, 991

    Se propone un algoritmo de selección de variables conocido como BT (Bottom

    Top), el cual se basa en los conceptos de testor y testor típico. Un testor es un conjunto de

    rasgos que permite diferenciar los objetos entre dos clases, porque ningún objeto de la

    primer clase (mirados a través de los valores de sus rasgos) se confunde con los objetos pertenecientes a la segunda clase. Y un testor típico es la combinación mínima de rasgos

    que caracterizan una clase de objetos, diferenciándola de las demás clases. Este algoritmo

    permitirá discriminar entre la información que forma el modelo inicial de objetos

    aiJ¿¿Jexibles, en la base de conocimientos.

    Conclusión: Esta técnica se utiliza para obtener los mejores rasgos del objeto que

    selecciona el usuario al inicio de la secuencia de la imagen, donde el objeto se deforma, la

    información es almacenada en un archivo de texto. Esta información se refiere a los rasgos

    que se obtienen.

    2.10 Filtro pasa alto [González, 961

    Filtro pasa alto se emplea, para que la imagen aparezca con los bordes mas

    sobresalientes, para reducir el ruido, es útil que la imagen suavice las bajas frecuencias en

    algunas etapas de preprocesado, como la eliminación de los pequeños detalles de una

    imagen antes de la extracción de un objeto y el relleno de pequeños espacios entre líneas o curvas.

    Conclusión: Esta técnica obtiene un preprocesamiento para obtener esos bordes que

    más sobresalen en cada cuadro y permite al snake utilizar la minimización de la energia

    para que se adhiera a la forma final que el objeto presenta en cada deformación.

  • CAPÍTULO 3

    SNAKES

    3.1 INTRODUCCI~N

    Se considera como modelado, al procesa que trata de identificar'el conjunto de rasgos o Características que mejor describen al objeto u objetos con los que se van a

    trabajar.

    Los pasos necesarios para realizar u obtener el modelado de un objeto, son los

    siguientes: .. ~

    1) Segmentar la imagen, que consiste en particionar los objetos que componen la imagen. Lo anterior produce información en términos de regiones de píxeles,

    como el contorno de objeto o la región en donde se encuentra el objeto.

    2) El siguiente paso es describir o representar el objeto a través de un conjunto inicial de características que pueden no ser las adecuadas o contenei- información redundante. Estas variables se almacenan en un archivo de tipo

    texto para una mayor compatibilidad con herramientas, como ID3 y C4.5.

    3) A esta información se le aplica un algoritmo de selección de variables para obtener el modelo del objeto.

    4) Mostrar que variables son las más importantes en orden decreciente.

    La segmentación es uno de los procesos fundamentales para el éxito del modelado

    del objeto. Sin embargo también es una de las etapas con mayor complejidad en todo

    sistema de visión artificial especialmente si se realiza una segmentación con mucho detalle.

  • i I Además de lo anterior, la segmentación en sí misma tiene problemas que influyen

    en sus resultados como la iluminación no controlada que produce bordes falsos o

    incompletos lo que dificulta la extracción de los rasgos en forma exacta. I I

    Si este proceso de segrnentacion se realiza de forma manual, se pueden producir

    demasiados errores en la extracción de rasgos, ya que la vista humana se cansa fácilmente, además de que dicha operación debe realizar 30 cuadros por segundo. Por ello en esta

    investigación se realizó un análisis dellas diferentes técnicas de segmentación encontradas

    buscando una técnica que no tuviera problemas con las variaciones de tamaño, traslación y

    rotación de los objetos, para poder registrar los parámetros establecidos por el experto. La técnica que se propone para segmentar y modelar Ips objetos son los snakes.

    ' !

    I

    I

    3.2 PREPOCESAMIENTO DE SNAKES Una de las técnicas para realizar el proceso de generación automática del modelo de

    objetos alfqflexibles, es la utilización de contornos activos. Los contornos activos o snakes

    fueron inicialmente propuestos por [Kass, 871, estos contornos son una herramienta que

    considera la minimización de energía de un contorno, basándose principalmente en fuerzas

    aplicadas. Sin embargo, la primera fase'de los snakes requiere preprocesar la imagen con la técnica del gradiente para particionar los bordes más sobresalientes.

    3.2.1 Cradiente

    La detección de bordes con el filtro gradienie, de acuerdo con [Maravall, 941 es

    ' esencialmente una operación de detección de cambios de intensidades locales significativos

    de acuerdo con un umbral establecido. , Este operador tiene como objetivo determinar bordes con independencia de su

    dirección en la imagen. Es obvio que esta propiedad es deseable entre los detectores de bordes ya que no sería bueno que un detector sólo fuera sensible a bordes en determinadas

    direcciones, Este tipo de detectores es aplicado a cada punto de la imagen para calcular el

    borde independientemente de su orientación.

    I . I .

    20 i

  • Para una imagen digital, con un rango de O I x 5 N-1, O I y5 M-1, (donde N es el

    tamaño mkimo de renglones y M el número máximo de columnas de la imagen) definida

    por los valores de luminosidad de sus píxeles de la imagen I(x,y), la ecuación del gradiente

    no es posible aplicarla al pie de la letra, ya que la imagen digital que se procesa no tiene

    variables independientes, ya que estas son discretas, debido a esto se propone una

    aproximación discreta ver ecuación (3.1) y ecuación (3.2).

    Ejemplo:

    Siendo por lo tanto:

    El rango O 5 x I N-I; O I y I M-1 de la imagen, se puede procesar en una computadora

    utilizando una matriz de 3x3, los valores de las máscaras para h ly h2 se muestran en la

    tabla 3.1 y 3.2.

    Tabla 3.1. La mascara h l genera resultados, que son direcciones verticales de la imagen mi ”““I CENIDET IENl’RO DE INFORMACION

    21

  • Tabla 3.2. La máscara muestra como resultado las direcciones hormntales de la imagen.

    O O O

    Un ejemplo de aplicar dichas máscaras (hl y h2) de acuerdo con las ecuaciones

    (3.3) y (3.4), en la imagen en niveles de gns, que se muestra en la figura 3.1, da como resultado la imagen de la figura 3.2.

    Figura 3.1 Imagen de 24 bits. Figura 3.2. imagen procesada con filtro gradiente.

    3.3 FUNDAMENTOS DE SNAKES

    De acuerdo con [Kass, 871 los snakes son modelos de contornos activos, los cuales

    presentan curvas dinámicas llamadas spline (las curvas splines se refieren a polinomios).

    Las curvas spline tienen aplicación en visión por computadora, para propósitos generales de curvas cuando el objeto no es simple o sufre deformaciones.

    El snake es guiado por dos energías, la interna y la externa, la cual puede ser obtenida por las características de la imagen. La energía interna está basada en la

    continuidad y su curvatura. Un snake se basa en un modelo matemático que trata de preservar el mínimo de energía ver figura 3.3.

    22

  • ,,--Inicia del snake n

    Punto mínima dc

    Figura 3.3 Por analogía el snake adopta cualquier forma, como si fuera agua, que se adapta a la

    forma del recipiente

    La energía externa se obtiene gracias a los atributos del objeto de interés como

    líneas y contornos, ver figura 3.4, el resultado de cada iteración que se obtienen a través del

    cálculo del snake se obtienen valores pequeños donde el snake trata de fluir en esa

    localización. Para que la energía adopte la forma del objeto que se desea modelar, para

    mejores resultados los bordes deben ser más notorios, esto se logra con la aplicación del gradiente.

    '

    Figura 3.4 Evolución de la energia exferna usando snokes.

    3.3.1 Fundamentos Matemáticos

    La integral de la energía del snake puede ser escrita como

    ( 3 . 5 )

    23

  • donde:

    v(s) = (x(s), y(s)), E¡,, representa la energía interna del spline relacionado con

    las curvas.

    Eimage da origen a las fuerzas de la imagen

    E,,,, da origen a las restricciones de las fuerzas y se tiene que:

    donde:

    Vs es la primera derivada

    V,, es la segunda derivada

    Williams Shah [Shah, 921 menciona que el algoritmo original presentado por kass [Kass, 871 tiene los siguientes problemas:

    I . Las fuerzas de la imagen y restricciones necesitan ser distinguidas en orden para

    garantizar la convergencia, de esta manera no es posible la distancia minima

    entre los puntos.

    2. El método es numéricamente inestable.

    3. La primera derivada en términos de la ecuación (3.6) fue aproximada por una

    diferencia finita, (v,? = (xi - xi-1) + (yi - ~ i - ~ ) , Esto es equivalente a minimizar la distancia entre los puntos y tiene el efecto de causar que el contorno se contraiga.

    4. Ninguna directriz fue dada por el método original para determinar los valores dc

    a y Este método utiliza el mismo valor para a y pen cada punto, y no existe discusión o ejemplos para explicar como cambiar esos valores que afectan al

    contorno, sucede que los valores son críticos y deben de ser escogidos cuidadosamente para obtener resultados satisfactorios.

    5 . Si p e s constante, el snake no envolverá las esquinas en forma adecuada.

    ' 1 1

    . .

    24

  • Amini, Tehran¡ y Weymouth [Arnini 901 proponen un algoritmo dinámico de

    programación que resuelve el problema de las ecuaciones (3.5) y (3.6) ya que el algoritmo

    de kass [Kass, 871 requiere un consumo muy grande de memoria el tiempo es de O(i7rn’)

    (donde n es el número de puntos y m es el número de localizaciones posibles en las cuales un punto puede moverse en una simple iteración), lo cual es muy lento.

    AI notar que los snakes de kass presentan varios problemas, se decidió utilizar en este

    trabajo la nueva mejora hecha por [Shah, 921. Este algoritmo es muy versátil para un

    modelo de contornos activos el cual se ejecuta en un tiempo O(nm)

    Este trabajo presenta las mejoras del algontmq de kass que son resueltas por [Shah 921.

    El uso de rejillas para posiciones de puntos y la estabilidad en la programación dinámica,

    son conservados en este método. En adición, los valores escogidos para a y ,D, son fácilmente determinados para balancear las fuerzas relativas en los términos de la

    reformulación de primer orden. El término de continuidad causa que los puntos sean espaciados en el contorno, removiendo la característica anterior de que el contorno se

    encoja y haciendo que este término de continuidad de segundo orden sea más exacto. La

    irnplementación es más eficiente en tiempo y requerimiento de espacio en memoria.

    El algoritmo propuesto por [Shah 921 minimiza lo siguiente:

    I

    E = /(a(s)Econt +,B(s)Ecuwc + y(s)E,m.pe)ds (3.7) O

    El primero y segundo término corresponden a E¡., en la ecuación (3.5). El último término mide alguna cantidad de la imagen como los contornos fuertes o intensidad y es el

    mismo que ocupa la posición.media de la ecuación (3.5). Observe que no hay términos para

    restricciones externas. Los parametros (a, ,B y y) ‘son usados para balancear la influencia relativa de los tres términos. Este algoritmo es iterativo y en cada iteración, un punto vecino

    ’ [arepresenta a rigidez del objeto a modelar, /3 representa la curva o cuadraturd cuando es cero, del objcto a modelar, y representa la flexibilidad del objeto a modelar]

    2s . .

  • de cada punto es examinado; y el punto vecino con la energía mínima es escogido como la nueva localización de ese punto, todo esto es dividido por el módulo de n(donde n es el

    numero máximo de vectores del snake).

    Los valores para cada término de la ecuación (3.7) se obtienen de la siguiente manera:

    1) Para determinar la aproximación más adecuada para el primer término en la

    ecuación, se considera la diferencia .del promedio de las distancias entre los 1 puntos y la distancia de los dos puntos bajo consideración. ver figura 3.5.

    2) Para el segundo término en la ecuación (el cual es una curva), 'nótese que la

    formulación del término de continuidad causa que los puntos sean espaciados, li imación de la cuma multi licada or una iíjí r(ue lusri' di HM iii?iii~'rl! fii Ililii I I P P

    constante, esta formula es computacionalmente eficiente.

    3) El tercer término de la ecuación es la fuerza de la imagen, la cual es la magnitud li del gradiente. Para dar una magnitud (mag) en un punto y el máximo (máx.) y

    mínimo (min.) lmk.nrLl en cada yecino. se uriliia la operación (iiiinl- '! mag)/(max -min) para normalizar el contorno. Esta magnitud del gradiente es

    negativo, así que los puntos con gradientes grandes tendrán valores pequeños.

    4) Lo anterior se realiza mediante iteraciones. Al final de cada iteración, un proceso determina la curvatura en cada punto del contorno y si el valor es

    mínimo se establece = O para la siguiente iteración. !I I

    I

    Figura 3.5 Vecindad del nodo anterior v i.1, nodo actual vi, nodo siguiente Vi+,

    Energía Funcional. La energía funcional tiene tres términos, uno de continuidad. otro I término de curvatura y el último de imagen, ver ecuación (3.8).

    (3.8)

    Donde afi) y Pfi) y &)son constantes. Se utilizan valores que inicializan G I , ,&O. cuando una esquina este presente en el punto actual se inicializa a I o mayor de I en otro

    I 26

  • caso cuando no existen las esquinas a O. Ahora se describe como son calculados en la

    computadora, cada uno de esos términos de la energía funcional.

    a) Calculando Eeont, Dado los siguientes n puntos vi =( XI, y1 ) donde i=l ..n. Note que la

    aritmética es entera en el tamaño n de snmels del objeto (n es el número de puntos del contorno) debido a que el contorno es cerrado. Se considera un vecino (N, )de tamaño m, en el punto actual devi como se muestra abajo, ver también ecuación (3.7). Entonces se tiene:

    'dj E K . , E . = d V.-^. I cont,j - 1 J 1-1

    Donde d e s la distancia media entre sus puntos es decir:

    11

    (3.9)

    'I

    La desviación de la energía calculada en la ecuación (3.9), es normalizada en la ecuación

    (3.1 I) , su vecindad & es como sigue:

    E cont,j max E = (3.1 I )

    b) Calculando Ecurv. El cálculo de la curva de la energía se realiza utilizando la siguiente fórmula:

    (3.12)

    2 7

  • Esta energía de la c b a es normalizada en su vecindad K, como sigue:

    E (3.13) Cum, 1 E=-

    j E K. (E .) 1 CUrV,J

    c) Calculando Eimage. El cálculo de la energía.de la imagen se obtiene de la intensidad de

    las magnitudes dei gradiente de la imagen G,, de todos los puntos en Su vecindad

    usando la siguieite ecuación:

    s i G m m - b m i n

  • 3.3.2 Pseudocódigo del Snake

    A continuación se muestra el pseudocódigo para obtener la envolvente del objeto,

    basándose en las ecuaciones anteriores:

    Establecer el contorno inicial llobtenidó por la técnica del gradiente.

    Nodos a calcular =n //Número de nodos que tiene el snake.

    While (Pts - Mover > Umbral3)

    { for cada punto, vi, En el contorno

    I

    for cada punto, vj , en la vecindad Ni del punto vi

    calcular la energía E, =a,Econtj + PjECUWYJ } / I punto v,.

    Mover el punto vi al punto vj en Ni con el mínimo de energía.

    If vi es movido a una nueva localización, incrementar pts-Mover.

    End. // punto, Vi Encontrar esquinas donde la curvatura es establecida por 0 4 por cada punto v, 11 / / en el contomo.

    calcular curvatura ci.

    if ((ci > cj., y Ci > ci+l ) //curvatura es más grande que sus vecinos

    and (ci > Umbral I ) //curvatura es mayor que el umbral I

    and (magnitud del gradiente en vi > Umbral2) /Borde fuerte

    {

    then pi =O en el punto vi }

    }//end While

    3.4 EJEMPLOS DE FUNCIONAMIENTO

    Para que los resultados de los snakes sean satisfactorios, hay que saber manipular

    las a@, @) y y(c), como ya se mencionó alfa representa la rigidez, beta representa las curvas que existen en el objeto; que en caso de que existan esquinas, beta se inicializa a

    1

    29

  • cero. gamma representa la flexibilidad que deberá tener para ajustarse en forma adecuada al

    objeto, lo anterior permitirá registrar los cambios que presenta el objeto.

    A continuación se muestran algunos ejemplos para que se observe el uso de estos 11 parámetros. El primer valor representa (a), el segundo (P), el tercero (y), ver figura 3.6.

    a)

    o 0.1 0.0 5 a > P > Y

    f)

    00.1 0.1 o

    a>P>Y

    0.4.0.6.1.0 0.6.0.4.1.0 0.8.0.2.1.0 ' .O,om 1.0 1.0, 0.0,l.O

    a>P>Y a,P,u a>P>Y a , P , r a,P,u Figura. 3.6 Se muestra los resultados al cambiar los valores de a.8.u.

    Como puede observarse en la figura 3.6, cuando se disminuye Beta y Gamma se

    mantiene igual, el snake no se adhiere a la forma real de la curva, cuando se aumenta Alfa,

    se aumenta la rigidez y si el objeto tiene picos no se adhiere a la forma real del objeto.

    Cuando se aumenta Gamma y Alfa y se disminuye Beta el snake se adhiere a la forma real

    del objeto, debido a que al aumentar la elasticidad se envuelve adecuadamente a la forma

    del objeto .

    I

    30

  • La técnica de los Snakes permite que el experto seleccione los puntos que 61

    considere más importantes, se pueden seleccionar máximo 50 snakes. Un snake esta

    formado por puntos conocidos como snaxels, el conjunto de snaxels corresponden a un snake; en la figura anterior 3.6 los snaxels son unidos por lineas. El resultado del snake permite registrar los cambios que presenta el objeto en cada cuadro, utilizando otras

    técnicas como histograma, centro de gravedad del snake (con respecto a x e y , de cada

    snaxel.) y obtención del área. Los resultados se obtienen por cada cuadro de video, por

    ejemplo si existen 40 cuadros, se tendrán 40 resultados por cada snaxel que se esté modelando.

    Otros experimentos que utilizan la técnica de los Snakes con figuras más complejas

    se pueden observar en las figuras.(3.8, 3.9, y 3.10). El objetivo de este experimento es el

    I

    If

    segmentar y dar seguimiento a la boca de la persona . Se inicializa el snake seleccionando

    los puntos o snaxels en la posición cercana a los labios ver figura 3.8.

    '!

    l

    ike

    Con los siguientes valores Alpha = 10 y Alpha =20, con Beta =1 en los dos casos:

    31 Figura 3.9 a) Alfa=iO Beta=¡. b) Alfa=20. Beta=l

  • Se puede observar que cuando el valor de aya aumenta los snaxels tienden a juntarse más, es decir el snake se contrae más observe la figura anterior 3.9.

    Figura 3.10 a) Inicialización del snake. b) resultado del snake.

    En conclusión, la técnica de los snakes permite adoptar los cambios que presenta el objeto durante la secuencia de imágenes. Esta técnica es idónea ya que no se necesita

    presentará el objeto. Los snakes se amoldan fácilmente a los cambios del contorno que

    I

    ningún conocimiento apriori del objeto y tampoco se requiere saber cuántos cambios !

    presente el objeto, por lo que permite registrar en forma fiel las transformaciones del

    mismo. !

    Otro experimento con Alpha=l y Beta=l, Alpha=I y Beta=2, Alpha=l y Beta=3. '!

    ver figura 3.1 I

    Figura 3.11 A)u=I ,p=I . B)a=l.D=2. C) a=i.p=3

    32

  • En la figura 3.1 1 se observa que cuando se aumenta beta el resultado del snake no define en

    forma exacta las esquinas, dando los valores adecuados se pueden aplicar los snukes en una

    secuencia de video ver figura 3.12.

    Figura 3.12 Secuencias de imágenes utilizando la técnica del snake.

    3.5. COMENTARIOS

    La etapa de segmentación es un proceso muy importante, ya que de ésta depende que se obtengan en forma exacta los rasgos que permitirán modelar los objetos en forma

    adecuada, por lo que la metodología propuesta contempla el uso de una técnica que

    considerará los cambios que va realizando el objeto debido a la rotación, traslación y

    movimiento. La técnica de los snakes evita la necesidad de saber upriori las formas que va

    33

  • 1,

    adquiriendo el objeto durante el movimiento que éste realiza. Los snokes permiten extraer los rasgos a partir de la selección que realiza el experto en la primera imagen. Lo anterior es la base para desarrollar el modelado en forma automática, objetivo final de ésta investigación.

    34

    1

  • CAPÍTULO 4

    MODELADO I

    4.1 SELECCIÓN DE RASGOS

    La selección de rasgos representativos de un objeto no es una tarea fácil, al ~

    contrario, es un proceso bastante complejo que puede realizarse en una computadora. El ser humano, por ejemplo, normalmente agrupa en categorías generales a los conceptos de

    objetos que conforman su ,medio ambiente. Los rasgos que utiliza para representar a dichos !

    objetos son seleccionados de forma tan rápida y confiable que normalmente el ser humano

    no se da cuenta del proceso que se realiza en el cerebro. Normalmente en la computadora no se puede determinar upriori cuales son los rasgos mínimos que representan en forma

    adecuada al objeto que se va a modelar. Cuando se desea modelar un objeto, el experto

    I/

    selecciona ciertos puntos que considera importantes de acuerdo con la experiencia ! adquirida, ya que él puede tener conocimiento upriori de los cambios en el objeto que se va

    modelar. Sin embargo, algunas veces puede no tener ninguna idea de los cambios que puede presentar el objeto en el movimiento que éste presenta, esto, debido a la falta de

    experiencia en el campo o a la falta de conocimiento del comportamiento del objeto. Con la

    técnica de los snakes. Los cambios que presenta el objeto quedan registrados en un archivo de conocimientos.

    !

    Como se mencionó en el capítulo anterior, la técnica de snukes pennite obtcner

    información de los cambios que presenta el objeto, obtenidos por medio de la secuencia de movimientos almacenados en un vídeo (secuencia de cuadros). El resultado obtenido es un

    35

  • I

    conjunto de información repetitiva debido a que el objeto no cambia de un cuadro a otro de

    forma demasiado rápida, ya que se esperan cambios suaves (de un pixel a tres pixeles) por

    lo que la información puede ser demasiado redundante. Lo que se necesita es una técnica

    que permita obtener aquellos rasgos que mejor representen al objeto con el mínimo de información pero, que sin embargo esté completa o sea la más discriminante para un

    reconocimiento posterior del objeto.

    'I I

    El humano cuando adquiere ciertos conceptos de un objeto, normalmente los agmpa

    en categonas generales, estas categorías son un conjunto de rasgos seleccionados que t cumplen con propiedades que él mismo desea o ha seleccionado, lo cual le permite realizar

    una selección fiable. Los rasgos que se han elegido, generalmente dependen, de la experiencia del experto.

    I Para que el modelado pueda ser efectivo se debe de poseer métodos eficaces para

    manipular las representaciones, por lo que es necesario contar con un método que permita

    discriminar eficientemente los rasgos obtenidos en el modelado del objeto.

    El determinar cuáles son las características iniciales del objeto, permite que se genere un modelo correcto del objeto que se deforma durante un intervalo de tiempo. Una

    técnica que permite obtener el conjunto mínimo de variables del objeto aí/¿¿flexible es la

    teona de testores [Shulcloper, 991. !

    Según [González, 961 un patrón o modelo es una descripción estructural o cuantitativa. Un modelo es un conjunto de rasgos Ó características que mejor describen al objeto.

    4.2 ENFOQUE LOGICO COMBINATORIO De acuerdo con [Shulcloper, 991, el Reconocimiento de Patrones (W), es la ciencia

    de carácter interdisciplinano que se ocupa de los procesos de ingenieria, computacionales y

    matemáticos relacionados con objetos físicos y abstractos, la cual tiene el propósito de

    extraer por medio de dispositivos computacionales, la información que le permita 11 36

  • 1;

    establecer propiedades de los conjuntos de dichos objetos. Entonces, un problema de RP es aquel que esta relacionado con la clasificación de objetos y fenómenos, con la

    determinación de los factores que inciden con los mismos. El RP es la ciencia que parte de

    los conocimientos clásicos de la clasificación y contempla el problema de la "selección de rasgos". En este problema se solucionan 2 aspectos fundamentales:

    I

    a) Reducir el número de rasgos en términos de los cuales se describen los objetos de trabajo.

    b) Encontrar los rasgos que mayor influencia tienen en el reconocimiento de dichos

    objetos, para esto se hace uso de la teoría de testores que se explica en este trabajo.

    Como se puede observar, de acuerdo con , [Shulcloper 991 en este trabajo de tesis

    algunos conceptos básicos en la selección de rasgos son los siguientes:

    Patrón: objeto ya clasificado.

    Clase: Es un conjunto.de objctos, los cuales son semejantes, también se llama clase a 1; aquellos conjuntos que formen un cubrimiento; es decir, se puede tener intersección no

    vacía.

    Rasgo: Características o factores que se consideran en el estudio de objetos, esto

    permite realizar la descripción de los objetos.

    Modelo: [González, 9,6] un patrón o un modelo es una descripción estructural o

    cuantitativa de un objeto en una imagen; de acuerdo con [Shulcloper, 991 un objeto es

    un concepto con el cual representamos a los elementos sujetos a estudio.

    !

    Desde otro punto de vista un modelo es una representación de un sistema que nos permite simular su comportamiento en diversas condiciones y queda determinado por las

    características que se han seleccionado y que permitirá modelar esta información para su

    reconocimiento o estudio.

    Ejemplos de objetos que representan a los elementos sujetos a estudios [shulcloper, 991:

    Un paciente.

    Una zona geológica.

    http://conjunto.de

  • Un equipo eléctrico.

    Un conjunto de personas.

    Una fotografia.

    Lo objetos anteriores se establece formalmente considerando un universo M de objetos y un cubrimiento finito K1, ..., Kn, de M, por subconjuntos propios, es decir, Ki c M, para ¡=I,,..+ Sean X I , ....x~ los rasgos, en términos de los cuales se describen los objetos. Cada rasgo xi tiene asociado un conjunto Mi que denominaremos conjunto de valores admisibles del rasgo. Algunos de los conjuntos de valores admisibles que consideraremos son:

    Tabla 4.1. representación de los rasgos y clases (kl,k2) de los objetos (O,,O,) segun [Shulcloper, 991

    X I ... XII Raseos

    E1,l Ei,n

    Descripción del objeto Om compuesto de n vaiiables

    ,I Q , n

    4.3 TEORÍA DE TESTORES

    AI describir un objeto en términos de rasgos o sus respectivas variables no siempre

    son necesarios todos los rasgos o variables para poder diferenciar unas clases de otras. Por lo que es necesario encontrar qué subconjuntos son suficientes para caracterizar las clases

    para ello se ha desarrollado una técnica que permite obtener los rasgos más importantes. El

    algoritmo BT (Bottom Top) se basa en los conceptos de fesfor y testor fípico. El objctivo

    es obtener una buena descripción de los objetos, obteniendo los mejores rasgos o

    características más descriptivas del objeto. Esta selección no siempre es fácil y menos

    38

    li

  • menos cuando el vector de características es demasiado grande, o es dificil cuando las variables tienen dependencia entre ellas. 81

    1

    De acuerdo con [Shulcloper, 991 testor en su concepto más básico para dos clases es un conjunto de rasgos (columnas) que permiten diferenciar a un objeto entre dos clases; es decir se tiene una clase to con n rasgos o variables y otra clase I / con n rasgos o variables, se

    dice que ningún objeto de la clase to tiene descripciones semejantes de la clase 1 1 , un testor

    se llama irreducible (típico) si al eliminar cualquiera de dichas columnas deja de ser [estor para las dos clases (to,tl).

    t ./

    ' t Un testor típico permite obtener los rasgos importantes para el reconocimiento del objeto. De forma similar obtiene las combinaciopes mínimas de los rasgos de las clases,

    esto hace la diferencia entre dos clases, a través del conjunto de rasgos, característica

    necesaria para mantener la diferencia entre las dos clases. Este proceso explicado de

    manera sencilla es lo que realiza el algoritmo BT.

    4.3.1 Algoritmo BT.

    El algoritmo para el cálculo de testores típicos trabaja con la generación de los n-uplos

    booleanos (esto se refiere a los valores binarios, cero o uno que en su conjunto

    representan un valor nufnérico) de la siguiente forma a(i)=al.. .a,,. donde el total dc las 1 1 alfas representan los rasgos o él número de variables que describen al objeto a modelar.

    El algoritmo se basa en la comparación y análisis exhaustivo de todos los subconjuiitos

    de los rasgos siendo el total de 2". El algoritmo no contempla todas las combinaciones ya que realiza saltos cuando encuentra un testor típico, este algoritmo al mostrar los

    resultados de la lista de teslores típicos, no determina cuál es el mejor de toda la lista que fue generando.

    El algoritmo se basa en la idea de ir generando a(¡) a partir del número biiiario (O ... I )

    hasta 2" ,es decir el orden natural de los vectores característicos de los 2" se inicia el

    valor como O...O y el ultimo valor para a es 1..1 esto se realiza utilizando la

    39

  • numeración binaria en orden ascendente, se considera cuando a, =O (i=O,i ... n) el rasgo '1

    no se toma en cuenta en la descripción del objeto y cuando a.=l indica que el rasgo j

    misma clase. Por ejemplo cuando el algoritmo encuentra un testor tipico con el

    siguiente valor a(i)=000100 los siguientes valores no son tesiores tipicos I a(i+l)=000101, a(i+2)=000110, a(i+3)=000111, ya que así fue diseñado este

    !I

    permite diferenciar un objeto que pertenece a una clase de otro que no pertenece a la

    11

    I

    algoritmo, que permite saltos para ser más rápido, el algoritmo continúa con el siguiente

    valor a(it4)=001000 hasta que se alcance el valor de a(i+n)=lll 11 I . El valor máximo que puede alcanzar depende del número de rasgos del objeto. Por ejemplo para 3 rasgos

    empieza con O00 y termina cuando alcanza su máximo valor que es 1 1 1.

    Para llegar a estos resultados el algoritmo sigue una serie de pasos que se listan a detalle a

    continuación.

    a) Calcular la Matriz de Diferencia

    b) Obtener subfila y superfila de la matriz de diferencia para generar la fila básica.

    C) Proposiciones que determinan que rasgos son testores típicos.

    d) Algoritmo de testores tipicos

    a) Matriz de Diferencia (MD) Se calcula la matriz de diferencia, la cual se obtiene de comparar cada objeto de cada clase

    con los objetos de las clases restantes.Tenemos dos matrices que representan dos clases

    diferentes la primera clase con tres objetos, la segunda clase con 2 objetos teniendo cinco

    rasgos cada clase ver tablas 4.2 y 4.3.

    Tabla 4.2. Representa la primera clase con tres objetos.

    40

    r

  • Tabla 4.3. Representa la segunda clase con dos objetos.

    Utilizando criterios de diferencia, se compara las filas del objeto fo con las de 11, es decir se toma la primera columna del objeto uno con la primera del otro objeto, la primera con la segunda y así sucesivamente, por lo que el resultado de filas en total sería las filas

    del primer objeto por las filas del segundo objeto (para este caso tenemos 3 objetos de la

    primera clase y 2 objetos de la segunda clase, esto es 3 x 2= 6 filas) de la matriz de diferencia. ver tabla 4.4.

    Tabla 4.4. Resultado de la matriz de diferencia

    b) Fila Básica

    Para obtener la fila básica primero se necesita conocer cuál es subfila y superfila.

    Sean p y t dos filas de la matriz de diferencia, se dice que p es subfila de r si en todas las

    columnas donde el renglón d e p tiene un I , también I lo tiene,ver inciso a).

    a) t'j (ap, = 1 2 a,, = I ) . Ejemplo: p = 10001

    t = 11101

    41

    L 10s siguientes 2 n-k - I n-upios son listas restores pero no típicos. f

    I 42 L

  • Tabla 4.3. Representa la segunda clase con dos objetos.

    Utilizando criterios de diferencia, se compara las filas del objeto to con las de I , , es decir se toma la primera columna del objeto uno con la primera del otro objeto, la primera

    con la segunda y así sucesivamente, por lo que el resultado de filas en total sena las filas del primer objeto por las filas del segundo objeto (para este caso tenemos 3 objetos de la

    primera clase y 2 objetos de la segunda clase, esto es 3 x 2= 6 filas) de la matriz de diferencia, ver tabla 4.4.

    I

    Tabla 4.4. Resultado de la matriz de diferencia

    I

    b) Fila Básica

    Para obtener la fila básica primero se necesita conocer cuál es subfila y superfila. Sean p y I dos filas de la matriz de diferencia, se dice que p es subfila de f si en todas las columnas donde el renglón ,dep tiene un 1, también f lo tiene,ver inciso a).

    a) Vj (ap, = I 2 a,, = 1 ) . Ejemplo:

    p = 10001

    I = 11101

    41

    'I I

  • I

    Existe al menos una

  • Proposición 3. Sea a una lista testor y k el subindice del ultimo uno en a, entonces los

    siguientes 2 "-' - I n-upios son listas testores pero no típicos.

    Proposición 4. Sea a=(a,, ..., a,) una fila de MB y k el subindice del Último 1 en a suponga que también a= (a!,.. . ,an) no es lista testor y que para u y a se satisface lo siguiente:

    I V j = 1, ..., n ( a . A a. )=O

    J 1 Sea a=(&/, ...,a',) talque.

    i!

    a . s i j < k

    a.= 1s i j = k 1 ' lO:ij>k

    Entonces ninguna lista comprendida entre a y a' es una lista testor

    d) Algoritmo

    Paso ¡. Se genera la primera lista a no nula de longitud n. I Paso 2. Se determina la proposición I si la lista generada a es una lista testor en MB

    (matriz básica).

    Paso 3.

    a) Si es lista tator aplicamos la proposición 3.

    b) Si es lista testor típico se imprime a y se aplica la proposición 2. c) Si no es lista testor se determina la fila u de la MB que provoca este hecho (de no ser

    Única se toma la que tenga el Último 1 más a la izquierda se aplica la proposición 4.

    Paso 4. Se genera la lista siguiente a las descartadas en virtud del paso 3 y. se regresa ai paso 2 en caso de que la lista resultante del paso 3 no sea posterior a 1 , l . . . , l , l . Es decir, si

    el tadaño es de I 11 1 verificar que no sea mayor a 11 1 1 o igual a 1 1 I 1 1 . La selección de

    rasgoj permitirá seleccionar aquellas variables que permitan identificar o reconocer al

    objeto que se está modelando.

    I

    I k

    43

  • Proposición 3. Sea a una lista testor y k el subíndice del ultimo uno en a, entonces los siguientes 2 n-k -1 n-upios son listas testores pero no típicos.

    Proposición 4. Sea a=(a,,. . .,a,) una fila de MB y k el subindice del último I en a suponga

    que también u= (al,.. .,an) no es lista testor y que para u y a se satisface lo siguiente:

    V j = 1, ..., n ( a . A u . ) = O

    Sea a= (a'!, ..., dn) tal que. J 1

    a . s i j < k

    a . = I s i j = k J I l O l i j > k

    Entonces ninguna lista comprendida entre a y a' es una lista testor.

    d) Algoritmo

    Paso 1. Se genera la primera lista a no nula de longitud n.

    Paso 2. Se determina la proposición 1 si la lista generada a es una lista testor eii MB

    (matriz básica).

    Paso 3.

    a) Si es lista tesior aplicamos la proposición 3 .

    b) Si es lista testor típico se imprime a y se aplica la proposición 2 .

    c) Si no es lista testor se determina la tila u de la MB que provoca este hecho (de no ser única se toma la que tenga el último I más a la izquierda se aplica la proposición 4.

    Paso 4. Se genera la lista siguiente a las descartadas en virtud del paso 3 y, se regresa al

    paso 2 en caso de que la lista resultante del paso 3 no sea posterior a 1 , l . . . , I , I . Es decir, si el tamaño es de 1 1 11 verificar que no sea mayor a 1 1 I 1 o igual a 1 11 1 I . La selección dc

    rasgos permitirá seleccionar aquellas variables que permitan identificar o reconocer al

    objeto que se está modelando.

    43

  • A continuación se muestra el siguiente ejemplo:

    Se toman los objetos de las tablas 4.2. y 4.3 y el resultado de la matriz de diferencia es la tabla 4.5, se obtiene la matriz básica que está compuesta por el total de filas básicas y su

    resultado es la tabla (4.6).

    Tabla 4.6 resultado de la matriz básica

    Se inicializa a con el siguiente valor Paso 1 :

    EO0001.

    Paso 2:

    El resultado es que no es lista testor, por la proposición 1.

    Paso 3 :

    Se aplica c).

    Se utiliza la proposición 4.

    Paso 4:

    Se genera la nueva alfa.

    a=010000.

    Paso 2:

    El resultado es que no es lista testor, por la proposición 1.

    Paso 3:

    Se aplica c)

    Se utiliza la proposición;4.

    Paso 4:

    Se genera la nueva alfa. '.

    ~ 0 1 1 0 0 0 .

    44

  • Paso 2: El resultado es lista testor.

    Paso 3: Aplicar b).

    Es testor típico se imprime y se aplica la proposición 2

    a=o 1 1000. Paso 4:

    Se genera la nueva alfa.

    a=100000.

    Paso 2:

    No es testor.

    Paso 3:

    Aplicar c).

    Se aplica la proposición 4

    Paso 4 :

    Se genera la nueva alfa

    a= 1 10000.

    Paso 2:

    No es testor.

    Paso 3 :

    Se aplica c).

    Se aplica la proposición 4 Paso 4:

    Se genera la nueva alfa.

    a=l11000.

    Paso 2:

    No es lista testor.

    Paso 3:

    Aplicar c).

    Se aplica la proposición 4

    45

  • Se genera la nueva alfa.

    a=lll111.

    Como en este caso alfa es mayor a 11 11 1 se termina el proceso.

    4.3.2 Importancia de los testores típicos

    En algunos casos se generan varios testores típicos como se ha visto anteriormente por

    lo que el usuario no conoce qué conjunto de rasgos son los más importantes para una mejor

    descripción del objeto. Existen dos métodos que se describen a continuación y que permite

    conocer que rasgos son más importantes.

    a) Peso Informacional.

    b) Longitud del Testor.

    a) Peso Informacional:

    La manera de obtener este valor en la opinión de [Shulcloper, 991 es la siguiente: Sea I

    el numero de festores fípicos que tiene una matriz de aprendizaje y f(i) el numero de

    testores típicos en los que aparece la columna correspondiente al xi, se dice que el peso

    informacional se obtiene a partir de la siguiente fórmula:

    Para i= l . . .n, x, E R.

    Ejemplo se tienen los siguientes conjuntos de testores típicos

    Y={ { X i l>~x2,xsl,~x2,x3,x4~ I P(~i)=P(x3)=P(~)=P(~s)=O.33333 y P(~z)=0.666.

    Son tres subconjuntos de testores rípicos, el primer subconjunto aparece una vez con la

    siguiente variable x,,en el segundo subconjunto aparecen dos variables x2,xj y en el terce

    subconjunto tres variables x2.xJ,x4 en el segundo y tercer subconjunto se repiten dos veccs la

    variable x2=2/3=0.6666.

    Todas las demás variables aparecen una vez por lo que su valor es de ( I /3=0.33333) es

    natural pensar que el rasgo x , es más importante que los otros rasgos, sin embargo en el

    46

  • resultado numérico no lo demuestra, por lo que este cálculo por si solo no muestra el resultado coriecto.

    b) La longitud del testor:

    Resulta natural considerar un rasgo más importante en la medida en que es menor la

    longitud del testor típico en que aparece, esto es asociando a cada rasgo una magnitud que

    depende de estas longitudes y se denota por L(a:

    1 = Y -

    (4.2)

    La ecuaci ~ I (4.2) indica en el numerador la sumatona dc. .estor típico que aparece en cada

    conjunto, en el caso de L(XI) aparece solo una.ves {xi}, esto dividido por el numero total

    que aparece en todos los conjuntos, el resultado es 1/1/1=1.

    L(XI)=l, L(X+0.418, L(X3)= L(&)=0.333 , L(Xs)=0.5. Estos valores no muestran la verdadera importancia de las variables ya que se esperaba que

    el rasgo X, , sea más importante sin embargo Xj muestra un valor mayor X2, ya que X, necesita de una variable adicional mientras que XS necesita dos variables adicionales, se

    requiere de una combinación de cálculo adicional como se muestra en el siguiente caso:

    p(X)=aP(X) + pL(X) donde a y p >O a + p=l. a y p son parámetros que ponderan la participación de P(x) y de L(x). Si asignamos los siguientes valores a = p=0.5, se obtienen los siguientes resultados:

    p( XI ) =0.666 p( Xz) ~ 0 . 5 2 4 p( X,)= p( Xq =0.333 p( X5)=0.416 este resultado es el que se esperaba, ya que se muestra de acuerdo con su importancia

    previamente intuida.

    4.4 RASGOS A MODELAR Como ya se mencionó los rasgos son las características que se toman en cuenta para su

    estudio, en este trabajo al utilizar la técnica de snakes, , se registran las distancias entre

    todos los puntos de Y yy, que presenta el objeto aífqflexible, estos cambios se almacenan en

    47

  • l

    una base de conocimientos, los cuales fueron el resultado de una secuencia de cuadros en

    un vídeo. Lo siguientes rasgos que registra la herramienta en la base de conocimientos se

    obtienen por medio del histograma, centro de gravedad del snake relacionado con x y y . el

    área del objeto, lo anterior una vez almacenados en la base de conocimientos se utiliza la

    técnica de tesfores (@cos, esta técnica permite disminuir la redundancia de información,

    es decir obtiene un conjunto de rasgos que mejor describan al objeto

    4.4.1 Color por Histograma El histograma [Maravall, 941 de una imagen consiste en un diagrama de frecuencias,

    de la propia imagen. Las abscisas (valores de x, de O a 255) corresponden a los niveles de

    gris o valor del byte correspondiente al formato RGB (red,green,blue) y las ordenadas es el número de veces que se presenta el valor de cada pixel (ver figura 4. I ) , en el formato RGB.

    se necesitan tres hictogramas para representar cada valor del formato, se toma los cuatro

    valores mas altos de R, G y B del formato, con esto se