88
Memorias XIII Simposio de Tratamiento de Señales, Imágenes y Visión Artificial STSIVA 2008 Tomo II Bucaramanga, 10, 11 y 12 de Septiembre

publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

MemoriasXIII Simposio de Tratamiento de Señales, Imágenes y Visión Artificial

STSIVA 2008

Tomo II

Bucaramanga, 10, 11 y 12 de Septiembre

Page 2: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

DIRECTIVOS

Fray Orlando Rueda Acevedo, O.P.Rector Fray Guillermo León Villa Hincapié O.P.Vicerrector Académico Decano División de IngenieríasFray Guillermo León Villa Hincapié O.P.Decano División de Ingenierías y ArquitecturaFray José Rodrigo Arias Duque O.P.Vicerrector Administrativo-Financiero

COMITÉ ORGANIZADOR

Luis Ómar Sarmiento ÁlvarezPresidente Comité OrganizadorJesús E. LabordeCoordinador Comité OrganizadorDolly Smith Flórez MorenoMónica Andrea Rico MartínezMayra Fernando Blanco AlmeidaAna Isabel CamposJenny Rocío GómezJenniffer Dayanna MartínezAdriana Quintana BallénMaría Lorenza Pinto SuárezJorge Alberto Martínez Campo

COMITÉ CIENTÍFICO:

Sonia Helena Contreras Ortiz Juan Carlos Martínez Santos Leonardo Ramírez Pedro Raúl Vizcaya GuarínLuis Fredy Sosa Quintero Javier González Mauricio Díaz Alexánder Cerquera Héctor Cancino César Augusto Quintero Obando Neil Guerrero González Pablo Emilio Jojoa Gómez Rodrigo Herrera Edward Wilder Caro Anzola Augusto Salazar Diego Rolando Mahecha Capacho Jhon Jairo Pérez Gelves William Castro Carlos Andrés Madrigal González Fabián Jiménez López Paola Fernanda Guzmán Andrea Liliana Rodríguez Sánchez Milton Forero López César Augusto Isaza Bohórquez Edwin Gómez Rodolfo Sanchez García

Luis David Avendaño Valencia Julio César García Álvarez Jesús Vega Julián Betancur

PRODUCCIÓN CREATIVA

Departamento de PublicacionesDirectora Dpto. PublicacionesC.P. Luz Marina Manrique Cáceres Diseño y DiagramaciónPub. Luis Alberto Barbosa Jaime

ImpresiónDISTRIGRAF Impresores

© Universidad Santo Tomás

ISSN 978-958-8477-00-8

Page 3: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Contenido

Presentación 7

Diseño e implementación de una herramienta computacional para soportedel análisis de la marcha empleando técnicas de visión artificial 9

Identificación de formas, colores, tamaño y ubicación cartesiana de objetosmediante métodos de visión artificial aplicado al control de manipuladores robóticos 14

Arquitectura hardware para la implementación FPGA de algoritmos deextracción de bordes en imágenes 19

Transformada wavelet y técnicas de filtrado no lineal aplicadas a la detección de microcalcificaciones en mamografías digitales 23

Algoritmo de apoyo para el diagnóstico de tuberculosis pulmonarmediante el procesamiento digital de imágenes 27

Caracterización del grado de madurez del limón Tahití 31

Diseño e implementación de un prototipo de software para la visualizaciónde videos a 360º 36

Reparametrización de mallas triangulares en cuadriláteros 40

Reconstrucción y mejoramiento de imágenes 44

Propuesta de un sistema de verificación de hablantes basado en máquinasde vectores de soporte 49

Aplicación de modelos paramétricos a la caracterización de señales sísmicas 53

Control de mouse através de señales EOG y algoritmos de Boosting 57

Page 4: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Análisis de las deficiencias del uso de enveloping en la señal digital de vibración 61

Detección de rostros frontales y componentes faciales sobre secuenciasde imágenes 65

Arquitectura usando aritmética entera orientada a la extracción de loscoeficientes de predicción lineal sobre PDSP y FPGA 69

Mobile robot using adaptable fuzzy control on a digital signal processor 73

Detección de características geométricas sobre imágenes 2D, empleandotécnicas de momentos invariantes 77

Reconocimiento de expresiones faciales combinando métodos Kernel e ICA 81

Desarrollo de una aplicación para visualizar objetos 3D en Ambientes y Sistemasde Inmersión 85

Interpretación dinámica de bioseñales usando técnicas de análisis no lineal 89

Implementación de una herramienta para la adquisición de variables de tráfico: peatones y vehículos, utilizada en la evaluación del riesgo depeatones que cruzan la vía 95

Representación de detalles en imágenes usando cuadros diádicos y reglasde información basados en Wavelets 99

Ajuste circular en sensores térmicos 104

Transmisión de imágenes diagnosticas a través de sistemas de radio UHF/VHF 108

Sistema de Telediagnóstico Médico 111

Prototipo de contador electrónico trifásico de energía eléctrica para control y monitorización remota utilizando DSPs 115

Diseño de un colorímetro basado en una cámara CCD para aplicación en inspección de color en telas utilizando el modelo CIE L*a*b* (Julio 2008) 120

Page 5: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Las “Wavelets Package” en la reducción de ruido de señales de espectroscopía de resonancia magnética 124

Métodos de segmentación del patrón de las venas del dorso de la manobasados en filtros Shock coherentes 128

Verificación de personal por el patrón de las venas del dorso de la mano 135

Sistema de visión 3D para control cinemático de un brazo robot 142

Eliminación de ruido impulsivo por medio de la utilización de funcionesde base radial 147

Transmisión y recepción de señales de electrocardiografía medianteShort Message Service (SMS) 151

Diseño de un módulo en FPGA para el procesamiento de señales de ECG 154

Sistema de Tele-Consulta a través de la red 158

Sistema de tele-consulta móvil asistida por GPS 163

Análisis comparativo del entrenamiento de modelos ocultos de Markov mediante esquemas generativos y discriminativos 169

Entorno software para la obtención del electrocardiograma fetal 173

Análisis espectral para deteccion de fallas en motores diesel serie ISC (Tracto camiones) 178

Sistema para la recuperación de imágenes usando descriptores de forma 183

Carpet wear classification using coocurrence matrices and support vector machines 188

Numerical reconstruction of spectral reflectance curves for multispectralimaging, combining different techniques and a neural Network 192

Page 6: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Desarrollo del prototipo de un sistema de control y monitoreo para elvuelo de un cohete 197

Medidas antropométricas para la identificación de características en imágenes del rostro 204

Sistema de clasificación de imágenes basado en técnicas de reconocimientode patrones aplicado en termografía y robótica 208

Sistema de localización para un robot móvil utilizando visión global 213

Sistema de seguimiento de un objeto en movimiento usando arquitecturade visión foveal 218

Sistema de localización y seguimiento de un conjunto de robots móviles utilizando visión global 225

Utilización de matrices lógicas programables por campo FPGA, parala implementación de un sistema de evaluación de redes neuronalesorientadas al reconocimiento de patrones de imagen 230

Identificación de color, tamaño y forma mediante técnicas de visiónartificial y lógica difusa en banda transportadora 235

Viabilidad de la detección precoz de cáncer de cuello uterino por medio del análisis de la respuesta fluorescente natural en muestras ex-vivo 239

Reconocimiento de imágenes en una mesa XY mediante lógica difusa 244

Detección e identificación de rostros utilizando SVM y color 250

VHDL open core for implementation of IEEE-754 single precisionmultiplication standard on FPGAs 256

Page 7: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Presentación

La División de Ingenierías de la Universidad Santo Tomás, Seccional Bucaramanga, tuvo el honor de ser el ente organizador del XIII Simposio de Tratamiento de Señales, Imágenes y Visión Artificial STSIVA 2008, durante los días 10, 11 y 12 de septiembre de 2008 en la ciudad de Bucaramanga, cuyo objetivo era el de promover el intercambio de experiencias académicas e investigativas en procesamiento de señales, imágenes y visión artificial en un espacio que permita la revisión del estado del arte y la actualización de métodos, técnicas y aplicaciones empleados en las diferentes áreas temáticas, tanto en el ámbito nacional como en el internacional.

El Simposio de Tratamiento de Señales, Imágenes y Visión Artificial, cuya sede se rota anualmente por las diferentes regiones del país, es un evento creado por la Sociedad Colombiana de Tratamiento de Señales y cuenta recientemente con el apoyo del Capítulo Colombiano de Procesamiento de Señales del IEEE. La realización de esta nueva versión contó adicionalmente con la cofinanciación de Colciencias y con la coordinación de la Línea de Investigación en Procesamiento de Señales perteneciente a la Unidad de Investigaciones de la Facultad de Ingeniería de Telecomunicaciones UNITEL, entre otras instancias de la Universidad Santo Tomás de Bucaramanga.

STSIVA 2008 rompió récord respecto a las versiones anteriores en cuanto a asistencia, número de trabajos inscritos y participación de ponentes internacionales, ya que contó con la inscripción de 365 participantes entre ponentes y asistentes, se recibieron 227 trabajos, de los cuales, después del proceso de evaluación por pares, se seleccionaron los mejores 107 artículos incluidos en su totalidad en la presente publicación, y se aceptaron en total seis artículos internacionales, dos de España, dos de Brasil, uno de Alemania y otro de Bélgica.

Las presentes memorias contienen los artículos de las ponencias realizadas en STSIVA 2008. La publicación se ha organizado en dos tomos, con 53 artículos el primero y 54 el segundo. El orden en el que se presentan los artículos responde únicamente al número consecutivo que se asignó a cada trabajo en el momento de la inscripción. Los trabajos se presentan sin hacer diferencia entre trabajos presentados en ponencias orales y los presentados como póster ya que la modalidad de los trabajos es independiente de la calidad de los mismos.

Los 107 artículos recibidos participaron en las siguientes temáticas: técnicas y aplicaciones del procesamiento de señales, procesamiento de imágenes y señales multidimensionales, tratamiento de señales de video, visión artificial, procesamiento de señales de origen biológico, aplicaciones desarrolladas con DSPS Y PLDS (FPGA), educación en señales, imágenes y visión artificial, tratamiento de señales de voz y audio y procesamiento de señales multimedia. Las temáticas con el mayor número de artículos aceptados fueron en su orden: técnicas y aplicaciones del procesamiento de señales, procesamiento de imágenes y señales multidimensionales, y visión artificial.

Page 8: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Paralelo al evento, se presentaron tres conferencias magistrales a cargo de expertos internacionales en procesamiento de señal. Los conferencistas y los temas fueron: El Dr. José Millet Roig de la Universidad Politécnica de Valencia participó con el tema “Aplicaciones del procesado digital de bioseñales a la cardiología”, el Dr. Alberto González Salvador, también de la Universidad Politécnica de Valencia con la conferencia “Algoritmos de detección por búsqueda en árbol (Sphere Decoders) para sistemas de comunicaciones MIMO”, y la Dra. Amy Reibman, conferencista distinguida del IEEE con el tema “Image and video quality assessment: The truth about PSNR”.

Como presiente del Comité Organizador de STSIVA 2008 y en representación de la Universidad Santo Tomás Seccional Bucaramanga, con la satisfacción de haber cumplido a con los objetivos propuestos y haber superado con creces las expectativas planteadas, con el agradecimiento a todas y todos quienes participaron en la organización del evento y en constancia del alto nivel académico y científico, pongo a su consideración esta edición impresa de las memorias del XIII Simposio de Tratamiento de Señales Imágenes y Visión Artificial.

Cordialmente,

Luis Ómar Sarmiento ÁlvarezPresidente del Comité Organizador STSIVA 2008

[email protected]

Page 9: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 9 - 13

Diseño e implementación de una herramienta computacional para soporte del análisis de la marcha empleando técnicas de

visión artifi cialEdgar Roa, Ricardo Rivas, José Becerra, Neil Guerrero G.

DISEÑO E IMPLEMENTACIÓN DE UNA

HERRAMIENTA COMPUTACIONAL PARA

SOPORTE DEL ANÁLISIS DE LA MARCHA

EMPLEANDO TÉCNICAS DE VISIÓN ARTIFICIAL

Edgar Roa, Ricardo Rivas, José Becerra, Neil Guerrero G.

Abstract— Para el registro de la marcha y su análisis clínico, el procesamiento de imágenes ha jugado un papel importante en la construcción de modelos para la medición de los parámetros sometidos a evaluación. Uno de los métodos consiste en la construcción del modelo después de la segmentación de los marcadores ubicados sobre las personas de manera controlada. Este trabajo propone una metodología de segmentación automática de los marcadores en imágenes para análisis de la marcha empleando Redes de Funciones de Base Radial (RBFN) en el espacio del color Rojo, Verde y Azul (RGB), reduciendo los efectos negativos de la iluminación al evitar el mapeo contractivo de los imágenes en escala de grises. La herramienta desarrollada entrega automáticamente los ángulos de evaluación del modelo de los miembros inferiores del cuerpo humano.

Index Terms— Gait analysis, Image segmentation, RBF network.

I. INTRODUCCIÓN

A marcha normal en humanos puede ser definida como un método de desplazamiento que involucra dos piernas

Este manuscrito fué sometido a evaluación el 21 de Abril de 2008. El trabajo fué desarrollado en el marco del proyecto “Análisis de la Marcha Humana Empelando Técnicas de Visión Artificial” al interior del grupo de investigación en Biomecánica y automatización de la Universidad Autónoma de Manizales (Colombia). Edgar Roa Guerrero es estudiante de Ingeniería Electrónica de la Universidad Francisco de Paula Santander, ([email protected]). Ricardo Rivas Ramos es estudiante de Ingeniería Electrónica de la Universidad Autónoma de Manizales, ([email protected]). José Armando Becerra Vargas es Ingeniero Electrónico. Es docente del departamento de Ingeniería Electrónica de la Universidad Francisco de Paula Santander y actualmente es director del departamento de Electricidad y Electrónica de la Universidad Francisco de Paula Santander ([email protected])Neil Guerrero González es Ingeniero Electrónico y MsC. En Ingeniería en la linea de Automatización Industrial de la Universidad Nacional de Colombia. Es docente del departamento de Ingeniería Electrónica de la Universidad Autónoma de Manizales y actualmente es estudiante de doctorado de la Universidad Tecnológica de Dinamarca ([email protected])

alternativamente para proporcionar tanto soporte como propulsion, con al menos un pie al tiempo en contacto con el suelo. Es un proceso periódico y el paso describe la manera o el estilo de la marcha, con un intercambio continuo entre movilidad y estabilidad [1]. Para el registro de la marcha, el desarrollo de sistemas automáticos ha acelerado los procesos de medición y para el caso de análisis clínico, ha posibilitado la proporción de diagnósticos objetivos de la marcha. En este sentido, el procesamiento de señales juega un papel importante tanto en el procesamiento de la imagen con el fin de extraer marcadores en los pacientes que permitan la construcción de modelos [2], como para reducciones de dimensionalidad de características, en etapas más avanzadas [3]. Para identificación y seguimiento de personas, se han implementado varios métodos. Algunos autores han propuesto seguimiento y caracterización de siluetas humanas. En [4] se propuso un modelo estadístico para detección y seguimiento de la silueta humana y la construcción subsiguiente de un modelo esquelético 3D en secuencias de pasos. Se trabajó sobre un modelo de distribución de puntos (PDM) usando análisis de componentes principales (PCA). Se presentaron problemas con la no linealidad de PCA, y para análisis clínico no se garantizó confiabilidad en las medidas de ángulos o velocidades en los segmentos del cuerpo. En [5] se presentó una metodología general para el aprendizaje de movimientos articulados, empleando un clasificador bayesiano después de la aplicación de técnicas clásicas para extracción de características. El método fué aplicado en análisis de marcha humana y seguimiento, pero está restringido a movimientos coordinados tales como análisis de comportamiento de robots. El problema principal radicó en el tiempo del ciclo de la marcha, y las dimensiones de la red bayesiana debido a la necesidad de grabar todo el proceso. En [9] se presentó un análisis de la marcha humana usando medidas biométricas no invasivas. El método usó secuencias de siluetas que son transformadas a un embebido de baja dimensión por medio de procesos Gaussianos. Otros autores han trabajado sobre

L

Page 10: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 10

marcadores en el cuerpo humano que son segmentados para luego construir modelos cinemáticos. En [6] se presentó una metodología para análisis de la marcha humana usando un sistema de marcadores. El reconocimiento de las piernas se realizó en secuencias de imágenes en niveles de gris empleando operadores morfológicos y luego se construyó un modelo tridimensional a partir de curvas supercuádricas utilizando una regresión por el método de mínimos cuadrados. La metodología requiere de una inicialización más adecuada y un aumento en la tasa de tomas fotográficas para capturar los movimientos rápidos de los pies. Finalmente, algunos investigadores han propuesto adecuación de laboratorios construyendo plataformas a partir de sensores para análisis de la marcha humana. En [7] se propuso un sistema de sensores multipropósito y algoritmos de análisis de fase para predecir y estimar comportamientos del ser humano en avance. Este sistema se compone de encoders, sensores FSR y tarjetas FPGA para procesamiento de datos. En [8] se diseñó e implementó una plataforma robótica para aplicar velocidades o aceleraciones controladas como perturbaciones a la superficie del suelo.

Este trabajo propone una metodología de segmentación automática de los marcadores en imágenes para análisis de la marcha humana empleando RBFN en el espacio del color RGB, reduciendo los efectos negativos de la iluminación al evitar el mapeo contractivo de los imágenes en escala de grises. La herramienta desarrollada entrega automáticamente los ángulos de evaluación del modelo de los miembros inferiores del cuerpo humano. La segunda sección del documento hace una presentación breve del método RBFN en imágenes. La sección tres presenta la metodología de segmentación propuesta, con dos subsecciones que describen los algoritmos para la identificación automática de los marcadores y el trazado de vectores. La sección cuatro presenta los resultados y finalmente en la sección cinco, se presenta una breve discussion y se concluye el trabajo.

II. FUNCIONES DE BASE RADIAL EN IMAGENES

Las Funciones de Base Radial (RBF) han sido utilizadas para implementer modelos regresivos, para interpolar superficies o volúmenes en aplicaciones de computación gráfica, para suavizar señales, entre otras aplicaciones [10]. Este trabajo aplica las RBF para evaluar y clasificar la distancia en el espacio de color RGB entre cada píxel de la imagen y un punto específico dentro del mismo que representa el color conocido del marcador puesto sobre la persona, con el fin de extraer la información espacial de los pixeles pertenecientes a los marcadaores para construir el modelo cinemático de los miembros inferiors del cuerpo humano.

Sea el domimo de definición de una imagen y 2Ω⊂ ρun píxel en la imagen definido como la parte más pequeña

posible en que puede descomponerse, de tal manera que ρ ∈Ω

3:I Ω→

. Defínase la función de color mostrada en la Ecuación

1, como el mapeo a un espacio tridimensional de cada pixel de la imagen. Este espacio será llamado espacio de color siendo sus componentes los colores rojo (R), verde (G) y azul (B) y cada uno de éstos tendrá valores enteros entre 0 y 255, como se define en la Ecuación 2.

(1)

[ ]1 2 1 2 3 1 2 3( ( , )) , , 0 , , 255I I I I I I Iρ ρ ρ ρ ρ ρ ρΩ Ω = ≤ ≤ (2)

Considérese el problema de la agrupación de píxeles y defínase λ como como la función de probabilidad de pertenencia (FPP) del píxel a un conjunto . Defínase ahora

el valor

Λ0λ como el umbral que debe ser superado en la

evaluación de la FPP para pertener al conjunto. La Ecuación 3 muestra esta formulación.

0( ( ))Iρ ∈ λ ρ λΛ→ ≥ (3)

Permítase ahora como FPP una función de base radial con

media 2μ y desviación estándar σ , cómo se ve en la

Ecuación 4.

2

( )

2

1( ( ))

2

I

I eρ μσλ ρ

πσ

−−

= (4)

2μ y Donde σ son parámetros que contienen la

información de los marcadores que se quieren extraer de la imagen. Estos valores son calculados a partir de los valores en los componentes rojo, verde y azul de los “pixels marcadores”

que son seleccionados previamente. El valor 0λ es ajustado en

el entrenamiento del sistema y como resultado de la búsqueda heurística para el desarrollo de este trabajo, se recomienda que

sea superior a 0.8. El parámetro 2σ es utlizado como ajuste de la escala, haciendo más estricto o no el cumplimiento de la regla de agrupación.

III. METODOLOGIA PROPUESTA

El desarrollo del trabajo incluye cuatro actividades que van desde la toma de fotografías hasta el trazado automático de los vectores de análisis. El Algoritmo 1 describe cada actividad del trabajo.

Algoritmo 1: Detección automática de marcadores

Paso 1: Toma de fotografías.

Page 11: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 11

Paso 2: Segmentación de los marcadores empleando funciones de base radial.

Paso 3: Identificación automática de los puntos.

Paso 4: Trazado automático de los vectores.

Para la toma de fotografías se utilizó una cámara Lumix DCM – LZ2 en un espacio sin control de iluminación y con fondo de color variable. La Figura 1 muestra la fotografía de una mujer con marcadores rojos en cuatro puntos de su pierna.

Figura 1: Fotografía de un paciente femenino.

Una vez son tomadas las fotografías, los marcadores son segmentados empleando una function de base radial en el espacio de color RGB, como se explicó en la sección anterior. El paso siguiente consiste en extraer automáticamente la información especial de los cuatro marcadores definidos para este trabajo. Es necesario considerar las rotaciones y traslaciones de estos puntos a lo largo de un ciclo de marcha para realizar el rastreo completo. Finalmente el trazado automático de los vectores una vez los puntos son detectados, requiere de conocimientos básicos de geometría computacional y visualización 2D.

A. METODOLOGÍA DE SEGMENTACIÓN.

El Algoritmo 2 describe paso a paso, el método de segmentación propuesto para la segmentación de los marcadores empleando RBF.

Algoritmo 2: Segmentación empleando redes neuronales de base radial.

Paso 1: Identificar el color promedio en los componentes RGB de los marcadores y calcular μ .

Paso2: Evaluar la intensidad en cada componente de color RGB de cada pixel en la FPP utilizando la Ecuación (4).

Paso 3: Ajustar con imágenes de entrenamiento el parámetro

de umbralización 0λ .

Paso 4: Detectar las regiones resultantes y sus centroides después de la umbralización.

Antes del proceso de segmentación, es necesario un preproceso para homogeneizar el color. Para este trabajo, se implementó un filtro de mediana, con una ventana de tamaño 5x5.

B. IDENTIFICACIÓN AUTOMÁTICA DE LOS MARCADORES.

El modelo de los miembros inferiores del cuerpo humano adoptado para este trabajo, es el modelo de vectores rígidos que representan los segmentos cadera – rodilla, rodilla – talón y talón – punta de pies. Para el trazado de estos vectores, son necesarios solo cuatro puntos. El punto 1 será el marcador ubicado en la cadera del paciente, el punto 2 el marcador de la rodilla, el punto 3 el marcador del talón y el punto 4 el marcador de la punta de los pies.

El problema de la rotación y traslación de estos puntos require la identificación de características estables para cada punto. El Algoritmo 3 describe los pasos basados en estas caratcerísticas para identificar los marcadores.

Algoritmo 3: Identificación automática de los puntos

Paso 1: Identificar del punto 1 como el primer centroide encontrado en el barrido de la imagen de arriba hacia abajo.

Paso2: Identificar los posibles puntos 3 y 4 como los centroides más cercanos entre si según la distancia euclidiana en el plano.

Paso 3: Identificar el punto 2 como centroide no punto 1 ni posible punto 3 y 4.

Paso 4: Evaluar el sentido del vector resultante del producto cruz entre los vectores generados desde el punto 2 hasta los posibles puntos 3 y 4. Sólo el punto final del primer vector que entrega como resultado un vector en dirección “saliedo del plano”, será reconocido como punto 3. La identificación del punto 4 después de esta operación es obvia.

El paso más crítico es la identificación del punto 3. Como se describe en el Algoritmo 3, la distancia más corta sin importar la fase de la marcha entre los cuatro marcadores, involucra dos puntos que tienen posibilidades de ser tanto el punto 3 (PP3) como el punto 4 (PP4). La identificación segura

Page 12: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 12

del punto 2 (P2), permite trazar dos vectores desde éste hasta los posibles puntos 3 y 4 respectivamente. Teniendo en cuenta la operación básica de producto cruz entre vectores y en especial la dirección del vector resultante, sólo existirá una dirección de producto (esto es P2-PP3 a P2-PP4 o viceversa, siendo P2-PP3 el vector que va desde el punto 2 hasta el posible punto 3) que sugiera el vector rodilla-talón como coherente, según el modelo del cuerpo humano. Para este trabajo, cuando el paciente camina de izquierda a derecha en la escena, el vector resultante del punto cruz debe tener una dirección “saliendo del plano” donde se encuentran los marcadores. El vector de arranque en el producto cruz, será el vector rodilla-talón, y el putno final de este punto será identificado como el punto 3 (P3).

IV. RESULTADOS

Una vez identificados los puntos del modelo, el trazado automático de vectores requiere de la aplicación de conocimientos básicos de geometría. La Figura 2 muestra el resultado del trazado automático de los vectores para dos fases distintas de la marcha.

Figura 2a: Inicio de la fase de balanceo.

Figura 2b: Trazado automático de vectores de la Figura 6c. La Figuras 3 y 4 muestran la aplicación final de la herramienta desarrollada. En ellas se muestran fotografías procesadas con los vectores trazados. Los ángulos se muestran en la Tabla 1.

Figura 3: Trazado automático de vectores.

Tabla 1: Angulos medidos por la herramienta desarrollada.

Las Tablas 2 y 3 muestran el resultado de la caracterización de los ángulos de cada articulación y comparaciones en cada fase del ciclo de la marcha para pacientes entre las edades de los 18 a los 25 años.

Tabla 2: Ángulos caracterizados de la marcha en el ciclo de apoyo.

Una vez identificados los ángulos de máxima y minima extensión de las articulaciones inferiores del paciente se realizó la comparación de los resultados de la imagen. La Figura 4 muestra el resultado entregado por el programa diseñado.

Page 13: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 13

Tabla 3: Ángulos caracterizados de la marcha en el ciclo de balanceo.

Figura 4a: Trazado automático de vectores.

Figura 4b: Resultados obtenidos mediante la herramiente computacional desarrollada.

V. DISCUSION

Se desarrolló una metodología de segmentación automática de marcadores en imágenes para análisis clínico de la marcha, así como de identificación automática de los mismos para el

trazado de los vectores. Esta metodología emplea funciones de base radial y posibilita la segmentación en el espacio del color. Así mismo, identifica los marcadores en cada una de las fases de la marcha, sin importar la rotación o la traslación de los mismos.

La herramienta desarrollada permite la construcción de modelos cinemáticos de los miembros inferiores en ambientes de iluminación no controlados, entregando a los fisioterapeutas medidas de los ángulos cadera – rodilla, rodilla – tobillo y tobillo – punta de pies para su análisis.

El algoritmo desarrollado presenta problemas en fotografías que registren movimiento con marcadores que presenten emborronamiento. Se recomienda en el momento de su implementación el uso de cámaras fotográficas que permitan la captura de fotografías de buena calidad a ratas suficientemente altas.

AGRADECIMIENTOS

Este proyecto fué desarrollado al interior del grupo de investigación de biomecánica y automatización de la Universidad Autónoma de Manizales (Colombia), en el marco del proyecto “Análisis de la Marcha Humana Empleando Técnicas de Visión Artificial”.

REFERENCIAS

[1] H. Lakany. “Extracting a diagnostic gait signature”. Pattern Recognition 41 (2008) pp. 1627 – 1637.

[2] C. Díaz, A. Torres, J. Ramírez, L. García, N. Álvarez. “Descripción de un dispositivo destinado al análisis de la marcha en dos dimensiones”, in CineMED. Revista EIA, ISSN 1794-1237 Número 5 p. 85-92. Junio 2006.

[3] N.V. Boulgouris, D. Hatzinakos, K.N. Plataniotos, “Gait Recognition: a challenging signal processing technology for biometric identification”, IEEE Signal Process. Mag. 78-84 (2005).

[6] E. F. Desserée Calais, L. R. Legrand. “First Results of a Complete Marker-Free Methodology for Human Gait Analysis”. Proceedings of the 2005 IEEE Engineering in Medicine and Biology 27th Annual Conference Shanghai, China, September 1-4, 2005.

[7] D. Chel, O. Kwon, J. Shim, J. Park. “Design of Multipurpose Sensing System for Human Gait Analysis”. SICE-ICASE International Joint Conference 2006 Oct. 18-21, 2006 in Bexco, Busan, Korea.

[8] J. Doornik, T. Sinkjær. “Robotic Platform for Human Gait Analysis”. IEEE Transactions on Biomedical Engineering, Vol. 54, No. 9, September 2007.

[9] M. Cheng, M. F. Hoa, C. Huang. “Gait analysis for human identification through manifold learning and HMM.” Pattern Recognition (2007), doi: 10.1016/j.patcog.2007.11.021.

[10] Fabrício Martins Lopes, Luís Augusto Consularo. “A RBFN Perceptive Model for Image Thresholding”. Proceedings of the XVIII Brazilian Symposium on Computer Graphics and Image Processing (SIBGRAPI’05). IEEE 2005.

Page 14: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 14 - 18

Identifi cación de formas, colores, tamaño y ubicación cartesiana de objetos mediante métodos de visión artifi cial aplicado al control

de manipuladores robóticos Sergio Andrés Zabala, Gianni Yasser Rivera, Jhonny Marvin Maldonado y José Manuel Parra

Abstract—En este documento se presenta una descripción

sintetizada del funcionamiento de un sistema de visión artificial para la identificación de objetos, basado en criterios como la forma, el color y el tamaño. La metodología de desarrollo e implementación, así como los resultados finales, son descritos en el presente artículo, destacando las estrategias de visión artificial utilizadas, los principales descriptores para las imágenes y la aplicación a un manipulador de tipo pórtico con cuatro grados de libertad. Para llevar a cabo el proyecto, se realizaron y aplicaron técnicas de pre-procesamiento y adecuación de la imagen, entrenamiento y uso de redes neuronales, así como la gestión de las señales para el control del manipulador. Es importante resaltar que la implementación del sistema de posicionador no es descrita en este artículo, enfocándose solamente al procesamiento y adecuación de las imágenes. Categoría C2)

Index Terms- Iluminación, manipulador tipo pórtico, reconocimiento de formas, redes neuronales artificiales, ubicación espacial, visión artificial.

I. INTRODUCCIÓN

UALQUIER sistema manipulador autónomo diseñado para implementarse en un entorno desconocido, necesita

de múltiples sensores (mecánicos, ultrasónicos e infrarrojos) e implementar diferentes estrategias de control para evitar colisiones con obstáculos y detectar con certeza los objetivos de su entorno para desplazarse a un punto especifico. Una alternativa utilizada actualmente, son los sistemas de procesamiento digital de imágenes como los presentados en los trabajos [1-3], para la detección y reconocimiento de objetos en el espacio de trabajo. Estos modelos de percepción le permiten al sistema manipulador tener un grado de autonomía mayor y le ayudan en la toma de decisiones.

Una de las consideraciones principales al momento de diseñar los sistemas de reconocimiento, es la sensibilidad a los

cambios de iluminación, requiriendo que los algoritmos de filtrado, detección, y segmentación sean ajustados según las condiciones del entorno donde se quiera experimentar. Algunos de los sistemas más avanzados se basan en conceptos de inteligencia artificial e implementan técnicas basadas en lógica Fuzzy y redes neuronales [4-5].

En este orden de ideas, el presente artículo propone una metodología de localización de uno o varios objetos, con el fin de controlar la locomoción del manipulador para llegar hasta él. La investigación está basada principalmente en la visión artificial por computador, para manipular las imágenes de un entorno, digitalizadas por medio de una sencilla cámara Web1.

En la sección II se realiza la descripción de la metodología utilizada para el reconocimiento de formas y colores de los objetos, la cual detalla los principales parámetros considerados. En dicha sección se presentan también los métodos de aprendizaje a partir de redes neuronales, a las cuales se les asigna como parámetros de entrada un conjunto de valores numéricos que son el resultado de diferentes propiedades de forma y color de las figuras analizadas (círculos, cuadrados, triángulos, rectángulos).

Por otra parte, la aplicación implementada, así como la descripción del software de reconocimiento se proporcionan en la Sección III. Finalmente, se presenta un conjunto de conclusiones y comentarios del trabajo realizado, buscando que el lector comprenda, de manera global, que consideraciones se deben tener en cuenta para el desarrollo de este tipo de sistemas de reconocimiento.

II. RECONOCIMIENTO DE COLORES Y FORMAS

En esta sección, se realizará una breve descripción de la metodología utilizada para el reconocimiento e identificación de patrones implementado en el presente trabajo. Es importante recalcar al lector que se han seleccionado criterios de color, forma y tamaño; los cuales permiten un reconocimiento básico de un objeto. Cabe destacar, que para efectos de la implementación del programa de reconocimiento, se ha recurrido a la plataforma MATLAB® 7.0, resaltando el uso de las herramientas suministradas para el tratamiento de

1 Se recurre a este tipo de cámaras buscando la reducción de costos en la aplicación final.

Identificación de Formas, Colores, Tamaño y Ubicación Cartesiana de Objetos Mediante Métodos de Visión Artificial Aplicado al

Control de Manipuladores Robóticos Sergio Andrés Zabala, Gianni Yasser Rivera, Jhonny Marvin Maldonado y José Manuel Parra

C

Artículo recibido Julio 11, 2008; revisado Agosto 25,2008. Este trabajo fue apoyado económica y logísticamente por la Universitaria de Investigación y Desarrollo- UDI. S. Zabala, G. Rivera, J. Maldonado y J. Parra están vinculados al Grupo de Investigación en Robótica, Control y Procesamiento de Señal GPS, Universitaria de Investigación y Desarrollo(UDI), Bucaramanga, Colombia ([email protected], [email protected], [email protected]).

Page 15: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 15

imágenes y redes neuronales. Sin embargo, el objeto central de este artículo es presentar la metodología implementada, así como los resultados obtenidos en aplicaciones específicas, sin entrar en detalles de la programación del mismo.

A. Reconocimiento de Colores

Una de las mayores dificultades de muchas tareas de visión es adaptar el sistema automáticamente a los cambios de iluminación. En el caso del proyecto, la imagen capturada por la cámara Web presenta un alto contenido de ruidos y sombras, como se muestra en la Fig. 1(a), las cuales afectan los resultados de las etapas de segmentación, binarización y reconocimiento de forma. Para reducir este inconveniente, se ha realizó una etapa de pre-procesamiento, la cual se fundamenta en una conversión del espacio RGB al espacio HSV y en el posterior uso umbrales para cada componente. En este proceso, la componente de intensidad (V) se homogeniza con un valor de 0.9 para eliminar el efecto de la sombra. El ruido se minimiza modificando la componente de saturación, niveles inferiores a 0.2 se igualan a cero y valores mayores se igualan a 0.6. La componente de matiz (H) no se modifica porque esta contiene la información del color. Un ejemplo de dicho procedimiento se evidencia en la Fig. 1(b).

(a) (b)

Fig. 1. Procesamiento inicial de la imagen. (a) Imagen original. (b) Imagen filtrada.

Para seleccionar las figuras presentes en el escenario de trabajo que compartan el mismo color, se entrenó una red neuronal probabilística PNN [4], utilizando el comando newpnn de la toolbox de MATLAB. Para su entrenamiento se utilizó como dato de entrada un vector constituido por una paleta de 256 niveles de color y la salida es un vector de igual tamaño, con valores de cero y uno, donde un uno representa la posición correspondiente al nivel de color que se quiere reconocer y un cero lo que se desea descartar (Fig. 2). Se debe ser cauteloso al momento de seleccionar los parámetros de la red neuronal, como es el caso del spread, el cual depende de las características del entorno en el que se esté trabajando como el tipo de iluminación e intensidad de los colores que serán segmentados.

Para observar los efectos causados por la iluminación sobre la segmentación de los colores se tomaron imágenes con luz natural y luz amarilla producida por bombillas de 100 Watts. En la Fig. 3(a)-(b) se observa que la técnica implementada bajo esta condición no responde de forma óptima, ya que no identifica el color verde.

Fig. 2. Datos de entrenamiento para una red PNN

El problema se centra en la etapa de filtrado, debido al alto contenido de luz blanca la figura de color verde toma una tonalidad cercana al nivel de gris, y al realizar las modificaciones en el espacio HSV se elimina, pero se resalta que la red responde de forma adecuada para los demás colores: rojo, azul y amarillo.

(a) b) Fig. 3. Iluminación con Luz Natural, a) Imagen original, b) Imagen Segmentada.

En el segundo caso, recurriendo a la iluminación con luz amarilla, se percibe un cambio en el color de las figuras en la imagen captada por la cámara Web, el verde toma una tonalidad cercana al azul y el amarillo se acerca al color naranja; al pasarla por el filtro este comportamiento se resalta y la red neuronal no va responder de forma satisfactoria (Fig. 4).

a) b) Fig. 4. Iluminación con Luz Amarilla, a) Imagen original, b) Imagen Segmentada

B. Reconocimiento de formas

La función de los algoritmos de reconocimiento es detectar e identificar cada objeto segmentado de una escena y asignarle una etiqueta. Una limitante en la mayoría de los sistemas de visión, es que los niveles de reconocimiento trabajan objetos que se supone han sido segmentados como unidades individuales. Otra limitación común es que las imágenes se deben tomar con una geometría de visión conocida, a menudo perpendicular al espacio. Esto hace que disminuya la diversidad de características de forma, simplificando la segmentación y la descripción, reduciendo a su vez las posibilidades de ocultación de detalles en las imágenes [6].

El problema de la descripción se centra en extraer características de un objeto para reconocerlo. Por lo general, los descriptores deben ser independientes del tamaño, la localización y orientación del objeto, además deben contener

Page 16: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 16

suficiente información de discriminación para distinguir un objeto de otro [7]. En esta etapa lo que se hace básicamente, es reducir la tarea de descripción de una imagen en dos dimensiones a la descripción de una función unidimensional por medio de la signatura de las figuras, que es una representación o modelo funcional unidimensional de un borde a la cual se le extraen propiedades características como son los coeficientes de Fourier aplicando el algoritmo de la Transformada rápida de Fourier (FFT), parámetros topológicos como la redondez, compacidad y excentricidad y otros datos estadísticos como el valor medio, la media aritmética, media geométrica, media armónica, desviación estándar y la mediana. En la Fig. 5 se muestra un ejemplo de la extracción de descriptores para un cuadrado.

Fig. 5. Descriptores de forma para un cuadrado

Los datos extraídos de la signatura son introducidos a una red back-propagation [6-7] previamente entrenada con un número de 41 figuras planas en las que se encuentran 12 cuadrados, 8 círculos, 12 triángulos y 9 rectángulos, en diferentes tamaños y orientación. El vector de salida se construye asignándole a cada figura un número que la identifique, donde un uno representa un cuadrado, un dos un rectángulo, el tres es un círculo y el cuatro un triángulo.

