Escolar Documentos
Profissional Documentos
Cultura Documentos
Resumen– En un circuito hidráulico, el fluido sufre pér- Keywords- Codebook, computer vision, background
didas de presión al atravesar tramos o diferentes acce- subtraction, Instrumentation and measurement, Piezo-
sorios, estas pueden ser inspeccionadas observando el meter.
nivel del fluido en piezómetros. Este trabajo presenta un
desarrollo en visión artificial, que permite la medición
en línea de los niveles de presión registrados en dieci- 1. INTRODUCCIÓN
séis columnas piezométricas. La técnica de extracción
de fondo basada en el algoritmo de Codebook, combina- La medición de una misma variable en diferen-
da con el filtrado morfológico y unión de blobs, es usada tes puntos o tramos de una tubería representa un
para obtener los niveles piezométricos. El algoritmo de desafío en términos de costo, instrumentación e
procesamiento está diseñado en Open CV y soportado
instalación. Se han realizado investigaciones que
en Linux. Se obtuvieron coeficientes de variación infe-
riores al 0,1% y errores máximos del 1,4 %. buscan remplazar instrumentos físicos por otros
que posean características especiales, brindando
Palabras clave– Codebook, extracción de fondo, instru- igual o mayor información y confiabilidad en las
mentación y medición, piezómetro, visión por computa-
dor. variables medidas [1], [2]. Los sensores o instru-
mentos virtuales son resultado de algunas de es-
Abstract– In a hydraulic circuit, the fluid pressure loss tas investigaciones, emulan el comportamiento
when passing through different sections or accessories, de instrumentos reales y su operación se basa en
and it can be inspected by observing the fluid level in
la relación que existe entre las variables medibles
piezometers. This paper presents a development in arti-
ficial vision, which allows on-line measurement of pres-
y métodos para estimación de otras [3], [4]. En la
sure levels recorded in sixteen piezometric columns. The actualidad los sensores virtuales son empleados
technique of background subtraction based in algorithm en una amplia variedad de campos: aviación [5],
on Codebook, combined with morphological filtering robótica [6], control de tráfico [7], entre otros [8],
and junction blobs, are used to obtain piezometrics le- [9], [10]. Tal es el caso [11], que se usan sensores
vels. The processing algorithm is designed in Open CV virtuales en técnicas de visión artificial para la
and supported on Linux. Coefficients of variation of less
lectura de transmisores indicadores, y [12], [13]
than 0.1% and maximum error of 1.4% were obtained.
se presentan sensores software, basados en téc-
Recibido: 24/12/2014 Aceptado: 16/12/2015 ITECKNE Vol. 13 Número 1 • ISSN 1692-1798 • ISSN Digital 2339-3483 • junio 2016 • 64 - 73
Medición de pérdidas de presión usando visión por computador – Cerquera, Córdoba, Realpe, Flórez 65
nicas de visión artificial, que permiten en tiempo con el filtrado morfológico y unión de blobs [15].
real estimar la interfaz entre el petróleo crudo y En la sección de experimentación se presenta
la arena. el desarrollo del algoritmo basado en la técnica
En el monitoreo de pérdida de presión en cir- extracción de fondo; en la sección resultados se
cuitos hidráulicos, más precisamente en los ban- analizan las pruebas de desempeño del algorit-
cos de pérdidas de carga en conductos a presión, mo y, por último, se consignan las conclusiones
usados en los laboratorios de hidráulica, se pre- del trabajo.
cisa de numerosos piezómetros de lectura visual
de la presión, 16 o más, observándose el nivel de 2. EXPERIMENTACIÓN Y MATERIALES
agua alcanzado, instalados en segmentos o adita- El banco de pérdidas de carga en conductos
mentos a lo largo de la tubería y concentrados en a presión es un circuito hidráulico con tuberías
un tablero. La lectura de pérdida de presión en flexible, instalado entre segmentos de diferente
los mismos es compleja, se hace midiendo la dife- diámetro de tubería y aditamentos como codos,
rencia de nivel por parejas, para varios caudales y uniones, entre otros. Para medir simultáneamen-
en condiciones de estado estable, esto consume te los dieciséis piezómetros se propuso la instala-
valioso tiempo del operador, por lo que se podría ción de una cámara webcam Logitech (Webcam
optar por métodos alternativos de medición que Pro 9000, USB 2.0), ubicada al frente del tablero,
brinden mejor desempeño y automatismo del pro- Fig. 1.a, Fig. 1.b y Fig. 1.c; el procesamiento se
ceso, uno de estos es técnicas de visión artificial hace con visión artificial usando la librería de pro-
[14]. cesamiento óptico digital de imágenes OpenCV,
En este artículo se describe el desarrollo de un por medio de un algoritmo programado en lengua-
algoritmo de visión artificial, que permite la detec- je C [16], [17], [18], [19]. Este se diseñó conce-
ción y medición simultanea de dieciséis variables bido como un multitransmisor virtual y se ejecutó
de presión, indicadas por niveles de un fluido en en un computador de escritorio (Pentium IV, 2.6
un tablero piezométrico, el cual se integró como GHz, 433 MB, kernel Linux 2.6.34.5 Ubuntu 10.10
núcleo de un multi-transmisor virtual validado en con RTAI). El algoritmo multitransmisor virtual de
un banco de pérdidas de carga en conductos a alturas piezométricas usa una metodología orga-
presión [14]. El algoritmo se basa en la técnica nizada en las fases: captura, pre-procesamiento,
de extracción de fondo de Codebook combinada segmentación y reconocimiento.
A) B) C)
Fuente: autores.
66 ITECKNE Vol. 13 Número 1 • ISSN 1692-1798 • ISSN Digital 2339 - 3483 • junio 2016 • 64 - 73
2. 1 Descripción general del algoritmo la imagen, se usan técnicas de filtrado, transfor-
mación de color, modificaciones del histograma,
El algoritmo de procesamiento de imáge- entre otras. Segmentación, elimina el fondo de la
nes consta de cuatro componentes asociados a escena y realiza un modelo de este. Finalmente,
cada fase de la metodología usada. Captura de un componente de Reconocimiento y estimación
la imagen, realiza la adquisición de la secuencia de alturas, que realiza la medición de las dieciséis
de imágenes del tablero piezométrico. Mejora de variables respecto a una escala métrica, Fig. 2.
Fig. 2. DIAGRAMA EN BLOQUES DEL ALGORITMO DE PROCESAMIENTO DE IMÁGENES PARA MEDICIÓN DE ALTURA PIEZOMÉTRICAS
Fuente: autores.
La TGP se hace utilizando (1) [20]: rísticas pertinentes de las alturas piezométricas.
RS xl VW RS m00 m01 m02 VW x Esto se hace con una función tipo LUT (look upta-
SS WW SS W
SS yl WWr = SS m10 m11 m12 WWW> y H
ble) de OpenCV [21].
( 1)
SS WW SS WW
w l m20 m21 m22 1 2.1.3 Segmentación
T X T X
l l
Donde x , y representan las coordenadas 2D Esta logra la separación de las alturas piezo-
de la imagen con la corrección aplicada, wl es la métricas del resto o fondo de la escena. Se orga-
tercera dimensión no utilizada, x, y representan niza en una primera etapa de extracción de fondo
las coordenadas 2D de la imagen transformada y y primer plano, donde se modela el fondo y se ex-
M es la matriz de la TGP. En la Fig. 4 se observa el trae el primer plano y una segunda etapa de filtra-
resultado de aplicar la TGP al tablero piezométri- do morfológico donde se separan los objetos de
co, la cámara se encuentra en el extremo superior interés.
del tablero y por tanto se presenta un problema • Extracción de fondo y primer plano
de perspectiva óptica; en la Fig. 4.a se muestra la Un algoritmo de extracción de fondo o background
imagen sin corrección y en la imagen de la Fig. 4.b y uno de primer plano o foreground se usan en la pri-
el resultado de la corrección [21]. mera etapa. Esto se hace mediante un algoritmo
Fig. 4. CORRECCIÓN DE LA TGP DEL TABLERO PIEZOMÉTRICO EN A)
IMAGEN ORIGINAL Y EN B) IMAGEN CON CORRECCIÓN
de codebook [18] que permite realizar la estima-
ción de primer plano y fondo. Un codebook es una
estructura compuesta por pequeñas unidades de
información llamadas codewords, que almacenan
datos como distorsión de color, cambios de lumi-
nosidad, tiempo que ha pasado entre accesos al
codeword y frecuencia con la que el codeword ha
sido accedido para actualizarlo [15]. El codeword
consiste en un vector RGB vi = ^ R i, G i, B i h y una
6-tupla ^ I min, I max, f, MNRL, fa, la h donde se alma-
cena:
• I min, I max, ^ sI, tI h Luminosidad máxima y míni-
ma de todos los pixeles asignados a ese co-
A) deword.
• f Frecuencia con la que ese codeword ha ocu-
rrido.
• MNRL El mayor intervalo durante la creación
de fondo en la cual este codeword no fue ac-
cedido.
• fa, la Primer y último tiempo de acceso al co-
deword.
Al contrario de los típicos modelos de color
usados, donde se emplean colores normalizados,
en el modelo codeword la distorsión de color se
basa en una ponderación de la luminosidad en el
B) modelo normalizado de color [15]. Este efecto se
Fuente: autores.
representa geométricamente como un re-escala-
miento o normalización a un vector codeword de
En el procesamiento siguiente la secuencia de un píxel según su luminosidad, ver Fig. 5.
Si se toma un píxel de entrada x t = ^ R, G, B h
imágenes se transforma del espacio de color RGB
a escala de grises, con la finalidad de mejorar
y un codeword C i que posee un vector de color
v i = ^ R i, G i, B i h , ver (2):
contraste y brillo de la imagen y resaltar caracte-
68 ITECKNE Vol. 13 Número 1 • ISSN 1692-1798 • ISSN Digital 2339 - 3483 • junio 2016 • 64 - 73
Fuente: autores.
A)
Siendo,
2 x t, v i 2
p 2 = x t cos 2 i = (3)
vi 2
d#f
Esta distorsión se compara con un f con el
fin de fijar una frontera de decisión o validez del
codeword. Respecto a la luminosidad, como en la
6-tupla codeword se almacenan tanto la máxima
como la mínima, esto proporciona un rango en el
cual la luminosidad varía. Ver (4).
I low = aI max
I hi = min a bI max, a
I min k
(4)
Donde a 1 1 y b 2 1 . Típicamente a está en- B)
Fig. 7. RESULTADO BINARIO DEL FILTRADO MORFOLÓGICO CON DETECCIONES FALSAS Y OMITIDAS
Fuente: autores.
2.1.4 Reconocimiento y estimación de alturas Fig. 8. UNIÓN DE BLOBS PERTENECIENTES A UNA MISMA ALTURA PIEZO-
MÉTRICA POR DISTANCIA VERTICAL
marcan los puntos extremos de la imagen bi- piezométrico que cubrirá la cámara. Para ello se
naria. Todo punto de las alturas piezométricas suministran los datos correspondientes al alcan-
se guarda en una estructura para su posterior ce y cero del transmisor multinivel de alturas.
análisis. Para el caso particular del tablero piezométrico
2) Conversión a unidades de longitud. Finalmente usado experimentalmente el alcance es de 1000
se calculan las alturas piezométricas de la cuan- mm y el cero de 0 mm, que tras la aplicación del
tificación realizada en el plano (x, y). Para ello se TGP permite relacionarlo con el alto en pixeles
usa una constante de relación m , ver (7), para del tablero piezométrico. Otros dos parámetros
determinar la medida en milímetros de cada al- de calibración configurados son el brillo y el con-
tura piezométrica. Si la imagen es de 800x600 traste de la cámara, con el fin de lograr valores
pixeles corresponde a una medida de 1000x800 en los que las alturas piezométricas presenten
milímetros (área del tablero piezométrico), Fig. buena separación del fondo del tablero, para
9, por lo que: ello se debe garantizar una buena y constante
Altura ^ mm h iluminación convencional de luces fluorescentes
Alturapi ^ pixeles h
m= = 1, 25mm/pixel (7) sobre el tablero.
TABLA I
TIEMPOS DE PROCESAMIENTO PROMEDIO DE CADA COMPONENTE DEL ALGORITMO (MS)
4 41 45 50 56 60
Fuente: autores.
Medición de pérdidas de presión usando visión por computador – Cerquera, Córdoba, Realpe, Flórez 71
Se tomó como patrón de referencia las me- En la Tabla II se registra el cálculo de la variabi-
didas realizadas manualmente, utilizando cinta lidad para cada piezómetro, se procesaron 5 me-
métrica de precisión Clase II. El error relativo por- didas por piezómetro, cuando el circuito hidráu-
centual por piezómetro, según una serie de diez lico opera con un caudal de 22 litros/minuto. La
medidas tomadas para cada uno, fue calculado sexta columna de la Tabla II consigna los valores
según (8). del coeficiente de variación, según cálculos dados
Er = ^^ X patrón - X a lg oritmo h /X patrón h ) 100% (8) por (9).
Donde X patrón corresponde al dato manualmen- desv.estándar
CV = media ) 100% (9)
te medido, y X a lg oritmo corresponde al dato medido
por el algoritmo. En la Tabla II, los valores del coeficiente de va-
Aplicada (8) para medir el promedio del error riación inferiores a 0,10 indican una alta concen-
relativo en la medición de cada piezómetro, Fig. tración, entre 0,1 y 0,5 una concentración media y
10, el porcentaje de error mínimo es de 0,4% para valores superiores a 0,5 una alta dispersión y una
el piezómetro 17, mientras que el porcentaje de media poco o nada representativa [24]. El coefi-
error más alto, cerca al 1,4%, lo presentan los pie- ciente de variación en cada piezómetro es inferior
zómetros 1 y 2. al 0,075 % y la desviación estándar inferior a 0,52;
Fig. 10. PORCENTAJE DE ERROR EN LA MEDICIÓN
lo que se traduce en precisión en cada una de las
POR CADA PIEZÓMETRO medidas entregadas por el algoritmo, logrando un
alto grado de reproducibilidad del proceso de me-
dición en condiciones normales de operación.
4. CONCLUSIONES
Se diseñó e implementó un algoritmo de pro-
cesamiento óptico digital de imágenes, concebido
como un multitransmisor de nivel, para la medi-
ción en línea de dieciséis alturas piezométricas,
Fuente: autores. en un banco de pérdidas de carga en conductos
TABLA II
MEDIDAS DE VARIABILIDAD EN LA MEDICIÓN DE LOS 16 PIEZÓMETROS
a presión. El algoritmo consta de cuatro compo- tial space conditioning equipment,” Build. Sensors
nentes: captura de la imagen, realiza la adquisi- Energy Monit. Syst., no. July, 2010.
ción de la secuencia de imágenes en 4ms, mejora [5] G. Heredia and A. Ollero, “Virtual sensor for failure
de la imagen donde se corrige la deformación de detection, identification and recovery in the transition
perspectiva, entre otros, en 41 ms, segmentación phase of a morphing aircraft,” Sensor, vol. 10, pp.
para modelar y eliminar el fondo de la escena, en 2188-2201, 2010.
95 ms, reconocimiento y estimación de alturas
[6] W. Wei, L. Chunfang, and X. Xinhe, “Simulation of ro-
que en 110 ms estima la altura en mm. bot localization based on virtual sensors,” in 2008
La técnica de extracción de fondo basada en el Chinese Control and Decision Conference, 2008, pp.
248-252.
algoritmo de Codebook, combinada con el filtrado
morfológico y unión de blobs, son usados en los [7] J. P. Sebastiá, J. Alberola, and R. Lajara, “Physical sig-
componentes de segmentación y reconocimiento nal conditioning for GMR magnetic sensors : Applied
y estimación de alturas, en general se considera to traffic speed monitoring GMR sensors,” Sensors Ac-
que la metodología usada en el diseño e imple- tuators A Phys., vol. 137, pp. 230-235, 2007.
mentada en las cuatro fases del algoritmo del [8] P. Ibarguengoytia, A. Reyes, M. Huerta, and J. Hermo-
multitrasmisor de nivel es adecuada para la esti- sillo, “Probabilistic virtual sensor for on-line viscosity
mación de alturas piezométricas. Sin embargo, el estimation,” in Artificial Intelligence, 2008. MICAI ’08.
algoritmo presenta dificultades dependiendo del Seventh Mexican International Conference on, 2008,
pp. 3777-782.
no cumplimiento de las condiciones establecidas
en el proceso de calibración de la cámara, en par- [9] N. Hardy and A. Ahmad, “De coupling for re use in de-
ticular en lo concerniente a la iluminación de la sign and implementation using virtual sensors,” Au-
escena. A pesar de lo anterior el multitransmisor ton. Robot., vol. 6, pp. 265-280, 1999.
de nivel se constituye en una valiosa herramienta
[10] N. Hardy and A. Ahmad, “ViSIAr – A virtual sensor inte-
de apoyo para la realización de las prácticas de gration architecture,” Robotica, vol. 17, pp. 637-647,
pérdidas de carga en conductos a presión en los 1999.
laboratorios de hidráulica.
[11] E. Velásquez, “Lectura automática de instrumentos de
El algoritmo del multitransmisor de nivel obtie- medida mediante técnicas de visión artificial,” Univer-
ne simultáneamente las 16 alturas piezométricas sidad de Vigo, 2008.
de presión con un porcentaje de error menor a
1,4 % y con una precisión menor al 0,1 %, lo que [12] E. Vázquez-Fernández, A. Dacal-Nieto, H. González-
Jorge, F. Martín, A. Formella, and V. Álvarez-Valado,
hace al algoritmo confiable para la medición de
“A machine vision system for the calibration of digital
pérdidas de presión en conductos. El algoritmo se thermometers,” Meas. Sci. Technol., vol. 20, no. 6, p.
implementó en lenguaje C usando Open CV 2.3 y 065-106, Jun. 2009.
se ejecuta en 200 ms, permitiendo realizar 5 me-
didas por segundo en cada uno de los 16 piezó- [13] [13] P. Jampana, “Computer vision based sen-
sors for chemical processes outline introduction,” Uni-
metros. versity of Alberta, 2009.
[2] T.-H. Wang, M.-C. Lu, C.-C. Hsu, C.-C. Chen, and J.-D. [15] K. Kim, T. H. Chalidabhongse, D. Harwood, and L. Da-
Tan, “Liquid level measurement using a single digital vis, “Real-time foreground–background segmentation
camera,” Measurement, vol. 42, pp. 604-610, 2009. using codebook model,” Real-Time Imaging, vol. 11,
no. 3, pp. 172-185, Jun. 2005.
[3] D. Yasuhiko and S. J. Ovaska, “Industrial applications
of soft computing: A Review,” Proc. IEEE, vol. 89, no. [16] R. Lagani, OpenCV 2 Computer Vision Application Pro-
9, 2001. gramming Cookbook. Packt Publishing Ltd, 2011.
[4] W. Healy, “Building america meeting on miagnostic [17] I. Corporation, “Intel Corporation.pdf,” 2012. [Online].
measurement and performance feedback for residen- Available: http://developer.intel.com.
Medición de pérdidas de presión usando visión por computador – Cerquera, Córdoba, Realpe, Flórez 73
[18] G. Bradski and A. Kaehler, Learnig OpenCV. O’Reilly [22] A. Senior, A. Hampapur, Y.-L. Tian, L. Brown, S. Pank-
Media, Inc., 2008. anti, and R. Bolle, “Appearance models for occlusion
handling,” Image Vis. Comput., vol. 24, no. 11-1, pp.
[19] R. Gonzalez and R. Woods, Digital image processing. 1233-1243, 2014.
Prentice Hall Upper Saddle River, 2002.
[23] F. Chang, C. Chen, and C. Lu, “A linear-time compo-
[20] N. Raveendranathan, V. Loseu, E. Guenterberg, R. Gi- nent-labeling algorithm using contour tracing tech-
annantonio, R. Gravina, M. Sgroi, and R. Jafari, “Imple- nique,” Comput. Vis. image Underst., vol. 93, pp. 206-
mentation of virtual sensors in body sensor networks 220, 2003.
with the SPINE framework,” 2009 IEEE Int. Symp. Ind.
Embed. Syst., pp. 124-127, Jul. 2009. [24] I. Espejo, F. Fernández, M. López, M. Muñoz, A. Rodrí-
guez, A. Sánchez, and C. Valero, “Estadística descrip-
[21] J. A. Cerquera and J. E. Córdoba, “Medición y pérdidas tiva y probabilidad: (Teoría y problemas),” Universidad
de presión usando visión por computador,” Universi- de Cádiz, 2009.
dad del Cauca, 2012.