User Tools

Site Tools


Courses -2016
Courses 2018-
Downloads (-2016)
Downloads (2016-)
RSS aggregates

EMBL BioImage Data Analysis



—- Contact
CMCI Alumni
EMBL Heidelberg
EMBL Intranet

Popularity Ranking

Timeline of @cmci_

cmci_ avatar

RT @StifelCenter: A visual programming language for ImageJ that allows to create macros without any programming by just creating a flowchar…
About 1 week, 5 days ago by: Kota Miura (@cmci_)

cmci_ avatar

@naba_chatterjee @haesleinhuepf I'm afraid not
About 1 week, 6 days ago by: Kota Miura (@cmci_)

cmci_ avatar

Symposium Programme 2023: BioImage Data Analysis: Tools & Workflows in Life Sciences Deep Learning for Image Data…
About 1 week, 6 days ago by: Kota Miura (@cmci_)

cmci_ avatar

Training School 2023 Introduction to bioimage analysis, tools, and workflows FAIR principles Cloud-hosted image da…
About 1 week, 6 days ago by: Kota Miura (@cmci_)

cmci_ avatar

IN-PERSON #NEUBIAS training school and symposium! Deadline for the Training school on Wednesday... sorry for this b…
About 1 week, 6 days ago by: Kota Miura (@cmci_)

cmci_ avatar

RT @BertrandVernay: Beautiful 3D dataset; One of them is going to find its way to our @RISE_micro "Introduction to image processing and ana…
About 2 weeks, 3 days ago by: Kota Miura (@cmci_)

ImaegJ Macro Headless Limitations

There are two ways to run ImageJ “Headless”ly.

1. Real-Headless: running ImageJ without any display. 2. Pseudo-Headless: running ImageJ without physical display, but with a virtual display that is hidden - virtual frame buffer. xvfb-run command is often used for this purpose.

With the second method, you can run ImageJ macro just like you do with GUI. The speed of processing is similar to that you experience with normal GUI. With the first method, as there is no GUI drawing involved, the processing becomes much faster - but there are some problems. As some of the windows often used in ImageJ macro, such as ROI Manager and Results table cause “headlessexception” error and you will fail in the successful execution of that macro. (If you use xvfb-run, this does not happen).

There is some workaround as shown below.

ROI Manager

Don't use ROI Manager in a pure-headless environment. Instead, use Overlay function like the example below.

run("Blobs (25K)");
run("Analyze Particles...", "  show=Overlay");
newImage("Untitled", "8-bit ramp", 256, 254, 1);
for (i=0; i<Overlay.size; i++) {
  mean = List.getValue("Mean");
  print(i+"  "+mean);

Results Table

You can see the results table by saveAs(“Results”, path) command, but the renaming of the results table becomes impossible in the pure-headless environment. Avoid renaming, and instead, try to save the results table as soon as the results are filled in the table with a specific file name.

documents/200720ijmacro_headless.txt · Last modified: 2020/07/20 23:39 by kota