0% encontró este documento útil (0 votos)
45 vistas77 páginas

Detección de Objetos Circulares con Visión Artificial

Cargado por

JahirVernaza
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
45 vistas77 páginas

Detección de Objetos Circulares con Visión Artificial

Cargado por

JahirVernaza
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

1

Sistema de visión artificial aplicado a la detección y conteo automático de objetos

superpuestos de forma circular

Corrales Bastidas, Brandon Eduardo

Vicerrectorado de Investigación, Innovación y Transferencia de Tecnología

Centro de Posgrados

Maestría en Electrónica y Automatización

Trabajo de titulación previo a la obtención del título de Máster en Electrónica y Automatización,

Mención en Redes Industriales

Dr. Minchala Ávila, Luis Ismael

21 de abril del 2022

Latacunga, Ecuador
2

Digitally signed
by LUIS ISMAEL
MINCHALA
AVILA
Date:
2022.04.25
……………………………
18:02:46 -05'00'

Dr. Minchala Ávila, Luis Ismael


DIRECTOR
3

VICERRECTORADO DE INVESTIGACIÓN, INNOVACIÓN Y TRANSFERENCIA DE

TECNOLOGÍA

CENTRO DE POSGRADOS

CERTIFICACIÓN

Certifico que el trabajo de titulación, “Sistema de visión artificial aplicado a la

detección y conteo automático de objetos superpuestos de forma circular”, fue

realizado por el Señor Corrales Bastidas, Brandon Eduardo, el mismo que ha sido

revisado y analizado en su totalidad, por la herramienta de verificación de similitud de

contenido; por lo tanto cumple con los requisitos legales, teóricos, científicos, técnicos y

metodológicos establecidos por la Universidad de las Fuerzas Armadas ESPE, razón por

la cual me permito acreditar y autorizar para que lo sustente públicamente.

Latacunga, enero del 2022

Digitally signed
by LUIS ISMAEL
MINCHALA
AVILA
Date:
2022.04.25
.….……………………………………….
18:03:06 -05'00'

Dr. Minchala Ávila, Luis Ismael

Director

C.C.: 0301453486
4

VICERRECTORADO DE INVESTIGACIÓN, INNOVACIÓN Y TRANSFERENCIA DE

TECNOLOGÍA

CENTRO DE POSGRADOS

RESPONSABILIDAD DE AUTORÍA

Yo, Corrales Bastidas, Brandon Eduardo con cédula de ciudadanía con cédula de

ciudadanía n° 0503148603 declaro que el contenido, ideas y criterios del trabajo de

titulación: “Sistema de visión artificial aplicado a la detección y conteo

automático de objetos superpuestos de forma circular”, es de mí autoría y

responsabilidad, cumpliendo con los requisitos legales, teóricos, científicos,

técnicos y metodológicos establecidos por la Universidad de las Fuerzas Armadas

ESPE, respetando los derechos intelectuales de terceros y referenciando las citas

bibliográficas.

Latacunga, enero del 2022


Firmado electrónicamente por:
BRANDON EDUARDO
CORRALES BASTIDAS

…….…..……….….…………………………

Corrales Bastidas, Brandon Eduardo

C.C.: 0503148603
5

VICERRECTORADO DE INVESTIGACIÓN, INNOVACIÓN Y TRANSFERENCIA DE

TECNOLOGÍA

CENTRO DE POSGRADOS

AUTORIZACIÓN DE PUBLICACIÓN

Yo, Corrales Bastidas, Brandon Eduardo, con cédula de ciudadanía con cédula de

ciudadanía n° 0503148603 autorizo a la Universidad de las Fuerzas Armadas ESPE

publicar el trabajo de titulación: “Sistema de visión artificial aplicado a la

detección y conteo automático de objetos superpuestos de forma circular”,

cuyo contenido, ideas y criterios son de nuestra exclusiva responsabilidad y

autoría.

Latacunga, enero del 2022

Firmado electrónicamente por:


BRANDON EDUARDO
CORRALES BASTIDAS

.….…………………………………..

Corrales Bastidas, Brandon Eduardo

C.C.: 0503148603
6

Dedicatoria

“El futuro es incierto, pero instruyéndote puedes lograr que incierto sean las

oportunidades que tendrás en el futuro”

Este proyecto lo dedico a mis padres y a mi hermana, por ser siempre mi pilar

fundamental, quienes me han alentado a conseguir y luchar por mis sueños, con grandes

lecciones a lo largo de toda mi vida, enseñándome que nada es fácil y que siempre

debemos dar nuestro máximo esfuerzo, tiempo y dedicación para superar los obstáculos

y lograr lo que anhelamos.

A mis abuelitos, quienes en una etapa de mi vida cumplieron el papel de padres,

gracias a quien tengo bien firmes mis creencias, ideología, valores, actitudes.

Brandon Corrales. B.
7

Agradecimiento

“Tal vez la gratitud no sea la virtud más importante, pero si es la madre de las

demás”

Marco Tulio Cicerón

Primero a Dios por darme salud, sabiduría, constancia, responsabilidad y las

ganas de cada día seguir adelante, por siempre ser mi fortaleza y mi camino para ser

mejor persona y un buen profesional.

A la Universidad de las Fuerzas Armadas ESPE-L, por darme la oportunidad de

ser parte del programa de posgrado en Electrónica y Automatización mención en redes

industriales, por impartirme los conocimientos y experiencias de cada uno de los docentes

que enriquecerán mi accionar en el campo personal y laboral.

Al Dr. Ismael Minchala. Magíster por sus conocimientos y dedicación como mi

tutor de titulación, encaminándome para realizar una buena investigación alcanzando los

objetivos planteados al inicio del proyecto de tesis.

A todos mis amigos y compañeros de clase con quienes hemos compartido

extensas jornadas de trabajo.

Brandon Corrales. B.
8

Tabla de contenido

Carátula………………………………………………………………………………………......1

Reporte de verificación de contenido………………………………………...…………….2

Certificación...................................................................................................................3

Responsabilidad de auditoría .......................................................................................4

Autorización de publicación .........................................................................................5

Dedicatoria .....................................................................................................................6

Agradecimiento .............................................................................................................7

Tabla de contenido ........................................................................................................8

Índice de figuras ..........................................................................................................11

Índice de tablas ...........................................................................................................14

Resumen ......................................................................................................................15

Abstract........................................................................................................................16

Capítulo I ......................................................................................................................17

Problema de Investigación .........................................................................................17

Antecedentes ...........................................................................................................17

Planteamiento del problema ...................................................................................19

Justificación, importancia y alcance del proyecto ................................................19

Objetivos ..................................................................................................................20

Objetivo general ...................................................................................................20

Objetivos Específicos ..........................................................................................20

Categorización de las variables de investigación .................................................21


9

Hipótesis ..................................................................................................................23

Capítulo II .....................................................................................................................24

Marco teórico ...............................................................................................................24

Definición de una imagen digital ............................................................................24

Imágenes en Color ...................................................................................................25

Variables del color................................................................................................28

Espacios de color .................................................................................................29

El modelo RGB. ................................................................................................30

Análisis y procesamiento de imágenes.............................................................. …31

Métodos de extracción de características ..........................................................32

Segmentación .................................................................................................... ...33

Transformada de Hough………………………………………………………………..35
Formulación clásica de la Transformada de Hough……………………………….35

Formulación en coordenadas polares de la Transformada de Hough………....36

Transformada circular de Hough……………………………………………………...38

Capítulo III ....................................................................................................................42

Metodología de Planificación del Sistema CORACS ................................................42

Metodología Propuesta ...........................................................................................42

Requerimientos para captura de imagen ............................................................43

Diseño de la interfaz.............................................................................................47

Desarrollo del código ...........................................................................................50

Capítulo IV ...................................................................................................................61
10

Análisis de CORACS y resultados obtenidos ...........................................................61

Arquitectura .............................................................................................................61

Esquema ...................................................................................................................62

Resultados ...............................................................................................................63

Conclusiones ...............................................................................................................74

Bibliografía…...………………………………………………………………………………..75

Anexos...………………………………………………………………………………………..77
11

Índice de figuras

Figura 1. Imagen 256 niveles intensidad y representación numérica fragmento 8x8.....25

Figura 2. Planos con color RGB representados como 3 matrices bidimensionales. ......26

Figura 3. Componentes primarios para pixeles de una imagen a color. ........................27

Figura 4. Pixeles resultantes en función de la intensidad de los componentes. ............28

Figura 5. Escala de la saturación de las componentes RGB.........................................29

