cenidet victor angel... · la principal aportación derivada de este trabajo de tesis es la...

110
SEP SEIT DGIT 7 CENTRO NACIONAL DE INVESTIGACI~N Y DESARROLLO TECNOLÓGICO CENIDET ,. “INTERPRETACI~N DE DIBUJOS GEOMÉTRICOS UTILIZANDO VISION POR COMPUTADORA” T *E S I S QUE PARA OBTENER EL GRADO DE: M A E S T R O EN C I ENCIAS C O M P UTACIONALES P R E S E N T A: VÍCTOR ANGEL GARCÍA CARRIZAL CUERNAVACA, MORELOS SEPTIEMBRE DE 1997 s@[’ SISTEMA NACIONAL DE INSTITUTOS TECNOLOGICOS Centro Nacional de Investigacion y Desarrollo Tecnológico Cuemavaca Mur., a 22 de agosto de 1997 Ing. Victor Angel Garcia Canizal Candidato al grado de Maestro en Ciencias en Ciencias Compiitacionales

Upload: others

Post on 15-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

SEP SEIT DGIT 7

CENTRO NACIONAL DE INVESTIGACI~N Y DESARROLLO TECNOLÓGICO

CENIDET ,.

“INTERPRETACI~N DE DIBUJOS GEOMÉTRICOS UTILIZANDO VISION POR COMPUTADORA”

T * E S I S QUE PARA OBTENER EL GRADO DE: M A E S T R O E N C I E N C I A S C O M P U T A C I O N A L E S P R E S E N T A : VÍCTOR ANGEL GARCÍA CARRIZAL

CUERNAVACA, MORELOS SEPTIEMBRE DE 1997

s@[’ SISTEMA NACIONAL DE INSTITUTOS TECNOLOGICOS

Centro Nacional de Investigacion y Desarrollo Tecnológico

Cuemavaca Mur., a 22 de agosto de 1997

Ing. Victor Angel Garcia Canizal Candidato al grado de Maestro en Ciencias en Ciencias Compiitacionales

Page 2: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

agradecimientos

Page 3: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

Agradecimientos

Gracias al Sr. Amador Pérez Ayala por la confianza depositada en mi al inicio de este proyecto de estudios al quedar como aval ante el IIE para la autorización de mi beca-crédito.

Gracias a los maestros de CENIDET, en especial a José Torres, José Luis Ramírez, Rafael Morales y Luis Alberto Pineda, porque aprendí bastante de sus cátedras.

Gracias a Luis Alberto Pineda, Luis Enrique Sucar, José Torres, Manuel Mejía y Raúl Pinto por sus valiosas sugerencias para la redacción de este documento. En especial agradezco al Or. Pineda, al Dr. Sucar y al M.C. Raúl Pinto por asesorar este tema de tesis y por la profundidad con la que revisaron este documento. Agradezco al M.C. Raúl Pinto por la sugerencia para atacar el problema de la detección de líneas.

Gracias a todo el personal del CENIOET que de alguna forma está contribuyendo a elevar la calidad de esta institución.

Gracias al CENIDET por el apoyo económico e institucional para llevar a feliz término este trabajo de tesis.

Gracias al IIE por el apoyo económico brindado para llevar a cabo este programa de estudios. En especial agradezco la valiosa colaboración del M.A. lsmael González Reyes y el apoyo del Dr. Guillermo Rodriguez Ortíz.

Gracias al CONACYTpor el apoyo económico en el periodo 1989- 1990 para el desarrollo de un programa de maestría en el CINVESTAV, el cual no culminé con el grado.

Page 4: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de
Page 5: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

RESUMEN El objetivo de este trabajo de tesis es lograr la interpretación de dibujos que contienen las

proyecciones ortogonales de un poliedro. Para lograr el objetivo el proceso se dividió en cinco etapas:

1 ., Eliminación de Ruido. 2.1 Segmentación' de Texto. 3. , Segmentación de Ejes de Proyección. 4.i Detección'y Adelgazamiento de Líneas. 5:! Detección de Polígonos.

Para ejecutar cada una de las etapas se requiere de interacción por parte del usuario. En seguida se presenta una descripción general del proceso de interpretación.

El dibujo entra al proceso como una imagen digitalizada. Durante la digitalización del dibujo se generan puntos aislados de ruido que son eliminados en la primera etapa. Otro problema generado durante la digitalización del dibujo es el engrosamiento de líneas. El problema se resuelve aplicando una técnica de adelgazamiento. A continuación se procede a la segmentación del texto y ejes de proyección contenidos en la imagen. Las imágenes del texto y ejes de proyección segmentados se guardan de tal manera que puedan ser utilizadas en una etapa postenor. Por ejemplo, la imagen de los ejes se utilizí'como referencia en la clasificación de polígonos. La etapa 4 consiste en aplicar la transformada de Hough2 a. la imagen con el fin de realizar la detección de líneas. La base de la técnica es la transformación de la imagen de un plano cartesiano a un plano paramétrico. Finalmente, a las líneas detectadas se les aplica una técnica para poder extraer los polígonos contenidos en el dibujo. Una vez detectados los polígonos se clasifican por la vista ortogonal a la que pertenecen.

La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de la interpretación automática de dibujos. Otras aportaciones son las siguientes: + Implementación de una técnica para adelgazamiento de líneas, basada en los resultados

arrojados por la transformada de Hough. + Implementación de una técnica para detección y clasificación de los polígonos

contenidos en el dibujo. + Aplicación práctica de este trabajo a la interpretación automática de dibujos.

I

Page 6: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CONTENIDO

I

CONTENIDO ..... <... . . ..... <..............

.. <................. ....... Tablas y Listados . . , . . . , . . . . . . . . . , . . . . . . . ,. . . . . . . . . . . . . . . . .

Capítulo 1.

I

Capítulo 2.

Capítulo 3.

Capítulo 4.

.... <...<......<.<...... ..... ...... . . .<_._._......<..... . .........

1.2 Objetivo, Beneficios y Aportaciones ._._. .... .. 1.2.1 Objetivo ................... ......... <.... . .. <.......

............. <.<......<.... ....

1.3.2 Contexto de la Tesis . . . . . . . , . . . . . . . . . . . . . . . . . . . . . . . . .

1.4.1 Entrada al Sistema ._........ 1.4.2 Salida del Sistema ..... . . , . . . , . , . . . . . . . . . . .

1.5 Contenido de la Tesis ........ ...__.. <........<... ..

Interpretación de Dibujos .._._,.._....... 2.1 Introducción ........................

El problema de la In 2.1.1 Antecedentes y Motivación ..__........ . . . . . . . . . . . . . . . . . . . . . . 2.1.2

2.2 Estado del Arte 2.3 Comentanos Fina

Preprocesamiento de la Imrgen

. , . . . . . . . . . . . . . , . . . . . , . . , . . , . . . . . . . . . . .

. . . . , . , , . . . . . , , . . . . . . . . , , . . . . . . . . . . . 3.1 Introducción .._..,.,........._..

3.2 Técnicas de Mejoramient 3.2.1 Técnicas en el D 3.2.2

Descripción del Algoritmo Propuesto _,.. .. ._,.

Técnicas en el Dominio.Espacia1 .......... . , . , , . . . . . . . . . . . 3.3 Eliminación de Ruido.. ._. . .......... <....<....... . 3.4 3.5 Resultados. 3.6 Comentano

. . . . . . . . . . . . . . . , . . . . . , , . . . . . . . . . . . . . . . . . . . . . . . . . . ..... <<...... ... . . . . . . . . . . . . . . . . . .

Segmentación de Ir Image 4.1 Introducción ........... ... .... 4.2 Segmentación

4.2.2 Atributos d 4.2.3 Descn

. . . . . . . . . . . . . . . . . . . . . . . . . . <....<..... .. . ._._.<<._._<.

. . . . . . . . . . . . '4.3 Segmentación de

1 2 3 3 3 3 4 4 4 5 5 5 1 8

10 11 11 11 12 18

19 20 20 20 21 25 21 28 29

31 32 33 33 33 35 36

Page 7: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CONTENIDO

., 4.3.1 Introduccion.. , _. , . . . . , . . . . __. .... . . . . . . . . . . . , , , . , . . . . . . . . . . . . .. . .. . . . . . . . . . . . , 4.3.2 Estrategia para Segmentación de Ejes de Proyección.. . ._ 4.3.3 Descripción del Algoritmo Propuesto ..............................

4.4 Resultados .................................................................................. 4.5 Comentarios Finales.. .. .._._._......._. .._. ..., .,., .._. .._. .__. .______._.___. ._._.....

Capítulo 5. Detección y Adelgazamiento de Líneas 5.1 5.2 Transformada de Hough 5.3 Matriz de Acumuladore 5.4 Tipos de Líneas ........................................................................... 5.5 Adelgazamiento de Lín

,, 5.6 Descripción del Algoritmo Propuesto ........................................... 5.7 Resultados I_._._._._._..,. 518

. . . . . . . . . . Introducción . . . . . . . . . . . , . , , , . , . , . . . . . . . , . , . , . , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. , , . . , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

'I

. . . . . . . . . . . . . . . . Comentarios Finales.. .. .. .._._._. .. .. .. ., . . . . . . . . . . . . . . . . . . . . . , .

Capítulo 6. Detección de Polígo 6.1 Introducción. 6.2 Detección de 6.3 6.4 6.5 Resultados. 6.6 Comentario

. . . . . . . . . . . . . ., Clasificacion de Poligonos ..._... .... .... ...... .. ......... .. ._.. ._. ._._._. ._._._,.,.

Descripción del Algoritmo Propuesto .......................................... '_.. . . . . . . . . . . . . . . . . . . . ,

. . . . . . . . . . . . . . . .

Capítulo 7. Pruebas y Resultados ._..._._._...,....... 7.1 Casos de Prueba

. . . . . . . . . . . . . . . . . . . . . . , . , . , . , . . . . , .

7.1.1 Caso de Prueba 1 .......................................... 7.1.2 Caso de Prueba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.1.3 Caso de Prueba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.2 Tiempos de Respuesta.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Plataforma de Desarroll . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4 Comentarios Finales .................................................................

Capítulo 8. Conclusiones y Trabajos Futuros ........................................................ 8.1 Conclusiones _._.._..._,.. 8.2 Trabajos Futuros ................................... ;..........

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Referencias.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Apéndice ._ .___. __. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

36 37 38 39 41

43 44 44 49 50 52 55 57 58

60 61 61 63 64 69 71

72 73 73 79 84 89 93 93

95 96 97

98 101

Page 8: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

LISTA DE FIGURAS

LISTA DE FIGURAS

No. de Figura Descripción Página 1 i

1.1 1.2 1.3 1.4 1.5 1.6 2.1 3 .1 3.2 3.3 3.4 3.5

3.6 3.1 3.8 3.9

4.1 4.2

4.3 4.4 4.5 4.6 4.1 4.8 5 . 1 5.2 5.3

5.4 5.5 5.6 5 . 1 5.8 5.9 5.10 6.1 6.2 6.3

Niveles básicos de un sistema de visión por computadora Contexto de la tesis .............................................................. Ejemplo de un dibujo aceptado por el sistema Representación digitalizada de’un dibujo ......... Ejemplo de una imagen de entrada al sistema ............................. Recomdo del dibujo por las diferentes etapas Etapas en la interpretación automática de un dibujo de ingeniería .......................... Funcionamiento de un sistema lineal ..... Máscara de 3x3 alrededor de un punto (x,y) de una imagen ...................... Mascara de 3x3 con pesos arbitrarios ................................................................... Ejemplos de filtros paso bajo y paso alto .............................................................. Representación del ruido asociado a una imagen así como la ventana utilizada

Im’agen real de un dibujo con el ruido generado por el digitalizador _..._.._....,..,.,.,. Imagen real después de aplicar la eliminación de ruido Interferencia de líneas punteadas en la eliminación de rui a) Imagen ruidosa. b) Imagen después del proceso de el¡

para su eliminación . . . , . , . . . . . , . . , . . . . . , . . . . . , . , . . . . . , . . , , , . . . . . . . . , . , . . . . , . . . , . , , . , .

. . . . , . . . , . . . . . . . . . , . . . , , . n de texto .._..._._...,_..

Ejemplo de compresión de ventana y cantidad de pixeles que conforman un caracter ......................................................................................................... .. Interferencia de líneas punteadas en la segmentación de ejes de proyección .......... Imagen real de entrada al proces Imagen después de aplicar la etap Imagen del texto segmentado ... .. .. . Imagen después deaplicar la etapa Imagen de los ejes de proyección Transformación del plano cartes¡ División del espacio paramétrico _._._._._. .. .. ._. .._. .._. ._. .. .. .. Representación de parámetros y di la forma normal de la recta ....._._...._... . . . . . . . . . . . . Ejemplo de la transformada de Tipos de líneas detectadas con la transformada de Hough Representación de una “línea Representación de una línea engrosada en el plano cartesiano y paramétrico ........ Representación de una línea después de su adelgazamiento.. .. ._. .. .. . .. .. . .. ._. .. ._. . . .. ._. Adelgazamiento de una línea engrosada. ._._. ._.. ._._. .. .. . .. .. .. . .. .. ... .. .. ... ..... ... .............. Ejemplo real del proceso de adelgazamiento de líneas ..... Desplegado de las líneas detectadas _... .. .... Ejemplo de división de líneas Clasificación de polígonos por VIS

. . . . . . , . . . . , . . , . . . . . . . . . . . . . . , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . , . . . . . . . . . . . . . . . . . . . . . . . . , . . . . . . . . . . . . . . . . . . . . . .

2 5 6 6 6 9

13 21 22 23 24

25 26 26 21

29 34

35 3 1 39 40 40 40 40 45 45

41 48 51 52 53 54 55 5 1 61 62 63

IV

Page 9: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

LISIA DE FIGURAS

No deFigura Descripción Página I I

6.4 6.5 6.6 6.7 6.8 6.9 7.1 7.2 7.3 7.4 7.5

7.6 7.7 7.8 7.9 7.10 7.11 7.12 7.13 7.14 7.15 7.16

Identificación de polígonos ocultos y visibles ................................................... 64 Representación de líneas en una lista ..... ........................................................ 67 Representación de la lista después de el¡ ............. 67 Representación de la lista después del proceso de división de lineas ............ Representación de la lista de polígonos detect Descripción de la detección de líneas ............. Elinunacion de.ruido ........................ Imágenes después de la segmentación de texto y'ejes de proyección .............. Imágenes del texto y ejes de proyección segmentados Detección y adelgazamiento de líneas ............ ................................. 76 Representación del poliedro sintetizado a p en el listado 7.1 ................ ;. .......................................................................... Eliminación de ruido ............. ................................... 79 Imágenes después de segmentar texto y ejes de proyección.. ....... 80 Imágenes del texto segmentado ........................................................................... 81 Detección y adelgazamiento de líneas .................................................................. 82 Eliminacion de ruido ............................................................................................ 84 Imagenes después de segmentar texto y ej Imagenes del texto y ejes de proyección segmentados Detección y adelgazamiento de lineas ....... Gráfica para el caso 1 .........

Gráfica para el caso 3.; ........................................................................................

. 1 ,

.,

................. Gráfica para el caso 2 .......................................................................................... 92

92

V

Page 10: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

TABLAS Y LISTADOS

No. de Tabla Descripción Página

5 .1 Tabla de salida de la etapa de detección de líneas ................................................. 58 7.1 Tiempos de respuesta para los casos de prueba .................................................... 90 7.2 . Porcentajes de los tiempos de respuesta ............................................................... 91 7.3 Líneas de código en cada una de las etapas .......................................................... 93

No. de Listado Descripción . ' Página

1.1 I 1

Representación simbólica de elementos gráficos detectados por el sistema 6.1 7.1 Descripción de salida del sistema ........................................................ 77

Descripción de salida del sistema .....

Descripción de salida del sistema ................... : .................... 7.2 7.3

Descripción de salida del sistema

VI I:

Page 11: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CA PjTULO I INTRODUCCI~N

CAPíTULO 1

IN TRODUCCIÓN

SEGMENTACI~N

TEXTO ADELGAZAMIENTO

DE L~NEAS

I I En este capitulo se presenta un bosquejo general de lo que es visión computacional.

También se menciona el objetivo, beneficios y aportaciones de este trabajo de tesis Se da una descripción de las características del problema resuelto, así como un ejemplo de entradakalida del sistema Finalmente, se presenta el contenido y contexto de la tesis.

Page 12: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

01 P~TULO'I INTRODLICCI~N

1.1 VISlbN COMPUTACIONAL

Con respecto a los otros sentidos del cuerpo humano, el sentido de la vista es considerado el más rico en lo que se refiere a la gran cantidad de información que podemos abstraer de lo que nos rodea. Las técnicas de Visión Por Computadora (WC) involucran el desarrollo de estrategias computacionales que intentan modelar atributos de la percepción visual humana (como el reconocimiento de figuras) dentro de las restricciones fisicas del hardware actual.

En contraste con una computadora digital que puede tardar minutos para interpretar una imagen y generar una respuesta, el proceso visual humano podría. generar la respuesta en segundos :utilizando elementos de procesamiento de información relativamente lentos llamados n,kuronas [GUPTA93].

/I . '

El estudio del proceso de visión biológico representa una motivación y un marco general para diseñar un sistema de W C rápido y robusto. Una limitante es que no se conoce en detalle este proceso, sin embargo, desde la perspectiva. de un diseiíador, no es necesario emular con precisión los aspectos de la visión biológica; más bien, es deseable reproducir el funcionamiento de algunas de las estructuras computacionales neuronales que están involucradas en procesar, almacenar, e interpretar información visual [GUPTA93].

Los paradigmas computacionales dominantes en VPC involucran la conversión de imágenes en descripciones significativas de la escena utilizando pasos secuenciales que emplean progresivamente más y más representaciones abstractas de la escena original. Estos pasos secuenciales de transformación pueden ser divididos en tres niveles: nivel bajo, nivel medio y nivel alto; como se representa en la figura '1.1: En cada nivel se refleja progresivamente mayor complejidad en su forma de análisis. El análisis de bajo nivel, involucra el procesamiento de propiedades locales y globales de la imagen, el análisis de nivel intermedio, utiliza modelos geométricos genéricos para determinar atributos de la imagen pahiendo de sus propiedades y el análisis de alto nivel, convierte los modelos geométricos en representaciones simbólicas globales [GUPTA93].

Page 13: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO I INTRODUCCI~N

1.2 OBJETIVO. BENEFICIOS Y APORTACIONES

Dentro del campo de visión por computadora existe una gran variedad de aplicaciones potenciales. Una de ellas es la interpretación de dibujos que consiste en generar una descripción simbólica del dibujo, de tal manera que con dicha descripción pueda ser reconstmido el dibujo original.

1.2.1 Objetivo El objetivo de este trabajo es implementar técnicas de visión por computadora con el fin de

interpretar dibujos de las vistas frontal, superior y lateral de un sólido recto (poliedro) y producir una descripción del dibujo utilizando un lenguaje de representación t

1.2.2 Beneficios A continuación se mencionan algunos de los beneficios derivados de la interpretación de

dibujos 1 Conversión de dibujos sobre papel para poder integrarlos a un ambiente de Diseño

Asistido por Computadora (CAD, por sus siglas en inglés Compitfer-AidedDe~~~) 2 Interactuar como interface “inteligente” entre un editor gráfico y el digitalizador de tal

manera que el editor sólo tome la descripción generada por este trabajo para reproducir el dibujo original

3 Compresión de la imagen del dibujo para optimizar su almacenamiento

1.2.3 Aportaciones Las apoitaciones derivadas de este proyecto son las siguientes:

1 . Interpretación automática de dibujos utilizando la transformada de Hough. Consihero que esta es la principal aportación debido a que al inicio de este proyecto no se encontraron publicaciones al respecto. Sin embargo en [IOANNOU96] se presenta un trabajo reciente donde se aplica la transformada de Hough para reconocimiento de objetos poligonales. Por otro lado, existen otras técnicas publicadas que garantizan también el éxito de la interpretación como las que se describen en [CHINGS9], [KASTURI90] y [PASTERNAK93].

2. Implementación de una técnica para adelgazamiento de líneas, basada en los resultados arrojados por la transformada de Hough. Existen técnicas para adelgazamiento de líneas (como la que se.describe en [HOLT89]) que son aplicadas directamente después de una etapa de eliminación de mido. En este trabajo, se aprovecha que la técnica de Hough detecta todos aquellos segmentos de línea que pertenecen a una línea engrosada y entonces se procede a su adelgazamiento.

3. Implementación de una técnica para detectar y clasificar los polígonos contenidos en el dibujo. La clasificación de polígonos, según la vista en la que se localizan, determina una relación espacial entre elementos gráñcos contenidos en el dibujo. Esta relacion espacial es muy característica de este problema considerando que el dibujo

3

Page 14: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO 1 INTRODLICCION

contiene las tres vistas ortogonales de un poliedro Al respecto no se encontraron publicaciones relacionadas.

1.3 DESCRIPCIÓN DEL PROBLEMA

Un problema particular dentro del contexto de W C es la manipulación de planos ingenieriles en una computadora. Muchos de los diagramas y planos que actualmente existen en papel se tienen que redibujar en una computadora auxiliándose de herramientas de CAD. En esta captura, además del mayor consumo de recursos (comparado con un sistema automatizado), gran parte de la información referente al dibujo, no es capturada y sólo queda en el conocimiento del dibujante. Debido a esto, se hace necesario desarrollar sistemas de sofhure que sean lo suficientemente inteligentes para desempeñar esta tarea de interpretación. En este trabajo se propone una solución basada en técnicas de VPC.

1.3.1 Características de los Dibujos a Interpretar El presente trabajo se centra en la interpretación de dibujos con las siguientes