Con el fin de validar la efectividad de la metodología utilizada para el reconocimiento de formas, se analizó el comportamiento de la red, con una imagen en la cual se encuentran figuras superpuestas de diferente color y forma (Fig. 6 y Fig. 7). Para las diferentes figuras se realizaron decenas de pruebas, donde se observa que el sistema responde de forma adecuada. Los resultados erróneos se presentan en figuras con dimensiones inferiores a 5cm en sus lados, debido a la resolución que tiene la cámara, que elimina el detalle de los bordes y esquinas en cada figura, aproximando, por ejemplo, un cuadrado a un círculo. En el caso que se unan dos figuras del mismo color, la red la aproxima a una de las cuatro figuras que se utilizaron para el entrenamiento, ya que las toma como un solo objeto.

Fig. 6. Reconocimiento de formas en figuras unidas de diferente color.

III. DESCRIPCIÓN DEL PROTOTIPO FINAL

Para los propósitos de la aplicación de las pruebas y desarrollos descritos en un ambiente real, se ha planteado y trabajado sobre las características motrices de un manipulador tipo pórtico con cuatro grados de libertad, tres de desplazamiento y uno de orientación.

Al trabajar con este tipo de diseños fue necesario crear un algoritmo de control motriz flexible, el cual permitiera ajustar las características físicas (longitud y área) del manipulador, ya que la dimensión del área de trabajo puede variar dependiendo de la ubicación de la cámara Web. La interfaz gráfica, como ya se comentó, fue desarrollada en el entorno de MATLAB 7.0, en ella el algoritmo reconoce y ubica automáticamente la posición y orientación y área de una figura que selecciona el usuario. En el aparte A. de la presente sección se describirá con mayor detalle este aplicativo.

Fig 7. Reconocimiento de Formas en figuras unidas de un mismo color.

En este orden de ideas, se plantea entonces un escenario iluminado con luz blanca fluorescente, uniformemente distribuida, de tal forma que se presente la menor cantidad de ruido y sombras posibles en la imagen. El entorno, en el que se trabajó abarca un área de 1.10m de ancho por 0.80m de largo, pintada de color blanco, en el se encuentran distribuidas de forma aleatoria, figuras planas de diferentes tamaños con forma circular, cuadrada, triangular o rectangular, de color rojo, verde, azul o amarillo. El escenario lo complementa una cámara WEB ubicada a una altura de 1.40m, que captura imágenes a una velocidad de 15 cuadros por segundo, con una resolución de 640x480 píxeles (Fig. 8).

A. Descripción aplicativo software de reconocimiento y control de posición

Luego de realizar los análisis y pruebas descritas sobre el espacio trabajado, se desarrolló el aplicativo software , el cual cuenta con una interfaz de usuario constituida por una pantalla principal, presentada en Fig. 9(a) y con el subprograma para

Page 17: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 17

el entrenamiento de la red neuronal con los objetos utilizados y registrados por la imagen. Fig. 9(b).

Fig. 8. Esquema del escenario de trabajo.

(a)

(b) Fig. 9. Aplicativo Software. (a) Ventana principal para reconocimiento y control del manipulador. (b) Ventana del entrenador de la red neuronal

En síntesis, la interfaz principal permite visualizar el número de figuras, ya sea por forma, color, tamaño; a su vez permite combinar criterios de elección.

También cuenta con un control manual del elemento posicionador, el cual envía las señales a un puerto serie convencional, encargado de la gestión del movimiento del manipulador descrito con anterioridad. Finalmente, se cuenta con una herramienta denominada Entrenador para el reconocimiento de figuras, la cual permite realizar la adecuación de la red neuronal, basado en el análisis de las figuras existentes fundamentándose en la forma, en las propiedades métricas descritas en la Fig. 5 y en el número de neuronas por capa.

IV. CONCLUSIONES

En este documento se ha presentado la metodología para el desarrollo de una herramienta para el reconocimiento de figuras, basada en descriptores de forma, color y tamaño; aplicado en el control de manipuladores y posicionadores

robóticos. En general, se pueden destacar los siguientes elementos como conclusiones del presente trabajo:

• Los diferentes tipos de iluminación sobre el escenario afectan directamente los algoritmos de reconocimiento de color y forma, debido a que la etapa previa de acondicionamiento de la imagen no genera los resultados esperados. Esta situación se evidencia en las imágenes con demasiada iluminación, donde no es conveniente homogenizar la componente de intensidad, pues ocasiona saturación y eliminación e figuras.

• Se vuelve fundamental el uso de filtros adaptativos para el mejoramiento de la iluminación, buscando aumentar la capacidad de operación del manipulador en ambientes no controlados.

• El principal problema del reconocimiento de formas es su dependencia directa con el algoritmo de segmentación de colores, porque al presentarse problemas en las condiciones de iluminación no se identificarían de forma clara los bordes de las figuras, generándose datos erróneos en los descriptores de forma utilizados. Una buena solución para este problema es realizar algoritmos de segmentación y reconocimiento totalmente independientes.

• Se deben tener en cuenta todas las características mecánicas del manipulador a la hora de desarrollar los algoritmos de control y locomoción porque la imprecisión de su diseño afecta de forma considerable sus movimientos.

• La desventaja de trabajar sobre escenarios que suponen un entorno con cámaras en posición fija, es que el espacio de trabajo se ve limitado al rango de visión de la cámara implementada, reduciendo el área de exploración. Se plantea, como trabajo futuro ubicar una cámara móvil sobre el manipulador, para tener una visión periférica del ambiente, además se propone la realización de comunicación vía inalámbrica.

V. REFERENCIAS

[1] AMAYA QUINTERO, Yamit Danilo. Universidad Industrial de Santander, Bucaramanga. Facultad de Ingenierías Fisico-Mecanicas. Escuela de ingenierías eléctrica, electrónica, y telecomunicaciones. Localización dinámica de móviles y obstáculos en una escena controlada para aplicaciones en robótica. Marzo 2005.

[2] FLÓREZ, Juan Fernando. Universidad del Cauca, Colombia. Herramienta para la experimentación con robots móviles aplicando control inteligente y visión por ordenador.

[3] RAMOS, Marcos Daniel. Escuela Politécnica Universidad de Alcalá. Micro-robot futbolista GOLIATTOR.

[4] HAYKIN, Simon, Neural networks a comprehensive foundation. 2ed. Ed. Prentice-Hall. 842 p. 1999. ISBN 0139083855.

[5] M.A. Zamora, L.M. Grupo de Visión, Robótica y Proy. Universidad de Murcia. H.Martínez, A.G.Skarmeta. Dpto. Inf., Inteligencia artificial y electrónica Facultad de informática Universidad de Murcia. Navegación planificada de un robot móvil en entornos interiores desconocidos.

[6] PAJARES MARTINSANZ, Gonzalo. Redes neuronales artificiales: fundamentos modelos y aplicaciones. Ed. Addison-Wesley Iberoamericana 390p. 1995. ISBN 0-201-87895-X.

[7] PAJARES MARTINSANZ, Gonzalo. Visión por computador: Imágenes digitales y aplicaciones. Ed. Alfaomega. 764p. 2002. ISBN 970-15-0804-1.

Page 18: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 18

VI. BIOGRAFÍAS

Sergio Zabala (1982) nació en Bucaramanga, Colombia el 7 de Noviembre de 1921. Obtuvo su grado de bachiller del Colegio Franciscano del Virrey Solís en 1999. Realizó sus estudios de pregrado en Ingeniería Electrónica en la Universidad Industrial de Santander, donde obtuvo su titulo en Octubre de 2005. En su experiencia profesional cuenta con la participación como docente de tiempo completo de la Universitaria de Investigación y Desarrollo, así como docente cátedra de la Universidad Industrial de Santander. Participa

actualmente en la procesos de investigación en la UDI, como lider del grupo de investigación en Robótica, Control y Procesamiento de Señales GPS. Actualmente, desarrolla sus estudios de Maestría en Ingeniería Electrónica en la UIS.

Gianni Yasser Rivera (1975) nació en Bucarmanga en el año de 1979.. Llevó a cabo sus estudios en la Universitaria de Investigación y Desarrollo obteniendo el grado de Ingeniero Electrónico en el año 2004. Se desempeña actualmente como jefe del laboratorio de Metrología de la Universitaria de Investigación y Desarrollo; además como asesor para el grupo de investigación GPS-UDI en el área de Sensores y Control de Procesos. Ha liderado varios proyectos de pregrado en el área de redes de sensores,

procesamiento de imágenes y tratamiento de señal.

Jhonny Marvin Maldonado (1979) nació en Villanueva en el año de 1979. Estudió su bachillerato en el Colegio Nacional Roque de Alba. Llevó a cabo sus estudios en la Universitaria de Investigación y Desarrollo obteniendo el grado de Ingeniero Electrónico en el año 2007. Se desempeña actualmente como trabajador independiente en el área de redes de datos y procesos de automatización.

Jose Manuel Parra (1984) nació en Providencia en el año de 1984. Estudió su bachillerato en el Colegio de la Salle. Llevó a cabo sus estudios en la Universitaria de Investigación y Desarrollo obteniendo el grado de Ingeniero Electrónico en el año 2007. Se desempeña actualmente como trabajador independiente en el área de redes de datos y procesos de automatización.

Page 19: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 19 - 22

Arquitectura hardware para la implementación FPGA de algorit-mos de extracción de bordes en imágenes

Lorena Vargas Quintero, Leiner Barba Jiménez, Cesar Torres, Lorenzo Mattos

Resumen— Este trabajo describe la implementación de una arquitectura hardware sobre FPGA de algoritmos de extracción de bordes en imágenes basados en técnicas orientadas al píxel. Los bordes son píxeles alrededor de los cuales la imagen representa una brusca variación en los niveles de gris y la obtención de ellos representa una de las aplicaciones más utilizadas en procesamiento digital de imágenes. En el diseño, los algoritmos de extracción de bordes son desarrollados usando Lenguaje de Descripción de Hardware (VHDL). El FPGA es usado para la implementación gracias a que pueden reducir considerablemente el tiempo de desarrollo, es fácil de reprogramar, tiene bajo precio, y permite implementaciones tipo hardware de sistemas completos en forma rápida y no muy costosa. La arquitectura es evaluada usando imágenes de diferentes tamaños y características.

Palabras claves — Procesamiento digital de imágenes, detección de bordes de una imagen, Lenguaje de Descripción de Hardware VHDL, Arreglo Compuertas de Campo Programable FPGA.

I. INTRODUCCIÓN

OS bordes son una de las características mas importantes en una imagen, por lo que su detección constituye una de las tareas más relevantes en el procesamiento digital de

imágenes debido, fundamentalmente, a que están relacionados con la delimitación y segmentación de zonas. La detección de bordes ha sido extensamente analizada en visión por computador durante los últimos años, [1] – [8].

El problema de la detección de bordes en imágenes digitales se ha abordado en la literatura desde dos puntos de vista diferentes: técnicas orientadas al pixel, y técnicas orientadas a la región. Las técnicas de detección de bordes orientadas al pixel se basan en la detección de discontinuidades (transiciones fuertes) en la información de los pixeles de una imagen, mientras que las técnicas orientadas a la región determinan el proceso de detección mediante una medida cuantitativa de ciertas propiedades de un grupo conexo de pixeles [9].

Los bordes en imágenes en escala de grises pueden ser considerados como un cambio abrupto de los niveles de gris en la posición del píxel. Un cambio en la función imagen se puede describir por un gradiente que apunta en la dirección de mayor crecimiento de la función imagen. Por lo tanto una

Todos los autores son miembros del Grupo de Óptica e Informática - Universidad Popular del Cesar.

técnica es medir la magnitud del vector gradiente en la posición del píxel. Este método trabaja bien cuando la transición del píxel es bastante abrupta como una función escalón. Cuando sucede lo contrario es más conveniente aplicar la técnica de la segunda derivada [10].

En años recientes, los sistemas hardware basados en FPGA han sido ampliamente usados para desarrollar diferentes tipos de aplicaciones digitales incluyendo procesadores, maquinas de computación específica y tarjetas de desarrollo de rápido procesamiento. Un sistema con hardware reconfigurable FPGA tiene múltiples ventajas, sobre todo porque pueden agilizar el tiempo de procesos de muchas aplicaciones en comparación con implementaciones en herramientas de software. Debido a su naturaleza reconfigurable, los FPGAs pueden implementar múltiples tareas en tiempos diferentes, por lo que los sistemas pueden ser escalables [11].

Algunos trabajos de implementación de filtros de bordes de imágenes sobre FPGA han sido propuestos [12]-[13].

Este trabajo propone una arquitectura hardware para la implementación FPGA de algoritmos de extracción de bordes de imágenes basados en técnicas de primera y segunda derivada.

El resto del artículo es organizado así. La sección II describe las técnicas de detección de bordes; la sección III y IV ilustra la arquitectura hardware de los algoritmos implementados; la sección V resume la implementación FPGA. La sección VI muestra los resultados y la sección VII las conclusiones.

II. TECNICAS DE DETECCIÓN DE BORDES ORIENTADAS AL PIXEL

Dentro de los distintos operadores utilizados para la detección de bordes, se suele distinguir entre los operadores de la primera y de la segunda derivada. Entre los operadores de la primera derivada, cabe destacar aquellos que hacen uso del gradiente. Los de la segunda derivada los más importantes son la Laplaciana y la Laplaciana de la Gaussiana. El uso de estos tipos de operadores está muy extendido y conforman la base de muchos filtros utilizados en la actualidad.

A. Técnicas de Primera Derivada

Un borde es una variación significativa del nivel de gris. Tomando la derivada en cada posición de píxel, se puede determinar la rata de cambio del nivel de intensidad. La primera derivada es cero en todas las regiones donde el nivel de gris es constante y tiene un valor distinto de cero en

Arquitectura Hardware para la Implementación FPGA de Algoritmos de Extracción de Bordes

en Imágenes

Lorena Vargas Quintero, Leiner Barba Jiménez, Cesar Torres, Lorenzo Mattos

L

Page 20: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 20

transiciones de nivel de gris, ver figura 1. Por tanto, un cambio de intensidad o borde, se manifiesta como un cambio brusco en la primera derivada.

Figura 1. Representación de la función del borde de una imagen

Teniendo en cuenta este proceso, las técnicas de primera derivada utilizan el operador gradiente, el cual puede determinar la región de máximo crecimiento de una función:

y

yxIj

x

yxIiyxf

∂∂

+∂

∂=∇

),(),(),( (1),

donde I(x,y) representa el píxel de entrada, i y j son los vectores unitarios en la dirección x e y.

Basado en el concepto de variación de intensidad de los niveles de grises se introdujo un operador para la detección digital de los bordes: las máscaras, las cuales representan aproximaciones de diferencia finita del gradiente ortogonal o del gradiente direccional [13].

Sobel y Prewit proponen dos tipos de máscaras 3x3 para calcular el gradiente de la función imagen en una posición de píxel dada, a través de la convolución entre ellas y una ventana de la imagen centrada en el píxel que se esta analizando:

Figure 2. Operadores de Sobel y Prewit para calcular el gradiente

Posteriormente, la magnitud del vector gradiente es definida como:

22 ),(),(),( yxGyyxGxyxG += (2)

La forma de determinar si G(x, y) corresponde a un píxel de borde es aplicando un proceso de umbralización:

⎩⎨⎧

>=<

=TyxGsi

TyxGsiyxEdge

),(0

),(,1),( (3)

Para la implementación en hardware la magnitud del gradiente suele usar esta aproximación:

),(),(),( yxGyyxGxyxG += (4)

B. Técnicas de Segunda Derivada

La segunda derivada, por su parte, es cero en todos los

puntos, excepto en el comienzo y en el final de una transición de intensidad. Cuando ocurre un cambio de intensidad o borde en una imagen, se presenta un paso por cero, es decir, se produce un cambio de signo en su valor en la segunda derivada, tal como se observa en la figura 1.

Uno de los operadores de segunda derivada más usado es la máscara Laplaciana, la cual es un filtro pasaalto que resalta los cambios bruscos dentro de la imagen (figura 3).

Figura 3. Máscaras Laplacainas para la detección de bordes

Matemáticamente este filtro es descrito como: )1,()1,(),1(),1(),(4),( +−−−+−−−= yxIyxIyxIyxIyxIyxG (5 ),

donde I(x,y) es el píxel de la imagen de entrada. Análogamente al proceso anterior se convoluciona cualquiera de las máscaras de la figura anterior con la imagen de entrada, y aplicando posteriormente el proceso de umbralización descrito en la ecuación (3) se obtiene el píxel de borde final.

III. ARQUITECTURA HARDWARE DEL ALGORITMO DE

DETECCIÓN DE PRIMERA DERIVADA

El algoritmo de detección usando la primera derivada es desarrollado en varios bloques de procesamiento, como se muestra en la figura 4; aquí se utilizó una metodología de diseño descendente (Top Down), en la cual todos los bloques son implementados y analizados individualmente para luego unirlos en un solo sistema.

Figura 4. Diagrama de bloques del algoritmo de detección de primera derivada.

Los pixeles de la imagen de entrada se almacenan en el bloque llamado “Block RAM IMAGE”. El píxel que se está procesando y su vecindad son convertidos como un vector fila a través del bloque “Buffer Shift”, lo cual permite procesar todos los pixeles de la vecindad paralelamente. La convolución entre las máscaras definidas en la figura 2 y la

Page 21: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 21

imagen de entrada se realiza a través de las unidades de procesamiento de multiplicación “Multiplication Block” y de suma “Sum Mask”. Cada bloque sumador procesa los datos de una de las dos máscaras. Finalmente la umbralización y el píxel de borde resultante se obtiene en el bloque “Mask Umbral”. La señal “sel_mask” indica el tipo de operador a utilizar: Sobel o Prewit.

Para la implementación hardware en FPGA fue adoptado el Lenguaje de Descripción de Hardware VHDL (VHSIC Hardware Description Languaje). En la figura 5 se observa el diagrama esquemático de algoritmo implementado utilizando este estándar de diseño electrónico.

Figure 5. Diagrama esquemático de algoritmo de detección de primera derivada implementado en VHDL

IV. ARQUITECTURA HARDWARE DEL ALGORITMO DE

DETECCIÓN DE SEGUNDA DERIVADA

La arquitectura hardware del algoritmo de segunda derivada es similar al de primera derivada. La variación está dada básicamente por el bloque sumador “Sumation” que remplaza los dos bloques “Sum Mask” de la figura 4. Esto se debe a que esta técnica solo utiliza una máscara de filtro pasa alto para la detección. El diagrama de bloques de este algoritmo es ilustrado en la figura 6.

Asimismo, la implementación FPGA del algoritmo se hace a través del diseño en VHDL, cuyo esquemático puede ser observado en la figura 7.

V. IMPLEMENTACIÓN FPGA

El sistema ha sido mapeado en un dispositivo FPGA de Xilinx de la familia Spartan II, de referencia XC2S200 a través de la tarjeta de desarrollo Digilab 2 distribuida por Digilent. La arquitectura fue implementada usando el software ISE de Xilinx, versión 9.1, la cual suministra varias herramientas para síntesis del diseño, técnicas de configuración, análisis de desempeño, incluyendo recursos, velocidad y consumo de potencia. En la tabla uno se resume la

utilización de recursos del FPGA. Tabla 1. Resumen de Utilización de recursos en el FPGA

Number of Slices: 174 out of 2352 7%

Number of Slice Flip Flops: 100 out of 4704 2%

Number of 4 input LUTs: 245 out of 4704 5%

Number of bonded IOBs: 30 out of 144 20%

Number of TBUFs: 140 out of 2352 5%

Number of GCLKs: 1 out of 4 25%

Frecuencia de Trabajo 50 MHz

Adicionalmente se hizo un análisis de potencia con la herramienta Xilinx XPower y se estima que la potencia máxima consumida por el diseño es de 13 mW.

Figura 6. Diagrama de bloques del algoritmo de detección de segunda derivada

Figure 7. Diagrama esquemático de algoritmo de detección de segunda derivada implementado en VHDL. La señal “sel_mask” determina la máscara Laplaciana.

VI. RESULTADOS

Para evaluar el desempeño de los algoritmos implementados se desarrollo una interfaz gráfica en Matlab 7.1, la cual permite cargar las imágenes digitales que se quieren analizar, enviarlas serialmente al FPGA, recibir la

Page 22: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 22

imagen procesada por el mismo medio y finalmente visualizarla. Se utilizaron imágenes de diferentes tamaños, en escala de grises con cada pixel codificado entre 0 (color negro) y 255 (color blanco). La figura 8 muestra una imagen inicial a ser procesada, con un tamaño de 400 x264 pixeles en escala de grises.

Figura 8. Imagen inicial de 456x264 pixeles

En La figura 9 se observa los resultados al aplicar el operador de Prewit con valores de umbral T = 60 y T = 120.

(a) (b) Figura 9. Resultado de aplicar el operador de Prewit, (a) T= 60, (b) T = 120.

Asimismo se procesa la imagen utilizando el operador de Sobel y la máscara 1 del operador Laplaciana para un umbral T = 60. La figura 10 ilustra estos resultados.

(a) (b) Figura 10. Resultado de aplicar los operadores con T= 60, (a) Sobel, (b) Máscara 1 del filtro Laplaciana.

Otras imágenes fueron segmentadas con cada uno de los filtros y utilizando diferentes valores de umbral.

Para evaluar el desempeño de los algoritmos se crearon imágenes de bordes sintéticas, como la imagen mostrada en la figura 11. Conociendo cuales son los bordes exactos de la imagen creada se puede determinar el desempeño de cada uno de los algoritmos de detección sobre dicha imagen.

La tabla 2 resume el desempeño promedio de cada filtro para detectar los bordes sobre las imágenes creadas, con umbral T=60.

Tabla 2. Desempeño promedio de los filtros en la detección Filtro Porcentaje de Desempeño

Prewit 93.00% Sobel 93.05% Laplaciana (Máscara 1) 98.00%

Figura 11. Imagen de entrada creada y resultado después de aplicar los diferentes operadores de detección con T = 60.

VII. CONCLUSIONES

Se desarrollo una arquitectura hardware para la implementación FPGA de algoritmos de extracción de bordes que emplean técnicas de primera y segunda derivada. De los operadores el que presentó mejor desempeño en la evaluación fue el filtro Laplaciano utilizando la máscara 1, seguido por Sobel y Prewit. Además el filtro Laplaciano muestra una mejor apariencia visual de los bordes detectados.

El tiempo de completo para procesar un pixel de imagen, es decir hacer la convolución entre la máscara con la vecindad del pixel (en total 9 pixeles) y después de tener los pixeles almacenados en memoria es de 780 nseg, es decir 39 ciclos de reloj para una frecuencia de trabajo de 50 MHz. Por tanto, se puede inferir que el tiempo de proceso de una imagen completa de tamaño 256x256 pixeles es de 51.11 mseg.

REFERENCIAS

[1] J. F. Canny, “A computational approach to edge detection,” IEEE Trans Pattern Anal. Machine Intell., vol. 8, pp. 679–698, Sept. 1986.

[2] R. Deriche, “Using Canny’s criteria to derive a recursively implemented optimal edge detector,” Int. J. Comput. Vis., vol. 1, no. 2, pp. 167–187, 1987.

[3] T. Lindeberg, “Edge detection and ridge detection with automatic scale selection,” Int. J. Comput. Vis., vol. 30, no. 2, 1998.

[4] D. Marr and E. Hildreth, “Theory of edge detection,” in Proc. Royal Soc. London B, 1980, pp. 187–217.

[5] V. Torre and T. A. Poggio, “On edge detection,” IEEE Trans. on Pattern Anal. Machine Intell., vol. 8, pp. 148–163, Mar. 1986.

[6] M.C. Shin, D.B. Goldgof, K.W. Bowyer, and S. Nikiforou, “Comparison of Edge Detection Algorithms Using a Structure from Motion Task,” IEEE Trans. System, Man, and Cybernetics—Part B: Cybernetics, vol. 31, pp. 589-601, Aug. 2001.

[7] J. Prewitt, “Object enhancement and extraction,” Picture Process. Psychopict., pp. 75–149, 1970.

[8] J. Canny, “Finding edges and lines in images,” MIT Artif. Intell. Lab., Cambridge, MA, Tech. Rep. AI-TR-720, 1983.

[9] R.C. González, R.E. Woods, Digital Image Processing, Addison-Wesley, 1993.

[10] Koschan, A. Abidi, M. “Detection and classification of edges in color images”. IEEE Signal Processing Magazine, Volume 22, Issue: 1 Pag.: 64- 73, 2005

[11] G. Wall, F. Iqbal, J. Isaacs, L. Xiuwen, S. Foo, “Real time texture classification using field programmable gate arrays”. Applied Imagery Pattern Recognition Workshop, 2004, Proceedings. 33rd, pp.130 - 135. Oct. 2004.

[12] I. Bravo, R. Mateos, A. Gardel , A. Hernández, J.L. Lázaro, R. Rivera. “Detección de bordes de imágenes mediante máscaras de 3x3 con FPGA's”. III Jornadas de Computación Reconfigurable y Aplicaciones (JCRA) Sept. 2003, Madrid.

[13]Note Application:“Edge Detection in AT6000 FPGAs” in:http:/www.eetasia.com/ART_8800062747_499485_AN_8b2b1b38.HTM

Page 23: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 23 - 26

Transformada wavelet y técnicas de fi ltrado no lineal aplicadas a la detección de microcalcifi caciones en mamografías digitales

Lorena Vargas Quintero, Leiner Barba Jiménez, Cesar Torres, Lorenzo Mattos

Resumen — En este trabajo se utilizaron técnicas de

segmentación y filtrado no lineal de imágenes, así como técnicas de procesamiento multiresolución como la transformada Wavelet, aplicadas a imágenes mamográficas digitales para la detección de microcalcificaciones, las cuales representan los primeros indicios acerca de la presencia de cáncer de mama. Las imágenes mamográficas tienen la característica de ser de bajo contraste, lo que muchas veces dificulta la interpretación del Radiólogo, por lo cual se desarrolló un método para mejorar esas imágenes y detectar dichas anomalías. Las imágenes mamográficas digitales fueron tomadas de la base de datos MIAS (Mammographic Image Analysis Society), debido a que poseen una completa información acerca del cáncer de mama y de la interpretación que debe hacerse de las mamografías. Palabras claves — Transformada Wavelet, procesamiento de imágenes, filtrado de imágenes, mamografías digitales, microcalcificaciones.

I. INTRODUCCIÓN L cáncer de mama es la principal causa de mortalidad en las mujeres según la Organización Mundial de la Salud

(World Health Organization). El diagnostico temprano de la enfermedad puede significar una opción de recuperación para personas que la padecen. Las microcalcificaciones constituyen un importante signo radiológico en una mamografía y pueden ser analizadas de acuerdo a su tamaño, forma, número y distribución. El número de calcificaciones que conforman un clúster es un indicador de malignidad o benignidad. Mientras que el número de ellas en sí mismo es arbitrario, los Radiólogos tienden a decir que el número mínimo de calcificaciones debe ser de cuatro a seis, para ser relevante, ya que un número menor raramente conlleva a la detección de cáncer de mama [1].

Los mamogramas son las imágenes radiológicas más difíciles de ser interpretadas, debido al bajo contraste que frecuentemente presentan, además ellas pueden mostrar distintas características y patrones dependiendo de la anatomía de la mama y la densidad del tejido, el cual varía con la edad de la paciente, y su condición hormonal o física [2].

Varios métodos computarizados para la detección de microcalcificaciones y mejoramiento de contraste de imágenes

Todos los autores son miembros del Grupo de Óptica e Informática - Universidad Popular del Cesar

mamográficas basados en técnicas de morfología matemática, redes neuronales y análisis wavelet han sido propuestos[3]-[8].

Laine et al. [8] usa tres representaciones multiescala: 1) la transformada de wavelet dyadic, 2) la transformadaφ , y 3) la transformada wavelet hexagonal. Cada una de estas representaciones constituye una jerarquía de las imágenes multiescala las cuales localizan información importante de la imagen en diferentes espacios frecuenciales, aplicando operadores no lineales a estas representaciones multiescala para mejorar características deseadas. Los resultados son comparados con métodos tradicionales usados para el mejoramiento de imágenes tales como la mascara unsharp y histogramas adaptativos y se encontró que los algoritmos de procesamiento basados en wavelet fueron superiores.

Nishikawa et al. [9] desarrollo una técnica para la detección automática de microcalcificaciones. Este método consiste en tres etapas: el primero es la reducción de ruido en la imagen mamográfica, las potenciales microcalcificaciones son identificadas por los niveles de gris, tercero, el número de falsos positivos detectados son reducidos según la distribución espacial y la relación entre tamaño, forma y valor del pixel en la imagen mamográfica.

Algunos trabajos desarrollados que exponen la teoría, conceptos y aplicaciones del análisis wavelet son reportados en [10]-[12]. En este trabajo se propone un método para detectar microcalcificaiones en mamografías digitales a través de técnicas de procesamiento de imágenes que permiten mejorar el contraste y técnicas de análisis multiresolución como la transformada wavelet discreta.

II. MEJORAMIENTO DE CONTRASTE DE LA MAMOGRAFÍA DIGITAL

A. Mejoramiento usando una máscara Unsharp La máscara unsharp es usada para mejorar la calidad de la

imagen, enfatizando en su contenido de alta frecuencia, mejorando los bordes y la información de detalles. Esta técnica es un simple y efectivo método ampliamente utilizado en muchas aplicaciones, pero tiene la desventaja que el filtro lineal pasa alto es sensible al ruido [13]. En esta técnica una fracción de la imagen filtrada en pasa alto es adicionada a la imagen original, tal como lo muestra la figura 1.

Transformada Wavelet y Técnicas de Filtrado no Lineal aplicadas a la Detección de

Microcalcificaciones en Mamografías Digitales Lorena Vargas Quintero, Leiner Barba Jiménez, Cesar Torres, Lorenzo Mattos

E

Page 24: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 24

Fig. 1. Diagrama de bloques de la máscara Unsharp

Teniendo en cuenta esto, el algoritmo de la máscara

Unsharp obtiene la imagen O(x,y) desde la imagen de entrada I(x,y) a través de la siguiente ecuación:

),(),(),( yxZyxIyxO λ+= (1) donde Z(x,y) es la señal de corrección a la salida del filtro pasa alto lineal, λ es el factor de mejoramiento que controla el nivel de mejoramiento de contraste de la salida. Un filtro pasa alto comúnmente empleado para este método es el filtro Laplaciano, que puede ser descrito por:

)1,()1,(),1(),1(),(4),(

+−−−+−−−=

yxIyxIyxIyxIyxIyxZ

(2)

Dependiendo de las características de la imagen a procesar, es necesario modificar la máscara del filtro para obtener un mejor contraste de salida. Esto se debe a que las imágenes mamográficas generalmente varían el contraste y la resolución inicial, dependiendo de ciertas características de las mujeres de quienes se obtiene dicha imagen, tal como se mencionó anteriormente.

B. Mejoramiento a través de una modificación de Histograma El histograma de una imagen representa la frecuencia

relativa de ocurrencia de los niveles de gris dentro de una imagen. Las técnicas de modelamiento de histograma modifican una imagen para mejorar la intensidad de la mamografía de tal manera que tenga la forma deseada [14]. Una vez la máscara unsharp es aplicada se procede a modificar los niveles de gris para generar una mejor visualización de las microcalcificaciones en la imagen. Aquí se necesita seleccionar un umbral, el cual permite separar los valores de intensidad de los pixeles correspondientes a microcalcificaciones y el resto de la imagen; esto es posible teniendo un conocimiento a priori de los pixeles de las microcalcificaciones. Para tal efecto se utiliza una función no lineal que puede ser descrita matemáticamente como:

⎪⎩

⎪⎨⎧

<−

≥=

TyxOsiDeTyxOsie

yxPkyxO

kyxO

),(,),(,

),(/),(

/),(

(3)

donde P(x,y) es el pixel de salida, O(x,y) es el pixel de entrada, T es el umbral, D es un entero positivo y k está dada por:

max

max

),(ln),(yxO

yxOk = (4)

donde O(x,y)max es el máximo nivel de gris de la imagen. Es de anotar que los niveles de gris están codificados entre 0 representa el color negro y 255 el color blanco.

Dado que las calcificaciones son componentes de alta frecuencia dentro de la imagen mamográfica, ellas presentan un nivel de intensidad de los pixeles más alto que el resto de la imagen, por tanto con la ecuación (3) se busca dar un poco mas de luminosidad a las calcificaciones en comparación con el resto de la imagen. Por tal razón se observa que los valores entre las componentes de bajo y alto contraste puedan tener un rango considerable entre sus niveles de intensidad resaltando las microcalcificaciones en la imagen mamográfica con respecto al tejido mamario.

III. ANÁLISIS WAVELET El análisis wavelet consiste en la descomposición de una

señal arbitraria en versiones escaladas y trasladadas de la wavelet original, es decir, la idea básica de esta transformada consiste en representar cualquier función arbitraria como una superposición de un conjunto de dichas wavelets o funciones bases, además de adoptar un prototipo de función llamado wavelet madre [15].

A. Análisis wavelet en dos dimensiones El análisis wavelet descompone la señal o imagen en un

conjunto jerárquico de aproximaciones y detalles. Desde un punto de vista de análisis de señales, esto consiste de una descomposición de la señal en una familia de señales de análisis, las cuales son usualmente un método de función ortogonal. Este trabajo emplea la transformada wavelet discreta en dos dimensiones, la cual se define como:

∑∑∈ ∈

==Zx Zy

kj yxgyxfkjCbaC ),(),(),(),( , (5)

NjNjkbacon jj ∈∈== ,,2,2 donde f es la imagen original, g es la función wavelet, a es el factor de escala de la función wavelet, b es un parámetro de traslación de la función wavelet y C(a,b) son los coeficientes obtenidos. El proceso inverso se obtiene por medio de la ecuación:

∑∑∈ ∈

=Zj Zk

kj yxkjCyxf ),(),(),( ,ψ (6)

donde ψ es la función wavelet. Una completa explicación de este proceso se encuentra en [16].

B. Proceso de descomposición wavelet en dos dimensiones El proceso de descomposición wavelet entrega cuatro

imágenes para un nivel de descomposición: una subbanda de aproximación (cA) que muestra la información de baja de frecuencia de la imagen, y tres subbandas de detalles (cDV, cDH, cDD) que muestran la información de alta frecuencia de la imagen. Estas cuatro de salida tienen la mitad del tamaño de la imagen de entrada. El proceso de reconstrucción de la imagen se realiza con las cuatro imágenes de descomposición resultantes. El algoritmo completo para obtener la descomposición wavelet puedes ser visto en [16].

En la literatura existen diferentes tipos de familias wavelet, entre ellas se tienen Haar, Daubechies (dbN), Symlets (symN), Meyer (meyr), las cuales han sido implementadas en el sistema.

Page 25: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 25

IV. DESCRIPCIÓN DEL SISTEMA Una vez segmentada la imagen, el siguiente paso en el

proceso es mejorar el bajo contraste usando la máscara de filtro descrita en la sección II, la cual tiene un tamaño 3x3. La figura 2 muestra el diagrama de bloques del algoritmo desarrollado.

Fig.2. Diagrama de bloques del sistema desarrollado

A través de una modificación de histograma se puede

obtener una imagen donde se resaltan las microcalcificaciones con respecto al resto de la imagen.

En la descomposición wavelet de uno o más niveles, las sub-bandas de aproximación (cA) son suprimidas, debido a que estas contienen las componentes de baja frecuencia de la imagen, por tanto todos los elementos de esta matriz son llevados a cero:

0=cA (7) El filtrado de subbanda se describe a través de un método

de mejoramiento de contraste desarrollado por [8], el cual enfatiza en características mamográficas mientras se reduce el ruido, esta operación se realiza por medio de técnicas de mejoramiento de imágenes local y global basadas en bordes multiescala.

Finalmente, la Transformada Wavelet Discreta Inversa (TWDI) recupera la imagen mostrando solamente las componentes de alta frecuencia detectadas en las sub-bandas de detalles cD (horizontal-cDH, vertical-cDV y diagonal-cDD). Por último se procede a umbralizar la imagen resultante para eliminar algunas partes recuperadas no correspondientes a microcalcificaciones, esto se hace a través de la técnica de umbralización global.

⎩⎨⎧

<≥

=TyxGsiTyxGsi

yxB),(,0),(,1

),(

(8)

V. RESULTADOS Para evaluar los resultados del sistema se usó la base de

datos MIAS (Mammographic Imge Analysis Society), especialmente aquellas imágenes mamográficas que presentan calcificaciones en su diagnóstico; en total son 30 imágenes con calcificaciones. Asimismo, se emplearon diferentes familias wavelet como db2, db4, sym3, coif2.

En la figura 3 se muestra la región ampliada donde se encuentran las calcificaciones de la imagen a procesar. La figura 4 muestra los resultados después de aplicar la máscara unsharp y la modificación de histograma.

Fig.3. Imagen mamográfica a ser analizada y región ampliada donde está localizada la anormalidad.

(a) (b)

Fig. 4. (a) Imagen después de aplicarle la máscara; (b) Imagen después de modificar el histograma.

En la figura 5(a) se ilustra el resultado al aplicar los

algoritmos de las últimas cuatro etapas del proceso (transformada wavelet discreta, filtrado de sub-bandas, transformada wavelet discreta inversa y umbralización).

Análogamente, se aplicó el mismo procedimiento a la imagen de la figura 4 utilizando la familia wavelet Coiflet de orden 2 (coif2) y se obtuvo el resultado de la figura 5(b).

(a) (b)

Fig. 5. (a) Resultados del proceso. Se utilizó la familia wavelet Daubechies de orden 2 (db2), (b) Microcalcificaciones detectadas usando Coiflet 2 (coif2).

Fig. 6. Imagen mamográfica a ser analizada y región ampliada donde está localizada la anormalidad.

Page 26: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 26

Se evaluaron los resultados utilizando una imagen mamográfica de características diferentes, tal como se observa en la figura 6, en la cual se seleccionó una sección de ella para ser analizada.

(a) (b) Fig. 7. (a) Resultado de aplicar la máscara; (b) Resultado de modificar el histograma.

La figura 7 muestra los resultados al aplicar la máscara y la técnica de modificación de histograma. En la figura 8 se aprecia el resultado después de aplicar la TDW, filtrar y reconstruir la imagen utilizando la familia wavelet Daubechies de orden 4 (db4).

Fig. 8. Resultado de aplicar la TWD usando la familia db4

Asimismo, se evalúan los resultados utilizando la familia

wavelet Symlets de orden 3 (sym3), tal como se observa en la figura 9.

Fig.9. Resultado de aplicar la TWD usando la familia sym3

En cada caso, se evaluó el número de microcalcificaciones

y falsos positivos encontrados teniendo en cuenta la información suministrada en [17], y se determinó que los mejores resultados fueron obtenidos con funciones wavelet: db4 (Daubechies de orden 4), coif2 (Coiflet de orden 2) y sym3 (Symlet de orden 3). Asimismo se pudo concluir que la wavelet madre db4 presentó un mayor número de microcalcificaciones detectadas.

VI. CONCLUSIONES Y TRABAJOS FUTUROS El sistema desarrollado puede detectar microcalcificaciones

en imágenes mamográficas a través de la transformada wavelet y técnicas de mejoramiento de contraste. Todas las

imágenes con calcificaciones de la base de dato MIAS se emplearon para probar el sistema. El algoritmo desarrollado para la detección de microcalcificaciones tiene una exactitud promedio de 91% de verdaderos positivos (microcalcificaciones detectadas), y un promedio de 10% de falsos positivos (objetos detectados en la imagen que no son microcalcificaciones). El mejor resultado obtenido fue con la familia wavelet Daubechies de orden 4 (db4), con cuatro niveles de descomposición. Este trabajo puede ser útil como ayuda diagnóstica para los radiólogos en la interpretación de imágenes mamográficas.

Como trabajo futuro se planea la implementación de un algoritmo de reconocimiento utilizando redes neuronales para clasificar las microcalcificaciones detectadas de acuerdo a su tamaño, forma o distribución.

REFERENCIAS [1] James Nguyen, David Fleiszer, “Interactive mammography analysis web

tutorial”, McGill Medicine, Molson Medical Informatics, 2002 at: http://sprojects.mmi.mcgill.ca/mammography/index.htm

[2] João Martins Pisco, Imagiologia Básica, LIDEL, 2003, pp. 65-70 (in portuguese).

[3] J.-P. Antoine, P. Carette, R. Murenzi, and B. Piette, “Image analysis with two-dimensional continuous wavelet transform,” Signal Process., vol.31, pp. 241–272, 1993.

[4] T. C. Wang and N. B. Karayiannis, “Detection of microcalcifications in digital mammograms using wavelets,” IEEE Trans. Med. Imag., vol. 17, pp. 498–509, Aug. 1998.

[5] Qian W, Clarke LP, Kallergi M, Li H, Velthuizen R, Clark RA, et al. “Tree-structured nonlinear filter and wavelet transform for microcalcification segmentation in mammography”. SPIE Biomed Image Process Biomed Visual 1993;12(4):634–642.

[6] R.N. Strickland and H.I. Hahn, "Wavelet transform for detecting microcalcifications in mammograms" IEEE Trans. Med. Imaging, vol.15, no.2, pp.218–229, 1996

[7] Laine Andrew, Fan Jian and Yang Wuhai, “Wavelets for Contrast Enhancement of Digital Mammography” IEEE Engineering in medicine and Biology, Volume 14, Issue 5, Sep/Oct 1995 pp.536 – 550.

[8] A. F. Laine, S. Schuler, J. Fan, and W. Huda, “Mammographic feature enhancement by multiscale analysis,” IEEE Trans. Med. Imag., vol. 13, pp. 725–740, Aug. 1994

[9] R. M. Nishikawa, Y. Jiang, M. L. Giger, K. Doi, C. J. Vyborny, and R. A. Schmidt, “Computer-aided detection of clustered microcalcifications,” in Proc. IEEE Int. Conf. Syst., Man, cybern., 1992, pp. 1375-1378.

[10] I. Daubechies, “Orthonormal bases of compactly supported wavelets, ”Commun. Pure and Appl. Math., vol. 41, pp. 909–996, 1988.

[11] S. G. Mallat, “A theory for multiresolution signal decomposition: The wavelet representation,” IEEE Trans. Pattern Anal. Machine Intell., vol. 11, pp. 674–693, July 1989.

[12] ________, “Multifrequency channel decomposition of images and wavelet models,” IEEE Trans. Acoust., Speech, Signal Processing, vol. 37, pp. 2091–2110, Dec. 1989.

[13]Andrea Polesel, Giovanni Ramponi, and V. John Mathews, “Image Enhancement via Adaptive Unsharp Masking”, IEEE Transactions on Image Processing, Vol. 9, No. 3, MARCH 2000, pp. 505-510.

[14]L. Lehr and P. Capek, "Histogram equalization of CT image,", Radiology, vol. 154, pp. 163-169, 1985.

[15]Amara Graps, “An introduction to wavelets”, IEEE Computational Science and Engineering, Volume 2, Issue 2, Summer 1995 Page(s):50 – 61.

[16] Pajares Gonzalo, de La Cruz Jose, Visión por computador – Imágenes digitales y aplicaciones, Alfaomega, pages 47-56, 2004 (in spanish).

[17] Mammographic Imge Analysis society (MIAS), MiniMammography Database; available on-line at http://peipa.essex.ac.uk/ipa/pix/mias/mias-database.tar.gz.

Page 27: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 27 - 30

Algoritmo de apoyo para el diagnóstico de tuberculosis pulmonar mediante el procesamiento digital de imágenes

Rueda D. Laura, Narváez L. Remberth, Sotaquirá G. Miguel, miembro IEEE

Algoritmo de Apoyo para el Diagnóstico de Tuberculosis Pulmonar mediante el Procesamiento Digital de Imágenes

Resumen—Este artículo presenta el diseño e implementación de un algoritmo que sirve de herramienta para el diagnóstico de tuberculosis pulmonar. Con las técnicas de computación adecuadas es posible disminuir el tiempo de diagnóstico, siendo la rapidez vital para el paciente. Haciendo uso de técnicas de segmentación por umbralización es posible contar el número de bacilos y/o agrupaciones en una muestra de esputo con tinción de Ziehl-Neelsen. Una característica que se aprovecha en el conteo automático es el color de los bacilos, el cual es estudiado en el procesamiento mediante la utilización de los espacios de color YCbCr y Lab. Se presenta el proceso de selección de los espacios de color y la segmentación de los bacilos y sus agrupaciones. Todas las decisiones fueron tomadas de acuerdo con resultados estadísticos. La herramienta diseñada tiene un desempeño en el diagnóstico del 81.8%

Palabras clave— Espacios de color, imágenes biomédicas, tuberculosis pulmonar, esputo, segmentación, histograma, correlación.

I. INTRODUCCIÓN

l diagnóstico temprano de tuberculosis pulmonar es crítico para la salud del paciente. Actualmente la

detección de bacilos se realiza analizando manualmente la muestra de esputo; sin embargo, no está exenta de errores por subjetividades del observador, consume mucho tiempo, es tediosa por la repetición del proceso y requiere de personal altamente especializado y experimentado.

Por la experiencia de los microbiólogos y otros profesionales afines, el diagnóstico tarda aproximadamente entre 40 minutos y 3 horas (dependiendo de la experiencia del profesional), [1].Por otro lado, dado el número de casos presentados anualmente a nivel nacional (entre 7000 y 8000 siendo el 22% de esos casos en promedio de la Costa [2]) la respuesta del diagnóstico de un paciente en particular puede durar hasta 24 horas hábiles.

En este proyecto se utilizan el procesamiento digital de imágenes para contar los bacilos y dictaminar el diagnóstico, con el fin de agilizar éste.

II. METODOLOGÍA

A. Toma de Imágenes

Para obtener un nivel de confiabilidad adecuado, es necesario estandarizar los procesos relativos a la preparación de la muestra y la toma de imágenes. La preparación de las muestras de esputo depende exclusivamente del laboratorio en donde se realice, por lo que está fuera de los alcances de este proyecto.

En el microscopio se determinaron el enfoque y la luminosidad; en la cámara, desde el computador, se

determinaron las dimensiones de la imagen (640 x 480), el balance de blancos (Nuboso) y el zoom óptico.

B. Características de las imágenes

La imagen está compuesta de manchas azules (en todas las tonalidades), residuos (verdes, negras o marrones), bacilos y el fondo. La coloración de las manchas azules y de los bacilos es debida a la técnica de tinción utilizada. Existen manchas debido a residuos de alimentos, fibras y polen y/o rasguños en las láminas reutilizadas.

El rango en el que se puede variar la iluminación constituye un 40% del rango que ofrece el microscopio. Las pruebas realizadas se muestran en la Sección IV.

Las muestras utilizadas se obtuvieron de la Secretaría deSalud de Bogotá la cual recibe muestras preparadas de diferentes centros de salud por lo que el resultado no es homogéneo. Por esto, lo que se observa en el microscopio y en las imágenes que se procesan es una diversidad en tonos, de rojo para los bacilos, y azul para el medio en que se encuentran, y en concentración de la muestra, mostrando unos campos traslúcidos y unos opacos.

C. Procesamiento Digital

Para verificar el comportamiento de los espacios de color ante la tarea de identificación de bacilos, se probó el código de segmentación, es decir, fue un proceso simultáneo. A continuación se presentan los espacios de color con su respectiva estrategia.

1) Espacios de Color y Segmentación. Espacio RGB. La estrategia que se utiliza en este

