tags:
模型卡:GroupViT
该检查点由Jiarui Xu上传。
模型详情
GroupViT模型由Jiarui Xu、Shalini De Mello、Sifei Liu、Wonmin Byeon、Thomas Breuel、Jan Kautz和Xiaolong Wang在论文GroupViT: Semantic Segmentation Emerges from Text Supervision中提出。受CLIP启发,GroupViT是一种视觉-语言模型,能够在任何给定的词汇类别上执行零样本语义分割。
模型日期
2022年6月
摘要
分组和识别是视觉场景理解的重要组成部分,例如用于目标检测和语义分割。在端到端的深度学习系统中,图像区域的分组通常通过像素级识别标签的自顶向下监督隐式进行。相反,在本文中,我们提出将分组机制重新引入深度网络,使得语义分割仅通过文本监督自动涌现。我们提出了一种分层的分组视觉变换器(GroupViT),它超越了常规的网格结构表示,并学习将图像区域逐步分组为更大、任意形状的片段。我们通过对比损失在大规模图像-文本数据集上联合训练GroupViT和文本编码器。仅通过文本监督且无需任何像素级标注,GroupViT学习将语义区域分组,并成功以零样本方式(即无需任何进一步微调)迁移到语义分割任务中。它在PASCAL VOC 2012数据集上实现了52.3% mIoU的零样本准确率,在PASCAL Context数据集上实现了22.4% mIoU的准确率,与需要更多监督的最先进迁移学习方法表现相当。
文档
与Transformers一起使用
from PIL import Image
import requests
from transformers import AutoProcessor, GroupViTModel
model = GroupViTModel.from_pretrained("nvidia/groupvit-gcc-yfcc")
processor = AutoProcessor.from_pretrained("nvidia/groupvit-gcc-yfcc")
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
inputs = processor(text=["一张猫的照片", "一张狗的照片"], images=image, return_tensors="pt", padding=True)
outputs = model(**inputs)
logits_per_image = outputs.logits_per_image
probs = logits_per_image.softmax(dim=1)
数据
该模型在公开可用的图像-标题数据上进行训练。这是通过爬取少量网站和使用常用的现有图像数据集(如YFCC100M)相结合完成的。大部分数据来自我们对互联网的爬取。这意味着数据更能代表与互联网连接最紧密的人群和社会,而这些人群往往偏向于更发达的国家和年轻、男性用户。
更多代码示例,请参阅文档。
BibTeX条目和引用信息
@article{xu2022groupvit,
author = {Xu, Jiarui and De Mello, Shalini and Liu, Sifei and Byeon, Wonmin and Breuel, Thomas and Kautz, Jan and Wang, Xiaolong},
title = {GroupViT: Semantic Segmentation Emerges from Text Supervision},
journal = {arXiv preprint arXiv:2202.11094},
year = {2022},
}