características: + Los dibujos son planos de sólidos rectos, los cuales pueden estar seccionados o tener

cortes transversales. Los cortes o secciones que no son visibles en alguna de las caras son representados mediante' líneas punteadas.

+ Los dibujos sólo contienen las tres vistas ortogonales de un sólido recto: frontal, superior y lateral. Acotaciones', letreros' y ejes de proyección son también parte del dibujo.

+ En el trazo de los dibujos se utilizan sólo líneas rectas continuas o punteadas. I

1.3.2 Contexto de la Tesis I/

La tesi: se encuentra enmarcada dentro de un proyecto más amplio cuyo objetivo es reconstmir un poliedro, partiendo de los dibujos de sus proyecciones ortogonales. Los dibujos de dichas proyecciones entran al sistema para su interpretación como una imagen digitalizada por un scanner. La salida de este trabajo se ajusta a la entrada de una segunda etapa del proyecto como se esquematiza en la figura 1.2.

Page 15: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

C

VW3lSIS 7 3 U VCil7VS/VUVülN3 30 07dW3r3 P.6

I s m ~ w aa 33wm ....... ~ ............... ~~~~~ ............................. ~ ................ ~~ .................................. ~~ .....

H ma iia

Page 16: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CA P~TULO I INTRODUCCII~N

Figura 1.3: E jmplo de un dibujo paptad0 por el si-

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 l l l l l l l 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 0 o o l l l l l l l l o o o o o o l o o o 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 0 0 1 0 0 0 0 0 0 o o l l l l l l l l o o l o o o o o o o 0 0 0 0 0 0 0 0 0 0 0 l 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 l 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 1 0 0 0 1 0 1 1 1 1 0 1 1 0 1 1 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 1 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Figura 1 . 4 RepreJentasih’ digitalizada & un dibujo. O simholiu un pun10 blanco. I simboliza un punto n e p . Li

figura representa el dibujo de la figura 1.3.

Figura 1 . 5 Ejemplo de U M imPgm de mv& 81 sisl-. Fs notahle el Nido (engroumimio de lineas y punias aislador)

generado p r el digitalimdor.

6

Page 17: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO I INTRODLICCI~N

1.4.2 Salida del Sistema En el listado 1 1 se muestra un ejemplo de algunos elementos gráficos de salida del

sistema Primeramente se da una lista de todos los vértices involucrados en los polígonos detectados, el vértice 1, por ejemplo, está representado por pi cuyas coordenadas en el plano ry son x = 59, y = 99. Posteriormente se listan los polígonos, clasificados por la vista ortogonal en la que se encuentran localizados en el dibujo, el poligono 1 de la vista fiontal, por ejemplo, está representado por n, cuyo ciclo comienza en el vértice pi. pasa por los vérticesp2, p3, p,, ps, p6, p7 yp8 hasta cerrar el ciclo en el vérticep,, donde comenzó

~ÉRTICES

pi = punto ( 59 99) p2 =punto (280 101) p, =punto (281 210)

POL~GONOS

Vida Frontal

ni = polígono( polilínea( pi, polilínea( p2, polilínea( %, polilínea( p4, polilínea( p5, polilínea( Pa, polilínea( p,. polilínea( ps, polilínea( pi, polilineaVacia ))))))))))

. . Vista Superior

ni = polígono( polilínea( pi,. polilínea( pis. polilínea( pig. polilínea( p20, polilínea( pl,, poliiineaVacia ))))))

Vista Lateral

ni =polígono( polilínea( ps, polilínea( p10. polilínea( pit, polilínea( ptz. polilínea( p13. polilínea( pI4, polilínea( pis, polilínea( Pia, polilínea( ps, polilineaVacia ))))))I)))

. .

Lislndo 1.1: Reprerentación' simbólica dc elemmtos @¡cos detemados p a el sistema. En este ejemplo puede apreciarse como se genera una 1i.a de los polignios conmidm en el dibujo. ai como UM cla?ificaeibn de los mismos. se& la Vista a la que Menecen Al inicio de la

l i la se presmlan las coordenadas del -junta de vénices invalumdos ni los poligonos detectados.

Page 18: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO I

1.5 CONTENIDO DE LA TESIS

El proceso de interpretación de dibujos propuesto en este trabajo se resume en las siguientes etapas:

I ) Eliminación de Ruido. 2 ) Segmentación de Texto. 3) Segmentación de Ejes de Proyección. 4) . Detección y Adelgazamiento de Líneas. 5 ) Detección de Polígonos.

Cada etapa se encarga de realizar una tarea específica. Cada etapa tiene una entrada de datos y proporciona una salida que servirá de entrada a la siguiente como se ilustra en la figura 1.6. Al proceso de interpretación entra una imagen del dibujo donde se puede apreciar el ruido (puntos aislados y engrosamiento de líneas) generado por el digitalizador. La etapa de eliminación de ruido genera como salida una imagen sin puntos aislados de ruido, la cual entra a la etapa de segmentación de texto, produciendo como salida dos imágenes, una del texto segmentado y una libre de texto. La imagen libre de texto entra a la etapa de segmentación de ejes de proyección produciendo como salida dos imágenes, una de los ejes de proyección segmentados y otra libre de ejes de proyección. Estas imágenes entran a la etapa de detección de líneas, generándose un archivo de texto con la descripción simbólica de las líneas contenidas en la imagen de entrada. La descripción simbólica de las líneas entra a la etapa de detección de polígonos para finalmente generar una descripción simbólica de los poligonos contenidos en el dibujo.

Sin embargo, en la figura 1.6 se puede apreciar 'también que .omitiendo las etapas de segmentación de texto y segmentación de ejes de proyección se puede llegar también a la interpretación del dibujo pasando la imagen preprocesada a la etapa de detección y adelgazamiento de líneas. El costo de seguir esta otra ruta es una la obtención de una descripción,más incompleta del dibujo, así como un aumento del tiempo de procesamiento para dibujos muy densos como se muestra en la sección 7.2.

El trabajo que se presenta requiere de interacción por parte del usuario para correr cada una de las etapas del proceso de interpretación La intervención del usuario es necesaria para tomar la decisión de volver a aplicar una etapa del proceso Por ejemplo, si el ruido no fue totalmente eliminado o si el texto no fue completamente segmentado se deberia aplicar nuevamente el proceso correspondiente a juicio del usuario del sistema

8

Page 19: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO I I ~ T R O D U C C I ~ N

T I .,+ .......... ..... ::: ::. . . . . . . ............. ........ ., SEGMENTACIÓN

DE PROYECCIÓN

......

i ..

SEGMENTACIÓN 1 '~ DE , TEXTO

"L ,.. , ..; y,;,:.;-: . . /,. ' , . , . ; .; >. ............. . . . . . . 6 r'.-' ~. ;..::

ii i:z!.:; :. :

;/ i ..... : ~ :. .. :i

ii ....... i L i ........ I -- I

4 4

6 4

E L ~ M I N A C I ~ N DE

RUIDO

I

DETECCI~N Y

Descripción Siinbólica

de los Poligonos

contenidos en el Dibujo

Descripción Simbólica

Lineas contenidas en el Dibujo c

DETECCI~N 4 P O L E N O S

Figura 1.6: Recorrido del dihujo por lar diferenta etapas del proceso de inlerpretación. N pmcffo de interpretación entra una imagmdrl dibujo donde sz pueden apreciar puntos aisladas de ruido. La elapl de eliminación de mida genma como MI¡& UM imagen sin puntos aisladas de mido. la cual mtra a la etapa d i regmintación de ledo. pmduciendo romo salida dm imágenes. una del lexta segmentado y una libre de Icxio. La imngen lihri de lek10 mtIl I la etapa de segmenllcibn de ejes de proyección produciendo como sllida dos irnigenes. una de 105 ejes de pmyeccih segmenindos y otra libro de ejes de proyección. Estar imágenes entran a Is etapa de detección de linear, generándase un archivo de Lek10 con Is deic+ión simbólica de la9 lineas contenidas en 1. imagen de envada. La d-pción simbólica de lar lineas enlra a la cLips de delcccibn dc poligonor para finalmente generar una devxip4h simhbliea de Im poligonm -tenidas en el dibujo. El pmcao puede .seguir o h mta s i s- milen lar etapa? de segmenlacióo de texto y ejes de proyeccih, eslo pmvoca que e l limp de pmeesamiento sea

mayor en el caro de dihujor muy densos y ademh una inisrprctaiión m h reducida del dihujo.

9

Page 20: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPíTULO 2 INTERPRETACII~N DE DIBUJOS

CAPíTULO 2

INTERPRETACIÓN DE DIBUJOS

I - Dibujo Digitalizado

I t -Rnxniocimiento de Elementos Gráficos

- Reuniocminito de Simbolos

Etapas ni la inlerpretación automitia de un dihujo de ingrnim'a.

En este capitulo se describen los antecedentes y motivación de la interpretación de dibujos, así como el problema que representa esta aplicación utilizando técnicas de visión computacional Se describe también el estado del arte incluyendo ejemplos de sistemas desarrollados y publicados

10

Page 21: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

lhTERPRETACl6N DE DIBUJOS

2. I ~ N T R O D U C C ~ ~ N

2.1 .I Antecedentes y Motivación ',

Mientras muchos nuevos problemas de diseño son ahora atacados utilizando ambientes y herramientas de CAD, la mayoría de las tareas de ingeniería involucran la modificación de diseños existentes. Si el diseño original fue desarrollado y presentado sobre papel, surge un problema:'¿cómo combinarlo con un diseño de CAD?'Para solucionar este problema se debe escoger entre hacer una captura manual del dibujo dentro del ambiente de CAD, una larga tarea, o buscar alguna herramienta de interpretación automática del dibujo. Por otro lado, actualmente la razón estimada de tiempo para entrada manual contra entrada automática para algunas disciplinas de la ingeniería varía desde 2:1 hasta 1O:l [BARRET91].

Las posibles aplicaciones de un sistema de visión .por computadora para interpretación automática de dibujos han producido una fuerte demanda comercial por parte de las industrias con grandes almacenes de dibujos de ingeniería convencionales [BARRET91]. Más aún, la gran cantidad de dibujos sobre papel actualmente en uso activo significa que el problema de conversión será de actualidad por al menos esta década en países desarrollados [BARRET91] y por al menos la siguiente década en países subdesarrollados considerando que en lo que se refiere a avances tecnológicos siempre existe un atraso en países como México. En muchos casos el almacenamiento de dibujos sobre papel está aún creciendo más rápido que aquel realizado con CAD [BARRET91].

2.1.2 El problema de la Interpretación de Dibujos Las dificultades surgidas en la tarea de conversión varían con el tipo de dibujo

considerado. En algunos diagramas las tareas principales son el reconocimiento de texto y otros símbolos pequeños así como el agrupamiento de texto y símbolos adyacentes. La detección de texto se complica con el texto manual. En sistemas comerciales, las habilidades en el reconocimiento de símbolos están actualmente limitadas a pequeños conjuntos de éstos y tienden a fallar con diagramas de mala calidad y cuando líneas y símbolos se traslapan [BARRET9 I].

En el caso de mapas, el principal objetivo es la descripción precisa de frecuentes líneas irregulares. A pesar de las técnicas disponibles, el muy alto nivel de precisión requerido ha significado que el éxito de estos sistemas sea limitado. Además, un problema en dibujos de este tipo es el reconocimiento de caracteres debido a que éstos pueden aparecer en ángulos diferentes.

Por otro lado, los dibujos de ingenieria son estrictamente monocromos y frecuentemente de poca calidad, El dibujo original podría estar sucio, arrugado y decolorado o aún apergaminado por la edad. En algunos casos la única copia existente de un dibujo es una pobre reproducción de un dibujo original defectuoso.

- 11

b 7 4 f i d n

Page 22: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPíTUIh 2 INTERPRETA C I ~ N DE DIBUJOS

También surgen problemas técnicos debidos al volumen de datos que debe ser considerado. Para dibujos que podrían contener líneas de solamente 0.125 mm de ancho se requiere una resolución de más de 10 pixeledmm. Esto implica que se utilicen hasta 2 Mbytes para el almacenamiento de imágenes de dibujos trazados en hojas de tamaño 65 cm X 84 cm. En el peor caso podria 'ser necesaria una resolución de 80 pixeledmm, lo cual sugiere imágenes de hasta 16 Mbytes.

Los dibujos de ingeniería mecánica involucran una rica mezcla, de gráficos e información simbólica. Algunas líneas reflejan directamente la forma del objeto deseado, aunque no necesariamente muy precisa o a escala; otras forman símbolos grandes y complejos. Los traslapes de estos símbolos tienen profundas implicaciones para la interpretación de grandes áreas del dibujo. La descripción de esta gran colección de líneas en términos de símbolos válidos y gráficos aceptables es una tarea que requiere considerable conocimiento de la estructura y convenciones sobre dibujos de ingeniería mecánica.

Debido a que un dibujante está imposibilitado a especificar objetos con la precisión gráfica requerida, éste hace uso de texto como una.herramienta auxiliar para documentar casos de imprecisión. Por ejemplo, en el trazo de ángulos, el texto es usualmente escrito a mano, utilizando una mezcla de minúsculas, mayúsculas y números. Además, mucho del texto sobre un dibujo mecánico es escrito en base a un lenguaje restringido. En el caso de diseños complejos, regularmente se agregan notas adicionales. También es frecuente que los caracteres sean escritos sobre el dibujo. Por lo tanto, debido a las características mencionadas, el reconocimiento completo de texto para dibujos mecánicos es un problema más complicado que para mapas o diagramas eléctricos [BARRET91 I .

2.2 ESTADO DEL ARTE

Comercialmente, se han utilizado -dos métodos para resolver el problema de la interpretatión de dibujos. La primera hace la conversión manual, auxiliándose con herramientas de CAD; esto es similar a rediseñar en una terminal de CAD pero con la ayuda de un sistema inteligente que incorpora una imagen del dibujo. conocimiento acerca de los dibujos y una sofisticada interface que permite al sistema preguntar al usuario lo relacionado con tipos.de línea, sus intersecciones y relaciones geométricas. El otro método requiere de un componente automático con muchas de las habilidades de un sistema de interpretación completo. El segundo método aún es un camino de explotación comercial, así como de evaluación, parcialmente desarrollado. La interpretación automática deja aún una significativa cantidad de procesamiento interactko.

La tarea de conversión automática involucra la extracción de características de una imagen y su interpretación y composición en las entidades encontradas en sistemas de CAD. Para lograr esto, los sistemas actuales involucran un conjunto de pasos mostrado en la figura 2.1

12

Page 23: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPíTULO 2 INTERPRETACI~N DE DIBUJOS

El prebrocesamiento de la imagen se encarga de eliminar, disminuir o acentuar características en la imagen. Por ejemplo, la eliminación de &ido consiste en "borrar" de la imagen agrupaciones de puntos aislados. El proceso de vectorización genera una descripción del arreglo binario en términos de un conjunto no estructurado de segmentos de línea. En la segunda etapa deben ser identificados elementos gráficos tales como arcos, círculos, elipses, texto, puntas de flecha, líneas punteadas y otros elementos gráficos.

En [SRiHARI92] se describen los problemas a los que se enfrenta la interpretación automática de dibujos: 1, Separar el texto de la imagen. Este es un proceso no trivial dado que el texto podría estar

2. Vectorización de los componentes en el dibujo. 3. En lo.que se refiere a líneas se tienen problemas como la identificación de líneas

punteadas, determinación de sus puntos extremos. adelgazamiento y determinación de intersecciones.

pegado a las líneas del dibujo.

'1

Hay una extensa literatura sobre el reconocimiento de texto impreso. Sin embargo en [MARIAN1961 se declara que el reconocimiento de texto a mano es un problema que no ha sido resuelto completamente.

A continuación se mencionan las deficiencias que presentan algunos de los trabajos publicados en el renglón de la interpretación automática de dibujos.

En el aitículo descrito en [DIMITRIOS96] se presenta una .técnica para detección de paralelogramos en una imagen digital utilizando la transformada de Hough como base. La técnica propuesta no está generalizada al reconocimiento de todo tipo de polígonos sino sólo a paralelogramos. Además se maneja como limitante la cantidad de ruido contenido en la imagen.

'I

En pASTERNAK931 se describe un prototipo para la interpretación de dibujos mecánicos. En este trabajo se presentan problemas como la representación de restriccioiies

'!

13

Page 24: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO 2 INTERPRETACI~N DE DIBUJOS

geométricas en un estilo mas declarativo, además, la adaptación a otro campo de la ingeniería requiere de nuevas relaciones estructurales y estrategias diferentes de interpretación Esto último sugiere una falta de generalidad en el trabajo propuesto

El sistema descrito en [VAXIVIERE92] tiene las siguientes limitaciones: Los dibujos de entrada deben estar relativamente limpios, sin mucho “mido”. El sistema está limitado en’cuanto a la cantidad de partes mecánicas que puede interpretar. La vectorización está limitada a líneas rectas, no reconoce líneas curvas. Las reglas de conocimiento sobre las que ‘trabaja el sistema están fuertemente relacionadas con el estandar fiances. El sistema ha sido probado sólo con un conjunto limitado de dibujos.

El prototipo descrito en [BARRET91] presenta bastantes inconvenientes que se describen a continuación: e No reconoce líneas punteadas.

No detecta líneas curvas con la suficiente precisión. Algunos segmentos se pierden o en combinación con líneas rectas se deforman. No detecta puntas de flecha con exactitud.

e La intersección entre dos líneas no queda bien definido.

Algunos de los problemas que presenta el sistema propuesto en [KASTURi90] son los siguientes:

El algoritmo de segmentación de texto está basado en componentes conectados colineales de tamaño similar y no reconoce caracteres individuales. Debido a problemas .en el adelgazamiento de líneas, algunos objetos no son adecuadamente interpretados: El sistema no reconoce tablas. Las intersecciones entre’líneas no son detectadas con precisión.

Actualmente existen muchos esquemas para eliminación de ruido, algunos de los cuales están siendo incorporados en dispositivos de exploración (scanners) [BARET911

Una característica sobresaliente de los sistemas de interpretación de dibujos descritos es que requieren una gran cantidad de procesamiento posterior debido a sus deficiencias en los resultados obtenidos Muchas veces los errores sólo pueden ser corregidos por un operador humano Después de la eliminación de ruido, editores de rastreo proveen herramientas para agregar y borrar pixeles y asi permitir al usuario limpiar la imagen binaria antes de la vectorización Otros editores permiten hacer modificaciones similares al dibujo vectorizado, proporcionando herramientas para agregar y borrar segmentos de línea Conforme se avanza a cada una de las etapas mostradas en la figura 2 1, los errores resultantes se hacen más complejos y por lo tanto requieren de más trabajo por parte del operador así como de herramientas interactivas más poderosas El diseño y construcción de estas herramientas son tareas significativas y podnan ser tan complejas como el desarrollo de sistemas de interpretación

Page 25: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

INTERPRETACI~N DE DIBUJOS CAP~TLILO 2

La interpretación de dibujos mecánicos reales es un problema grande y complejo. Sin embargo, muchos de los errores generados en los sistemas de conversión (como en [BARRET91]) son debidos a la arquitectura simple sobre la cual están basados (un conjunto de filtros rígidamente ordenado con arquitectura jerárquica de abajo hacia amba). Los filtros empleados son frecuentemente demasiado generales; pocos están afinados de alguna forma para los problemas especiales de conversión de dibujos [BARRET91].

Por ejemplo, en algunos métodos de vectonzación de la imagen, las variaciones en el ancho de la línea frecuentemente generan pequeñas “espuelas” (pequeños segmentos de línea) que deben ser eliminadas; sin embargo, la remoción descuidada puede provocar pérdida ae información vital. Es importante, por ejemplo, no descartar “espuelas” generadas por el adelgazado de puntas de flecha sobre una línea. Este tipo de error, el cual podría tener severas consecuencias para la interpretación de la imagen, puede solamente ser evitado con la incorporación de conocimiento de la estructura del dibujo.

‘1

No es práctico, sin embargo, incorporar por separado todo el conocimiento ‘que un proceso podría requerir. Más bien el proceso individual debería estar integrado dentro de un ambiente global basado en el conocimiento apropiado. Surgen frecuentemente situaciones en las cuales se puede decidir que una línea es importante después de realizar una interpretación detallada y de alto nivel del resto del dibujo que la rodea. En tales casos un preprocesamiento de la imagen debería idealmente ser reaplicado bajo el control de procesos de más alto nivel los cuales puedan afinar sus parámetros para realizar una búsqueda directa y realista de dicha línea. Sin la habilidad para adoptar este tipo de estrategia de procesamiento flexible, en los sistemas analizados en este trabajo se toman importantes decisiones en las etapas tempranas de la interpretación. En sistemas construidos con la arquitectura simple de la figura 2.1 la mayor parte del procesamiento se hace sin considerar la imagen fuente u otras representaciones de bajo nivel. El desempeño es entonces crucialmente dependiente de que todas las transformaciones tempranas sean precisas y, por lo tanto, dada la pobre calidad de muchos dibujos mecánicos, este extremado alto grado de confiabilidad es poco probable que sea alcanzado [BARRET91].

Ejemplos de Prototipos de Interpretación de Dibujos En [DIMTRIOS961 se presenta’un método para el reconocimiento de paralelogramos en

una imagen binaria. Se utiliza la transformada de Hough para generar una hipótesis acerca de la existencia de un paralelogramo. Se utilizan relaciones geométricas del paralelogramo para la prueba de la hipótesis. Se muestran resultados con imágenes que contienen ruido y otros objetos.

En [IOANNOU96] se estudian los efectos del mido en la digitalización sobre la transformada de Hough. Se demuestra que aun en una imagen idealizada (sin ruido, líneas perfectas) la detección de una línea podría no darse con toda la precisión requerida. También se estudia el problema de la predicción del desempeño y se prueba que si el ruido en la imagen;es uniforme entonces el número de votos en el espacio paramétnco sigue una distribución binomial. Se utiliza la teoría presentada para proponer un algoritmo que estima

,: I! ‘I I

15

Page 26: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

CAPITULO 2 INTERPRETACIÓN DE DIBUJOS

~ ~ ~~~~

la longitud de un segmento de línea recta digitalizada a partir de su transformada de Hough. El algoritmo es extendido al caso donde existen otros objetos y basándose en el algoritmo anterior, se propone un nuevo algoritmo para la detección de polígonos convexos en una imagen digital. El método 'se probó en imágenes reales y sintéticas dando resultados 'muy satisfactorios. También se prueba la singularidad de la representación de un polígono convexo a partir de su identificación en el espacio de Hough. Finalmente, se propone un algoritmo eficiente para la 'construcción de un polígono convexo a paFtir de los parámetros de sus lados.

En [LLADÓS96] se describe un sistema para interpretar dibujos arquitectónicos hechos a mano. El proceso identifica elementos del piso de un edificio así como sus relaciones espaciales. Para reconocer. patrones se utiliza una técnica basada en isomorfismo de grafos. Se utiliza la transformada de Hough para detectar patrones de relleno como los usados para las paredes. El resultado es que el documento puede ser recuperado en un ambiente de CAD.

En [P,ASTERNAK93] se describe el diseño y desarrollo de un prototipo para la interpretación de dibujos técnicos. El autor presenta una discusión acerca de los tipos de conocimiento necesarios para realizar la interpretación de dibujos y presenta su implementación basada en el modelo del pizarrón' genérico, el cual permite fácil adaptabilidad a nuevos dominios de la aplicación. La parte principal del reporte trata la interpretación básica de un ciclo para explotar conocimiento a-priori acerca de la estructura del dibujo y restricciones geométricas asociadas. Esto se discute detalladamente en un ejemplo cuya interpretación comienza con primitivas de vectorización y termina cuando los objetos en el dibujo son reconocidos.

En [VAXIVlERE92] se presenta un prototipo que convierte dibujos de ingenieria mecánica a un formato adecuado para ser procesado por un sistema de CAD. El sistema hace uso del conocimiento relacionado con esta área de la ingeniería para realizar la interpretación. El prototipo integra varios módulos basándose en la técnica del pizarrón. Una vez que el dibujo es digitalizado, el primer paso consiste en separar el texto y las acotaciones. La siguiente etapa es ensamblar las líneas detectadas en bloques que son finalmente formateados para ser enviados a un sistema de CAD.

En [KASTURI90] se describe un sistema genérico 'de interpretación de gráficos el cual ha sido diseñado para generar una descripción del contenido de un dibujo sobre papel en términos de varias primitivas gráficas (líneas, polígonos, círculos, etc.), sus interconexiones y sus relaciones espaciales. Estas primitivas tienen' varios atributos asociados. Ejemplos de tales atributos son grosor de las líneas, relleno de polígonos, etc. Frecuentemente estas entidades se traslapan unas con otras y ocultan algunas de las líneas. Los gráficos están típicamente identificados con cadenas de texto. Otras bondades del sistema es la identificación de las diferentes figuras que conforman al dibujo así como la identificación de patrones de relleno. En particular, los dibujos mezclados con gráficos y texto son digitalizados a una resolución de 12 pixeles por milímetro para generar una imagen binaria de 2048X2048 pixeles. Con el propósito de no dejar trabajo interactivo para el usuario del

16

Page 27: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CA P~TULO 2 INTERPRETA C I ~ N DE DIBUJOS

sistema y generar. una descripción de los gráficos lo más completa posible, se desarrollan las siguientes operaciones sobre una imagen.

I ) Separación de texto de los gráficos. 2) Identificación de segmentos de linea y sus atributos. 3) Reconocimiento de primitivas gráficas y sus atributos. 4) Descripción de relaciones espaciales entre primitivas.

