MrGiovanni / SyntheticTumors

[CVPR 2023] Label-Free Liver Tumor Segmentation
https://www.cs.jhu.edu/~alanlab/Pubs23/hu2023label.pdf
MIT License
281 stars 24 forks source link

Could I understand the TumorGenerated.py is a trick of data augmention? #12

Open OCEANOUXIN opened 6 days ago

OCEANOUXIN commented 6 days ago

Thanks you for your excellent works, I want to know whether this work is a equal way to augment data.

MrGiovanni commented 5 days ago

Hi @OCEANOUXIN

Good question. In my opinion, synthetic tumors in this paper are fundamentally different from data augmentation.

Suppose you have 100 CT volumes with liver tumors from the LiTS dataset. With data augmentation techniques like rotation, blurring, flipping, and adding noise, you can make minimal changes to these 100 volumes—same tumors, same patients.

However, tumor synthesis can be applied not only to these 100 volumes but also to numerous healthy CT volumes, which are more common in clinical practice. This approach can generate thousands of CT volumes with per-voxel annotations—different tumors, different patients.

Therefore, tumor synthesis is a promising research direction.

Best, Zongwei

OCEANOUXIN commented 2 days ago

Hi @OCEANOUXIN

Good question. In my opinion, synthetic tumors in this paper are fundamentally different from data augmentation.

Suppose you have 100 CT volumes with liver tumors from the LiTS dataset. With data augmentation techniques like rotation, blurring, flipping, and adding noise, you can make minimal changes to these 100 volumes—same tumors, same patients.

However, tumor synthesis can be applied not only to these 100 volumes but also to numerous healthy CT volumes, which are more common in clinical practice. This approach can generate thousands of CT volumes with per-voxel annotations—different tumors, different patients.

Therefore, tumor synthesis is a promising research direction.

Best, Zongwei

Thanks for your reply! I also wonder if the TumorGenerated.py could generate the synthetic liver label without the GT? I see the code seems to have to use the GT. That's means it's a method of supervision.

MrGiovanni commented 2 days ago

The GT you referred to was randomly generated shapes. These shapes are used to control the generation of tumors and are not annotated by humans.

OCEANOUXIN commented 2 days ago

The GT you referred to was randomly generated shapes. These shapes are used to control the generation of tumors and are not annotated by humans.

I still confused, how to get the synthetic liver? Isn't it from the TumorGenerated.py? But in your transform function you get the GT before the use the TumorGenerated.py. Could you explain it? Thank you so much!