Está en la página 1de 18

CAPTULO 3 DESARROLLO DEL SISTEMA

Para el desarrollo del proyecto se realiz una etapa de fundamentacin terica basada en el rea de procesamiento digital de video para aplicar y abordar los diversos conceptos y desarrollar el protocolo y la implementacin de la herramienta sistemtica para cuantificar variables cinemticas del movimiento ocular. En un sistema de procesamiento de video, habitualmente las partes principales son: XXX XXX, XXX, XXX FIG. ETAPAS PROCESAMIENTO IMGENES (VIDEO)

Segn los requerimeintos encontrados en el captulo 2, la herramienta tiene dos procesos definidos: 1) estimacin resolucin de la imagen (mm/pixel), hecho al inicio de la toma con cada paciente, y 2) cuantificacin varibles cinemticas, donde el paciente sigue las indicaciones del protocolo (anexo)

Diagrama 1. Primera etapa de procesamiento.

Diagrama 2. Segunda etapa de procesamiento.

Imagen 1. Tipo de bloques utilizado en las etapas de procesamiento. (ANEXO)

En el desarrollo de la herramienta sistemtica se realizaron dos grandes etapas de procesamiento, las cuales a su vez tienen operaciones que garantizan el ptimo funcionamiento de esta, por eso, es necesario explicar en qu consiste cada una. 1. Protocolo dummies

Imagen 2. Usuario ubicado en el teln de color negro. Antes de comenzar con la explicacin de las etapas de procesamiento, se debe tener en cuenta la ubicacin del paciente para una toma exitosa. En la Imagen 2 se muestra cmo el usuario debe ubicarse en la mitad de un teln negro, que permite tener una iluminacin con poco brillo y evita malas detecciones por fondos externos asimtricos y con mucha carga de color.

Imagen 3. Usuario haciendo uso de la herramienta sistemtica.

Cuando el usuario se ubica con el teln negro de fondo, se procede a tener en cuenta el protocolo de muestra (anexo) el cual le indica a la persona como debe sentarse para dos tipos de computares: un computador porttil y un computador de escritorio. Este protocolo tambin establece la distancia que deben mantener el computador y el usuario; se indica cmo hacerlo por medio de dummies. Primera etapa de procesamiento Como se muestra en el Diagrama 1, el primer paso para iniciar con la toma de muestras es el ingreso de los datos por parte por parte del especialista o la persona que este manejando la herramienta. Cada ejecucin de la herramienta genera resultados diferentes para cada paciente, por lo tanto al ser mostrados cada uno de ellos se puede diferenciar, creando una base de datos sencilla. Debido a que cada ejecucin de la herramienta es diferente para cada uno y al ser mostrados los resultados se pueden diferenciar entre ellos, creando la base de datos (ver Imagen 4).

Imagen 4. Interfaz de datos del usuario.

Luego de ser ingresados los datos, se debe adquirir una imagen del usuario como se muestra en la Imagen 5 para realizar posteriormente la calibracin morfomtrica de los datos que arroja la herramienta; esta imagen (foto) se toma por medio de un computador MAC, el cual tiene una cmara full HD, con alta velocidad entre adquisicin de cada frame y con un excelente resolucin (esto garantiza que la calibracin se realice con alto ndice de precisin). La cmara permite obtener la imagen en un modelo RGB; este modelo representa la imagen por tres planos independientes, uno por cada color primario (R: rojo, G: verde, B: azul). La mezcla, en proporcin adecuada, de estos colores primarios, permite obtener una reproduccin de toda la gama de colores.

Imagen 5. Paciente tomando la foto para hacer la respectiva calibracin.

Primera operacin: Pre-procesamiento de la imagen. o Al obtener la foto o imagen del usuario (ver Imagen 5), esta es guardada con el apellido del paciente para ser usada en la presentacin de los datos en formato EXCEL. o La imagen que se guarda es tomada con formato RGB lo que es necesario obtener su equivalente en escala de grises para la correcta calibracin como se muestra en la Imagen 6. Este modelo de escala de grises se diferencia dado que cada color se representa de acuerdo a su intensidad luminosa, es decir, cada pixel asocia un nivel de gris a una intensidad de luz, este tiene un valor de brillo que va del 0% (negro) al 100% (blanco). El nmero mximo de grises que se pueden generar es de 256.