La identificación de cadenas de caracteres se realiza aplicando la técnica de 1a.transformada de Hough que consiste en realizar una transformación de los puntos del plano cartesiano al plano paramétrico. Los elementos gráficos muy gruesos son representados por sus fronteras (contornos) y los elementos muy delgados por sus esqueletos. En este caso se considera que cada caracter es un punto y una cadena de caracteres es una linea. Con esta consideración se logra detectar cadenas de texto en diferentes orientaciones. El archivo descriptivo generado por el sistema contiene toda la información necesaria para reconstruir los gráficos originales, lo cual es una diferencia fundamental comparado con un sistema de compresión de datos convencional que sólo produce datos comprimidos para almacenamiento. El tiempo de respuesta del sistema en una computadora VAX-I 11785 es del orden de minutos.

En [BARRET91] se describe ANON (Un Sistema de Interpretación de Dibujos basado en Conocimiento) como un sistema para la interpretación de dibujos de ingenieria mecánica utilizando imágenes en niveles de gris. El método de vectorización utilizado es el de seguimiento de contornos que consiste en comenzar con un conjunto de^ «puntos generadores)) a los cuales se van agregando otros que sean conexos y cumplan con propiedades similares (nivel de gris, textura, etc.). El sistema es completamente automático ya que no requiere interacción con el operador para realizar la interpretación. El sistema detecta líneas rectas continuas y punteadas, círculos, arcos y texto en diferentes orientaciones. El código está desarrollado en lenguaje C. El sistema de control de ANON está basado en.reglas, las cuales son escritas en un formato tal que sean aplicadas por un parser generado usando la utileria yacc del sistema operativo Unix. ANON es un sistema modular que puede ser extendido sin perturbar sus componentes actuales. Además, gran parte del "código del sistema podría ser reusable.

.I i!

[CHiNG89] presenta el diseño de algoritmos para procesar imágenes binarias de dibujos sobre papel de tal manera que sea segmentada la imagen en cadenas de texto y gráficos. El método de vectorización utilizado está basado en el algoritmo de Wakayama que-consiste en agrupar la mayor cantidad de pixeles dentro de un cuadrado sin considerar pixeles del fondo de la imagen. La unión de todos los cuadrados'genera una reconstrucción exacta de la imagen original. En resumen, la técnica propuesta consta de los siguientes pasos:

Se generan los cuadrados maximales. La unión de estos cuadrados conforman completamente los pixeles que representan a los gráficos en la imagen. Cada cuadrado tiene apuntadores hacia el siguiente cuadrado y el anterior.

. Utilizando los apuntadores, .se genera una lista ligada conectando los cuadrados obtenidos en el paso anterior, Se clasifican las entradas de esta lista en líneas rectas, curvas, uniones y líneas gruesas. Mezclar segmentos de linea para obtener el'archivo descriptivo de las lineas.

Es importante aclarar que el archivo descriptivo sólo contiene la información necesaria para reconstruir la imagen original. El sistema no hace un reconocimiento de los elementos

17

Page 28: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP~T~JLO z INTERPRETACIÓN BE DIBUJOS

gráficos contenidos en el dibujo. El articulo muestra una imagen de prueba de 2048x2048 pixeles que fue obtenida digitalizando el dibujo a 120 pixeledcm usando un scanner Micro- Tek conectado a una IBM-PC/AT

2.3 COMENTARIOS FINALES

Cerca de 35 años de investigación y desarrollo no han sido suficientes para tener sistemas de reconocimiento de texto y dibujos con la precisión con la que lo hace la visión humana. Existe una fuerte necesidad de incorporar contexto a los sistemas actuales de tal manera que se puedan rechazar documentos que no puedan ser interpretados por un sistema. La pregunta es cómo definir tales restricciones en una forma genérica, de tal manera que puedan ser redefinidos fácilmente para diferentes aplicaciones. Más allá de esto, cómo se integrarían tales reglas a los sistemas existentes para optimizar su desempeño [MAFUAN196].

En base a los trabajos analizados se puede concluir que actualmente la mayor parte de la investigac.ión sobre interpretación de dibujos se concentra más sobre el desarrollo y evaluación de métodos que sobre la producción de sistemas prácticos. Debido a esto, las técnicas examinadas son raramente aplicadas fuera del ambiente de laboratorio. Sin embargo, a pesar de esto, existen sistemas comerciales que dejan todavía bastante trabajo interactivo al usuario [BARRET91].

Con este trabajo se persigue evaluar la factibilidad de llevar a la práctica técnicas de interpretación ‘automatizada de dibujos, y si es necesario, hacer extensiones para satisfacer completamente alguna aplicación del mundo real.

Hay dos diferencias importantes entre el trabajo reportado aquí y otros proyectos genéricos de visión computacional. Una diferencia es que la interpretación automática de dibujos se asemeja a la tarea que realiza un dibujante al hacer una captura manual del dibujo. Otra diferencia es que los dibujos de ingeniería intentan comunicar información. de acuerdo a convenciones predefinidas. Por lo tanto dichos dibujos son mas bien “leídos” que “percibidos”.

En el siguiente capitulo se inicia el proceso de interpretación de dibujos concerniente a este trabajo de tesis.

i

Page 29: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 3 PREPROCESAMIENTO DE LA IMAGEN

CAPíTULO 3

PREPRBCESAMIENTO DE LA IMAGEN

+&.-,e --+

i 1. , +-

,! i l l I.... ..,..I..

i

Imagen d q u & de aplicar la etapa de eliminaciai de mida

I I

Este capítulo se refiere a la primera etapa del proceso de interpretación y tiene como objetivo mostrar la eliminación de pixeles aislados de ruido generados por el scanner durante el proceso de digitalización del dibujo. Se da una breve introducción a las técnicas de filtrado de una imagen y una descripción del algoritmo utilizado También se presenta una sección de resultados y otra de comentarios finales

19

Page 30: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

C . PÍTULO 3 PREPROCEUMIENTO DE LA IU4GEN

3.1 INTRODUCCI~N

El objetivo principal de las técnicas de preprocesamiento de una imagen es realzar o atenuar rasgos en la imagen de tal manera que se obtenga una imagen más adecuada que la de entrada. Es importante mencionar que una técnica puede ser muy útil para una aplicación pero para otra puede no resultar apropiada.. En este trabajo de tesis, el preprocesamiento de la imagen consiste en eliminar parte del ruido generado durante la digitalización. Este ruido se caracteriza por puntos aislados y engrosamiento de líneas que en el dibujo real no existen. En este capítulo se describe la eliminación de los puntos aislados de ruido, dejándose el adelgazamiento de líneas para una etapa posterior del proceso de interpretación,

El digitalizador utilizado fue un Hewlett Packard Scanlet-hcx conectado a una computadora personal de marca Hp. Los dibujos digit.alizados fueron hechos en papel tamaño carta ( 2 1 . 5 ~ 2 8 cm) y se digitalizaron utilizando la opción de ''dibujo en ByN con Nitidez" con un brillo entre 70 y 80 unidades. Las imágenes obtenidas están en binario donde cada pixel de la imagen es almacenado en un bit. En promedio, el tamaño de las imágenes fue de 630x700 pixeles a una resolución de 3 pixeles/mm. El espacio promedio de almacenamiento en disco fue de aproximadamente 60 Kbytes por imagen. El tipo de formato utilizado e'; el BMP.

1 i'

A continuación se da una síntesis de las técnicas de mejoramiento de una imagen

3.2 TÉCNICAS DE MEJORAMIENTO DE LA IMAGEN

Una vez almacenada la imagen se le hacen transformaciones con el fin de resaltar características deseadas o bien eliminar las no deseadas Para ello existen las técnicas de filtrado en el dominio de la frecuencia y en el dominio espacial Cabe aclarar que la técnica utilizada en este trabajo de tesis pertenece al dominio espacial

3.2.1 Técnicas en el Dominio de la Frecuencia

La base de las técnicas en el dominio de la frecuencia es el teorema de convolución'. Sea &,y) una imagen formada por la convolución de una imagen f(x,y) y un operador lineal invariante de posición h(x,y)', es decir

!)I I< ¿+?Y) = hkY) "f(r,Y)

Entonces, por el teorema de convolución. se cumple la siguiente relación en el dominio de la frecuencia:

G(u,v) = H(u,v)F(u.v)

' La mvoluei6n time como ohjelivo eijminw 6 a b u u caraC<ai*iw m UM imagen por ejemplo. eliminar puntos aisladm de mido

lln -dar invm¡anle de porición es aquel cuyo resultado depende &lo del valor dc&4 en un punto de la imagen y no de la posición del p""I0.

20

Page 31: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPí'rlJLO 3 PREPROCE,Uh{lENTO DE LA IMAGEN

I

t

donde G, H y F son respectivamente las transformadas de Fourier de g, h y f . En la terminología de la teoría de sistemas lineales, la transformación H(u.v) se denomina la fitnción de transfrrencia del proceso. En óptica H(u,v) se denomina la función de iransfrencia óptica.

En una aplicación típica de mejora de' la imagen,f(x,y) es conocida y el objetivo, después de calcular F(u.v), es seleccionar H(u,v) de forma que la imagen deseada,

gíx,y) = 3'IHíu, v)Fíu,v)l

presenta resaltada o atenuada alguna característica de la imagenf(x,y). El segundo miembro de la ecuación representa la transformada inversa de Fourier del producto de H por F.

En la figura 3. ](a), h(x,y) caracteriza un sistema cuya misión es la de producir una imagen de salida g(x,y) a partir de una imagen de entradaj(x,y) . El sistema realiza la convolución de h(x,y) con la imagen de entrada y da el resultado como salida. En el dominio de la frecuencia, el teorema de convolución permite una visión diferente del proceso en el sentido de que el mismo resultado se obtiene multiplicando F(u,v) por H(ir.v) para dar G(u,v). Calculando la transformada de Fourier inversa de la salida se obtiene la imagen deseada.

Figura 3.1: Funcionamiento de un sinema lineal. En (a). la salida del sictema es la convolución de h(r,y) con Is rnial de mhda. En R). 18 d i d a es el pmduclo

de Hod,") por 18 señal de cnlrada.

3.2.2 Técnicas e n el Dominio Espacial El término dominio espacial se refiere al conjunto de puntos que componen una imagen y

las técnicas en el dominio espacial son procedimientos que operan directamente sobre dichos puntos. El filtrado da como resultado una nueva imagen e información acerca de la misma.

El filtrar una imagenfconsiste en aplicar una transformación T de forma que se obtenga una nueva imagen g. El efecto de T sobref es acentuar o disminuir ciertas características Las funciones de procesamiento de la imagen en el dominio espacial pueden expresarse como

21

Page 32: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

------- -I_ -- - --

I

CAPíTULO 3 PIEPROCESAMIENTO DE LA I u 4 GEN

d k Y ) = T.(kY)l

donde f(x,y) es la imagen de entrada, g(x,y) es la imagen procesada y 7d es un operador que actúa sobref, definido en algún entorno de (x,y) La aproximación principal para definir un entorno alrededor de (x,y) es emplear una máscara cuadrada o rectangular centrada en (.,y), como se muestra en la figura 3 2 Aunque a veces se empleen otros tipos de entornos, tales como aproximaciones a un círculo, los entornos cuadrados y rectangulares son los más utilizados por su facilidad de implementación

Figura 3.2 MPsuri de 3x3 8Irededor de un punto ( x y ) de una imagen.

El centro de la máscara (también llamada planfilla, ventana ofilfro) se mueve punto a punto comenzando, por ejemplo, en la esquina inferior izquierda La idea general consiste en determinar g en un punto (x,y) a partir de los valores de f en un entorno predefinido de (x,y) El empleo de máscaras espaciales para el procesamiento de las imágenes se denomina frecuentementefiltrado espacial y las propias máscaras se denominanfiltros espaciales

Básicamente, una máscara es una pequeña cuadrícula Cada celda de la máscara tiene asociado un valor El conjunto de valores (matriz de pesos w ilustrada en la figura 3 3) determina la naturaleza del proceso a desarrollar sobre la imagen Por ejemplo, si se desea aumentar el contraste en una imagen (tomada con iluminación deficiente), entonces la matriz w deberá tener los valores adecuados para obtener una imagen mejor que la original

'Nótese la analogis del opmidor T m el dominio espacial mn 18 función de <nmfermcia H a el dominio de l a frecuencia

22

Page 33: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

-~ - - .. ~. . - - - -. ~

CAPITULO3 . PREPROCESAMlE~O DE U luAGEN

En general, las técnicas espaciales de filtrado operan directamente sobre los puntos de la imagen y. sus vecinos. El nuevo valor de cada punto en la imagen resultante es la sumatoria del producto de los puntos dentro de la máscara por el peso correspondiente. Por ejemplo, para una'máscara de mxn, el nuevo.valor de un punto @,y) será:

g(x,y) =A,%// +A2%12 + ... + fm"%mn

Dondef,,. 5 2 , ... , fmn son los valores de los puntos en la imagen tomando como referencia su posición dentro de la máscara utilizada. Esta máscara se aplica a cada punto de la imagen, de forma que finalmente se realiza una convolución entre la imagen original y la máscara.

A continuación se muestra una clasificación básica de los tipos de filtros utilizados para atenuar o realzar características en la imagen.

Filtros Atenuantes

Estos filtros atenúan o eliminan las componentes de alta frecuencia a la vez que dejan inalteradas las bajas frecuencias Las componentes de alta frecuencia caracterizan los bordes y demás detalles muy marcados de la imagen, y por ello el efecto es el hacer más borrosa la imagen $Jn ejemplo de este tipo de filtros es el paso bajo ilustrado en la figura 3 4(a).

Filtros Realzantes I

Estos filtros atenúan o eliminan las componentes de baja frecuencia. Como se muestra en el ejemplo que se muestra a continuación. las componentes de baja frecuencia caracterizan el fondo (pixeles con un mismo valor) de la imagen asi como detalles borrosos (pixeles cuyo valor es muy cercano al de los pixeles del fondo). El resultado neto es una aparente

23

Page 34: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 3 PFZPROCESAMIENTO DE L4 IMAGEN

- X 1 ;I 9

1 I I

- X I Fi 9

-1 -1 -1

Figura 3.4: a) Filtm paw bajo. b) Film paso ano.

Por ejemplo, suponer que los pixeles de una subimagen de 3x3 contiene los siguientes valores en niveles de gris:

f&Y) =

y se le aplica el filtro paso bajo de la figura 3 4(a) al pixel del centro Entonces la subimagen resultante es la siguiente

g&Y) = pJq Puede apreciarse claramente como disminuye el nivel de gris en el punto central de la máscara Por lo tanto, aplicada esta máscara a cada punto de la imagen, se obtiene una imagen más borrosa Nótese como un fondo uniforme no es perturbado por este filtro dado que los valores de gris no cambian

Considerando ahora un fondo uniforme se puede tener una subimagen como la siguiente

que aplicándole el filtro paso alto de la figura 3.4 al punto central de la subimagen, da como resultado:

24

Page 35: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

.... ... - - - - __ -- - -

!

CAPiTULO 3 PREPROCWIEhTO DE LA I M G E N

t El valor‘lobtenido indica claramente como este filtro disminuye un fondo uniforme de la imagen al mínimo nivel de gris (blanco) El efecto por consecuencia es la agudización de los detalles en la imagen.

3.3 ELIMINACIÓN DE RUIDO

El objetivo de esta etapa es eliminar el ruido (ejemplificado en la figura 3 5 ) asociado a la imagen Dentro del contexto del problema a resolver se considera como ruido aquellos puntos que están aislados del dibujo Considerando esta característica, se hace un filtrado de la image: utilizando una ventana cuadrada como la representada en la figura 3 5

80 ...........................

........................ El La ventana se desplaza sobre la imagen de izquierda a derecha y de abajo hacia arriba. En

cada posibión se determina si los puntos encerrados por la ventana tienen conexidad con puntos fuera de la ventana. Si no hay conexidad y la cantidad de puntos dentro de la ventana no rebasa un límite establecido, entonces dichos puntos son considerados como ruido y son eliminados de la imagen. Cabe aclarar que el algoritmo no distingue si los puntos pertenecen o no pertenecen a un segmento de línea.

Para establecer las dimensiones de la ventana utilizada para el filtrado, así comd para definir la cantidad de puntos que pueden ser considerados dentro de la ventana, se utiliza un parámetro 18 que puede ser establecido interactivamente por el usuario del sistema. Por ejemplo, para una n=2, la ventana será de área 2x2 y el número máximo de puntos permitidos dentro de, la ventana será de 2 (esto quiere decir que se borran agrupaciones de hasta 2 pdntos).

25

Page 36: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

92

Page 37: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

!

so : 1 :.: .__.....__.. <..._...

’ .

CAP~TULO 3 PREPROCES4MIEhTO DE U IMAGEN

; ,..... #.#.?? .:.... I..;l. .................o..

Figura 3 8 Inlrrfamcia de limas punleadas ni Is el~rnmaeih de mido

Considerando los conceptos de “ventana” y “conexidad”, se puede comprobar que dado que con el parámetro n se establece el tamaño de ventana, entonces el problema se resuelve disminuyendo su valor hasta que la ventana ya no pueda encerrar un segmento de línea punteada sin que se pierda la conexidad con puntos fuera de la ventana

Sin embargo, se puede dar el caso que debido al digitalizador se generen segmentos muy pequeños de linea punteada Esto podría forzar al usuario a no hacer una selección óptima del parámetro n, provocando con esto un pobre desempeño en la eliminación de ruido En este caso.’/el valor de n pudiera ser tan pequeño que algunas acumulaciones de puntos de ruido mayores a ?I no serían eliminadas de la imagen, para lo cual, se recomienda que si no se pierde mucho detalle en la imagen, entonces se seleccione un valor mayor paran

3.4 DESCRlPCldN DEL ALGORITMO PROPUESTO

