Capítulo 3. Alternativa 1: Función de seguimiento

Texto completo

(1)

Capítulo 3. Alternativa 1:

Función de seguimiento

3.1 Introducción

En el presente capítulo se analiza la primera alternativa planteada con el objetivo de comprobar su fiabilidad y funcionalidad y ver cuáles son los aspectos que mejora respecto de la solución original.

Esta solución consiste en introducir dos nuevas funciones a la solución existente para que traten de aprovechar la información que se ha obtenido de la imagen analizada anteriormente. En el caso de que se haya detectado el patrón durante la fotografía anterior, se posee información sobre las esquinas de éste y se guarda para ayudar a la imagen siguiente. Es en este momento en el que se utiliza la nueva función de seguimiento, que aprovecha dicha información para detectar el patrón correctamente.

Después de utilizar la función de seguimiento, no es necesario realizar todo el proceso que se utilizaba en la solución original para comprobar si el patrón detectado había sido el correcto o no. Por eso se introduce otra nueva función que pretende acortar en gran medida el proceso de comprobación del patrón, una vez que ha pasado por la función de seguimiento.

Con estas nuevas funciones que se proponen para la alternativa 1, se busca la reducción del tiempo invertido en el procesamiento de las imágenes. Además del aprovechamiento de la información que se obtiene de las imágenes que se procesan para evitar el proceso completo de detección en las posteriores iteraciones.

(2)

3.2 Descripción del proceso de seguimiento

En el desarrollo de esta nueva solución, se utilizan las funciones expuestas en la solución existente, adaptándolas a la nueva alternativa. Además, se procede a la creación de dos funciones completamente nuevas: la función de seguimiento y su función correspondiente para la comprobación del patrón obtenido por la función de seguimiento.

3.2.1 Función de detección

Cuando el programa busca por primera vez el patrón o cuando lo busca justo después de una imagen en la que no se ha encontrado, se utilizan las funciones de la solución original, para encontrar el patrón con los cambios adecuados para este caso concreto.

Las fases que sigue el programa correspondientes a la búsqueda del patrón en las imágenes de la secuencia, son las mismas que las explicadas en el capítulo 2:

1. Captación de la imagen

2. Umbralización de la imagen captada. 3. Selección de patrones candidatos. 4. Verificación del patrón elegido.

5. Extracción de las esquinas del patrón. 6. Eliminación de la distorsión.

Una vez se ha obtenido un patrón válido, se almacena la información, sobre las esquinas del patrón detectado, en una matriz para utilizarla al procesar la imagen siguiente de la secuencia. Dicha fotografía ya no es procesada mediante la función de la solución original, sino que ahora pasa a la nueva función de seguimiento.

3.2.2 Función de seguimiento

Esta función se utiliza una vez se ha obtenido un patrón válido en la imagen procesada previamente. La fotografía anterior a la actual pudo ser procesada por la función original de la solución existente que se daría en el caso de que no hubieran datos disponibles de las esquinas del patrón. Por otro lado, también pudo ser procesada por la propia función de seguimiento si ya existían datos del patrón de la imagen.

En la figura 3.1 se muestra un esquema del programa desarrollado con la nueva función de seguimiento en el que se evalúa si en la imagen

(3)

procesada anteriormente a la actual se ha detectado el patrón o no para seguir un camino u otro. Como se puede observar, en el caso de que no se detecte, se elige la función original y si se detecta, se utiliza la función de seguimiento.

Figura 3.1. Diagrama de la alternativa 1: función de seguimiento

FUNCIÓN ORIGINAL

Detectar Patrón

¿ Patrón de la imagen

anterior detectado ?

FUNCIÓN de

SEGUIMIENTO

Captura Nueva Imagen

Resto del programa

NO

(4)

El proceso de detección del patrón en la nueva función de seguimiento tiene las siguientes fases, algunas de ellas muy similares o incluso iguales a la solución original:

1. Captación de la imagen: Al igual que ocurre en la versión original, se obtienen las imágenes mediante una cámara de tipo firewire.

2. Umbralización de la imagen captada: En este caso, la umbralización de las imágenes y el proceso de binarizado, se realiza de la misma manera que la explicada en el capítulo 2. Dependiendo del nivel de luminosidad general de la imagen, se consigue un valor del umbral para posteriormente binarizar la imagen.

3. Selección de patrones candidatos: Dentro de la imagen en blanco y negro obtenida previamente, se buscan todas las regiones susceptibles de ser el patrón correcto. Sólo los patrones que tengan en su interior seis huecos, serán considerados como válidos para pasar a la siguiente fase del proceso.

