About Trabecular Spacing and Trabecular Separation

Tags: #<Tag:0x00007fa307c43608>


Dear Mr mdoube;

As we know, while having data about Tb.Sp ; we choose “spacing” option in measuring Trabecular Thickness…
My question is, if our gained data of “Tb. Sp” is trabecular spacing or trabecular separation…

I’ve read a calculation about those two;
Trabecular Separation(Tb. Sp) = 1/Tb.N - Tb.Th
Trabecular Spacing (Tb. Spac) = 1/Tb.N

Could you please share your opinion about that; thank you…


Dear Ersague,

In my opinion Tb.N is not a very useful measurement, especially if you have 3D images (e.g. from X-ray microtomography). The reason is that to calculate Tb.N the algorithm must assume an underlying 3D geometry, which may or may not be correct. It’s also ambiguous - some people use Tb.N as measured from 2D images and others use it measured from 3D images.

Tb.Sp as implemented by BoneJ is the Local Thickness of the marrow space in between trabeculae. The Tb.Sp at a point in the structure is defined by the diameter of the largest sphere that fits within the marrow space and that contains the point. Spheres are fitted directly. The mean Tb.Sp number reported is an arithmetic mean of the pointwise Tb.Sp values. It’s actually just the same process as Tb.Th but applied on the background phase of the input image.

See the BoneJ docs for more information and links to further resources.

Best regards,



Hi Michael,

After reading many replies from you, I have to admit that you are really an expert in this area. So my question is can we get Tb.N. using ImageJ, or can we calculate Tb.N. based on the results that we get using ImageJ. Many thanks.



Yes: some people calculate it as (BV/TV)/Tb.Th. Others use 1/(Tb.Th + Tb.Sp); this is how Tb.N is calculated by Bruker’s CTAn, for example. So there is no need to do anything apart from a simple calculation using thickness results.

Because Tb.N is fundamentally not independent from other parameters, and relies on a geometric model assumption, I much prefer to use Conn.D, which is a topological count of ‘handles’. Care mush be taken with Conn.D because it can count small loops of noise as handles, so make sure your data are clean and smooth, and you have run Purify, prior to a Conn.D measurement.


Hi Michael,

Thank you so much for your quick response. After checking the literature, especially the guideline of ASBMR 2010 for reporting results of bone microarchitechture, it’s recommanded to report Tb.Th, Tb.Sp and Tb.N. based on 3D calculations, namely using a sphere-fitting method. Cuz using 2D methods to calculate these meansures, we have to assume a geometric structure, either rodlike or platelike, and these highly idealized models are considered two ends of a spectrum, where the real architecture is a mixture of both rods and plates. And in the 3D model, the formula to calculate Tb.N. is Tb.N=1/(Tb.Th + Tb.Sp), you are correct.Thats my understanding of this parameter.




One more point, if we wanna use 2D model to calculate Tb.N., it’s based on the geometric assumptions, Tb.N.=(BV/TV)/Tb.Th is based on parallel plate model, Tb.N.=Sqr((4/PI)*(BV/TV))/Tb.Dm is based on cylinder rod model. Am I right?




Recently I have been trying to use BoneJ to analyze trabecular spacing, as I have in the past.

While I choose trabecular spacing for the results table, the only result it is able to show is thickness. After reading through the old Google forum I waited several hours to see if it was maybe playing catchup with the output, but it never showed up. It also is unable to output Trabecular number.

I’ve combed through all of the buttons looking to see if it is an option that I have checked that has caused trabecular spacing to go away but can’t find anything.

Can you advise?
I’m using a Mac.
OS Sierra 10.12.6
FIJI is up to date
BoneJ is 1.4.2



It’s probably that the spacing in your image is quite big and that there is lots of contact between background and the sides of the stack. BoneJ treats the outside as continuous rather than the image stack having ‘walls’ that stop growth of the spheres that do the fitting. That means the spheres just keep on growing and never hit the sides. You can try to speed it up by downsampling your image (Image > Scale, enter values < 1), or by putting some “walls” of foreground on the sides.


Thanks Michael,

I cropped down the Thresholded TIFF stack and was able to get a spacing number after about 1/2 hour. The number values for mean and max were extraordinarily high. Discussed more below.

I was unable to use the Image>Scale parameters to further constrain my data. The error is that an 8-bit binary image is required. My stack is 8-bit so I’m not sure what is going wrong.

Using the Image>Scale constraint to limit the space would be exceedingly useful for me not just because of processing time. I’ve included two pictures of the bone I am scanning - I would like to exclude the marrow cavity. The marrow cavity is open to the space surrounding the bone in the stack so I need to make sure that that isn’t being included as Tb. Sp. By my calculations capping the max Tb. Sp. at about .5 mm would be adequate to exclude the surrounding space and the marrow cavity, but I’m not sure how to circumvent the 8-bit image notice that I’m getting.

Can you advise?



I see little point in reporting Tb.N at all because it is totally derived from Tb.Th and Tb.Sp. Use Conn.D instead, because it measures the number of loops of bone directly.


@Mimi_Sammarco this image looks poorly suited to Tb.Sp measurement, which expects a volume filled with trabeculae. Here, the algorithm will attempt to fill all the non-bone space with spheres, which is pretty much the marrow cavity and the space outside the bone. If you want to continue this discussion, please take it to its own thread.