espacio es la observación de los valores que toman los píxeles de cada matriz en las regiones de interés de las imágenes, éstas son: los bacilos, las manchas azules y el fondo. Se tomaron los valores de los píxeles mediante el comando imtool de la herramienta de Software Matlab.

No se encontraron agrupaciones de bacilos mayores a 300 píxeles pero sí un ruido de tipo “sal y pimienta”. Debido a ciertos bacilos segmentados que eran débiles ante un filtro de media, se eliminaron objetos cuya área fuera menor a 10 píxeles y así se veían menos afectados los bacilos.

Espacio YCbCr. En el plano Cr del espacio YCbCr, los bacilos y otras partes de la imagen del mismo color toman tonalidades claras y el resto de la información se oscurece; en los otros planos, los bacilos no se pueden diferenciar de las manchas y el fondo.

Experimentalmente se hallaron umbrales ideales para cada imagen. Éstos se encontraban en un punto poco característico del histograma, no eran mínimos ni máximos locales o globales. Los umbrales ideales se encontraban en la caída del histograma, después del máximo, siendo difíciles de determinar.

Rueda D. Laura, Narváez L. Remberth, Sotaquirá G. Miguel, miembro IEEE

E

Page 28: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 28

En este punto se propuso un método iterativo que depende de la derivada del histograma. Obteniendo un valor límite de los valores que toma la derivada, se calculó el umbral para el plano Cr (ver Sección IV). El programa diseñado para la segmentación en el espacio YCbCr consiste en la lectura de la imagen en el espacio RGB y su conversión al espacio YCbCr. El procesamiento consiste en el cálculo del umbral, la binarización de la imagen y la remoción de grupos pequeños y grandes de píxeles blancos.

Espacio Lab. Se tienen dos tipos de imágenes en los planes a y b con información en común, los bacilos claros, y con información de cada tipo, manchas oscuras y claras, por loque, con el umbral adecuado, una operación AND entre las dos resulta en una imagen con los bacilos, únicamente.

La estrategia con el espacio Lab es similar a la utilizada en el espacio YCbCr. La diferencia radica en las condiciones para el umbral T del plano a, en la binarización de otro plano, el b, y en la operación lógica entre las imágenes resultantes. Al aplicar una AND entre los planos a y b se busca eliminar las componentes de manchas azules del primero, así que el plano b funciona como una máscara. En este caso, se puede determinar un umbral fijo porque las manchas tienen valores de intensidad visiblemente menores. Después de varias pruebas, se determinó el umbral en 100.

Unión de los espacios Lab y YCbCr. Lasegmentación en el espacio Lab presenta ventajas en cuanto a insensibilidad ante ruido por iluminación, pero no ante objetos extraños, puntos y manchas de diferentes colores. Sin embargo el YCbCr tiene un buen comportamiento ante estos. Una opción es el procesamiento en estos dos espacios. Como la imagen segmentada del plano Cr no tiene las manchas azules,sino los bacilos y ruido por iluminación, es posible utilizar únicamente el plano a del espacio Lab en la unión. Así, se utilizaron el plano a del espacio Lab y el Cr del YCbCr.

Adquisición de la imagen I(x,y) en RGB

Imagen a color

Imagen segmentada

Remoción grupos grandes y pequeños de píxeles

blancos

Operación lógica AND entre las dos imágenes

Segmentación de I(x,y) enel espacio Lab, usando el

canal a

Segmentación de I(x,y) enel espacio YCbCr, usando

el canal Cr

Fig. 1. Flujograma del algoritmo de segmentación en la unión YCbCr/Lab

En la Figura 2 se muestra la segmentación de una región de una imagen, comparándola con la segmentación con los algoritmos anteriores.

2) Conteo de Bacilos. Se tomó un área promedio en píxeles de los bacilos (depende del tamaño de la imagen) y se encontró el área total de los objetos blancos dentro de la imagen segmentada. El tamaño promedio de los bacilos, según las pruebas realizadas, es de 41.4 píxeles.

III. PRUEBAS, RESULTADOS Y ANÁLISIS DE RESULTADOS

A. Escogencia de los espacios de colorCada componente de los espacios tiene características que

puede resaltar o esconder los objetos de interés. En este caso, los bacilos se diferencian visualmente del fondo en el tercer y segundo canal de los espacios YCbCr y Lab, respectivamente. Con los tres planos y estudiando los espacios HSI, YIQ y RGB, los bacilos eran reconocidos únicamente en el último, por lo tanto éste, el YCbCr y el Lab fueron los seleccionados.

B. Pruebas para selección de umbrales1) Espacio RGB. Se obtuvo el rango de intensidades de los

bacilos, las manchas azules y el fondo, en cada componente de las imágenes. Los bacilos y el fondo toman valores similares en el canal rojo pero diferentes en el canal verde lo que permitió discriminar los objetos de interés de las manchas azules y del fondo, respectivamente.

2) Espacios YCbCr y Lab. Se buscó el punto a partir del cual la derivada del histograma se mantuviera mayor a un valor r. Para el espacio YCbCr se probaron umbrales con derivadas mayores a -1000, -2000, -3000 y -4000; para el espacio Lab, con pendientes mayores a los valores r: -500, -1000, -2000, -3000. La comparación se hizo con umbrales ideales, definidos manualmente por imagen. Con este conjunto de datos se calculó el coeficiente de correlación para determinar cuál umbral era el más cercano al manual. En la Tabla I se resumen los resultados obtenidos y en negrilla se destaca el límite de la derivada que arrojó umbrales con mayor correlación. Para la unión de espacios YCbCr/Lab se utilizaron estos mismos umbrales.

TABLA ICOEF. DE CORRELACIÓN PARA UMBRALES CALCULADOS EN YCBCR Y LAB

Umbral calculado para diferentes pendientes r

-1000 -2000 -3000 -400YCbCrCoef. de Correlación 0,969 0,976 0,977 0,439Umbral calculado para diferentes pendientes r

-500 -1000 -2000 -3000LabCoef. de Correlación 0,945 0,939 0,938 0,936

C. Categorización de las imágenesPara comparar los resultados de cada espacio de color, es

necesario tener una referencia común para todos. En este caso, por asesoría de un especialista en el tema, [3], lo recomendable es categorizar cuantitativamente la cantidad de

a) b) c) d)Fig. 2. Comparación segmentación: a) imagen original, b) imagen segmentada en Lab, c) imagen segmentada en YCbCr, d) imagen segmentada en Lab/YCbCr

Page 29: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 29

información dentro de la imagen. De esta forma, se dieron niveles a la cantidad de bacilos, iluminación y la presencia de ruido en la imagen segmentada. De las imágenes segmentadas se obtienen dos tipos de información: una correspondiente a bacilos y otra a la imagen segmentada en su totalidad. Esta diferencia se debe al ruido, por iluminación u objetos extraños, que es segmentado junto con los bacilos. Con el primer tipo de datos se determina la efectividad del algoritmo para reconocer los bacilos presentes en la imagen; con el segundo tipo se define la robustez del algoritmo ante el ruido, ya que, entre más similar sea este tipo de información a la de los bacilos, menos ruido tiene la imagen.

Para determinar la relación entre la información obtenida (de bacilos y la total) y la imagen segmentada, se calculó el coeficiente de correlación para comparar entre todos los espacios. Se utilizaron 141 imágenes de diferentes muestras y características de iluminación y cantidad de bacilos.

E. Resultados y comparaciónEn la Tabla II se resumen los resultados obtenidos en las

pruebas para cada algoritmo. Por el coeficiente de correlación, se descarta el código en el espacio RGB. Debido a las características complementarias de los algoritmos del espacio Lab y YCbCr se optó por una unión de espacios.

TABLA IICOMPARACIÓN

Espacios Coef. De CorrelaciónRGB 0.3474YCbCr 0.5346Lab 0.9016YCbCr/Lab 0.8398

Se calculó la cantidad de imágenes que detectan ruido por iluminación y por objetos, conformando el porcentaje de “FP por iluminación” y “FP por obj. no deseados” en la Figura 3. También se halló la cantidad de imágenes que presentaban los dos tipos de ruido (“FP mutuo”). Para el caso en que no hay bacilos segmentados cuando sí los hay en la imagen original, se halló la cantidad de imágenes que presentan una categoría menor que en las originales, conformando los falsos negativos(campo “FN”).

Resultados por Imágenes

0

20

40

60

80

100

FP poriluminación

FP por obj. Nodesseados

FP mutuo FP total FN

Tipo de error

No.

deim

ágen

esaf

ecta

das

RGB YCbCr Lab YCbCr-Lab

Fig. 3. Resultados de errores en los espacios de color

El coeficiente de correlación indica la relación entre la imagen original y la segmentada, y los falsos positivos y negativos indican los errores del algoritmo. Con estos datos es posible seleccionar el espacio de color más adecuado. El YCbCr se podría descartar por el bajo coeficiente de correlación obtenido, pero presenta 6.29% menos FP que el Lab por lo que se consideró como opción para la unión. Así, se complementan los resultados: el YCbCr es débil ante ruido

por iluminación, pero es más fuerte ante los objetos no deseados; el Lab es robusto ante el ruido por iluminación y es más débil que el YCbCr ante los objetos no deseados. Sin embargo, los FN son menores en el espacio Lab un 0.71%, pero debido a la mejora considerable en los FP por objetos, entonces la unión YCbCr/Lab es escogida para el programa final. Cabe resaltar que aunque los falsos negativos mantengan un porcentaje bajo, es uno de los retos a tratar en trabajos posteriores.

F. Resultados del diagnósticoCon el programa final, se procesaron las imágenes por

muestra para un diagnóstico. Se compararon los resultados con el diagnóstico emitido por el Programa de Enfermedades Transmisibles de la Secretaría Distrital de Salud de Bogotá.

Se utilizaron 11 muestras, cuatro son tipo 3, cuatro son tipo 2, dos son tipo 1 y una es tipo 0. Se obtuvo un 81.8% de aciertos, que corresponden a nueve muestras y 18.2% de desacierto, que corresponden a dos muestras. El algoritmo arrojó un diagnóstico tipo 1 y 3, cuando en realidad eran tipo 0 y 2, respectivamente. Errores de este tipo eran predecibles a partir del porcentaje de FP obtenido con las pruebas para la escogencia del espacio.

Un parámetro importante a considerar es el tiempo de computación requerido para realizar un diagnóstico. Para el caso de muestras tipo 3, el algoritmo toma únicamente 20 imágenes, por lo que le corresponde el menor tiempo de procesamiento, con 40 segundos aproximadamente. Para las muestras tipo 1 ó negativas, se procesan 100 imágenes en 200 segundos aproximadamente.

IV. APORTES SIGNIFICATIVOS

A. Segmentación mediante la derivada del histogramaSe utilizó este método para la segmentación en los espacios

YCbCr y Lab. Los histogramas de los planos Cr y a de los espacios YCbCr y Lab, respectivamente, son similares en la forma por lo que, para fines ilustrativos, se explica el procedimiento para el plano Cr únicamente. Como se observa en la Figura 4, el histograma es decreciente con una alta pendiente después del valor máximo, aunque con unos puntos de pendiente positiva para ciertas imágenes. Se optó por analizar la forma con la derivada aproximada del histograma.

Fig. 4. Histograma del plano Cr de una imagen de prueba

Si nH es el histograma de una imagen en escala de grises,

la diferencia, o derivada aproximada, se define por: 255,2,1,01 nnHnHnH

Page 30: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 30

Con la derivada, se tiene el comportamiento creciente y decreciente del histograma siendo esto de utilidad para la aplicación, ya que los umbrales ideales son puntos poco característicos del histograma. De esta forma, si se definen límites para la derivada, es decir, que ésta se mantenga mayor o menor a determinado valor, r, se obtiene un umbral, T, el cual es el punto de esa derivada. Entonces, se define el umbral como el valor máximo de intensidad cuya derivada sea menor a r.

rnHnT /max

B. Independencia de la iluminaciónLa ventaja principal del método descrito es que permite

determinar umbrales a cada imagen, según la derivada del histograma, por lo que es independiente de la iluminaciónhasta cierto punto. Las imágenes que se muestran en la Figura 5 corresponden a un mismo campo variando la iluminación.

Fig. 5 Cambio de iluminación en un mismo campo

TABLA IIIUMBRALES CALCULADOS POR EL SOFTWARE

Imagen a b cUmbral Lab 161 150 146

Umbral YCbCr 165 159 155Promedio bacilos 69.1 74.1 75.8

Esta es una prueba preliminar que indica un grado de independencia de la iluminación pero se requieren pruebas adicionales para determinar la importancia de la diferencia del promedio de bacilos segmentados. El cambio de iluminación hace que el histograma se traslade a la izquierda o a la derecha y asimismo cambia el umbral obtenido por la segmentación mediante la derivada del histograma.

V. DISCUSIÓN

El algoritmo diseñado presenta tres características importantes frente a los trabajos afines desarrollados anteriormente: la primera de ellas es el tipo de tinción de las muestras de esputo (Ziehl Neelsen), los trabajos previos procesan imágenes de muestras con tinción fluorescente, [4], [5], [6], [7]; la segunda de ellas es la unión de dos modelos de color que aprovecha la robustez para reducir los objetos no deseados y el ruido por la iluminación; y la última es la solución que se encuentra para segmentar las imágenes e independizarlas de la iluminación calculando el umbral a partir de la derivada del histograma. Algunos de los trabajos que se han realizado para detectar bacilos redes neuronales, lógica difusa o técnicas que están fuera de los alcances de este proyecto, pero pueden ser consideradas para mejorar el desempeño en cuanto a los falsos positivos y negativos. Una de las conclusiones comunes que se obtuvieron desarrollando el presente proyecto es que la solución debe estar enfocada

principalmente en el diagnóstico que brinde el software y en segundo lugar, en la cantidad promedio de bacilos detectados.

VI. CONCLUSIONES

El algoritmo de apoyo para el diagnóstico de tuberculosis pulmonar desarrollado es una herramienta innovadora basadaen el procesamiento digital de imágenes, para el cual esnecesario estandarizar las entradas. La variabilidad, una característica indeseada en las imágenes, depende de dos etapas, una de ellas externa al proyecto: la preparación de la muestra con tinción de Ziehl Neelsen y la toma de imágenes. En la primera, se deben tomar las medidas necesarias para que se mantengan las mismas características en las imágenes. Por otro lado, las imágenes se limitan a un balance de blancos, iluminación y zoom óptico determinado.

Gracias al método de segmentación mediante la derivada del histograma, fue posible independizar el procesamiento de las imágenes de la iluminación, hasta cierto punto. Los resultados muestran que la iluminación en el microscopio puede variar en un amplio rango, siendo esto una característica destacable del algoritmo.

De los espacios de color utilizados, el algoritmo de la unión YCbCr/Lab tiene los porcentajes de falsos positivos más bajos y una alta correlación con respecto a la imagen original, razones por las cuales se eligió para el sistema final. Con éste, se obtuvo un porcentaje bueno de diagnósticos acertados, 81.8%, que abre la posibilidad de la aplicación en el campo real.

AGRADECIMIENTOS

Este proyecto fue posible gracias a la colaboración del Laboratorio Departamental del Atlántico, del Programa de Prevención de Enfermedades Transmisibles de la Secretaría de Salud de Bogotá y del Laboratorio de Biología y Genética de la Universidad del Norte.

REFERENCIAS

[1] G. Reyes Carmona. Especialista en Microbiología; Especialista en Módulos, tipos y diseños de investigación 2002. Universidad del Norte. Entrevista realizada 6 de febrero de 2007.

[2] Instituto Nacional de Salud (Colombia). Tablas de notificación anual obligatoria. [Citado en 5 de febrero del 2007]. Disponible en Internet: http://www.ins.gov.co/nivel3.php?seccion=26&sub=45

[3] L. Guzmán Acuña. Profesora catedrática del Departamento de Matemáticas y Física de la Universidad del Norte. Entrevista realizada 17 de octubre de 2007.

[4] K. Veropoulos, G. Learmonth, C. Campbell, B. Knight, J. Simpson. Automatic identification of tubercle bacilli in sputum. A preliminary investigation. Analytical and Quantitative Cytology and Histology, vol. 21, no. 4, pp. 277-281, 1999.

[5] M. Forero, G. Cristóbal, M. Desco. Automatic identification of Mycobacterium tuberculosis by Gaussian mixture models. Journal of Microscopy, vol. 223. no. 2, pp. 120-132, 2006

[6] M. Forero, F. Šroubek, G. Cristóbal. Identification of tuberculosis bacteria based on shape and color. Real-Time Imaging, vol. 10, no. 4, pp. 251-262, 2004. Disponible en:http://www.tsi.enst.fr/~bloch/P6/PRREC/forero.pdf

[7] M. Forero, G. Cristóbal, J. Álvarez-Borrego. Automatic identification techniques of tuberculosis bacteria. SPIE Proceedings of the Applications of Digital Image Processing XXVI, vol. 5203, pp. 71-81, 2003. Disponible en: < http://www.iv.optica.csic.es/papers/tuber03.pdf>

a) b) c)

Page 31: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 31 - 35

Caracterización del grado de madurez del limón TahitíIng. Ángel Álvarez, PhD. Arturo Plata, Ing. Jorge Araoz, MsC. Hernando González.Caracterización del Grado De Madurez

del Limón tahití.Ing. Ángel Álvarez, PhD. Arturo Plata, Ing. Jorge Araoz, MsC. Hernando González.

Abstract— This document describes the used technique to obtain the characterization of the degree of maturity of the Tahitilemon. The system uses techniques of image processing tosegment and to quantify the amount of yellow colour with respectto the total area of the lemon. Basically all the states of maturation of the lemon can be identified, from a 0% to a 100%with respect to the total area. (The system is conformed for aCCD sensor, whose output is an analogue signal of light intensity,more an AD converter that processes the signal). The treatmentis made in the CIELab polychromatic space, in special is usedblue the yellow component, which allowed making thecharacterization of the state of maturation of the lemon.

Index Terms — CIELab polychromatic space, characterizationof the degree of maturity of the Tahiti lemon.

I. INTRODUCTION

En una empresa donde se tienen grandes volúmenes de producción, se hacen necesarios métodos más eficientes querealicen las tareas de producción en serie, una de estas tareases el control de calidad sobre los productos terminados. Estatarea en especial, debe llevarse a cabo con gran eficiencia y precisión para poder cumplir con los altos requerimientos queexige el mercado actual, el cual esta regido por normas y estándares nacionales e internacionales.

Teniendo en cuenta la gran riqueza agrícola de nuestro país, se plantea la necesidad de desarrollar proyectos con tecnología propia, que permita la explotación más eficiente de losrecursos naturales, de una manera tal que se incremente laproducción, elevando los ingresos de los propios agricultoresy generando divisas, sin descuidar los campos y disminuyendolas pérdidas por desperdicios. Además, como consecuencia de la necesidad de ingresar en nuevos mercados, el productoragrícola se obliga a tecnificar sus procesos.

En Colombia, la región de los Santanderes posee uno de losmejores ambientes para la producción del limón, estimándosela producción en 25 toneladas métricas por hectárea al año, convirtiéndose en la región con mayor potencial para laexplotación del limón para exportar. Los limones tipoexportación deben cumplir con determinados requerimientosespecificados en el manual de exportación de cada mercado,bien sea, el norteamericano, el europeo o el Japonés, entreotros. La tarea de clasificar el limón por el grado demaduración se realiza actualmente de forma manual (ver laFigura 1), por personas que a través de su experiencia hanlogrado desarrollar esta habilidad, por medio de su percepciónvisual, requiriendo de muchas horas/hombre para la

clasificación de los frutos cosechados con calidad de exportación.

Figura 1. Clasificación del grado de madurez en forma manual

Como una alternativa para la reducción de costos en laclasificación del limón en Colombia, se desarrolló un sistemade visión artificial, que reconoce el estado de madurez dellimón Tahití para su posible exportación.

II. SISTEMA DE ILUMINACIÓN

El procedimiento realizado experimentalmente para lograr lacaracterización del grado de madurez del limón Tahití, iniciacon determinar el ambiente de iluminación adecuado para la toma de las muestras fotográficas del limón en diferentesestados de maduración, para ello se implementaron sistemascon diferentes características hasta lograr la toma adecuada de las fotografías (Ver la Figura 2). Dichas fotografías son digitalizadas por una cámara, que realiza la captura concaracterísticas particulares, especificas y son almacenadas en un formato que posibilitan su procesamiento en MATLAB,con el cual se desarrolla el algoritmo que permite lacuantificación de los datos relacionados con la cantidad de color amarillo que pueden contener las imágenes digitalizadas.

Figura 2. Sistema de iluminación.

Page 32: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 32

III.SISTEMA DE PREPROCESAMIENTO

Para alcanzar la caracterización del grado de madurez dellimón Tahití a partir de imágenes procesadas, se extrae de la imagen la información referente a los colores verde y amarillo, por medio de los cuales se logra establecer el grado de maduración del fruto. Para ello se determina el espaciopolicromático que otorgue dicha información y permita elprocesamiento de la imagen. Apoyados en el histograma se puede determinar dicho espacio ya que éste nos entregainformación sobre la cantidad y la tonalidad de los píxeles que conforman cada componente de la imagen, en cada espacio decolor. A continuación se muestran gráficas realizadas en una GUI (Graphic user interface “interfase de usuario gráfica”) desarrollada en MATLAB, y que permiten observar loshistograma de la imagen de un limón Tahití en diferentesespacios de color, con cada una de sus componentes.

Figura 3. Espacios policromáticos

IV.UMBRALIZACIÓN Y BINARIZACIÓN

Para lograr separar el limón Tahití del fondo de la fotografía,se binarizan las componentes de cada espacio de colorutilizando como umbral, para dicha binarización, los valores entregados por los máximos o mínimos de la gráfica delrespectivo histograma de cada componente, en cada uno de losespacios de color. De todos los espacios analizados, con cadauna de sus componentes, se puede deducir que la componente

(G) del sistema RGB, las componentes (L), (a) y (b), del sistema CIELab, y la componente (CB) del sistema YCBCR, todas binarizadas con los valores mínimos en , entre sus dos nodos, permiten aplicar un análisis posterior a la binarización para conseguir la caracterización, puesto que con ellas se logra separar el limón del fondo de la imagen.

x

La imagen binarizada de la componente (G) del sistema RGB,mostrada en la Figura 4, utilizando como umbral el valor de

en el punto mas bajo del histograma entre los dos nodos,permite distinguir el limón con respecto al fondo, con algunascomponentes de ruido.

x

Figura 4. Umbralización del mínimo de (G)

Al momento de binarizar cada una de las componentes delsistema CIELab, la claridad (L), la componente rojo/verde (a)y la componente amarillo/azul (b), se logra obtener de algunamanera la segmentación del limón, en la componente (L), conun poco de ruido, al utilizar el valor del pico mínimo entre losdos nodos. Ver la Figura 5.

Figura 5. Umbralización del mínimo de (L)

De igual manera, en la componente rojo/verde (a), apreciamosque al binarizar la imagen, utilizando como umbral el valor mínimo de , entre los dos nodos, el limón queda en gran parte separado del fondo de la imagen. Ver la Figura 6.

x

Figura 6. Umbralización del mínimo de (a)

Lo mismo sucede con la componente amarillo/azul (b) al binarizar la imagen con el umbral dado por el valor minino de

, entre los dos nodos, donde la imagen del limón queda en x

Page 33: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 33

su mayoría separada del fondo negro, y se pueden estimar losbordes del limón. Ver la Figura 7.

Figura 7. Umbralización del mínimo de (b)

Al umbralizar la componente de crominancia (CB) del sistemaYCBCR con el valor mínimo de , entre los dos nodos, se obtiene una imagen donde se aprecian los bordes del limóncon un poco de ruido. Ver la Figura 8.

x

Figura 8. Umbralización del mínimo de (CB)

Para la binarización realizada en el análisis anterior, se utilizó la imagen del limón de la Figura 9(a).

Para determinar la componente del espacio de color en la quese debe realizar la segmentación final, se utilizan las imágenesde dos limones más, uno en un estado más maduro (Figura9(c)) y otro en un estado intermedio de maduración (Figura¡Error! No se encuentra el origen de la referencia.9(b)),(dicho estado de maduración, determinado por el experto en laclasificación de los limones Tahití en forma manual), seanaliza el comportamiento de las tres imágenes en las componentes ya mencionadas para determinar un umbralúnico que posibilite aislarlos, sin importar en que estado demaduración se encuentren; y para ello recurrimos nuevamenteal análisis gráfico basándonos en los histogramas de cadalimón en los tres estados de maduración.

(a) (b) (c)

Figura 9. Limones de prueba en la binarización

La componente (b) del sistema de color CIELab, permiteestablecer un umbral único para la binarización del limón de134, en cualquier estado de maduración, permitiendo extraer la parte de la imagen que representa el área total del limón, del

resto de la imagen. Ver la Figura 10. Como dicha extracciónse logra con cierto contenido de ruido, se aplica a la imagenun filtrado que lo elimine y entregue el limón totalmentesegmentado.

(a)

(b)

(c)Figura 10. Umbral único de (b)

Como umbral de segmentación para la binarización de la parte amarilla de la imagen, se determina el valor de en el últimotono presente en la binarización del limón, cuyo grado de maduración es menor, es decir el limón mas verde, donde sustonos de amarillo representan la parte verde del limón. En la Figura 11 se puede apreciar la parte amarilla de los limones encada estado de maduración al aplicar como umbral de binarización, el tono dado por el último valor de ,171 dellimón más verde.

x

x

(a)

(b)

Page 34: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 34

(c)Figura 11. Umbral para la binarización de la parte amarilla

V. FILTRADO

Para eliminar el ruido que se presenta fuera del área de interés, se utiliza un filtro de mediana que permiteeliminar el ruido y preservar la agudeza de los bordes. Enla Figura se aprecia el área total del limón segmentada encada estado de maduración.

(a)

(b)

(c)Figura 12. Filtrado del área total del limón

Para determinar el grado de madurez del limón, es necesario estimar la cantidad amarilla de la imagen con respecto al áreatotal del limón segmentado.

VI. CARACTERIZACIÓN

Para calcular el porcentaje de color amarillo del limón, se realiza el conteo de píxeles en el área total del limón y en la parte amarilla.

En la Figura13 está la caracterización del limón verde(a) con 0%, el intermedio (b) con 56.18% y el amarillo(c) con98.32%.

(a)

(b)

(c)Figura 13. Caracterización del limón Tahití

VII. CONCLUSIONES

Para la identificación de colores por medio de imágenesfotográficas se debe implementar un sistema de iluminacióndifuso que garantice muestras sin sombras o reflejos, el cual va a influenciar la segmentación para determinar lascomponentes principales del limón.

Por medio de la componente a (rojo/verde) y b (amarillo/azul)del espacio de color CIELab, se pueden caracterizar frutoscuyos colores característicos presentes en su maduracióntengan transición de color en estos tonos. La componente l(luminancia) permite determinar el nivel de saturación de lailuminación.

La componente (b) del sistema de color CIELab, permiteestablecer un umbral único para la binarización del limón, en cualquier estado de maduración, permitiendo extraer la partede la imagen que representa el área total del limón, del restode la imagen.

Page 35: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 35

El valor del umbral para el proceso de binarización se determinó tomando como referencia los limones que presentan un estado de maduración intermedio, es decir, tonalidades entre 167 y 179, el umbral se fijo por encima de esta región definiéndolo en 180. Los resultados obtenidos por este valor se validaron con el experto resultando una discrepancia de 12%.

La cuantificación objetiva de parámetros de color permitió optimizar el proceso de selección, que hasta el momento se hace de forma subjetiva pudiendo generar errores de clasificación.

VIII. RECOMENDACIONES

Otra característica a tener en cuenta para la exportación de los limones Tahití a mercados extranjeros, es la identificación de quemaduras en su corteza, la cual podría ser identificada trabajando en la componente rojo/verde del sistema CIELab.

Para futuros trabajos sobre la calidad del limón Tahití, se debe implementar algoritmos que identifiquen daños, quemaduras y malformaciones, confrontándolas con el proceso de producción para poder establecer las posibles causas de éstas y retroalimentar así, el sistema de control de producción.

El avance de tecnologías de reconstrucción tridimensional permitirá el control del volumen del limón para obtener otros parámetros de tribología y estado de superficie. Por eso se puede preveer el aplicarlos a los procesos de clasificación para la calidad del limón.

IX. BIBLIOGRAFÍA

[1] AGRONEGOCIOS. Guía técnica para el cultivo del limón pérsico. [En línea] Google. Disponible en Internet. URL:http://www.agronegocios.gob.sv/Media/Fru2LimText.htm

[2] APFA. Asociación profesional de fotoperiodistas asturianos. [En línea] Google. Disponible en Internet. URL: http://www.fotoperiodista.org/

[3] ARQHVS. Luminotecnia. La visión del color. El espectro visible. [En línea] Google, 2004.Disponible en Internet.URL:http://www.arqhys.com/arquitectura/color_visionhtml

[4] GALLEGO, Carlos. Introducción a las cámaras CCD en astronomía. El sensor CCD. Convertidor análogo-digital. [En línea] Octubre 2000. Disponible en Internet. URL: http:// www.hipatia.org/ccds.html.

[5] GANSLANDT, Rudiger y Hofmann Harald. Como planificar la luz. [En línea] España. Erco ediciones, 289 p. Disponible en Internet. URL:http://www.erco.com/download/data/30_media/20_handbook/es_erco_lichtplanung.pdf

[6] GONZALEZ, Rafael & WOODS, Richards. Tratamiento digital de imágenes. Madrid: Addison – Wesley / Díaz de Santos. 1996. 773 p.

[7] ROLDÁN, Diego y SALAZAR, Marcela. La cadena de cítricos en Colombia. Ministerio de agricultura y desarrollo rural. [En línea], mayo 2002 [cited junio de 2004]. Disponible en Internet. URL:http://www.agrocadenas.gov.vo/citricos/citricos_description.html

[8] SEGMENTACIÓN DE IMÁGENES DE COLOR. Revista Mexicana de Física 50 (6) (2004) p. 579-587

[9] SEMINARIO DE IMAGEN Y SONIDO DIGITAL. El sentido de la vista. Repuesta a la intensidad y color. [En línea] Google, 2004. Disponible en Internet: Disponible en Internet. URL:http:// www.pubfasta.edu.ar/SISD/vision/respuestacolor.htm

[10] TECNOLOGÍA DEL COLOR .S.A. El sistema CIELab de medición de un color. [En línea] Provincia de buenos aires: Google, disponible en Internet. URL:http://www.coloryapariencia.com.ar/color.html

Page 36: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 36 - 39

Diseño e implementación de un prototipo de software para la visualización de videos a 360º

Pedro Francisco Pinzón Villafrades1, Cristian Quintero1 y W.J. Sarmiento1

Diseno e implementacion de un prototipo desoftware para la visualizacion de videos a 360◦

Pedro Francisco Pinzon Villafrades 1, Cristian Quintero 1 y W.J. Sarmiento 1

Abstract—En este articulo se presenta un prototipo de softwarepara la visualizacion de videos a 360◦ partiendo desde lavisualizacion de imagenes a 360◦. El prototipo implementa losmodelos matematicos de deformacion y el registro de imagenes,creando imagenes tanto cilındricas como esfericas a 360◦, gener-ado navegacion e inmersion en las imagenes. Posteriormente elprototipo fue extendido para visualizar videos a 360◦.

Palabras Claves—Imagenes a 360◦, video a 360◦, video inter-activo.

I. INTRODUCCION

EL video ofrece una narracion y una claridad excelente,especialmente por su composicion visual, ya que puede

