Monday, 22 December 2025

Fiji plugin to open Xradia microCT files

XRM Reader https://doi.org/10.5281/zenodo.7124263

This is a java plugin for Fiji (ImageJ) that reads an *.xrm, *.txrm, or *.txm image file from Xradia microCT systems (in their proprietary format, a form of OLE container) and opens it as an image stack, along with a text window displaying some metadata parameters. The latest version sets the voxel size for the ImageJ stack using the value from the Xradia file. 


To add the plugin to Fiji, download and extract the .zip folder and just drop the two jar files (poi-3.7.jar and XRM_Reader.jar) one at a time onto the Fiji main window. The program should put them in the right places. Restart Fiji and you should find it under Plugins > XRM Reader. If not, manually place poi-3.7.jar in Fiji.app/jars, and the XRM_Reader.jar in Fiji.app/plugins, then restart Fiji.

This code is publicly available and free for anyone to use. If you use it in a publication, please cite the Zenodo doi above. Current versions can also be found here:

https://ucloud.univie.ac.at/index.php/s/RSJ05Nb9FTViCVK

(I modified the above plugin from this one: https://github.com/mrsutherland/XRM_Reader/releases by mrsutherland, 14 Nov 2017)


I have also included an ImageJ macro (XRM_files_thumbnails.ijm) that makes a preview image (PNG) and metadata file (.txt) with the same filename base as each unpreviewable *.xrm, *.txrm, or *.txm image file (examples below). This is very useful for quickly looking over your stored scans and seeing what each Xradia file contains.

It is possible to select single files, multiple files, or combinations of files and folders as inputs. For any directory selected, the script automatically processes every Xradia-format image in the directory and its subdirectories. It will skip files that already have .txt and .png file with the same base file name (i.e. Xradia files already processed by this macro).

This is in the ImageJ macro language and requires the XRM Thumbnails plugin, also included in the same archive. This plugin isn't meant to be run on its own, so I like to put XRM_Thumbnails.jar in the folder Fiji.app/plugins/Utilities, so that it does not appear in the Plugins menu, where it is confusing to see next to the XRM Reader plugin.

I like to put the .ijm macro in either Fiji.app/plugins/Scripts/File or Fiji.app/scripts/File, and then it appears in the File pull-down menu.

The macro makes an XYZ montage for each reconstructed stack and a 0° & 90° mugshot for each projection series (really first and middle projections (for a 360° scan it will be front and back images; my machine doesn't do full rotations). It now includes the date/time from .txrm files. (Fun fact: the container files *.xrm, *.txrm, or *.txm can be extracted to a bunch of hex files using 7‑Zip. I opened some of these with Hex Fiend or HxD to get the format of the date entry.)

If you have questions or comments, feel free to contact me.

Brian Metscher

Vienna, Dec. 2025

brian.metscher[at]univie.ac.at

 

>> Note that Xradia .txm files can also be opened directly in Amira 6.4 and higher (Windows), and also in Drishti (https://github.com/nci/drishti). (Also in ORS Dragonfly Pro, but not in the free Dragonfly version.)

TXM-Wizard by fmeirer, liuyijin can open Xradia files also:

https://sourceforge.net/projects/txm-wizard/

https://pubmed.ncbi.nlm.nih.gov/22338691/

>> Real progress toward a Python solution can be found here: https://pypi.org/project/xrmreader/

It's based on the dxchange Python code, which seems to cover the reading of the xrm container files better than the Java parser: https://github.com/data-exchange/dxchange

 

Sample outputs from the preview macro XRM_files_thumbnails.ijm:








No comments:

Post a Comment