Figura 6. Representación gráfica del modelo RGB. ......................................................31

Figura 7. Formulación en coordenadas polares. ...........................................................36

Figura 8. Transformada de Hough en un punto. ...........................................................37

Figura 9. Transformada de Hough de tres puntos. ........................................................38

Figura 10. Dirección del gradiente. ...............................................................................39

Figura 11. Espacio tridimensional de la Transformada circular de Hough. ....................40

Figura 12. Metodología propuesta para el sistema CORACS. ......................................42

Figura 13. Imagen con un ángulo de 90 grados con respecto del suelo........................43

Figura 14. Imagen con método picado. .........................................................................44

Figura 15. Imagen con método contrapicado. ...............................................................44

Figura 16. Imagen capturada a una distancia de 50 centímetros de los tubos PVC. .....45

Figura 17. Imagen capturada a una distancia de 1 metro de los tubos PVC. ................46

Figura 18. Imagen capturada a una distancia de 1.5 metros de los tubos PVC. ...........46

Figura 19. Parámetros como la creación de un nuevo GUI. ..........................................47


12

Figura 20. Editor de características de los elementos del GUI. .....................................48

Figura 21. Diagrama de flujo de la interfaz CORACS. ..................................................49

Figura 22. Interfaz de usuario de CORACS. .................................................................50

Figura 23. Imagen con escalas de grises......................................................................51

Figura 24. Imagen original en RGB. ..............................................................................51

Figura 25. Cursor para la seleccionar la región de interés (ROI)...................................52

Figura 26. Limitación del área del ROI. .........................................................................53

Figura 27. ROI seleccionado. .......................................................................................53

Figura 28. Resultado de aplicar un filtro pasa altos en la imagen. ................................54

Figura 29. Imagen binarizada. ......................................................................................55

Figura 30. Histograma de la imagen escala de grises...................................................56

Figura 31. Histograma de la imagen binarizada. ...........................................................56

Figura 32. Resultado del elemento estructural aplicado en la imagen binarizada. ........57

Figura 33. Diagrama del Espacio de Hough de la imagen procesada. ..........................58

Figura 34. Parametrización de los tubos PVC...............................................................59

Figura 35. Funcionamiento del botón “Detallar”. ...........................................................60

Figura 36. Arquitectura del sistema CORACS. .............................................................62

Figura 37. Esquema del sistema CORACS...................................................................63

Figura 38. Imagen tomada con una puerta metálica verde de fondo. ............................64
13

Figura 39. Respuesta de CORACS de la Figura 38. .....................................................65

Figura 40. Imagen tomada con los tubos PVC al lado de otros objetos. .......................65

Figura 41. Respuesta de CORACS de la Figura 40. .....................................................66

Figura 42. Se coloca una plancha gris detrás de los tubos PVC. ..................................67

Figura 43. Respuesta de CORACS de la Figura 42. .....................................................68

Figura 44. Tubos PVC de diferentes diámetros. ...........................................................69

Figura 45. Respuesta de CORACS de la Figura 45. .....................................................70

Figura 46. Resultado del reconocimiento de tubos PVC en la ferretería San Agustín. ..72

Figura 47. Resultado del reconocimiento de tubos PVC en la ferretería San Agustín. ..72

Figura 48. Trabajador de la ferretería San Agustín contando los tubos PVC. ...............73
14

Índice de tablas

Tabla 1. Trabajos relacionados a reconocimiento de objetos. .......................................18

Tabla 2. Descripción de variables dependiente e independiente. ..................................22


15

Resumen

Este trabajo de titulación investiga acerca de la problemática asociada al conteo

repetitivo de patrones geométricos específicos. Por ejemplo, industrias dedicadas a la

fabricación de tubos (cualquier material), varillas para construcción, troncos de madera,

etc., usualmente presentan errores asociados al despacho de sus productos debido,

principalmente, al conteo no automatizado de los productos. El factor común de estas

industrias radica en la forma circular (o cuasi circular) de los productos, que a través de

procesamiento especializado de imágenes permitiría solucionar el problema asociado al

conteo para despacho o cualquier otro propósito específico. Esta investigación propone

el desarrollo de un sistema de reconocimiento y conteo de patrones circulares

(CORACS – Circular Objects Recognition and Counting System) a través de la

aplicación de técnicas tradicionales del procesamiento digital de imágenes, entre las

que destaca la transforma de Hough. El despliegue del prototipo de pruebas de este

sistema fue desarrollado en MATL

AB, de forma específica, se usaron imágenes de tubos PVC que permitan validar la

operación del sistema. Los resultados de operación del CORACS demostraron una

efectividad del 76.28% en imágenes capturadas sin aplicar protocolos específicos de

adquisición de imágenes, mientras que la precisión asociada a imágenes capturadas

con un protocolo de adquisición fue del 96.65%.

Palabras Clave:

• VISIÓN ARTIFICIAL

• TRANSFORMADA DE HOUGH

• PROCESAMIENTO DE IMÁGENES

• OPERACIONES MORFOLÓGICAS

• RECONOCIMIENTO DE CÍRCULOS
16

Abstract

This degree work investigates the problems associated with the repetitive counting of

specific geometric patterns. For example, industries dedicated to the manufacture of

tube (any material), construction rods, wooden logs, etc., usually have errors associated

with the dispatch of their products, mainly due to the non-automated content of the

products. The common factor of these industries lies in the circular (or quasi-circular)

shape of the products, which through specialized image processing would allow to solve

the problem associated with counting for dispatch or any other specific purpose. This

research proposes the development of a circular pattern recognition and counting

system (CORACS – Circular Object Recognition and Counting System) through the

application of traditional digital image processing techniques, among which the Hough

transformation stands out. The deployment of the test prototype of this system

developed in MATLAB, specifically, they used in images of PVC pipes that allow

validating the operation of the system. The results of the CORACS operation

demonstrated an effectiveness of 76.28% in images captured without applying specific

image acquisition protocols, while the precision associated with images captured with an

acquisition protocol was 96.65%.

Key words:

• COMPUTER VISION

• HOUGH TRANSFORM

• IMAGE PROCESSING

• MORPHOLOGICAL OPERATIONS

• CIRCLE RECOGNITION.
17

Capítulo I

Problema de Investigación

Antecedentes

La transformada de Hough es un método para la detección e identificación de

figuras geométricas en 2D. El universo de figuras es representado por una imagen que

contiene una cantidad N de figuras de distintos tipos. Se representa dos soluciones: una

en donde el universo de figuras se construye a partir de imágenes generadas en un

software de dibujo y otra utilizando una cámara Web. (Hough, 1962)

En el área de robótica, se hace necesario mantener sistemas de visión de costo

bajo que identifiquen objetos primarios tales como líneas, figuras geométricas entre

otros, los cuales permitan proseguir sus trayectorias o eludir obstáculos específicos.

Una de las ventajas de usar procesamiento de imágenes es el poder emplear

algoritmos que permitan identificar, por ejemplo, líneas. Uno de estos algoritmos es la

transformada de Hough, la cual es ocupada en el procesamiento y análisis de

imágenes, para reconocer contornos geométricos simples, como rectas, circunferencias,

elipses, etc. Principalmente ésta transformada fue ocupada para el reconocimiento de

pupilas humanas en un sistema de visión computacional para comunicar hombre-

máquina. (Rojas, 2008)

En la Tabla 1.1, se detallan diversas investigaciones de los métodos utilizados

para el procesamiento de imágenes, como: segmentación, operaciones morfológicas y

la transformada de Hough; describiendo sus ventajas, desventajas, facilidades,

versatilidad y robustez de acuerdo al problema que se requiera solucionar. Estos

proyectos están enfocados en el desarrollo de software que pueden implementarse en

cualquier entorno.
18

Tabla 1.

Trabajos relacionados a reconocimiento de objetos.

Artículo/ Proyecto Autor Año Descripción