incluir muchısimas areas del arte y el diseno como los efectosespeciales, la animacion 2D y 3D y la integracion con el audio;lo que hace de este una pieza audiovisual muy clara y com-pleta. Buscando nuevas formas de comunicacion audiovisualy una narracion hacia nuevos niveles de entendimiento, se haintentado dotar al video de caracterısticas de interactividad.Es ası, que aunque el video interactivo no tiene una definicionnormalizada, puede referirse a el como la conjuncion de lasposibilidades tecnologicas que ofrecen el video en si mismoy la informatica [1].

Por otro lado, las imagenes a 360◦ brindan una posibilidadexcelente de obtener interactividad en diferentes ambientes ynecesidades. Su uso se a vuelto tan importante dentro de lacomunicacion visual, que se a extendido a las paginas Web ydiversos entornos multimediales en los que requieren mostrarambientes del mundo real, como habitaciones, show rooms ypaisajes, de manera que el usuario pueda hacerse una idea masrealista que con una foto estatica del ambiente que se le deseamostrar [2].

Este articulo presenta el desarrollo de un prototipo de unsoftware para la visualizacion de videos a 360◦, como una her-ramienta tecnologica para el desarrollo de videos interactivosque permita plantear una forma de narracion audiovisual enla que el video sea el elemento principal y permita al usuariocambiar a voluntad el angulo de visualizacion.

La primera seccion ilustra el proceso de creacion deimagenes a 360◦, la segunda seccion describe el proceso decreacion de la aplicacion de visualizacion de videos a 360◦ yal final se presentan las conclusiones y perspectivas de trabajo.

1 Grupo de Investigacion en Multimedia, Programa de Ingenierıa enMultimedia, Facultad de Ingenierıa, Universidad Militar Nueva Granada.Bogota, Colombia.

II. IMAGENES A 360◦

Para la creacion de imagenes a 360◦ es necesario teneren cuenta dos conceptos matematicos, la deformacion deimagenes, que la distorsiona para obtener una sensacion deprofundidad y el registro de imagenes que permite unir unmosaico de imagenes como una unica imagen continua.

A. Deformacion de cojın

La distorsion Pincushion o de cojın es la distorsion utilizadaen la creacion de imagenes a 360◦, debido al tipo de efectoque genera. La distorsion de cojın es una distorsion geometricaen imagenes por la cual las lıneas rectas adoptan una formaconcava curvada hacia dentro, desde los extremos de la pan-talla entre las esquinas de la imagen [3], como se muestra enla figura 1.

Fig. 1. Deformacion de Pincushion: Imagen Original (izquierda), imagendistorsionada con deformacion Pincushion (derecha).

En las imagenes a 360◦, la deformacion de cojın es utilizadapara distorsionar una imagen plana de forma tal que genereuna sensacion envolvente en el usuario, dando la ilusion deestar visualizando una imagen esferica [2].

B. Registro de Imagenes

En muchas aplicaciones de vision artificial es necesariorealizar comparaciones y seguimientos entre imagenes querepresentan el mismo elemento, pero obtenidas en distintomomento, por distintos dispositivos de captacion, con distintasorientaciones, bajo distintas condiciones etc. Estas diferen-cias producen una serie de distorsiones en las imagenes,imposibilitando la comparacion directa de las mismas, ya quepuntos equivalentes en las distintas tomas no tienen por quecorresponder a los mismos puntos en los objetos representados.

El registro de imagenes se ha presentado como una soluciona este problema y permite a obtener series de imagenes

Page 37: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 37

Fig. 2. Resultado del registro de imagenes entre dos imagenes tomadas conangulos diferentes.

alineadas y por lo tanto mas facilmente comparables entre si[4].

El proceso de registro mas sencillo, desplaza una imagenmovil sobre una fija (siendo dx y dy los desplazamientosen cada de uno de los ejes), evaluando para cada desplaza-miento una medida de similaridad entre ellas. El resultadose logra al ubicar la imagen movil sobre la fija, para losvalores del desplazamiento que hallan arrojado la maximamedida de similaridad. Este procedimiento puede ser cada vezmas elaborado si adicionamos parametros de transformacioncomo rotaciones, escalamientos o transformaciones no rıgidas.La figura 2 muestra el resultado de registrar dos imagenestomadas con angulos distintos.

En la literatura se encuentran diferentes medidas desimilitud como el coeficiente de correlacion [4], la correlacioncruzada [5] y la informacion mutua[6].

En imagenes a 360◦, se acostumbra crear un mosaico deimagenes tomados en diferentes angulo, que cubra toda laimagen de manera panoramica. Ası, el registro de imagenesse utiliza para unir el mosaico generando una imagen unica ycontinua [2].

III. DESARROLLO

A. Creacion de imagenes de prueba

Existen en el mercado diferentes camaras fotograficas yde video capaces de capturar espacios a 360◦, en nuestrolaboratorio no contamos con este tipo de dispositivos, porlo que se opto por una solucion con “camaras virtuales”.Tomando un software para modelado y animacion 3D se creouna camara que simulara las caracterısticas de una camarareal con formato NTSC, es decir con un angulo de aperturahorizontal de 49.03◦ y un aspecto de proporcion de radio de4 : 3 (1.33). Posteriormente, la camara fue duplicada pararealizar la configuracion necesaria para la creacion de lasimagenes y videos. Por ultimo, se realizo un proceso de renderindependiente para cada camara de la configuracion.

Se crearon dos configuraciones distintas de camaras,la primera permitıa crear imagenes con una navegacioncilındricas y la segunda imagenes de navegacion esfericas.

A continuacion describiremos las dos configuraciones decamaras usadas:

Fig. 3. Ejemplo de 3 camaras de la configuracion de navegacion cilındrica:camara Roja a 0◦, camara verde a 90◦ y camara azul a 225◦.

1) Navegacion cilındrica: Para obtener una imagen finalque pueda ser navegada de manera cilındrica es necesarioobtener imagenes independientes de la misma escena rotandola camara sobre el punto de observacion. Teniendo en cuentaque el angulo de apertura horizontal de la camara es de 49.03◦,se requiere de 8 rotaciones de 45◦ sobre la camara original,para cubrir toda la circunferencia. La figura 3 ilustra 3 camarasde esta configuracion; la camara roja es la camara original,la camara verde es la camara rotada 90◦ y la camara azules la camara rotada 225◦. Las imagenes resultados de estaconfiguracion contienen informacion comun en los extremosdebido al traslape horizontal entre las camaras, la figura 4muestra el resultado del proceso de render independiente delas 8 camaras.

2) Navegacion esferica: Esta es una generalizacion de laconfiguracion para navegacion cilındrica, es decir no solo sedeber realizar una rotacion sobre el plano, sino que tambiendebe realizarse una rotacion sobre un eje perpendicular paracubrir una esfera de visualizacion. Si vemos a la configuracioncilındrica como rotaciones a un angulo θ sobre el eje XY , laconfiguracion esferica se logra agregando una rotacion en elangulo ϕ, como se muestra en la figura 5. Ası, cada camaraen la configuracion obedece a dos rotaciones: ϕ entre −90◦ y90◦ y θ entre 0 y 360◦.

Teniendo en cuenta que el angulo de apertura vertical de

Fig. 4. Resultado del proceso de render independiente de las 8 camarasnecesarias para logar una imagen con navegacion cilındrica. Primera fila dederecha a izquierda, imagenes a 0◦, 45◦, 90◦ y 135◦; segunda fila, de dederecha a izquierda, imagenes a 180◦, 225◦, 270◦ y 315◦.

Page 38: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 38

Fig. 5. Angulos de rotacion necesarios para logra una configuracion decamaras de navegacion esferica

ϕ θ No. Camaras90◦ 0◦ 160◦ 0◦, 90◦, 180◦, 270◦ 430◦ 0◦, 45◦, 90◦, 135◦, 180◦, 225◦, 270◦, 315◦ 80◦ 0◦, 45◦, 90◦, 135◦, 180◦, 225◦, 270◦, 315◦ 8−30◦ 0◦, 45◦, 90◦, 135◦, 180◦, 225◦, 270◦, 315◦ 860◦ 0◦, 90◦, 180◦, 270◦ 4−90◦ 0◦ 1

TABLA IRECORRIDO DEL ANGULO θ PARA CADA VALOR DEL ANGULO ϕ.

la camara es de 37.85◦ se debe realizar un barrido en ϕ cada30◦, donde para cada valor ϕ se debe realizar la variacioncompleta de θ (de 0 a 360◦), la cual se puede lograr conpasos de 45◦ como en la configuracion cilındrica. Sin embargo,esto no es recomendable, ya que el area de traslape de laimagenes aumenta con el valor de ϕ. Empıricamente se disenoun sistema de barrido ϕ, θ el cual puede verse en tabla I. Seobserva que para valores de ϕ de −30◦ a 30◦ se realiza unbarrido de θ cada 45◦, mientras que para valores de ϕ iguales a−60◦ y 60◦ el recorrido en θ es cada 90◦, por ultimo, las tapasde la esfera (ϕ −90◦ y 90◦) solo es necesaria un imagen. Lasimagenes resultantes del los procesos independientes de render

Fig. 6. Resultado del proceso de render independiente de las camarasnecesarias para logar una imagen con navegacion esferica. Las imagenes seencuentran organizadas de acuerdo con los valores de θ y ϕ de la tabla I.

de todas las camaras pueden verse en la figura 6, las imagenesesta ubicadas de arriba a abajo y de derecha a izquierda deacuerdo con los valores de ϕ y θ de la tabla I.

B. Registro de las imagenes

Una vez finalizado el proceso independiente de render decada una de las camaras de la configuracion, se obtienenocho imagenes con traslape vertical, para la configuracioncilındrica y 34 imagenes con traslape tanto horizontal comovertical, para la configuracion esferica, las cuales pueden verseen las figuras 4 y 8 respectivamente. Aunque un proceso deregistro tradicional implica la busqueda de los parametros detransformacion (traslacion, rotacion, etc.) para la superposicionde las imagenes, este proceso no es necesario en este caso, yaque desde el momento de la adquisicion se conoce el valorexacto de superposicion de cada imagen sobre sus vecinas.

Fig. 7. Imagen resultante de la configuracion cilındrica

Para el montaje de la imagen final se realiza un proceso demapeo inverso, ası, para la imagen de navegacion cilındrica seconstruye una imagen de θ vrs z, como la que se observa enla figura 7, resultado del registro de las ocho imagenes de lafigura 4. La imagen de la navegacion esferica se construye enθ vrs ϕ, logrando la deformacion de cojın necesaria para sucorrecta visualizacion, en la figura 8 se muestra el resultadofinal del registro de las imagenes de la figura 8, para este caso,en el eje x quedan consignados los valores cada θ grados deadquisicion, mientras en el eje y,cada ϕ grados. El procesode registro para la creacion de esta ultima imagen es similarel proceso de mapear una superficie esferica sobre un planousando coordenadas de latitud y longitud[7].

Fig. 8. Imagen resultante de la configuracion esferica

C. Visualizacion

Se escribio una aplicacion usando una librerıa de desarrollo3D, en el cual se mapea la imagen final obtenida con el registrode imagenes en una superficie cilındrica o esferica, de acuerdocon el procedimiento anterior. Una camara de visualizacion escreada en el centro del sistema de coordenadas, visualizandosolo un fragmento de la superficie respectiva.

Page 39: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 39

Con la configuracion cilındrica la camara de visualizacion esrodeada por la superficie cilındrica y apunta hacia el exteriordonde la imagen es mapeada. La navegacion se realiza conmovimientos horizontales del mouse o con las flechas delteclado, que producen un angulo de rotacion θ en la camara devisualizacion, permitiendo al usuario ver la imagen completa.

En la configuracion esferica el procedimiento es similar alanterior, con la diferencia de que la superficie de mapeo cam-bia. La navegacion se realiza con movimientos horizontales yverticales del mouse o con el teclado, produciendo rotacionesen ϕ y θ sobre la camara de visualizacion.

D. Extension del Prototipo de Software para la visualizacionde videos a 360◦

Una vez el prototipo para la visualizacion de imagenes a360◦ fue validado, se procedio a extenderlo de modo tal quepudiera utilizarse para visualizar videos.

El procedimiento de registro se realizo cuadro por cuadrode video para todas la imagenes resultantes del procesoindependiente de render para cada camara de la configuracion.Las imagenes resultantes de este proceso, se usaron para crearun unico video, donde cada cuadro era resultado del procesode registro anterior.

La aplicacion de visualizacion tambien fue modificada paracambiar la imagen mapeada sobre la superficie a la velocidadadecuada, de tal manera que permitiera ver el video de formafluida. Es bueno aclarar que este proceso se realizaba demanera independiente al proceso de navegacion que podıahacer el usuario sobre el video (angulos θ y ϕ), el resultadofue una aplicacion 3D, que permite la visualizacion de unvideo mapeado sobre una superficie, donde le usuario puedea voluntad cambiar el angulo de visualizacion de la camara amedida que el video es reproducido. En la Figura 9, se puedever una imagen de la aplicacion desarrollada.

Para la validacion se creo un video de 15 segundos, el cualfue renderizado para las dos configuraciones de camara. Serealizaron pruebas de rendimiento de la aplicacion, cambiandoel angulo de visualizacion de la camara a medida que el videoera reproducido, observando una continuidad en el procesode reproduccion, independiente del proceso de navegacion.Tambien se creo un video (video 0)usando la camara con 0◦

de rotacion tanto en ϕ como en θ. Los videos a 360◦ fueronreproducidos sin realizar ningun tipo de navegacion por elusuario y se compararon con el resultado de visualizar el video0, donde se observo practicamente el mismo resultado visual.

IV. CONCLUSION Y PERSPECTIVAS

Este prototipo abre las puertas del video interactivo, haciacaminos diversos, en donde el video se convierte en un com-ponente de interactividad por derecho propio, generando ambi-entes propicios para nuevas formas de expresion, y narracionesno lineales, en donde un suceso puede cambiar dependiendodel punto en donde se mire.

Hacia un camino futuro, el prototipo podrida adquirir nuevascaracterısticas, implementando la navegacion dentro de cam-pos de vision, a partir de movimientos de la configuracion de

Fig. 9. Visualizacion de la imagenes a 360◦

camaras para observar escenas que de otra manera no seriaposible.

Actualmente se esta viendo la posible aplicacion de estosvideos en otras areas como la educacion, la medicina y el en-trenamiento personal, e incluso se esta portando el sistema devisualizacion hacia el primer prototipo se la Sala de InmersionVirtual (SIV) creado al interior de grupo de investigacion[8][9].

REFERENCIAS

[1] D. J. S. Ibanez, “Interaccion, medios interactivos y video interactivo,”RED: Revista de Educacion a Distancia, 1.994., vol. 10, pp. 137–148,1993.

[2] S. E. Chen, “Quicktime vr: an image-based approach to virtual environ-ment navigation,” in SIGGRAPH ’95: Proceedings of the 22nd annualconference on Computer graphics and interactive techniques. New York,NY, USA: ACM, 1995, pp. 29–38.

[3] L. G. C. Incorporated, EF LENS WORK III, The Eyesof EOS, 8th ed. Lens Group Canon Incorporated, 2006,ch. OPTICAL TERMINOLOGY & MTF CHARACTERISTICS,pp. 192 – 216. [Online]. Available: http://www.canon-europe.com/Support/Documents/digital slr educational tools/

[4] P. A. Crespo and J. M. Vazquez, “Notas de clase,vision artificial registro de imagenes,” Grupo VARPA, Dpto.Computacion, Facultad de Informatica, Universidade da Coruna,Campus de Elvina, Tech. Rep., Mayo 2006. [Online]. Available:http://www.varpa.es/Docencia/VAFiles/Curso0506/

[5] M. J. Botello S, “El metodo de los elementos finitos en el registrode imagenes de resonancia magnetica,” Revista Mexicana de IngenierıaBiomedica, vol. 24, no. 2, pp. 104–115, Septiembre 2003. [Online].Available: http://www.medigraphic.com/pdfs/inge/ib-2003/ib032b.pdf

[6] J. Pascau, J. D. Gispert, S. Reig, R. Martınez, and D. M., “Registrode imagenes en medicina nuclear (registro de imagenes, multimodalidad,pet, spect),” Revista de la Real Academia de Ciencias Exactas, Fısicas yNaturales, vol. 96, no. 1-2, pp. 29–43, 2002.

[7] Foley, Van-Dam, Feiner, Hughes, and Phillips, Introduction to computerGraphics. Addison-Wesley Publishing, 1994.

[8] C. Quintero, W. J. Sarmiento, and E. L. Sierra-Ballen, “Low costcave simplified system,” in Proccedings of Human Computer InteractionInternational, Beijin, China, 2007.

[9] C. Quintero, W. J. Sarmiento, and E. L. Sierra-Ballen, “Diseno de unprototipo de sistema de realidad virtual inmersivo simplificado,” Cienciae Ingenieria Neogranadina, vol. 18, no. 1, 2008, in press.

Page 40: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 40 - 43

Reparametrización de mallas triangulares en cuadriláteros [1]Mateus, S., [2]Giraldo, J., y [3]Branch, J.

[1] [2]Politécnico Colombiano Jaime Isaza Cadavid, [3]Universidad Nacional de Colombia – Sede Medellín[1][email protected], [2][email protected], [3][email protected]

Resumen— En este artículo se presenta una metodología para

la reparametrización de mallas triangulares en cuadriláteros, a través del análisis espectral de mallas y la teoría de Morse, dada la necesidad de métodos de reparametrización cuadrilaterales de calidad, los cuales son de gran importancia en varias áreas de computación gráfica y visión por computador . En este sentido, se implementa un algoritmo que cuadrilateriza superficies triangulares, aplicando un análisis de la teoría de Morse a los valores propios de una malla Laplaciana. Finalmente, los parches cuadrilaterales resultantes se forman adecuadamente y se levantan directamente de las propiedades intrínsecas de la superficie, debido a las propiedades del operador Laplaciano.

Palabras Claves— Reparametrización, cuadriláteros, análisis espectral, teoría de Morse, Laplaciano, visión por computador.

I. INTRODUCCIÓN

AS mallas triangulares con frecuencia exhiben varias deficiencias. Ellas son frecuentemente parametrizadas con

resoluciones inapropiadas y típicamente contienen muchos elementos formados de manera inadecuada. Debido a la constante ocurrencia de mallas deficientes, la habilidad de segmentar las superficies en regiones formadas adecuadamente y de reparametrizar superficies con mallas bien formadas, es de importancia crítica en casi todos los sistemas de procesamiento de mallas [1].

La mayoría de trabajos reportados en la literatura sobre métodos de remallado, se han enfocado en el problema de producir mallas triangulares. Sin embargo, la habilidad para producir mallas cuadrilaterales es también de gran importancia. Los cuadriláteros son las primitivas preferidas para el modelamiento de muchos objetos y en muchos dominios de aplicación [4]. Muchas formulaciones de subdivisión de superficies como los Splines y las NURBS, requieren bases cuadrilaterales complejas; descomponer una superficie en cuadriláteros bien formados provee un medio casi natural para la construcción de parches NURBS. Recientemente se han desarrollado métodos para cuadrilaterizar automáticamente superficies complejas [2], dichos métodos son bastante complicados, difíciles de implementar y cuentan con múltiples componentes heurísticos.

En este artículo, se presenta una metodología para construir bases cuadrilaterales complejas sobre superficies trianguladas

de topología arbitraria. En contraste a las aproximaciones basadas en agrupamiento heurístico, la metodología expuesta sugiere trabajar sobre las propiedades intrínsecas de la forma de la superficie. Esta cuadrilateración base produce mallas compuestas exclusivamente de cuadriláteros y con un número pequeño de puntos. Para descomponer una superficie en parches cuadrilaterales, se introduce un análisis de la teoría de Morse del espectro de la malla triangulada. Los vectores propios de la matriz Laplaciana discreta son usados para definir los campos escalares sobre una superficie triangulada tal que el extremo de un campo dado, se da a una frecuencia deseada. La extracción del complejo Morse-Smale de los campos escalares provee una descomposición de la superficie que es cuadrilateral en superficies complejas y con topología arbitraria.

II. REPARAMETRIZACIÓN DE MALLAS TRIANGULARES EN

CUADRILÁTEROS

De manera general, el análisis espectral trata de inferir características topológicas del objeto a través de funciones matemáticas. Este análisis espectral, arroja un espectro, lo que viene a ser un conjunto de valores y vectores propios de una matriz que ha sido inferida de la malla triangular. El análisis espectral se apoya en la Teoría de Morse. Esta teoría escoge unos puntos representativos de los vértices de la malla triangular, que son los puntos críticos de Morse, los cuales serán posteriormente los vértices de los cuadriláteros.

La aplicación de la teoría de Morse para mallas triangulares, implica resolver una forma discreta de la ecuación del Laplaciano, para encontrar una función Morse que describa la topología representada en la malla triangular. En este sentido, pueden existir puntos críticos adicionales a la característica de la superficie, que produzcan un dominio base que represente adecuadamente la geometría tanto de la misma topología como de la malla original, y también puede agruparse la malla en parches mejorados. En este trabajo se aplica la teoría de Morse a mallas triangulares de una manera más robusta teniendo en cuenta los puntos de silla y la preservación de bordes, encontrando una función Morse que sea apropiada a un número determinado de puntos críticos.

Esta teoría se basa en el Laplaciano para encontrar las funciones armónicas de una función dada. La teoría de Morse relaciona la topología de una superficie S con su estructura diferencial especificada por los puntos críticos de una función

de Morse f: RSf →: [5] y está relacionada con el análisis espectral de mallas.

Reparametrización de Mallas Triangulares en Cuadriláteros

[1]Mateus, S., [2]Giraldo, J., y [3]Branch, J. [1] [2]

Politécnico Colombiano Jaime Isaza Cadavid, [3]

Universidad Nacional de Colombia – Sede Medellín [1]

[email protected], [2]

[email protected], [3]

[email protected]

L

Page 41: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 41

A. Análisis Espectral de Mallas

El análisis espectral, se realiza calculando inicialmente el laplaciano. El operador Laplaciano discreto en funciones lineales de pedazos de superficie sobre superficies trianguladas está dado por la Ec. (1):

∑∈

−=ΔiNj