El algoritmo seleccionado e implementado en lenguaje C [LIBRE931 utiliza técnicas de filtrado en el dominio espacial debido a que se hacen convoluciones de la imagen con un filtro basado en la detección de no conexidad. A continuación se dan las principales características del algoritmo: 1) En este algoritmo se utiliza un parámetro n cuyo valor puede ser asignado

interactivamente por el usuario del sistema de tal manera que se pueda eliminar la mayor cantidad de ruido posible. Por omisión el valor de n es igual a 2.

2) Se dan n barridos a la imagen con tamaños de ventana variables. Se comienza con una ventana de superficie unitaria y se termina con una ventana de superficie ?m. Esto se

/I

21

Page 38: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 3 PREPROCEUA4lENTO DE LA IMAGEN

hace para que con las ventanas.más pequeñas se eliminen puntos de ruido de dificil acceso tales como los que se encuentran localizados entre caracteres.

3) En cada posición de la ventana se chew si existe conexidad por arriba, abajo, izquierda y derecha de la ventana.

4) Si no'hay conexidad y además la cantidad de puntos encerrados por la ventana no rebasa el valor de n, entonces los puntos se consideran como ruido y se borran de la imagen. La comparación con el valor de n se hace para evitar borrar puntos que pertenezcan a un componente del dibujo como por ejemplo un segmento de línea punteada que puede llegar a cumplir el criterio de no conexidad.

5 ) Nótese como el parámetro n se utiliza tanto para establecer el tamaño de ventana como para fijar un límite a la cantidad de puntos a considerar como ruido dentro de la ventana.

A continuación se analiza la complejidad del algoritmo. Considerando que se tiene una imagen de n pixeles y se fija una ventana de área A, entonces se hacen A comparaciones para contar los pixeles encerrados por ¡a ventana. Además, por el paso 2 del algoritmo, se tienen que recorrer la imagen k'veces y~dado que esto se tiene que hacer para cada pixel en la imagen entonces la complejidad del algoritmo es kAn - n, es decir, es lineal en n. La complejidad sería cuadrática sólo en el caso que A 2 n, caso que no puede darse dado que se están eliminando sólo.puntos aislados de ruido.

il El probjema principal al que se enfrenta este algoritmo es que un dibujo puede contener

elementos no conexos como son las líneas punteadas. Esto provoca que para un valor dado de n se pueda tener interferencia de las líneas punteadas con los puntos de ruido contenidos en la imagen.

3.5 RESULTADOS

Considere una imagen de entrada al sistema tal como se presenta en la figura 3.9(a). Puede apreciarse el ruido generado por el digitalizador. En la figura 3.9(b) se muestra la misma imagen después del proceso de eliminación de ruido para una n=3. Para este valor de n no hay interferencia con las líneas punteadas y se puede apreciar la eliminación de los puntos aislados de ruido. En el capítulo 7 se presentan más ejemplos prácticos de esta etapa de eliminación de ruido indicando tiempos de ejecución y complejidades algorítmicas.

28

Page 39: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

CAPÍTULO 3 PREPROCESLUIENTO DE LA Iu4GEN

Figura 3 9 a) Imagen ruidosa b) Imagen h u e s del p r o c ~ de elimmanón de mido para n=3

3.6 COMENTARIOS FINALES

La técnica utilizada garantiza la eliminación completa de pixeles aislados de ruido, sin embargo no considera el ruido generado en el engrosamiento de líneas Es oportuno comentar que la generación de ruido es inversamente proporcional a la intensidad de brillo con que se ajuste el digitalizador Por otro lado, si se ajusta el dispositivo a un valor4 de intensidad muy alta, se pierde conexidad en los puntos que conforman algunas líneas, provocando imprecisión en la interpretación Por ejemplo, no se detectana el polígono en el cual interviene una línea que perdió conexidad durante el proceso de digitalización del dibujo

Es interesante observar como el mejoramiento de la imagen libera de carga computacional a las siguientes etapas del proceso de interpretación Por ejemplo, dado que durante el procesamiento sólo se consideran los puntos negros en la imagen, entonces por consecuencia la eliminación de puntos aislados de mido mejorará el tiempo de respuesta del sistema Esto se demuestra dado que la complejidad de los algontmos propuestos quedan en función de la cantidad de pixeles contenidos en la imagen '

I Otro punto importante es que un mejoramiento de la imagen hace posible una mayor

confiabilidad en las decisiones tomadas durante el proceso de interpretación y por lo tanto mayor precisión en los resultados obtenidos debido a que durante el proceso no se tomarán en cuenta los puntos de mido eliminados en esta etapa y, por lo tanto, la participación de

29

Page 40: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPíTULO 3 PREPROCES4MIEhTO DE 1-4 IMAGEN

dichos puntos sera nula en la toma de decisiones Como ejemplo, podemos tener un punto aislado de ruido colineal a una línea que durante el proceso pueda ser considerado como parte de dicha línea

Dado que esta etapa es interactiva, el usuano der sistema podria fijar un valor de n que permita eliminar puntos que formen parte de segmentos de línea punteada Esto provocaria la eliminación de líneas que formen parte de polígonos dentro del dibujo El problema se resuelve si el usuario vuelve a correr el proceso con otro valor den

En conclusión, el usuario del sistema deberá realizar una adecuada selección de los parámetros mencionados (intensidad de brillo y valor del parámetro n) al aplicar la etapa de eliminación de ruido para lograr un mejor desempeño del proceso de interpretación

En el siguiente capítulo se describe la segmentación del texto y los ejes de proyección contenidos en la imagen

30

Page 41: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 4 SEGMENZACI~N DE u IMAGEN

IF) .. 1 ............

CAPíTULO 4

+AJ* t I

I ............

SEGMENTACIÓN DE LA IMAGEN

!-Elr ,, /’

1 y ..............

!

Imagen libre de tern y ejes de pmyecci6n

.,.,a ..I../..

............ ........... ............... Imagen del tcxio

I Imagen de ejes de pmyncibn

~~ ~~~~~~~

En este capítulo se describe la estrategia utilizada para segmentar el texto asociado a la imagen de entrada al proceso de interpretación. Se describen los atributos del texto utilizados y se describe el algoritmo implementado. Se describe también la estrategia utilizada para segmentar los ejes de proyección así como una descripción del algoritmo. Fina1mente:se presenta una sección de resultados y una de comentarios finales.

Page 42: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 4 SEGMENTACI~N DE LA IMAGEN

4.1 INTRODUCCIdN

La segmentación es el proceso que subdivide una imagen en sus partes constituyentes u objetos [GONZÁLEZ92] Como ejemplo se tidne a los diferentes componentes (acotaciones, los ejes de proyección, el texto, etc ) que conforman a un dibujo procesado en este trabajo I

La segmentación es una etapa critica ya que determina el eventual éxito o fracaso de un sistema de VPC. De hecho, la segmentación rara vez llega a alcanzar una solución satisfactoria Por esta razón, se debe poner un considerable cuidado en aumentar la probabilidad de tener una segmentación robusta

Los algoritmos de segmentación de imágenes monocromáticas generalmente se basan en una de las dos propiedades básicas de los valores del nivel de gris discontinuidad y similaridad En la primera categoría, el método consiste en dividir una imagen basándose en los cambios bruscos de nivel de gris Las principales áreas de interés de esta categoría son la detección de puntos aislados y la detección de líneas y bordes de una imagen Los principales métodos de la segunda categoría están basados en la umbralización, crecimiento de regiones, y división y fusión de regiones [GONZÁLEZ92] A continuación se describen los métodos de la segunda categoría

Una imagen umbralizada g(x,y) se define como

dondef(x,y) es la imagen a umbralizar y T es el umbral De este modo los puntos marcados con 1 corresponden a objetos, mientras que los puntos marcados con O corresponden ai fondo de la imagen, o viceversa

Como su nombre indica, el crecimiento de regiones es un procedimiento que agrupa puntos o subregiones dentro de regiones más grandes La sencillez de este método radica en la ugregac~otz depxeIe.s, que comienza con un conjunto de puntos “generadores” a partir de los que van creciendo las regiones al agregar a cada uno de estos puntos los pixeles próximos que tienen propiedades similares (como nivel de gris, textura, color)

El método de división y fusión de regiones consiste en subdividir la imagen inicialmente en un conjunto de regiones arbitrarias disjuntas y después fusionar yIo dividir las regiones intentando satisfacer las siguientes condiciones cada punto en la imagen debe estar en una región, debe haber conexidad entre los puntos de una región, las regiones deben ser disjuntas, los puntos de una región deben satisfacer predicados de similaridad y la unión de dos regiones no debe satisfacer dichos predicados indicando con esto que las regiones son diferentes

32

Page 43: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

4.2 SEGMENTACldN DE TEXTO

4.2.1 Introducción

El objetivo de esta etapa es segmentar el texto contenido en la imagen y dejarlo listo para aplicar una etapa posterior de reconocimiento de texto’. El texto segmentado se salva como una imagen.

Para lograr el objetivo se hace un filtrado espacial de la imagen utilizando una ventana cuyo tamaño se puede establecer interactivamente por el usuario del sistema, permitiendo de esta manera segmentar texto de dimensiones variables manejando la independencia de la escala con la que sea trizado el texto sobre el dibujo. El tipo de texto tampoco afecta porque los atributos utilizados para su detección no están basados en la forma del caracter. El sistema sólo segmenta cadenas de texto orientadas horizontalmente y de longitud mayor que un’caracter, aunque es simple ampliar el sistema para segmentar cadenas de texto orientadas verticalmente.

En el filtrado de la’imagen se utilizan cuatro atributos que caracterizan al texto contenido en el dibujo. Durante el desplazamiento de la ventana sobre la imagen se valida que los pixeles encerrados por la ventana cumplan con los atributos seleccionados para que puedan ser catalogados como caracteres. Cabe hacer notar que si no existieran las lineas punteadas, con el atributo de no conexidad seria suficiente para segmentar el texto. Sin embargo, dado que los segmentos de linea punteada pueden ser confundidos con texto, entonces se hace necesario utilizar otros atributos para poder discriminar entre un caracter y un segmento de línea punteada.

4.2.2 Atributos del Texto utilizados para su Identificación

A continuación se describen los atributos del texto utilizados para su identificación. I ) No Conexidad. Definiendo a los caracteres como agrupaciones de puntos no conectados

con el resto del dibujo. entonces se puede aprovechar esta característica para segmentar el texto. Como ejemplo. en la figura 4.1 puede apreciarse cómo los puntos que conforman al caracter ‘M’ (encerrado por la ventana V , ) cumplen con este atributo. ‘Sin embargo. nótese en la figura 4. I que también los segmentos de línea punteada (como el encerrado por la ventana VZ) pueden satisfacer esta característica, por lo cual se hace necesario considerar las dimensiones de un caracter.

2) Dimensiones de un Csracier. Como se muestra para el caracter ‘O’ de la figura 4.2, esta caracteristica define el ancho y alto de un caracter. Estas dimensiones están determinadas por e¡ tamaño de la ventana.utilizada, es decir, si un caracter es de dimensiones mayores a las. de la ventana, simplemente no es. segmentado de la imagen. Este atributo permite discriminar entre caracteres y segmentos de línea punteada debido a que normalmente el grosor de una línea punteada es menor a las dimensiones de un caracter. Sin embargo,

33

Page 44: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 4 SEGMENTACI~N DE 01 IMGEN

segmentos inclinados de línea punteada pueden cumplir con los dos atributos anteriores, por lo cual se hace necesario considerar un tercer atributo que es la cantidad de pixeles que conforman al supuesto carácter (conjunto de pixeles encerrado por la ventana)

3) Cantidad de Pixeles que Conforman un Caracter Este atributo del texto se refiere al número de pixeles que necesita un caracter para su despliegue; por ejemplo, el caracter ' 1 ' de la figura 4 2 de la ventana apuntada por V, necesita de 8 pixeles para su despliegue como se puede ver en la ventana ampliada En general esta cantidad es mayor para un caracter que para un segmento de línea punteada, salvo el caso que las líneas punteadas sean muy gruesas (en este caso las líneas punteadas podrían ser segmentadas junto con el texto) Por otro lado, los cruces entre líneas punteadas pueden cumplir con los tres atributos ya mencionados, por lo cual se hace necesario especificar el siguiente atributo para poder discriminar

4) Umbral de Separación entre Caracteres Con este atributo se aprovecha la característica de que en general el umbral de separación entre caracteres es muy pequeño en comparación con la separación entre dos cruces de líneas punteadas como se puede apreciar en las ventanas apuntadas por Vs de la figura 4 1. Sin embargo, cuando en un renglón de la imagen se detecta sólo un cruce (por ejemplo en una cota vertical), éste podría ser confundido con texto debido a que no se puede obtener el umbral de separación, esta característica limita al sistema a sólo segmentar cadenas de texto de longitud mayor a un caracter

34

Page 45: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

i i

i I

I

I

I I

I i !

I

I

i

-- -__- - - ~.

CAPITULO 4 SEGMENTACI~N DE u IMAGEN 1

Figura 4.2: Ejemplo de'wmpresión de v m w y canlidad* de pixeln que wnfaman un -der. Nóise enno 1. vmtuu -ida delimaa c m pmisión Iss : dimmsiaies del cara&. La ventana ampliada apuntada par V ejemplifica el atnbuio 3, de tal manere,qus al wader ' I ' Io

dman oeim pixels.

4.2.3 Descripción del Algoritmo Propuesto

Para lograr la segmentación del texto3, el algoritmo utiliza técnicas de filtrado en el dominio. espacial utilizando una ventana y los atributos del texto descritos en la sección 4.2.2. A continuación se dan las principales características del algoritmo: 1) La ventana utilizada es cuadrada. Su tamaño se establece interactivamente por el usuario

del sistema (por omisión es un cuadrado de lado igual a 10 pixeles). La ventana se desplaza de abajo hacia arriba y de izquierda a derecha sobre la imagen.

2) Al inicio de cada renglón4 de la imagen, el algoritmo comienza por contabilizar los posibles caracteres que existen. Esta contabilización se realiza considerando los atributos del texto descritos en la .sección 4.2.2.' Si se contabiliza sólo un posible caracter, entonces se pasa al siguiente renglón; si se contabiliza más de un posible caracter, entonces se procede a segmentarlos de la imagen pasando al paso 3.

3) Para la posición5 actual de la ventana, el algoritmo checa si los puntos encerrados son conexos con el resto del dibujo. Si no existe conexidad, entonces los puntos encerrados

35

I 36

Page 46: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPíTULO 4 SEGMEMACI~N DE LA IMAGEN

En síntesis, la estrategia completa consiste en aplicar los siguientes pasos I ) Segmentar líneas punteadas aplicando el criterio de no conexidad 2) Segmentar ejes de proyección aplicando el criterio de conexidad por un lado de la

ventana. 3) Reintegrar a la imagen las líneas punteadas segmentadas en el paso 1.

Es importante mencionar que si se pierde conexidad entre los puntos que conforman una línea que forma parte de polígonos, entonces dicha línea es eliminada de la imagen debido a que cumple con el criterio de no conexidad utilizado para segmentar ejes de proyección Esta pérdida de conexidad puede ya estar contenida en el dibujo o que se origine durante la digitalización debido a la intensidad de brillo con la que se ajustó el digitalizador

4.3.3 Descripción del Algoritmo Propuesto

Para segmentar los ejes de proyección, el algoritmo utiliza técnicas de filtrado en el dominio espacial utilizando la estrategia descrita en la sección 4 3 2 A continuación se dan las principales características del algoritmo I ) Una ventana cuadrada se desplaza de abajo hacia amba y de izquierda a derecha sobre la

imagen Primeramente se realiza la segmentación de líneas punteadas para aquellos puntos encerrados por la ventana que no mantengan conexidad con el resto del dibujo como se muestra en la ventana apuntada por V2 de la figura 4 1

2) Como siguiente paso se procede a segmentar los ejes de proyección explotando la característica de que las líneas que los conforman no tienen conexidad por uno de sus extremos y por lo tanto aplicando el criterio de conexidad por un lado de la ventana, como se muestra en la ventana apuntada por Vi de la figura 4 3, se logra el objetivo de segmentar los ejes de proyección

3) El último paso consiste en reintegrar a la imagen, las líneas punteadas segmentadas en el paso 1 Esto se logra gracias a que cada uno de los puntos que pertenecen a líneas punteadas conserva las mismas coordenadas que tenían en la imagen antes de su segmentación Por lo cual haciendo un mapeo de estas coordenadas a la imagen original, se logra reintegrar las líneas'punteadas a la imagen original

Cabe hacer notar que el algoritmo tiene que realizar un intenso procesamiento de la imagen (dos segmentaciones y un restablecimiento de la imagen) Por lo cual, esta etapa del proceso de interpretación es la que tiene un tiempo de respuesta un 50% mayor. en promedio, que las demás

La complejidad del algoritmo se puede deducir de la siguiente manera Para la segmentación de líneas punteadas se tiene un tiempo constante k, en la validación de conexidad que aplicado en cada pixel de los n que contiene la imagen se tiene un tiempo de k,n. El mismo proceso se utiliza para segmentar ejes de proyección, de lo cual resulta un tiempo k g . En la reintegración de líneas punteadas se tiene un tiempo dado por ?I, dado que el tiempo constante generado por el mapeo de pixeles es despreciable El tiempo total durante esta etapa del proceso de interpretación viene dado por

k,n + k2n + n - Kn

38

Page 47: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO 4

-

SEGMEhRACIÓNDE LA IMAGEN

De donde la complejidad del algoritmo es lineal en n

4.4 RESULTADOS

Como entrada al proceso de segmentación de texto y ejes de . yecció imagen en la figura 4.4 que ya pasó por la etapa de eliminación de ruido.

t * o -4-

I,... .0...‘#. 1

i “,..,..O...,

Figura 4.4 lmagm rul de &da al pmcrno de sepnmlaciái. A & ¡maga ya se le aplicó la eups de eliminación de mida

mu stra L

39

Page 48: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

.--- - - - ___

CAPíTULO 4 SEGMENTACIdN DE LA IMAGEN

i

i

En la figura 4.5 se muestra una imagen después del proceso de segmentación de texto. Nótese la’permanencia de un cafacter en la vista lateral debido a que su tamaño fue mayor al de los demás. En la figura 4.6 se aprecia la imagen del texto segmentado a la imagen de la figura 4.4,.

8 . ............. 2 6

I.

I ,

............ ........... Fi.gura 4.5: h a w d q u & de aplicar la e(apa de segmnentaciOn de texto. Nótse la pmnanmcia de un

. d e r debido a que fue mayor al tamaño de vmlana Utilizado.

Figun 4.6 Imagen del tea0 wgmrmado.

Una vez segmentado el texto se procede a segmentar los ejes de proyección En la figura 4 7 se presenta la imagen después de aplicar el proceso de segmentación a la imagen de la figura 4.5. Finalmente en la figura 4.8 se presenta la imagen de los ejes de proyección segmentados a la imagen de la figura 4.5.

Figup 4.R: Imagen de Ius ejes de proyscción segmmtados.

40

Page 49: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 4 SEGMEWACI~N DE LA IMAGEN

4.5 COMENTARIOS FINALES

El objetivo de este proceso de segmentación es dejar libre a la imagen de objetos que intefieran con un mejor desempeño de las etapas subsecuentes y por lo tanto aumentar la probabilidad de obtener una descripción precisa del dibujo. Estos objetos incluyen las cadenas de texto y los ejes de proyección, estos Últimos se utilizan como referencia en la , etapa final de clasificación de polígonos

Es importante recalcar que los elementos gráiicos segmentados quedan guardados en imágenes que mantienen la misma escala que la imagen original La imagen del texto es un producto del sistema que puede utilizarse para una posterior etapa de reconocimiento de texto así como la detección de relaciones espaciales entre el texto y el resto de los elementos gráficos en el dibujo .

Otro punto importante a recalcar es que el sistema sólo segmenta cadenas de texto de longitud mayor que un caracter debido a la interferencia de los cruces entre líneas punteadas contenidas en el dibujo.

Para evitar segmentar otras líneas que no sean las que caracterizan a los ejes de proyección, el dibujo deberá digitalizarse ajustando el scanner a una intensidad de brillo que evite la pérdida de conexidad entre los puntos que conforman a una línea ya que esto provocaría que alguna línea que forma parte de polígonos en el dibujo, sea segmentada junto con los ejes de proyección debido a que también cumpliría con el criterio descrito en la sección 4.3.2 Una alternativa para disminuir la probabilidad de pérdida de conexidad es digitalizando la imagen en niveles de gris y aplicar una técnica de ecualización por histograma6 con el objetivo de obtener una imagen binaria

Se puede concluir entonces que para obtener resultados más precisos y confiables del proceso de interpretación, es necesario aplicar esta etapa de segmentación Por otro lado, el desempeño del sistema depende también de factores externos que hasta el momento no son considerados por el sistema Estos factores pueden ser causados por una mala digitalización del dibujo (por ejemplo, un mal ajuste del brillo ocasiona perdida de conexidad en las líneas), otro factor podria ser que el dibujo no cumpla con las características requeridas por el sistema (por ejemplo, que el texto no se traslape con las líneas y que el dibujo no contenga líneas curvas)

Aunque ya existen publicaciones sobre segmentación de texto más completas pASTURI90] que el desarrollo que se presenta aquí, se considera que la técnica de segmentación de texto propuesta en este trabajo es suficiente para esta aplicación y además es computacionalmente eficiente ya que su complejidad depende linealmente de la cantidad de pixeles en la imagen

41

Page 50: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP~TVLO 4 SEGMEhTdCIbNDE LA IMAGEN

Otra forma de segmentar el texto es utilizar reconocimiento de texto pero ese enfoque es más complejo y no se requiere en este caso.