4. Verificación del patrón elegido: Se evalúan cada uno de estos candidatos, y gracias a las datos que se tienen de la imagen anterior, se determina si el patrón es correcto o no.

5. Extracción de las esquinas del patrón: Se pretende situar sobre la imagen la posición exacta de las esquinas del patrón. En este caso se obtiene la orientación comparando con la información que ya se tiene de la imagen previa.

6. Eliminación de la distorsión: Del mismo modo que se hace en la solución original, es necesario eliminar la distorsión introducida por la cámara. Para ello se hace uso de los parámetros de calibración que se han obtenido previamente.

En los siguientes apartados, se explica más detalladamente las nuevas tareas que realiza la función de seguimiento para encontrar el patrón. Se va a omitir la explicación referente a las funciones que son idénticas a las estudiadas en el capítulo 2.

3.2.2.1 Selección de patrones candidatos

Una vez se ha obtenido la imagen con la cámara y se ha realizado el proceso de binarizado “inverso” tal y como se explicaba en el apartado 2.2.2, se procede a la búsqueda de los contornos de la imagen.

(5)

Para el proceso de la búsqueda del patrón dentro de una imagen determinada, al igual que se hacía en la primera solución, se buscan cada uno de los contornos que tiene la imagen binarizada con la función de librería “cvFindContours”. Esta función devuelve una estructura jerárquica con los contornos que ha encontrado en la imagen.

Para esta solución sólo se consideran como válidos y, por lo tanto, patrones candidatos a ser el patrón correcto, aquellos contornos que a su vez contengan seis contornos o huecos en su interior. Después de seleccionar a estos de entre todos los contornos, se les hace pasar por la nueva función de verificación del patrón.

3.2.2.2 Verificación del patrón elegido

En este paso se evalúan todos los contornos que en la fase anterior han sido seleccionados como patrones candidatos por tener en su interior seis huecos. Para esta función sólo es necesario que el contorno elegido supere una prueba. De ser así, se considera como patrón válido. En cambio, de no conseguirlo, dicho contorno es descartado.

Esta fase incluye una importante novedad sobre el patrón analizado. En este caso se considera que el primer patrón con seis huecos en su interior que supere la prueba, se etiquetará directamente como válido y no se procesará ningún otro contorno. Este hecho puede provocar que se produzcan más errores a la hora de encontrar el patrón. Sin embargo, también hace que el número de iteraciones que tiene que realizar el programa sea mucho menor y por lo tanto, disminuya su tiempo de procesamiento. No obstante, durante las pruebas que se realizarán posteriormente sobre el software se evaluará este hecho para comprobar si es beneficioso o perjudicial.

La primera tarea que realiza la función es tomar el contorno a comprobar y mediante la función de la librería de OpenCV, “cvApproxPoly”, obtener únicamente cuatro puntos de éste contorno. Esto es debido a que la forma poligonal que le corresponde es la de un cuadrado. Una vez se obtiene la información de los cuatro puntos actuales, se procede a compararlos con los puntos correspondientes a las esquinas del patrón de la imagen procesada previamente.

Para esta prueba, se toma la posición relativa del patrón sobre la imagen como se muestra en la figura 3.2. Las coordenadas de la fotografía tienen su origen en la esquina superior izquierda, siendo el eje horizontal el correspondiente a la “coordenada X” y el eje vertical a la “coordenada Y”. La esquina superior izquierda corresponde con la coordenada XY (x=0,y=0). La esquina inferior derecha es la (x=640, y=480).

(6)

En la imagen se muestra el lugar donde se localizan los puntos de las esquinas con sus correspondientes coordenadas. Éstos puntos se almacenan en una matriz para compararlos con las esquinas del contorno candidato perteneciente a la siguiente imagen. El proceso de comparación entre ambas esquinas se realiza dentro de la función que verifica si el contorno susceptible a ser el patrón buscado es el correcto.

El proceso de comparación entre ambos puntos se realiza de la siguiente manera. Cada punto del contorno candidato de la imagen actual, se compara con los 4 puntos del patrón de la imagen anterior. El punto del contorno de la imagen actual más cercano a la esquina del patrón de la imagen anterior, es considerado el nuevo punto del patrón, y así para cada uno de los puntos. Si en alguno de los casos la distancia es superior a un límite establecido, no supera la prueba y se considera que el patrón no se ha encontrado.