ijiji ffWf )( (1)

Donde Ni es el conjunto de vértices adyacentes al vértice i y Wij, es un peso escalar asignado a la arista dirigida (i,j). Este cálculo se puede observar en la Figura 1, en la cual los puntos de los vértices, indican los vértices vecinos sobre el que se hace la sumatoria sobre la que se calcula el Laplaciano discreto.

Fig 1. Cálculo del Laplaciano discreto sobre un vértice.

Para cada grafo libre de cualquier geometría embebida, es

habitual usar la definición de pesos combinatorios )deg(/1 iWij = .Sin embargo, para superficies múltiples la opción apropiada, son los pesos armónicos discretos, según la Ec. (2):

)cot(cot21

ijijijW βα +−=(2)

donde ijα y ijβ

son los ángulos opuestos al borde (i,j). Representando la función f por el vector columna de sus

valores hacia todos los vértices T

nffff ]...[ 21= , podemos reformular el laplaciano como una matriz (Ec. (3)):

Lff −=Δ (3)

donde la matriz Laplaciana L tiene las siguientes entradas (Ec. (4)):

(4)

Los valores propios nλλλ ≤≤≤= ...0 21 de L forman el espectro de la malla S, además de describir el cuadrado de la

frecuencia y los correspondientes vectores propios neee ,...,, 21

de L definen las funciones lineales de pedazos de superficie sobre S de las más altas frecuencias progresivamente.

B. Teoría de Morse Dada una función real sobre alguna superficie, la teoría de

Morse conecta la geometría diferencial de una superficie con su topología algebraica; esta teoría, describe la conectividad de la superficie, a partir de la configuración de los puntos donde la función del gradiente decae. Tales puntos son llamados puntos críticos (estos son: mínimos, máximos y

puntos de silla). La teoría de Morse ha sido utilizada en gráficos y visualización por computador, para analizar diferentes funciones reales. Un ejemplo son los datos de terrenos, los cuales están definidos por una función de altitud en el plano, en donde la teoría de Morse puede identificar características topológicas, controlar su simplificación y organizarlas en jerarquías de multiresolución.

Puntos Críticos El procedimiento propuesto en esta etapa, estima una cuadrilateración inicial de la malla utilizando el análisis espectral mediante teoría de Morse. Inicialmente, se obtienen los vértices de los cuadriláteros como un conjunto de puntos críticos de una función Morse. Sea c S R3 un punto en una superficie S, en un vecindario continuo parametrizado por (u,v):

• Un punto Mc∈ es crítico si 0)()( == cfcf vu con valor crítico f(c), de otra manera es regular.

• El punto crítico c es degenerado si 0)(2)()( =− cfcfcf uvvvuu , de otra manera es Morse.

La función f es llamada función de Morse si todos sus puntos críticos son no degenerados.

Siendo 21 λλ ≤ dos valores propios de la Hessiana de una función f, con sus correspondientes vectores propios, el índice de un punto crítico de Morse es el número de valores propios negativos de su Hessiana, por tanto éste puede clasificarse en [3]: • Mínimo (índice 0, f incrementa en toda las direcciones). • Punto de Silla (índice 1, f cambia en decrementos e

incrementos cuatro veces alrededor de un punto). • Máximo (índice 2, f decrementa en todas las

direcciones). En la Figura 2, se observa la configuración de los puntos críticos. La parte a, indica un punto regular. Para la parte b, se observa cómo se halla un máximo cuando todos en el vecindario son mínimos. En la parte c, se observa cómo es un mínimo, cuando todos los de alrededor son máximos. Las partes d y e, indican puntos de silla.

Fig. 2. Ejemplos de Vértices Críticos y Regulares [3].

Complejo de Morse-Smale El complejo de Morse-Smale es obtenido mediante la

conexión de un conjunto de puntos críticos que pertenecen a un campo propio de la matriz laplaciana. La definición de un campo propio se obtiene seleccionando el conjunto de vectores asociado a un valor solución del sistema de ecuaciones. Como la función de Morse representa una función sobre la malla, cada valor propio describe el cuadrado de la frecuencia

⎪⎩

⎪⎨

−=∑

0ij

k ik

ij w

W

L

Si i=j,

Si (i,j) es una arista de M,

En cualquier otro caso.

∈ ⊂

Page 42: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 42

de dicha función. Así, la selección de cada valor propio indica directamente la cantidad de puntos críticos que posee la función. Para valores de frecuencia altos, mayor número de puntos críticos se obtendrán. Esto permite representar cada objeto con un número variable de parches de superficie. El campo propio asigna valores de función para cada vértice de la malla, lo que permite determinar si un vértice de la malla es un punto crítico de la función de Morse. Adicionalmente, de acuerdo a un conjunto de valores obtenidos como el vecindario del primer anillo de cada vértice, es posible clasificar los puntos críticos como máximos, mínimos o puntos de silla. La identificación y clasificación de cada punto crítico permite construir el complejo Morse-Smale. Una vez obtenidos y clasificados los puntos críticos estos se deben conectar para formar la base cuadrilateral de la malla. La conexión de los puntos críticos se inicia seleccionando un punto silla y construyendo dos líneas de ascenso inclinadas y dos líneas de descenso declinadas. Las líneas inclinadas se forman como un conjunto de vértices que terminan en un punto crítico máximo. Inversamente, una línea de descenso se forma por el camino de vértices que terminan en un punto crítico mínimo. Sin embargo, existen casos en los que no es posible determinar el conjunto de dos líneas ascendentes y dos descendentes. Se debe tener en cuenta que dos caminos pueden ser unidos sólo si ambos ascienden o ambos descienden. Después de calcular todos los caminos, se divide S en regiones cuadrilaterales que forman las células del complejo de Morse-Smale. Específicamente, se desarrolla cada cuadrilátero de un triángulo incidente a un punto de silla sin cruzar nunca un camino (ver Figura 3).

Fig 3. Cuadriláteros formados por el Complejo de Morse-Smale.

III. EXPERIMENTOS Y RESULTADOS

Las pruebas visuales para cada una de las fases de este trabajo fueron obtenidos utilizando un procesador AMD Semprom a 3,0GHz con 512Mb de Memoria. El lenguaje de programación utilizado fue C++ con motor gráfico OpenGL y como plataforma de desarrollo Builder 5.0.

La generación de la malla cuadrilateral y la representación computacional de los modelos, fueron probados con dos imágenes de rango de objetos reales: la primera es la “pera”,

utilizada por su geometría suave; la segunda es el objeto “moai” el cual tiene topología arbitraria muy irregular. En las Figuras 4a y 5a se pueden observar los puntos críticos resultantes de diferentes configuraciones de armónicos para ambos objetos. En las Figuras 4b y 5b, la malla cuadrilateral se ajustó adecuadamente a la geometría de los objetos, independiente de su topología.

a.

b. Fig. 4. Puntos críticos arrojados por la Teoría de Morse y Cuadrilaterización obtenida mediante el Complejo de Morse-Smale para el Objeto Pera.

Page 43: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 43

a.

b. Fig. 5. Puntos críticos arrojados por la Teoría de Morse y Cuadrilaterización obtenida mediante el Complejo MS para el Objeto Moai.

IV. CONCLUSIONES

En este trabajo, se ha explorado y desarrollado el Análisis Espectral y la Teoría de Morse en mallas triangulares para generar mallas cuadrilaterales. La teoría discreta de Morse garantiza que sin importar la complejidad topológica de la superficie que representa la malla triangular, se obtenga una descripción cuadrilateral completa, es decir, que es posible dividir completamente la superficie de los objetos mediante cuadriláteros. La obtención de un número determinado de puntos críticos, depende exclusivamente del armónico seleccionado. Se usa la Teoría de Morse para analizar la estructura de los campos propios laplacianos de la superficie y así producir cuadriláteros que se generan directamente sobre la forma intrínseca de la superficie. Además el uso del Complejo de Morse-Smale es robusto topológicamente y garantiza que la base compleja sea siempre cuadrilateral, evitando así las ambigüedades entre cuadriláteros.

REFERENCIAS

[1] Boier-Martin, I., Rushmeier, H. y Jin, J. (2004). Parameterization of triangle meshes over quadrilateral domains. In Proc. Eurographics Symposium on Geometry Processing, 197–207.

[2] Bremer, P., Edelsbrunner, H., Hamann, B. y Pascucci, V. (2004). A topological hierarchy for functions on triangulated surfaces. TVCG 10, 4, 385–396.

[3] Edelsbrunner, H., Harer, J. y Zomorodian, A. (2003). Hierarchical Morse-Smale complexes for piecewise linear 2-manifolds. Discrete Comput. Geom, 30, 87-107.

[4] Friedel, I., Schröder, P. y Khodakovsky, A. (2004). Variational normal meshes. TOG 23, 4, 1061–1073. (Proc. SIGGRAPH).

[5] Koren, Y., Carmel, L. y Harel, D. (2002). ACE:A fast multiscale eigenvectors computation for drawing huge graphs. In Proc. InfoVis ’02, 137–144.

Sandra Patricia Mateus Santiago: Docente Tiempo Completo y Miembro del Grupo GRINSOFT, Area de Informática, Facultad de Ingeniería, Politécnico Colombiano Jaime Isaza Cadavid. Magíster en Ingeniería – Ingeniería de Sistemas de la Universidad Nacional de Colombia – Sede Medellín. Ingeniera de Sistemas de la Universidad del Magdalena. E-mail: [email protected]. Dirección: Carrera 48 N° 7-151, Sede Poblado, Bloque P19, Of: 146. Tel: 3197900 Ext: 477. Medellín – Antioquia.

Jorge Eliecer Giraldo Plaza: Docente Tiempo Completo y Miembro del Grupo GRINSOFT, Área de Informática, Facultad de Ingeniería, Politécnico Colombiano Jaime Isaza Cadavid. Magíster en Ingeniería – Ingeniería de Sistemas de la Universidad Nacional de Colombia – Sede Medellín. Ingeniero de Sistemas de la Universidad Distrital Francisco José de Caldas. E-mail: [email protected]. Dirección: Carrera 48 N° 7-151, Sede Poblado, Bloque P19, Of: 148. Tel: 3197900 Ext: 476. Medellín – Antioquia.

John Willian Branch Bedoya: Profesor Asociado de Tiempo Completo y Miembro del Grupo de I+D en Inteligencia Artificial, Escuela de Sistemas, Facultad de Minas, Universidad Nacional de Colombia - Sede Medellín. Doctor en Ingeniería – Sistemas, Magíster en Ingeniería de Sistemas e Ingeniero de Minas y Metalurgia de la Universidad Nacional de Colombia, Sede Medellín. E-mail: [email protected]. Dirección: Carrera 80 No. 65 - 223 Bloque M8A Of: 307. Tel: 4255375. Medellín – Antioquia.

Page 44: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 44 - 48

Reconstrucción y mejoramiento de imágenes Javier Roncancio, Julian Quiroga, AlejandroForero

Page 45: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 45

Page 46: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 46

• • •

Page 47: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 47

Page 48: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 48

Page 49: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 49 - 52

Propuesta de un sistema de verifi cación de hablantes basado en máquinas de vectores de soporte

David A. Jaramillo, Danny A. Múnera, Henry A. Arcila, Byron Buitrago, José Aedo

Resumen - En este artículo se propone un sistema de verificación de hablante dependiente del texto basado en Máquinas de Vectores de Soporte (SVMs.) El sistema de verificación fue implementado completamente en MATLAB. Tras la realización de diversas pruebas experimentales con el uso de las SVMs se obtuvo como resultado un sistema óptimo basado en un kernel polinómico, una caracterización de voz MFCC y una filosofía multiclase uno contra uno, con un Half Total Error Rate de 8.67% y un False Acceptance Percent del 2%, ratificando el buen funcionamiento de las SVMs aplicadas al campo del reconocimiento.

Palabras claves – SVM, verificación de hablantes, LPC, MFCC, MatLab.

I. INTRODUCCIÓN

OS sistemas de reconocimiento de hablantes han tomado en los últimos años un inusitado interés por los continuos avances tecnológicos desarrollados tanto en

los sistemas multimedia como en la computación móvil. Actualmente existen muchos métodos de aprendizaje de máquina para abordar el desarrollo de un sistema automático de reconocimiento de voz, siendo las redes neuronales artificiales las más conocidas [1], sin embargo, publicaciones recientes muestran que metodologías estadísticas tales como los Modelos de Mezclas Gausianas y Modelos Ocultos de Markov ([2], [3], [4]), y metodologías discriminativas como las Maquinas de Vectores de Soporte ([5], [6]) arrojan resultados satisfactorios en cuanto a su complejidad y a las tasas de error.

En particular, las máquinas de vectores de soporte (SVMs) han tenido gran aceptación debido a que tienen la habilidad de discriminar datos con un tamaño de modelo seleccionado automáticamente por medio de los vectores de soporte y en un espacio característico altamente dimensional. La base teórica de las SVMs está fundamentada en la teoría estadística del aprendizaje convirtiéndose en una herramienta excepcional para la generalización en problemas complejos, lo cual las hace adecuadas para el uso en problemas de verificación de hablantes.

En este artículo se presenta la implementación de una técnica de reconocimiento de voz, específicamente un sistema de verificación de hablantes utilizando Máquinas de Vectores de Soporte.

Este articulo ha sido estructurado de la siguiente forma: en las secciones 2 y 3 se realiza una descripción de las Maquinas de Vectores de Soporte y de características útiles de la voz para la identificación del locutor. En la sección 4 se describe la estructura del sistema de verificación de

hablantes. En la sección 5 se presentan los resultados obtenidos en la implementación. Finalmente en la sección 6 se presentan las conclusiones y los trabajos futuros.

II. MÁQUINAS DE VECTORES DE SOPORTE

Las SVMs se basan en la idea de usar un hiperplano de separación lineal para crear un clasificador, cuya distancia de separación entre clases sea máxima, dados los datos de entrenamiento [7]:

( ) ( ) ( ) { }1,1,,,,...,,,, 2211 −+∈ℜ∈ yxyxyxyx nll

Si se asume que las clases son linealmente separables, pueden ser clasificadas por medio de un hiperplano (frontera de decisión) definido por:

0=+⋅ bxwdonde w y b son parámetros ajustables que se hallan a partir de la siguiente expresión [8]:

wwT ⋅21

min

sujeto a ( ) libxwy ii ,...,1,1 =≥+⋅Resolver algorítmicamente el problema anterior toma un grado de complejidad muy alta, ya que este depende de la dimensionalidad de los datos de entrada, por lo cual se recurre a la representación Lagrangiana dual que se resuelve por medio de la condiciones de Karush-Kuhn-Tucker [8]. Además, las SVMs ofrecen las representaciones con Kernel, las cuales brindan una solución para proyectar los datos a un espacio característico de una dimensionalidad más alta y así incrementar el poder de discriminación de las máquinas lineales de aprendizaje. El uso de los clasificadores lineales en la representación dual hace posible realizar este paso implícitamente. La ventaja de usar las máquinas en la representación dual deriva del hecho que en esta representación el número de parámetros sintonizables no depende del número de atributos que están siendo usados. Reemplazar el producto interno con una apropiada elección de la función kernel, sería una forma de realizar un mapeo no lineal (ver ecuación 4) a un espacio característico de una dimensionalidad más alta sin incrementar el número de parámetros sintonizables [9].

Hd →ℜ:φLa función a optimizar es

( ),,21∑ ∑−=

i jjijijiidual xxKyyL ααα

Propuesta de un Sistema de Verificación de Hablantes basado en Máquinas de Vectores de Soporte

David A. Jaramillo, Danny A. Múnera, Henry A. Arcila, Byron Buitrago, Jose Aedo

L

(4)

(1)

(2)

(3)

(5)

Page 50: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 50

donde dualL hace referencia al Lagrangiano en su forma

dual del problema de clasificación, α son los multiplicadores de Lagrange y K es la función kernel asociada [10].

En las ecuaciones 6 y 7 se enuncian las funciones kernel usadas para el sistema propuesto, asumiendo que

NX ℜ⊂ [11]. Función Polinomial no homogénea:

( ) ( )( )djiji cxxxxK +⋅=,

donde, 0, ≥∈ cNd .

Función de Base radial Gaussiana:

( ) 2

2

2, σji xx

ji exxK−

−= ,

con 0>σ .

La solución del problema de clasificación mediante las SVMs se basa en el establecimiento de una frontera de decisión entre clases que se forma a partir de elementos del conjunto de entrenamiento llamados vectores de soporte, que son elegidos al maximizar el margen a través de un problema de optimización cuadrática [12].

( ) ( )∑=

+=SN

iiii bxsKyxf

1

,α ,

donde SN es el número de vectores de soporte y b es la

polarización [8]. La discusión anterior sobre las SVMs asume que los

datos de entrenamiento se encuentran solo en dos clases (clasificación binaria, ver ecuación 1).Para extender la clasificación por SVM al caso multiclase existen métodos entre los que se destacan: método uno contra todos y método uno contra uno [13].

III. CARACTERIZACIÓN DE LA VOZ.

Cuando se caracteriza la voz, se busca la extracción de sus parámetros más representativos con el fin de obtener una representación más compacta y menos redundante por medio de vectores característicos. Con esto se logra una simplificación con relación al número de muestras a analizar en las etapas posteriores de procesamiento de esta señal. Entre los métodos más desarrollados para caracterizar la voz se encuentran: Los coeficientes de predicción lineal LPC [14] y los coeficientes cepstrales en la frecuencia de Mel MFCC [15] [16].

IV. SISTEMA DE VERIFICACIÓN DE HABLANTES

Un sistema para verificación del hablante se utiliza para decidir si un locutor específico corresponde al locutor real previamente establecido. En un sistema de verificación una persona hace una solicitud de identificación, la señal de

voz es analizada por el sistema de verificación que toma la decisión de aceptar o rechazar la solicitud de identificación del usuario o posiblemente reportar una insuficiente confianza en los datos o solicitar datos adicionales antes de tomar la decisión.

Previo a la verificación, el solicitante debe ser matriculado en el sistema, bajo condiciones supervisadas. Durante su matrícula los modelos de voz son generados y almacenados para su uso futuro en el proceso de verificación. Debe existir un compromiso entre la exactitud, la duración y el número de sesiones a matricular [17].

La propuesta presentada, para el sistema de verificación en este trabajo utiliza esencialmente tres etapas: Etapa de adquisición de la base de datos de los usuarios del sistema, etapa de matrícula de usuarios y por último, etapa de verificación del solicitante.

La primera etapa consiste en la adquisición de las muestras de voz necesarias de cada uno de los usuarios que se desean matricular y, de aquellas personas que aumentarán la base de datos como impostores para el entrenamiento y test del sistema de verificación desarrollado. Las muestras son almacenadas de manera que siempre se encuentren disponibles para la etapa posterior de entrenamiento y generación de los modelos.

En la etapa de matrícula de usuarios, se generan los modelos correspondientes a los usuarios que se desean matricular en el sistema. El proceso es manejado por medio de la interfaz para la generación de modelos que controla todo lo pertinente a este proceso. Para la implementación de esta etapa se utilizan funciones del toolbox SVM para MATLAB®, desarrollado por el Image Speech and Intelligent Systems Research Group, de la Universidad de Southampton [18].

La interfaz de entrenamiento SVM permite la creación y grabación de diferentes modelos para el sistema de verificación. Tiene la capacidad de variar múltiples parámetros para crear diferentes modelos que son evaluados en la etapa de verificación. En este trabajo se propone una metodología para la clasificación de personas impostoras. La propuesta consiste en la utilización de una clase adicional al sistema, en la cual se contenga información de muestras de voz de varias personas que no pertenecen a la base de usuarios, de modo que sus muestras de entrenamiento se encuentren dispersas y encierren el espacio de los usuarios matriculados limitando el espacio de clasificación. El efecto práctico de esta clase es que cuando una persona impostora para el sistema haga una solicitud de entrada, sea clasificado con mayor probabilidad en la clase adicional de impostores, en cuyo caso el sistema negará su petición.

Por último, la etapa de verificación de solicitantes es la encargada de realizar el proceso de comparación de patrones de voz entre la persona solicitante y los usuarios matriculados del sistema (ver figura 1).

(6)

(7)

(8)

Page 51: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 51

Figura 1. Pasos en la etapa de verificación.

V. PROTOTIPO EXPERIMENTAL Y RESULTADOS

En la etapa de matrícula de usuarios, el sistema accede a toda la base de datos de voz disponible (140 muestras de la palabra por persona), que se ha creado de forma off-line.Las muestras de voz de la etapa de verificación cumplen las mismas condiciones que aquellas utilizadas en la etapa de matrícula de usuarios, sólo que en la verificación son adquiridas on-line y su número es más reducido.

Un sistema de verificación de hablantes se considera bueno o aceptable cuando la probabilidad de error que este ofrece es muy baja o nula [10]. El sistema es evaluado por tres tipos de indicadores de error como lo son: False Rejected percent (%FR), False Acceptance percent (%FA)y Half total error rate (HTER), donde

( )FAFRHTER %%21

+= .

Una máquina de vectores de soporte para cualquier sistema en general se caracteriza por ser un buen clasificador, dependiendo de la buena elección de sus parámetros que constituye el primer aspecto que se tendrá en cuenta. En la prueba de test se utilizan dos diferentes tipos de kernel el polinomial y el RBF que son los que mejor se comportan en ambientes de voz, variando sus parámetros más importantes [19][12]. Para implementar esta variación se utiliza inicialmente la crossvalidationlogrando algunos valores óptimos que son sintonizados luego manualmente [13].

Con respecto a la etapa de caracterización de hablantes también es importante establecer cuál método se comporta mejor dentro del marco del sistema de verificación, por ello, se eligieron MFCC y LPC como las posibles opciones [19].

Se probó cuál es la filosofía multiclase que mejores resultados posee para un sistema basado en un kernelpolinómico de orden 8, parámetro de regularización 0.2, 10 usuarios con 140 muestras cada uno y caracterización de voz LPC. Cabe resaltar que el modelo fue elegido al azar por lo que su desempeño no debe preocuparnos, lo que nos interesa en realidad es la abismal diferencia que existe entre los resultados de cada filosofía. El sistema de filosofía 1 contra 1 con %HTER=3.72 es el mejor (ver tabla 1).

Filosofía de clasificación %FR %FA HTER1 contra 1 2.5 5 3.72

1 contra todos 14.2 7.86 11Tabla 1. Comparación entre las diferentes filosofías multiclase

En la tabla 2 se puede observar la comparación entre los dos métodos de caracterización mencionados y los dos tipos de kernel más comunes [19] [12]. Se exhiben los mejores resultados de una previa crossvalidation y posterior sintonía manual de sistemas basados en la filosofía multiclase uno contra uno, para 10 usuarios con 140 muestras cada uno.

Kernel RBF POLINÓMICO Carac. %FR %FA HTER %FR %FA HTERMFCC 10.3 4.29 7.31 15.3 2 8.67 LPC10 22.7 5.71 14.2 29.7 3.43 16.5

Tabla 2. Comparación entre kernel y caracterizaciones del sistema

Aunque el kernel RBF obtuvo el HTER mas bajo (7.31%) el kernel polinómico obtuvo un %FAasombrosamente bajo (2%) que lo hace lucir como el sistema más seguro, teniendo en cuenta que su HTERtambién es bajo (8.67%). Según la tabla 2, la mejor caracterización corresponde a MFCC ya que con cualquiera de los kernel los porcentajes de error son mínimos con respecto a LPC.

El parámetro de regularización (C) es un valor que depende exclusivamente de los datos no clasificados linealmente [8], para MFCC fue 152=C y para LPC10 fue

2.0=C . Según esto, hay más datos no clasificados linealmente al utilizar la caracterización MFCC, lo que no quiere decir que sea la peor clasificación, ya que el resultado depende exclusivamente del kernel a utilizar.

Pensando en una posible optimización de recursos de memoria y procesamiento, se varió el número de personas en cada sistema, como se muestra en la tabla 3, para ver como afecta al funcionamiento en general de los modelos más óptimos hasta el momento. Estos modelos se realizaron con filosofía multiclase uno contra uno, caracterización MFCC, 140 muestras por usuario y parámetro de regularización 152=C . El orden del kernelpolinómico es 8 y la desviación estándar del RBF es 1. Se puede observar en la tabla 3 que una reducción en el

(9)

Page 52: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 52

número de usuarios del sistema implica una disminución en el porcentaje de error.

Kernel RBF POLINÓMICO

Users %FR %FA HTER %FR %FA HTER

10 10.3 4.29 7.31 15.3 2 8.67

8 6.67 2.78 4.72 10 1.04 5.52

6 2.22 7.58 4.9 3.89 4.04 3.96

4 2.5 6.43 4.46 2.5 5 3.75

Tabla 3. Comparación entre número de usuarios y kernels

Otra prueba consistió en analizar la influencia de la cantidad de datos de entrenamiento en el desempeño del sistema; para ello, se disminuyó el número de muestras tomando como base el sistema de mejores resultados a lo largo de las pruebas con kernel polinómico de orden 8, parámetro de regularización 152=C , filosofía multiclase uno contra uno, 10 usuarios y caracterización MFCC.

Según la tabla 4, con una disminución a la mitad de las muestras de entrenamiento podríamos lograr resultados aceptables para el sistema, inclusive un muy bajo %FA(0.86%), siendo un ítem importante a considerar para las violaciones de un sistema de verificación.

Número de muestras %FR %FA HTER 140 muestras 15.3 2 8.67 70 muestras 25.3 0.86 13.1 35 muestras 49.7 2.86 26.3

Tabla 4. Comparación de número de muestras de entrenamiento

VI. CONCLUSIONES Y TRABAJO FUTURO

Las Máquinas de Vectores de Soporte demostraron ser una excelente herramienta para llevar a cabo la tarea de reconocimiento de voz enfocada en un sistema de verificación de hablantes.

El método de caracterización MFCC es el que mejor resultados obtuvo en el sistema de verificación; ya que, para un kernel RBF obtuvo una disminución del 47.45% y para un kernel polinómico del 48.52% con respecto a LPC en el HTER. Basados en todos los resultados, el kernel RBF tiende a reducir el %FR mientras que el polinómico tiende a reducir el %FA. Luego, como queremos un sistema de verificación seguro, la opción más tentativa es el kernel polinómico. Los resultados obtenidos en el modelo con valores óptimos arrojaron porcentajes de error de 8.67% en el HTER y del 2% en el %FA, éstos ratifican el buen funcionamiento de las SVMs aplicadas al campo del reconocimiento.

Para sistemas con un menor número de usuarios, se obtienen resultados mejores; es así, como con una reducción de un 60% en el número de usuarios se obtuvo una disminución del HTER en un 56.75% para un kernelpolinómico y 38.99% para un kernel RBF.

Para una reducción de un 50% en el número de muestras de entrenamiento se obtuvo un %FA=0.86% y un

HTER=13.1. Aunque el HTER tuvo un aumento, el %FAdisminuyó notablemente, lo cual es aceptable para un sistema de verificación.

Como trabajo futuro se pretende extender la base de datos de muestras de voz para verificar el efecto que puede tener ello en la robustez y desempeño del sistema. Igualmente se propone la implementación en hardware del sistema de verificación siguiendo la metodología algorítmica que se ha desarrollado.

VII. REFERENCIAS

[1] V. N. Vapnik. The Nature of statistical learning theory, Second edition, Springer-Verlag new York, Inc, 2000. [2] Auckenthaler, R. Parris y E. S. Carey M. J. “Improving a GMM speaker verification system by phonetic weighting. Acoustics, Speech, and Signal Processing, 1999,” ICASSP apos;99. Proceedings., 1999 IEEE International Conference on Volume 1, Issue, pp 313 – 316, Marzo 15-19 1999. [3] D. A. Reynolds. Model Compression For GMM Based Speaker Recognition Systems, MIT Lincoln Laboratory, EUROSPEECH 2003 – GENEVA. [4] T. Masukoy, T. Hitotsumatsuy, K. Tokudayy, and T. Kobayashiy. On The Security Of Hmm-Based Speaker Verification Systems Against Imposture Using Synthetic Speech, Department of Computer Science, Nagoya Institute of Technology, 1998. [5] W. M. Campbell, J. P. Campbell, D. A. Reynolds, D. A. Jones, and T. R. Leek. High-Level Speaker Verification with Support Vector Machines, MIT Lincoln Laboratory, ICASSP, 2004. [6] V. Wan y S. Renals .Svmsvm: Support Vector Machine Speaker Verification Methodology, Department of Computer Science, University of Sheffield, 2003. [7] V. Kecman. Learning and soft computing: Support vector machines, neural networks, and fuzzy logic models, The MIT Press, 2001. [8] C. J. C. Burges. “A tutorial on support vector machines for pattern recognition,” Data mining and knowledge discovery, vol 2, No 2, 1998. [9] N. Cristianini y J Shawe-Taylor. An introduction to support vector machines and other kernel-based learning methods, Cambridge university press, 2000. [10] V. Wan. Speaker Verification using Support Vector Machines,Dissertation submitted to the University of Sheffield for the degree of Doctor of Philosophy. Department of Computer Science. University of Sheffield. United Kingdom, 2003. [11] B. Scholkopf y A. J. Smola. Learning with Kernels: Support Vector Machines, Regularization, Optimization, and Beyond, The MIT Press, Cambridge, Massachusetts, London, England. 2002. [12] W. Choi, D. Ahn, S. B. Pan, K. Chung, Y. Chung y S. Chung. “SVM-Based speaker verificaction system for match-on-card and its hardware implementation”, ETRI Journal, Volume 28, Number 3, Junio de 2006. [13] C. Lin. A guide to support vector machines, National Taiwan University, Noviembre de 2004. http://www.csie.ntu.edu.tw/~cjlin.[14] J. Bernal, J. Bobadilla, P. Gómez. Reconocimiento de voz y fonética acústica, Ed. AlfaOmega, 2000. [15] N. Plannerer. An Introduction to Speech Recognition. Noviembre 28 de 2005. [16] F. Bimbot, J. Bonastre, C. Fredouille, G. Gravier, I. Magrin-Chagnolleu, S. Meignier, T. Merlin, J. Ortega-Garcia, D. Petrovska-Delacretaz, D. A.Reynols. A Tutorial on Text-Independent Speaker Verification, Agosto 3, 2003. [17] J. Campbell. “Speaker Recognition: A tutorial,” Proceedings of the IEEE, Vol 85, No.9, pp. 1437-1462, 1997. [18] S. Gunn. Support Vector Machines for Classification and Regression, Technical Report. University Of Southampton, England. 10 May 1998.http://www.isis.ecs.soton.ac.uk/resources/svminfo/ [19] E. Villatoro, L. Villaseñor-Pineda y M. Montes-y-Gómez. Comparación de algoritmos de aprendizaje para identificación del usuario a través de la voz, Instituto Nacional de Astrofísica, Óptica y Electrónica, México, Agosto de 2006.

Page 53: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 53 - 56

Aplicación de modelos paramétricos a la caracterización de señales sísmicas

Hernán H. Agudelo, Student Member, IEEE, Julian David Echeverry, Mauricio Alexánder Álvarez y Ricardo Henao

Aplicacion de modelos parametricos a lacaracterizacion de senales sısmicas

Hernan H. Agudelo, Student Member, IEEE, Julian David Echeverry,Mauricio Alexander Alvarez y Ricardo Henao

Resumen—Se desarrolla en este trabajo una metodologıa parala extraccion de caracterısticas sobre la representacion conjuntaen los dominios del tiempo y la frecuencia de senales sısmicas, quepermite identificar entre los diferentes tipos de sismos de origenvolcanico, que actualmente son estudiados por la Red SismologicaNacional de Colombia (RSNC). Se emplean modelos parametricosautorregresivos (AR, ARMA) en la identificacion de procesosaleatorios. El estudio se realiza sobre tramas enventanadas dela senal donde previamente se ha validado la hipotesis deestacionariedad. Se aplican diferentes criterios en la selecciondel orden del modelo parametrico. La respuesta en frecuenciadel sistema identificado permite construir una representacionen el dominio conjunto del tiempo y la frecuencia a fin decaracterizar eventos a lo largo del tiempo propios de cada tipode onda sısmica. Se emplea un clasificador bayesiano en la tareade reconocimiento. Se obtienen porcentajes de reconocimiento de97.8 % entre dos clases de senales volcanicas.

Palabras Claves—Procesamiento de senales sısmicas, modeladoparametrico

I. INTRODUCCION

LA superficie de la Tierra esta en constante movimiento, elcual puede aumentar debido a la actividad del hombre en

menor escala, o a mayor escala debido a procesos geofısicospropios de la dinamica interna del planeta; estos procesos setraducen en senales sısmicas que se propagan a traves dela corteza terrestre [1]. Las senales sısmicas son estudiadascomo procesos aleatorios no estacionarios [2], de origentanto volcanico como tectonico; estas se originan a partirdel desplazamiento de las placas internas de la cortezaterrestre, el flujo de magma a traves de la estructura internade los volcanes o el desprendimiento de materiales talescomo roca, hielo o lodo en las laderas de las montanas.La actividad de recopilacion y caracterizacion de eventosvolcanicos y sısmicos, contenidos en las senales adquiridaspor instrumentos de medida especiales conocidos comosismografos, es fundamental para definir planes de prevenciony cuidado en zonas de alto riesgo. Es de particular interesdentro de la sismologıa y la vulcanologıa poder definirla naturaleza de las senales sısmicas a fin de estudiarlos fenomenos fısicos asociados a la ocurrencia de lasmismas [3]. En la actualidad el proceso de caracterizaciony etiquetado de los eventos sısmicos observados en lasestaciones pertenecientes a la Red Sismologica Nacional deColombia (RSNC), es realizada de forma manual por expertosadscritos a los observatorios que componen la Red.

La identificacion automatica de senales sısmicas puedehacerse mediante el estudio del comportamiento de lasmismas en los dominios del tiempo y la frecuencia [2],[4]. La identificacion de modelos matematicos que estimenel comportamiento de la senal en el tiempo, permiteobtener una aproximacion a esta representacion en cuanto

Los autores pertenecen al Grupo de Control e Instrumentacion de laUniversidad Tecnologica de Pereira. e-mail de contacto [email protected]

se determina una funcion de transferencia, para modelar elsistema geofısico que genera las senales objeto de estudio.La aplicacion de estos modelos se realiza sobre segmentosde tiempo de las senales sısmicas donde estas presentan uncomportamiento cuasi-estacionario. A partir de la respuesta enfrecuencia de la funcion de transferencia del modelo puedengenerarse superficies de ajuste y/o contornos energeticos quepermiten extraer caracterısticas discriminantes entre clases;Estas superficies son en si una representacion en tiempo yen frecuencia de la senal.

Los modelos parametricos han sido utilizados previamentepara obtener caracterısticas de senales sısmicas. Eninvestigaciones realizadas anteriormente [5] se han obtenidoaltos porcentajes de discriminacion, mediante el empleode clasificadores robustos, sin tener en cuenta la noestacionariedad de la senal. En otros trabajos, han sidoutilizadas tecnicas de representacion como la transformadawavelet y espectrogramas [2], coeficientes de prediccionlineal LPC [6], y analisis del contenido espectral de lassenales calculado mediante la funcion de autocorrelacion, ymedidas estadısticas sobre las senales mismas [4].

Se desarrolla en este trabajo una metodologıa para laextraccion de caracterısticas en senales sısmicas que permiteidentificar entre los diferentes tipos de sismos de origenvolcanico.

II. MODELOS PARAMETRICOS

Los modelos parametricos son representacionesmatematicas de sistemas, generalmente no estacionarios,que se obtienen de la medicion de una variable explicativa delsistema estudiado. Esta medicion produce una observacionyi = Y (ui), donde ui es la unidad de estudio. Estaobservacion permite construir la expresion

yi = f(xi; θ) + ςi i = 1, 2, . . . , n, (1)

donde f(xi; θ) es funcion dependiente de las condiciones xi, yesta indexada en el espacio parametrico Θ, donde θ, que es elparametro de interes, determina el miembro particular [7]. Sedebe aclarar que ςi representa la parte aleatoria del sistema, yse supone no observable con distribucion probalıstica, asumidageneralmente gaussiana.

Los modelos parametricos mas utilizados son los de lafamilia ARMA; estos incluyen los puramente autorregresivos(AR) y los de media movil (MA). Los modelos ARMAson usados para modelar estructuras dinamicas lineales,representar relaciones lineales entre variables y servir comomedios para la prediccion lineal. A continuacion se hace unabreve descripcion de los modelos usados en este trabajo.

A. Autorregresivos AR

EL modelo AR o de solo polos, expresa la salida comouna combinacion lineal de muestras anteriores de la salida

Page 54: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 54

en un instante determinado. Se conoce de solo polos porquesu funcion de transferencia presenta un valor constante enel numerador. Para sistemas de los cuales se desconoce suentrada, se puede aproximar su salida en un instante de tiempodado a traves de sus valores pasados. Otra interpretacion deeste modelo se da en el sentido de que la salida actual puedeser predicha como una combinacion lineal de valores pasados;por esto se le conoce tambien como modelo de prediccionlineal [8].

B. De media movil MA

Este modelo se diferencia basicamente del anterior en queposee solo ceros en su funcion de transferencia, siendo elvalor del denominador constante. Esta caracterıstica dificultael modelar un espectro de picos agudos, a menos que el ordendel modelo sea suficientemente alto [9]. Es ası como, igualque el modelo autorregresivo, el modelo de media movil esuna combinacion lineal de parametros no recursiva.

C. Autorregresivos de media movil ARMA

Se conoce tambien con el nombre de modelo de polos yceros. El modelo ARMA se construye como una combinacionlineal de los modelos anteriores, donde la componenteautorregresiva permite estimar los picos de densidad espectralde potencia, mientras la componente de media movil permiteestimar correctamente la informacion de los valles en elespectro. Este modelo parametrico es ampliamente utilizado enla identificacion de sistemas dada su flexibilidad, sin embargono aproxima de manera adecuada fenomenos no linealespresentes en la mayorıa de sistemas fısicos [10].

III. SELECCION DE PARAMETROS DE ANALISIS

A. Ancho de ventana

Es conveniente analizar segmentos de las senales quepresenten un comportamiento estacionario; esto dado quelos modelos parametricos citados anteriormente modelan deforma adecuada series de tiempo estacionarias. Debido a sunaturaleza, las senales sısmicas son procesos aleatorios y noestacionarios, sin embargo pueden determinarse ventanas detiempo para las cuales dichas senales cumplen con condicionesde cuasi estacionariedad [11].

B. Orden del modelo

Uno de los aspectos mas importantes del uso de modelosparametricos autorregresivos es la seleccion del orden p.Como regla general, si se selecciona un modelo con ordenmuy bajo, se obtiene un espectro altamente suavizado. Porotra parte, si p se selecciona muy alto, se corre el riesgo deintroducir falsos picos de bajo nivel en el espectro. En elcaso del modelo autorregresivo, el valor cuadratico mediodel error residual constituye un indicador de desempeno.La caracterıstica de este error residual es que decrece amedida que el orden del modelo AR incrementa. Se puedemonitorear la tasa de decremento y finalizar el proceso deactualizacion del orden cuando la tasa de decremento sevuelva relativamente lenta [12].

Diversos metodos se han descrito para la seleccion del ordendel modelo autorregresivo, entre los cuales el mas conocidoes el criterio de informacion de Akaike (AIC). Este criterio sebasa en seleccionar el orden que minimiza la expresion

AIC(p) = ln(σ2

ωp) +2p

N, (2)

donde σ2

ωp es la varianza estimada del error lineal deprediccion. Este ındice de desempeno esta basado en laminimizacion del error cuadratico medio para un predictor deun paso. Notese que el termino σ2

ωp decrece y por lo tantoln(σ2

ωp) decrece tambien a medida que el orden del modeloAR se incrementa. Sin embargo, 2p

Nse incrementa en razon

de p. Debido a esto, el mınimo valor es obtenido para algunvalor p.

Otros trabajos sugieren que el criterio de informacion deBayes permite una mejor estimacion del orden del modeloautorregresivo. El criterio de informacion de Bayes (BIC),esta basado en seleccionar el orden que minimiza el largode la descripcion, donde BIC se define segun:

BIC(p) = Nln(σ2

ωp) + pln(N) (3)

Un metodo un poco mas heurıstico y computacionalmentemas costoso se basa en hallar el orden para el cual el error deestimacion del modelo sea mınimo. En este se busca variarel orden de los modelos parametricos y estimar la senal,comparandola con la senal original punto a punto con elobjetivo de minimizar el error cuadratico medio entre ambas.

IV. GENERACION DE SUPERFICIES DE AJUSTE

Una vez identificado el modelo parametrico que describe ladinamica propia de la senal sısmica sobre ventanas de tiempode analisis, se procede a calcular la respuesta en frecuencia dela funcion de transferencia que describe al sistema para cadaintervalo y a generar de esta forma una representacion en eldominio conjunto del tiempo y la frecuencia. Esta forma derepresentacion, denominada superficie de ajuste o superficie deregresion permite evaluar la dinamica de cambio en la senal alo largo del tiempo, como se puede ver en la figura 1.

V. EXTRACCION DE CARACTERISTICAS

Las caracterısticas utilizadas en el proceso dereconocimiento fueron extraıdas de la representaciontiempo frecuencia de la senal obtenida a partir de lassuperficies de ajuste. Durante el proceso de experimentacionfueron extraıdas 55 caracterısticas, tales como los cincoprimeros momentos estadısticos sobre los ejes del tiempo,de la frecuencia y sobre los coeficientes de los modelos. Serealizo de igual forma el calculo de la energıa contenida enla superficie (criterios de Teager y Shannon) y se calcularonparametros de perturbacion. Estos parametros se obtuvieronutilizando la expresion:

Vp =1

N−1

�N−1

i=1[p(i + 1) − p(i)]

1

N

�N−1

i=1p(i)

, (4)

sobre la media por filas de la superficie de ajuste. Seobtuvieron ası mismo estos parametros sobre los vectores deenergıa.

Page 55: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 55

Fig 1. Senales Sısmicas y sus superficies de ajuste

VI. MATERIALES

La base de datos utilizada es una coleccion de registrossısmicos del Observatorio Vulcanologico y Sismologico deManizales. Consta de 622 datos clasificados como sismosLargo Periodo (LP), y 487 registros etiquetados comoVulcano-Tectonicos (VT), digitalizados con una frecuenciade muestreo de 100.16 Hz. Estos registros fueron medidosen la estacion Olleta, sismografo ubicado a 4◦ 54.12′N, 75◦

21.54′W, aproximadamente a 4 km del crater principal delVolcan Nevado del Ruiz, sobre 4.630 m.s.n.m.

VII. RESULTADOS

Inicialmente se determino el orden de los modelos AR yARMA. Se utilizaron los criterios de Akaike (AIC), Bayes(BIC) y el criterio de mınimo error de estimacion. En elmodelo autorregresivo, se obtuvo un orden optimo de 7 polosa partir de los criterios de Bayes y de mınimo error deestimacion. En el modelo ARMA se obtuvo un orden optimode 4 polos y 16 ceros mediante el criterio de mınimo errorde estimacion. Sin embargo, realizando diferentes pruebas dereconocimiento para diferentes ordenes de los modelos, seobtuvo que el orden que mejor porcentaje de clasificacionentrega es de 7 polos y 18 ceros para el modelo ARMA.

Posteriormente fueron generadas las superficies de ajustea partir de la estimacion parametrica utilizando los modeloscitados. Se emplearon ventanas partiendo de intervaloscuasi estacionarios para cada clase, previamente calculadosmediante el metodo Runtest [11]. Estos intervalos son de0.7962 segundos (equivalentes a 80 muestras) para la claseLP y de 0.6957 segundos (equivalentes a 70 muestras parala clase VT). Estas ventanas fueron traslapadas en 0.05 so 5 muestras. De las matrices de ajuste se calcularon lascaracterısticas antes descritas, un total de 55. Se procedio arealizar pruebas de clasificacion empleando un clasificador deBayes con validacion leave one out. Los resultados de este

proceso de clasificacion con los modelos AR y ARMA semuestran en la tabla I.

Modelo Parametrico VT LP Acierto

AR 88,91 88,74 88,82 %

ARMA 98,76 96,30 97,53 %

TABLA IRESULTADO DE CLASIFICACION PARA TODAS LAS CARACTERISTICAS

OBTENIDAS DE SUPERFICIES DE AJUSTE

El porcentaje de clasificacion obtenido con el modeloautorregresivo de media movil es el mas alto alcanzado sinutilizar ningun metodo de reduccion de dimensionalidad. Enesta misma tabla se observa el resultado de clasificacion,a partir de las caracterısticas del modelo AR, siendo esteinferior comparado con el anterior en ambas clases. Estopermite inferir que el modelo ARMA permite observar mejorel comportamiento de las senales sısmicas objeto de estudioque el modelo AR.

Posterior a este proceso, se aplicaron dos tecnicas dereduccion de dimensionalidad al modelo AR, sin obtenermejoras en los resultados de clasificacion. El analisis decomponentes principales (PCA) arrojo un resultado declasificacion de 88.44 %. Con el analisis discriminante lineal(LDA) se obtuvo 88.34 % de porcentaje de acierto en laspruebas de clasificacion.

Estas pruebas se repitieron para las caracterısticas obtenidascon el modelo ARMA. Se obtuvieron mejoras pocosignificativas en los resultados de clasificacion. Para PCA yLDA se mejoro el resultado a 97.88 %. La diferencia se dioen el numero de caracterısticas con las cuales se obtuvo dichoresultado para cada tecnica. Para LDA fueron 53 mientras quepara PCA fueron 51 caracterısticas. Se observa entonces quePCA permite la mayor reduccion de caracterısticas mejorando

Page 56: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 56

el resultado de clasificacion.

VIII. DISCUSION

En los trabajos de clasificacion de sismos no ha sido unatarea importante la extraccion de caracterısticas. Ese es el ejecentral de este trabajo. Se determino la utilidad del modeloparametrico autorregresivo de media movil, para reconstruirlas senales sısmicas de las clases objeto de estudio. No sehallo informacion sobre la utilizacion del modelo ARMA enotros trabajos de caracterizacion o clasificacion de senalessısmicas. Por el contrario modelo AR ha sido utilizado paracalcular la estimacion de la densidad espectral de potencia,lo que ha permitido extraer caracterısticas que luego fueronclasificadas usando procesos gaussianos [13] para obtenerresultados acierto del 94 %.

Para trabajos futuros, se utilizaran clasificadores de mayordesempeno como maquinas de soporte vectorial o procesosgaussianos, buscando mejores resultados de clasificacion.

IX. CONCLUSIONES

El modelo parametrico autorregresivo de media movilpermite obtener una mejor identificacion del sistemageofısico que genera las senales sısmicas que el modeloautorregresivo. Esto se sustenta en los resultados declasificacion obtenidos (tabla I) con ambos modelos,esto a pesar de que, al comparar las graficas donde semuestran las superficies de ajuste de cada modelo y clase(figura 1), se podrıa pensar que el modelo AR permiteextraer mayor cantidad de informacion del sistema.La generacion de superficies de ajuste permite estudiarla dinamica de cambio de las senales no estacionariasen los planos del tiempo y la frecuencia, permitiendoextraer caracterısticas discriminatorias en este espacio derepresentacion.Las caracterısticas extraıdas sobre las superficiesestimadas a partir del modelo autorregresivo de mediamovil permiten discriminar con tasas hasta del 97.8 %entre las diferentes clases de sismos de origen volcanico.

AGRADECIMIENTOS

Los autores agradecen al Observatorio Sismologico yVulcanologico de Manizales - INGEOMINAS - por la basede datos facilitada y la colaboracion prestada a lo largo delproyecto de investigacion.Este trabajo se desarrollo en el marco del proyectode investigacion “CLASIFICACION AUTOMATIZADA DEEVENTOS SISMICOS”, financiado por la UniversidadTecnologica de Pereira con codigo 9-07-04.

REFERENCIAS

[1] B. L.N. Kennett, The Seismic Wavefield. Cambridge University Press,2001.

[2] K. B. Mohammed Benbrahim, Adil Daoudi and A. Ibenbrahim,“Discrimination of seismic signals using artificial neural networks,”Transactions On Engineering, Computing And Technology, vol. 4, 2005.

[3] J. M. Londono, “Manual de sismologıa y volcanica basica,” 2002,observatorio Vulcanologico de Manizales.

[4] T. P. b. H. Langer, S. Falsaperla and G. Thompson, “Automaticclassification and a-posteriori analysis of seismic event identificationat soufrie‘re hills volcano, montserrat,” Journal of Volcanology andGeothermal Research, vol. 153, 2006.

[5] R. P. D. Mauricio Orozco, Marcelo E. Garcıa and C. G. Castellanos,“Dissimilarity-based classification of seismic signals at nevado del ruizvolcano,” Earth Sciences Research Journal, vol. 10, 2006.

[6] S. Scarpetta and F. Giudicepietro, “Automatic classification of seismicsignals at mt. vesuvius volcano, italy, using neural networks,” Bulletinof the Seismological Society of America,, vol. 95, 2005.

[7] M. M. Ojeda, “La modelacion estadıstica,” Foro de Matematicas delSureste, p. 76, Diciembre 2004.

[8] J. D. Echeverry, “Caracterizacion acustica de biosenales empleandotransformadas tiempo frecuencia y modelado parametrico,” Master’sthesis, Universidad Tecnologica de Pereira, 2006.

[9] P. Stoica and R. L. Moses, Introduction to Spectral Analysis. PrenticeHall, February 1997.

[10] J. Fan and Q. Yao, Nonlinear Time Series: Nonparametric andParametric Methods. Springer, August 2005.

[11] K. S. Shanmugan, Random Signals: Detection Estimation and DataAnalysis, Wiley, Ed. Wiley, 1988.

[12] J. G. Proakis and D. G. Manolakis, Tratamiento Digital de Senales,3rd ed., I. Capella, Ed. Prentice Hall, 2000.

[13] M. Alvarez and R. Henao, “Clasificacion de eventos sısmicos empleandoprocesos gaussianos,” Scientia et Technica, vol. 35, 2007.

Page 57: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 57 - 60

Control de mouse através de señales EOG y algoritmos de Boosting

Diana Mahecha, Fernando Lozano, Elkin García,

Control de Mouse a través de señales EOG yAlgoritmos de Boosting

Diana Mahecha, Fernando Lozano, Elkin García,

Resumen—La creación de alternativas de acceso a la tecnología orien-tadas a personas discapacitadas, es un área de gran interés en la actuali-dad. El desarrollo de software asociado a estos elementos tiende a la imple-mentación de interfaces gráficas, cuyo principal acceso es el cursor contro-lado por el Mouse. Crear una interfaz entre un usuario discapacitado y estecontrol, es un paso muy importante para permitir su interacción exitosacon diferentes tecnologías. Este documento describe el diseño y la imple-mentación de un control de Mouse manejado por potenciales bioeléctricos,dirigido a personas con algún tipo de discapacidad física-motora. Se centraen la adquisición de señales electrooculográficas (EOG) y su clasificaciónmediante técnicas del área de Machine Learning, más específicamente, pormedio de la aplicación de algoritmos de Boosting Multivariable usando unclasificador lineal como aprendiz débil. Se obtenienen resultados competi-tivos en la generalización.

Index Terms—Electrooculografía, Boosting, Aprendizaje, Adquisición,Boosting Multivariable, Mouse

I. INTRODUCCIÓN

ACTUALMENTE, el uso creciente de los computadores hallevado a crear alternativas de acceso a los mismos para

personas con diferentes grados de discapacidad motora. Existendistintos tipos de mouse alternativos al tradicional, cuyo desar-rollo consiste principalmente en 3 áreas: El reconocimiento deimágenes de video, el uso de elementos físicos fáciles de mane-jar con partes del cuerpo diferentes a las manos y el análisis depotenciales bioeléctricos [1] [2] [3] [4]. De acuerdo al grado dediscapacidad se debe escoger la opción que brinde más como-didad al usuario.

En el análisis de potenciales bioeléctricos se usan diferentestécnicas: electromiografía (EMG), electroencefalografía (EEG)y electrooculografía (EOG). Este trabajo se enfoca en el análi-sis EOG y el uso técnicas de clasificación del área de MachineLearning (Boosting Multivariable) para desarrollar un controlde mouse por medio del análisis EOG.

A continuación, en la sección II se explican los conceptosgenerales de la técnica de EOG y el aprendizaje supervisadocon boosting. En la sección III se desarrolla la implementacióny diseño de la solución. En la sección IV se presentan los resul-tados y finalmente en la sección V las conclusiones.

II. PRELIMINARES

A. Electrooculografía

El análisis electrooculográfico obtiene una apreciación direc-ta de la movilidad ocular mediante la medición de voltajes difer-enciales alrededor del ojo [5]. Hay 4 movimientos oculares en-tre los cuáles están los sacádicos [6]. Estos son desplazamientosangulares muy rápidos y precisos que se producen al observar

D. Mahecha. Departamento de Ingeniería Eléctrica y Electrónica, Universi-dad de los Andes, Bogotá, Colombia, email: [email protected]

F. Lozano. Departamento de Ingeniería Eléctrica y Electrónica, Universidadde los Andes, Bogotá, Colombia, email: [email protected]

E. García. Departamento de Ingeniería Eléctrica y Electrónica, Universidadde los Andes, Bogotá, Colombia, email: [email protected]

Figura 1.Comportamiento del ojo humano como dipolo (derecha) y ubicaciónde electrodos para el análisis EOG (izquierda). Los electrodos B y C toman laseñal vertical, los electrodos D y E toman la señal horizontal y el electrodo Asirve de referencia.Imagen tomada de [1]

con detalle algún objeto y son los únicos movimientos que secontrolan voluntariamente.

La fuente de la señal EOG es el potencial continuo existenteentre la cornea y la base del ojo. De esta forma el ojo se compor-ta como un dipolo que se mueve en un conductor de volumenno homogéneo (la cabeza). Con el uso de 5 electrodos puestosalrededor de los ojos (Figura 1) se pueden medir estos poten-ciales y ser usados en la detección de la dirección de la miradarespecto a la cabeza. [7]

Muchos estudios han intentado determinar la relación entre elvoltaje del EOG y el ángulo de mirada. Rafael Barea [6] realizóun amplio estudio acerca de este tema y se resaltan los sigu-ientes resultados:

- La señal EOG varía entre 50 y 3500 µV con un rango defrecuencias de DC-35Hz y tiene un comportamiento linealpara ángulos entre ±30o.

- La señal EOG se ve perturbada por otros biopotenciales(EEG, EMG)y las perturbaciones del sistema de adquisi-ción.

- El EEG y el EMG pueden producir errores de aproximada-mente un grado.

- La forma del EOG para movimientos sacádicos es similaren cualquier persona, por eso al usar una normalización delos datos se obtiene un modelo EOG universal.

- Los movimientos sacádicos pueden detectarse en funciónde la derivada del EOG.

B. Aprendizaje supervisado y Boosting

El aprendizaje supervisado está fundamentado en una progra-mación por ejemplos, en donde el algoritmo conoce la respuestacorrecta a los patrones de entrada y encuentra una regla de clasi-ficación (hipótesis) que asigna una etiqueta a cada elemento enel espacio de entrada. El objetivo de la hipótesis no es respon-der bien a los datos de entrenamiento, sino a nuevos datos, porconsiguiente, es necesario realizar validación cruzada. El des-empeño es evaluado por medio de los errores de entrenamientoy generalización. En el primero se evalúan los datos nuevos (queno han sido pasados por el algoritmo) y en el segundo los datos

Page 58: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 58

con los que se aprende. La validación cruzada consiste entonces,en un compromiso entre estos errores, ya que si el error de en-trenamiento se hace muy pequeño puede existir sobre ajuste alos datos y no generalizar.

Los algoritmos de boosting toman un algoritmo débil (algo-ritmo que retorna una hipótesis para cualquier distribución conun error arbitrariamente cercano a la probabilidad de etiquetarbien un dato adivinando: 50% ) que busca minimizar el errorempírico y a partir de llamadas iterativas a éste, generan unahipótesis fuerte cuyo error es arbitrariamente pequeño.

Adaboost [8] es un algoritmo de boosting adaptativo y con-siste en la creación de una hipótesis fuerte a partir de la com-binación lineal de hipótesis débiles. Los pesos de esta combi-nación lineal son modificados en cada iteración de acuerdo alerror de entrenamiento de la hipótesis retornada por el aprendizdébil, de tal forma que en la siguiente iteración del algoritmo, elobjetivo es aprender los datos en los que se equivoca la hipótesisanterior. En este caso los errores se hallan respecto a la distribu-ción Dt de la iteración t y están dados por:

t = Pri∼D[Ht(xi) = yi] =

i:ht(xi)=yi

Dt(i) (1)

III. DISEÑO E IMPLEMENTACIÓN

A. Adquisición señales EOG

La arquitectura del sistema de adquisición consta esencial-mente de dos partes:

1. Acondicionamiento de la señal: Las señales EOG horizon-tal y vertical se toman por medio de electrodos superfi-ciales pediátricos de Ag/AgCL y son amplificadas 500 ve-ces con amplificadores de instrumentación INA128. Sigueuna etapa de aislamiento implementada con un ISO124que independiza la alimentación de los elementos conecta-dos al usuario de la alimentación del resto del circuito. Seimplementa un filtro pasa banda entre el ancho de bandade señales EOG [10mHz-35Hz], conformado por un filtropasa bajas (2o orden) y un filtro pasa altas (4o orden), confrecuencias de corte en los límites de la banda. Este filtra-je elimina ruidos producidos por el movimiento de mús-culos cercanos, la red eléctrica y la componente continuadel EOG. Finalmente se realiza un acondicionamiento paraponer la señal en el rango del ADC [0V,5V].

2. Digitalización y transmisión al computador: Esta com-puesta por la conversión análoga-digital y la trasmisión se-rial al computador. Para esto se usa el PSOC CY8C27443-24PXI que cuenta con un ADC dual configurado a 105Hzpara cada canal y un módulo de trasmisión serial.

B. Construcción de la base de datos

Para conformar la base de datos necesaria en el entrenamien-to, se implementó una aplicación en la que se programaron 10protocolos con el objetivo de registrar diferentes movimientossacádicos del ojo, variando las direcciones y la magnitud de losdesplazamientos. La prueba tiene una duración de 5 minutosaprox. y consiste en que el usuario manteniendo la cabeza en elcentro de la pantalla y aproximadamente a 30cm de la misma,siga el movimiento de un indicador y en determinados momen-tos realice parpadeos voluntarios.

Figura 2.Preprocesamiento de los datos de un protocolo. Las flechas en la grá-fica indican un 1 en la columna de codificación de la dirección que indican y laestrella un 1 en la columna de click

La toma de datos se realizó con 20 personas entre 21 y 58años, sin discapacidad motora. Esto no representa ningún prob-lema ya que como se mencionó anteriormente, la forma delEOG es similar en todas las personas y en el caso que los usua-rios discapacitados presenten algún tipo de variación conside-rable, el sistema puede ser fácilmente adaptado tomando unanueva base de datos con ellos y corriendo el algoritmo de entre-namiento con ella.

C. Preprocesamiento de los datos

Antes de utilizar los datos en cualquier algoritmo de apren-dizaje, es necesario extraer de ellos determinadas característicassobre las cuales se va a crear la hipótesis. En este caso estamosinteresados en detectar los movimientos sacádicos producidospor el ojo y según [6] una forma de hacerlo es evaluando laderivada de la señal. El preprocesamiento realizado fue el sigu-iente:

- Para eliminar ruidos se promedia cada señal con intervalosde 47.61ms (cada 5 datos).

- Se halla una aproximación a la derivada en cada dato pro-mediado por medio de la ecuación 2 , en donde tomamos∆t= 333,33ms, que es el tiempo trascurrido entre 7 datospromediados.

δX

δt=∆X

∆t=

Xi −Xi+7

ti − ti+7(2)

- Se mide la energía de cada 3 datos de la derivada conser-vando el signo para hacer más evidentes los cambios y porúltimo se escoge la energía de máxima magnitud entre 5datos consecutivos.

En la figura 2 se muestra el preprocesamiento para uno de losprotocolos implementados, junto con el etiquetamiento realiza-do gracias a códigos guardados durante la ejecución del progra-ma de adquisición. Después de etiquetar los datos, se dividieronpor clases y se repartieron aleatoriamente en dos grupos, unopara entrenamiento y el otro para evaluación. Cada grupo que-do conformado con aproximadamente 2500 datos.

Page 59: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 59

Algoritmo 1 Algoritmo débil usado.Entrada: S = {xord,yord}mi ,D- Inicializar emin=mxant = xord(1)− 0,5for all t= 1 :m doht =

xord(t)−aant2 [ If xi ≥ ht → yi = 1;else yi =−1]

- Evaluar el error pesado et de hipt (respecto a D).if et < 0,5 thenet = (1− et) - Invertir la polaridad de la hipótesis

end ifif et < emin thenemin = et ; hout = ht

end ifxant = xord(t)

end forSalida: hout

D. Adaboost Multivariable

Originalmente Adaboost es un algoritmo diseñado para prob-lemas binarios, sin embargo, existen varios métodos para exten-derlo a problemas multivariable. Se han propuesto varias aprox-imaciones como AdaBoost.M1 [9] que usa un aprendiz débilmultivariable y AdaBoost.MH [8] o AdaBoost.M2 [10] que cre-an problemas binarios al comparar las clases entre sí. Tambiénhay acercamientos usando métodos de codificación de salida,como AdaBoost.MO [11] que usa una matriz de codificación(código por clase) y modifica la salida de la hipótesis final mi-diendo su distancia a los códigos y AdaBoost.OC [10] que usacodificación EOCO .

El objetivo de la implementación de algún algoritmo deboosting multivariable en la clasificación de señales EOG estomar los datos bidimensionales entregados por el preproce-samiento y retornar la dirección del movimiento realizado. Paraesto se definen 5 movimientos básicos: arriba, abajo, derecha,izquierda y clic (parpadeo voluntario) y 4 movimientos diago-nales, que corresponden a combinaciones de los anteriores. Lacodificación usada se presenta en la figura 3

Figura 3. Codificación movimientos. A: Mov. básicos, B: Mov. diagonales.

Debido a la forma de los datos y a su proporcionalidad con elmovimiento del ojo, se usa como clasificador débil un separadorlineal. La implementación de este clasificador corresponde alalgoritmo 1 y recibe como entradas un vector con los datos or-denados de la dimensión l y las respectivas etiquetas ordenadas.El algoritmo recorre los datos generando la hipótesis i y evalúasu error pesado (ecuación 1) en todos los datos. Luego, si esteerror es mayor a 0.5 invierte la polaridad de la hipótesis y hallael respectivo error (1− ei). Después se compara con el mínimoerror hasta el momento y si es menor, se guarda la hipótesis i.Las hipótesis i recorren los puntos medios de los datos, es de-cir, es el valor medio entre un dato i y el dato inmediatamenteanterior a él.

Como el clasificador débil es binario se plantea la solucióncreando varios problemas binarios a partir del problema multi-variable. La exigencia en la precisión del algoritmo débil es mu-cho más alta en los problemas multivariable, ya que la probabil-

Algoritmo 2 Algoritmo de boosting multivariable usado.Entrada: S = x,yi

mi=1 donde xi ∈X,Yi ⊆ γ

for all i= 1 : T dofor all l = 1 : L do

- Correr alg. débil usando la distribución D y obtener la hip. débil h(x)lt conerror: t(l) = Pri∼D[ht(xi) = yi] - Escoger:

αt(l) =1

2ln

1− t(l)

t(l)(3)

- Actualizar:

Dt+1 =Dt(i, l) exp(−αtY (i, l)ht(Xi, l))

Zt

(4)

donde Zt es un factor de normalización para que Dt+1 sea una distribución.Zt = 2

t(l)(1− t(l))

end forend forSalida:

H(x, l) = sign[

Tt=1

αtt αt

ht(x, l)] (5)

idad de que al adivinar la etiqueta, ésta sea correcta, es menor al50%. Al evaluar la hipótesis débil con AdaBoost.MH, se encon-tró que no tiene el nivel de precisión requerido y por consigu-iente se realiza una adaptación del algoritmo AdaBoost (cuyaexigencia a la hipótesis débil es menor), a la lógica usada porAdaBoost.MH. Para esto se crea una distribuciónD a cada clasede datos y se actualizan los valores de αt y Zt de acuerdo a Ada-Boost. El resultado es el seudo-código presentado en la figura 2,el cuál es el algoritmo implementado en la clasificación de lasseñales EOG.

E. Mouse Electrooculográfico basado en Boosting

La solución final del mouse electrooculográfico consta de dosetapas. La primera es la tarjeta de adquisición de señales descri-ta en el apartado A y la segunda es la aplicación EOG mouse.

EOG mouse se desarrollo en Visual Studio.NET 2005 conVB.net como lenguaje y está compuesto de los siguientes mó-dulos:

1. RX Serial: Se encarga de la recepción de los datos de latarjeta de adquisición. Organiza los datos en parejas (Med.Vertical, Med. Horizontal).

2. Preprocesamiento de los datos: Consiste en el algoritmodescrito en el apartado C pero en vez de recorrer un vector,procesa secuencialmente los datos entregados por el mó-dulo 1.

3. Hipótesis Boosting: Es la hipótesis combinada obtenidadel algoritmo de boosting implementado. La hipótesis secarga al iniciar la aplicación desde archivos .txt a vectores.Se implementó una rutina para evaluar la hipótesis con ca-da par de datos provenientes del preprocesamiento, dandocomo resultado un vector con 5 posiciones que representael movimiento detectado.

4. Acciones mouse: En esta etapa se identifican losmovimientos realizados usando la codificación descrita yde acuerdo a ellos se utilizan rutinas disponibles en VisualStudio y en internet para mover el cursor y simular el click.

Page 60: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 60

TABLE ICOMPARACIÓN DE PORCENTAJE DE ACIERTOS DE ENTRENAMIENTO Y

GENERALIZACIÓN

Clases 1 2 3 4 5 TotalEnt. [%] 98.56 99.15 98.92 98.74 99.77 96.55Gen. [%] 98.08 99.10 98.68 91.61 99.76 95.41

IV. RESULTADOS

En la tabla I se muestran los resultados obtenidos al correr elalgoritmo 100 veces. Podemos ver que en general no hay ningu-na clase que sea más difícil de aprender que la otra, ya que todasllegan a errores bajos. La clase con más precisión en general-ización es la 5, lo cual tiene sentido ya que sus valores están enun rango diferente al del resto. Dado que 100 es un número ba-jo de iteraciones, comparado al número de entrenamientos quesuelen hacerse en boosting (500-1000), podemos decir que losresultados obtenidos son muy buenos. Esto evidencia la eficaciadel algoritmo débil que es potencializada por la aplicación delboosting.

En la Figura 4 se presentan los resultados para 500 itera-ciones. Usando validación cruzada, podemos ver que el puntomínimo de ambos errores se da en 271 iteraciones (4.2 % parageneralización y 2.96 % para entrenamiento). A partir de estevalor, aunque el error de entrenamiento sigue decreciendo, el degeneralización empieza aumentar, lo cual indica que las hipóte-sis se sobre ajustan a los datos. De acuerdo a esto, se escogecomo hipótesis combinada final la lograda en la iteración 271.

Aunque hay varias aplicaciones de este tipo y diferentes es-tudios en torno al tema, muy pocos dan claridad acerca de losmétodos de clasificación usados y más aún, de la efectividadporcentual de los mismos en una base de datos considerable.Al comparar los resultados obtenidos, con la implementaciónde un mouse que usa señales EMG y redes neuronales [12] quereporta errores inferiores al 5 %, se observa que el sistema declasificación implementado es altamente competitivo.

V. CONCLUSIONES

En este trabajo se desarrolló una forma alternativa de accedera diferentes tecnologías para usuarios discapacitados, buscandomejorar su habilidad para desenvolverse libremente en el mundoactual.

En el desarrollo del sistema de control propuesto, seanalizaron características importantes de las señales EOG y losrequerimientos necesarios para desarrollar una adecuada instru-mentación para su digitalización. Además de esto, se realizó unnuevo acercamiento al análisis EOG, partiendo de algoritmosde boosting multivariable para la clasificación de las señales.El preprocesamiento de los datos logró no solo identificar losmovimientos sacádicos sino también condensar su informaciónen muy pocos datos, de tal forma que se pudo asociar cada datoa una clase sin perder mucha información en el proceso.

El algoritmo de Boosting Multivariable implementado per-mitió encontrar una buena solución, que no se sobre ajusta a losdatos y generaliza bien en los mismos.

Quedan planteados para futuros trabajos, la implementación

de las funciones disponibles en un mouse que no se obtuvieron

Figura 4. Errores de entrenamiento y generalización (500 iteraciones).

acá; además del diseño de una interfaz con el usuario masamigable. También es necesario realizar pruebas pruebas adi-cionales de validación con un grupo considerable de personas,preferiblemente con algún tipo de discapacidad. Desde el pun-to de vista del aprendizaje, se puede buscar implementar Ada-Boost.MH u otro algoritmo multivariable, algunos aquí nom-brados, con otras hipótesis débiles para así poder comparar sufuncionamiento en la clasificación de señales EOG.

REFERENCIAS

[1] R. Barea y otros, Diseño de un ratón electrooculográfico parael control de Interfaces Gráficos. España. [Online]. Avail-able: http://www.depeca.uah.es/personal/barea/electrooculografia/saaei00_raton.pdf/. Consultada en: 12/2007

[2] J. Gips y otros Eagle Eyes Project, Boston College. [Online]. Avail-able: http://www.bc.edu/schools/csom/eagleeyes/contact.html. Consultadaen: 12/2007

[3] J. Gips, M. Betke, CameraMouse.org., Boston College. [Online]. Avail-able: http://www.cameramouse.org/index.html. Consultada en: 12/2007

[4] Technologies, Brain Actuated. Cyberlink - Brainfingers: Hands-free Com-puter Access Solution, [Online]. Available: http://www.brainfingers.com/.Consultada en: 12/2007

[5] F. Rodriguez, E. Arenas Oftalmología básica, vol. 2, 1999.[6] R. Barea, Interfaz Usuario-Maquina basado en electroocu-

lografía. Aplicación a la movilidad, Tesis Doctoral, Univer-sidad de Alcalá. Madrid, España., 2001. [Online]. Available:http://www.depeca.uah.es/personal/barea/tesis/tesis.htm. Consultadaen: 12/2007.

[7] L. Geddes Principles of applied biomedical instrumentation., New York :John Wiley & Sons, 1975.

[8] R. Schapire A Brieft Introduction to Boosting. , Proceeding of the Six-teenth International Join Conference on Artificial Intelligence, pp. 1401-1406. 1999.

[9] Y. Freund, R. Schapire, A decision-theoretic generalization of on-linelearning and an application to boosting., Journal of Computer and Sys-tem Sciences., vol. 55, pp. 119-139. 1997.

[10] Y. Freund, R. Schapire, Using Output codes to boost multiclass learningproblems., Machine Learning: Proceedings of the Fourteenth InternationalConference., pp. 313-312. 1997.

[11] R. Schapire, Y. Singer Improved boosting algorithms using confidence-rated predictions., Machine Learning. vol. 37, 297-336.1999.

[12] Z. Huertas Sistema de control de mouse mediante señales electromiográ-ficas faciales., Tesis de maestría. Universidad de los Andes, 2007.

Page 61: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 61 - 64

Análisis de las defi ciencias del uso de enveloping en la señal digital de vibración

Gilberto C. Fontecha Dulcey, GiDeTechMa, Universidad Pontifi cia Bolivariana, Bucaramanga

Page 62: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 62

( )

( )

( )

( ) ( )

+=

( ) ( ) ( )

+=

Page 63: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 63

( )

Page 64: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 64

Page 65: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 65 - 68

Detección de rostros frontales y componentes faciales sobre secuencias de imágenes

Marta Lucía Guevara1, Cristian Guarnizo2, Álvaro Ángel Orozco3

Detección de rostros frontales y componentes faciales sobre secuencias de imágenes

CATEGORÍA C3 Resumen—En este documento se presenta la implementación y

aplicación de un método de detección de rostros y componentes faciales (ojos y bocas), como etapa inicial de un sistema de reconocimiento de emociones. El método se basó en la extracción de características con filtros de base Haar y clasificadores en cascada, y fue probado sobre secuencias de imágenes de la base de daros FEEDTUM, alcanzando un porcentaje de detección del rostro del 94% y un porcentaje detección de los ojos y la boca del 90.5%, con tiempos de procesamiento bajo.

Palabras Claves— Detección de rostros, componentes faciales, imagen integral, base Haar, boosting.

I. INTRODUCCIÓN

El rostro humano es un objeto dinámico que tiene un alto grado de variabilidad en su apariencia que hace su análisis un problema difícil de tratar en el área de procesamiento de imágenes. Este ha sido objeto de investigación desde hace algún tiempo, motivado por su importancia a nivel neurobiológico, psicológico y computacional, y por la cantidad de aplicaciones que se pueden llegar a desarrollar a partir de su estudio como: interfaces hombre-máquina, aplicaciones de seguridad, interfaces animadas, sistemas de reconocimiento de emociones, etc [1].

Las principales áreas de investigación del rostro para el desarrollo de aplicaciones incluyen: la detección, seguimiento, extracción de datos y clasificación. Este trabajo se enfoca en la primera, la detección, por ser una de las más importantes ya que es la base para el desarrollo de sistemas automáticos de reconocimiento e interpretación [1].

Inicialmente la tarea de detección del rostro en los sistemas de reconocimiento no recibió la atención necesaria y se partía de que el rostro ya había sido detectado, fue solo en la década de los ochenta que surgieron los primeros algoritmos, basados en técnicas heurísticas y antropométricas, y en la década de los noventa cuando el desarrollo de algoritmos de detección rostros inició su crecimiento [2], proponiéndose una gran variedad de técnicas, desde algoritmos básicos de detección de bordes hasta algoritmos compuestos de alto nivel que utilizan

1 Estudiante Maestría en Ingeniería Eléctrica, Docente Catedrática Universidad Tecnológica de Pereira, R/da. e-mail: [email protected].

2 M.Sc. en Ingeniería Eléctrica, Docente Instituto Tecnológico Metropolitano, Medellín, Antioquia. e-mail: [email protected].

3 M.Sc. en Ingeniería Eléctrica, Profesor Titular Universidad Tecnológica de Pereira, R/da. e-mail: [email protected].

métodos avanzados de reconocimiento de patrones. Estas técnicas de detección se han abordado desde

diferentes enfoques: enfoques basados en rasgos faciales o características locales, en los que se buscan determinados elementos que componen el rostro, como los ojos, la nariz, la boca, enfoques holísticos o basados en la imagen, en este caso los métodos trabajan con la imagen completa o zonas concretas de la misma, de la cual se extraen características que puedan representar el objeto buscado, enfoques híbridos, estos métodos usan tanto la información local como la global para la detección, basándose en el hecho de que el sistema de percepción humano distingue tanto las características locales como globales del rostro [2, 3].

Alrededor de estos enfoques se han planteado diferentes trabajos como los de [4, 5,6], en los que se usa la información de color para realizar la detección del rostro, obteniendo resultados alrededor del 90%. [7] usa redes neuronales para detectar el rostro y sus componentes faciales, alcanzando porcentajes de detección entre 77.9% y 90.3% para las diferentes configuraciones de la red. [8] usa una base Haar para la extracción de características, y Adaboost para la selección y clasificación de estas, alcanzando un porcentaje de detección del 94.1%. Este método propuesto por Paul Viola y Michael Jones, es uno de los métodos mas usados hoy en día ya que ha permitido detectar múltiples rostros en una imagen con tiempos de procesamiento bajos. Alrededor de esta investigación se han realizado otros trabajos como los de [9, 10, 11,12], que han aplicando el método para detectar rostros y han adicionado otras etapas como la detección de componentes faciales, corrección de pose y seguimiento del rostro.

Este trabajo presenta la implementación y aplicación de un método de detección de rostros frontales y componentes faciales, sobre secuencias de imágenes, como etapa inicial de un sistema automático de reconocimiento de emociones a partir del análisis del movimiento y deformación de algunas de las partes más expresivas del rostro como: los ojos, las cejas y la boca.

La estructura de este trabajo se dividió así: en la sección II se presenta la metodología a seguir, en la sección III se expone el método de detección que sustenta la metodología, en la sección IV se hace una descripción de la base de datos usada, de las pruebas realizadas y de los resultados, y por último se presentan las conclusiones.

Marta Lucía Guevara1, Cristian Guarnizo2, Álvaro Ángel Orozco3

Page 66: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 66

II. METODOLOGÍA

La detección del rostro y sus componentes faciales se lleva a cabo en tres etapas, en la primera se realiza la búsqueda del rostro sobre toda la imagen usando el método propuesto por Viola & Jones [8], sobre la región detectada como rostro se definen dos zonas de interés, la mitad superior, en la cual se aplica el detector de ojos, y la mitad inferior donde se aplica el detector de la boca (ver Fig. 1).

Fig. 1. Esquema del procedimiento de detección.

III. DETECCIÓN

A. Detección del rostro

El método aplicado en esta etapa esta basado en el propuesto por [8], y se divide en tres fases: en la primera se realiza una transformación de la imagen, generando una nueva, llamada imagen integral, en la segunda se realiza la extracción de características usando filtros con base Haar, y en la última se usa boosting para la construcción de clasificadores en cascada.

Imagen Integral Esta es una imagen acumulativa que se construye a partir de

operaciones básicas de sumas y restas, y permite extraer de forma rápida características a diferentes escalas [8].

Fig. 2. Imagen Integral.

La imagen integral (ver Fig. 2), en la localización x, y, contiene la suma de los píxeles de la parte superior izquierda, y se calcula como se muestra a continuación:

' , '

( , ) ( ', ')mx x y y

II x y I x y≤ ≤

= ∑ (1)

Donde (x,y) es el valor de la imagen integral en la localización (x,y) e es la imagen original.

II

mI

Extracción de características

La extracción de características es realizada aplicando a la imagen filtros con bases Haar. Estos filtros pueden ser calculados eficientemente sobre la imagen integral, son selectivos en el dominio espacial y de la frecuencia, y permiten ser modificados en escala y orientación. En la Fig. 3, se muestran algunos de los filtros [13].

Imagen de entrada

Deteccióndel rostro

Detección de los ojos

Detección de la boca Fig. 3. Filtros Haar rotados, trasladados y con cambios de escala.

Clasificación Para realizar la clasificación se usa boosting [14]. Este es

un método de clasificación que combina varios clasificadores básicos para formar un único clasificador más complejo y preciso. En la Fig. 4, se muestra un esquema de un clasificador en cascada.

Rostro y componentes

facialesdetectadas

C1 C2 Cn

Ventana deBúsqueda

No Rostro

Fig. 4. Esquema de un clasificador en cascada.

Para aplicar la técnica de boosting primero se debe establecer un algoritmo de aprendizaje sencillo (clasificador base), que será llamado varias veces para crear diversas clasificadores base. Para el entrenamiento de estos se emplea en cada iteración, un subconjunto diferente de muestras de entrenamiento y una distribución de pesos diferente sobre las muestras [14]. Finalmente, estos clasificadores base se combinan en un único clasificador que se espera sea mucho más preciso que cualquiera de los clasificadores base por separado.

En función de los clasificadores base que se utilicen, las distribuciones de peso que se empleen para entrenarlos y el modo de combinarlos, podrán crearse distintas clases del algoritmo genérico de boosting. El algoritmo de boosting

(x,y)

Page 67: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 67

empleado por Viola & Jones [8], en su trabajo es conocido como AdaBoost (Adaptive Boosting).

B. Detección de componentes faciales

Detección de los ojosLos ojos y la boca son marcas faciales importantes, ambos

usados para análisis, reconocimiento y procesos de normalización, especialmente los ojos, debido a que su distancia inter-ocular es relativamente constante [1], [15].

La tarea de detección se llevó a cabo siguiendo el método expuesto en A, con la diferencia de que los objetos a ser detectados en este caso son los ojos y la boca.

En esta etapa se parte del rostro detectado, dentro del cual se definen dos zonas de interés (ver Fig. 5), una de ellas la región de la mitad superior, en la cual se aplica el detector de ojos, y la otra la mitad inferior donde se aplica el detector de la boca.

Fig. 5. Zonas de interés definidas para la detección de componentes faciales.

IV. PRUEBAS Y RESULTADOS

Para realizar la detección del rostro y componentes faciales, y permitir en el futuro un análisis de estas regiones para el reconocimiento de emociones, se usó la base de datos FEEDTUM (Facial Expressions and Emotions from the Technical University Munich), esta base de datos es ampliamente usado en la actualidad para el desarrollo de métodos de análisis para el reconocimiento de expresiones faciales [1], [15], [16].

Base de datos FEEDTUMPertenece a la Universidad Técnica de Munich (Alemania)

y ha sido generada como parte del proyecto FG-NET (Faceand Gesture Recognition Research Network). Esta conformada por secuencias de imágenes con rostro frontales de 18 personas, que muestran las 7 emociones básicas (alegría, tristeza, sorpresa, miedo, disgusto, enojo y neutral), 6 de ellas definidas por Eckman y Friesen. Cada imagen se encuentra en formato JPEG a 8 bits con un tamaño de 320x240 píxeles.

PruebasLa prueba de detección se realizó sobre 200 imágenes,

pertenecientes a 4 secuencias de 4 personas manifestando diferentes emociones. Cada secuencia contiene alrededor de 100 imágenes, de las cuales se tomaron las primeras 50 (para cada persona). A cada imagen se le aplicó el método de detección de rostros y componentes faciales y se midió el

tiempo de procesamiento por imagen.

Fig. 6. Imágenes de cuatro personas de la base de datos FEEDTUM manifestando diferentes emociones.

Resultados El porcentaje de detección y el tiempo de detección

promedio se cálculo como se indica a continuación:

%NDC

de DetecciónNTI

= (2)

1

n

di

tTiempo de Detección

NIDC==∑

(3)

Donde NDC es el número de detecciones correctas, NTInúmero total de imágenes analizadas por secuencia,

tiempo de detección para cada imagen y NIDC es la cantidad de rostros o componentes detectadas correctamente.

dt

TABLA I. RESULTADOS DE DETECCIÓN DEL ROSTRO

Persona 1 Persona 2 Persona 3 Persona 4

No de Imágenes

50 50 50 50

No de Detecciones

48 49 49 42

No de Fallos

2 1 1 8

% de Detección

96% 98% 98% 84%

Tiempo de DetecciónPromedio

93.89ms 86.77ms 113.9ms 91.29ms

TABLA II. RESULTADOS DE DETECCIÓN DE LOS OJOS

Persona 1 Persona 2 Persona 3 Persona 4

No de Imágenes

50 50 50 50

No de Detecciones

46 46 47 42

No de Fallos

6 4 3 8

% de Detección

92% 92% 94% 84%

Tiempo de DetecciónPromedio

10.11ms 13.14ms 13.64ms 11.86ms

Page 68: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 68

TABLA III. RESULTADOS DE DETECCIÓN DE LA BOCA

Persona 1 Persona 2 Persona 3 Persona 4

No de Imágenes

50 50 50 50

No de Detecciones

48 47 45 41

No de Fallos

2 1 5 9

% de Detección

96% 94% 90% 82%

Tiempo de DetecciónPromedio

32.07ms 28.10ms 31.63ms 25.19ms

a)

