ImageJ: Imágenes y píxeles#
Introducción#
Esta es la primera sección que toma las ideas descritas en el capítulo principal y muestra cómo se relacionan con el software: en este caso ImageJ.
Comenzamos con una breve introducción a qué es ImageJ, cómo obtenerlo y cómo navegar por la interfaz para abrir y mostrar imágenes.
¿Qué es ImageJ?#
ImageJ es un software de código abierto para análisis de imágenes.
Creado por Wayne Rasband de los Institutos Nacionales de Salud, ImageJ se ha vuelto indispensable para la comunidad de investigación durante más de 20 años. Continúa actualizándose periódicamente y es, por mucho, el tema más discutido en el Foro de imagen de la comunidad científica, con [más de 10 000 temas] (https://forum.image.sc/tags) al momento de escribir este artículo, y se agregan más cada día.
El éxito de ImageJ se debe no sólo a las características del software en sí, sino también a su apertura y extensibilidad. El código fuente es de dominio público, lo que significa que otros pueden adaptarlo según sea necesario. Pero normalmente esto no es necesario, porque los usuarios pueden escribir (y compartir) macros, plugins o scripts personalizados para agregar nuevas funciones, sin cambiar ImageJ en sí.
Personalmente, ImageJ me ha parecido fenomenalmente útil a lo largo de mi carrera, hasta el punto de que estoy convencido de que cualquiera que trabaje con imágenes biomédicas se beneficia si sabe cómo utilizarlo. Incluso si finalmente utiliza otro software para su análisis, o incluso escribe el suyo propio, la capacidad de verificar cosas rápidamente en ImageJ es extremadamente útil.
Estas secciones están destinadas a ayudar a cualquier lector interesado a desarrollar un sólido conocimiento práctico del propio ImageJ y, al mismo tiempo, obtener una comprensión más profunda del análisis de imágenes en general.
Obtener imageJ#
ImageJ está disponible en múltiples formas. Tres de los más importantes para nuestros propósitos son:
1. ImageJ#
Descargar desde https://imagej.nih.gov/ij/
La descarga “original” de ImageJ contiene todas las funciones principales, pero sin plugins adicionales.
El componente principal de la aplicación es un pequeño archivo ij.jar (~2,5 MB) que se ejecuta en Java. Puede descargar un paquete específico para cada plataforma que incluye tanto ImageJ como Java para Windows, Mac o Linux. La inclusión de Java hace que la descarga sea más grande, pero hace que la aplicación sea autónoma y fácil de ejecutar.
2. Fiji#
Descargar desde https://fiji.sc/
Fiji, que significa Fiji Is Just ImageJ, (Fiji es solo ImageJ por sus siglas es inglés) es una distribución de ImageJ que viene con una gran cantidad de plugins y funciones adicionales que son particularmente útiles para científicos en áreas biomédicas. También tiene un potente editor de scripts que ayuda mucho a la hora de desarrollar macros o scripts, un actualizador para ayudar a gestionar todas las adiciones e incluso un “Big Data Viewer” para imágenes particularmente grandes.
3. ImageJ.JS#
Ejecutar en https://ij.imjoy.io
ImageJ.JS es una versión web del ImageJ original, capaz de ejecutarse en un navegador. Tiene algunas características adicionales, pero no tantas como Fiji. Fue elaborado y mantenido por el equipo ImJoy dirigido por Wei Ouyang.
Para obtener más información, consulte https://imagej.net/software/imagej-js
¡Más interactividad con ImageJ.JS!
Siempre que vea un botón como este puede utilizarlo para iniciar ImageJ.JS directamente desde este libro, a menudo con una imagen relevante abierta.
De forma predeterminada, ImageJ.JS se abrirá en la misma pestaña del navegador. Si desea que se abra en una nueva pestaña, entonces probablemente haya un truco sencillo en su navegador para hacerlo (en una computadora, supongo que presionará {kbd} Ctrl
o ⌘ al hacer clic en el enlace).
¿Qué ImageJ elijo?
Yo diría: todos. Yo siempre instalo ImageJ y Fiji en cualquier computadora que uso regularmente. ImageJ.JS no requiere ninguna instalación: sólo un navegador web moderno.
Todo lo que ImageJ puede hacer también se puede lograr en Fiji (porque Fiji contiene el ImageJ completo en su interior), pero lo contrario no es cierto (porque Fiji contiene muchos elementos adicionales). Por lo tanto, Fiji es mi primera opción para tareas de análisis más extensas. Su principal desventaja es que es mucho más grande: tarda más en iniciarse y en ejecutar comprobaciones de actualizaciones, y contiene muchos comandos que no siempre se necesitan.
Por el contrario, el ImageJ original es muy pequeño y liviano. En mi computadora, se inicia casi instantáneamente. Sigue siendo mi primera opción para tareas rápidas y comunes con imágenes.
La mayoría de las prácticas relacionadas con ImageJ en este curso solo utilizan funciones básicas y, por lo tanto, se pueden realizar utilizando ya sea ImageJ, Fiji o ImageJ.JS. A veces en este libro me referiré explícitamente a Fiji, indicando que el comando relevante sólo está disponible en Fiji.
¡Recuerde citar el software que utiliza!
Gran parte del software de código abierto es desarrollado y respaldado por académicos, que invierten una gran cantidad de tiempo en desarrollo y soporte. Necesitan financiamiento para continuar ese trabajo[^fn_1] y citas en artículos para ayudar a conseguir ese financiaimento.
Si utiliza software para una investigación que planea publicar, dedique unos minutos a buscar cómo los desarrolladores del software quieren que se cite.
Para ImageJ y Fiji, consulte https://imagej.net/contribute/citing
Para otro software, busque citando [nombre del software]
La interfaz ImageJ#
La interfaz de usuario de ImageJ es bastante minimalista. Está centrado alrededor de una barra de herramientas. Todo lo demás (imágenes, histogramas, tablas de medidas, cuadros de diálogo) aparece en ventanas separadas.
Pero a pesar de su apariencia simple, ImageJ es poderoso. La profundidad del software es evidente por su abundancia de menús y submenús.
Lo que lleva al consejo más importante para usar ImageJ:
No memorices los menús: ¡busca!
ImageJ tiene muchas opciones, ocultas en muchos menús… y submenús… y, a veces, sub-submenús.
Afortunadamente, no hay razón para memorizar dónde se encuentran todos ellos. Más bien, recuerde una tecla de acceso directo: L
Al presionar L, aparece efectivamente una lista de todos los comandos de los menús, listos para cada búsqueda.
Para ImageJ, verá la ventana Command Finder donde puede comenzar a escribir el nombre del comando que desea. Luego puede ejecutarlo haciendo doble clic en la entrada, o usando las teclas de flecha hacia arriba o hacia abajo seguidas de Enter.
En Fiji, es posible que veas el Buscador de comandos o, alternativamente, puedes activar una barra de búsqueda seleccionándola en
. La idea es la misma. La barra de búsqueda también se puede activar usando L y usarse para buscar y ejecutar comandos.Perdiendo el control
En la mayoría del software, las teclas de método abreviado a menudo requieren presionar Ctrl (en Windows, Linux) o ⌘ (Mac ). Por lo tanto, el atajo para buscar un comando sería Ctrl+L o ⌘ + L.
Esto funciona en ImageJ, pero no es necesario. En
, puede especificar si la tecla Ctrl o la tecla ⌘ se necesita, junto con la letra para el atajo.De forma predeterminada, esta opción está desactivada, por lo que presionar L es suficiente. Es posible que esto haga que sea demasiado fácil ejecutar comandos accidentalmente, en cuyo caso debe seleccionar la opción para activarlo.
Abrir imágenes y ver píxeles#
Siempre me sorprende cuando veo que alguien abre una imagen en ImageJ a través de los menús, eligiendo
.Aunque esto puede funcionar, es innecesariamente lento e incómodo. La forma más elegante de abrir una imagen es simplemente arrastrar el archivo de imagen a la barra de herramientas de ImageJ.
A medida que el cursor se mueve sobre la imagen, el valor del píxel debajo del cursor se muestra en la barra de estado de ImageJ. Las imágenes se pueden navegar de la siguiente manera:
Incrementar el zoom
Seleccione la herramienta y luego haga clic izquierdo en la imagen, o
Presione la tecla +
Disminuir el zoom
Seleccione la herramienta y luego haga clic derecho en la imagen, o
Presione la tecla -
Organizar
Seleccione la herramienta , luego haga clic y arrastre sobre la imagen, o
Presione la barra espaciadora, luego haga clic y arrastre sobre la imagen.
Cuando la imagen es más grande que la región visible, aparece una pequeña descripción general (púrpura) en la parte superior izquierda para indicar qué parte se puede ver actualmente.
La barra de estado también muestra las coordenadas xy del píxel debajo del cursor. Sin embargo, para interpretarlos es necesario conocer el origen, es decir, la ubicación del píxel en x=0, y=0.
¿Dónde está el origen de la imagen en ImageJ?
Esquina superior izquierda
Esquina superior derecha
Esquina inferior izquierda
Esquina inferior derecha
Centro de la imagen
Consejo: Debería poder responder esta pregunta abriendo una imagen en ImageJ y observando las coordenadas en la barra de herramientas mientras mueve el cursor sobre la imagen.
El origen de la imagen está en la parte superior izquierda, es decir, el píxel superior izquierdo se identifica con la coordenada x=0, y=0.
Cambiando de apariencia#
Ajustar el brillo y el contraste#
El comando principal para cambiar el brillo de una imagen es
. Dado que es probable que lo use mucho, vale la pena aprender el atajo: Shift+C.El cuadro de diálogo Brillo/Contraste tiene cuatro controles deslizantes: Minimum, Maximum, Brillo y Contraste. Están vinculados entre sí: cambiar cualquiera de los dos primeros también resulta en un cambio en los dos últimos, y viceversa.
Suponiendo que tienes una LUT en escala de grises, con colores que van del negro al blanco, deberías ver que
Todos los píxeles con un valor menor o igual al Minimum se mostrarán en negro.
Todos los píxeles con un valor mayor o igual al Máximo se mostrarán en blanco.
Todos los demás píxeles con un valor intermedio se mostrarán usando un tono de gris.
Utilice los controles deslizantes mínimo y máximo
A pesar de que el nombre del comando implica que Brillo y Contraste son los artistas estrella, yo diría que los controles deslizantes Mínimo y Máximo son mucho más intuitivos.
Yo utilizo Mínimo y Máximo casi exclusivamente.
¿Ajustar alguno de los controles deslizantes en el cuadro de diálogo de brillo y contraste cambia los valores de píxeles o solo el LUT?
¿Qué sucede si presionas Aplicar?
Ajustar los controles deslizantes cambia la LUT, y no los valores de píxeles.
Eso es a menos que presione Aplicar. Si presiona Aplicar, se cambian los valores de píxeles.
Las versiones recientes de ImageJ dan una advertencia al presionar Aplicar, pero las versiones anteriores no… lo que lo convertía en un botón extremadamente peligroso para los nuevos usuarios del software. En la mayoría de los casos, la regla es:
Truco
Al ajustar el brillo y el contraste en ImageJ, ¡no presione Aplicar!
¡No debería romper esta regla sin una buena razón!
Cambio de LUT#
Puede cambiar los colores de la LUT seleccionando una opción alternativa del submenú
.Utilice el Panel de Control para acceder con frecuencia al mismo menú
Si desea explorar las LUT rápidamente, utilice
. Esto abre una ventana que le permite hacer doble clic en los comandos de cualquier menú o submenú para aplicar ese comando rápidamente.