En la figura 3.3 aparece una ilustración en la que se han señalado los puntos de las esquinas correspondientes a la imagen anterior (dibujados en

Figura 3.2. Patrón con esquinas y coordenadas indicadas.

Esquina SW

Coordenadas:

x=394 y=263

Esquina SE

Coordenadas:

x=372 y=321

Coordenadas:

EsquinaNE

x=430 y=343

EsquinaNW

Coordenadas:

(7)

color magenta) y los puntos pertenecientes a la esquina del contorno que se está evaluando como posible patrón (dibujados en color rojo).

Cuando se han localizado los mencionados conjuntos de puntos de las esquinas, se procede a la comparación entre ambos. Para ello, se establecen unos límites, que consisten en una determinada distancia medida en píxeles.

Para este caso concreto, se ha tomado como distancia máxima permitida 30 píxeles tanto para la “coordenada X” como para la “coordenada Y”. Este hecho hace que se tengan cuatro hipotéticos cuadrados de 60 píxeles de lado, que están centrados en cada una de las esquinas del patrón perteneciente a la imagen anterior, que delimitan la zona permitida. Esto se puede comprobar en la figura 3.4 en la que se han dibujado a modo de ejemplo los cuadrados que delimitan la zona donde pueden estar situadas las esquinas del contorno de la imagen actual.

Figura 3.3. Ejemplo de captura con las esquinas del patrón de la imagen anterior (magenta) y las esquinas del contorno de la imagen actual (rojo).

(8)

En el caso de que una o más de las esquinas del contorno que se está evaluando se encuentre fuera de la zona delimitada, se considera que en la imagen no se ha encontrado el patrón. Si por el contrario, todos los puntos están dentro de su correspondiente cuadrado, se considera como patrón válido y se pasa a la siguiente fase del programa.

Como se puede comprobar al ver la figura anterior, la elección de la distancia máxima permitida es crítica, ya que si se elige una muy pequeña puede ocurrir que se considere como no encontrados patrones que están presentes en la imagen. Por otra parte, si se toma un valor de la distancia muy grande puede que se encuentre el patrón pero que lo haga de manera errónea y que incluya, además, falsos positivos.

3.2.2.3 Extracción de las esquinas del patrón

Dentro del programa, la misma función que realiza la prueba para verificar que se ha encontrado el patrón correcto, identifica las esquinas del

Figura 3.4. Ejemplo de imagen ampliada con los límites centrados en las esquinas de la imagen anterior.

(9)

patrón. De hecho, una vez que se considera que el patrón es válido, ya se tienen las esquinas.

Para identificar y etiquetar cada una de las esquinas que corresponden a cada punto del contorno, no es necesario ningún otro tipo de comprobación adicional. Esto se debe a que al realizar la validación del contorno como patrón válido, cada punto debe estar localizado dentro de uno de los cuadrados como los mostrados en la figura 3.4. Dado que esos cuadrados están identificados gracias a la información que se tiene de la imagen anterior, se hace una relación directa entre ambos.

Los nombres que se van a utilizar con objetivo de definir su orientación, son los mismos que los realizados en el programa original, es decir:

Esquina superior derecha: Orientación Noreste “NE”. Se determina por ser la esquina más próxima al hueco interior “A”.

Esquina superior izquierda: Orientación Noroeste “NW”. Se diferencia por estar más próxima al cuadrado interior nombrado como “B”.

Esquina inferior derecha: Orientación Sudeste “SE”: Es el vértice más cercano al polígono “F”.

Esquina inferior izquierda: Orientación Suroeste “SW”: Es la esquina más cercana a “D”.

Después de superar estas fases, se procede a eliminar la distorsión de las imágenes y a realizar el dibujo del perímetro del patrón siguiendo el mismo procedimiento tratado en los puntos 2.2.6 y 2.2.7.

3.3 Resultados experimentales

3.3.1 Introducción a los experimentos

Con el objetivo de comprobar el comportamiento y la fiabilidad de la alternativa con la nueva función de seguimiento y la de comprobación del patrón que se ha desarrollado para este capítulo, se presentan una serie de experimentos.

Para su realización se ha tomado la misma simulación utilizada en el capítulo 2 en la que se emula una maniobra de aproximación y aterrizaje de un helicóptero, al igual que escenas en las que el patrón aparece y desaparece de la imagen súbitamente.

(10)

Conviene señalar que se utiliza la misma secuencia de imágenes tomadas por la cámara firewire, siendo un total de 1317 fotografías con una resolución de 640x480 píxeles.