b)Fig. 7. Resultados para imágenes de diferentes secuencias. a) Secuencia de imágenes felicidad para la persona 3 y b) Secuencia de imágenes sorprendido para la persona 4.

En la Fig. 7, se pueden ver los resultados de las detecciones para 4 imágenes de dos secuencias diferentes. En la segunda imagen de la secuencia b), se puede observar una falsa detección (cuadro verde), este problema puede ser resuelto teniendo en cuenta criterios de antropométricos, donde se considere la distancia relativa entre los ojos y la boca.

V. CONCLUSIONES Y RECOMENDACIONES

En este documento se muestran los resultados de la implementación de un método de detección de rostros y componentes faciales, sobre secuencias de imágenes de la base de datos FEEDTUM, que alcanzó porcentajes de detección del 94% para rostros y del 90.5% para los ojos y la boca, que demuestran la efectividad de combinar técnicas de boosting con filtros Haar.

La reducción de los porcentajes de detección de los ojos y de la boca se puede atribuir a que estos no contienen tanta información morfológica como la que contiene el rostro.

No se pudo realizar una comparación de los resultados obtenidos, ya que son pocos los estudios para la tarea de reconocimiento que realizan la detección rostro y componentes faciales, y muchos parten de que estas tareas ya han sido realizadas, además, los que las consideran, las han realizado sobre otras bases de datos. Lo anterior demuestra la importancia del desarrollo y mejora de técnicas de detección de rostros, que permitan ser incorporadas a sistemas de reconocimiento, para que estos puedan ser completamente automáticos, y no se requiera de la intervención humana para indicar las zonas a ser analizadas.

AGRADECIMIENTOS

Este trabajo se desarrolla en el marco de los proyectos: "Implementación Y Efectividad De Un Sistema Basado En Inteligencia Artificial Como Herramienta Para El Tratamiento Psicológico De Personas Con Trastorno De Estrés Postraumático", financiado por Colciencias. Código 111037019600 y la Universidad Tecnológica de Pereira. Código 511-3-243-08, y el proyecto "Detección De Objetos En Imágenes Digitales Utilizando Wavelets Y Boosting",financiado por el Centro de Investigación y Extensión, de la Universidad Tecnológica de Pereira. Código E6-07-4.

BIBLIOGRAFÍA

[1] RATLIFF, Matthew y PATTERSON, Eric. Emotion Recognition Using Facial Expressions With Active Appearance Models. University of North Carolina Wilmington, 2008.

[2] RAMÍREZ, Carlos Alejo y PÉREZ, Manuel David. Detección de caras y análisis de expresiones faciales.

[3] LECUMBERRY, R., Federico. Cálculo de disparidad y segmentación de objetos en secuencias de video. Tesis de maestría en ingeniería eléctrica. Universidad de la república Montevideo, Uruguay. 3 de agosto de 2005.

[4] LI, Yadong, GOSHTASBY, Ardeshir y GARCÍA, Oscar. Detecting and tracking human faces in videos. Wright State University, 2000.

[5] FERIS, Rogério, EMÍDIO DE CAMPOS, Teófilo y MARCONDES, César. Detection and tracking of facial features in video sequences. Lecture Notes in Artificial Intelligence, Vol. 1793, pp. 197-206, 2000.

[6] HABILI, Nariman. Automatic segmentation of the face and hands in sign language video sequences. Technical report, Adelaide University, Australia, 2001.

[7] ROWLEY, Henry, BALUJA, Shumeet, y KANADE, Takeo. Neural network-based face detection. IEEE, 1998.

[8] VIOLA, Paul y JONES, Michael. Robust Real-Time Face Detection. International Journal of Computer Vision, Vol.57, No.2, pp 137-154, 2004.

[9] CASTRILLÓN, M., DÉNIZ, O., GUERRA, C y HERNÁNDEZ, M. "ENCARA2: Real-time detection of multiple faces at different resolutions in video streams". ELSEVIER, Journal Visual Communication and Image Representation. Article in press (2007).

[10] BARTLETT, Marian Stewart et all. Real time face detection and facial expression recognition: development and applications to human computer interaction. University of California, USA, 2004.

[11] SILAPACHOTE, P, KARUPPIAH, D y HANSON, A. Feature selecting using adaboost for face expression recognition. University of Massachusetts Amherst, USA.

[12] BELAROUSSI, Rachid y MILGRAM, Maurice. Face detecting and skin color based tracking: a comparative study. University Pierre an Maire Curie. Paris, Francia, 2007.

[13] PAPAGEORGIOU,C., OREN,M y POGGIO,T. Ageneral frame-work for object detection. Proceedings of International Conference on Computer Vision, enero de 1998, Bombay, India.

[14] SCHAPIRE, R y FREUND, Y. A decision theoretic generalization of on-line learning and application to boosting. AT&T Bell Laboratories. USA, 1995.

[15] SAATCI, Yunus y TOWN, Christopher. Cascaded Classification of Gender and Facial Expression using Active Appearance Models. University of Cambridge Computer Laboratory, 2006.

[16] WALLHOFF, F.; SCHULLER, B.; HAWELLEK, M.y RIGOLL, G. Efficient Recognition of Authentic Dynamic Facial Expressions on the Feedtum Database. En: IEEE International Conference on Multimedia and Expo, Pag 493-496, ISBN: 1-4244-0367-7, 2006.

Page 69: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 69 - 72

Arquitectura usando aritmética entera orientada a la extracción de los coefi cientes de predicción lineal sobre PDSP y FPGA

López P. Alexander, Campos P. Natalia, Saavedra M. Ángela María,

Resumen— En este trabajo se propone una arquitectura

optimizada usando aritmética entera para la obtención de los coeficientes de predicción lineal (LPC) y su posterior implementación en plataforma PDSP y FPGA para la construcción de sistemas de codificación y reconocimiento de voz en un solo chip. La arquitectura propuesta permite obtener la matriz de autocorrelación y solucionar las ecuaciones normales mediante el algoritmo de Levinson-Durbin utilizando únicamente operadores aritméticos enteros para un proceso estocástico estacionario autoregresivo (AR), esto permitió implementar eficientemente la arquitectura de forma secuencial sobre una plataforma PDSP de punto fijo y de forma paralela sobre una plataforma FPGA; los resultados experimentales muestran que es posible implementar un procesador LPC en tiempo real para codificar hasta 6 canales de audio sobre un PDSP operando a 1 GHz y hasta 937 canales sobre un FPGA operando a 60 MHz. Index Terms— LPC, Levinson-Durbin, PDSP, FPGA.

I. INTRODUCCIÓN l modelar la señal de voz como un proceso aleatorio permite utilizar sobre ella algoritmos de predicción de

series de tiempo, estos algoritmos buscan reducir la cantidad de datos de representación brindando así la posibilidad de ser utilizados en sistemas de codificación y reconocimiento de voz en un solo chip. Sin embargo, la naturaleza de estos algoritmos va más allá del operador multiplicación-acumulación e involucra el cálculo de funciones trascendentales y operadores aritméticos complejos como la división y la raíz cuadrada. Tradicionalmente la implementación de estas funciones y operadores se ha realizado usando aritmética en punto flotante la cual no permite realizar implementaciones de alta velocidad sobre PDSP y FPGA.

Las señales aleatorias estacionarias pueden ser modeladas como si hubieran sido originadas por ruido blanco que paso a

Alexander López es docente investigador del grupo GDSPROC en el

programa ingeniería electrónica de la Universidad del Quindío. Natalia Campos es estudiante del programa del programa ingeniería

electrónica de la Universidad del Quindío. Ángela María Saavedra estudiante del programa ingeniería electrónica de

la Universidad del Quindío.

través de un filtro coloreador [1][2]. Estos filtros son sistemas lineales e invariantes con el tiempo (LTI) y pueden ser de tres tipos: autoregresivo (AR), media móvil (MA) y autoregresivo mas media móvil (ARMA)[1][2].

En este trabajo se analiza la voz como un proceso AR en segmentos de duración donde ésta presenta un comportamiento estacionario; posteriormente, habiendo calculado la autocorrleación se obtienen los coeficientes de predición lineal para cada segmento a partir de las ecuaciones normalizadas usando el algoritmo de Levison-Durbin. Todos estos algoritmos se desarrollan usando aritmetica entera, finalmente se presenta su implementación en un procesador digital de señales programable (PDSP) y un arreglo lógico programable por campo (FPGA).

II. CODIFICACIÓN LINEAL PREDICTIVA

A. La voz como un proceso AR Los coeficientes de predicción lineal parten del fundamento

de modelar la voz como la salida de un sistema lineal causal y causalmente invertible excitado por un proceso de ruido blanco como se puede observar en la figura 1.

Fig 1. Modelo de Producción de Voz.

Este proceso corresponde a un proceso autoregresivo AR. Éstos, forman una familia de procesos tales que una observación en un instante de tiempo depende de las observaciones anteriores.

