FillObjects plugin


#1

Hi,
I have been trying to use the FillObjects module (https://github.com/AetherUnbound/CellProfiler/blob/dd2175d19fc92e12f6451b45bcd4249b1e55fa87/cellprofiler/modules/fillobjects.py) on my 3D watershed objects. I get the following warnings within a few seconds:

C:\Users\uqjkesby\AppData\Local\Temp_M5589~1\skimage\util\dtype.py:118: UserWarning: Possible sign loss when converting negative image of type float64 to positive image of type bool.
C:\Users\uqjkesby\AppData\Local\Temp_M5589~1\skimage\util\dtype.py:122: UserWarning: Possible precision loss when converting from float64 to bool
C:\Users\uqjkesby\AppData\Local\Temp_M5589~1\skimage\morphology\misc.py:122: UserWarning: Only one label was provided to remove_small_objects. Did you mean to use a boolean array?

It then just seems to get stuck (using ~15% CPU with allocated memory shifting between 5-8 GB). Watershed takes about 5 mins and I left this for over 5 h with nothing changing. Any thoughts?

Also, a minor thing, the options in this module have a ‘minimum hole size’ but the help says that this is the maximum hole size to be filled.

Thanks in advance,
James


#2

Update: it did finish when run overnight. Seems this module just takes a lot longer than I expected.


#3

Hi JKesby,

The module was made specifically for segmenting 3D objects which were acquired on our spinning disk microscopes at 100x image magnification. This high magnification leads to a fairly low number of objects per stack i.e. usually under 30-40. So, the module usually only takes a couple of minutes. The runtime will scale with respect to number of objects in the stack so if you are segmenting 20x or 40x FOVs the runtime will be significantly longer. If you want to increase throughput for the hole filling module step you can down sample the image dimensions by 2x-4x. Also, you can ignore the warning messages.


#4

Hi Derek,

OK, that makes sense. My images are spinning disk 60x but stitched (3x3, 5x3 etc.), so there are a LOT of cells.
I appreciate the feedback and will downsample further if need be.
Cheers.