Ejecución de la Duque, J.P. 2004 Dentro de este artículo, se muestra un
transformada de U, & Ospina, trabajo desarrollado totalmente en la
Hough para la E. localización de diferentes líneas de
detección de líneas nivel bajo. Se exponen los resultados
de un sistema de alcanzados en dicho estudio, así como
visión de nivel bajo. su aplicación para el tratamiento de
las imágenes con un microcontrolador
de la familia de los MCS-51.
Fraccionamiento y Ayala- 2011 El propósito fue generar instrumentos
limpiado de imágenes Cabrera, D., o herramientas en función de
de GREP en tuberías Pérez- responder al desconocimiento de los
soterradas. García, R., trazados y las características de las
Herrera, M., tuberías en diferentes sistemas de
& Izquierdo, abastecimiento de agua. Se
J. empelaron metodologías que permitan
alcanzar dicho conocimiento sin
alterarlas las condiciones y
características del entorno (métodos
no destructivos), a través del estudio
de las imágenes obtenidas con Geo
radar. Aplica metodológicamente la
transformada de Hough de
fraccionamiento limpiando las zonas
de probabilidad baja de contención en
las tuberías.
Uso de la Duarte, G. D 2003 La Transformada de Hough se puede
transformada de utilizar para descubrir patrones
Hough en la paramétricos, como líneas y círculos,
detección de círculos incrustados en imágenes ruidosas, la
en imágenes digitales transformada de múltiple resolución.
Hough es muy eficiente para reducir el
procesamiento computacional y
memoria requerida para almacenar
datos. Este artículo muestra la
eficiencia de la transformada de
Hough en múltiples resoluciones como
método para detección de círculos en
imágenes digitales.
Hough – Circles: un Pistori, H. 2005 Este artículo presenta la
módulo de detección Pistori, J.m & implementación de un detector de
de circunferencia para Costa, E. R circunferencia, basado en la
Image J transformada de Hough, que se
incluyó en el conjunto de módulos de
software, libre Image J, de
procesamiento y análisis de cuadros.
19

La transformada de Hough se utiliza


principalmente en el reconocimiento
de objetos con nosotros geométricos
simple, como líneas, rectas, círculos y
elipses.

Nota. Esta tabla muestra los trabajos relacionados a reconocimiento de objetos utilizando

los algoritmos de la Transformada de Hough.

Planteamiento del problema

En las grandes y medianas industrias de producción y comercialización de tubos

PVC, los trabajadores son los encargados del conteo y clasificación de los productos,

resultando que no siempre el control es eficiente ya que no se tiene certeza del

rendimiento del trabajador, el cual puede verse afectado por factores externos a la

industria. Esto causa errores que se traducen como una pérdida económica de la

empresa.

La visión artificial es una de las herramientas consideradas con viabilidad mayor

en temas de control en las industrias, por su capacidad de adaptabilidad al trabajo que

se realiza. En una empresa de producción o comercialización es necesario saber con

exactitud la cantidad de tubos PVC que se producen y comercializan, además, al ser

lotes masivos de tubos es necesario tener un control rápido y eficaz.

Existe un gran número de sistemas de reconocimiento de formas geométricas,

pero en su mayoría no clasifican lo objetos similares reconocidos en una imagen, ya

que no cuentan con un sistema de parametrización.

Justificación, importancia y alcance del proyecto

Según (Fernández, 2015), los diferentes sistemas de visión artificial han sido

establecidos con mucho éxito en los procesos industriales tales como los controles de

la calidad, la automatización, sistemas de vigilancias e inspecciones debido a los

distintos entornos en donde la limitación de recursos de hardware es alta, las soluciones


20

se deben orientar al desarrollo del software para utilizarlos de manera óptima, por lo

tanto se presenta el desarrollo de un sistema de visión artificial aplicado a la detección y

conteo automático de objetos superpuestos de forma circular basado en la transformada

de Hough, que nombrado CORACS (Circular Objects Recognition and Counting

System), cuyo significado en español es Sistema de reconocimiento y conteo de objetos

circulares.

Como la base del sistema es la visión artificial, se debe tener en cuenta los

factores que pueden intervenir en la eficacia de CORACS, como: la luz, cuya intensidad

puede eliminar bordes característicos de un elemento en la imagen, el ángulo de

inclinación y la distancia de la cámara, debido que al no tomar la imagen con un ángulo

determinado con respecto al suelo y a una distancia especifica de los objetos, puede

cambiar el número de pixeles que conforman un elemento en la imagen, produciendo

un error en el reconocimiento y clasificación de los objetos.

El sistema CORACS está destinado al reconocimiento, coteo y clasificación de

tubos PVC en el área de comercialización de las industrias.

Objetivos

Objetivo general

• Desarrollar un sistema de visión artificial aplicado a la detección y conteo

automático de objetos superpuestos de forma circular.

Objetivos Específicos

1. Especificar los parámetros para capturar las fotografías de los objetos a contar.

2. Diseñar el algoritmo para el correcto procesamiento de imágenes, eliminando el

ruido y otras alteraciones que pueden dificultar el reconocimiento de objetos.

3. Implementar el algoritmo de la transformada de Hough para el reconocimiento

de objetos superpuestos de forma circular.


21

4. Parametrizar los distintos objetos para que el algoritmo los pueda reconocer y

clasificar automáticamente.

Categorización de las variables de investigación

Como derivación del planteamiento de la hipótesis, fueron identificadas las

variables siguientes:

• Variable independiente: Sistema de visión artificial de objetos superpuestos de

forma circular.

• Variable dependiente: Factores de error humano y tiempo de conteo.

En la Tabla 2 se muestra la operacionalización de las variables detallando el

tipo, definición teórica, definición operacional, dimensiones e indicadores que forman

parte del proyecto.


22

Tabla 2.

Descripción de variables dependiente e independiente.

VARIABLES TIPO DEFINICIÓN DEFINICIÓN DIMENSIONES INDICADORES


CONCEPTUAL OPERACIONAL
Sistema de visión Independiente CORACS sirve para CORACS funciona en base -Costo del sistema -Porcentaje mínimo
artificial de identificar y contabilizar a la transformada de -Facilidad de de error en el
objetos de manera automática la Hough, con un implementación reconocimiento de
superpuestos de cantidad de objetos procesamiento correcto de -Elementos objetos en la
forma circular circulares presentes en imagen contabiliza la reconocidos imagen
una imagen. cantidad existente de -Tiempo de -Porcentaje de la
objetos de presentes. reconocimiento y reducción de costos
procesamiento de de implementación
imagen -Recursos que se
utilizaran para la
implementación del
sistema.
-Número de
elementos
reconocidos
Factores de error dependiente Los factores de error Los factores de error evitan -Parámetro de -Porcentaje de error
humano y tiempo humano y tiempo de un buen control del número error de conteo en el conteo de
de conteo conteo son aspectos en de elementos existentes, lo -Tiempo de conteoelementos
los cuales una persona que provoca una inversión -Tiempo necesario
puede cometer un error y de tiempo innecesaria para para poder realizar
no cumplir de manera poder comprobar el el conteo y su
eficiente una número exacto. verificación
acción.

Nota. Esta tabla muestra la descripción de variables dependientes e independientes.


23

Hipótesis

La implementación de CORACS, permitirá mitigar los factores de error humano,

así como el tiempo invertido en el conteo y clasificación de tubos PVC en la industria.


24

Capítulo II

Marco teórico

Definición de una imagen digital

Se especifica como una función bidimensional f (x, y), donde x e y van a ser las

coordenadas de un plano que sujeta todos los puntos de la misma f (x, y), siendo

además la amplitud en el punto (x, y) el cual representa los niveles de gris en ese punto

exacto. Es conocida como imagen digital si se cumplen que los valores de intensidad de

la función f estén de forma discreta y finita, igualmente que las coordenadas x, y

(Campos, 2005).

Cualquier imagen digital se encuentra compuesta por una cantidad finita de

elementos los cuales poseen un ámbito con valores particulares, a dichos elementos

también se les nombra pixeles, que va a ser la unidad mínima de medida para cualquier

imagen digital (Vilet, 2005).

En la Figura 1, se observa una imagen de 250 niveles de intensidad, donde cada

pixel está representado por un número entero que representa la intensidad en escala de

grises. Ampliando en la imagen se pueden apreciar los valores.


25

Figura 1.

Imagen 250 niveles de intensidad y representación numérica fragmento 8x8.

Nota. Esta imagen representa en totalidad la escala de grises, debido a que tiene

diferentes tonalidades con valores de 0 – 250 que están descritas por una matriz de 8x8.

Tomada de procesamiento de imágenes (p.42).

Imágenes en Color

Para que una imagen se considere una imagen digital en color, debe cumplir con

los criterios enumerados anteriormente, excepto que cada píxel o elemento se describe

y codifica de acuerdo con el espacio de color utilizado. Como, por ejemplo, para el

espacio de color RGB (habitualmente el más común para la representación de

imágenes), cada píxel se representa como un color creado a partir de ciertos niveles de

intensidad de colores rojo, verde y azul, representados por matrices bidimensionales

que indican el nivel de intensidad de cada color en la imagen como se muestra en las

Figuras 2 y 3.
26

Figura 2.