Imagen 6. Imagen del usuario en escala de grises. Segunda operacin, calibracin de la herramienta. o La calibracin se debe realizar cada vez que se ingrese un nuevo usuario, debido a que todas las personas tienen diferencias antropomtricas y varan entre s. o La calibracin de una imagen consiste, a partir de mtodos indirectos, en conocer o reconstruir las condiciones en las que se ha llevado a cabo la digitalizacin de la misma, para poder equiparar las mediciones realizadas en la imagen a las realizadas sobre el objeto real. [1 o El tipo de calibracin que se va a realizar es de tipo espacial o morfometrica. Este tipo de calibracin conlleva establecer la relacin que existe entre un pixel de la imagen y las dimensiones reales en la imagen que se obtiene. Como es difcil conocer para cada sistema de toma de la imagen (digitalizacin) la funcin caracterstica, por tal motivo se utilizan mtodos indirectos basados en establecer la relacin entre el numero de pixeles y la longitud, en unidades fsicas, de un

objeto sobre la imagen digital y cuyas dimensiones en la imagen real son perfectamente conocidas. o Para realizar una correcta calibracin de la herramienta, la imagen que se ha tomado debe incluir una regla que puede usarse para determinar la cantidad de pixeles que hay en 10 milmetros (mm). Determinando as la resolucin:

Para conocer el nmero de pixeles, es necesario tener la imagen en escala de grises; logrado esto, determinar el rea de inters, es decir, el rea que abarca el centmetro en la imagen (ver Imagen 7).

Imagen 7. Calculo de pixeles que abarcan el rea de inters (10 milmetros = 1 centmetro). El rea de inters es el recuadro demarcado en la Imagen 7 se obtiene por el comando getpoint para calcular la base de dicho recuadro que es quien da la informacin de la cantidad de pixeles. Esta informacin se extrae por medio de una ligera modificacin de la ecuacin de la recta: ( )

Sabiendo que la informacin importante es la horizontal de la base y adems que la lnea no posea una pendiente, se procede a sustituir:

Con base a lo anterior se puede reemplazar en la ecuacin del clculo de la resolucin: ( )

Tercera operacin, almacenamiento y muestra al operario de la herramienta de la resolucin. o Con el clculo de la resolucin, esta se almacena para el usuario y es necesaria para la siguiente etapa de procesamiento, ya que algunos resultados deben adecuarse con base a la resolucin calculada.

Segunda etapa de procesamiento En esta etapa se ingresan dos entradas automticas provenientes de la primera etapa, las cuales son: la variable resolucin de la imagen y la adquisicin del video por medio de un cmara full HD, de alta velocidad y de buena resolucin, est ubicada en el MAC. Primera operacin, Pre procesamiento del video. o Se mojara la calidad del video para tener confiabilidad en las operaciones siguientes. o Se define el formato en el que se van a obtener los frames del video; para este caso, los frames se van a obtener con el modelo RGB y la cmara a usar se configura para obtener una imagen MJPG de 1024x768 pixeles (est definido por defecto). o Se realiza la inicializacin de las variables que se van a usar para la toma de datos de cada usuario. Segunda operacin, Deteccin de Rostro. o Se define una zona del rostro del usuario que es necesaria para la toma de datos; la zona de estudio es el rea de los ojos, por lo cual la herramienta debe realizar la deteccin del rostro del usuario y a su vez detectar la zona de estudio (rea de los ojos). o Esta deteccin de rostro se realiza por medio de un Tracking de Piel. o Comenzamos inicializando una variable que se denomina vpiel con un valor de 1. Con la extraccin de la capa R (roja) de la imagen se procede a convertirla a escala de grises. Con la capa ya convertida en escala de grises, se pasa a travs de un filtro de mediana, que es menos sensible a valores muy desviados y modifica menos los valores originales, que sirve para atenuar y eliminar el ruido conservando los bordes de la imagen en escala de grises. Con el resultado del filtrado, se debe realizar un ajuste en los valores de intensidad de la imagen y esta se satura al 1% de los datos con mayor o menor intensidad, para as aumentar el contraste de la imagen. o Se procede a realizar el clculo del umbral global para la conversin de la imagen en binario y as normalizar los datos (tener en cuenta que

este umbral global puede ser variable para ajustar el rea de los ojos que es el objetivo de estudio de la herramienta). Este umbral se calcula por medio de la funcin de MATLAB graythresh y se guarda en una variable denominada level, que despus ser multiplicada por el valor que almacena la variable que anteriormente se inicializo (variable vpiel), sobrescribiendo as la variable level. Si este umbral calculado es mayor a 1, se debe llevar a 1 de nuevo para asegurar que los datos estn normalizados. Estas operaciones se realizan con el resultado de la imagen que se pasa por el filtro de mediana. o Ya con la imagen procesada (imagen binaria), se procede a rellenar los llamados Huecos de la imagen en binario. Se crea una matriz del tamao de la matriz donde se rellenaron los huecos para calcular los componentes de conexin a 8. Con esto se busca el rea donde se encuentre los valores ms cercanos a cero ya que es ah donde se encuentra la piel, debido a que la piel se asemeja ms al color rojo. o La piel que es detectada, es enmarcada por un cuadro rojo en la imagen que se toma en tiempo real, indicando que es el rostro del usuario.

Imagen 8: En el recuadro Rojo se puede determinar el rostro del usuario; en el recuadro verde se puede estimar el rea de estudio correspondiente al rea de los ojos. Se logr el reconocimiento haciendo uso de la tcnica de Tracking Facial. o Con todo el clculo del tracking de piel, se crea una funcin denominada detecrostro, esta tiene como entrada el frame que se toma del video y umbral de piel que se predefine en un valor, pero este puede ser modificado durante la ejecucin de la funcin creada segn la tonalidad de piel del usuario. Tercera operacin, Recorte zona de Inters. o En esta operacin se acondiciona la zona del tracking para poder realizar un recorte de los ojos donde encierre correctamente los

mismos; este acondicionamiento se realiza por medio de dos entradas manuales que el usuario las puede acomodar fcilmente, son dos slider (ver Imagen 9).

Imagen 9: Slider de acondicionamiento de la zona de recorte del rea de los ojos. Primer slider, rea de ojos.

El slider de rea de ojos se logra por la estimacin de las proporciones antropomtricas de la cara, usando la variable bb=[x y w h] de la funcin detecrostro.

w Imagen 10. a) Proporciones antropomtricas dividido en tercios en cuanto a alto y ancho; b) Proporciones antropomtricas de la cara dividida en quintos en cuanto al ancho.