La idea básica detrás del modelo es que una muestra en un tiempo n, S(n) puede ser aproximada como una combinación lineal de p muestras de habla pasadas así:

)(...)2()1()( 21 pnSanSanSanS p −++−+−≅ (1)

Donde los coeficientes a1a2,…an son asumidos constantes para la ventana de análisis, convirtiendo la ecuación (1) en una

Arquitectura Usando Aritmética Entera Orientada a la Extracción de los Coeficientes de

Predicción Lineal Sobre PDSP y FPGA López P. Alexander, Campos P. Natalia, Saavedra M. Ángela María,

EGenerador de pulsos

Generador de ruido blando

X

Filtro lineal y variante

con el tiempo

G

Page 70: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 70

igualdad incluyendo el término de excitación Gu(n) se tiene:

∑=

+−=p

ii nGuinSanS

1)()()( (2)

Donde u(n) es la excitación normalizada y G es la ganancia de la excitación. Expresando la ecuación 2 en el dominio de Z se obtiene la siguiente relación:

∑=

− +=p

i

ii zGUzzSazS

1

)()()( (3)

En términos de la función de transferencia

∑=

−−== p

i

ii zazGU

zSzH

11

1)(

)()( (4)

La interpretación de la ecuación (4) está dada en la figura 1, la cual muestra la fuente de excitación normalizada u(n), siendo escalonada por la ganancia G, actuando como entrada para el sistema todo-polo, )(/1)( zAzH = , para producir la señal de habla S(n) basado en el conocimiento que la función de excitación actual para el habla es esencialmente un tren de pulsos cuasiperiódicos (sonidos sonoros) o una fuente de ruido aleatorio (sonidos sordos), hay un conmutador el cual controla los fonemas sonoros/sordos del habla y escoge la fuente de excitación dependiendo del tipo de sonido.

Para poder obtener los coeficientes de los filtros se debe hacer uso de la relación existente entre estos y la autocorrelación )(mxxγ , pues cuando se trata de un proceso aleatorio estacionario con densidad espectral de potencia de forma racional se puede obtener una relación lineal por medio de las ecuaciones de Yule-Walker que también son llamadas ecuaciones normalizadas que se muestran en la ecuación (5).

⎪⎪⎪

⎪⎪⎪

<−

=+−−

>−−

= ∑

=

=

0)(

0)(

0)(

)( 2

1

1

mm

mkma

mkma

m

xx

w

p

kxxk

p

kxxk

xx

γ

σγ

γ

γ (5)

Para la solución de estas ecuaciones existen dos métodos: El algoritmo Levinson-Durbin y el algoritmo de Shür, El primero se usa cuando la matriz es hermítica y toeplitz y el segundo cuando la matriz no cuenta con estas características.

B. El Algoritmo de Levinson-Durbin El algoritmo Levinson-Durbin es un algoritmo

computacionalmente eficiente para resolver las ecuaciones normales para la obtención de los coeficientes de predicción. Este algoritmo explota la simetría especial en la matriz de autocorrelación.

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

−−

−−

∗∗

)0()2p()1p(

)2p()0()1()1p()1()0(

p

χχχχχχ

χχχχχχ

χχχχχχ

γγγ

γγγγγγ

L

MM

L

L

(6)

Nótese que )ji()j,i( pp −Γ=Γ , así, la matriz de

autocorrelación es una matriz Toeplitz. Como )j,i()j,i( *

pp Γ=Γ , la matriz es también hermítica.

La clave de la solución del método de Levinson–Durbin, que explota la propiedad de la matriz, consiste en proceder recursivamente, empezando con un predictor de orden m=1 y después incrementar el orden recursivamente, usando las soluciones de orden menor para obtener la solución al siguiente orden superior.

La figura 2 muestra las ecuaciones de recursión del algoritmo de Levinson Durbin [2].

Fig. 2. Algoritmo de Levinson-Durbin. Tomado de [2].

La recursión de Levinson- Durbin requiere O(m)

multiplicaciones y sumas para pasar de la etapa m a la etapa m+1. Por lo tanto, para p etapas requiere el orden de 1+2+3+….p(p+1)/2 o O( p2), operaciones para encontrar los coeficientes del filtro predicción [2] .

III. DESARROLLO Para la implementación del algoritmo de Levinson-Durbin

en aritmética en punto fijo en C primero se desarrolló el algoritmo en MATLAB en punto flotante, cuando se observó que los resultados de dicho programa eran iguales a los que proporciona la función levinson disponible en las librerías de MATLAB, se hizo una emulación del punto fijo realizando corrimientos de 2Nfrac donde Nfrac es el número de bits fraccionarios requeridos [3], que en este caso fueron 18 debido a que con este número experimentalmente se obtuvo una buena resolución, esto implica que la diferencia entre números consecutivos es de 0.00000387 y por consiguiente tiene una buena cantidad de números para la representar valores entre -1 y 1. Esto es necesario debido a que los modelos estimados por el algoritmo de Levinson-Durbin en muchas ocasiones tienen coeficientes entre -1 y 1 y como el algoritmo es recursivo, es

1. Input: r(0), r(1), r(2), . . . , r(M) 2. Initialization (a) P0 = r(0), β0 = r (1) (b) k0 = −r (1)/r(0), a(1)

1 = k0 3. For m = 1, 2, . . . , M − 1 (a) Pm = Pm−1 + βm−1k m −1 (b) rm = [r(1) r(2) · · · r(m)]T (c) βm = aT

mJr m + r (m + 1) (d) km = −βm/Pm (e) am+1 =[am 0]T+ [Ja m 1]Tkm 4. PM = PM−1 + βMk M 5. Output: aM, {km}M−1

0 , {Pm}M1

Page 71: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 71

decir, los coeficientes para un orden N se calculan a partir de los coeficientes de orden N-1, el perder precisión en cada iteración puede llevar a resultados erróneos.

Siguiendo con el desarrollo del algoritmo se encontraron algunas operaciones como la multiplicación y la división, con las que se deben tener consideraciones especiales cuando se está trabajando en punto fijo, para la primera, al realizarla se duplica el tamaño de la variable donde se almacena el resultado, por ejemplo supongamos que se multiplican los números de 8 bits 2.6875 y 3.15625 tal y como se muestra en la figura 3. Los números utilizan Nfrac=5 bits para la parte fraccionaria.

Fig. 3. Multiplicación de dos números en punto fijo

Desde la figura 3 se puede observar que el resultado es de

16 bits y que el punto decimal se corre a la izquierda Nfrac bits. En el caso de la implementación del algoritmo de Levinson - Durbin el resultado es de 36 bits, por tal motivo, se tuvo la necesidad de usar números de 64 bits para el almacenamiento de los valores intermedios al ser este el tipo de dato entero de mayor tamaño en lenguaje C. En cuanto a la división, si se opera de manera normal, el punto decimal se desplaza a la derecha con lo cual se pierde la información contenida en los bits bajos. Esto se evita al desplazar a la izquierda el numerador Nfrac bits. Esto se muestra en la figura 4.

Fig. 4. División de números en punto fijo.

Se nota en la figura 4 que el resultado posee el tamaño

inicial de 8 bits. Con el fin de probar la implementación realizada del algoritmo de Levinson- Durbin en C se tomó como vector de autocorrelación el siguiente Rx=[816,624,240,0,-48,-112,-288,-400,-368]. Al simular inicialmente y comparar los resultados con los obtenidos con la función levinson diponible en MATLAB (columna uno de la Tabla I) se notó que eran muy distantes, además, al correr el algoritmo en C para todas las palabras pertenecientes a la base de datos ocurría desborde en algunos casos, por esto se implementó un algoritmo en MATLAB emulando el punto fijo con multiplicaciones por 2Nfrac, esto se realizó con el fin de observar si la diferencia notada entre los valores se debían a la aproximación que se realiza cuando se hace el cambio de aritmética en punto flotante a aritmética en punto fijo. El resultado de ésta prueba mostró un acercamiento de los valores, sin embargo, seguían difiriendo, por lo que se tomó la decisión observar los valores intermedios, con lo que se vio que al iniciar el cálculo de los coeficientes del algoritmo tenían resultados casi idénticos, pero a medida que aumentaba el orden se empezaba a aumentar el error, lo que dio lugar a un nuevo intento, aproximando los valores intermedios del algoritmo con lo que se notó un acercamiento muy

significativo a los valores ideales. De acuerdo a lo anterior, se propuso un esquema de redondeo similar al utilizado por la aritmética en punto flotante definida en el estandar IEEE-754 [3] aplicándose éste después de calcular una multiplicación o división en el algoritmo de Levinson – Durbin, dando como resultado los valores mostrados en la columna dos de la Tabla I. Para el implementar el esquema de redondeo es necesario calcular dos bits extra de resultado tanto para la multiplicación y la división. Para el caso de la multiplicación se tienen Nfrac bits extra de tal forma que no se debe realizar una modificación al algoritmo, en el caso de la división se debe desplazar el numerador Nfrac+2 bits a la izquierda. El esquema de redondeo se muestra en el algoritmo de la figura 5.

Por ejemplo, al dividir los números -4.90625 y 5.65625 usando aritmética en punto flotante de precisión simple se obtiene -0.867403, ahora bien, al dividir utilizando aritmética en punto fijo sin implementar un esquema de redondeo se obtiene -0.843750 implicando un error de magnitud de 0.023653; al implementar el esquema de redondeo propuesto en este trabajo se obtiene como resultado -0.875000 y un error de magnitud de 0.007597.

010.1011000000 / 011.00101 = 000.11011 2.6875 / 3.15625 = 0.851485

010.10110 x 011.00101 = 001000.0111101110 2.6875 x 3.15625 = 8.482421875

TABLA I

variable Levinson-Matlab C

Condiciones iniciales

P(0) 816 816

k(0) -200463 -200463

a(0) 262144 262143

a(1) -200463 -200463

am(0) -200463 -200463

Orden = 8

acu - -1038

P(7) -122 -222

aux - 516

z - 148

k(7) 1520602 174762

a(8) 1520602 174762

a 262143,-975698,1370390, --665786,-564159,1247938,

-876780,96434,183170

262144,-989351,1404675, -704966,-548092,1267048,

-914278,123231,174762

am -975698,1370390,

-665786,-564159,1247938, -876780,96434,183170

-989351,1404675,-704966, -548092,1267048,

-914278,123231,174762 Resultados obtenidos con el algoritmo Levinson proporcionado por Matlab y

los obtenidos en C con el algoritmo implementado.

Page 72: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 72

A

de lenopcodde uso

B Se de desparobtopmudivmo

IV. IMP

A. Implementa

Se realizó la imTexas Instrum

nguaje C. La rera a una frdificación de hvoz con calid

o del 100 % de

B. Implementa

realizó la impAltera del a

scripción en Vralela de tal fotener los coefieraciones deultiplicadores visión se realizostrado en la fi

Fig

/*Redonint64_t

int

w=((x<<1))

x= ret}

/*Redonint64_t

}

Fig. 5. Esquema d

PLEMENTACIÓN

ación sobre PD

mplementaciónments del algorutina tarda 18recuencia de hasta �� � �0�/dad telefónica. Ne los recursos d

ación sobre FP

plementación salgoritmo de VHDL estruct

orma que tarda icientes de prede multiplicaciembebidos de

zaron con el agura 6.

g. 6. Divisor parale

ndeo sin signt uiround(int

t8_t w;

x&(1<<2))>>2))>>1)&((x&(1<(x>>2)+w;turn(x);

ndeo con signt iround(int6

int32_t aux

aux=abs(x); aux=uiround

if(x<0) aux return aux;

de redondeo propue

N SOBRE PDSP

DSP

n sobre el PDSPoritmo de Lev8651 ciclos, da1GHz es po/��000 � ��6Nótese que en

de cómputo del

PGA

sobre el FPGALevinson-Dur

turado [4]. Laúnicamente p dicción lineal. ión se hizoel FPGA. Lasrray propuesto

elo presentado en

no*/t64_t x){

)&((x&(1<<1)<<0))>>0);

no*/64_t x){

x;

;d(aux);

x=-aux;;

esto

Y FPGA

P TMS320C64vinson-Durbin ado que el PD

osible realizar 6���� � 6 cana

este caso se hal PDSP.

A EP2S60F672rbin usando ua arquitecturaciclos de relojPara efectuar

o uso de s operaciones o en [5] el cual

[5].

)>>1)|((x&(1

416 en

DSP la

ales ace

2C3 una

es en las los de

l es

El circufigura 7

Al sinte(4%) yfrecuenposible �000��que aunFPGA y

Se loLevinsoel lengumediantconstitudigital sistemaplatafory multim

Se pren punten algooperado

La imel FPGAcontrapoperacióarquitecobtenga

[1] L. RPren

[2] V. KAda

[3] D. PHar

[4] U. MGate

[5] G. EParaWor

uito que calcul7.

Fig 7. Circ

etizar sobre el Fy 64 multiplic

ncia de reloj arealizar la c� ���canales

n se cuenta coy el 78% de los

Vogró la impleon-Durbin sobruaje de programte una descr

uye una herrade señales, e

as de codificacrmas hardwaremedia. ropone un esquto fijo que redritmos recursiv

ores multiplicamplementaciónA tiene un dearte en PDSPón es 16 vecctura paralela a un coeficiente

R Rabiner and B. Hntice Hall, 1993. K. Ingle, S. M. Koaptive Signal ProcePatterson and J. Hrdware Software InMeyer-Baese, “Dige Arrays”, SpringeE. Ordóñez, J. Velalelos y Secuenciarkshop, 2003.

la el bit de red

uito que calcula el

FPGA se ocupcadores embeblcanzada es decodificación ds de voz con on el 96 % des bloques de m

V. CONCLUSI

ementación efre un PDSP umación C; y enripción estrucamienta imporespecialmente ción de voz de embebidas en

uema de redonduce el efecto avos que no estción-acumulac

n del algoritmo sempeño 156 P, a pesar dces menor. Epermite que

e del modelo.

REFERENCIA

H. Juang "Fundam

gon and D. G. Messing" Artech Ho

Hennessy, “Compunterface”, Morgan gital Signal Proceser, 2004. asco y M. Vera, “C

ales de 16-Bits usa

dondeo w se m

l bit de redondeo.

pan 1954 elemebidos de 9 bite 60 MHz conde hasta �60calidad telefóne los recursos

multiplicación.

IONES ficiente del asando aritmétin hardware sobcturada en Vrtante para el

para la conse alta velocidan sistemas de co

ndeo orientado acumulativo dtán basados únción.

de Levinson-Dveces mayor q

de que la freEsto es debiden cada ciclo

AS mentals of Speech R

Manolakis "Statisticouse, 2005. uter Organization a

Kauffman Publishssing with Field Pr

Comparación de Dando FPGAs”, Iber

muestra en la

entos lógicos s (22%). La n lo cual es � �0�/�� �nica. Nótese

s lógicos del

algoritmo de ica entera en bre un FPGA VHDL. Esto

tratamiento strucción de ad usados en omunicación

a aritmética e los errores

nicamente en

Durbin sobre que el de su ecuencia de

do a que la de reloj se

Recognition",

cal and

and Design, the hers, 2003. rogrammable

Divisores rchip

Page 73: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 73 - 76

Mobile robot using adaptable fuzzy control on a digital signal processor

Adolfo Avila Barón [email protected], [email protected]

Mobile Robot Using Adaptable Fuzzy Control on a Digital Signal Processor

Adolfo Avila Barón [email protected], [email protected]

Abstract—There are different forms to design adaptive fuzzy controllers applied to robotic systems, this work changes the traditional methods like the common “Fuzzy Model Reference Learning Controller” FMRLC, see[1] -[2], which is supported in change of rule base to modify the controller parameters. Here the purpose is to maintain constant the rule base and change fuzzy sets size to control a robot tricycle named FUZZYBOT, also presents figures with five fuzzy sets inputs and four fuzzy sets outputs, universe to these sets are modify to produce others fuzzy sets according to objects around the robot; on the other hand, motors’ robot also change its rotation to avoid crash always controlled by fuzzy logic system. There are shown statistical probes in order to compare numerical examples of how the performance of the controller purposed on relate to others conventional controllers in real systems using this robot.

Terms—Adaptive fuzzy control, fuzzy sets, intelligent control.

I. INTRODUCTION

The robotics in this moment is an important area for different fields of science; there are many applications using robots, especially at the factories, on electro medicine and home services. The programs on these classes of devices are also important too. Artificial intelligence allows to develop efficiently algorithms for robotics, for example: fuzzy logic, neuronal links and genetics algorithms. But currently many application uses on theirs controller’ programs fuzzy logic algorithms; this theory has been proved over different applications, especially when the control is no linear, see [1]-[2]. Fuzzy logic can be described as computing with words rather than numbers, and fuzzy control can be described as control with sentences. It is more natural to use sentences, or rules, for instance operator controlled plants, with the control strategy written in terms of if-then clauses. This work presents a new fuzzy control strategy without human intervention, this is an adaptive fuzzy control applied in a robotic system named FUZZYBOT. Then, it has an adaptive behaviour, this characteristic is supported over the changes of its algorithms, itmeans to modify the program according to changing some environments circumstances, for example: “adapted its motor

rotation it selves to the sense objects around”. Then the adaptive controller is therefore “intuitively” a controller that can modify its movement behaviour according the environment (number of objects and their distance).

FUZZYBOT is assembled by two ultrasonic sensors, these are located on the frontal panel, it has two servo motors reformed to do left and right completely rotations, this robot use a emission circuit and a reception circuit supported by a micro controlled target and DSP evaluation target [3].

Devices able to run speedily programs have been developed, these are “the Digital Signal Processors” DSPs, its main characteristics are: micro size and processing millions instructions per second. It has many resources, for example: serials communications, parallel ports, PWM, timers. Associate DSPs with intelligence artificial algorithms has many advantages; just as run freely these programs without computers or stronger processors, and then, these systems could be probed easily on robotics applications.

II. ADAPTIVE FUZZY LOGIC SYSTEM

Known the characteristics of FUZZYBOT, the main objective of this work is to achieve a free movement robot on a plain area with objects inside, motors’ robot have to control this device through DSP orders avoid crashes, for this goal, we have to design a AFLS “Adaptive Fuzzy Logic System” algorithm. This objective permits us to deduce that the objects distance is the most important variable like the motors movements, then on our AFLS, distance is the input variable and motors’ movement is the output variable.

Fig. 1. fuzzy model reference learning controller

Page 74: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 74

There are different types of AFLS, the first adaptive fuzzy controller called the linguistic self-organizing controller (SOC), see [1]; several applications of this method have been presented. Other type of AFLS is the “fuzzy model reference learning controller” (FMRLC)see , see fig. 1, on many applications they have shown this method to be quite successful. There are other adaptive fuzzy Controllers, for example the WSAFC Wang adaptive fuzzy controller which use Lyapunov theorem, see [4], [5]. All these methods are based on ruler changes (if-then, ver fig.2) and no proof completely that these will result in a stable closed-loop system especially for safety-critical systems.

Fig. 2. Adaptive fuzzy Control and linguistic rulers

II. FUZZY SETS INPUTS AND OUTPUTS

To introduce in this fuzzy logic system is important to know the constitutive parts of FUZZYBOT, it permits related Fuzzy logic systems with fuzzy sets design, see [6]. The sensors’ robot are charge to measure distance, then, correspond to different distances one fuzzy set input as shown in fig. 4, there are five fuzzy sets; the first correspond to objects sense near (0 to 30 cm), other intermediately three fuzzy sets are used to sense middle distance (30 to 50 cm), and the fuzzy set placed on right side sense objects to far distance (50 to 250 cm).

Very Close Close Middle FarVery far

Fig. 3. Fuzzy sets inputs

Outputs are building through Weighted Average method and correspond to singleton shape; there are four sets, fig. 3.

Small Negative ZeroSmall Positive Big Positive.

Fig 4. Fuzzy sets outputs

IV. RULE BASE

This rule base showing in figure 5, was finding by order to robot has to effect movements according of objects distance, example, if it is placed in front to a wall its motors have to execute a go back rotation, if the robot has its sensors Very Closed VC or near of the wall its movements’ motors have to be Small Negative SN.

Fig. 5. Rule base

V. FUZZYBOT’ ADAPTIVE FUZZY CONTROL

Change input fuzzy sets size against to change rule base[7] [8], is another form to fuzzy control system, apply to FUZZYBOT has produced interesting results, see [9], robot achieve maximum approximation near to objects without crashes, it is possible if input fuzzy sets depending each situation, change their Size seems as fig. 6.

Fig. 6. Example of changes on fuzzy sets inputs

Page 75: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 75

VI. STATISTICAL ANALYSIS

If the experiment is successful, FUZZYBOT has to do free movements without crashes, maximum risk of crash happen when robot is enclosed, this case is similar to find the robot is going to a corner (probe area, see fig 7), if robot has an efficiently algorithm, it effects the maximum approach and go back. This experimental case was proved generating following results:

Fig. 7. Prove area

Using an adaptive fuzzy control Robot describes approximate a straight path, since start point to goal point.

Using a Classical fuzzy control Robot follows the wall until the goal, path is similar to a curve.

TABLE I. STATISTICAL PROBES USING CLASSICAL FUZZY LOGIC CONTROL.

Area FLS Time FLS Average 42,2 13,5Stand.

Desv.2,30124936 0,7912893

Table I and II, show results about area between of ideal path and robot path, here we see less area and time use adaptive Fuzzy control on comparison with classical Fuzzy control.

TABLE II. STATISTICAL PROBES USING ADAPTIVE FUZZY LOGIC CONTROL.

Area AFLS Time AFLS Average 24,8 11,7Stand.

Desv.2,304176333 0,700644135

This values are valid on parametric statistical, if they complete normality prove, then, we could to conclude about this results. For instance if a P-Value is bigger than 0,005 these values studied wholly follow a statistical parametric.

TABLE III P-VALUE PROVES.

Proves Anderson –Darling

Ryan-Joiner

Kolmogorov

Smirnov P-Value

AreasAFLS

0.086 0.100 1.150

P-ValueTime AFLS

0.050 0.100 0.150

P-ValueÁreaproportional system

0.127 0.100 0.150

P-ValueTime proportional system

0.368 0.100 0.150

P-ValueAreas FLS

0.2.75 0.100 1.150

P-ValueTime FLS

0.012 0.100 0.150

This is a statistical comparison with both areas, (AFLS and FLS).

95% CI for difference: (-18,2208; -16,4284) T-Test of difference = 0 (vs not =): T-Value = -38,37 P-

Value = 0,000 DF = 97

This is a statistical comparison with both times (AFLS and FLS).

95% CI for difference: (-2,13232; -1,52208) T-Test of difference = 0 (vs not =): T-Value = -11,89 P-

Value = 0,000 DF = 95

These comparison proves presents a P-Value=0,00. These values indicate a big difference between each average value, then, deduce that these values correspond to parametric statistical; it concludes the follow results: to FUZZYBOT is better to use adaptive fuzzy control on comparison with other classical fuzzy systems control or proportional controls, because areas are similar than ideal and spend less time.

VII. CONCLUDING REMARKS

Adaptive fuzzy logic system programmed on FUZZYBOT, controls it without crash when the number of objects and their places on a plain area are aleatory, it is done by input evaluation on adaptive control, system generates a constant value (crisp set), how their rule base is also constant, this fact facilitates to change fuzzy to do an effective control.

Page 76: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 76

Classical fuzzy controller parameters are changed to achieve adaptive characteristics on the fuzzy system, this design is based on Velásquez, F. Torre, C. Muñoz y C. Shene work, they change output sets size to control a plant; successful results obtained on this control permit us continuing working with this class of adaptive fuzzy control, see [10], [11].

Statistic analysis serves to conclude about of singulars advantages to use AFLS on robotics systems like to FUZZYBOT. The normally test developed by Anderson–Darling, Ryan-Joiner and Kolmogorov Smirnov, permit us to define types of studies that valid this method used to data comparison [12]; finally data acquisition like a average, standard deviation and P-value, confirm or not if Adaptive fuzzy Logic system serve to control efficiently this robot; if the reader sees table I and II, could to conclude that adaptive fuzzy control is efficiently, same how our objectives were purposed.

REFERENCES

[1] KOO, John Tak Kuen. Design of Stable Adaptive Fuzzy Control. University of California at Berkeley, Vol. 1, pp. 1-130, 1997.

[2] PAN Lei & WOO Peng Yung. “PD Manipulador controller with Adaptive Compensation”. Vol 1. pp. 1-43, 1996.

[3] Procesadores de señales digitales 53f8323 EVM Rev 3.0, 1/30/2004. [4] SUGENO, M. “industrial applications of fuzzy control” El servier

Science. Vol 1, pp. 10-115, 199. [5] TOMEI, P. “Adaptive PD Controller for Robot Manipulator”, IEEE. [6] VELÁSQUEZ, F. Torres, C. Muñoz y C. Shene, “Control Difuso

Adaptivo y su Aplicación a una Planta Piloto de Secado por Lecho Fluidizado”, Revista Facultad de Ingeniería de la Universidad de Tarapaca, Información Tecnológica-Vol. 16 N°5-2005.

[7] SAFOTT,I Alan. The uses of fuzzy logic in autonomous robot navigation., Soft Computing Vol1, pp. 180-197, 1997.

[8] WANG Li Xing. “Stable Adaptive Fuzzy Control of Non linear Systems” IEEE Transations on fuzzy Sistems Vol. 1, No 2, pp. 146-155 mayo 1993.

[9] LEWIS, Jagan nathan & A. Yesildirek, “Neural Network Control of Robot Manipulators and Non linear Systems”, Vol 1, pp. 56-74, Philadelphia 1999.

[10] CALDERÓN, Dora María. Control difuso adaptable en un servomecanismo no lineal, Vol 1, México, Noviembre de 2003.

[11] DUARTE, Oscar Germán, UNFUZZY. UNAL,1998. [12] AYANNA, Howard, & TUNSTEL, Edward & DEAN, Edwards &

CARLSON, Alan, Enhancing Fuzzy Robot Navigation Systems, Canada, Julio 2001.

[13] DRIANKOV, D. Hellen doorn & REINFRANK, M., “An Introduction to Fuzzy Control ”New York 1996.

[14] JANG, S. Anfis. Adaptive Network based Fuzzy Inference Systems”, IEEE Transactions on Systems and Cybernetics, Vol. 23, No.3, pp.665-685,Mayo1993.

[15] KLIR, J. George & FOLGER Tina A. Fuzzy Sets Uncertainty and Information, Vol 1, pp. 22-54 New York 1992.

[16] DRIANKOV, D. & HELLENDORN, H. Fuzzy Logic with Unless –Rules. Report IDA-RKL-92TR50

[17] Transaction on Automatic Control, Vol 7, No. 4pp. 565-570, 1991. [18] AYANNA Howard, HOMAYOUN Seraji A. Real-Time Autonomous

Rover Navigation System , In Proc. of the World Automation Congress, 2000. http://robotics.jpl.nasa.gov/people/tunstel/papers/ifsa_nafips01.pdf .

[19] AYANNA, Howard, & HOMAY-OUN Seraji, & TUNSTE Edward l. A Rule-Based Fuzzy Traversability Index for Mobile Robot Navigation, IEEE International Conference on Robotics and Automation, Seoul Korea, Mayo 2001. http://citeseer.ist.psu.edu/howard01rulebased.html.

[20] KONOLIGE, K. Myers. The Saphira architecture for autonomous mobile robots, pp. 211-242, 1998.

[21] TIMOTHY, J. Ross.Fuzzy Logic with engineering applications. [22] MPLAB USER’S GUIDE, Microchip Technology, 2005.

Page 77: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 77 - 80

Detección de características geométricas sobre imágenes 2D, empleando técnicas de momentos invariantes

Hugo de Jesús. Mesa Yepes, Juan Carlos Albornoz Barrios y Jhon William Branch Bedoya1

Resumen— En este artículo se presenta el diseño e implementación de un sistema automático para la detección y extracción de características geométricas sobre imágenes 2D, empleando técnicas de procesamiento digital y un modelo de decisión matemático basado en comparación y clasificación de datos (K Medias). El sistema está constituido por un detector de imágenes, y unos detectores de características. El detector de características geométricas de las imágenes se ha desarrollado con los métodos de momentos invariantes, momentos deLegendre y descriptores de Fourier. Los datos utilizados en el proceso de reconocimiento, son las invariantes de las imágenes. El sistema de decisión determina un valor que corresponde a la identificación de la imagen. El sistema fue probado en el proceso de detección de múltiples imágenes geométricas, tales como triángulos, círculos y rombos, entre otros. Se lograron resultados que se encuentran sobre un 90% de eficiencia.

Palabras clave— Reconocimiento de objetos, momentos geométricos, invariantes, vector de características

I. INTRODUCCIÓN

n los procesos de visión por computador, uno de losaspectos de mayor relevancia es la identificación de de los objetos presentes en las imágenes; este proceso se ha

estudiado ampliamente y se han diseñado diferentes técnicas, entre las cuales podemos citar las basadas en redes neuronales [1], los de reconocimiento estadístico [2], los basadas en algoritmos evolutivos [3] y técnicas centradas en los procesos de extracción de características [4]. Todas estas técnicas permiten la identificación de los objetos presentes en una imagen, con mayor o menor grado de certeza. La detección de característica sobre imágenes 2D por medio de técnicas computacionales es un proceso arduo y complejo, en el cual se involucra una gran cantidad de tiempo, datos y recursos de máquina, cuando este proceso se realiza por medio de técnicas tradicionales, como métodos estadísticos o redes neuronales.

En el artículo, se presentan los métodos para la extracción de características de objetos mediante la técnica de momentos

Hugo de Jesús Mesa Yepes. Docente Tiempo Completo, Institución Universitaria de Envigado IUE. M.Sc (c) en Ingeniería de Sistemas – Ingeniero Geólogo. Coordinador Grupo de investigación en Sistemas Inteligentes – IUE (e-mail: [email protected]).

Juan Carlos Albornoz Barrios. Ingeniero de sistemas. Miembro del grupo de investigación en sistemas inteligentes de la Institución Universitaria de Envigado. (e-mail: [email protected]).

Jhon William Branch Bedoya. Docente Tiempo Completo, Universidad Nacional de Colombia – Sede Medellín. Ingeniero de Minas y Metalurgia, M.Sc en Ingeniería de Sistemas. PhD. en Ingeniería (e-mail: [email protected]).

geométricos e invariantes, el cual permite realizar la detección de objetos geométricos presentes en imágenes digitales, minimizando la cantidad de información requerida, el tiempo y los recursos de procesamiento. Por último se presenta el proceso de validación del sistema, el cual reporta una eficiencia del 89% a 90 % en los procesos de reconocimiento.

II. TÉCNICAS DE RECONOCIMIENTO DE OBJETOS BASADAS ENMOMENTOS

Para llevar a cabo la detección y el reconocimiento de objetos presentes en imágenes 2D, se propone un procedimiento que consta de 5 etapas.

A. Adquisición de la imagen

En esta etapa, se captura la imagen, usando dispositivos como cámaras o escáner; el proceso debe realizarse bajo condiciones estándar de adquisición. Adicionalmente, las imágenes pueden ser leídas desde archivos en diferentes formatos, las imágenes pueden ser reales o sintéticas.

B. Segmentación por binarización y generación de la matriz de datos

En este, se transforma el valor del color de cada pixel de la imagen en blanco y negro, conservando sus características esenciales. Para esto, se transforman la imagen de color a tonos de gris, aplicando (1), en la cual R, G y B son las componentes de color del pixel, el valor de gris I, obtenido, se somete a la función escalón unitario establecida en (2).

B*0.11G*0.59R*0.3 ++=I (1)

≤>

=uyxIsi

uyxIsiyxf

),(0

),(255),( (2)

El valor del umbral u, depende de las características de adquisición y de la escena misma. En la mayoría de los casos, el valor 127 produce resultados adecuados. La imagen resultante es convertida en una matriz numérica en la cual el valor de cada pixel en la coordenada (x, y), se transforma en un valor de 1 si el punto es negro y 0 si el punto es blanco.

C. Cálculo de Momentos

Los momentos geométricos han sido ampliamente usados en el análisis de formas, el reconocimiento de patrones y en el análisis de texturas [5], [6], [7]. La teoría de los momentos proporciona una interesante y útil alternativa para la representación de formas de objetos según Fu-K (1980) [8], a la vez que permite realizar procesos de reconocimiento de objetos[9], [10], [11].

Para una región en un plano, definida por el conjunto de puntos tales que f(x, y)> 0, se define el momento de orden pq mediante la ecuación (3) y en el caso de imágenes digitales,

Hugo de Jesús. Mesa Yepes, Juan Carlos Albornoz Barrios y Jhon William Branch Bedoya1

Detección de características geométricas sobre imágenes 2d, empleando técnicas de momentos invariantes

E

Page 78: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 78

por tratarse de objetos con valores discretos, el momento de orden pq se obtiene mediante la ecuación (4).:

= =∫∫ (3)

∑ ∑=x y

qppq yxfyxm ),( (4)

Para p, q= 0, 1, 2… f(x, y) es la matriz conformada por 0 y 1 de la imagen binaria.

1) Momentos simples: Los momentos simples pueden ser calculados hasta

cualquier orden aplicando (4) pero para el reconocimiento de objetos, es suficiente con la determinación de los momentos hasta el orden 3. Los momentos simples representan el área ocupada por el objeto en la imagen, por esta razón, pueden ser usados para el reconocimiento de objetos, independientemente de que este se encuentre invertido o en posición normal.

2) Momentos centrales:Se calculan mediante la aplicación de (5), (6) y (7), estos

dependen de los momentos simples, los cuales son usados para la obtención del centroide X y Y, que son requeridos para el cálculo del momento central. Los momentos centrales se invariantes a la posición y orientación del objeto en un eje de coordenadas. Para calcular el centro de masas se utilizan los momentos simples de orden 1 y de orden 0.

00

10_

m

mx =

(5)

00

01_

m

my =

(6)

Obtención de los momentos centrales:

∑ ∑ −−=x y

qppq yxfyyxxmc ),()()(

__ (7)

Para p, q= 0,1, 2,…

3) Momentos centrales normalizados. Los momentos centrales normalizados se calculan mediante

(8) y (9). Estos se utilizan para el reconocimiento de objetos independientemente de su tamaño.

β00mc

mcmcn pq

pq =(8)

Donde: mc son los momentos centrales y

12

+

+= qpβ (9)

Después de haber calculado estos tres componentes se hallan las 7 invariantes aplicando las fórmulas (10) a (16).

D. Determinación de invariantes.

Estas características se mantienen invariantes ante cambios tales como posición, rotación y escala, por esta razón, son elementos de gran utilidad en el reconocimiento de objetos. Las invariantes se calculan mediante las ecuaciones (10) a (16), que a su vez se basan en los valores de los momentos

centrales normalizados. En las ecuaciones, se ha simplificado la notación por razones de presentación, en estas los momentos centrales normalizados mncpq se representa como Npq.

02201 NNI += (10)

211

