3D object counter - Is there a way to make it use more than one CPU core?

Dear community,

I am working on my master thesis in botany. Currently I am trying to optimise my processes.
My work includes counts of pollengrains. To save time I am allowed to use a high end workstation with 128GB RAM and 32 cores.
Unfortunately it seems as if only filters use all 32 cores (in "edit–>options–>Memory&Threads the values are currently set to 98232 MB and 32 parallel threads).
Is there a way to enable the 3D object counter to use all (or at least more than one) core?

(note: I am using Java 1.6.0_24 64-bit; ImageJ 2.0.0-rc-43/1.50e; Windows7 professional Service pack 1)

Looking forward to your answer. :cherry_blossom:

Looking at the 3D Object Counter source code, the algorithm is just a bunch of for loops. No chance of multithreading without changing the source.

Hi Walt,

if you provide some example images and a bit of a description what you want to do exactly, maybe we can help you with a workaround (e.g. parallelize over the images you want to analyse instead of parallelizing the algorithm etc).



Hi @Walt,

Try using the particle analyser in BoneJ . It is multithreaded and goes a lot faster than 3D OC.



Thanks, I wasn’t aware of this improved 3D particle analyser. (It would help a lot if BoneJ had its own update site, that would facilitate its installation.)

Another option to efficiently manage and analyse 3D particles are the Labelings available in KNIME.

1 Like

That’s planned as part of our (actually mostly @rimadoma’s) work towards BoneJ2. Generic stuff like connected components labelling is gradually getting unbundled from BoneJ so that it can be more readily reused by other plugins.


It is probably a bit late for the original poster, but I’ve cracked this, in a two-pass multithreaded algorithm, coming to BoneJ2 soon (in testing now).

1 Like