Different anisotropy results between versions 1.4.1 and 1.4.3 of boneJ

Dear all,

I have run into a problem while computing the degree of anisotropy between BoneJ 1.4.1 and 1.4.3 on a cubic section of trabecular bone. In BoneJ 1.4.1, the degree of anisotropy is on average around 0.86, whereas in BoneJ 1.4.3 it is around 0.67. I was wondering if there were any differences in the algorithm between the two versions that could explain such a difference, and which version should we trust for our degree of anisotropy?
The parameters asked for the analyses are indeed quite different between the two versions. Here is what we entered (they are the default parameters):
For BoneJ 1.4.1:
auto mode checked, single sphere unchecked.
radius 125 pixels, vectors 50,000, vector sampling 2.300, min spheres 100, max spheres 2000, tolerance 0.0050.
show plot cheched, 3D result unchecked, align to fabric tensor unchecked, record eigens unchecked.
For BoneJ 1.4.3:
Directions 2000, lines per dimension 100, sampling increment 1, recommended minimums unchecked.

Thank you in advance for your time,
Best regards,

There were indeed some changes to Anisotropy between 1.4.1 (28 Aug 2015) and 1.4.3 (8 Aug 2018), but I think you are describing the difference between BoneJ1 and BoneJ2. There was a big change in the way the rose plot is generated between the two major versions, so it’s likely that you’ll see differences in DA between them.

Thank you very much for your answer! I am quite certain that the two version are indeed boneJ 1.4.1 and boneJ 1.4.3, but we will try to compare with boneJ 2 and with results from CtAn to see which value we can better trust.

Best regards,

  • BoneJ 1.4.3. Anisotropy dialog looks like this:

  • BoneJ2 Anisotropy dialog looks like this:

I’m interested to know how your results compare. Please note that the CTAn routine (as it is described in its technical documents), is quite different because it samples rays emanating from a single point in the centre of the image. BoneJ attempts to sample all pixels from many directions. This is to ensure that each pixel’s full contribution to the texture around it is considered, rather than just its contribution along the vector formed by it and the centre point.

If you figure out a way to reliably test DA of intermediate values, that would be very helpful. Test images of pure isotropy or anisotropy are easy to make, but a test image with DA = 0.5 or 0.75 is less straightforward to conceive of or generate.

Finally - major improvements will be applied only to BoneJ2, and only bug fixes to BoneJ1.

Thank you very much for your answer. You are right indeed, the dialog on our second computer corresponds to that of boneJ 2 … Somehow it still displays version 1.4.3 in the “about plugins” section of imageJ though. There must be a problem with the installation, I will reinstall it from scratch.
We will use BoneJ2 for our analyses, and we will try to compare our results with CTAn to see if how different they are.
Again, thank you very much for your help.

BoneJ2 should not display anything in the Plugins > About Plugins… menu. You may have an old BoneJ1 installed. Have a look in your plugins directory for BoneJ_.jar and remove it if it is there. If you need to have both major versions installed on one computer for a comparison of functionality (as I do for development purposes), it’s much cleaner to have completely separate ImageJ/Fiji installations, with only one of the major BoneJ versions installed in each.

On my workstation I have three ImageJ installations:

  1. ~/ImageJ/ for a vanilla ImageJ2, with BoneJ1
  2. ~/Fiji.app.user/ for a standard user installation of BoneJ2. Only packages from the installer are allowed there so that it’s like an ordinary user’s Fiji, with a high expectation that everything should work all the time.
  3. ~/Fiji.app.dev/ which is where I put all the in-development plugins and test new code, or try the effects of different Java versions. That one can get broken, and there’s no guarantee of the current state.

This is all on Ubuntu GNU/Linux. Note that BoneJ1 has some special old Fiji installation requirements.

Indeed, there was an old version of BoneJ installed. I reinstalled Fiji from scratch and now it is working just fine.
Thank you again for your help!

1 Like