En donde: h=altura w=ancho

x=coordenada x y=coordenada y Para la deteccin de ojos en la herramienta desarrollada se us las proporciones antropomtricas de la cara. Para ello usamos dos medidas importantes, las cuales se pueden ver en la Imagen 10. Con respecto a la proporcin antropomtrica medida en tercios: w=(2/3)*t; Donde t es el total de la medida del cuadro antropomtrico. Si conocemos el valor del ancho w entonces: t=(3/2)*w; Conociendo el total con respecto al ancho, es posible conocer la altura h con respecto al ancho w tambin as: h=(3/3)*t reemplazando el valor de t tenemos que: h=(3/2)*w Las coordenadas x y y nos sirven para ubicar el cuadro de deteccin de rostro, pero para ubicar los ojos debemos recortarlo de acuerdo a las proporciones antropomtricas que nos indica la Imagen 10, para as solamente detectar la regin de inters. Para ello se calcula un nuevo ancho wn, un nuevo alto hn, y unas coordenadas xn y yn nuevas. Usando la Imagen10-b, los ojos se encuentran entre el primer quinto y el cuarto quinto de w, entonces: wn=(3/5)*w Para ubicar mejor la regin de inters se dibuja una caja imaginaria del globo ocular que mide un quinto del ancho w: hn=(1/5)*w Para hallar la coordenada xn usando la Imagen10-b, debemos aumentarle un quinto del ancho a la coordenada x original. Para hallar la coordenada yn usando la Imagen 10b (la cual divide la altura h original en cuartos) es necesario descartar el primer cuarto, ya que all se encuentra la regin del cabello del paciente, la cual no es detectada con la herramienta desarrollada. Entonces, de acuerdo a esto, solo tomaremos los tercios en los cuales est dividida la cara desde la lnea del cabello hasta la barbilla, donde podemos observar que los ojos se encuentran en el primer

