Kaggle Data Science Bowl 2018 : Find and segment nuclei

(Aadam ‍) #41

Thanks, it’s working now. Ironically, I wasn’t reading the masks correctly. After correcting that and using some of the pointers from your comment, it finally worked. Now, some other errors are taking their place to haunt my nights :wink:

How do you handle RGBA images?


May I know what kind of images are considered non working ?

  • I had issues with overlapping pixels so I set DETECTION_NMS_THRESHOLD = 0.0 to handle overlapping and bounding box non max suppression. Is this the right approach?
  • Why do we need Mask non-max suppression?
  • Does morphological dilation mean making the mask bigger?


I ran it on K80. Batch size of 1 appeared to be the fastest for me, Could it be due to something that I messed up?

(Frederico) #44

If I use a small 128 image size, it can do 2 images/batch. with 256x 256 image size, it can only handle 1 per batch.
I pre-process all images changing its size, not the best approach I think, but what my free time allow me to do.
If you want I can share my config file

(James Requa) #45

@hel0 for handling overlapping masks, imo the simplest way is to just take the sum of all of your instance mask predictions - to create one full mask containing all predictions - then just run a check for anywhere with pixel value greater than 1 (indicating an overlap).

Here is a page on a few morphological transformations including dilation. The visuals should help you understand it better :slight_smile: Of course you don’t have to use opencv, there are many libraries with similar functions that you can try and see what works best