Particle tracking , fácil y barata (I)

02/11/2018 2 comentarios
Menear

Una técnica antaño reservada a costosas aplicaciones está ahora al alcance de la mano

Particle tracking significa seguimiento de partículas. Designa una técnica con la cual se identifica un objeto en un vídeo digital y se logra seguir sus pasos (identificar su posición a lo largo del tiempo), fotograma a fotograma. Las aplicaciones van desde la tecnología militar (las imágenes pueden proceder de fuera del espectro visible, como el eco recibido de un radar, y la posición del objeto se puede emplear para apuntar un arma), hasta la biomedicina: conozco a una investigadora que estudia la evolución de las neuronas a lo largo del tiempo en una serie temporal de imágenes de microscopio. Si uno dispone de ordenadores potentes, se puede llevar a cabo en tiempo real. Y si se emplean varias cámaras, se logra establecer la posición del objeto en el espacio, no en el plano. El uso científico de esta técnica es muy amplio; por poner un caso, de las posiciones de las partículas se puede obtener la velocidad (a eso se le llama Particle Tracking Velocimetry, y se usa mucho en mecánica de fluidos, sembrando el líquido con pequeños granos).

Desde hace ya tiempo, vengo utilizando ese método con fines científicos. Para objetos que se mueven lentamente, una cámara de video corriente, que grabe a 25 imágenes por segundo, es suficiente. Seguir una partícula que sobresalga del fondo por alguna característica especial (brillo, color, ...) es relativamente fácil: este es el vídeo original

y este el tracking de la pelotita (en este caso, el color verde es la característica específica que identifica al objeto):

Hasta hace pocos años la técnica de Particle Tracking sólo estaba disponible en los laboratorios (el material podía llegar a costar más de diez mil euros). Pero ahora una cámara digital decente, un ordenador y los programas necesarios cuestan alrededor de mil euros. Con ello se puede implementar el método del que hablamos:

  • Grabar un vídeo con la velocidad adecuada para que el objeto no se desplace excesivamente de un fotograma al siguiente.
  • Con un programa adecuado, leer el vídeo fotograma a fotograma.
  • En cada fotograma, mediante procesamiento de imágenes, identificar el objeto de interés y calcular su centro (o la propiedad geométrica que se desee).
  • Guardar las mediciones en un archivo.

La parte más complicada es la de identificar el objeto (véase este artículo en Wikipedia). Ese procedimiento se llama segmentación: obtener, a partir de un fotograma, una imagen binaria donde un pixel blanco (ó 1) corresponda al objeto, y un pixel negro (ó 0) al fondo. Un método muy socorrido es binarizar la imagen con un nivel de referencia, o umbral. Si se tiene un objeto cuyo brillo o color destaque del fondo, entonces los píxeles de determinado color, o de brillo superior a cierto valor, se ponen a 1, el resto a 0. Muchos entornos de programación incluyen alguna función para realizar esta tarea. Por ejemplo, en Python está disponible el paquete scikit-image (gratuito). En C, las librerías OpenCV (gratuitas también). En Matlab, el toolbox de tratamiento de imágenes (comercial). Etcétera.

Llegados a este punto, se me ocurrió si no sería posible dar un paso más:

elaborar un sistema de seguimiento de partículas barato, al alcance de quienes no disponen más que de un presupuesto modesto

En particular, me propuse seguir un péndulo, como el de un reloj de pared, con un dispositivo elaborado por menos de 100 euros. La experiencia de laboratorio probablemente sea conocida por muchos estudiantes de ciencias: obtener el valor de la gravedad midiendo el período de un péndulo (pues g es proporcional a la longitud del péndulo L e inversamente proporcional al cuadrado del período T): g = 4 π2 L / T 2. En vez de medir el período a mano, con un cronómetro, se puede hacer como se ha descrito: de manera automatizada (y mucho más precisa, claro). Aquí se ve la implementación, realizada con Matlab:

[ Si alguien dispone de los medios: ordenador, programas, cámara, y desea más información, gustosamente la puedo proporcionar ].

Pues bien, de nuevo: ¿se puede obtener algo parecido a eso, pero por menos de 100 euros?
La respuesta, próximamente en este blog.