tercio de esta divisin. Por lo tanto, debemos aumentarle este tercio a la coordenada y original. xn= x+(1/5)*w yn= y+(1/3)*h Segundo slider, Umbral de piel.

La deteccin del rostro se debe realizar sin depender de la tonalidad de piel del usuario, por lo que es necesario hacer ajustes por medio de un slider. La funcin del slider es generar una imagen umbralizada diferente para cada una de las tonalidades de piel, la cual se genera dado a un valor de umbral (este umbral se determina del valor del slider multiplicado por una ganancia) que es comparado pixel por pixel de la imagen original, determinando que si el valor del pixel es mayor que el umbral el pixel en la imagen umbralizada toma un valor que para este caso es 1 (Blanco); en caso contrario, cuando el valor del pixel de la imagen original es menor que el umbral, el pixel de la imagen umbralizada toma un valor de 0 (negro). o Luego de definir la zona de estudio (el rea de los ojos), la herramienta procede a realizar el recorte de esta zona con el comando imcrop y la almacena para su posterior estudio. Cuarta operacin, Imagen a Escala de Grises. o Con el rea de los ojos ya definido, es almacenada con un modelo RGB y es necesario tener esta imagen en una escala de grises para poder determinar los bordes que la componen. Quinta operacin, Filtro derivativo. o Se realiza filtro derivativo para detectar los bordes de la zona de inters, por medio del gradiente de la imagen f(x,y).

Imagen 11. Frmulas para los gradientes de los operadores.