Al igual que en los experimentos anteriores, se obtienen los resultados de cinco ejecuciones del programa. De esta manera, los datos son más fiables que los que se podrían obtener de una sola ejecución. En estos experimentos se tienen en consideración las mismas variables que las utilizadas previamente, para poder hacer una comparación relevante.

3.3.2 Experimentos

A continuación se exponen los resultados obtenidos con la ejecución del software de la nueva alternativa con la función de seguimiento. Posteriormente se procederá a su análisis.

3.3.2.1 Duración del procesamiento

En la tabla 3.1 se muestran los tiempos obtenidos en las diferentes ejecuciones del programa correspondientes a la primera alternativa planteada. Los valores tomados son siempre de imágenes en las que se ha encontrado el patrón correctamente, ya que las imágenes sin patrón no se tienen en consideración.

En la primera fila, se muestra el tiempo medio empleado en procesar una imagen en cada una de las ejecuciones. Por otro lado, en la segunda fila, se muestra el tiempo correspondiente a la imagen que ha invertido menor tiempo en procesarse, y además en ella, se ha encontrado el patrón. Se toma un valor para cada una de las ejecuciones efectuadas en los experimentos. Además, en la última columna de la tabla, aparecen los valores medios de sus correspondientes filas.

Tabla 3.1. Resultados del tiempo obtenido en cada una de las 5 ejecuciones del software de la alternativa 1

Ejecución 1 Ejecución 2 Ejecución 3 Ejecución 4 Ejecución 5 MEDIA Tmedio 4,46053 4,32142 4,32695 4,35709 4,32107 4,35741 Tmin 3,38123 3,56463 3,35057 3,55897 3,36125 3,44333

(11)

Como se puede comprobar en la tabla anterior, la imagen que menor tiempo ha tardado en su procesamiento ha necesitado 3,35 milisegundos. El tiempo que el software tarda de media en el procesamiento de cada una de las imágenes en las que se encuentra el patrón es de 4,35 milisegundos, rebajando en algunos milisegundos el tiempo que invierte la solución anterior.

3.3.2.2 Duración de cada fase

En este apartado se analiza el tiempo de ejecución que necesita el programa para cada uno de las fases de la detección del patrón. Para ello, se muestran los tiempos correspondientes a:

1. Tiempo de binarizado de la imagen (Umbralización) 2. Tiempo en encontrar los contornos

3. Tiempo en comprobar los contornos 4. Tiempo en eliminar la distorsión

5. Tiempo en dibujar el contorno del patrón

Además de dichos parámetros, también se valorará el tiempo total invertido por el software en realizar la detección del patrón, incluyendo la fase de dibujo, y el tiempo de procesamiento de otras funciones propias del software, así como el tiempo total que se ha utilizado para procesar la imagen completa.

En la tabla 3.2 y en la tabla 3.3 se puede observar detalladamente el tiempo que tarda una imagen en ser procesada por el programa y el tiempo que se invierte en cada una de las fases. Para hacer una mejor comparación entre los tiempos obtenidos, se indica su porcentaje. Por otra parte, conviene señalar que el tiempo se presenta medido en milisegundos.

(12)

El tiempo correspondiente a la variable Ttotal_imagen es un dato que

proporciona el programa y se refiere al tiempo total que emplea en procesar una imagen. A partir de este dato se obtienen el resto de porcentajes.

Sin embargo, la variable Ttotal_detección no se obtiene directamente de la

ejecución del programa, sino sumando las fases correspondientes a la detección del patrón más el tiempo empleado en dibujar el patrón sobre la imagen.

Tabla 3.2. Resultados del tiempo obtenido en las tres primeras fases del software de la alternativa 1

Tabla 3.3. Resultados del tiempo obtenido en las dos últimas fases y la media total de la alternativa 1.

Muestra 1 % Muestra 2 % Muestra 3 %

Tbinarizado (ms) 0,860655 24,62 0,877416 24,77 0,843753 18,50 Tencot_cont (ms) 2,253290 64,46 2,276900 64,28 3,312080 72,62 Tcomp_cont (ms) 0,033384 0,96 0,035480 1,00 0,034012 0,75 Tquitar_dist (ms) 0,036876 1,05 0,041626 1,18 0,071517 1,57 Tdibujar (ms) 0,176349 5,05 0,172228 4,86 0,156584 3,43 Ttotal_deteccion (ms) 3,360554 96,14 3,403650 96,09 4,417946 96,86 Totros_procesos (ms) 0,134866 3,86 0,138420 3,91 0,143104 3,14 Ttotal_imagen 3,495420 100,00 3,542070 100,00 4,561050 100,00

