News:

SMF - Just Installed!

Main Menu

Recent posts

#21
Automation / Job queue with student license...
Last post by tp - June 18, 2025, 03:52:30 PM
Hello,

I'm am doing permeability modelling with geodict and I want to automatize the process. I have done a macro for one sample but I would like to run several macro one after one. If I have understood well it is possible with job queue in the software, however I don't have the access of "Manage Job queue server " in Geodict. It is because of the student license or something else ?

Best,
#22
Automation / Re: Grayvalues for Material ID...
Last post by Janine Hilden - June 13, 2025, 12:35:28 PM
Hi,

I assume, your gray value image does not have index 1. If only one image is loaded it has always index 0. If more images are loaded, have a look at the Color By combo-box in the Volume Field tab. Counting starts with 0. The fields have the order in which they are loaded to GeoDict.
[attachimg=1]

Another thing I noted in your code example, is that the indentation does not seem to make sense within the loop. In the example in the User Guide it was meant like the following. I marked the significant differences to your code with "!!!".


VolumeInfo  = gd.getVolumeFieldsInfo() # get list of dictionaries of loaded Volume Fields and assign it to variable VolumeInfo
nx, ny, nz  = gd.getVolDimensions()    # get the number of voxels in X-, Y- and Z-direction and assign the numbers to variables
Structure   = gd.getStructure()        # assign 3D numpy array describing the loaded structure to the variable Structure

# !!! In the following command ensure to have the right index for your gray value field !!!
Name        = VolumeInfo[0]['name']    # assign the name of the volume field to the variable Name.
VolumeField = gd.getVolumeField(Name)  # assign the numpy array describing the volume field to the variable VolumeField
Statistic   = []                       # Create empty list to store the statistical values

for k in range(nz): # loop over all Z-layers
value_sum   = 0    # creating variable value_sum to sum up the result values
value_count = 0    # creating variable value_count to count the summands

for j in range(ny):  # loop over all Y-layers

  for i in range(nx): # loop over all X-layers

    if Structure[i][j][k] == 0:                       # condition: if the kth Z-value in the jth Y-column of the ith X-layeris pore space (ID 0), the following indented section is executed
       value_sum   = value_sum + VolumeField[i][j][k] # add all pore space result values of the kth Z-layer to the sum value_sum
       value_count = value_count + 1                  # count the summands of value_sum

# !!! The following section should have the right indentation according to what should be plotted. Since we want to have one value for each Z-layer it belongs to the outer loop (for k in range nz) and thus needs to have the same indentation level as the head of the second loop, here 1 space. !!!
meanVal = value_sum / value_count # compute mean value of all pore space result values in the kth Z-layer and assign it to the variable meanVal
Statistic.append(meanVal)         # append the mean value of the Z-layer to the Statistic list

# !!! The following section needs to be outside of the loop to plot all data in one plot !!!
gDlg  = gd.makeGraphDialog()                  # create a graph dialog object
graph = gDlg.addGraph(Name, "Z layers", Name) # add a graph object with the name of the volume field as title and Y-axis legend and Z-layers as X-axis legend 
Z_layers = list(range(1, nz + 1))             # writes the Z-layer numbers 1, 2, ..., nz-1, nz into a list named Z-layers
graph.addData(Z_layers, Statistic, Name)      # add a single dataset with the Z-layers as X-values, the mean result values as Y-values and the name of the volume field as legend to this graph
gDlg.run()                                    # show graph dialog


This will output something like this:
[attachimg=2]


#23
CT, µCT and FIB-SEM / Re: Multi-Directional FiberFin...
Last post by Lilli Burger - June 13, 2025, 10:08:45 AM
Hello Jack,

yes, the noise might be also a problem.

There are some Expert Setting, which you can use in that case. Please include the attached .gps-file into the Settings > Edit Expert Settings... dialog before running the identification process once again.

Best regards,
Lilli

#24
CT, µCT and FIB-SEM / Re: Multi-Directional FiberFin...
Last post by jdrunner - June 12, 2025, 03:41:46 PM
Hi Lilli,

Thank you for your response.

We have tried different thresholding values, still with no luck.

We also dilated our structure to ensure that the diameter was at minimum 8 voxels to eliminate any instability there.

Our fibers have relatively high surface roughness, which might be playing a role in the fibers being broken up into multiple identified fibers.

I would be glad to send our structure file to you if that would help any.

Respectfully,
Jack Davis
#25
CT, µCT and FIB-SEM / Re: Multi-Directional FiberFin...
Last post by Lilli Burger - June 12, 2025, 09:09:17 AM
Hello Jack,

Thank you for reaching out.

In case of an over-segmentation we recommend reducing the threshold, as described on page 40 and 55ff. of the FiberFind user guide https://www.math2market.com/fileadmin/UserGuide/GeoDict2025/FiberFind2025.pdf.

First, you can check for a sufficient threshold by analyzing the result you already have. To do this, you can load the numpy field (as described on page 55) and find a threshold value with which the centerlines are displayed properly.

Please also note that the diameter of the fibers have to be at least 8 voxels to get an stable identification result.

I hope this helps you with your work.

Best regards,
Lilli
#26
CT, µCT and FIB-SEM / Multi-Directional FiberFind
Last post by jdrunner - June 11, 2025, 04:00:50 PM
We are trying to obtain fiber length and count through the FiberFind (AI) module.

The fibers are multidirectional and have fairly high surface roughness.

The module is currently identifying what should be single fibers as multiple fibers, and some fibers are not getting identified at all. The threshold is currently set to 0.9

If we increase the threshold, the issue of multiple fibers attributed to 1 decreases, but so does the identification of fibers. The below image captures what we are currently dealing with.

[attachimg=1]
#27
Automation / Grayvalues for Material ID's u...
Last post by jdrunner - June 10, 2025, 03:04:01 PM
I am trying to obtain the grayvalues attributed to a specific material ID so I can then create a histogram to visualize the distribution of grayvalues.

I tried running the code found here (https://geodict-userguide.math2market.de/2025/automation_api-results.html?anchor=getvolumefield) in a GeoApp.

[attachimg=2]

However, I received this error.
[attachimg=1]

The logic behind running this code was to get all the statistics attributed to a specific Material ID, and then index out the grayvalues.
#28
CT, µCT and FIB-SEM / Re: Visualization of fibers in...
Last post by Philipp Eichheimer - June 06, 2025, 02:29:21 PM
Dear FabianeGommes,

Thank you for following up. Yes, indeed, we improved our pretrained neural network in FiberFind-AI to work for fibers that are not strictly aligned in x-y direction. Additionally, we extended the functionality to work for different types of fibers such as elliptical fibers. 

Best regards,

Philipp
#29
CT, µCT and FIB-SEM / Re: Visualization of fibers in...
Last post by jdrunner - June 05, 2025, 04:16:35 PM
Hello,

I had a question regarding the FiberFind mentioned in this thread.

Do the fibers still have to be aligned in the x-y plane for identification with the 2025 software? Thank you.

Respectfully,
Jack Davis
#30
Digital Battery Development / Re: How long do concentration ...
Last post by Caroline - June 04, 2025, 07:45:52 PM
Dear Janine,

Thank you very much for this detailed reply! I received the email and will try some simulations with it.
Reducing the data points also makes a lot of sense. Thank you! I look forward to the results.

Best,
Caroline