Planos con color RGB representados como 3 matrices bidimensionales.

Nota. La imagen muestra los planos de color RGB, están descritos por tres matrices

diferentes y cada una representa un color primario (rojo, verde y azul), en cada una de

las matrices un mismo píxel tiene distintos valores que describen su tonalidad en la

imagen. Tomada de procesamiento de imágenes (p.43).

La descripción de imágenes con matrices en el campo de la visión artificial es la

más habitual. Sin embargo, esta no es la única forma de representar una imagen a

color, sobre todo cuando la imagen se procesa en una FPGA, se establece la idea de

flujo de datos de bus y se pierde el concepto de matriz.


27

Figura 3.
Componentes primarios para pixeles de una imagen a color.

Nota. La ilustración muestra los elementos principales en los píxeles de una imagen en

color. Tomada de procesamiento de imágenes (p.43).

En una imagen RGB, el color de cada píxel está definido por la cantidad del nivel

de intensidad de cada color primario, haciendo así que el color blanco sea el resultado

de la máxima intensidad de cada uno de los componentes. Por el contrario, el color

negro es consecuencia de su mínima intensidad (Fig. 4).


28

Figura 4.

Pixeles resultantes en función de la intensidad de los componentes.

Nota. La figura muestra el color resultante por la combinación de las diferentes

intensidades de cada uno de los colores primarios. Tomada de procesamiento de

imágenes (p.44).

Variables del color

Para comprender por qué existen diferentes espacios de color, comenzamos

describiendo las características innatas del color: matiz, brillo, tonalidad y saturación.

La tonalidad (tono). Este es el valor cromático de un color, la frecuencia del

espectro en el que se encuentra. Es la cualidad que permite clasificar los colores,

depende de la longitud de onda predominante.

La luminosidad (Ligthness). Es consecuencia de la mezcolanza entre los

colores del blanco y el negro y tiene referencia de matiz. Cuanto más es la luminosidad

en una imagen, más blanco posee.

La saturación (Saturation). Los colores menos saturados siempre se van a ver

agrisados, y con una mayor cantidad de impurezas y con menor intensidad luminosa.

A medida que la saturación de cada color disminuye son difíciles de distinguir,

por lo que el procesamiento de imágenes es un campo más complejo.


29

En la Figura 5, podemos ver los niveles de saturación de los colores primarios

en una imagen.

Figura 5.

Escala de la saturación de las componentes RGB.

Nota. La figura muestra la escala de la saturación de las componentes RGB, toman

valores de 0 siendo la intensidad mínima y 255 la intensidad máxima. Tomada de

procesamiento de imágenes (p.45).

Espacios de color

Los espacios de color son una herramienta importante en el procesamiento de

imágenes, ya que le permiten analizar cada píxel desde diferentes perspectivas para

aprovechar toda la información disponible en la imagen. Actualmente, el trabajo

realizado se centra en la segmentación de imágenes en color, la localización de objetos,

el análisis de texturas, la morfología matemática, la estandarización de imágenes y más.

Los sistemas lineales son más comunes en los espacios de color porque buscan

ciertas características en una imagen. Algunos de los espacios de color no pretenden

hacer que la representación cromática sea más fiel a la realidad, sino que son

simplificaciones matemáticas, a menudo no lineales, que permiten tratar con ciertas

propiedades de la imagen (Oltra, 2008).


30

El modelo RGB. El modelo RGB es uno de los más utilizados para crear y

reproducir colores en pantallas y pantallas por los sistemas informáticos. Está

basado en la llamada síntesis relativa, en donde los distintos colores son el

resultado de la suma de los niveles de intensidad de los colores primarios

incluyendo el negro y blanco.

La Figura 6 muestra la representación gráfica del modelo RGB utilizando un solo

cubo, donde en cada uno de los ejes se representan los valores correspondientes a los

diferentes colores, ya que la fuente (0,0,0) representa el negro y las coordenadas

(1,1,1).

También representan el blanco en los ejes R, G y B con las coordenadas (1,0,

0), (0,1,0), (0, 0.1) representan los colores rojo, verde y azul. Los tres vértices restantes

(1, 0,1), (0, 1,1) y (1, 1,0) representan los colores magenta, cian y amarillo

respectivamente. La diagonal del cubo representa la gama de grises del negro al

blanco.
31

Figura 6.

Representación gráfica del modelo RGB.

Nota. El modelo RGB es descrito como un cubo en donde los ejes x, y, z representan a

los tres colores primarios de una imagen, tomando en cuenta que el valor en cada uno de

los ejes es 255 y que al alejarse del eje este valor disminuye por lo que se puede observar

la gama de colores que se pueden formar.

Análisis y procesamiento de imágenes

El análisis de imágenes digitales es el campo de la ingeniería que se ocupa de la

extracción de información contenida en una imagen. Incluye técnicas cuyo objetivo

principal es facilitar la búsqueda e interpretación de la información contenida en el

mismo. Un sistema de análisis de imágenes es especial porque tiene una imagen como

parámetro de entrada y normalmente la salida es digital, representando la información

contenida en la imagen de entrada (Cuevas, 2016).

Sin embargo, para obtener los parámetros y la información contenida en la

imagen, es necesario realizar ciertos pasos de procesamiento y filtrado, analizar la

imagen y adaptarla a una aplicación específica para que el resultado del tratamiento

dependa del problema cuidado.


32

El procesamiento y análisis de imágenes está diseñado para resolver tres de los

mayores problemas con las imágenes:

• Digitalización y codificación que facilitan su transmisión, representación y

almacenamiento.

• Mejorar y restaurar una imagen para interpretar más fácilmente el software.

• Descripción y segmentación de imágenes para aplicaciones de visión artificial.

Todos los algoritmos diseñados para enfatizar y diferenciar ciertos aspectos de

la imagen, así como ayudar en la eliminación de objetos no deseados, el ruido, se

denominan técnicas de mejora de imagen. Los métodos de procesamiento se dividen en

tres grupos:

• Espacial: Son métodos que procesan imagen píxel por píxel, o tomando un

conjunto de píxeles vecinos.

• En el campo de la frecuencia: En general, estos métodos se aplican a los

coeficientes resultantes de la transformación fértil de una imagen.

• Extracción de características: estos métodos se caracterizan porque se centran

en el análisis de imágenes con el fin de extraer características y áreas de

interés, separar objetos del fondo e identificar bordes o formas.

Métodos de extracción de características

Este método toma una imagen de entrada y extrae características interesantes

como: coordenadas de objetos que cumplen con ciertas propiedades, reconocimiento

de curvas y formas, etiquetado de componentes, etc. Este método es complejo como

primer paso en la inteligencia de un sistema de visión artificial.

Extraer información específica de una imagen es actualmente un área de

extensa investigación. Estas investigaciones cubren temas que van desde la aplicación

de filtros lineales simples hasta la automatización de la detección de objetos. En el


33

campo de la visión por computadora, existen varios métodos, pero lamentablemente no

existe un método universal para el reconocimiento automático de características, sino

que, de acuerdo con los requisitos del problema, la metodología se personaliza.

El primer paso que debe realizar un sistema de visión artificial es extraer la

información necesaria para la siguiente etapa de interpretación de la forma más

eficiente, rápida y robusta posible.

Principalmente los sistemas debes cumplir con las siguientes condiciones:

• El coste del sistema en el cual está integrado el método tendería que ser el

mínimo al extraer la información útil de una imagen.

• La localización de los componentes de la imagen debe ser muy precisa, al igual

que el error cometido en su evaluación debe ser el menor posible.

• El método utilizado para extraer una característica debe ser fuerte y estable.

Los datos extraídos deben contener la mayor cantidad de información posible

sobre la escena, incluso extrayendo la información geométrica que contiene.

Segmentación

La segmentación divide la imagen en áreas componentes u objetos, de modo

que los píxeles de esas áreas tengan características o propiedades similares, como la

escala de grises, el contraste o la textura.

Los algoritmos de segmentación se basan en las características básicas de la

intensidad de la imagen: discontinuidad y similitud. En el caso de la discontinuidad, la

imagen se divide por cambios repentinos de intensidad, como sucede con la

identificación de los bordes de una imagen, mientras que una categoría de

segmentación basada en imágenes divide la imagen en áreas similares según un

conjunto de criterios predefinidos.


34

Este algoritmo se encarga de evaluar cada píxel de la imagen y decidir si

contiene las características interesantes o no. Como resultado, se crea una imagen