Muestra 4 % Muestra 5 % MEDIA %

Tbinarizado (ms) 0,840609 18,75 1,027160 23,30 0,889919 21,72 Tencot_cont (ms) 3,051020 68,06 2,933330 66,55 2,765324 67,48 Tcomp_cont (ms) 0,036947 0,82 0,033454 0,76 0,034655 0,85 Tquitar_dist (ms) 0,247168 5,51 0,078920 1,79 0,095221 2,32 Tdibujar (ms) 0,162101 3,62 0,183752 4,17 0,170203 4,15 Ttotal_deteccion (ms) 4,337845 96,76 4,256616 96,58 3,955322 96,52 Totros_procesos (ms) 0,145055 3,24 0,150924 3,42 0,142474 3,48 Ttotal_imagen 4,482900 100,00 4,407540 100,00 4,097796 100,00

(13)

Por último, el parámetro Totros_procesos se refiere al tiempo invertido en

realizar otros procesos ajenos al proceso de detección.

En la tabla 3.3 además se incluyen los datos correspondientes a las medias de los distintos valores de cada una de las muestras que se han tomado.

Dado el resultado mostrado en las tablas anteriores, se comprueba que las fases que más tiempo consumen siguen siendo por una parte, la fase destinada a encontrar los contornos, con un 67% aproximadamente y, por otra parte, la fase de binarizado de la imagen, cuyo porcentaje es del 21%. Estos porcentajes han subido respecto a la solución original. Esto es debido a que el tiempo total empleado ha disminuido mientras que estos valores han permanecido prácticamente constantes.

3.3.2.3 Patrones detectados

De las ejecuciones efectuadas para los experimentos, se comprueba, tal y como se planteaba en la primera hipótesis, que en lo referente a la detección del patrón, en todas las ejecuciones del programa, se obtiene un resultado idéntico.

La tabla 3.4 muestra un resumen de los patrones detectados por el software. De estos valores, cabe destacar que en seis de las imágenes utilizadas en los experimentos, se encuentra el patrón de manera errónea,

Tabla 3.4. Resultado de los patrones detectados en la alternativa 1 VALOR

Img, con patrón 732 Img, sin patrón 585 Total imágenes 1317 Patrón correcto 726 Patrón incorrecto 6 Patrón no encont, 26 Función original 585 Función seguimiento 732

(14)

ya que no lo dibuja correctamente sobre la imagen. Este resultado es idéntico y además se produce sobre las mismas imágenes que en la solución original. Normalmente este hecho ocurre cuando el patrón aparece parcialmente en la imagen.

Otro dato destacable de las tablas son las 26 instantáneas en las que no se ha detectado el patrón, aún apareciendo en la imagen. El dato ha aumentado respecto a la solución original que era únicamente de 19 casos. Este incremento de 7 fotografías sin detectar el patrón, es debido a la nueva función de seguimiento y la manera en la que ésta comprueba el patrón.

Por otra parte, es destacable que de las 1317 imágenes, 732 son procesadas mediante la nueva función frente a las 585 que se procesan de acuerdo a la función de la solución original. En relación a este dato, conviene señalar que una vez que el patrón no es encontrado en alguna imagen, para encontrarlo antes de volver a utilizar la función de seguimiento, se hace uso de la función original. En la tabla 3.4, se observa que el número de imágenes en las que no aparece el patrón, coincide con la cantidad de éstas que son procesadas por la función original. Este resultado es en parte fruto de la casualidad. No obstante, en cualquier otro experimento deberán tener unos valores muy similares.

3.4 Conclusiones

Tras completar los experimentos, se han obtenido buenos resultados a la hora de encontrar el patrón y en la detección de las esquinas de éste. De las 758 imágenes consideradas con patrón, se han detectado correctamente 726 imágenes (95,8%). Las imágenes erróneas corresponden a 6 instantáneas (0,79%). Finalmente, las fotografías en las que no se ha detectado el patrón, suman un total de 26 (3,43%).

Se concluye que el software tiene un buen comportamiento. Sin embargo, si se comparan estos datos con la solución original, se comprueba que los resultados han empeorado en lo concerniente a encontrar el patrón, ya que en ésta sólo eran 19 las imágenes en las que no era detectado el patrón.

Como se ha comentado anteriormente, la elección de la distancia máxima que se realizaba en el apartado de la verificación del patrón seleccionado (3.2.2.2), es crítica a la hora de validar los patrones de las imágenes. En la figura 3.4 se podía comprobar los límites impuestos para seleccionar si un patrón era considerado válido o no.