En el siguiente capítulo se muestra la etapa de detección y adelgazamiento de líneas.

i

42

Page 51: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 5 DETECCIÓN Y ADELGAZAMIENTO DE LiNEAS

CAPíTULO 5

DET ADELGAZAN

Imagen de entrada

ECCIÓN Y IIENTO DE LíNEAS

Imagen de lac l ines detectadas y adelgaza&

El objetivo de este capítulo es mostrar la etapa de detección y adelgazamiento de líneas Se describe el significado de la transformada de Hough para detección de líneas rectas Se presenta la descripción de los diferentes tipos de líneas que se generan en la transformación de la imagen. Aprovechando los resultados arrojados por la técnica de Hough se describe una estrategia de adelgazamiento de líneas Se da una descripción del algoritmo y finalmente se presentan los resultados obtenidos y comentarios finales

43

Page 52: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP~TüLO 5 DETECCI~N Y ADELGAZAMIENTO DE WNUS

5.1 INTRODUCCI~N

El objetivo en esta etapa del proceso de interpretacion es agnipar los puntos que conforman a cada una de las rectas contenidas en la imagen y de esta manera obtener una descripción que se utilizará como base para la etapa de detección de polígonos Para lograr el objetivo se dispone de métodos como el que se describe a continuación

Suponer que dados n puntos en una imagen se desea encontrar subconjuntos de estos puntos que descansan sobre líneas rectas Una posible solución es suponer que existe una recta para cada par de puntos en la imagen, en seguida se debe encontrar el subconjunto de puntos en la imagen que satisfacen la supuesta recta El problema con este procedimiento es que involucra encontrar n(n-1)/2 - n’ rectas y entonces realizar (n)(n(n-1))/2 - n3 comparaciones de cada punto de todas las líneas Este método es computacionalmente prohibitivo aún en las más triviales aplicaciones Hough 11962) propuso un método alternativo, comúnmente conocido como la trun$imuúu de Horrgh[YOUNG94]

5.2 TRANSFORMADA DE HOUGH

La transformada de Hough se basa en una transformación de la imagen del espacio cartesiano al espacio paramétrico con el fin de realizar la detección de las líneas contenidas en la imagen de entrada A continuación se abordarán las características de esta técnica

Considerar un punto (x,, yJ y la ecuación de la línea recta en su forma pendiente- intersección,

‘ y, = mx, + b

Escribiendo esta ecuación en su forma paramétrica b = -xw + y , se puede apreciar (como lo muestra la figura 5 1) que cada punto del plano cartesiano es una línea (única) en el plano paramétrico y además que todos los puntos de una línea en forma cartesiana se mapean a un punto único en el plano paramétrico, dado que las rectas del plano paramétrico que representan a los puntos sobre la misma recta del plano cartesiano, se interceptan en el punto (m ’, b 7 del plano paramétrico Esto sugiere un procedimiento de cálculo para identificar a todas las rectas que ocurren en el plano cartesiano, el cual consiste en recorrer el plano cartesiano haciendo lo siguiente

para cada pixel del plano cartesiano encontrar su recta correspondiente en el plano paramétrico Dicha recta puede ser recorrida a lo largo de la dimensión m y cada punto discreto (m ’, b ’), por donde dicha recta pasa puede ser contabilizado Como todas las líneas del plano paramétrico correspondientes a los ountos de la misma línea del olano cartesiano, se interceptan entre sí en el punto (m’, b’) del plano paramétrico que representa a la línea del plano cartesiano, este punto será contabilizado tantas veces como muestras discretas de la linea del plano cartesiano sean tomadas

44

Page 53: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 5 DETECCION Y ADELGAZAMIENTO DE U N ~ S

* b b’

a v a p ” b = -&m + y;

b = -am + y~ y = m ’ x + b ’ . .

Plano P ~ ~ t I i C O m Plano Cartesiano

~igura 5 .1: Trnnsfamaci6n 61 piano artesi& PI plano parnmeuico. En 11 figura se m u e m la Uansfomaciái de Im puntos c urn recia del plano artesiano a1 plano psrnmetnm. PIIS eíectm de ciarid+ iinicame!~te se m u e m tres puntos de l a m E (5). la in-ciái fm’,b> indica la pmdimle y a&& al origen de 18 rsU m d a m (a). Nólcu que por es intmcccih, pbparán tatas aquellas linea qUe

(3.

El atractivo computacional de la transformada de Hough surge debido a que se puede trabajar sobre un espacio discreto, resultado de la divisíón del espacio paramétrico en las denominadas celdai acumuladoras (matriz de acumuladores) que se muestran en la figura 5.2, donde (mm- m,iJ y &,,- b,iJ son los rangos esperados de los valores de la pendiente y ordenada.

generadas por todas aquelios puntos que pnterreni a la rrm rppresmtrda m

b

Figura 5.2: Divisi6n del cspleio paramétrico para utili,slo et 1. Vansfnmada de Hough. N61w 18 delimitación del ~ p a c i o

p” los rangos de m y h.

En general, una celda localizada en (i, J) de la matriz de acumuladores, con valor de acumulador A($, corresponde a la celda asociada con las coordenadas (m. b,J del espacio paramétrico. Inicialmente estas celdas están puestas a cero.

4s

Page 54: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

t

I

CAPITULO 5 DETECCI~N YADELGAWIENTO D E L ~ N U S

El procedimiento de cálculo consta de los siguientes pasos: 1) para cada punto (xk. YX, en el Plano de la imagen, ie fija el parámetro m igual a cada uno

2) Resolver para la correspondiente b utilizando la ecuación b=-x# + 3) si b no se sale del rango, entonces redondearla a un valor permitido en el eje b e

Al terminar este procedimiento, un valor de M en A(i, J] corresponde a M puntos del plano cartesiano sobre la líneay = m~ + b? En particular, para este trabajo de tesis, un valor de M 28punfos significa que el acumulador contiene una recta. La precisión de la colineandad' de estos puntos está determinada por el número de subdivisiones en el plano paramétnco.

de 10s valores permitidos sobre el eje m.

incrementar el acumulador A@, m) = A@. m) + 1..

Dado que en este trabajo de tesis se aplica la tecnica.de Hough a una imagen que contiene varias líneas rectas, entonces se puede dar el caso de que se acumulen puntos que pertenecen a diferentes líneas; estos acumuladores pueden ser detectados y eliminados en base a la detección de huecos entre los puntos acumulados. Otro caso que se puede dar debido a la discretización del plano paramétnco es que para una celda que define a una línea del plano cartesiano, se pueden acumular puntos de esta línea en las celdas adyacentes; el efecto es que al final de la transformación se detectan segmentos de una misma línea en diferentes celdas. Estos casos se explican en más detalle en la sección 5.4.

Un problema con usar la ecuación y = mx + b para representar una recta es que la pendiente tiende a infinito conforme la recta tiende a la posición vertical. Una forma de superar esta dificultad es usar la representación normal de la recta, dada por

p = xcosb + ysene

Una forma de especificar una línea en función de los parámetros p y 0 es como sigue: en base a la figura 5.3 (a), suponer que una persona se encuentra parada en el ongen del plano cartesiano, volteando hacia el eje x positivo (a la derecha de la pantalla). Dicha persona gira un ángulo' 0 hacia su costado izquierdo (eje y positivo) y avanza hacia adelante una distancia p (medida en pixeles) y al llegar al extremo gira 90" hacia uno de sus costados y avanza hacia adelante; esta persona ah.ora estará caminando a lo largo de una línea especificada por los valores de p y 8.

Se puede ;apreciar (como lo muestran las figuras 5:4(a) y 5.4(b)) que cada punto del plano cartesiano es una curva senoidal (única) en el plano paramétrico y además que todos los puntos de una línea en forma cartesiana se mapean a un punto único en el plano paramétrico: De donde las curvas senoidales del plano paramétrico que representan a los puntos sobre una misma recta del plano cartesiano. se interceptan en un punto (p', 07 del plano parqétnco. De donde un punto del plano paramétnco representa a la recta que se define en términos de dos (o más) puntos del plano cartesiano. Esto sugiere un procedimiento de cálculo para identificar a todas las rectas que ocurren en el plano cartesiano. el cual consiste en recorrer el plano cartesiano haciendo lo siguiente:

'DOS puntos son miinenla si se nmtmen en in misma h-ayedoris redilinea.

46

Page 55: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

DETECCI~N Y ADELGAZAMIEWO DE LÍNUS

para cada pixel del plano cartesiano encontrar su curva senoidal correspondiente en el plano paramétnco Dicha curva puede ser recomda a lo largo de la dimensión B y cada punto discreto (o’, 07, por donde dicha curva pasa, puede ser contabilizado Como todas las curvas senoidales del plano paramétnco correspondientes a puntos de la misma línea del olano cartesiano, se interceptan entre si en el punto (p’, 07 del plano paramétrico que representa a la línea del plano cartesiano, este punto será contabilizado tantas veces como muestras discretas de la línea del plano cartesiano sean tomadas

01 P~TULO s

El procedimiento de cálculo consta de los siguientes pasos 1) Para cada punto (xk, y$ en el plano de la imagen, se fija el parámetro 8 igual a cada uno

2) Resolver para la correspondiente p utilizando la ecuación p = XACOSB + y p e d 3) Si p no se sale del rango permitido, entonces redondearla a un valor permitido en el eje

Ai terminar este procedimiento, un valor de M en Afi, 1) corresponde a M puntos del plano cartesiano sobre la línea xcos8, i ysenB, = p,. En particular, para este trabajo de tesis, un valor de A4 2 8 puntos significa que el acumulador contiene una recta

de los valores permitidos sobre el eje 0

p e incrementar el acumulador A(p, e) = A(p, e) + 1

En la figura 5 3@), el rango del ángulo 8 va de O a 180°, medido con respecto al eje x El rango de p es la mayor distancia (diagonal) entre dos puntos de la imagen que puede ser calculada por

donde w es el ancho de la imagen y h es la altura. ,

Figura 5.3: Repnsnitafih de parámetms y disrretimih del plano panmicnm para la forma n m l de la rat.. a) Reprcsmtaiión de padmeIms b) DisrretizaObn del plano parametr¡oo.

47

Page 56: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP~TULO s DETECCI~N Y ADELGAZAMIENTO DE L~NFAS

En la figura 5 4 se muestra un ejemplo de la transformada de Hough basada en la ecuación normal de la recta El inciso (a) de esta figura muestra una imagen con cinco puntos etiquetados Cada uno de esos puntos se traslada al plano paramétrico, como se muestra en la figura 5 4(b) El rango de valores de 8 es B O " y el rango del eje p es +d%l para una imagen cuadrada, donde D es la magnitud de un lado de la imagen A diferencia de las rectas generadas con la forma pendiente-intersección de la ecuación de la recta, con la forma normal cada una de las curvas generadas tiene una forma senoidal diferente (La línea horizontal resultante del traslado del punto 1 es un caso especial de una senoidal con amplitud cero ) Nótese que, dado que se trasladó un punto de cada extremo de la imagen, la transformada de Hough de cualquier otro punto en la imagen debería estar entre los límites mostrados en la figura 5 4(b)

La propiedad de detección de colinearidad de la transformada de Hough se muestra en la figura 5 4(c). El punto A denota la intersección de las curvas correspondientes a los puntos 1, 3, y 5 de la imagen. La posición del punto A indica que estos tres puntos están situados sobre una línea recta que pasa por el origen (p = O) y orientada a -45" Similarmente, la intersección de las curvas en el punto B indica que los puntos 2, 3, y 4 están sobre una línea recta orientada a 45", cuya distancia desde el origen es la mitad de la distancia diagonal del origen a la esquina opuesta en la imagen

Finalmente, la figura 5 4 d) indica el hecho de que la transformada de Hough exhibe una relación de adyacencia reflectiva' en los bordes derecho e izquierdo del espacio paramétrico Esta propiedad, mostrada por los puntos A, B, y C en la figura 5 4 d), es debida a que B y p cambian de signo en los límites de I90"

Figun 5 . 4 Ejemplo de 18 uanrfnmada de Hough para la fomia nomial de 1. recia.

Enta pmpiedad se pmmia cuando celdas & puntos adyamites reflejan su imagen tMlo en el eje p i l i v a coma en el negativo del plano parametnm.

48

Page 57: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

i

CAPITULO 5 DETECCI~N Y ADELGAZAMEMO DE L ~ N E A S

Los valores negativos de p en la figura 5 4 (b) pueden explicarse considerando la explicación sobre los parámetros p y Bpara la especificación de una línea Un valor negativo de p significa que después de girar un ángulo 0, la persona avanza hacia atrás del origen (eje y negativo) Esto es equivalente a girar un ángulo extra de 180' y caminar hacia adelante, en otras palabras una línea con parámetros (-p, e) es idéntica a una con parámetros (p, BtI80) Si se consideran los valores negativos de p en la matriz de acumuladores, cada línea sena registrada dos veces (como es el caso de los puntos A y B de la figura 5 4(d)) De hecho, en una implementación eficiente, el intervalo de Bdebena ser de O a 180' y reasignar valores de p y 0 para p i negativas de la siguiente manera

p = - p ' e = e+ 180

Analizando la complejidad del algoritmo, nótese que al subdividir el eje 0 en k intervalos, para cada punto (xk, y$, se calculan k valores de p correspondientes a los k valores posibles de 8. Ya que hay n puntos en la imagen, este método implica nk computaciones Por ello el procedimiento expuesto es lineal en n. Es evidente que si k 2 n, entonces el algoritmo sena de orden cuadrado; sin embargo, esto sólo sucedería si el número de intervalos en el eje 0 es 2 n.

Aunque el enfoque anterior se ha hecho sobre líneas rectas, la transformada de Hough es aplicable a cualquier función de la forma g(x, c) = O, donde x es un vector de coordenadas y c es un vector de coeficientes Por ejemplo, para la forma cartesiana de la ecuación del círculo

(x - CJ' + (y - cd2 = cf

los puntos de una imagen relacionados con un círculo pueden ser detectados utilizando el metodo que se acaba de exponer para la ecuación cartesiana de la recta La diferencia básica es la presencia de los tres coeficientes (C I , c2. y c.t) que generan un espacio paramétrico tridimensional con celdas de forma cúbica y acumuladores de la forma Afi, J, k) El procedimiento consiste en incrementar c, y cz, resolver para que c3 satisfaga la ecuación del círculo y actualizar el acumulador correspondiente a la celda asociada con la tripleta (CJ, c2,

c3) Es evidente que la complejidad de la transformada de Hough es fuertemente dependiente del número de coordenadas y coeficientes de una representación funcional dada

5.3 MATRIZ DE ACUMULADORES

Una vez aplicada la transformada de Hough, la detección de líneas se logra examinando el contenido de las celdas con altas concentraciones de pixeles en la matriz de acumuladores (plano paramétrico discretizado). La relación de continuidad3 entre los pixeles contenidos en la celda determinará si éstos pertenecen a una línea en la imagen

49

Page 58: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

CAP~TULO J DETECCI~N Y ADELGAZAMIE~O DE L~NEAS

La estrategia consiste en que al mismo tiempo que es recomda la imagen en el plano cartesiano, se va generando su imagen correspondiente en el plano paramétrico A final del proceso se tiene una matriz de acumuladores con apuntadores a listas donde se almacenan todos los puntos que pertenecen a una línea recta en el plano cartesiano Dicha matriz de acumuladores tiene las siguientes propiedades a) Las listas asociadas a cada una de las celdas crecen en forma dinámica conforme van

ingresando puntos de la imagen . b) Inicialmente las listas son vacías Al final sólo algunas celdas apuntan a listas que contienen todos los puntos en el plano cartesiano que contribuyen a una línea recta

c) Los valores de los parámetros (p y 9 de la recta contenida en una lista quedan definidos por la posición de la celda en la matriz de acumuladores

En la figura 5 5 se muestra una representación de la matriz de acumuladores con algunas celdas apuntando hacía sus respectivas listas de puntos contenidos en el plano cartesiano Se muestran también los diferentes tipos de líneas detectados por la transformada de Hough

5.4 TPOS DE LINEAS

Partiendo de la matriz de acumuladores como la que se muestra de ejemplo en la figura 5.5, se pueden detectar los siguientes tipos de líneas: continuas, punteadas, “engrosadas”, “fantasmas” y “redundantes”. Las líneas continuas son aquellas que mantienen continuidad entre los puntos asociad0s.a una lista. Las líneas punteadas son aquellas que mantienen un umbral de separación constante entre agrupaciones de puntos contiguos dentro de una lista. Una línea engrosada es un conjunto de segmentos de línea adyacentes que se genera durante el proceso de digitalización del dibujo y se detecta. en el espacio parametric0 por una agrupación de celdas con el mismo valor de Bi Nótese en la figura 5.5 que’una “línea fantasma” está representada por aquella lista cuyos puntos no tienen continuidad ni tampoco son agrupaciones de puntos con un umbral de separación constante. Una “línea redundante” es aquella lista de puntos que ya están contenidos en alguna otra lista.

En la figura 5.6(a) (plano cartesiano) se muestra un dibujo. En la figura 5.6(c) (plano paramétrico) se muestran las representaciones de una “línea fantasma” (celda apuntada por F) y una “línea redundante” (celda apuntada por R) generadas después de hacer la transformación de la imagen. En la figura 5.6(b) se muestran los puntos P,, P2 y Pj del plano cartesiano que dan origen a la “línea fantasma”, Puede apreciarse también en la figura 5.6(c) que la celda apuntada por L representa la línea continua apuntada por L de la figura 5.6(a).

Una “línea.fantasma” se genera debido a que durante la transformación de la imagen del plano cartesiano al plano paramétrico se contabilizan en una misma celda, puntos que pertenecen a diferentes líneas cómo se muestra en la celda apuntada por F de la figura S.~(C); nótese cómo las líneas (del plano paramétrko) correspondientes a los puntos Pi, P2 y PJ (del plano cartesiano) votan en la celda apuntada por F.

El tipo de “línea redundante” se origina por la discretización del plano paraméttnco y se genera alrededor de una celda que define a una línea del plano cartesiano. Por ejemplo, en la figura 5.6(c), la celda apuntada por R representa un’ “segmento redundante” de la linea

so

Page 59: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

CAPiTKJLO 5 DETECCI~N YADELGAZAMIENTO DE ÚNEAS

contenida en la celda apuntada por L. Se puede visualizar también en la figura 5 6(c) que las celdas adyacentes a la celda apuntada por L tienen más probabilidad de tener un segmento redundante que las celdas más alejadas debido a que a estas últimas las atraviesan menos cantidad de líneas Podría parecer redundante aclarar que para que un punto del plano cartesiano pueda contribuir con un voto a favor de una línea en el espacio paramétrico, es necesario que la línea asociada a este punto CNW la celda respectiva Es por esto que el acumulador de la celda apuntada por K en la figura 5 6(c) tendría un valor de 5 votos debido a que atraviesan 5 líneas por dicha celda.

Una “línea engrosada” es un conjunto de segmentos adyacentes que en la matriz de acumuladores se representa como una secuencia de celdas consecutivas con el mismo valor de pendiente como se muestra en la figura 5 5

100.20 100.21 loo. 22

100.25 100.26 100.21 100.30 100.31

IO. 200 II.201 12.202 13.203 14,204 15.205 16.206

~

e

nunteada continua L coordenadps

de puntos m el plano ~ e S i u I 0

450.27 1511.20 140,18 135, IS 120. IO 115. 8 110. 1

Figura J.5: Tipos de iíneaS de<ect.das cm latnnsfomda de Hough. Las liw mtimn los puntos m Ips roordmadis del plano carteriano. NÓlese rn todos los puntos de la linea redundante ya están conimidoJ en 18 lista de 18 línea continua. TamhiRi se pusde apreciar la miinuidad mtre los puntos de una linea continua y 18 discontinuidad nitre los puntos de UM linea puntea&. Los puntos de urn lima fantasma. en general. norigum el p a w h de una línea m t i n ~ a o punten&. Una linea mgmoadsa

detach p” sgnipncinia de celdas m 18 misma 8.

51

Page 60: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

i

I

I

Page 61: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPjTULO 5 DETECCI~N YADELGAZAMEMO DE L~NE.IS

Y

!’ El adelgazamiento de la línea L3 de la figura 5.7(a) se representa en la figura 5.8. En la

figura 5.8(a) se tiene una ampliación del engrosamiento de la linea L3, descomponiéndose dicha línea en los segmentos SI y S2. El objetivo es trasladar todos los puntos del segmento menor (S2) a la trayectoria del segmento mayor (SI). Una vez logrado esto, la línea L3 adelgazada luce como en la figura 5.8@), su respectiva celda acumuladora queda como en la figura 5.8(c), nótese la fusión de las celdas apuntadas por LJ de la figura 5.7(b). Cabe aclarar que el valor del acumulador de la celda apuntada por LS en la figura 5.8(c), no refleja la suma de acumuladores mostrada en la figura 5.7(b) debido a que únicamente se trasladan aquellos puntos del segmento menor que no están contenidos en el segmento mayor.

Para trasladar todos los puntos del segmento menor Sz al segmento mayor SI surge una pregunta La partir de que punto del segmento SI se empezaran a dar de alta los puntos del segmento Sa7 la respuesta es, a partir del punto de intersección con St de una recta perpendicular al primer punto de SI como se muestra en la figura 5 9 Para lograr esto se implementó del procedimiento que se muestra a continuación donde el cálculo de la intersección se hace utilizando determinantes y además considerando que la pendiente de la recta perpendicular Sp (mostrada en la figura 5 9) se calcula con la siguiente igualdad