binaria, en la que los píxeles que pertenecen al objeto obtienen el valor de '1' (objeto

frontal), a diferencia de los píxeles que no pertenecen al objeto obtienen el valor de '0'

(fondo). A partir de un análisis de determinadas propiedades de la imagen, como la

intensidad o la textura, asignan el valor a cada píxel. Existen diferentes tipos de

segmentación, se enumeran a continuación:

Basada en características de píxel

• Por los niveles de gris

• De imagen en color

• Por texturas

Basado en transición

• Identificar bordes

Basado en modelos

• Transformada de Hough

Basado en la homogeneidad

• Áreas de aire acondicionado

• Áreas planas

• Múltiples marcadores

Basada en morfología matemática

El tipo de segmentación que se utiliza en el procesamiento de imágenes

depende de la información típica que se quiera obtener de la imagen, es conveniente

tener objetivos claros antes de elegir un modelo de segmentación eficaz para el

problema a resolver. También es habitual realizar operaciones de filtrado después de la


35

fase de segmentación, así como determinar las propiedades que permiten separar y

clasificar los objetos encontrados.

Dado que no existe una evaluación de la eficacia de cada uno de los métodos

de segmentación para una aplicación concreta, debido a que existe una gran cantidad

de imágenes y diferentes aplicaciones, se comprueba experimentalmente el éxito de la

operación en cada caso.

Transformación de Hough

La transformación de Hough es una herramienta para identificar curvas en una

imagen, basada en la búsqueda de figuras geométricas de objetos: líneas rectas,

triángulos, elementos circulares, etc. Esta es una de las técnicas de segmentación más

comunes en el procesamiento de imágenes, debido a su resistencia al ruido y su

comportamiento en presencia de espacios en el borde del objeto. Antes de aplicar la

transformación de Hough, es necesario binarizar los píxeles de la imagen que forman el

borde del objeto.

Formulación clásica de la Transformada de Hough

La forma clásica fue propuesta originalmente por Paul Hough (1959),

principalmente la transformada de Hough se utiliza para detectar líneas rectas en una

imagen, basándose en dos parámetros implícitos en la ecuación de la recta según la

representación pendiente-ordenada en el origen,

𝑦 = 𝑎𝑥 + 𝑏.

La transformación utiliza siempre la tabla de agregación, que suma los votos que

dan como resultado los parámetros más adecuados al tipo de línea a identificar.

Dado que existen inconvenientes numéricos con la representación de la

transformada de Hough para rectas horizontales, cuando 𝑎 = 0 y con rectas verticales,


36

cuando 𝑎 → ∞, por lo que ahora la transformada de Hough se representa en

coordenadas polares (Rojas, 2008).

Formulación en coordenadas polares de la Transformada de Hough

Esta representación de la transformada de Hough fue desarrollada por Richard

Duda y Peter Hart (1972), en la Figura 2.7, se puede observar el cambio de

coordenadas de pendiente -ordenada a coordenadas polares, radio – ángulo, para la

representación de las rectas, cuyo nuevo parámetro es,

𝜌 = 𝑥 𝐶𝑜𝑠𝜑 + 𝑦 𝑆𝑒𝑛 𝜑.

Figura 7.

Formulación en coordenadas polares.

Nota. La figura describe los componentes de las coordenadas polares, en las que se

representan todas las rectas en la transformada de Hough.

Teniendo la nueva definición de parámetros se tiene el rango natural de 𝜑 ∈

[0,2𝜋], en la Figura 8, se representa la curva sinusoidal para el punto en particular en el

que coinciden toda la familia de rectas que se obtienen al transformar cada punto (𝑥, 𝑦)
37

de la imagen de origen en los puntos (𝜌, 𝜑) del espacio de Hough mediante

coordenadas polares.

Figura 8.

Transformada de Hough en un punto.

Nota. La figura representa el punto en donde coinciden todas las curvas sinusoidales

obtenidas de las rectas mediante la transformada de Hough.

Por ejemplo, se tienen los tres puntos A (0,2), B (2,0) y C (1,1) en la imagen de

origen. Logrando tres curvas sinusoidales con una transformación de estos tres puntos.

En la Figura 9, vemos las gráficas de las curvas sinusoidales de los puntos:

A (0.2) → ρ = 2 Sin φ

B (2.0) → ρ = 2 Cos φ

C (1,1) → ρ = Cos φ + Sin φ.


38

Figura 9.

Transformada de Hough de tres puntos.

Nota. La figura muestra las curvas sinusoidales de 3 puntos diferentes y a su vez se

muestra el punto de coincidencia de las mismas. Tomada de Sistemas de visión por

computadora para la detección de objetos esféricos a través de la transformada de Hough

(p.4), por Rojas Z, Teddy V.; Sanz F., Wilmer; Arteaga, Francisco (2008), Revista

INGENIERÍA UC

Como resultado, el punto de intersección de las tres sinusoides es (φ, ρ) = (π / 4,

√2) en el espacio Hough, lo que significa que la línea que conecta los tres puntos A, B y

C es √ 2 = x Cos (π / 4) + y Sin (π / 4), que en el espacio cartesiano original sería x + y

= 2, a esta operación se le llama como Inversa de Hough.

Transformada circular de Hough

Esta transformada específicamente es destinada para detectar círculos en una

imagen, para lo cual la descripción de parámetros utilizada es,

𝑓(𝑥, 𝑦, 𝑥𝑜 , 𝑦𝑜 , 𝑟) = (𝑥 − 𝑥𝑜 )2 + (𝑦 − 𝑦𝑜 )2 − 𝑟 2 = 0

Donde los términos (𝑥𝑜 , 𝑦𝑜 , 𝑟), conforman el conjunto de parámetros que

expande el espacio de Hough a uno tridimensional. Para reducir los cálculos en el


39

espacio de parámetros de Hough se utiliza la dirección del gradiente ∠𝐺, teniendo una

detección eficiente, limitando de todos los valores de parámetros que votan a solo los

que sean más consistentes con la orientación de los bordes de las figuras buscadas en

la imagen. Así, se puede escoger que voten solo aquellas cuya orientación 𝜑 éste

dentro de cierto rango 𝜙 − 𝑎 ≤ 𝜑 ≤ 𝜙 + 𝑎, donde 𝜙 es la dirección del gradiente (Rojas

Z, Sanz F., & Areteaga, 2008)

En la Figura 10, se muestra que la dirección del gradiente es perpendicular a la

dirección tangente de una curva dada por 𝑓 = (𝑥, 𝑦) = 0.

𝑑𝑦 𝑓𝑥 ′ (𝑥, 𝑦)
𝑇𝑎𝑛 𝜃 = =− ′ = 𝑔(𝑥, 𝑦)
𝑑𝑥 𝑓𝑦 (𝑥, 𝑦)

Figura 10.

Dirección del gradiente.

Nota. La figura muestra la dirección y coordenadas del gradiente, en las cuales estarán

representados cada uno de los puntos obtenidos por la transformada circular de Hough.
40

Tomada de Sistemas de visión por computadora para la detección de objetos esféricos a

través de la transformada de Hough (p.5), por Rojas Z, Teddy V.; Sanz F., Wilmer;

Arteaga, Francisco (2008), Revista INGENIERÍA UC

Teniendo que las coordenadas del gradiente serán igual a la división de las
𝜋
derivadas parciales de 𝑓(𝑥, 𝑦), siendo que 𝜙 = ∠𝐺 𝑦 𝜃 = 𝜙 ± .
2

La representación general para cualquier tipo de parámetros es:

𝑓(𝑥, 𝑦, 𝛼1 , … , 𝛼𝑛 ) = 0

𝑔(𝑥, 𝑦, 𝛼1 , … , 𝛼𝑛 ) = −𝐶𝑜𝑡𝜙

Como se puede observar en la Figura 11, cualquier punto (𝑥, 𝑦) en la imagen

original, le corresponde en el espacio tridimensional una superficie en forma de cono.

Figura 11.

Espacio tridimensional de la Transformada circular de Hough.

Nota. La figura muestra el espacio tridimensional de la Transformada circular de Hough

de tres puntos diferente, así como los puntos de coincidencia de los mismos.
41

La dirección del gradiente está representada por el siguiente sistema de ecuaciones:

(𝑥 − 𝑥𝑜 )2 + (𝑦 − 𝑦𝑜 )2 − 𝑟 2 = 0

(𝑥 − 𝑥𝑜 )2
= −𝐶𝑜𝑡 𝜙
(𝑦 − 𝑦𝑜 )2

𝑥𝑜 = 𝑥 ± 𝑟 𝐶𝑜𝑠𝜙

