ImageJ: escritura de macros

ImageJ: escritura de macros#

Outline del capítulo

  • Los pasos de procesamiento y análisis en ImageJ se pueden automatizar escribiendo macros

  • Se pueden producir macros sencillas sin necesidad de programación utilizando Macro Recorder

  • Las macros grabadas se pueden modificar para hacerlas más robustas y adecuadas para una gama más amplia de imágenes.

Hide code cell content
%load_ext autoreload
%autoreload 2

# Default imports
import sys
sys.path.append('../../../')
from helpers import *
from matplotlib import pyplot as plt
from myst_nb import glue
import numpy as np
from scipy import ndimage

Introducción#

Una cosa es descubrir los pasos que te permitan analizar una imagen y otra muy distinta es implementar estos pasos para varias (y quizás muchas) imágenes diferentes. Sin la automatización, es posible que el análisis nunca se realice; todos los movimientos y clicks del mouse consumirían demasiado tiempo, serían propensos a errores o aburridos, y las fallas momentáneas en la concentración podrían requerir comenzar de nuevo.

Incluso un breve esfuerzo por comprender cómo automatizar el análisis puede producir mejoras vastas y duraderas en la productividad y la cordura personal al reducir el tiempo dedicado a tareas abrumadoramente repetitivas. En algunos casos sencillos (por ejemplo, convertir formatos de archivo, aplicar proyecciones o filtros, o realizar mediciones en imágenes completas), esto ya se puede hacer en ImageJ usando los comandos en el submenú Process ‣ Batch ‣ y sin programación alguna. Pero también vale la pena adquirir algo de experiencia en la producción de macros, scripts o complementos, después de lo cual podrás agregar tus propios comandos nuevos a los menús y ejecutar algoritmos personalizados con un solo click de un botón o al presionar una tecla.

¿Qué es una macro?#

Las macros son básicamente secuencias de comandos, escritas en algún lenguaje de programación (en este caso, el propio lenguaje de macros de ImageJ), que se pueden ejecutar automáticamente para hacer que el procesamiento sea más rápido y sencillo.

Las siguientes secciones están lejos de ser una introducción extensa a la macroescritura, sino que pretenden presentar las ideas principales rápidamente utilizando dos ejemplos resueltos. Si deseas profundizar en el tema, hay una introducción al lenguaje en el sitio web de ImageJ [^fn_1] y un tutorial muy útil en la wiki de ImageJ [^fn_2], mientras que la lista de funciones macro integradas es una referencia indispensable [^fn_3].

Utiliza el “editor de scripts” de Fiji

Aunque es posible utilizar ImageJ en lugar de Fiji para crear macros, el editor de scripts de Fiji hace que el proceso sea mucho más fácil al colorear el texto según lo que hace. Asumiré que estás usando esto.

De macros a scripts

Una vez que te sientas seguro con las macros, el siguiente paso sería ingresar al mundo de los scripts y complementos. Estos pueden ser algo más difíciles de aprender, pero recompensan el esfuerzo con la capacidad de hacer cosas más complicadas. Los enlaces para ayudar con esto están disponibles en https://imagej.net/Scripting.