202202 )(4)( NNNI +−= (11)

23,01,2

22,10,33 )3()3( NNNNI −+−= (12)

23,01,2

22,10,34 )()( NNNNI +++= (13)

[ ]20321

2123003210321

20321

21230123012305

)()(3))(3(

])(3))[()(3(

NNNNNNNN

NNNNNNNNI

+−++−+

+−++−= (14)

[ ]))((4

)()()(

0321123011

20321

2120302206

NNNNN

NNNNNNI

++++−+−= (15)

( )( ) ( ) ( )[ ]( )( ) ( ) ( )[ ]2

03212

123003213012

20321

21230123003217

33

33

NNNNNNNN

NNNNNNNNI

+−++−+

+−++−= (16)

E. Reconocimiento de Figuras Geométricas.

Con las invariantes calculadas, se genera un vector de características dado por (17), el cual se somete al proceso de identificación, realizado mediante al algoritmo de clasificación de K-Medias. En este proceso se tienen dos etapas, una de aprendizaje y la otra de reconocimiento.

1) Etapa de aprendizaje Para esta, se selecciona un conjunto representativo de los

objetos a aprender, organizados en clases (objetos iguales sometidos a diferentes transformaciones), se calculan los invariantes para cada uno de ellos y se construye un vector de características con los valores de las siete invariantes; el vector de características tendrá la estructura mostrada en (17).

},,,,,{ 654321 IIIIIIX = (17)

Donde: X: Vector de características de cada objeto, Ik: k-esima invariante del objeto

Para el conjunto de vectores de características de objeto a ser entrenado, se aplica el algoritmo de K-Medias, el cual identifica los centros y radios de cada clase.

Los centros Ck de clase se usarán en la etapa de reconocimiento. Estos valores no son inmutables, por el contrario, pueden ser reajustados a medida que se identifican errores en la etapa de reconocimiento.

2) Etapa de reconocimiento Se realiza mediante la aplicación del algoritmo de K-Medias sobre el vector de características del objeto a ser reconocido. Este método toma el vector de características de la imagen a ser reconocida y calcula las distancias respecto a las clases patrón (Ck). El objeto se clasifica como perteneciente a la clase respecto a la cual se reportó la menor distancia. El algoritmo de reconocimiento incluye los siguientes pasos:

Page 79: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 79

• Paso 1. Seleccionar imagen. • Paso 2. Convertir la imagen en 0 y 1. • Paso 3. Extracción del vector de características. • Paso 4. Cálculo de distancias del vector de

características a las clases patrón y selección de la clase a la cual pertenece.

La figura 1 ilustra el diagrama del algoritmo propuesto para el reconocimiento de imágenes.

Figura 1. Diagrama del algoritmo para el reconocimiento de objetos.

Cuando un objeto es clasificado en forma incorrecta, se determina manualmente la clase a la cual pertenece el objeto y se realizarse un proceso de reentrenamiento del clasificador, incrementándose el nivel de eficiencia del sistema.

III. VALIDACIÓN DEL PROCEDIMIENTO

Para la validación del método, se construyó una aplicación en lenguaje C#, en el cual se implementaron los procesos de captura, extracción de características, entrenamiento y evaluación. En esta aplicación, se realizaron pruebas con 169 imágenes sintéticas de 200x200 pixeles, que contienen figuras geométricas simples. El conjunto de prueba del sistema, consta de 169 imágenes de figuras geométricas 2D tales como cuadrado, rectángulo, triángulo, cruz, círculo, entre otras.

A. Clases principales e imágenes de entrenamiento

Se utilizaron figuras geométricas tales como cuadrado, rectángulo y triángulo, entre otros, para la conformación de las clases principales; en la figura 2 se muestran algunas de las imágenes usadas como clase principal.

Figura 2. Figuras de las clases

Las imágenes de las clases principales fueron sometidas a transformaciones geométricas tales como translación, rotación y escalado, generándose un total de 12 nuevas imágenes para cada clase. En la figura 3 se muestran algunas de las transformaciones para los objetos de la figura 2. Las 169 imágenes resultantes, se sometieron al proceso de entrenamiento de extracción de características y entrenamiento del sistema.

Figura 3. Figuras del conjunto de entrenamiento

B. Imágenes para evaluación

El proceso de evaluación se realizó de dos formas diferentes. En el primer conjunto de imágenes de evaluación, se construyó un total de 156 nuevas imágenes, mediante la transformación geométrica de las clases base usadas en el proceso de entrenamiento, como una forma de incrementar el nivel de complejidad del proceso de reconocimiento, se retocaron algunas imágenes agregando nuevos pixeles negros fuera del área del objeto o borrando algunos pixeles de los objetos presentes. En la figura 4, se muestra una parte del conjunto de evaluación resultante para el primer conjunto de evaluación.

Figura 4. Conjunto de imágenes de evaluación conformado a partir de las clases base

Para la conformación del segundo conjunto de imágenes de evaluación, se tomó el creado en la fase anterior y se incluyeron un total de 12 nuevas imágenes, correspondientes a 3 nuevas clases que no fueron incluidas en el proceso de entrenamiento. En la figura 5 se muestran las tres nuevas clases incluidas para evaluación y en la figura 6 se presenta parte del nuevo conjunto de imágenes de evaluación.

Figura 5. Nuevas clases adicionadas al segundo conjunto de evaluación

Figura 6. Segundo conjunto de imágenes de evaluación, incluye imágenes con transformaciones de las 3 nuevas clases

C. Reconocimiento de objetos

Los resultados de la evaluación para el primer conjunto de imágenes se muestran en la tabla I, de estos resultados se pude encontrar que la efectividad del sistema es del 90%,

Page 80: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 80

reconociendo en forma correcta 140 de las 156 imágenes. Las imágenes que presentaron inconsistencias se analizaron y se encontró que el fallo se produce con imágenes de círculos y rectángulos que son identificados como cuadrados, esta situación se presenta en aquellos casos en que el tamaño de los objetos se ha reducido en más de un 70% y se presentan deformaciones en el contorno de la imagen.

En el segundo conjunto de evaluación, en el cual seconservaron las 156 imágenes del conjunto 1 y se agregaron 12 nuevas imágenes pertenecientes a tres nuevas clases, se encontró un incremento en el porcentaje de imágenesclasificadas erróneamente, pero esto coincidió con lo que se esperaba como respuesta del sistema, ya que las tres nuevas clases no fueron incluidas en el proceso de entrenamiento. Para este caso se reportaron un total de 28 imágenes reconocidas en forma incorrecta y 140 reconocidas en forma correcta, lo cual implica una efectividad de un 83% del sistema. En la tabla II se muestran estos resultados.

Tras el proceso de evaluación, se incluyeron las nuevas clases al conjunto de entrenamiento, con este se reentrenó el sistema de clasificación y se repitió el proceso de evaluación con las imágenes del conjunto de evaluación 2.

En la tabla III, se presentan los resultados de la evaluación con el sistema entrenado para el reconocimiento de las nuevas clases. En este se encontró que el sistema presenta una efectividad del 89%, reconociendo en forma correcta 140 de las 168 imágenes del conjunto de evaluación.

IV. CONCLUSIONES

El desarrollo de un sistema de reconocimiento de objetos se hace muy complejo debido a la necesidad de utilizar conjuntos de datos muy grandes para los procesos de aprendizaje y al

tiempo requerido para los procesos de lectura de imágenes y extracción de características.

El uso de los momentos geométricos y las invariantes, son una excelente alternativa para la implementación de sistemas de reconocimiento de objetos e incluso pueden ser usadas en forma eficiente para otro tipo de tareas tales como la segmentación e interpretación de imágenes, pero deben ser usadas con mucho cuidado, ya que los valores de lasinvariantes pueden presentar valores similares para objetos diferentes.

Los sistemas de reconocimiento de objetos basados en invariantes, presentan una eficiencia alta, lo cual los hace una alternativa viable para su implementación en diferentes aplicaciones tales como el control de procesos industriales basados en imágenes, la identificación de características en imágenes médicas, la compresión de imágenes, entre otras.

REFERENCIAS [1] C. M. Bishop, Neural Networks For Pattern Recognition. Oxford, U.K.:

Clarendon, 1996. [2] Anil K. Jain , Robert P. W. Duin , Jianchang Mao, Statistical Pattern

Recognition: A Review, IEEE Transactions on Pattern Analysis and Machine Intelligence, v.22 n.1, p.4-37, January 2000

[3] Forrest, S., Javornik, B., Smith, R., and Perelson, A. (1993). Using genetic algorithms to explore pattern recognition in the immune system. Evolutionary Computation, 1(3):191-211..

[4] Toru Wakahara , Yoshimasa Kimura , Akira Tomono, Affine-Invariant Recognition of Gray-Scale Characters Using Global Affine Transformation Correlation, IEEE Transactions on Pattern Analysis and Machine Intelligence, v.23 n.4, p.384-395, April 2001.

[5] S. A. Dudani, K. J. Breeding and R. B. Mcghee, Aircraft identication by moment invariants, IEEE Transactions on Computers, 28(1):39-46, 1977.

[6] A. Sluzek, Using moment invariants to recognize and locate partially occluded 2D objects, Pattern Recognition Letters, 7:253-257, 1988.

[7] Z. Mingfa, S. Hasani, S. Bhattaria and H. Singh, Pattern recognition with moment invariants on a machine vision system, Pattern Recognition Letters, 9:175-180, 1989.

[8] Fu, K., Picture analysis, en Chang S.K. and Fu K.S. eds. Pictorial information systems, Springer Verlag, 104-127, 1980.

[9] González, J., Visión por computador, Paraninfo, 1999. [10] Pratt W., Digital Image Processing. Wiley-Interscience, 1991. [11] Trucco, E. and Verri, A. (1998), Introductory techniques for 3-D

computer vision, Prentice Hall, 1998. [12] Pajares, G. and Cruz, J., Formas a partir de X, Revista Electrónica de

Visión por Computador, 2000. [13] Escalera, Arturo, Visión por Computador Fundamentos y Métodos,

Prentice Hall, Universidad Carlos III de Madrid, Pág. 251-263, 2001. [14] Faugeras, O., and Luong, Q., The Geometry of Multiple Images, The

MIT Press, Cambridge Massachusetts, London, England, 2001. [15] Haralick, R., Shanmugam and Dinsteian, I., Textural features for image

classification, IEEE Trans. on Systems, Man and Cybernetics, vol. 3, 610-621, 1973.

[16] Haralick, R., and Shapiro, L., Computer and Robot Vision, Volume I and II, Addison-Wesley Publishing Company, Inc. 1993.

[17] Haralick, R.M., Stemberg S.R., and Zhuang X. Image analysis using mathematical morphology IEEE transactions on Pattern Analysis and Machine intelligence, 9(4): 532-550, 1987.

TABLA III EFECTIVIDAD DEL SISTEMA CON 168 IMÁGENES DE PRUEBAS Y EL SISTEMA

REENTRENADO. CONJUNTO DE EVALUACIÓN 2

Evaluación No.

Imágenes %

Reconocida correctamente 150 89% Reconocida en forma incorrecta 18 11%

TABLA II EFECTIVIDAD DEL SISTEMA CON 168 IMÁGENES DE PRUEBAS SIN

REENTRENAMIENTO. CONJUNTO DE EVALUACIÓN 2

Evaluación No.

Imágenes %

Reconocida correctamente 140 83% Reconocida en forma incorrecta 28 17%

TABLA I EFECTIVIDAD DEL SISTEMA CON 156 IMÁGENES DE PRUEBAS. CONJUNTO DE

EVALUACIÓN 1

Evaluación No. Imágenes % Reconocida correctamente 140 90% Reconocida en forma incorrecta 16 10%

Page 81: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 81 - 84

Reconocimiento de expresiones faciales combinando métodos Kernel e ICA

Damián A. Álvarez, Juan G. Fetecua, Julián D. Echeverry, Álvaro A. Orozco

Abstract— The facial expressions give the most information

content of a spoken message, hence the importance of creating systems for automatic recognition. This paper claim a experimental methodology for facial expression recognition based on Kernels, finding the projection directions in feature space through independent component analysis (ICA), who have direct application in research of emotional behavior, cognitive processes and social interaction. The methodology validation was done on international databases such as the CMU and FEEDTUM. Image preprocessing was done through histogram equalization in order to homogenize lighting conditions, a whitening step on mapped data take place with ICA based on Kernel Principal Component Analysis (KPCA) for that in feature space the data structure was lineal, finally we applied ICA for make the projected distribution of data is at least possible Gaussian. It is to be expected that the method proposed has a better performance than conventional techniques who are inherently linear.

Index Terms— Facial expressions, ICA, Kernel, KICA.

I. INTRODUCCIÓN

OS seres humanos expresan sus emociones de diversas maneras, siendo la más universal de estas las expresiones faciales. Aunque el reconocimiento de estas expresiones

es natural para los seres humanos, dotar a una máquina de esta habilidad resulta bastante difícil [1]. Dos tipos de problemas tienen que ser resueltos para llevar a cabo esta tarea: extracción de características y clasificación de la expresión facial. Este documento se enfoca en la representación de las imágenes en dos espacios: análisis de componentes principales (PCA) y KPCA (en donde se realiza un mapeo Kernel para conseguir que los datos tengan estructura lineal), seguida de una transformación ICA que busca la no correlación entre datos.

Inicialmente ICA surgió para resolver el problema de separación ciega de fuentes y posteriormente fue aplicado a la tarea de extracción de características, estudios como [2-3] consideran de utilidad para la clasificación de rostros y expresiones, la transformación ICA. El problema de ICA se presenta al tratar de separar mezclas de fuentes no-lineales debido a su inherente linealidad. En la extracción de características el ICA basado en proyecciones lineales puede no representar acertadamente los datos con estructura no lineal. Para sobrellevar este problema, se aplica un mapeo no

Este documento surge como resultado parcial del proyecto aprobado por COLCIENCIAS en la convocatoria 370 del 2006 con código 111037019600.

lineal de los datos en un espacio característico utilizando métodos Kernel [4-6], de esta forma el problema se convierte en aplicar ICA en el espacio transformado Kernel. Estudios como [7-8] han combinado con éxito kernel e ICA (KICA) para el reconocimiento de rostros, en este trabajo se pretende probar esta metodología para la tarea de reconocimiento de expresiones faciales.

Este documento esta organizado de la siguiente manera, en la Sección II se presenta una breve revisión de Kernels e ICA, en la Sección III se plantea la metodología a usar, en la Sección IV se expone el experimento realizado, en la Sección V se muestran y se discuten los resultados y por último se presentan las conclusiones en la Sección VI.

II. REVISIÓN DE KERNELS E ICA

A. Kernels

Considere un grupo de datos N∈x � , un Kernel k se presenta como una medida de similitud que puede ser vista como un producto punto del mapeo φ en un espacio

característico H de la forma,

:

( )

N Hφφ

→→x x

� (1)

donde se define el Kernel como la función equivalente a:

' '( , ) ( ), ( )k φ φ=x x x x (2)

Considere que tiene 1 2, , , m ∈x x x X… , la matriz de Gram ó

matriz Kernel de m m× elementos se define por:

( , )ij i jk=K x x (3)

La cual es definida positiva y simétrica. Así cualquier función que cumpla esta condición y pueda representarse por un producto punto, puede ser utilizada como Kernel [4], donde no es necesario conocer el mapeo para obtener la representación de los datos en el espacio característico. Entre las principales funciones Kernels se tienen, el Kernel Gaussiano [9]:

Reconocimiento de expresiones faciales combinando métodos Kernel e ICA

Damián A. Álvarez, Juan G. Fetecua, Julián D. Echeverry, Álvaro A. Orozco

L

Page 82: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 82

2'

22'( , )k e

σ

⎛ ⎞−⎜ ⎟⎜ ⎟⎜ ⎟⎝ ⎠=

x x

x x (4)

donde 0σ > y el Kernel polinomial no homogéneo:

( )' '( , ) ,d

k a c= +x x x x (5)

donde d ∈ , , 0a c ≥ .

B. ICA

El problema que intenta solucionar ICA puede formularse en notación matricial, mediante la ecuación (6):

=X AS (6)

donde A es la denominada matriz de mezcla (desconocida). El problema consiste en recuperar el vector de fuentes S,disponiendo, únicamente, de un vector de N observaciones X;es decir, el objetivo es calcular una matriz de pesos W, la cual es la inversa de A con algunos cambios en escala y permutaciones, de modo que se pueda recuperar las señales independientes originales como:

=U WX (7)

Entre los primeros algoritmos para aproximar ICA se encuentra el de Bell y Sejnowsli [10] conocido como Infomax, ya que se basa en el principio de maximización de información. Debido a que este algoritmo no fuerza estrictamente una no correlación completa de los datos, su resultado puede no ser exactamente una transformación ortonormal de los datos blanqueados. Con el fin de cumplir la restricción de ortogonalidad en forma exacta Hyvärinen, [11], introdujo un algoritmo ICA usando un simple y eficiente esquema de iteración denominado fixed point algorithm,como su algoritmo presentó una convergencia más rápida se le denominó FastICA. En este estudio se utilizará el segundo algoritmo, ya que como se expone en [12] con FastICA es posible realizar una transformación ortonormal de los datos.

El algoritmo FastICA usa una nueva función objetivo para estimar la transformación ICA, a diferencia de la aproximación realizada con Infomax, este algoritmo maximiza cualquier función de costo de la forma de la expresión (8) y no solo la entropía, para maximizar la independencia, lo que hace de este método una forma más general de maximización.

{ } { }2[ ( ) ( ) ]iJ c E G y E G v= − (8)

donde G es una función no cuadrática que en la práctica es elegida de forma que sea rápida de calcular y que considere el

orden en que las componentes son estimadas, c es una constante arbitraria, v es una variable Gaussiana aleatoria, yi

también es una variable aleatoria y ambas se asumen de media cero y varianza unitaria.

Lo primero que se debe hacer es encontrar las componentes independientes maximizando la expresión:

{ } { }2

( ) ( ) ( )TGJ E E E G v⎡ ⎤= −⎣ ⎦W W X (9)

Donde W es un vector de pesos restringido a que:

( ){ }21TE =W X (10)

Lo segundo, es extender el uso de una función objetivo

unitaria para calcular todo el arreglo W. Para hacer esto la información mutua es minimizada cuando la suma de la negentropía de las componentes transformadas es maximizada, además se considera la restricción de no correlación para obtener el problema:

( )( ){ }1

max ( )n

G ii

T T

k j kj

J

E δ=

=

∑ w

w X w X

(11)

Maximizando (11) se obtiene cada uno de los vectores iwque conforma cada una de las filas de la matriz W , con la cual se calcula la transformación ICA, dada por (7).

Para maximizar la función objetivo se usa el algoritmo iterativo fixed point, este tiene propiedades de convergencia deseables y encuentra componentes independientes de prácticamente cualquier distribución no Gaussiana [11].

Como se ha expuesto los algoritmos ICA parten de una regla de actualización de pesos, obtenida mediante maximización de una función objetivo, lo que no se ha dicho es que estos incluyen un paso previo al aprendizaje conocido como sphering con el fin de reducir las estadísticas de primer y segundo orden de los datos. La media de las filas de X son sustraídas y seguidamente X es pasado a través de una matriz de blanqueamiento dada por:

( ) ( )11222 ( ) 2 T

z Cov−−

= =W X XX (12)

Cuando las entradas a ICA son los datos que han pasado por este paso previo, la matriz de transformación es

i z=W WW .

III. METODOLOGÍA KICA

Dado un vector aleatorio x, el cual es posiblemente una mezcla no lineal, se realiza el mapeo no lineal de este a un

Page 83: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 83

espacio característico de mayor dimensión H, a partir de la ecuación (1). Se busca encontrar la transformación ICA en el espacio característico mediante el operador lineal

φW siguiendo la transformación:

( )φφ=s W x (13)

donde φW es una matriz.

En la metodología KICA, también es necesario realizar una etapa previa de blanqueamiento de los datos, pero a diferencia de ICA esta no se calcula con la matriz de covarianza si no usando métodos Kernel, para esto se asume que se tiene un conjunto de datos 1 2, , , N

m ∈x x x… � y se realiza su mapeo al

espacio característico donde se debe garantizar:

1

( ) 0M

jj

φ=

=∑ x (14)

Sea 1 2[ ( ), ( ), , ( )]Mφ φ φ=Q x x x… la matriz de

covarianza en el espacio característico H se define por [13]:

1 Tt Mφ =s QQ (15)

La matriz Kernel se determina por medio de:

T=K Q Q (16)

En virtud de los métodos Kernel es posible encontrar cada uno de los componentes de K sin necesidad de determinar el operador ( )φ ⋅ , de la forma:

( ) ( ) ( , )Tij i j i jkφ φ= =K x x x x (17)

A partir de los valores propios iλ y vectores propios iγ de

la matriz K se define:

1 2( , , , )mγ γ γ=V … y 1 2( , , , )mdiag λ λ λΛ = … (18)

Con estos vectores es posible realizar el blanqueamiento de los datos, siguiendo la expresión:

( )Tφ=y P x (19)

Puesto que el mapeo se realiza implícitamente la ecuación (19) se calcula como:

1

11 2

1

( )

[ ( , ), ( , ), , ( , )]

T T

T TM

T

M

M k k k

M

φ−

= Λ

= Λ

= Λ x

y V Q x

V x x x x x x

V K

… (20)

Para que la estimación de ICA sea más simple y mejor

condicionada es necesario que el vector Kernel xK tenga sus

datos centrados, si ( )1/M M MM

×=C y ( )1 1

1/M

=Cse tiene:

1 1M M= − − +x x xK K C K KC C KC� (21)

Por lo tanto la ecuación (20) queda de la forma:

1 TM −= Λ xy V K� (22)

En resumen la transformación ICA de (13) en el espacio de características puede ser descompuesta en dos etapas: blanqueamiento mediante KPCA, dado por la ecuación (22) y la transformación ICA (en el espacio KPCA blanqueado) dada por la siguiente expresión [8]:

=s Wy (23)

IV. EXPERIMENTO REALIZADO

La metodología expuesta inicialmente para el reconocimiento de rostros, fue probada para la tarea de reconocimiento de expresiones faciales sobre imágenes con realce de contraste (mediante ecualización del histograma) de subconjuntos de imágenes de las bases de datos CMU [14] y FEEDTUM [15], sin considerar y considerando sujetos que usan gafas (oclusiones), utilizando el clasificador del vecino más cercano y usando el esquema de validación cruzada, seleccionando en forma aleatoria los conjuntos de entrenamiento y validación para 30 casos. De ambas bases de datos se clasificaron por pares cuatro distintas clases de expresiones (alegría A, tristeza T, enojo E y sorpresa S).

La aplicación de ICA a imágenes se realizará de la forma en que se propone en [2], donde se plantea que esta aplicación puede hacerse a través de dos arquitecturas: tratando las imágenes como variables aleatorias y los píxeles como observaciones (ARQI) o tratando los píxeles como variables aleatorias y las imágenes como observaciones (ARQII), en este experimento se compararán ambas con el fin de determinar que tipo de información es de mayor utilidad para la tarea planteada.

V. RESULTADOS

Como se mencionó es necesario determinar la forma más apropiada en que se aplica ICA a imágenes (tipo de arquitectura) para la tarea planteada y adicionalmente se debe

Page 84: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 84

identificar que tipo de kernel (polinomial o Gaussiano) genera un mejor desempeño del algoritmo KICA.

En la tabla I se presentan los resultados para la base de datos CMU con ambas arquitecturas para kernel de tipo polinomial (mejor función kernel).

Como se observa el algoritmo KICA utilizando la arquitectura II presentó un mejor desempeño, aunque el algoritmo ICA en la arquitectura I obtuvo mejores resultados para dos casos. Además el algoritmo KICA se ve menor afectado por el tipo de arquitectura al ser comparado con ICA.

A continuación se implementaron los mejores métodos para la base de datos FEEDTUM (tabla II).

Con la base de datos FEEDTUM se puede observar que se obtienen mejores porcentajes de acierto en la clasificación, esto se debe a que dicha base de datos está mejor etiquetada y contiene una mayor cantidad de imágenes por sujeto.

Por último se consideraron casos de oclusiones con el fin de observar el funcionamiento de los mejores métodos.

De las tablas II y III se ve que la metodología es robusta en casos donde se presenta oclusiones, ya que los porcentajes de reconocimiento son muy similares e incluso mejoran para algunos pares de expresiones por ejemplo E-S y E-T.

VI. CONCLUSIONES

Se desarrolló una metodología efectiva para el reconocimiento de expresiones faciales utilizando ICA y KICA, encontrando que para esta tarea la arquitectura II con un kernel polinomial fue la mejor forma de aplicar el algoritmo KICA, mientras que la arquitectura I funcionó mejor para el algoritmo ICA.

Los resultados encontrados sugieren que el desempeño de la metodología implementada esta relacionado al tipo de arquitectura sobre el cual se aplican los métodos a las imágenes para la tarea de reconocimiento de expresiones.

AGRADECIMIENTOS

Esta investigación fue realizada gracias al apoyo del grupo de investigación en Control e Instrumentación de la Universidad Tecnológica de Pereira en el marco del proyecto COLCIENCIAS código 111037019600.

REFERENCES

[1] Y. Tian, T. Kanade, J. Cohn. Recognizing Action Units for Facial Expression Analysis, IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 23, No. 2, 2001.

[2] M. S. Bartlett, “Face image analysis by unsupervised learning and redundancy reduction,” Ph.D. dissertation, 1998, chair-Donald I. Macleod.

[3] G. Donato, M. S. Bartlett, J. C. Hager, P. Ekman, and T. J. Sejnowski, “Classifying facial actions”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 21, no. 10, pp. 974_989, 1999.

[4] B. Schölkopf and A.J. Smola, Learning with Kernels, MIT Press, Cambridge, MA, 2002.

[5] F.R. Bach, M.I. Jordan, Kernel independent component analysis, J. Mach. Learn. Res. 3 (2002) 1–48.

[6] T. Martiriggiano, M. Leo, P. Spagnolo, Dapos, and T. Orazio, _Facial feature extraction by kernel independent component analysis,_ AVSS. IEEE Conference on Advanced Video and Signal Based Surveillance., pp. 270_275, 2005.

[7] T. Martiriggiano, et. al. Face Recognition by Kernel Independent Component Analysis. CNR- ISSIA via Amendoda 122/D-I, Italy 2005.

[8] Yang, X. Gao, D. Zhang, and J. Yang, “Kernel ica: An alternative formulation and its application” to face recognition,” Pattern Recognition, vol. 38, no. 10, pp. 1784_1787, 2005.

[9] C. Campbell, “Kernel methods: a survey of current techniques,” 2000 [10] A. J. Bell and T. J. Sejnowski, “An information maximization approach

to blind separation and blind deconvolution,” Neural Computation, vol. 7, no. 6, pp. 1129–1159, 1995.

[11] A. Hyvärinen, “Fast and robust fixed-point algorithms for independent component analysis,” IEEE Transactions on Neural Networks, vol. 10, no. 3, pp. 626–634, 1999.B.

[12] M. A. Vicente, P. O. Hoyer, and A. Hyvarinen, Equivalence of some common linear feature extraction techniques for appearance-based object recognition tasks, IEEE Trans. Pattern Anal. Mach. Intell., vol. 29, no. 5, pp. 896_900, 2007.

[13] Schölkopf, A. Smola, and K.R. Müller, “Nonlinear component analysis as a Kernel eigenvalue problem,” Neural Computation, vol. 10, pp. 1299–1319, 1998.B.

[14] T. Sim, S. Baker, and M. Bsat, “The cmu pose, illumination, and expression database,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 25, no. 12, pp. 1615_1618, 2003. F.

[15] Wallho, “Facial expressions and emotion database,” 2006.

TABLA IRECONOCIMIENTO DE PARES DE EXPRESIONES SOBRE LA BASE DE DATOS CMU

Expre-sión

ICA ARQIKICA ARQI ICA ARQII KICA

ARQII E-S 91.66 ± 0.53 90.83 ± 0.49 54.44 ± 0.71 95.83 ± 0.35 A-S 95.00 ± 0.42 90.00 ± 0.64 58.05 ± 0.76 96.66 ± 0.31 S-T 93.61 ± 0.50 89.16 ± 0.57 57.77 ± 0.80 94.72 ± 0.39 A-E 94.72 ± 0.43 83.33 ± 0.69 57.50 ± 0.82 86.11 ± 0.56 E-T 86.11 ± 0.63 77.77 ± 0.64 52.50 ± 0.79 80.27 ± 0.63 A-T 88.33 ± 0.58 82.50 ± 0.62 52.50 ± 0.81 93.33 ± 0.41

TABLA II RECONOCIMIENTO DE PARES DE EXPRESIONES SOBRE FEEDTUM

Expre-sión

ICA ARQIKICA ARQII

E-S 99.71 ± 0.05 99.56 ± 0.04 A-S 99.66 ± 0.04 99.90 ± 0.02 S-T 99.36 ± 0.07 99.85 ± 0.02 A-E 97.30 ± 0.53 99.80 ± 0.03 E-T 99.51 ± 0.05 99.65 ± 0.05 A-T 99.75± 0.04 99.95 ± 0.01

TABLA IIIRECONOCIMIENTO DE PARES DE EXPRESIONES SOBRE FEEDTUM

Expre-sión

ICA ARQIKICA ARQII

E-S 99.79 ± 0.03 99.87 ± 0.01 A-S 97.69 ± 0.56 99.79 ± 0.02 S-T 99.58 ± 0.05 99.83 ± 0.03 A-E 99.71 ± 0.04 99.26 ± 0.05 E-T 99.71 ± 0.03 99.67 ± 0.04 A-T 99.67± 0.04 99.71 ± 0.03

Page 85: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

Memorias STSIVA 2008 Tomo II 85 - 88

Desarrollo de una aplicación para visualizar objetos 3D en Ambientes y Sistemas de Inmersión

Julio César Ordóñez López, Alexander Cerón Correa1

Desarrollo de una aplicacion para visualizar objetos3D en Ambientes y Sistemas de Inmersion

Julio Cesar Ordonez Lopez 1, Alexander Ceron Correa 1

Abstract—En este artıculo se presenta el desarrollo de unaaplicacion que permite hacer uso de la vision estereoscopicautilizando un casco de realidad virtual HMD (Head-MountedDisplay). La aplicacion permite la visualizacion de objetos 3D(Volumenes basicos y modelos desarrollados con software espe-cializado) para diferentes aplicaciones como: medicina, robotica(teleoperacion), topografıa (visualizacion de terrenos), arquitec-tura, mundos virtuales, educacion entre otros. Esta aplicacionfue desarrollada utilizando herramientas de programacion ygraficacion 3D como lo son Java y OpenGL. Adicionalmenteesta incluye rutinas para hacer uso de diferentes dispositivosde entrada (Joystick y GamePad) permitiendo al usuario lainteraccion con los objetos visualizados. En la ultima version,se implemento la proyeccion de la imagen en dos pantallas, paravisualizar los mismos objetos en un V-CAVE (Sistema de dospantallas que forman un angulo de 90◦ entre sı con la intencionde aplicar un efecto de inmersion sobre el usuario).

Palabras Claves—Librerias Graficas, Realidad Virtual, Com-putacion Grafica, Vision Estereoscopica

I. INTRODUCCION

LOS sistemas y ambientes de inmersion permiten alusuario interactuar con objetos virtuales, adicionalmente

permiten visualizar fenomenos de interes en diferentes areas dela ciencia y la ingenierıa que incluyen areas como medicina,robotica, topografia, arquitectura, educacion, entretenimientoentre otros.

En el campo de la medicina podemos encontrar progra-mas para la simulacion y el entrenamiento en operacionesquirurgicas en donde tambien se involucra la robotica. Adi-cionalmente estos sistemas facilitan el entrenamiento y la tele-operacion de vehıculos no tripulados. En topografıa se puederealizar la visualizacion de terrenos ası como de edificacionespara la arquitectura [1]. El campo de la educacion presentanuevos modos de interaccion para el aprendizaje, ademas lageneracion de mundos virtuales es un campo muy promisoriopara aplicaciones de comercio y entretenimiento como es elcaso de Second Life.

Aunque existen diversos factores a considerar en un sistemainmersivo, este trabajo se enfoca en la vision estereoscopica,la cual permite a los seres humanos ver en profundidad ydiferenciar objetos cercanos y lejanos mediante un procesoque involucra diversos factores fisiologicos, cognitivos y psi-cofısicos [2].

1 Grupo de Investigacion en Multimedia, Programa de Ingenierıa enMultimedia, Facultad de Ingenierıa, Universidad Militar Nueva Granada.Bogota, Colombia.

Teniendo en cuenta la gran cantidad de aplicaciones queexisten para el uso de la vision estereoscopica se planteo eldesarrollo de una aplicacion que aprovecha la gran capaci-dad de inmersion que ofrece un casco de realidad virtual oHMD (Head-Mounted Display). Para lograr esto se recurrioen primera instancia al lenguaje de programacion Java, queaporta la ventaja de poder ser utilizado en cualquier sistemaoperativo y ademas facilita la programacion orientada a obje-tos. Adicionalmente se recurrio a la librerıa de graficacion3D OpenGL, que permite desarrollar aplicaciones graficasen diferentes sistemas operativos, a diferencia de DirectXla cual fue disenada para Windows R[3]. Otra ventaja deusar OpenGL es que permite la utilizacion del modo estereode la tarjeta de video necesario para la visualizacion en eldispositivo HMD.

Para favorecer la experiencia del usuario, se implementarondos clases referentes a la graficacion y la interaccion delusuario con los objetos. La primera de ellas, es un moduloque permite graficar objetos complejos desarrollados con unsoftware especializado en modelado y animacion 3D, paraeste caso en particular, los modelos se desarrollaron utilizandoAutodesk RMaya Ry guardados en formato OBJ (Formato dedefinicion de geometrıa desarrollado por Wavefront Technolo-gies). Esto se hizo con el fin de facilitar la graficacion deobjetos y estructuras complejas que son bastante complicadasde desarrollar mediante un algoritmo o mediante volumenesbasicos (Cubos, piramides o cilindros, implementados anteri-ormente en la aplicacion). La segunda clase, es un moduloque permite al usuario interactuar con los objetos puestos enla escena mediante un Joystick o un GamePad, lo que deja delado los modelos estaticos e incrementa la inmersion a la queesta sometido el usuario.

II. VISION ESTEREOSCOPICA

El factor mas importante que se tuvo en cuenta para larealizacion de este proyecto, fue el sistema de vision estere-oscopica, el cual es inherente a los seres humanos, facilitandola percepcion en profundidad y la capacidad de distinguir queobjetos estan mas cercanos que otros. En una definicion masconcreta, la vision estereoscopica o estereopsis es el resultadode la union de las dos vistas ligeramente diferentes que recibennuestros ojos del mundo real [4].

A. Direccion visual Binocular

La direccion visual es la ubicacion relativa al observadorque se percibe de un objeto. Generalmente se mide en terminos

Page 86: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 86

de azimut1 (A la derecha y la izquierda del punto dondeesta ubicado el objeto) y en terminos de elevacion (Arribay abajo del mismo punto)[4]. La direccion visual binocular sediferencia de la monocular en que esta ultima es la imagen querecibe cada ojo por separado. Algunos investigadores planteanque la direccion visual binocular esta ubicada en la mitad delas dos imagenes monoculares, sin embargo, otros planteanla posibilidad de que esta direccion esta ubicada en cualquierpunto entre las dos imagenes monoculares, no necesariamenteen la mitad.

B. Angulos de convergencia y disparidades retinales

El angulo de convergencia de las dos imagenes monocularescon respecto a un objeto ubicado en un punto, esta dado porla siguiente ecuacion:

α = 2 · arctan (i

2 ·D1)

donde, α es el angulo de convergencia, D1 es la distanciaentre el observador y el objeto ubicado en el punto F1, e i esla distancia interocular [4](Figura 1). Si se ubica otro objetoen un punto F2 mas cercano al observador, se puede ver queel angulo de convergencia β que define con respecto a los dosojos es mayor, por lo tanto se puede decir que tanto α como βson inversamente proporcionales a la distancia entre el objetoy el observador.

Fig. 1. Angulo de convergencia de las dos imagenes monoculares

La disparidad retinal o binocular se produce a partir de ladiferencia de los angulos α y β, lo que le permite al cerebrohumano identificar la profundidad de cada objeto y concluircual se encuentra mas cercano que el otro.

C. Vision Estereoscopica en la aplicacion

Para aplicar este efecto de profundidad sobre los objetosgraficados en la escena, se tuvo en cuenta que el espacio degraficacion de OpenGL cuenta con cuatro buffers2 diferentesdonde se pueden graficar estos objetos, dos buffers frontales(Derecho e izquierdo) y dos buffers traseros (Derecho eizquierdo). A partir de esta caracterıstica de la librerıa, se

1Angulo que forma la imagen monocular con el punto de fijacion2Espacio en la memoria del computador en donde se almacenan temporal-

mente los datos para la graficacion

procedio a dibujar el mismo objeto dos veces, una vez en elbuffer trasero derecho y una vez en el buffer trasero izquierdo.

Sin embargo, la clave de la estereovision mediante OpenGL,se encuentra en permitirle a la aplicacion actualizar cada ciertotiempo el espacio de graficacion y ademas alternar la imagenque envıa hacia el dispositivo HMD, es decir, una vez envıala imagen hacia el ojo izquierdo y la siguiente vez que seactualice, envıa la imagen hacia el ojo derecho.

Para modificar la profundidad con la que el objeto se ve enel dispositivo HMD, se agrego un procedimiento que permite,mediante eventos del mouse, modificar la distancia del objetocon respecto al observador y ası mismo modificar el angulode convergencia.

III. AMBIENTES Y SISTEMAS DE INMERSION

Un ambiente virtual de inmersion permite que un usuariotenga principalmente experiencias visuales, audibles y tactiles.Generalmente el factor visual es el mas importante y paraesto se usa una pantalla, un dispositivo estereoscopico ocualquier otro sistema de visualizacion. Los dispositivos devisualizacion, los controles de la interfaz y el computador estanconfigurados para sumergir al operador en un ambiente quecontiene objetos tridimensionales con locaciones tridimension-ales y orientaciones en un espacio tridimensional. Cada objetovirtual tiene una ubicacion en el espacio que es independientedel puerto de vista del operador, y el operador puede interac-tuar con estos objetos utilizando diferentes dispositivos paramanipularlos[5].

Un ambiente virtual se asemeja a un sistema de teleop-eracion, sin embargo la diferencia entre estos dos radica en laparte no humana de su estructura. En un sistema teleoperado,el usuario controla a un robot desde una estacion remota [6] yen un ambiente virtual, el usuario visualiza y manipula objetosvirtuales mediante un computador, lo cual puede funcionarcomo entrenamiento para que posteriormente el usuario inter-actue con un sistema teleoperado [5].

Al mismo tiempo con esta diferencia en la estructura,tambien se da una diferencia en el proposito de estos dossistemas: para el sistema teleoperador, el proposito es sentir,manipular y transformar el estado del mundo real, mientrasque el proposito del ambiente virtual es sentir, manipular ytransformar el estado del usuario o modificar el estado de lainformacion almacenada en el computador [5]. Un ejemplode este tipo es la simulacion quirurgica, la cual puede serrealizada utilizando modelos deformables mediante sistemasinmersivos de visualizacion y dispositivos hapticos3, como seobserva en [7].

A. V-CAVE

Para incrementar las sensaciones de inmersion en el mundoreal, se desarrollaron diferentes proyectos con este fin entre loscuales se pueden destacar ImmersaDesk, las paredes de visu-alizacion y el CAVE (Cave Automatic Virtual Environment).

El CAVE, en terminos generales, se compone de variaspantallas que se ubican de manera adyacente inscribiendo un

3Dispositivos que permiten sensacion del tacto

Page 87: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 87

angulo determinado entre ellas, dependiendo del numero depantallas, en donde se proyectan las imagenes que van a aplicarel efecto de inmersion sobre el usuario.

Por facilidades en cuanto a costo y disponibilidad, en esteproyecto se utilizo un V-CAVE como ambiente de prueba. EsteV-CAVE consiste en dos pantallas dispuestas de tal maneraque formen un angulo de 90◦ entre las dos, en donde cadauna de las pantallas tiene un proporcion de 4/3 (Las imagenesproyectadas de la aplicacion poseen la misma proporcion). En[8] se presenta el desarrollo de una aplicacion de bajo costode un V-CAVE.

IV. ESTRUCTURA DE CLASES

Para el desarrollo de la aplicacion, se tuvieron en cuentatres factores importantes representados en diferentes clases,que se extienden a la vision estereoscopica afectando a todoslos objetos visualizados.

A. Graficacion de Volumenes Basicos (Figura 2)

Grafica objetos de poca complejidad, en este caso, un cuboy una esfera.

• GIMVertex3D: Se encarga de definir un punto concoordenadas X, Y, Z para aplicarlo a la posicion delobjeto.

• GIMObject3D: Define los atributos basicos de unobjeto 3D como el centro, la rotacion, la traslacion, elcolor y el metodo Render para graficarlo.

• GIMCube: Hereda todos los atributos y metodos de laclase GIMObject3D y sobrescribe el metodo Render, enel que establece los vertices y las caras del cubo.

• GIMSphere: Hereda todos los atributos y metodos dela clase GIMObject3D y sobrescribe el metodo Render,en el que establece el radio y la resolucion de la esfera.

Fig. 2. Diagrama de clases para la graficacion de volumenes basicos

B. Graficacion de Modelos 3D (Figura 3)

Carga los materiales y la geometrıa de los objetos almace-nados en los archivos OBJ y MTL.

• GIMMaterialLoader: Carga el material del objeto enla escena mostrada en la aplicacion.

• GIMModel: Carga todos los datos del modelo 3Dcontenidos en el archivo OBJ.

• GIMModelLoader: Pinta en la escena los datosobtenidos con la clase GIMModel.

Fig. 3. Diagrama de clases para la graficacion de modelos en formato OBJ

C. Manipulacion de Objetos (Figura 4)

Permite la interaccion con los objetos visualizados medianteun dispositivo de entrada (Joystick o Gamepad)

• GIMGamePad: Establece la conexion con el dispositivode entrada conectado al computador, obtiene todassus caracterısticas y captura la informacion de losmovimientos de sus ejes y de la interaccion con susbotones.

• GIMWarning: Clase que verifica si hay o no undispositivo conectado al computador.

Fig. 4. Diagrama de clases para la manipulacion de los objetos

D. Vision Estereoscopica (Figura 5)

Aplica el efecto de profundidad a los objetos visualizados.

Page 88: publicaciones.ustabuca.edu.copublicaciones.ustabuca.edu.co/images/Documentos... · 2019-02-19 · DIRECTIVOS Fray Orlando Rueda Acevedo, O.P. Rector Fray Guillermo León Villa Hincapié

XIII SIMPOSIO DE TRATAMIENTO DE SEÑALES, IMÁGENES Y VISIÓN ARTIFICIAL. STSIVA 2008 88

• GIMImmersive: Es la clase principal, contiene losmetodos necesarios de OpenGL para poder definir elcanvas para la graficacion de los objetos, ademas losdibuja en el buffer derecho e izquierdo del mismo porseparado, para que el usuario experimente la sensacion deprofundidad mediante el HMD (Head-Mounted Display).

Fig. 5. Diagrama de clases para la vision estereoscopica

V. RESULTADOS

Se realizaron dos prototipos de la aplicacion con diferentespropositos(Figura 6):

• El primer prototipo se desarrollo con el fin de ser utilizadomediante un casco de realidad virtual HMD, aplicandoleel efecto de profundidad (vision estereoscopica) a todoslos objetos que se encuentran graficados. Permite graficardos clases de volumenes basicos (Cubo y esfera), permitetambien importar modelos 3D en formato OBJ con susrespectivos materiales en formato MTL. Permite la inter-accion del usuario con los objetos mediante un Joysticko un Gamepad.

• El segundo prototipo esta disenado para ser utilizado enun ambiente de inmersion V-CAVE, para la cual, en vezde definir un solo canvas de graficacion, se definieron dosy se compartio su contexto. Esto se hace con el fin deque los objetos graficados en cada uno de ellos tengan lasmismas propiedades. Ademas permite graficar los mismosobjetos y la misma manipulacion que la primera version.

Fig. 6. Diagrama del funcionamiento de la aplicacion.

Esta aplicacion, presenta principalmente la ventaja de sermultiplataforma y ademas la estructura de esta fue desarrolladacon un diseno orientado a objetos que permite la incorporacionde futuras mejoras asi como de ser acondicionada, paradiferentes areas. Se espera que el desarrollo de este tipo deaplicaciones permita reducir costos de adquisicion, y fomentarel desarrollo de software enfocado a las necesidades del paısen las areas anteriormente mencionadas.

VI. CONCLUSIONES Y TRABAJO FUTURO

Utilizando la vision estereoscopica artificial, mediante undispositivo de realidad virtual como el HMD, es posiblepresentar ante un usuario un ambiente muy similar al real per-mitiendo recrear diferentes escenarios para una gran variedadde aplicaciones de interes en la ciencia y la ingenierıa.

La implementacion de un modulo para importar modelos enformato OBJ representa una gran ventaja, ya que permitira en-focar la aplicacion hacia diversas areas como la medicina o larobotica, permitiendo simular procesos o procedimientos queresultan costosos o riesgosos para los estudiantes o expertosde estas areas.

La manipulacion de los objetos mediante dispositivos deentrada (Joystick o Gamepad), permite en un futuro imple-mentar dispositivos propios del area hacia la que se enfoquela aplicacion.

En el proceso metodologico presentado en este trabajo,se desarrollo una aplicacion compuesta por una jerarquıa declases orientada a objetos. En un futuro se espera implementarun procedimiento que permita utilizar un sistema de gafasobturadoras en conjunto con el ambiente de inmersion V-CAVE.

REFERENCIAS

[1] S. Martın Gonzalez, S. Garcıa Cortes, J. Suarez Quiros, R. Rubio Garcıa,R. Gallego Santos, and S. Moran Fernanz, “Visage: Estereoscopio vir-tual aplicado a la geologıa,” XII Congreso Internacional de Energıa yRecursos Minerales, 2007.

[2] H. Rosas, W. Vargas, A. Ceron, D. Domınguez, and A. Cardenas, “Psy-chophysical approach to the measurement of depth perception in stereovision,” Lecture Notes in Computer Science, vol. Volume 4563/2007, pp.358–366, 2006.

[3] S. Martın Gonzalez, J. Suarez Quiros, R. Orea Area, R. Rubio Garcıa,and R. Gallego Santos, “Creacion de una librerıa utilizando open glpara el desarrollo de aplicaciones graficas utilizando sistemas de visionestereoscopica,” XVII Congreso Internacional de Ingenierıa Grafica.,2005.

[4] W. Barfield, Virtual Environments and Advanced Interface Design,W. Barfield, Ed. Oxford University Press, Incorporated, 1995.

[5] N. R. C. Staff, M. Anne S., and D. Nathaniel I., Virtual Reality : Scientificand Technological Challenges, N. A. Press, Ed. National AcademiesPress, 1994.

[6] A. Ceron, “Sistemas roboticos teleoperados,” Ciencia e IngenierıaNeogranadina, vol. 15, pp. 62–72, 2005.

[7] P. Chen, K. E. Barner, and K. V. Steiner, “A displacement driven real-time deformable model for haptic surgery simulation,” in Symposiumon Haptic Interfaces for Virtual Environment and Teleoperator Systems(HAPTICS’06), 2006.

[8] C. Quintero, W. J. Sarmiento, and E. L. Sierra-Ballen, “Low costcave simplified system,” in Proceedings of Human Computer InteractionInternational, Beijing, China, 2007.