𝑦𝑜 = 𝑦 ± 𝑟 𝑆𝑒𝑛𝜙

𝑦𝑜 − 𝑦
𝜙 = ∠𝐺 = 𝑇𝑎𝑛−1 ( )
𝑥𝑜 − 𝑥

Con estas ecuaciones se calcula cuáles son los valores y la dirección del

gradiente que les corresponden a cada punto de la imagen de origen en el espacio

tridimensional de la transformada circular de Hough.


42

Capítulo III

Metodología de Planificación del Sistema CORACS

En esta sección se propone una metodología para el desarrollo del sistema

CORACS, en base a metodología de investigación aplicada.

Metodología Propuesta

Para lograr un diseño óptimo del sistema, en la Figura 12, se presenta la

metodología propuesta en la cual se detalla para etapa posteriormente.

Figura 12.

Metodología propuesta para el sistema CORACS.

Requerimientos para capturar una imagen

Diseño de la interfaz gráfica

Desarrollo del código

Parámetros para el conteo y clasificación


de objetos

Evaluación del sistema

Nota. La figura muestra la metodología de 5 etapas propuesta para el sistema

CORACS.
43

Requerimientos para captura de imagen

La metodología de la Figura 13, considera los requerimientos para captura de

imagen como etapa inicial para el desarrollo del sistema, teniendo en cuenta la

iluminación del entorno y el ángulo con respecto del suelo para la cámara.

La Figura 13, muestra la captura de una imagen con un ángulo de 90 grados

(normal) con respecto del suelo o también a 0 grados con respecto de los objetos, en la

Figura 3.3, se muestra la captura de una imagen con un ángulo mayor (picado), en la

Figura 3.4, se muestra la captura de una imagen con un ángulo menor (contrapicado).

Concluyendo que el método “normal” para capturar una imagen impide la perdida de

información que esta contiene.

Figura 13.

Imagen con un ángulo de 90 grados con respecto del suelo.

Nota. La figura muestra la imagen con un ángulo de 90 grados con respecto del suelo.
44

Figura 14.
Imagen con método picado.

Nota. La figura muestra la imagen con método picado.

Figura 15.

Imagen con método contrapicado.

Nota. La figura muestra la imagen con método contrapicado.

Además del ángulo adecuado, también es importante la distancia para capturar

la imagen, debido a que al no tomar a una distancia similar todas las imágenes, estas
45

tendrán diferente información de los objetos entre sí, impidiendo una estandarización de

los objetos de interés. Se realizó distintas pruebas a diferentes distancias, tomando en

cuenta la calidad de la imagen capturada y que tenga buena limitación de las regiones

de los objetos.

Para la Figura 14, la distancia de captura de la imagen es de 50 centímetros, en

la Figura 15, la distancia es de 1 metro y en la Figura 16, la distancia es de 1.5 metros,

teniendo como resultado que la distancia 1 metro además de brindar una buena calidad

y limitación de objetos muy notoria, permite abarcar un buen espacio de captura para un

número mayor de objetos.

Figura 16.

Imagen capturada a una distancia de 50 centímetros de los tubos PVC.

Nota. La figura muestra la imagen a una distancia de 50 centímetros de los tubos PVC.
46

Figura 17.

Imagen capturada a una distancia de 1 metro de los tubos PVC.

Nota. La figura muestra la imagen a una distancia de 1 metro de los tubos PVC.

Figura 18.

Imagen capturada a una distancia de 1.5 metros de los tubos PVC.

Nota. La figura muestra la imagen a una distancia de 1.5 metros de distancia de los

tubos PVC.
47

Diseño de la interfaz

Para diseñar la interfaz gráfica del sistema CORACS, en la ventana de

comandos de la herramienta de software MATLAB se escribe el comando guide,

posterior a presionar la tecla enter aparece un cuadro de diálogo, seleccionando la

plantilla, a continuación, se da clic en Blank GUI (Default) como se muestra en la Figura

18.

Figura 19.

Parámetros como la creación de un nuevo GUI.

Nota. La figura muestra los parámetros como la creación de un nuevo GUI.

Dependiendo del espacio a utilizar para el diseño de la interfaz gráfica, el lienzo

del editor GUIDE se puede aumentar o disminuir.

Una vez definido el tamaño del lienzo, se procede a insertar los componentes

que conforman la interfaz gráfica como botones, cuadro de texto y cuadros de imagen.
48

Cabe recalcar que las dimensiones de cada elemento que se inserta en el lienzo

son por defecto, pero se pueden modificar de acuerdo a lo requerido, así como también

las características de cada uno como: el texto, el tag, tipo de letra, color de letra, entre

otros, en la Figura 3.9 se observa estas opciones.

Figura 20.

Editor de características de los elementos del GUI.

Nota. La figura muestra el editor de características de los elementos del GUI.

La interfaz gráfica de usuario del sistema CORACS fue diseñada siguiendo el

diagrama de flujo de la Figura 20.


49

Figura 21.

Diagrama de flujo de la interfaz CORACS.

Nota. La figura expone el diagrama de flujo de la interfaz CORACS.

El diagrama de flujo muestra la función de los “botones” presentes en la interfaz

de usuario, en la Figura 21, se muestra la interfaz gráfica de CORACS, tiene un área

rectangular a manera de pantalla, en donde se visualiza la imagen a procesar, consta

de cinco botones identificados como “ABRIR” que sirve para acceder a la carpeta que

contiene las imágenes a procesar, “SELECCIONAR ROI” para señalar los puntos de

coordenadas que representan el área de interés de la imagen, “DETECTAR” para

obtener la información de los objetos de forma circular presentes en la imagen,

“DETALLAR” para mostrar un panel mostrando la cantidad total de tubos PVC


50

presentes en la imagen, así también como la cantidad de tubos de acuerdo a su

diámetro, y “SALIR” para cerrar la interfaz de usuario.

Figura 22.

Interfaz de usuario de CORACS.

Nota. La figura muestra la interfaz de usuario de CORACS.

Desarrollo del código

Basándose en el diseño de la interfaz de usuario, lo principal es acceder a la

base de datos mediante el botón “ABRIR” en donde están almacenadas las imágenes a

procesar, en la Figura 22, se observa la imagen en la pantalla de la interfaz de usuario

seleccionada para su procesamiento. Cabe recalcar la imagen original está en RGB

(imagen en colores), como lo muestra la Figura 23, primero se convierte de RGB a

escala de grises, el contraste de la imagen es importante porque se puede perder

información, para evitar esto se modifica el contraste de toda la imagen mediante la

comparación del umbral, comparándolo con cada uno de los píxeles.


51

Figura 23.

Imagen con escalas de grises.

Nota. La figura muestra la imagen con escala de grises.

Figura 24.

Imagen original en RGB.

Nota. La figura muestra la imagen original en RGB capturada con los parámetros

establecidos para CORACS.


52

Una vez cargada la imagen en la pantalla de la interfaz, el usuario debe

seleccionar la región de interés de la imagen (ROI), dando clic en el botón “Seleccionar

ROI” se muestra un cursor en forma de cruz cuyas aristas atraviesan toda la imagen

facilitando la selección de dos puntos que indican las coordenadas del ROI, tomando en

cuenta que contenga todos los objetos de forma circular que desean detectar. En la

Figura 24, se muestra el cursor que se utiliza para seleccionar de la región de interés

(ROI).

Figura 25.

Cursor para la seleccionar la región de interés (ROI).

Nota. La figura muestra el cursor para la seleccionar la región de interés (ROI).

Después de seleccionar los puntos de la región de interés (ROI), se muestra un

rectángulo de color amarillo limitando el área seleccionada como se observa en la

Figura 25, posteriormente al dar clic en el botón “Capturar”, se muestra el ROI

seleccionado en la pantalla de la interfaz de usuario como se observa en la Figura 3.16.


53

Figura 26.

Limitación del área del ROI.

Nota. La figura muestra la limitación del área del ROI.

Figura 27.

ROI seleccionado.

Nota. La figura muestra el ROI seleccionado.

Cabe recalcar para detectar objetos de formas geométricas, es recomendable

que se realce los bordes, para realizar esta operación se crea un filtro pasa altos y

además se realiza una suma aritmética entre el resultante del filtro pasa altos y la
54

imagen en escala de grises original, teniendo como resultado una imagen con bordes

más pronunciados que ayuda a la detección de los cuerpos de interés. En la Figura 27,

se observa el resultado del filtro pasa altos en la imagen y la operación aritmética.

Figura 28.

Resultado de aplicar un filtro pasa altos en la imagen.

