Train Custom dataset using the centerpoint
Dear,
Thanks for the amazing work.
I wish to use the proposed framework for my dataset where I have just the centerpoint labels and I wish to generate the instance segmentation masks using your pipeline.
Can you please tell me what format the labels should be in?
Thanks and best regards, Nabeel
I appreciate your interest in our work. If you want to perform point-supervised instance segmentation, you need the below labels.
- (center) point label
Please refer to Center_points.zip in the link.
The point labels for instances in an image should be formed as follow:
# image_1.txt
center_x center_y category_id confidence
center_x center_y category_id confidence
...
center_x center_y category_id confidence
Here, the confidence is 1.0 for all point labels.
- semantic segmentation mask
The main concept of this work is transferring the knowledge of weakly-supervised semantic segmentation to instance segmentation.
Using point or image-level supervised weakly-supervised semantic segmentation work, you should generate semantic segmentation masks.
Please refer to WSSS_maps.zip in the link.
Thank you very much for your reply. My use case is the microscopic images with cells and the image looks like the following image.

I have only one class in my case i.e. Cell. And I only have the centerpoint information.
My question is how can I generate the semantic segmentation masks using the centerpoints only?
Thanks in advance
This work assumes that we have semantic segmentation masks from a weakly-supervised method and we expand it to instance segmentation. Therefore, you should generate semantic segmentation masks using a weakly-supervised method. This paper only considers segmenting of general objects, so I recommend you find weakly-supervised semantic segmentation in medical images.
@qjadud1994 For the point supervision, is it ok to use non-centered point labels instead of centered points labels? Also, is the validate function inside main.py used for inference already? Thanks.
-
I think non-centered point labels are ok as long as their location is consistent. Otherwise, I guess the performance drop is inevitable. For example, if all point labels indicate the head (it may not center location), it is fine to stably optimize the network. However, if some point labels indicate the head and other point labels indicate the stomach, such inconsistency may confuse the network.
-
From the
validate()function in the main.py, you can get the inference output of the network.
@qjadud1994 Can I perform inference without point labels after training with the point labels? Thanks.