Home Image-Pro Automation (Macros, Apps, Reports)

Fiber Separation App - options to change to improve automatic recognition of fibers?

Does anyone have a suggestion what could be the reason why FiberSepatarionApp cannot recognize automatically those long fibers in the picture (it recognizes equally long and also overlapping fibers in other similar images). I'm using ImagePro v9.3 and I've tried to change these options: Fiber thickness, Minimum length, Angle deviation, Search radius, Maximum overlap, but with no luck.  
Is there some other options that could improve the fiber recognition (sometimes the automation cuts the fiber into pieces)? Maybe something in Threshold tool options or Segmentation options or something else?


  • RiinaS,

    You can run the separation with "Show skeleton" option to see if the fibers are segmented properly.
    The fibers can be split if there is a small branch in the middle. Smoothing the image might help.

  • Thanks for the quick reply. I will try smoothing.

    Do you know if  it's worth of trying to change the following parameters: (It would save a lot of time, if I knew which settings change has good effects and which are not worth of trying)

    Const m_StraightLineDeviation As Long = 5 (in the script)

    .Enhance.Gaussian(2, m_Options.LineThickness) (it's currently commented away from my script)

    Bias %B (in Segmentation options, it's currenty set to -25)


  • Hi Riina,

    It's hard to tell without test. Gaussian is smoothing, so you may try to enable the line. You can adjust other parameters a little and check the result. The app has Preview button, which you can use to quickly evaluate segmentation. The app icon in the ribbon has tooltip, from which you can open documentation file with more details.


  • Hello again and thanks for the reply.

    I have an older version of the app, so I don't have Preview button. Also I did not find documentation file.

    I tried smoothing and, for some reason, it cuts the ends from the both end of the fiber, so the result was shorter than the actual length of the fiber. And as you said, Gaussian was smoothing, so when I enabled the line in the code, it did the same cutting (and that was the reason why previous user had commented it out from the code). 

    I've made more measurements and I've noticed that my problem has maybe something to do with length. Automatization seems to leave out the longest fibers. I have not yet figured out what is the limit. But is there somewhere a parameter which has something to do with maximum length?

  • Hi Riina,

    Can you please upload your image, so I can check it with the app? 

    Click here to upload files.


  • Is there a max size of the file one can upload? It keeps failing when I try to upload. I tried TIF-image and also jpg-image. Both failed.
  • Please use the link in my comment (it doesn't have size limit):
    Click here to upload files.

  • Yes, I tried that link earlier and it did not work maybe due to security reasons. I changed device and now files went through.
  • Hi Riina,

    I tested your TIF image in the app with the default parameters and all fibers were properly separated and measured. 
    Please try to use the parameters as on my screenshot and see if you have the same results.
    Also, please check that you do not have any Measurement filters set (e.h. Line:Length), which may filter out some fibers.
    I've also attached the ZIP with the app and the options files (FSO and IQO) that I used.

Sign In or Register to comment.