Las diferentes formas de aproximar la magnitud del gradiente dan origen a diferentes operadores que llevan el nombre se de sus autores, Operador Roberts, Operador Prewitt y Operador Sobel. [2

Se escoge el Operador Prewitt por su buena respuesta en bordes horizontales y verticales, es poco sensible a ruido y proporciona la magnitud y direccin del borde. [3

Imagen 12. Gradiente Operador Prewitt. A continuacin se muestra en la imagen la herramienta sistemtica funcionando y mostrando la deteccin de bordes por medio del operador Prewitt (ver Imagen 13).

Imagen 13. Deteccin de bordes de la zona de inters (rea de los ojos) usando el operador Prewitt. Sexta operacin, Detector de crculos usando transformada de Hough. o La transformada de Hough es una herramienta que permite detectar curvas en una imagen. Es una tcnica muy robusta frente al ruido y a la existencia de huecos en la frontera del objeto. A la hora de aplicar la transformada de Hough a una imagen es necesario obtener primero una imagen binaria de los pxeles que forman parte de la frontera del objeto [4. o La idea es encontrar curvas parametrizables como crculos y polgonos. En teora se pueden encontrar formas ms complejas pero el costo computacional crece rpidamente. o Lo que permite esta operacin es determinar la posicin del iris y de la pupila de los ojos del paciente. Este reconocimiento de iris y pupila se hace sabiendo que estas presentan forma circular; con base a esto se realiza el clculo de la transformada de Hough. o El primer paso para realizar la transformada de Hough es tener la zona de inters con los bordes de la imagen; con esta informacin, se debe conocer que para el clculo de esta transformada es necesaria la ecuacin del crculo, la cual involucra tres parmetros: dos para el centro del crculo y uno para el radio. El calculo que se realiza para la

transformada, toma una imagen en 2D binaria (detectando los bordes) y el radio del circulo; el siguiente paso es evaluar la ecuacin del circulo para cada punto de la imagen, si se cumple esta ecuacin se incrementa en uno el nmero de votos de la celda. Un nmero de votos elevado indica que el punto pertenece al crculo. o El clculo de la transformada permite determinar las posiciones de los puntos con mayor votacin indicando que son pertenecientes a un crculo (ver Imagen 14).

Imagen 14. Los crculos de color violeta, indican los crculos que corresponden al iris del ojo; los recuadros de color rojo y azul indican las pupilas de los ojos del usuario. Sptima Operacin, Toma de Datos. o En la toma de datos, el usuario debe realizar cuatro posiciones las cuales son: Lateral, Nasal, Superior e Inferior. o En cada una de las posiciones, la herramienta realizar el clculo de la transformada de Hough, determinando la posicin de la pupila de los ojos del usuario; estas posiciones son almacenadas en las variables que se inicializaron en las etapas anteriores. o Con cada una de las posiciones se obtendrn las grficas que corresponden a las variables cinemticas (movimiento, aceleracin y velocidad). Estas son calculadas en tiempo real (ver Imagen 15).

Imagen 15: Graficas que demuestran la grafica de posicin ocular en tiempo real o Las posiciones que el usuario debe optar son: LATERAL

Imagen 16. Posicin lateral del paciente. NASAL

Imagen 17. Posicin nasal del paciente.

SUPERIOR

Imagen 18. Posicin superior del paciente. INFERIOR

Imagen 19. Posicin inferior del paciente. Octava Operacin, Generacin de un archivo de EXCEL que incluya los datos obtenidos de la herramienta y los datos del usuario con foto de identificacin.

o Cuando se finalice la toma de datos del usuario, la herramienta permite generar un archivo de EXCEL con un resumen de sus datos personales, datos generados por la herramienta, resolucin y la foto de calibracin del usuario. o MATLAB cuenta con un comando especial que permite la generacin del archivo de EXCEL, permitiendo interactuar con las hojas del archivo, asignar nombre al archivo y ubicar la celda en la que estarn ubicados los datos. Este comando especial es xlswrite. o Al usar este comando, se debe tener definido: El nombre del archivo, que para este caso se generara un archivo para cada usuario de la herramienta correspondiente a sus apellidos. La extensin con la que se crea el archivo es .XLS (creacin por defecto). Los datos que se van a copiar al archivo de EXCEL, estos datos deben estar agrupados en matrices de M x N las cuales pueden ser matrices numricas o matrices con caracteres, o en algunos casos una celda si contiene un nico elemento. Nombre de la hoja de datos que se va a escribir, esta hoja puede ser creada con una cadena o con valores numricos. Para este caso se uso una cadena indicando la cantidad de ensayos que se ha realizado. Este comando especial permite crear una nueva hoja cuando el nombre no exista dentro de las hojas predeterminadas, agregndola al final del libro de clculos. Cadenas que indica en que celda o en que posicin rectangular de la hoja creada va a ubicar los datos que se van a copiar. En la herramienta se especifica la celda (ejemplo A1, C1, D1, etc.) en donde sern ubicados los datos generados, por lo que MATLAB conociendo el tamao de la matriz de datos, genera la porcin a ser usada en la hoja de clculo especificada. o Con el anterior comando solo se almacena los datos del usuario, por lo que es necesario el uso de otro comando especial de MATLAB para copiar la foto de calibracin del usuario en el archivo de EXCEL. o Este comando especial de MATLAB es Pic2xls, el cual permite ubicar una imagen cargada desde la carpeta contenedora, definir el archivo de EXCEL destino de la imagen, indicar a continuacin la hoja en donde se ubicara la foto cargada, y un parmetro. o Este parmetro hace referencia a la posicin en la hoja de EXCEL (fila columna), y adems su tamao en pixeles (tamaox tamaoy). Es decir, parmetro contiene: Parmetro: [fila columna tamaox tamaoy]

[1 Calibracin: Conceptos Basicos, Dr. Llus Sol Sugraes, consultado el 11 de Enero de 2014, disponible en la web: http://www.dimages.es/Tutorial%20A.I/calibra/calibra_1.htm [3 Deteccion de bordes, Vision artificial 13/03/2012, Autor: Manuel Curras Martinez y Lola Traba Martinez. [2 Clase No 5, Promediado de imgenes, Asignatura: Bioinstrumentacion 3, profesor: Paulo Cesar Calvo. [4 Segmentacin, Transformada de Hough. Departamento de ingeniera Electronica, Area de Ingenieria de Sistemas y Automatica, Universidad de Jan. Consultado el 21 de Enero de 2014. Disponible en la web: http://www4.ujaen.es/~satorres/practicas/practica4_vc.pdf.

También podría gustarte