msp = - I /ms2 = (XI -x$ /(’y2 - y!)

donde ms2 es la pendiente del segmento SZ m.q, es la pendiente de la recta perpendicular ai segmento SZ X I , y,, x2, yz son las coordenadas de dos puntos del segmento SZ

53

Page 62: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPjTVLO 5 DETECCI~N Y A D E L G A W I E ~ O DE ONUS

Y 4

Y

Tomando como referencia la figura 5.9, el proceso para adelgazar una linea es el siguiente: 1) Del agrupamiento de segmentos de línea adyacentes (como SI y Sz) que conforman una

línea engrosada identificar el segmento de mayor longitud (como SI) y obtener su ecuación en la forma M + by + c = O, tomando dos puntos del segmento y aplicando las siguientes igualdades para el cálculo de los coeficientes a, b y c'

2) Para cada segmento menor (como S,) obtener la ecuación de la recta perpendicular en cada uno de sus puntos, tomando dos puntos del segmento y aplicando las siguientes igualdades para el cálculo de los coeficientes a, b y c:

Utilizando determinantes calcular la intersección de la perpendicular con el segmento mayor util/zando las siguientes igualdades.

x = D//D y = DJD

donde D = as, bs,, - as$,,

D2 = aslcsp - DI cslbsp - cspbsl

Page 63: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

sc

Page 64: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTiYLO 5 DETECCl6N Y ADELGAZAMIENTO DE Ú N U S

rectas en el espacio paramétrico. Para cada punto en la imagen, el proceso de cálculo consiste.en tomar todos los posibles valores de 8 dentro del rango permitido y calcular los correspondientes valores de p con la ecuación p = xcos8 + p e n 0 Para agilizar el cálculo de p se hace acceso a una tabla de datos precalculados para el sen8y el cos8. Si p se encuentra dentro del rango, se incrementa en uno el acumulador de la celda respectiva y se inserta un nodo a la lista asociada a la celda. El nodo insertado en la lista contiene las coordenadas (x,y) del punto en la imagen,

4) Una vez transformada la imagen al espacio paramétrico, se aplica la eliminación de “líneas fantasma” en la matriz de acumuladores obtenida. El proceso de eliminación se lleva a cabo considerando que este tipo de líneas no cumplen con los siguientes criterios: las líneas continuas son aquellas que mantienen continuidad entre los puntos asociados a una lista y las líneas punteadas son aquellas que mantienen un umbral de separación constante entre agrupaciones de puntos contiguos dentro de una lista.

5 ) Se procede también a eliminar de la matriz de acumuladores las “líneas redundantes”. Para determinar que una linea es redundante se evalúa que los puntos que la conforman estén contenidos dentro de otra línea de mayor longitud. Para agilizar el proceso, únicamente se consideran para la validación los puntos extremos de la línea que presumiblemente es redundante. El proceso comienza evaluando la linea de menor longitud. Si la linea califica como redundante se elimina del conjunto de líneas detectado, si no, se marca como una línea ya evaluada. Este paso pudiera ser sustituido por una técnica más eficiente como lo es la búsqueda de máximos locales4.

6) Una vez eliminadas las “líneas fantasma” y las “líneas redundantes” se aplica un proceso de adelgazamiento a las líneas que quedan en la matriz de acumuladores. El proceso se basa en la técnica descrita en la sección 5 . 5 . I .

7) Finalmente, partiendo de la matriz de acumuladores obtenida en el paso 6, se genera la tabla descriptiva de las lineas contenidas en la imagen. En la tabla 5.2 se muestra un ejemplo de esta tabla.

I

La complejidad del algoritmo’ resulta principalmente del análisis de los pasos 3, 4 y 5. En el paso 3 se tiene una complejidad de orden lineal que depende de la cantidad de pixeles en la imagen como se analizó al final de la sección 5.2. En los pasos 4 y 5 se hace una depuración de la matriz de acumuladores. Para un conjunto Nde líneas sobre la matriz de acumuladores existe un tiempo constante k para validar si cada línea es “fantasma” o “redundante”. Considerando en el peor caso que cada línea se tiene que analizar con todas las demás, entonces se tiene un tiempo dado por

(N-1)

i= I (N - i) =N(N - 1)/2 =N2/2 -NI2

De donde la complejidad en los pasos 5 y 6 es cuadrada en N.

56

Page 65: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP~TULO 5 DETECCII~N YADELGAZ~MIENTO DE LÍNEAS

5.7 RESULTADOS

La imagen que se presenta en la figura 5.10(a) como entrada a esta etapa ya fie procesada por las etapas de eliminación de ruido, segmentación de texto y ejes de proyección. Para lograr la detección de líneas sobre esta imagen, se aplica la técnica de Hough, obteniendo como resultado la matriz de acumuladores descrita anteriormente. El uroceso de adelgazamiento de líneas toma como entrada esta matriz y genera la imagen de la figura 5 10(b).

Tomando m m o base la matriz de acumuladores obtenida para la imagen con líneas adelgazadas’de la figura S.lO(b), se genera una tabla de descripción de las líneas detectadas como se mu’estra en la tabla 5 2. Las columnas P,(x,y) y ¡‘&,y) son los puntos extremos de cada una de las líneas detectadas. La columna Acumulado es la longitud de la línea en pixeles La columna TIPO indica el tipo de linea (continua ó punteada).

i i i l i i

51

Page 66: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 5 DETECCI~N Y ADELGA WEWO DE ÚNEAS

PI (%Y)

37 431 3 1 544 44 85 44 240 59 100 59 438 59 628 96 173 96 438

243 174 243 439 243 550 243 631 280 101 280 439 295 431 295 484

pz (%Y)

37 512 37 630 44 210 44 364 59 357 59 623 59. 650 96 210 96 512

243 211 243 513 243 624 243 651 280 321 280 624 295 461 295 520

Acumulado

68 69

102 103 258 186 21 38 15 ' 38 15 75 18

22 1 186 26 30

Tipo

punteada punteada punteada punteada continua continua cnntinua continua continua continua continua continua puntada continua continua punteada punteada

Tabla 5.1: Tabla de salida de la etapr de delecOái deli- Contiene la descripcibn de IBS lineas cattenides m la imgm. P, y Pi m los puntos e~tremm de Is Ih-. Acumulado e Is Ionginid de la linea m pixelss. T i p es el lip de linen deleddo. €a tabla -rd de base para l a etnp de delección

depoligmos.

5.8 COMENTARIOS FINALES

Durante el proceso de interpretación, la etapa de detección de líneas sobresale como la más importante, ya que sin ella, no se alcanzarían los resultados deseados, cosa que no ocurre con otras etapas del proceso Por ejemplo, si se elimina la etapa de segmentación de texto, el sistema puede llegar a una interpretación adecuada del dibujo debido a que el texto no interfiere en gran medida en las etapas subsecuentes Sin embargo, si se elimina la etapa de detección de líneas, el sistema simplemente fracasaría

Por otro lado, si el objetivo del sistema fuera solamente obtener una descripción de los polígonos contenidos en la imagen, sin clasificarlos por la vista a la cual pertenecen, entonces se podría eliminar la etapa de segmentación de ejes de proyección, debido a que dichos ejes ya no serian de utilidad para clasificar polígonos Sin embargo, se debe considerar que cada etapa del proceso disminuye la carga computacional a las etapas subsiguientes, debido a que se están eliminando componentes gráficos que ya no serán contemplados para tomar decisiones

En esta etapa del proceso de interpretación se implementa una técnica de adelgazamiento de líneas con el objetivo de obtener una descripción más precisa de las líneas detectadas por la técnica de Hough Se resalta que la técnica implementada toma como entrada a las líneas contenidas en la matriz de acumuladores generada durante el proceso

Page 67: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

CAP~TULO 5 DETECCI~N YADELGAWMIENTO DE L~NEAS

Como otro punto importante, a continuación se plantea una forma de disminuir la generación de “líneas redundantes”. Recordar que estas líneas se generan en las celdas adyacentes, a una celda que determina una línea como se describió en la sección 5.4. Recordar también que el número de líneas que atraviesan una celda (en el plano paramétrico), determina la cantidad de puntos (en el plano cartesiano) que votan a favor de una línea. 6or lo tanto, si se reduce el tamaño5 de las celdas, se reduce también la cantidad de líneas que atraviesen las celdas adyacentes; por lo que se puede concluir que se reduce también la probabilidad de que se generen “lineas redundantes”. Sin embargo, existe la posibilidad de utilizar una técnica alternativa más eficiente como es la de búsqueda de máximos locales sobre la matriz de acumuladores, la cual consistiría en seleccionar aquellas celdas con el valor máximo entre agrupaciones de celdas contiguas.

Por otro lado, se puede omitir el proceso de adelgazamiento de líneas con la consiguiente pérdida de precisión. Esto se puede lograr si se incrementa la magnitud de los intervalos del espacio paramétrico. El efecto resultante es que se pueden llegar a acumular todos los puntos correspondientes a una línea engrosada en una sola celda. Esto permitiría que se tomaran 10s puntos inicial y final contenidos en la celda como representativos de la línea. El efecto de imprecisión se reflejaría en un escalonamiento para líneas horizontales y verticales.

Finalmente, se recalca que esta etapa del proceso es la principal aportación al renglón de la interpretación automática de dibujos dado que no se encontraron. trabajos publicados al comienzo de este proyecto. En [IOA”OU96] se presenta un trabajo reciente relacionado con el que se describe aquí.

En el siguiente capítulo se presenta la detección de poligonos tomando como base las líneas detectadas en esta etapa del proceso.

i

Page 68: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 6 DETECCI~N DE P O ~ ~ ~ O N O S

DETECClQN DE POL

r

I I

En este capítulo se describe la detección de polígonos considerando que un polígono es un ciclo cerrado. Una vez detectados los polígonos se describe el procedimiento seguido para clasificarlos por la vista ortogonai a la que pertenecen Se presenta también el algoritmo completo utilizado. Ai final se presentan resultados y comentarios finales acerca del proceso de detección de polígonos.

60

Page 69: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

-_ - . . . . . .~ ~.. .

PI(x,Y) Pz(x.Y) T i p

A ' 50, 50 50,200 Continua B 250. 47 250,200 Continua

D 50,200 300,200 Continua E 50, 50 300, 50 Continua

C ' 300, 50 300,200 Continua

(a)

CIPJTULO 6 DETECCI~N DE P O ~ G O N O S

6.1 INTRODUCCIdN

. .

A

E

@)

El objetivo de esta etapa del proceso es detectar y clasificar polígonos sobre la descripción de líneas obtenida por la etapa de detección de líneas. Para lograr la detección de polígonos es necesario disponer de una estrategia de detección. La estrategia consiste básicamente en considerar que un polígono es un ciclo cerrado como se describe en la sección 6.2.

Para la clasificacion de polígonos se requiere de una descripción de los ejes de proyección. Esta descripción sirve de referencia para ubicar las vistas frontal, superior y lateral del dibujo. Para obtener esta descripción se requiere aplicar el proceso de detección de líneas a la imagen de los ejes de proyección. Por lo tanto, para lograr el objetivo que se persigue en esta etapa se requiere como entrada una descripción de las líneas correspondientes a las vistas ortogonales del dibujo y otra descripción de los ejes de proyección.

6.2 DETECCl6N DE CICLOS CERRADOS

Supóngase que se dispone de la descripción de líneas que se muestra en la figura 6. i(a) Por otro lado, con el objetivo de explicar los detalles del proceso de detección de polígonos, en la ñgura 6 I@) se muestra el desplegado de las líneas descritas

Aunque es evidente que existen polígonos en la figura 6.l(b), es importante aclarar que el grafo solamente es un despliegue de las líneas obtenidas en la etapa de detección de líneas. De entrada no se sabe si existe algún polígono. Precisamente la diferencia principal entre un sistema de hsión y uno de graficación, es que en el primero se genera una descripción del dibujo a partir de su imagen y en el segundo se genera el dibujo a partir de su descripción. Esto hace necesario idear una estrategia de detección de polígonos como la que se describe a continuación.

61

Page 70: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO 6 DETECCI~N DE POL~GONOS

En general, las líneas que forman parte de un poligono deben estar conectadas por sus extremos con el extremo de alguna otra linea. Esta característica puede ser utilizada como criterio de detección de poligonos (ciclos cerrados). Sin embargo, existen lineas que son parte de ciclos pero no están unidas con extremos de otras lineas. Un ejemplo es la linea B de la figura 6.l(b), la cual es parte de poligonos, pero no está conectada con los puntos extremos de las lineas D y E, sino con puntos medios; por lo tanto no puede formar parte de un ciclo cerrado. Esta situación re resuelve como se describe a continuación.

Para que la línea B pueda formar parte de un ciclo cerrado, se procede a dividir las lineas D y E en los puntos’ de intersección con la linea B. Las lineas resultantes de la división (O’, D”, E’ y E ’4’) mostradas en la figura 6.2 hacen que la línea B ahora si pueda formar parte de un ciclo ceriado. Procediendo de igual manera con todas aquellas lineas que se encuentren en las condiciones de las lineas B, D y E, se. obtiene el conjunto representativo del cual se pueden extraer los poligonos. En este caso, los polígonos detectados seran ADCE, AD ’BE’ y B D T E ” según la figura 6.2.

El algoritmo de detección de polígonos da por hecho que las líneas que conforman un polígono son exclusivas y no pueden ser compartidas con otros poligonos Esto implica que cuando se realiza un proceso de división se tienen que duplicar las líneas involucradas Por ejemplo, nótese en la figura 6 2 la duplicidad de las llneas A. B y C, en el caso de las lineas D y E no se conserva la duplicidad debido a que un duplicado fue dividido

Es importante también aclarar que debido al procesamiento por el que han pasado las lineas de entrada a esta etapa, se pierde exactitud en cuanto a la conexidad entre los puntos extremos de dos lineas que forman parte de un vértice como se muestra con las lineas B y E’ de la figura 6 2 En este caso para resolver el problema se fija un valor de umbral para determinar cuantos puntos de un extremo de la línea pueden contribuir a formar parte de un vértice.

62

Page 71: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CXPIT(IL0 6 DETECCI~N DE PO&ONOS

Aprovechando que las acotaciones son lineas que no están conectadas por ninguno de SUS

Como último paso se requiere que los polígonos detectados sean clasificados según la vista

extremos, en este punto del proceso es prudente eliminarlas

a la que pertenezcan El algoritmo propuesto se describe en la sección 6 4

6.3 CLASIFICACIÓN DE POLiGONOS

Dado que hasta este punto del proceso se tienen identificados los poligonos y los ejes de proyección, se aplica el siguiente procedimiento para clasificar los polígonos, tomando como referencia la figura 6 3 I ) Para la vista superior, validar que todos los vértices de un polígono se localicen arriba del

eje horizontal y a la izquierda del eje a 45" En la figura 6 3, el poligono cuyos vértices son VI, VZ, V3 y V4 queda clasificado en esta vista.

2) Para la vista frontal, validar que todos los vértices de un polígono se localicen abajo del eje horizontal y a la izquierda del eje vertical

3) Para la vista lateral, validar que todos los vértices de un polígono se localicen abajo del eje a 45' y a la derecha del eje vertical.

Nótese como los puntos PI,.,.,P~ identifican perfectamente los ejes de proyección y por consiguiente la ubicación de las vistas frontal, superior, y lateral; mientras .que los vértices VI,. ._, V,z identifican a los polígonos.

Una técnica basada en los centroides de cada polígono podría prescindir de los ejes de proyección para clasificar poligonos pero sólo en el caso de que el contenido del dibujo fuera de un polígono por vista. En este caso el dibujo puede tener n polígonos en cada vista y por lo tanto la técnica no sería útil.

Page 72: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

t

t

CA PÍTULO 6 DETECCI~N DE POUGONOS

Otra clasificación que se da a los polígonos en este trabajo es la de “polígono oculto” y “polígono visible’’ Sus definiciones se dan a continuación + “Polígono Oculto” es aquel que contiene alguna linea punteada como parte de sus lados

Este tipo de polígono se presenta debido a que los poliedros asociados pueden estar seccionados o tener cortes transversales y cuando éstos no son visibles en alguna de las proyecciones entonces son representados mediante líneas punteadas

+ “Poligono Visible” es aquel en el cual todos sus lados son líneas continuas y además no contiene algún polígono interno

Ejemplos de esta clasificación de polígonos se muestra en la figura 6 4 Un “polígono oculto” es el que está representado por el ciclo AIHGA y un “polígono visible” por CDXIC El ciclo ABCDEFA no puede catalogarse como “polígono visible” dado que contiene los ciclos internos AIHGA y CDXIC.

I

6.4 DESCRIPCIÓN DEL ALGORITMO PROPUESTO

A continuación se describe el algoritmo de detección de poligonos que recibe como entrada una descripción de las líneas correspondientes a los ejes de proyección y una descripción de las lineac pertenecientes a las vistas ortogonales del dibujo Como ejemplo se toma la vista lateral mostrada en la figura 6 4 1) Como primer paso, se genera una lista circular doblemente ligada con las líneas

detectadas con la técnica de Hough La ventaja de utilizar esta estructura de datos es el acceso rápido al último elemento de la lista así como al nodo anterior y siguiente de un nodo actual El primer nodo de la lista es un centinela que indica cuando ya se procesó el

64

Page 73: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I

I

i

I

. --A- ~ , --_

11

:!

CAPíTULO (i !I /I P

'I

!

DETECCI~N DE POL~GONOS

último podo de la lista. Cada uno de los nodos restantes representa una línea. Inicialmente la lista contiene también las líneas que corresponden a las acotaciones. La representación de esta estructura se muestra en la figura 6.5.

2) En sedida, se eliminan de la lista, las líneas que representan las acotaciones. Para identifidar estas líneas, se verifica que no esten conectadas por sus extremos con alguna otra línia. La figura 6.6 muestra la lista después de eliminar acotaciones,

3) El siguiente paso consiste en dividir todas aquellas lineas que sean intersectadas en alguno $e sus puntos medios por el extremo de alguna otra línea (como las líneas A i

FE de la figura 6.4). La intersección se obtiene resolviendo el correspondiente ecuaciones y verificando que el punto de intersección' sea un punto

intermedio de la línea intersectada. Antes de aplicar este proceso se duplican todas las líneas p&a que una línea no se pierda al dividirla. Con la división de líneas se obtiene el conjunt! representativo de las líneas que participan en la conformación de poligonos. La figura 6.7 muestra la lista después de dividir líneas.

+ Se toma la primera línea de la lista y se busca su conexión con otra del conjunto (uscando que uno de sus puntos extremos coincida con alguno de los puntos extremos de otra línea. Nótese que el extremo de la línea que comienza el ciclo queda abierto y cerrará el ciclo con la última línea conectada. Las líneas que van $formando un ciclo se eliminan del conjunto hasta que éste queda vacío.

+ Al tiempo que se detecta un ciclo se agrega éste a una lista que representa a los e/olígonos encontrados. ,I La misma estructura de datos que se utiliza para almacenar líneas se utiliza para

almacenk los polígonos detectados; en este caso, cada nodo mantiene un apuntador a una listaidonde se almacenan los vértices del polígono. La lista de poligonos se muestra en la figura 6.8.

5) A contiiruación se procede a identificar los ejes de proyección en la descripción de entrada !on objeto de ubicar las vistas frontal, superior y lateral para de esta manera poder clasificar los polígonos detectados en el paso 4. El eje horizontal puede identificarse gracias a que su línea correspondiente, en cada uno de sus extremos, tiene la misma &ordenada en y. De la misma manera, la. línea que corresponde al eje vertical tiene la 4isma coordenada en Y. La línea que queda.es el eje a 45'.

6 ) Para clasificar un polígono dentro.de una vista, se realiza el procedimiento descrito en la sección 6.3. La clasificación de polígonos ocultos y visibles se puede realizar gracias a que se dispone del tipo de línea (continua ó punteada)..

7 ) Finalmente, se genera la descripción de salida del sistema, utilizando el lenguaje de. representkción que se describe en el apéndice A.

4) Se pro4de a buscar ciclos cerrados de la siguiente manera:

11

,I

'I

,I

8 1

:! A continua/ión se analizará la complejidad del algoritmo en función de las N líneas que

contiene la lista de entrada. Nótese que el orden resultante no será significativo dado que el orden de los algoritmos en las demás etapas del proceso está en función de la cantidad de pixeles en lalimagen y dado que esta cantidad es mucho mayor que el número de líneas detectadas, se puede concluir que el orden de este algoritmo no afecta en gran medida el

I

':j ' Nolere que el punt? de intemeoih pude dirsc sobre malquia punto que sea wheal a IP lima ¡dew&&.

I

65

Page 74: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

C4 PíTlJLOi6 DETECCI~N DE POLIGONOS

tiempo de,i respuesta del proceso de interpretación lo cual se puede comprobar con los tiempos de respuesta indicados en la tabla 7.1 para diferentes casos de prueba.

El tiempo más significativo del algoritmo se encuentra en el paso 4 debido a que por cada línea de la lista se tiene que hacer una búsqueda de la intersección con las líneas restantes (N-I) La cantidad de búsquedas que se tienen que hacer viene dada por

@-I) II

(N - i) = N(N - I ) / 2 =Nz/2 - N/2 ,= I

L De donde la complejidad del algoritmo es cuadrada.