Nota. La figura muestra el resultado de aplicar un filtro pasa altos en la imagen.

El siguiente paso en el procesamiento es la binarización de la imagen, que se

logra al cambiar el valor de los píxeles en escala de grises que cuyo dominio es [0,255],

en donde “0” es el color blanco y el valor mayor que “0” e igual “255” son las variantes

del color gris, por [0, 1] siendo el “0” el color blanco y “1” el color negro, para realizar

este cambio se debe primero sacar el valor medio que se obtiene mediante el

histograma de la imagen en escala de grises, asignándole el valor de 0 o 1 a los pixeles

cuyo valor sea menor o mayor al valor medio del histograma respectivamente. En la
55

Figura 28, se observa la imagen binarizada aplicando los valores 1 y 0 a cada uno de

sus píxeles.

Figura 29.

Imagen binarizada.

Nota. La figura muestra la imagen binarizada de la Figura 3.17.

En la Figura 29, se observa el histograma que muestra el valor de los píxeles de

la imagen en escala de grises y en la Figura 3.20, se muestra el histograma de la

imagen binarizada.
56

Figura 30.

Histograma de la imagen escala de grises.

Nota. La figura muestra el histograma de la imagen escala de grises.

Figura 31.

Histograma de la imagen binarizada.

Nota. La figura muestra el histograma de la imagen binarizada.


57

Al notar que en la imagen binarizada tiene ruido, es decir existen puntos blancos

en las áreas negras y de la misma manera existen puntos negros en las áreas blancas,

para solucionar este problema, se crea un elemento estructural con forma de disco y un

tamaño de 1 píxel, cuya finalidad es erosionar la imagen, causando que algunos píxeles

adyacentes a los píxeles de valor 0 cambien su valor de 1 a 0 para eliminar ciertas

áreas de color blanco en la imagen. El resultado de esta operación morfológica se

observa en la Figura 31.

Figura 32.

Resultado del elemento estructural aplicado en la imagen binarizada.

Nota. La figura muestra el resultado del elemento estructural aplicado en la imagen

binarizada.

Al tener la imagen binarizada, se utiliza la transformada de Hough para detectar

todos los objetos de forma circular presentes en una imagen, en la Figura 32, se
58

muestra el llamado espacio de Hough en donde se encierran en cuadros de color rojo

los puntos de intersección de las curvas sinodales indicando todos los objetos de forma

circular detectado.

Figura 33.

Diagrama del Espacio de Hough de la imagen procesada.

Nota. La figura muestra el diagrama del Espacio de Hough de la imagen procesada.

Sabiendo que la finalidad de CORACS no es solo detectar los objetos de forma

circular (tubos PVC), sino también clasificarlos según su diámetro, se realizaron

pruebas a cada uno de los tubos PVC para parametriza la cantidad de píxeles que

ocupan los tubos de diferentes diámetros en la imagen, teniendo en cuenta los


59

requerimientos anteriores como la distancia a la que se debe tomar la imagen, así como

el ángulo de inclinación de la cámara.

Además, el algoritmo de CORACS permite que el usuario diferencie en la

imagen los tubos debido a que los encierra en circunferencias de distintos colores

según su diámetro. En la Figura 33, se muestra la detección de diferentes diámetros de

tubos PVC para su parametrización, se escogieron tubos PVC de diámetros igual a una

pulgada, una pulgada y media, dos pulgadas(azul), tres pulgadas(rojo), cuatro

pulgadas(cian) y seis pulgadas(verde), debido a que son los más comercializados.

Figura 34.

Parametrización de los tubos PVC.

Nota. La figura muestra la parametrización de los tubos PVC.

En la Figura 34, se puede observar que al dar clic en el botón “Detallar” se

muestra un panel (cuadro rojo), que describe la cantidad de tubos PVC presentes en la

imagen, a su vez clasificados por su diámetro.


60

Figura 35.

Funcionamiento del botón “Detallar”.

Nota. La figura muestra el funcionamiento del botón “Detallar”.


61

Capítulo IV

Análisis de CORACS y resultados obtenidos

Arquitectura

El sistema CORACS utiliza una arquitectura de capas, es una técnica software

para separar las diferentes partes de la aplicación, con el objetivo de mejorar su

comprensión, secuencia lógica, mantenimiento y sus funciones que deben ser

escalables continuamente. Esta separación facilita hacer cambios en el código evitando

errores en dicho proceso que puede dañar el programa.

En la Figura 36, se muestra la arquitectura del sistema, se conforma por tres

capas: capa de presentación, cada de lógica y capa de datos.

Capa de presentación, en esta capa se encuentra la interfaz gráfica donde el

usuario interactua para obtener información de las caracteristicas de interés de una

imagen procesada.

Capa lógica, esta capa detalla los aspectos utilizados para desarrollar el código

del sistema CORACS.

Capa de datos, representa la base de datos en donde se encuentran

almacenadas las imágenes a procesar.


62

Figura 36.

Arquitectura del sistema CORACS.

Nota. La figura muestra la arquitectura del sistema CORACS.

Esquema

En la Figura 36, se presenta el esquema del sistema CORACS que consta de

cuatro etapas, siendo:

Primera etapa, alinear los objetos entre sí, verificar la iluminación, retirar objetos

que no sean de interés.

Segunda etapa, cumplir con los requisitos de la posición de los objetos para

capturar la imagen como el ángulo con respecto del suelo y distancia de la cámara.

Tercera etapa, en esta etapa muestra todos los algoritmos que conforman el

código de funcionamiento del sistema como: lectura de la imagen, procesamiento de la

imagen, detección de objetos de forma circular (Transformada de Hough), clasificación

de los objetos detectados.


63

Cuarta etapa, muestra el resultado del sistema CORACS, así como los datos de

interés: cantidad y clasificación de tubos.

Figura 37.

Esquema del sistema CORACS.

Nota. La figura muestra el esquema del sistema CORACS, detallando sus componentes

y parámetros.

Resultados

La aplicación se implementó sobre la plataforma MATLAB, la cual se ejecuta en

una computadora Intel Core 15 con 6 GB de RAM y el sistema operativo Windows 8.1.

Con respecto al procesamiento y reconocimiento de objetos de forma circular se

usaron 23 imágenes. Para verificar el comportamiento de CORACS se ubicó a los tubos


64

PVC en diferentes ambientes, como, por ejemplo, en la Figura 4.3, se observa una

puerta metálica de color verde en la parte posterior a los tubos PVC, en la Figura4.5, se

ubican a los tubos PVC en la mitad de algunos objetos y a su vez a un tubo se le

empuja para que no esté a lineado a los demás, en la Figura 37, se coloca una plancha

metálica de color gris para verificar que CORACS no tenga errores en el momento del

procesamiento de imágenes, en la Figura 38, se ubican algunos tubos PVC de

diferentes diámetros.

Figura 38.

Imagen tomada con una puerta metálica verde de fondo.

Nota. La figura muestra la imagen tomada con una puerta metálica verde de fondo, para

verificar que la transformación de RGB a escala de grises no se vea afectado por el color

de la puerta y se pierda información de la imagen.


65

Figura 39.

Respuesta de CORACS de la Figura 38.

Nota. La figura muestra el comportamiento de CORACS, frente a la situación que detrás

de los tubos PVC se encuentra una puerta verde, teniendo un resultado positivo por parte

del sistema.

Figura 40.

Imagen tomada con los tubos PVC al lado de otros objetos.

Nota. Se colocan objetos de distintos colores y formas a lado de los tubos para poder

verificar que el sistema diferencia correctamente los tubos PVC.


66

Figura 41.

Respuesta de CORACS de la Figura 40.

Nota. La figura muestra el comportamiento de CORACS al poner objetos con el fin de

verificar la detección de los tubos PVC y descartar el resto.


67

Figura 42.

Se coloca una plancha gris detrás de los tubos PVC.

Nota. Se coloca una plancha de color similar al de los tubos PVC con la intención que

CORACS pueda confundirla con la escala de colores y afecte en el procesamiento y

perdiendo información de la imagen.


68

Figura 43.

Respuesta de CORACS de la Figura 42.

Nota. La figura muestra el comportamiento de CORACS a la intención de poder jugar con

la tonalidad del fondo similar a los tubos PVC, teniendo como resultado la pérdida de la

información de uno tubo PVC


69

Figura 44.

Tubos PVC de diferentes diámetros.

Nota. En esta figura se colocan tubos PVC de diferentes diámetros para mostrar los

diferentes colores escogidos para cada diámetro.


70

Figura 45.

