reconocimiento de formas y colores con labview
TRANSCRIPT
-
8/20/2019 Reconocimiento de formas y colores con Labview
1/13
S.E.P. S.E.S.T.N.M. T.N.M
INSTITUTO TECNOLÓGICO DE TOLUCA
UNIDAD DE INGENÍERA MECATRÓNICA
Reporte: Reconocimiento de colore ! "orm# en L#$%ie&
MATERIA: CAM
PRO'ESOR: Ing. Jesús Paredes Pedraza
PRESENTAN:
Celaya Celis Héctor
De Alba Gómez Mario Ariel
Daz !ó"ez #rancisco Ja$ier
Gayt%n Garca Anali
&eyes Castre'ón Daniel (nri)*e
+%nc,ez Delgado Carlos Alberto
ÍNDICE
Mete"ec- Méico- /0 de diciembre del 1/02.
-
8/20/2019 Reconocimiento de formas y colores con Labview
2/13
1. INTRODUCCIÓN.......................................................................3
2. DESCRIPCIÓN DE LA PRÁCTICA.................................................4
3. OBJETIVOS..............................................................................5
4. DESARROLLO...........................................................................6
4.1 Adquisici! "! #i"$%& '"() d" i$*+"!"s..................................6
4.2 P'&c"s($i"!#& %('( ") '"c&!&ci$i"!#& d" c&)&'"s....................6
4.3 P'&c"s($i"!#& %('( ") '"c&!&ci$i"!#& d" ,&'$(s +"&$-#'ic(s. 7
4.4 I!#"',( c&! )( #('/"#( ('dui!&................................................8
0. RESULTADOS...........................................................................9
0.1 Di(+'($( ( )&qu"s.................................................................9
0.2 P(!") '&!#().........................................................................10
0.3 T('/"#( "#"'!(......................................................................100.4 P'u"(s.................................................................................11
. CONCLUSIONES......................................................................12
5. UENTES DE CONSULTA..........................................................13
2
-
8/20/2019 Reconocimiento de formas y colores con Labview
3/13
1. INTRODUCCIÓN
Las técnicas de control inteligente basadas en el reconocimiento de patronesson cada vez más demandadas dentro del sector industrial debido a su alta
eficiencia y nivel de confiabilidad. El reconocimiento de imágenes en específico
ha sido aplicado satisfactoriamente a diversos procesos de manufactura,
permitiendo realizar tareas de monitoreo y control de calidad sin la necesidad
de operadores humanos y de forma totalmente automatizada.
En la actualidad existen plataformas de desarrollo de software ue facilitan la
implementaci!n de aplicaciones para el reconocimiento de patrones enimágenes, permitiendo ue desarrolladores con pocos conocimientos en las
áreas de control, procesamiento de se"ales e inteligencia artificial sean
capaces de implementar este tipo de aplicaciones.
La presente práctica presenta la descripci!n y desarrollo de un sistema de
reconocimiento de colores y formas mediante el software Labview. En ella se
especifican operaciones como la programaci!n a bloues de la aplicaci!n y su
interfaz con la tar#eta arduino.
3
-
8/20/2019 Reconocimiento de formas y colores con Labview
4/13
2. DESCRIPCIÓN DE LA PRÁCTICA
$omo se mencion! anteriormente la presente práctica busca el desarrollo de
una aplicaci!n capaz de reconocer colores y formas en tiempo real. %ara ello seha hecho uso de las siguientes herramientas&
16 S&,#7('" L(8i"7 d" N(#i&!() I!s#'u$"!#s
26 T('/"#( A'dui!& UNO
36 9"C($
46 P(#'&!"s +"&$-#'ic&s d" 8('i&s c&)&'"s
Los colores propuestos para el reconocimiento han sido azul, ro#o y verde,
mientas ue las figuras propuestas han sido triangulo circulo y cuadrado.
4
-
8/20/2019 Reconocimiento de formas y colores con Labview
5/13
La práctica puede describirse ba#o los siguientes parámetros&
'( )aciendo uso del m!dulo de *Vision and motion” de Labview, se genera
un programa a bloues capaz de aduirir imágenes de la webcam en
forma continua, procesarlas y reconocer patrones.+( El programa reuiere de un entrenamiento basado en muestras, por lo
ue se generan éstas a base de los patrones geométricos y colores a
reconocer para posteriormente emplearse en el entrenamiento.( -ediante la librería externa “Makerhub” se genera una subrutina dentro
del programa la cual permite la comunicaci!n con la tar#eta arduino
entre otras tar#etas(./( 0l e#ecutar la aplicaci!n y mostrarle los patrones geométricos, este los
reconocerá y encenderá un led virtual dentro de la aplicaci!n seg1n sea
el caso de forma y color detectado2 de forma paralela al led virtual se
activará un led real mediante la tar#eta arduino.
3. OBJETIVOS
• 3esarrollar un programa capaz de reconocer colores y encender un led
virtual dentro de una aplicaci!n seg1n sea el caso.
• 3esarrollar un programa capaz de reconocer formas geométricas y
encender un led virtual dentro de una aplicaci!n seg1n sea el caso.
• 3esarrollar una subrutina capaz de sincronizar el reconocimiento de
formas y colores con la activaci!n de leds físicos mediante una tar#eta
arduino.
5
-
8/20/2019 Reconocimiento de formas y colores con Labview
6/13
4. DESARROLLO
4.1 Adquisici! "! #i"$%& '"() d" i$*+"!"s
La aduisici!n de imágenes en tiempo real se ha realizado por medio del
bloue de *visi!n acuisition4. Este bloue permite aduirir imágenes de una
cámara conectada al ordenador en los formatos de una sola toma, aduisici!n
continua, aduisici!n finita, etc. %ara este caso se ha configurado en
aduisici!n continua con procesamiento en línea.
5a ue la aplicaci!n es de procesamiento continua, todos los m!dulos uedarán
definidos dentro de un bucle *while4 infinito
$abe resaltar ue la imagen es inicialmente almacenada en un buffer previo a
su procesamiento en el bucle antes mencionado, este buffer se muestra en la
anterior imagen mediante la etiueta 6-07. Esto se realiza con la intenci!n de
detectar errores generados en la cámara.
0l bloue de visi!n acuisition se le conecta un bot!n de stop el cual detendrá
la aplicaci!n.
4.2 P'&c"s($i"!#& %('( ") '"c&!&ci$i"!#& d" c&)&'"s
%ara el reconocimiento de colores se ha empleado el m!dulo de *visi!n
assistant4 dentro del software Labview. %ara ello, el m!dulo se ha configuradoba#o la definici!n de color color location, la cual habilita al sistema para
reconocer un patr!n de color al instante ue este entra en nuestra área de
visi!n.
En el 86, el vision assistant se ha colocado dentro del bucle while infinito ya
ue el procesamiento de la imagen será continuo. 3entro de los controles de
6
-
8/20/2019 Reconocimiento de formas y colores con Labview
7/13
salida se ha habilitado en *number of matches4 con la intenci!n de ue al
reconocer un color el sistema envie un valor numérico de ' a la salida2 el
number of matches se habilito para cada uno de los colores ue el sistema
reconocerá.
3ebe resaltarse ue a la salida del control number of matches se coloc! un
comparador l!gico de tal suerte ue se genere una condici!n l!gica de
verdadero respectiva al reconocerse cierto color. Estas condiciones l!gicas de
salida activarán un con#unto de leds indicadores dentro de la aplicaci!n así
como un con#unto de leds reales vía la tar#eta arduino.
4.3 P'&c"s($i"!#& %('( ") '"c&!&ci$i"!#& d" ,&'$(s +"&$-#'ic(s
El desarrollo de esta funci!n sigui! un procedimiento en su mayoría
euivalente al reconocimiento de colores. 3e forma euivalente, se emple! unsegundo m!dulo de visi!n assistant conectado en serie con el primero.
En esta ocasi!n, primeramente se emple! un *color plane extraction4 de las
funciones de procesamiento a color, lo anterior con la intenci!n de transformar
nuestras imágenes a color aduiridas a imágenes en escala de grises.
%osteriormente, se emple! la funci!n de *pattern matching4 contenida en las
utilidades de -achine 8isi!n. En total se emplearon de estas funciones, una
para cada patr!n geométrico.
7
-
8/20/2019 Reconocimiento de formas y colores con Labview
8/13
3e forma análoga al reconocimiento de colores, se activ! el control de number
of matches y se conectaron las salidas a comparadores l!gicos de igualdad con
la finalidad de activar indicadores leds( físicos y virtuales.
9inalemente, se conectar!n + funciones de gran importancia al programa fuera
del bucle while infinito& un indicador de error y un liberador de memoria. El
indicador de error tiene la funci!n de mostrar un cuadro de dialogo dando una
descripci!n de un error en caso de generarse, el liberador de memoria elimina
la imagen almacenada en el buffer liberando la secci!n de memoria empleada.
4.4 I!#"',( c&! )( #('/"#( ('dui!&
%ara esta funci!n se emple! la librería *-a:erhub4 descargada mediante el 86
%ac:age -anager. 3espués de instalarse, para su correcto funcionamiento debe
actualizarse el firmware de la tar#eta arduin mediante el siguiente
procedimiento&
'. $onectar la tar#eta 0rduino al ordenador.+. 0brir Labview.. ;eleccionar la pesta"a de ? Linx =? Linx 9irmware
@izard./. 0ctualizar el firmware de arduino.
Ana vez instalada la librería y actualizado el firmware de la tar#eta se
procederá a explicar el desarrollo del programa.
%rimeramente se inicializ! el uso de la tar#eta mediante el m!dulo *Initialize”,
para ello se gener! un control visible también en el front panel( cuya finalidad
es seleccionar el puerto $B- al ue ha sido conectado la tar#eta antes de
correr el programa.
0cto seguido, se procedi! a introducir el m!dulo *digital write4 con la finalidad
de controlar el estado l!gico de las salidas digitales de la tar#eta. 3ebe notarse
el cuadro azul conectado a este m!dulo, el cual representa un con#unto de
8
-
8/20/2019 Reconocimiento de formas y colores con Labview
9/13
constantes ue indican los n1meros de los pines en la tar#eta a ser
controlados.
Btro elemento de gran importancia a definirse en el m!dulo de digital write
corresponde al control ue indicará el cuándo deben activarse los pines antes
definidos, para ello se gener! un array de variables booleanas capaz de
concentrar los valores generados por los comparadores de igualdad a la salida
de los m!dulos del *vision assistant4. 5a ue el m!dulo de digital write admite
solo valores de control booleanos, el array puede ser conectado directamenteal mismo.
9inalmente, se generaron los m!dulos necesarios para finalizar la e#ecuci!n del
programa ubicados fuera del bucle while infinito. Estos m!dulos son un digital
close, un general close y un indicador de error.
El digital close deshabilita los puestos digitales en la tar#eta, borrando los
valores escritos previamente en esta. El close o general close termina la
conexi!n con la tar#eta liberando el puerto $B- empleado para la
comunicaci!n. El indicador de error muestra una descripci!n de la naturaleza
del error en caso de generarse alguno.
0. RESULTADOS
0.1 Di(+'($( ( )&qu"s0 continuaci!n se muestra una imagen del diagrama a bloues completo&
9
-
8/20/2019 Reconocimiento de formas y colores con Labview
10/13
0.2 P(!") '&!#()
El panel frontal está compuesto por / elementos&
• 6mage out& 8entana donde se muestra el video capturado por la
webcam.• Leds indicadores& -uestran el patr!n detectado seg1n sea el caso.
• ;erial %ort& %ermite al usuario determinar el puerto en el ue se ha
conectado la tar#eta.• Cot!n de stop& detiene el programa.
0 continuaci!n se muestra una imagen del panel frontal&
10
-
8/20/2019 Reconocimiento de formas y colores con Labview
11/13
0.3 T('/"#( "#"'!(
La tar#eta arduino se encuentra conectada a D leds indicadores ue son el
euivalente físico de los mostrados en el panel frontal. $abe aclarar ue en la
tira de leds con colores variados, el color de los leds corresponde con el color
detectado por el software 0 continuaci!n se muestra su estructura&
0.4 P'u"(s
0 continuaci!n se muestran imágenes del software e#ecutándose, haciendo el
reconocimiento de distintos patrones geométricos y activando los euivalentes
leds físicos mediante la tar#eta arduino.
11
-
8/20/2019 Reconocimiento de formas y colores con Labview
12/13
. CONCLUSIONES
12
-
8/20/2019 Reconocimiento de formas y colores con Labview
13/13
0 pesar de ue el reconocimiento se muestra muy estable después de aplicar
una extracci!n de plano y traba#ar ba#o escala de grises, el sistema sigue
siendo susceptible a perturbaciones externas, sobre todo al cambio de
luminosidad ambiental. Btra observaci!n es la ralentizaci!n del procesamiento
generada por la aplicaci!n de esta técnica, ue si bien no disminuye las
capacidades funcionales del reconocimiento, si lo vuelve visualmente menos
atractivo.
;e puede destacar la curva de aprendiza#e de Labview por ser bastante
reducida, pues el desarrollo de esta aplicaci!n consumi! un periodo
aproximado de dos semanas partiendo de un conocimiento nulo del software.
Labview se presente como una buena oportunidad para generar aplicaciones
industriales y es ideal para ingenieros con poco o nulo conocimientos de
electr!nica, control y procesamiento de se"ales.
5. UENTES DE CONSULTA
• https&www.youtube.comwatchFvG8)B$:pH9It/JindexGIKJlistG@L
• https&www.youtube.comwatchFvG$lxi;Co9xcJindexGIDJlistG@L
• www.ni.comlabviewesa
• www.ni.comlabviewvision
13
https://www.youtube.com/watch?v=VHOCkpKF7t4&index=78&list=WLhttps://www.youtube.com/watch?v=ClxiSBoFxNc&index=76&list=WLhttp://www.ni.com/labview/esa/http://www.ni.com/labview/vision/https://www.youtube.com/watch?v=VHOCkpKF7t4&index=78&list=WLhttps://www.youtube.com/watch?v=ClxiSBoFxNc&index=76&list=WLhttp://www.ni.com/labview/esa/http://www.ni.com/labview/vision/