La figura’t6.5 muestra la representación de las líneas detectadas con la técnica de Hough para el dibujo mostrado en la figura 6.4. La lista incluye, las líneas correspondientes a las acotaciones, El siguiente paso del algor¡tmo consiste en eliminar las acotaciones de la lista considerando que éstas no están conectadas por sus extremos. La figura 6.6 muestra como luce la lista’después de eliminar acotaciones. En la figura 6.7 se muestra la lista después del proceso de/Idivisión de líneas para la lista de la figura 6.6. Antes de aplicar el proceso se duplican todas las líneas para evitar que una línea no sea considerada debido a que fue dividida. Nótese al final del proceso la duplicidad de líneas (en negritas) que no calificaron para ser diddidas. En la figura 6.8 se muestra la lista de los polígonos detectados; la lista de la figura 6.7 queda vacía después de extraer los polígonos. Con la lista de polígonos se procede a clasificarlos en polígonos “ocultos” y ‘.‘visibles” considerando el tipo de las líneas (uunteadas “ó continuas). Dado que ya tenemos identificados los ejes de proyección, se \. puede obtener la clasificación de polígonos por la vista ortogonal a la que pertenecen.

1:

66

Page 75: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CA PjTULO 6 DETECCI~N DE POL~GONOS

Page 76: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

‘I

CAPÍTULO 6

I1

I:

DETECCI~N DE POLÍGONOS

Page 77: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPíTULO 6 BETECCI6N DE POrjcohrOS

6.5 RESULTADOS

Como salida del sistema, en el listado 6.1 (que corresponde a la descripción de líneas de la figura 6.9@)) se muestra una lista descriptiva de elementos gráficos contenidos en el dibujo. El primer1 bloque identificado con IIÉR77CES corresponde al conjunto de vértices que conforman a los poligonos.detectados en la imagen. El segundo bloque identificado con LÍNEAS &mesponde al conjunto de lados que conforman a los poligonos. El tercer bloque identificado como POLICONOS VISIBLES describe a los poligonos visibles; cabe hacer notar la clásificación de los polígonos por vistas. El cuarto bloque identificado por ONEAS representa: aquellas líneas que conforma al siguiente bloque de POLkXNUS OCULTOS. El penúltimo bloque es una descripción de los ejes de proyección. El último bloque representa el punto (inferior izquierdo) donde se origina cada una de las vistas.

Es importante mencionar que la descripción presentada es la adecuada para que la síntesis del poliedro [GARZA951 sea llevada a cabo. Sin embargo, es fácil hacer cambios en el software del sistema para presentar otro tipo de descripción dependiendo de las necesidades de la aplicación.

pi (&Y) Pr (&Y) Amm Tipo

37 431 37 SI1 68 pin& 37 S44 37 630 69 pntsada

85 44 110 101 pun& 44 44 240 44 364 103 C0nli""L 96 in 96 110 38 mntinua 96 438 96 SI1 7s m n t in" a 143 174 143 211 38 C O I d i n U

143 439 143 SI3 7s faili""a 143 550 143 614 75 m t i n u i 143 63 1 143 6S1 18 punteada 180 io1 180 311 121 mlinua 180 439 180 614 186 Cominur. 29s 43 1 19s 461 16 punteada 19s 484 195 s20 30 punteada

i

69

Page 78: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 6 DETECCIÓN DE POL~GONOS //

~ÉRTICES PI =punto ( 59 99) h = punlo,(280 101) p3 =punlo,(281 210)

L ~ E A S ;; 11 = linea @I . p2 ) i2 = linea (p2 , p3 )

POL~GONOS VISTBLES Vista Frontal ni = polígono( polilínea( pi , polilínea( m, polilínea( p,, polilínea( p4, polilínea( p5, polilínea( pb

polilínea( p~. polilínea( ps. polilínea( pi, polilineaVacia ))))))))))

Vista Superior nl = poiígoilo( polilínea( pI7. polilínea( pis, polilínea( pig. polilínea( polilínea( pI7,

11 poiiiineavacia 1)))))

Vista Lateral ni = polígono( polilínea( ps. polilínea( plo. polilínea( pll. polilínea( pI2, polilínea( p13,

polilínea( pI4, polilínea( pis, polilínea( pia, polilínea( ps. polilineaVacia ))))))))))

L~NEAS 11 =linea íq I PIO) i2 = linea @lo, pi

11 POLÍGONOS OCULTOS Vista Frontal Visto Superior Vista Laterol ni = polígono( polilínea( ps, polilínea( plo, polilínea( pll , pol.ilinea( PIZ, polilínea( p13,

polilínea( pI4, polilínea( pis, polilínea( p16, polilínea( ps, polilincaVacia ))))))))))

EJES DE PROYECCI~N EjeVertical 1 = ¡linea( punlo(309. 393), rad(90)) Ejc45 11 = !línea( punlo(309, 393). rad(45)) EjcHonzonlal = ilínea( punlo(309. 393). rad( O))

ORIGEN DE LAS VISTAS origcnVF = punlo (59. 99) ongcnVS = punto (243,438) origenrn = punio (339.99)

70

Page 79: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 6 DETECCIÓN DE POÚGONOS

Se presento una descripción de la estrategia utilizada para lograr la detección de polígonos sobre las iíndas detectadas con la técnica de Hough. Se describió también la forma en que se clasifican los polígonos por la vista ortogonal a la que pertenecen, así también por el tipo de polígono detectado (visible u oculto). Finalmente se describió el algoritmo utilizado y se presentaron los resultados obtenidos.

Dentro del contexto de este trabajo, la clasificación de polígonos representa una aportación para la generación de relaciones espaciales entre elementos gráficos contenidos en el dibujo!l,Lo novedoso de esta aportación radica en.que a la fecha no se encontraron publicacionek al respecto. Otras relaciones importantes (que no son detectadas en este .trabajo) son Aquellas entre el texto y el dibujo.

La estrategia propuesta para la detección de poiígonos no detecta todos los posibles ciclos cerrados contenidos en un dibujo, pero garantiza que se encuentran los ciclos principales necesarios y suficientes para reconstruir el dibujo original. Esto se comprueba si partimos del hecho de que los polígonos detectados contienen a todas las líneas contenidas en la imagen de entrada al proceso de interpretación. lo cual se garantiza en el paso 4 del algoritmo propuesto ed la sección 6.4. Esto también se puede comprobar en forma gráfica con las figuras 6.7 y k . 8 .

La relación entre la matriz de acumuladores (f(p, e) en el espacio paramétnco) y la representación de poligonos se da a través de la tabla descriptiva (de las líneas contenidas en el dibujo) que se presentó y describió en la sección 5.7. La relación entre los segmentos de línea y el lenguaje descrito en el apéndice A se da a través de los puntos exiremos de las lineas descritas en la misma tabla.

U En el siguiente capítulo se presentan tres casos de prueba con los que se probó el

desempeño del sistema.

71

Page 80: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

C1PiTULO 7 PRUEBAS Y RESULTADOS

II CAPíTUbO 7

PRUEBAS Y RESULTADOS

. . . . . . .re..IIo)... I . 0 .

. . . .. hagen de entrada de un c m de p e b a prCMud0

,I 'I

I I En este capitulo se presentan tres casos de prueba con los que se probó el desempeño del

sistema de interpretación Se muestra también el tiempo de respuesta para cada una de las etapas del proceso Se describe la plataforma de desarrollo y se dan comentarios finales sobre los resultados obtenidos

72

Page 81: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

PRUEBAS Y RESULTADOS

7.1 CASOS DE PRUEBA CAPíTuLo íl

A continuación se muestran tres ejemplos de diferentes imágenes a través del sistema de interpretación de dibujos. Al inicio de cada caso de prueba se muestra la imagen del dibujo de entrada al sistema. Al final se muestra la tabla descriptiva del dibujo como resultado del proceso de 'interpretación. En las etapas intermedias del proceso se muestran las imágenes obtenidas. Las figuras muestran imágenes reales de entrada y salida de cada una de las etapas del pkoceso.

7.1.1 Caso de Prueba 1 Como entrada al sistema se muestra la imagen de la figura 7 l(a) Nótese el ruido

generado por el digitalizador El objetivo en este punto del proceso es eliminar puntos de ruido aislados como se muestra en la figura 7 I@).

/I

Figura 7.1: Eliminacih de mido. En (a) Y m u m UM ¡ma- de am& al sislemb En (h) Y m u m la h n g m d e s p k despuCS de aplicar 18 &pa de eliminacihn de mido. N6tae la eliminacih de puntos de mido local!wdm enVe wclR6.

Quedaronllalgunos puntos aislados de ruido en la vista frontal debido a que el tamaño de ventana no fue lo suficientemente grande para eliminarlos. Para lograr eliminar estos puntos, se debe aplicar nuevamente el proceso de eliminación de ruido con una ventana más grande.

13 ii

Page 82: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 7 PRlJEBAS Y RESULTADOS I1

~~

Una vez aplicado el proceso de eliminación de ruido, se procede a segmentar el texto y los ejes de proyección En la figura 7 2(a) se muestra una imagen de salida de la etapa de segmentación de texto, a esta imagen se le aplica el proceso de segmentación de ejes de proyección y se obtiene la imagen de la figura 7.2(b)

t i I -II "..; (h)

Figura 1.2: Imágenes después de la segmmtacih de texio y ejes de proyeccih, A la imagen lihre de mida se IC aplica el proceso de segmentación de texzo, ahtenimdo una imagen corno la que se m u e m m (a). La imagen lihre de ledo enVñ a la etapa de

segmcntacih de ejes de pyccciót& produciendo como salida la imagen moarnda en (h).

Cabe hacer notar que de la etapa de segmentación de texto se obtienen dos imágenes, una '1 imagen libre de texto y otra imagen del texto segmentado Asimismo, del proceso de

segmentación de ejes de proyección, sale una imagen libre de ejes de proyección y otra imagen de los ejes de proyección

74 ii

Page 83: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO7 1 PRUEBAS Y RESULTADOS

La imagen brrespondiente al texto segmentado se muestra en la figura 7 3(a). Los ejes de proyección segmentados se muestran en la figura 7.3(b).

I '*.

La imagen del texto segmentado ya no se utiliza en etapas posteriores del proceso de interpretación; sin embargo es un producto del sistema para poder realizar un reconocimiento de texto, así como detectar relaciones entre el dibujo y el texto. Por otro lado, la imagen correspondiente a los ejes de proyección será utilizada en la clasificación de poiígonos. /I

11

75

Page 84: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPfTULO 7 PRUEELOS Y RESULTADOS

~

La imagen\libre de ejes de proyección entra a la etapa de detección de líneas, donde se le aplica la transformada de Hough. Ai conjunto de líneas detectado con la técnica de Hough, se le aplica un proceso de adelgazamiento de líneas, obteniendo como salida la imagen mostrada en la figura 7.4(a).

En la figura 7.4@) se muestra una tabla descriptiva de las líneas contenidas en la imagen de la figura 7.4(a). En la tabla se presentan los puntos extremos (P, y P2) de cada línea, su longitud (Amm) en pixeles y el tipo (Tipo) de linea.

PI (%Y)

16 502 41 478 50 508 73 140 88 148 88 332 109 509 147 207 147 132 206 207 166 1 49 286 509 I18 143 153 I26 151 149 612 208 412 I41 597 126 597 148

280 481

16 41 50 71 88 88 109 I47 147 206 266 286 138 153 153 412 412 597 597

280

692 493 685 214 125 346 686 325 347 325 126 686 313 141 326 326 155 140 208

495

Aaun Tipo

161 punkads 14 mntllua 178 smlinua 65 puntead. 178 d h u i 13 mtinua I78 d h u a I19 mnlinui 14 mithus 119 mtim 178 mituiua 178 cm<inua 160 punteada I4 mituiua 178 mitinus 96 punleads 13 mituiua 11 antinus 61 mtinua

I 1 Dmlinw

1; El siguiente paso es aplicar un proceso de detección de polígonos, sobre la descripción de líneas mostrado en la figura 7.4@) Una vez obtenido el conjunto de polígonos, se procede a clasificarlos por la vista a la que pertenecen para finalmente obtener una descripción de la imagen como la que se muestra en el listado 7.1 Para mayor detalle sobre la sintaxis del lenguaje utilizado consultar el apéndice A al final de este documento.

76

Page 85: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CA PÍTULO 7 PRUEBAS YRESULTADOS

LINEAS

1, = l i m @I* id I, = linea @,* h,)

POLIGONOS ocmms

iJ It - linu. (pi,. pie)

/ /

Vim Fronfaf Vim Superior Visto Laferol n, = poiip0Iq poiiii"en( pi,. polili"ea( pit. poiiiúiea( PI% polilinu( pi,. polillneavlna )))))

EJES DE PROYECCldN

Eje45 = ilinrd( punlo(294.406~ W 4 5 ) ) EjcVntid ' = i l k d punla(?,94,406), W 9 0 ) )

=¡lima( punla(294.406). rsd( O))

ORIGEN DE LAS MSTAS

aigniVF = pudo (69.148) aigniVS - pynio (50,508) aigmVL=pu"l.Y(413.207)

I I1

77

Page 86: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO 7 PRUEBAS Y RESULTADOS

En la figura 7.5 se muestra el poliedro que debería ser obtenido partiendo de la descripción mostrada en'el listado 7.1. El proceso de síntesis del poliedro se propone y describe, pero no se implementa en [GARZA95].

78

Page 87: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 7 PRUEBAS Y RESULTADOS

7.1.2 Caso de Prueba 2 I/

En este caso de prueba se pretende resaltar la segmentación de cadenas de texto de diferente tamaño. En la figura 7.6(a) se muestra la imagen de entrada al proceso de interpretación. La imagen de la figura 7.6(b) muestra la imagen libre de puntos aislados de ruido

io

L I.

V I S T A LATBRAL '

Figura 7.6: Eliminación de mido. En (a) Y mu& Is imagen de enbada al pmoao de ¡ n I a p W ~ ~ i b r b incluymdo cpdenar de W d O de diferente <amaño. En @) se m u m la imagen libre de punl<a aislados de Nido.

¡I

19

Page 88: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP~TULO 7 PRUEBAS YRESULTADOS

'I II A continuación se procede a realizar las etapas de segmentación de texto y ejes de

proyección: Las imágenes mostradas en la figura 7.7 son el resultado de aplicar estos procesos Cabe mencionar que en este caso se aplicó dos veces el proceso de segmentación de texto debido a los dos tamaños de texto presentes. El resultado es la imagen de la figura 7 7(a). La imagen de la figura 7 7(b) resulta después de aplicar un proceso de segmentación de ejes de proyecci6n.

80

Page 89: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 7; PRUEBAS ~ ~ U L T A D O S

En la fig& 7.8 se muestran las imágenes del texto segmentado. Cabe aclarar que en este caso el sistema no hace una mezcla de las dos imágenes obtenidas debido a que la segmentación se hace por separado, sin embargo es fácil extender el software del sistema para fusionar las dos imágenes en una sola.

1, il

/I

VISTA LITBRIL

Figura 7.8: lmsgmes del teido ~gmmlado. Aplicando dos v- el p"0 de segmnitaeih & tedo se a b t i m las dm imágme rnmlradas. En (a) K muestra la imagen del teido segmenkado & m m ~ ~ lamm46 En @) se mueslra la imagen del ledo segmentado de

mayor tPnuR0.

li

81

Page 90: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPÍTULO 7 PRUEBAS Y RESULTADOS

- // Una vez segmentado el texto y los ejes de proyección, se aplica la transformada de Hough

para detección de líneas. A las líneas detectadas se les aplica un proceso de adelgazamiento de líneas. La imagen de la figura 7.9(a) muestra la imagen de las líneas adelgazadas. En la tabla de la figura 7.9(b) se muestra la descripción de las líneas contenidas en la imagen de la figura 7.9(a).

I 1, ,a /j I

P W Y )

40 48 63 63 63 00 00 47 47 47 47 84 84 99 43 43 17 I7 54 28 43 43 81

36

407

89 427 620 163 428 163 428 539 62 1 90 429 418 90 208 164 208 201 90 78 308 313

89

n 40 48 63 63 63

IW I W 247 247 247 247 284 284 299 343 343 417 417 454 528 543 543 248

56

620 354 347 612 640 200 502 20 I 503 613 641 311 613 510 20 I 229 201 229 348 348 208 355 348

89

AaM Tipo

176 233 159 186 18 38 75 39 76 75 18

222 185 78 112 19 32 18 148 259 IO8 40 36

17

A continuación se aplica un proceso de detección de polígonos sobre las líneas descritas en la tabla mostrada en la figura 7.9(b). En el listado 7.2 se muestra la descripción del dibujo de entrada al pr;oceso de interpretación. 1)

I/

82

Page 91: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPlTIJLO 7 PRUEBAS Y RESULTADOS 1 vL4nncF.S

p, =punla(344 89) pl =punto (528 90) p, =punio(529311)

83

Page 92: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

PRUEBAS Y RESULTADOS CAP~TVLO 17 I1 11

7.1.3 Caso de Prueba 3

Con este ejemplo se desea resaltar la interpretación de un dibujo con alta densidad en lo que a líneas se refiere. El dibujo contiene las vistas ortogonales de una estación de trabajo Nótese también la inserción de etiquetas entre las acotaciones.

81

I/

.............

I (I, l.. ,.O.,.,

/ /&-!!+-

B ............

Page 93: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

PRUEBAS Y RESULTADOS CAPiTULO 7

Siguiendo con la secuencia de imágenes resultantes del procesamiento, en la figura 7.1 1 se muestranilas imágenes después de aplicar las etapas de segmentación de texto y ejes de proyección. Nótese la permanencia de dos caracteres aislados. Estos caracteres ya no pudieron ger segmentados debido a que el sistema no considera cadenas de texto de longitud menor a dos. Este caso se presenta debido a que dichos caracteres son más grandes que las dimensiones de la ventana utilizada para segmentarlos.

+.- -3

4-

t --t-

4-

?

!:

85

Page 94: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 7 PRUEBAS Y RESULTADOS ii i

En la figura 7.12 se muestra la imagen de los ejes de proyección y del texto segmentados.

............. .I

.. li /I ...

... ............ ...........

..............

86

Page 95: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CA PÍTULO 7 PRUEBAS Y RESULTADOS

La figura 7.13(a) muestra la imagen de las líneas detectad& por la transformada de Hough, una vez ablicado un proceso de adelgazamiento de líneas. En la figura 7.13@) se muestra la descripción de líneas correspondiente.

,

28 28 36 43 43 52 52 61 IO IO IO 32 32 12 I !2l 143 !43 !43 !87 102 102 109

110

202 327 I 20 216 489 135 531 238 202 643 769 718 747 718 748 203 644 170 240 137 532 218

519

28 28 36 43 43 52 52 67

110 110 I10 132 132 221 221 243 243 243 287 302 302 309

243

304 423 I94 415 519 I87

393 217 718 199 133 768 733 768 217 719 800 395 I88 733 417

645

ni

Acum

80 78 63 200 31 53

202 156 16 76 27 16 19 16 I8 I 5 76 26

I56 52

202 200

1 I6

Finalmente, en el listado 7.3 se muestra la descripción de salida del proceso de interpreta'ción.