(15)

Para este proyecto la distancia máxima elegida entre esquinas de diferentes imágenes es de 30 píxeles. El hecho de tomar este valor es debido a que esta distancia es aproximadamente la mitad de la que hay entre dos esquinas del patrón (en los casos donde aparece el patrón más pequeño). Por tanto, no se va a dar solapamiento entre las esquinas.

No obstante, la toma de este valor no garantiza la correcta detección en imágenes donde el patrón aparezca de un tamaño notablemente mayor, o en imágenes en las que la diferencia entre la anterior y la actual sea muy grande (como consecuencia de un movimiento brusco del helicóptero). Dado este caso, los puntos de las esquinas pueden quedar fuera de los cuadrados que delimitan la zona válida para considerar al patrón como correcto.

No obstante, tras realizar varios experimentos en paralelo, se ha considerado el valor tomado como el idóneo ya que si se elige una distancia muy pequeña puede ocurrir que aumente el número de errores y que se consideren no encontrados patrones que están presente en la imagen. Por contra, si se toma un valor muy grande puede que se encuentre el patrón pero que se haga de manera errónea y que además se incluyan falsos positivos.

Respecto a los tiempos que invierte la alternativa 1 para procesar las imágenes, la comparación muestra que en este aspecto es levemente mejor que la solución original, ya que cuenta con tiempo mínimo de tan sólo 3,35 milisegundos y 4,35 milisegundos de media. Esto implica que se ha mejorado de media en cada imagen 0,30 milisegundos aproximadamente.

En los tiempos referentes a cada una de las fases se detecta que la mayor parte del tiempo se sigue dedicando a la detección de los contornos de la imagen. En realizar esta tarea tarda alrededor del 67% del tiempo total, unos 3 milisegundos. El tiempo invertido es prácticamente igual al de la solución planteada en el capítulo 2. Sin embargo, su porcentaje ha aumentado levemente. Este hecho es debido a que en las demás fases de la detección del patrón se ha disminuido el tiempo invertido, a excepción del proceso de binarizado que ha incrementado levemente su porcentaje.

La fase correspondiente a la umbralización y binarizado de la imagen también consume gran parte del tiempo en relación a las demás fases, alrededor del 21%, es decir, 0,9 milisegundos aproximadamente. A esta fase le ocurre lo mismo que a la de búsqueda de contornos. Su tiempo permanece constante, pero al disminuir el tiempo total, se incrementa su porcentaje.

El tiempo invertido en el resto de las fases en su conjunto, es en esta alternativa mucho menor, ni siquiera llega al 10% del total invertido en el proceso de detección.

(16)

3.4.1 Ventajas

Las ventajas que derivan de esta alternativa 1 donde se ha desarrollado la función de seguimiento y la función de comprobación del patrón, son:

 Tiempo de procesamiento muy bajo, incluso mejor que el obtenido en la solución original.

 Buena fiabilidad a la hora de encontrar el patrón.

 Se aprovechan los datos que se obtienen de la imagen procesada previamente, por lo que se evita la búsqueda de toda la información en la imagen actual.

 No es necesario realizar toda la fase de comprobación del patrón

como se hacía en la solución original.

3.4.2 Inconvenientes

Los inconvenientes que presenta el programa son:

 Al igual que en la solución original, depende de la luminosidad que tenga la imagen.

 Se dedica la mayor parte del tiempo a la búsqueda de los contornos, y no se consigue disminuir el tiempo que se invierte en esta fase.

 No se ha disminuido el tiempo invertido en la fase de binarizado, una de las fases que más tiempo consumen.

 Se ha empeorado levemente la detección de los patrones en las imágenes.

3.4.3 Conclusión final

En esta alternativa se ha planteado una función que permite almacenar información y utilizarla en las imágenes posteriores. Los beneficios obtenidos han sido una pequeña reducción del tiempo invertido en el procesamiento de las imágenes a costa de una peor fiabilidad en lo que a detección de patrones se refiere. No obstante, el error en el que incurre es leve.

Como ya se ha comentado, la parte crítica de esta alternativa es la selección de la distancia máxima utilizada en la verificación del patrón candidato. Dependiendo de la situación en la que se vaya a utilizar el

(17)

software se deberá considerar una distancia máxima diferente para obtener unos mejores resultados.

Figure

Actualización...

Referencias

Actualización...

Related subjects :