Image Segmentation Using Text and Image Prompts
About
Image segmentation is usually addressed by training a model for a fixed set of object classes. Incorporating additional classes or more complex queries later is expensive as it requires re-training the model on a dataset that encompasses these expressions. Here we propose a system that can generate image segmentations based on arbitrary prompts at test time. A prompt can be either a text or an image. This approach enables us to create a unified model (trained once) for three common segmentation tasks, which come with distinct challenges: referring expression segmentation, zero-shot segmentation and one-shot segmentation. We build upon the CLIP model as a backbone which we extend with a transformer-based decoder that enables dense prediction. After training on an extended version of the PhraseCut dataset, our system generates a binary segmentation map for an image based on a free-text prompt or on an additional image expressing the query. We analyze different variants of the latter image-based prompts in detail. This novel hybrid input allows for dynamic adaptation not only to the three segmentation tasks mentioned above, but to any binary segmentation task where a text or image query can be formulated. Finally, we find our system to adapt well to generalized queries involving affordances or properties. Code is available at https://eckerlab.org/code/clipseg.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Few-shot Semantic Segmentation | PASCAL-5^i (test) | -- | 177 | |
| Medical Image Segmentation | BUSI (test) | Dice62.91 | 121 | |
| Medical Image Segmentation | Medical Image Segmentation Aggregate (Average of BUSI, BTMRI, ISIC, Kvasir-SEG, QaTa-COV19, and EUS) (test) | DSC84.87 | 80 | |
| Medical Image Segmentation | CVC-ClinicDB | Dice Score71.49 | 68 | |
| Binary Segmentation | Kvasir-SEG (test) | DSC0.8769 | 67 | |
| Medical Image Segmentation | ISIC | DICE90.55 | 64 | |
| Medical Image Segmentation | BUSI | Dice Score80.95 | 61 | |
| Semantic segmentation | PASCAL 1-shot 5i | -- | 57 | |
| Few-shot Segmentation | COCO 20^i (val) | Mean Score33.3 | 55 | |
| Semantic segmentation | Kvasir-SEG (test) | IoU81.72 | 51 |