Respuesta de CORACS de la Figura 45.

Nota. Se puede observar los colores asignados para cada diámetro de los tubos PVC.

Para los resultados de CORACS en las diferentes pruebas propuestas

anteriormente se clasificó en cuatro categorías, VP (verdaderos positivos), en donde

reconoció todos los tubos PVC en la imagen, VN (verdaderos negativos), en donde no

solo reconoció los tubos PVC presentes en la imagen, sino también objetos adicionales,

FN (falsos negativos), en donde no reconoce por completo el número de tubos PVC

presentes en la imagen y los FP(falso positivos), que representan los resultados en

donde no reconoció ningún tubo PVC en la imagen.

Con los parámetros planteados anteriormente, de un total de 23 imágenes, se

obtuvieron 15 VP, 3 VN, 4 FN y 1 FP. A partir de estos valores es posible calcular la

eficiencia de CORACS y su funcionalidad, mediante la siguiente fórmula.

𝑉𝑃 + 𝑉𝑁
𝐸= ∗ 100
𝑉𝑃 + 𝑉𝑁 + 𝐹𝑃 + 𝐹𝑁

14 + 4
𝐸= ∗ 100
14 + 4 + 4 + 1
71

𝐸 = 78,26 %

Tomando como casos acertados solamente a verdaderos positivos y verdaderos

negativos, en los cuales CORACS reacciona de forma óptima, teniendo como resultado

una eficiencia de 78.26 %. Pero a su vez también se realizó el cálculo de la eficiencia de

CORACS sin tomar en cuenta los falsos negativos, debido a que son errores humanos

como una mal alineación de los tubos PVC, una distancia diferente a la planteada e

inclinación de la cámara, al realizar de nuevo el cálculo tomando en cuenta estos

últimos factores, se tiene la siguiente fórmula. Teniendo una eficiencia de 95.65%.

𝑉𝑃 + 𝑉𝑁 + 𝐹𝑁
𝐸= ∗ 100
𝑉𝑃 + 𝑉𝑁 + 𝐹𝑁 + 𝐹𝑃

15 + 4 + 3
𝐸= ∗ 100
15 + 4 + 3 + 1

𝐸 = 95.65 %

Para la validación de la hipótesis que dice: “La implementación del sistema de

visión artificial aplicado a la detección y conteo automático de objetos superpuestos de

forma circular, permitirá mitigar los factores de error humano, así como el tiempo

invertido para realizarlo”. Se realizó una prueba en la ferretería “San Agustín” de la

ciudad de Latacunga tanto en la eficiencia del sistema como la eficacia con respecto al

tiempo que se toman los trabajadores para realizar el conteo y clasificación.

Teniendo en cuenta que, al ser almacenados, los tubos ya se colocan de

manera simétrica, por lo que el tiempo necesario para esta acción es despreciable,

teniendo una respuesta del sistema positiva a los 10 segundos como se observa en la

Figura 41 y Figura 43, de la misma manera los trabajadores contaron y clasificaron la

misma cantidad de tubos PVC como se observa en la Figura 45, demorándose un

tiempo de 2 minutos con 45 segundos. De esta manera se valida la hipótesis planteada.


72

Figura 46.

Resultado del reconocimiento de tubos PVC en la ferretería San Agustín.

Nota. La figura muestra el resultado del reconocimiento de tubos PVC en la ferretería San

Agustín.

Figura 47.

Resultado del reconocimiento de tubos PVC en la ferretería San Agustín.

Nota. La figura muestra resultado del reconocimiento de tubos PVC en la ferretería San

Agustín.
73

Figura 48.

Trabajador de la ferretería San Agustín contando los tubos PVC.

Nota. La figura muestra un trabajador de la ferretería San Agustín contando los tubos

PVC.
74

Conclusiones

Los resultados obtenidos por CORACS para la detección, conteo y clasificación

automática de tubos PVC, presenta una eficiencia del 95,65%.

Para que CORACS tenga un nivel alto de detección fue necesario establecer

parámetros para la captura de imágenes como: distancia de los objetos con respecto a

la cámara, la inclinación de la cámara con respecto del suelo; así también considerar la

luminosidad del ambiente para mitigar posibles errores asegurando que se mantenga la

eficiencia en todas las pruebas realizadas.

Para que el proceso se evidencie de forma clara y precisa el desarrollo de la

aplicación fue primordial, debido a que se presenta una interfaz amigable y de fácil uso

para los usuarios.

Como futuros trabajos, se pretende diseñar un mecanismo autónomo que

controle los parámetros como, distancia, alineación, inclinación, luminosidad de los

tubos PVC para la captura de imágenes mejorando su rendimiento y eficiencia.

Además, el poder ampliar el tipo de objetos de forma circular que se puedan reconocer

como varillas, rollos, llantas, etc.

El algoritmo de CORACS no presenta fallas significativas o pérdidas de

información de la imagen, puesto que la lógica de programación es global, es decir el

algoritmo no es diseñado para una imagen y un problema en específico, sino que está

diseñado para que tome la decisión de aplicar los métodos necesarios para el

procesamiento de acuerdo a la imagen.


75

Bibliografía

Campos, A. C.-B. (2005). La imgen digital. Ortod, 35, 255-66.

https://www.academia.edu/39955886/Procesamiento_Digital_de_Im%C3%A1gen

es_con_Python_Filtros_

Cuevas, E. Z. (2016). Procesamiento digital de imagenes con MATLAB & Simulink. Ra-

Ma.https://scholar.google.com/scholar?hl=es&as_sdt=0%2C5&q=Cuevas%2C+E

.+Z.+%282016%29.+Procesamiento+digital+de+imagenes+con+MATLAB+%26+

Simulink.+Ra-Ma.&btnG=

Fernández, E. V. (2015). Técnicas de visión artificial robustas en entornos no

controlados. http://www.investigo.biblioteca.uvigo.es/xmlui/handle/11093/497

Formentí, J. &. (2008). La imagen gráfica y su reproducción. CPG.

https://www.edicionescpg.es/wp-content/uploads/2015/11/Imagen_indice.pdf

García, Ó. R. (2018). MATLAB: conceptos básicos y descripción gráfica. Universidad

Miguel Hernández.

https://scholar.google.com/scholar?hl=es&as_sdt=0%2C5&q=Forment%C3%AD

%2C+J.+%26.+%282008%29.+La+imagen+gr%C3%A1fica+y+su+reproducci%C

3%B3n.+CPG.&btnG=

Hough, P. (1962). Method and means for recognizing complex patterns.

https://scholar.google.com/scholar?hl=es&as_sdt=0%2C5&q=Hough%2C+P.+%

281962%29.+Method+and+means+for+recognizing+complex+patterns.&btnG=

Oltra, G. N. (2008). Una introduccion a la imagen digital y su tratamiento.

https://books.google.com.ec/books?hl=es&lr=&id=t4eEAEc9XSQC&oi=fnd&pg=P

A9&dq=Oltra,+G.+N.+(2008).+Una+introduccion+a+la+imagen+digital+y+su+trat
76

amiento.&ots=EPnMmFzCQG&sig=sckALhxQ8Q0vI2Bh3HLT9LosIQo&redir_esc

=y#v=onepage&q&f=false

Pistori, H. P. (2005). Hough - Circles: Un módulo de detección de circunferencias.

https://www.slideserve.com/russ/9-detecci-n-de-circunferencias-transformada-de-

hough

Rojas Z, T. V., Sanz F., W., & Areteaga, F. (2008). Sistema de visión por computadora

para la detección de objetos esféricos a través de la transformada de Hough.

INGENIERÍA UC, 77-87. https://www.redalyc.org/pdf/707/70712315009.pdf

Smith, S. T. (2006). MATLAB: advanced GUI development. Dog ear publishing.

https://books.google.com.ec/books?hl=es&lr=&id=lSGEIZscN_gC&oi=fnd&pg=P

A1&dq=Smith,+S.+T.+(2006).+MATLAB:+advanced+GUI+development.+Dog+ea

r+publishing.&ots=Akluu7ToUL&sig=p2k-q0Sa9l439NSYO9gZR-

oSthw&redir_esc=y#v=onepage&q=Smith%2C%20S.%20T.%20(2006).%20MAT

LAB%3A%20advanced%20GUI%20development.%20Dog%20ear%20publishing

.&f=false

Vilet, J. M. (2005). Procesamiento digital de imagenes.

http://laurence.com.ar/artes/comun/Apuntes%20procesamiento%20digital%20de

%20imagenes.pdf
77

ANEXOS

También podría gustarte