I(

81

Page 96: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

88

Page 97: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

PRUEBAS Y REXULTADOS CAPITULO 7#

II /j 7.2 TIEMPOS DE RESPUESTA

En la tabla 7.1 se muestran las complejidades algorítmicas y los tiempos que tardan los casos de pmeba mostrados para cada una de las etapas del proceso de interpretación, así como el tiempo total del proceso. Se puede apreciar que la complejidad de cada uno de los algoritmos propuestos queda en función de la cantidad de pixeles (n) y líneas (N) en la imagen de donde se puede concluir que el tiempo de respuesta del sistema es directamente proporcional a la densidad del dibujo En la tabla 7.2 se muestran los porcentajes promedio sobre los t i h p o s registrados en la tabla 7.1. El sistema se corrió en un procesador Super Sparc con Una velocidad 20% superior (en operaciones enteras) a un procesador Pentium a 66 Mhz.

t

Algunas observaciones a la tabla 7.1 se describen a continuación: el tiempo en la etapa de segmentación de texto para el caso de prueba 2 se elevó debido a que se aplicó dos veces el proceso, pflmero para texto de 10x10 pixeles y después para texto de 18x18 pixeles. Es importante aclarar que la segmentación del texto de mayor tamaño fue más lenta debido a que se tiene~que explorar una ventana más amplia.

Nótese que la detección de líneas fue más lenta en el caso 3 debido a una mayor densidad del dibujo. En lo que se refiere a la segmentación de ejes de proyección, es evidente que en promedio, esta etapa es la más lenta debido a que existe una alta carga computacional; recordar que se hace una segmentación de líneas punteadas y ejes de proyección así como un restablecimiento de líneas punteadas. Este tiempo de respuesta más elevado se justifica en base a que la complejidad de los algoritmos propuestos en esta etapa del proceso están en función de la cantidad de pixeles en la imagen.

/i

Por otro lado, el tiempo tt corresponde a un proceso de detección de polígonos sin considerar una clasificación de los mismos. Los valores obtenidos muestran una evidente correlación ‘ h e la densidad del dibujo y el tiempo de respuesta del sistema. Es interesante observar como para dibujos muy densos (como el caso 3), es más conveniente aplicar etapas de preprocesamiento .para reducir el tiempo. Sin embargo, esta correlación se invierte para un dibujo con la densidad del caso de prueba 1.

11

El tiempo,que tarda la transformada de Hough es del orden de segundos. por lo cual se justifica su aplicación para resolver el problema de la detección de líneas en el contexto de esta aplicación. En esta etapa el tiempo se extiende debido a la depuración que se tiene que hacer sobre la matriz de acumuladores en lo que se refiere a la eliminación de “lineas fantasma” y “líneas redundantes” así como el adelgazamiento de líneas.

I 1 La complejidad algorítmica queda en función de la cantidad de líneas (N) y pixeles (n) en la

imagen. Los parámetros constantes A y k se explican en detalle en cada una de las etapas del proceso presentadas en los capitulos 3, 4, 5 y 6. Nótese como a pesar de que para la etapa de detección de polígonos se tiene una complejidad de orden cuadrado, este tiempo no es significativo comparado con los demás debido a que las líneas que llegan a esta etapa son sólo las involucradas para la detección de poiígonos. Caso que no se da en la depuración de

89

Page 98: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

0 CAPiTULO 7 PRUEBAS Y RESULTADOS

la matriz de adumuladores, donde la cantidad de líneas es considerablemente mayor debido a que están involucradas “lineas fantasma” y “segmentos redundantes” y por consecuencia el tiempo de cómputo sí es significativo.

11

CASO DE PRUEBA

.TAPA I SUBETAPA

Iiminación de Ruido para n = 3 I1

Segmentación de Texto

!I

Segmentación de Ejes 1

de Proyección

Detección i Adelgazamiento

de Lineas

11

paran= 10 paran= I8

Segmentación de Lineas Punteadas Segmentación de Ejes de Proyección Restablecimiento de Lineas Punteadas

Transformada de Hough Depuración de Matriz de Acumuladores Adelgazamiento de Lineas

ietección de Poligonos

/I Tiempo Total

Tiempo ti

13.88 16.09 21.05 *I Tabla 7.1 : Timw de respuesta para Im c ~ s m de prueba. El tiempo es16 dado m minuim. La intasecOón m e un rmglón y una columna a el tiempo que @a cada eupa o ruktapa para el casa de p c b a wmrpnidim@. El simblo ‘*’ significa que el tiempo que Lardn e ~ t a etapa no a significativo 01 comparación can lm d d valorrr. El tiempo I* correrpnide al tiempo que &da el praccu, si se mim Is claps de scgmc~tacitm de ledo y segmmtacion de e j s de proyección. 610 implica que no w pueda ohtmm una clasificación de Im poligana; &erados. En la mmplejidad nlgdhica la leln n rqr-ta la untidad de pixelm rn 18 imagen yN la cantidad de linus: laa

lNssk y A wn cmslmtes.

!I

90

Page 99: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPjTULO 7 PRUEBAS Y RESULTADOS

1. Eliminación de Ruido para n = 3

I

- CASO DE PRUEBA 1

01.

11 ETAPA 1 SUBETAPA

6

3. Segmentación de Ejes 'de Proyección

4. Detección y Adelgazamiento I de Lineas

2. Segmentación 2.1 paran= 10 2.2 paran = 18 I Texto

3.1 Segmentación de Lineas huiteadas 3.2 Segmentación de Ejes de Proyección 3.3 Restablecimicnto de Lineas Punteadas

23 15 22

4.1 Transfonnada de Hough 2

4.3 Adelga7amicnto de Líneas 5 4.2 Depuración de Matriz de Acumuladores 19

1 7

5. Detección de Poligonos I *. 'Tabla 7.2: P m l a j a de 105 limps de respuesta. El -taje calmlado en hare B Im limps de 1. tabla

7.1.

I1

20 2J i 5

O I u 2.1

1 J 1.3 4.1 L,, 4.3 5

Figura 7.14: Grálim para PI caw 1. Se muestra el porcentaje pmmedio del limp de r a p u m de cada una de las ciapas del pr- dr intnpretación. LA- claves de cada una de

las etapas mmsponden B las de la lahla 7.2.

91

Page 100: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I1 01 Pji'ULO 7 '1

PRUEBAS Y RESULTADOS

%

20

l5 I5 i 5 llcl O 1 2.1 2.2 3.

n >

3.2 3.3 4 1 4.2 4 3 5

Figura 7.16: crefira para el oso 3. k evidente que el timipo debido a Is dcpurssi6n de In mahz de acumuladores (34%) es el m65 alto. Esto JE debs a que e l dihujo intnpmado ss

m4s dmro que 109 ohw d a casos.

92

Page 101: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPITULO 7 PRUEBAS Y RESULTADOS

ETAPA

r

LINEAS DE

7.3 PLATAFORMA DE DESARROLLO

Para digitalizar la imagen se utilizó un scanner Hewlett Packard Scadet IIcx conectado a una computadora personal de marca HP Los dibujos digitalizados fueron hechos en papel tamaño carta (1 1x8’15 cm) utilizando el procesador de texto Microsoft Word versión 6 O y se digitalizaron htilizando la opción de “dibujo en ByN con Nitidez” con un brillo entre 70 y 80 unidades Las imágenes se obtuvieron en binatio donde cada pixel de la imagen es almacenado en un bit En promedio, el tamaño de las imágenes fue de 630x700 pixeles a una resolución de 3 pixeledmm El espacio promedio de almacenamiento en disco &e de aproximadamente 60 Kbytes por imagen El tipo de formato de almacenamiento utilizado para la imagen es el BMP.

El sofiware.se comó en una estación de trabajo del tipo SUN con procesador Super Sparc a una velocidad 20% superior (en operaciones enteras) a un procesador Pentium a 66 Mhz El sistema de interpretación se programó en lenguaje C [LIBRE931 bajo sistema operativo UNlX [SOLARIS94]. El despliegue de imágenes se realizó con el paquete de graficación SRGP [FOLEY94].

7.4 COMENTARIOS FINALES

Se mostraron tres casos de prueba con los que se probó el desempeño del sistema. En el segundo caso se resalta la segmentación de texto de diferente tamaño. El tercer caso es un ejemplo de un dibujo muy denso, además de presentar diferentes tipos de letra Se presentó también una sección relacionada con el tiempo de respuesta del sistema para cada uno de los casos y cada una de las etapas del proceso de interpretación así como la plataforma de desarrollo.

93

Page 102: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPírwLo 7 PRUEBAS Y RESULTADOS

il

Es importante mencionar que el sistema está programado de tal manera que el usuario tiene libertad de seleccionar los parámetros de entrada a cada una de las etapas del proceso de interpretación, así como la posibilidad de poder desplegar y salvar en disco algunos resultados intermedios durante el proceso; por ejemplo, se. puede desplegar una linea antes y después de su adelgazamiento. Esta interacción permite eliminar el ruido, aplicando las veces que sea necesho el proceso de eliminación de ruido. En lo que se refiere al texto, con esta interacción se permite al usuario segmentar cadenas de texto de diferente tamaño. Por otro lado, la interacción puede ser eliminada si se amplia la programación, de tal manera que el sistema tengada capacidad para tomar las decisiones que en este caso se dejan al usuario, como por ejemplo, decidir si se aplica otra vez una etapa del proceso.

d

11 En el siguiente capitulo se dan las conclusiones finales sobre este trabajo de tesis y se

proponen algunos trabajos futuros. ii

Y

/I

jl

1

'!

,:

94

Page 103: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAP/TULO 8 CONCLUSIONES Y TRABAJOS FUTUROS

- .!

I

CAPíTULO 8

CONCLUSIONES Y TRABAJOS n FUTUROS

I .

I.

'. ...

... "X.,. ..0".11 .I .. L..... I

.e...cj.... .. . Un trabajo futuro es PI recaiwirniaito del m a m i a d o al dibujo imando como entrada UM imagen como 11 quese

IIlUestlb

I I En este último capitulo se presentan algunas conclusiones del sistema de interpretación de

dibujos y posibles extensiones al mismo.

Page 104: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

¡I CAPfTULO 8 CONCLUSIONES Y TRABAJOS FUTUROS

8.1 CONCLUSIONES

11 se presentó un sistema capaz de interpretar dibujos con las siguientes carwteristim: + hs dibujos son planos de sólidos rectos, los Cuales pueden estu SeKhados 0

cortes transversales. LOS cortes o secciones que no son visibles en alguna de las cars son representados mediante lineas punteadas.

+ L~~ dibujoJ sólo.contienen las tres vistas ortogonales de un sólido recto: frontal, superior y lateral. Acotaciones, letreros y ejes de proyección son también parte del dibujo.

+ En el trazo:de los dibujos se utilizan sólo lineas rectas continuas o punteadas. !

El sistema aprovecha el conocimiento implicito en.la naturaleza del problema para obtener resultados cohfiables. Por ejemplo, dado que la imagen de entrada al sistema sólo contiene líneas rectas,' entonces se utiliza el modelo matemático de la recta en la aplicación de la transformadade I Hough para realizar la detección de lineas. Otro ejemplo es la ubicación de las vistas ortogonales tomando como referencia los ejes de proyección. La descripción obtenida del dibujo es suficiente para reconstruir las vistas contenidas en el dibujo original, así como para sintetizar [GARZA951 el poliedro representado.

'!

Principales Aportaciones:

+ Aplicacion ,I de la transformada de Hough al campo de la interpretación automática de dibujos. Esta técnica únicamente se utiliza para detectar las líneas y no los poligonos. En [IOANNOU96] se presenta un trabajo reciente relacionado con el reconocimiento de objetos poligonales en imágenes reales y sintéticas.

+ Se presgnta también como aportación la estrategia utilizada para lograr la detección y clasificación de polígonos sobre las líneas detectadas por la técnica de Hough. La clasificación de poligonos representa una 'aportación como una técnica para la generación de relaciones espaciales entre elementos grafcos contenidos en el dibujo.

+ Otra aportación es la posible aplicación de este sistema al campo de la interpretación automática de dibujos haciendo las adaptaciones necesarias para que cumpla con la especificación de una aplicación real. Un ejemplo pudiera ser la interpretación de dibujos ortogonales de partes mecánicas.

iI

Desempeño:

El sistema fue probado con 8 dibujos, obteniéndose los siguientes resultados: iI

En lo que se refiere a eliminación de niido, se obtuvieron muy buenos resultados ya que se pueden eliminar en su totalidad los puntos aislados de ruido. En lo ,flue a segmentación de texto se refiere, se obtuvieron resultados aceptables tomando como referencia que en general se logra la segmentación completa del texto, salvo para algunos %asos, en los que quedan algunos caracteres aislados que ya no pueden ser eliminados. La segmentación de ejes de proyección no presentó ningún problema.

0" La detección de líneas, en general, no presenta problema. Sin embargo, puede apreciarse en la imagen de salida, que el adelgazamiento de lineas no es lo suficientemente robusto

'I

!I 96

Page 105: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

CAPiTULO 8 li

CONCLUSIONES Y TRABAJOS FUTUROS

y deja segmentos de línea adyacentes a las líneas de interés. Esto provoca que en la etapa de detección de polígonos se tenga que realizar la eliminación de dichos segmentos adyacentes. Finalmente, cabe aclarar que el proceso de detección de polígonos no encuentra todos los posibles ciclos cerrados, sin embargo, se cumple con el compromiso de detectar los poligonos suficientes para reconstruir el dibujo original como se demostró en la sección 6.6 del cabítulo 6.

4

Se requiere de interacción para correr cada una de las etapas del proceso de interpretación. La intervención del usuario es necesaria para tomar la decisión de volver a aplicar una etapa

completamente segmentado se debería’ aplicar nuevamente el proceso correspondiente a juicio del usuario del sistema.

del proceso., i Por ejemplo, si el ruido no fue totalmente eliminado o si el texto no fue

Y Finalmente se concluye que el objetivo de este trabajo no fue construir un sistema de interpretacion automática de dibujos, sino demostrar que puede ser construido con la tecnologia actual.

8.2 TRABAJOS FUTUROS /I

Como trabajos futuros se proponen los siguientes: 1) Añadir al sistema la habilidad de interpretar dibujos que, además de líneas rectas,

contengan líneas curvas. Esta habilidad abre la posibilidad de interpretar dibujos más complej9s. La mayor dificultad sería realizar la detección de líneas utilizando otros modelos matemáticos; por ejemplo, el modelo de la elipse, del circulo, etc. En el caso del círculo el número de parámetros a considerar para obtener la transformación de la imagen es tres, provocando con esto que el proceso sea más complicado que para el modelo de la recta. ‘1

2) Ampliación de las relaciones espaciales entre los elemento6 gráficos contenidos en el dibujo. En este caso se pueden ampliar los conceptos de “poligono oculto” y ‘‘polígono visible” si se considera que un polígono es visible si y sólo si no contiene algún otro polígono Interno. Puede ser también interesante encontrar la relación entre el texto y las partes del dibujo a donde están haciendo referencia.

3) Reconocimiento del texto asociado al dibujo. En este trabajo se propone la implemhtación de un sistema de reconocimiento de texto que pudiera ser ejecutado desde la etapa de segmentación de texto y . de esta manera sustituir las heuristicas propuestas por este sistema. Otra alternativa sena aplicar el reconocimiento del texto directamente a la imagen segmentada.

4) Elimin’ar la interacción por parte del usuario. El objetivo en este caso es dar al sistema la “inteligencia” suficiente para darse cuenta si debe aplicar otra vez una etapa para obtener los resultados adecuados; por ejemplo, si se debe aplicar nuevamente la etapa de eliminación de ruido (con una ventana más grande) debido a que quedaron algunois puntos aislados de ruido que no fueron eliminados.

11 .

I.

97

Page 106: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

I1

REFERENCUS

[CHINGSb]

/I

[DAVIES901 I1

[DIMJTRIOS96] ‘I

[FOLEY94]

I1

[GARCIA961 11 .

I1

[GARCIA971 11

[GARZA951 “I

I1

[GONZÁLEZ92]

REFERENCIAS

Anthony Barrett “Computer Vision and image Processing” Chapman and Hall 1991 Ching-chuan Shih and Rangachar Kasturi Machine Vision and Applications “Extraction of Graphic Primitives from Images of Paper Based Line

Februaryll989 E. R. Davies “Machine Vision: Theory, Algorithms, Practicalities” Academic Press 1990 Dimitnos Ioannou and Edward T. Dugan “Parallelogram Detection in a Digital image with the use of the Hough Transfonn” Proceedings of ICPR’96 Augustl1996 J.D. Foley, A. van Dam, S.K. Feiner, J.F. Hughes, R.L. Phillips “Introduction to Comouter Graohics”

Drawings”, pp. 103-1 13

Addison-Wesley Publishing Company 1994 Victor García, Luis Pineda, Enrique Sucar “Interpretación de Dibujos Geométricos utilizando Técnicas de Visión por Computadora” Tercer Congreso Internacional de Investigación en Ciencias Computacionales Noviembrell996 Victor Garcia, Luis Pineda, Entique Sucar “Interpretación de Dibujos Ortogonales de Poliedros Regulares” Computación Visual 97 - UNAM Marzo11 997 Elsa Gabtiela Garza Ortíz “Síntesis de Poliedros a partir de sus Vistas Ortogonaies: un Caso de Estudio acerca del Razonamiento Gráfico” Tesis de Maestna - ITESM Junioll99S Rafael C. Gonzálefichard E. Woods “Tratamiento digital de imágenes” Addison Wesley/Diaz de Santos 1996

98

Page 107: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

‘I REFERENCLtS

[GUPTA93 I ‘I

II

[HOLT89]

[IOANNOU96]

1

[KASTURI90] !I

[KASTURI91]

[LIBRE931 iI

[LLADÓS96] i

3

[MARIANi96]

!i

[MURR.A394 ]

‘I

[PASTERNAK93] I1

Madam M. Gupta & George K. Knopf “Neuro-Vision Systems“ E E E Press 1993 C. Holt and A. Stewart “A Parallel Thinning Algorithm with Fine Grain Subtasking” Parallel Computing, pp 329-334 1989 Dimitnos Ioannou “Polygonal Object Recognition with the Use of the Hough Transform” PhD Thesis - University of Florida December11 996 Rangachar Kastun and Ramesh C. Fain IEEE Trans, Pattern Analysis and Machine Intelligence “A System for Interpretation of Line Drawings”, pp. 978-992. October11990 Rangachar Kasturi and Ramesh C. Fain “Computer Vision: Advances & Applications” E E E Press 1991 Compilador de lenguaje C para estación de trabajo del tipo SUN gcc, g++ - GNU project C and C++ Compiler (v2.4) Copyright 1991, 1992, 1993 Free Software Foundation, Inc. Josep Lladós, Jaime López-Krahe, Enric Marti “Hand Drawn Document Understanding Using the Straight Line Hough Transform and Graph Matching” Proceedings of ICPR’96 August/1996 Joseph Mariani “Written Language Input”, chapter 2 Survey of the State of the Art in Human Language Technology National Science Foundation European Commission 1996 James D. Murray & Wiliiam’vanRyper “Encyclopedia of Graphics File Formats” O’reilly & Associates, Inc. 1994 Boris Pasternak, Gabriel Gabrielides, Rainer Sprengel “WIZ - Design and Development of a Prototype for Knowledge- Based Interpretation of Technical Drawings” Labor fur Künstliche lntelligenz January/ 1993

I’

99

Page 108: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

Y REFEñENCUS

[PiNEDA86] ,,

[RIVERON94i

[SRIHARI92’] 11

)I [SOLARIS941

/i [TAMURA78]

II

[VAXIvIERE92]

[YOrnG94] 1

II

Luis Alberto Pineda Cortés “Un Algoritmo General para la Comparación de Polígonos” Tesis de Maestría - ITESM Mayo11 986 Edgardo M Felipe Riverón “Visión por Computadoras” ler Congreso Internacional de Investigación en Ciencias Computacionales CEntro Nacional de Investigación y DEsarrollo Tecno1Ógk.o Septiembreíl994 Srihari, Lam, Govindaraju, Srihan and Hull “Document Understanding Research Directions’’ Center of Excellence for Document Analysis and Recognition (cedar) May11 992 Sistema Operativo Solans versión 2.3 SunSofi, A Sun Microsystems, Inc Business 1994 Hideyuki Tarnura “A Comparison of Line Thinning Algorithms from Digital Geometry Viewpoint”, pp 715-719 Electrotechnical Laboratory 1978 Pascal Vaxiviere, Karl Tombre “Celesstin CAD Conversion of Mechanical Drawings”, pp 46-54 IEEE Computer Julyí1992 David Young “Hough Transforms” Sussex Vision Teach Files University of Sussex January/l994

Page 109: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

APÉNDICE

11 APÉNDICE A

Lenguaje de Representaci6n

A continuación se da una descripción sintetizada del lenguaje utilizado Para representar la d i d a del sistema de interpretación de dibujos. Para mayor información Wnsultar [GARZAgS].

1

El lenguaje es en gran parte gráíico y permhe representar puntos, segmentos de línea, líneas infinitas, polilíneas y polígonos tanto en un espacio bidimensional como tridimensiional. Permite referirse de manera compleja a los objetos gráficos, por ejemplo, referirse a un punto como la intersección de dos líneas. Pueden representarse relaciones mas complejas entre objetos como, por ejemplo, las relaciones que existen entre tres objetos 2D, uno de c&a vista, para obtener el objeto 3D del que son proyecciones.

En el contexto del lenguaje un polígono es una figura geometnca plana limitada por una polilínea !!cerrada que no se corta a si misma. Una polilíneu es una linea formada por segmentos consecutivos de líneas que pueden o no ser colineales; si cada segmento está unido a otros'dos la polilinea es cerrada, y abierta en caso contrario. A continuación se define el lenguaje.

Las constantes no-lógicas del lenguaje son las siguientes: Pi Representa todo nombre pi que denote un punto en el dibujo ortogonal D. 1, Representa todo nombre li que denote una línea en el dibujo ortogonal D. ni Representa todo nombre ni que denote un polígono (visible u oculto) en el

origenVS Denota al punto origen del sistema &ordenado 2D de la vista superior. Es el punto inferior derecho en la vista superior del dibujo.

origetilíl; Denota al punto origen del sistema coordenado 2D de la vista frontal. Es el punto inferior derecho en la vista frontal del dibujo.

origeenVL Denota al punto origen del sistema coordenado 2D de la vista lateral derecha. Es el punto inferior izquierdo en la vista lateral derecha del dibujo.

ejeVer . 'I Es una ilinea que denota al eje vertical del dibujo. ejeHor Es una ilinea que denota al eje horizontal del dibujo. eje45 Es una ilínea que denota al eje a 4Y del dibujo.

11 dibujo.

I1

Las constantes lógicas del lenguaje son las siguientes: pllnfo

línea

polilineu

Denota a la función cuyos argumentos son dos números reales (interpretado como coordenadas x yy), y su valor es el punto 2D representado. Denota a la función cuyos argumentos son dos puntos y su valor es el segmento de línea definido entre ellos. Denota a la funcion cuyos argumentos son un punto y,una polilinea, y su valor es la polilínea que resulta de concatenar el punto en la polilínea (se considera que la secuencia de puntos define una secuencia de líneas unidas).

/I

101

Page 110: CENIDET Victor Angel... · La principal aportación derivada de este trabajo de tesis es la aplicación de la transformada de Hough a la detección de líneas rectas en el campo de

!I APÉNDICE

ilinea Denota a la función cuyos argumentos son un punto y un ángulo (en 11 radianes) y su valor es la linea infinita que pasa por el punto y cuya tangente

es igual a la tangente del ángulo. . ,I Denota a una función cuyo argumento es una polilínea y cuyo valor es un

polígono si la polilínea es cerrada. u Denota a la función cuyo argumento es un ángulo en grados (número real) y

su valor es la equivalencia en radianes.

polígono

rad

A contindación se da un ejemplo de objetos gráficos considerando las definiciones anteriores:

II

p i =punto (44# 416) 11 = linea ;.PI ~ p z ) ni = poí~ono(polilinea(pl, poWnea(p2, poliiínea(pA polilinea(pi, polilineaVacia I)))) eje45 = ilinea(punto(324,' 431). rad(45)) ejever = h~ea(punto(324, 431). rad(90)) ejeHor = ilinea(punto(324, 431). rad( O)) origenVF =punto (310, 217) origenVS punto (44, 489) origenVL =punto (339, 188)

'1

Donde las constantes no-lógicas son p, . lis ni, eje45, ejever, ejeHor, origenW, origenVS y origenv,, Las constantes lógicas son punto9 lineam poligono, polilínea, ilinea y rad.

Y

n

I!

I,

CENTRO DE INFORMACir:

C C N I D E T

102 9 7 1 0 4 9