What training target for the semantic segmentation stage?
qAp opened this issue · 2 comments
Have tried:
- 1-channel target, cells with overlap removed.
- 2-channel target. Channel 0 contains cells but with annotation overlap and touching borders removed. Channel 1 contains those regions removed in channel 0. See example.
It seems that the above target choices are geared towards separating the cells.
In the deep watershed transform approach, the semantic segmentation stage seems to be only about separating the different classes. The separation of instances begins with the Direction Net.
In Fig.4 of the deep watershed transform paper, it's seen that the semantic segmentation makes no attempt at separating the two cars. They are merged together under one mask. It's only in the next stage that the direction net is required to predict the direction vectors, which do mark out the boundary between the two cars. The direction loss is maximum when vectors on either side of a boundary point in the same direction.
It therefore looks like the training target should simply be just a 1-channel boolean mask, where it's True if the pixel comes under at least one cell, and False if it comes under no cells.
Going with 2+ channels approach: #7 (comment)