🚀 SegFormer (b5-sized) 仅预训练的编码器
SegFormer编码器在Imagenet-1k上进行了微调。它由Xie等人在论文 SegFormer: Simple and Efficient Design for Semantic Segmentation with Transformers 中提出,并首次在 此仓库 中发布。
🚀 快速开始
SegFormer(b5-sized)编码器是在Imagenet-1k上预训练的模型,可用于语义分割的微调任务。你可以参考下面的使用示例来使用该模型。
✨ 主要特性
- 架构设计:SegFormer由分层Transformer编码器和轻量级全MLP解码头组成,能在ADE20K和Cityscapes等语义分割基准测试中取得出色的结果。
- 预训练机制:分层Transformer先在ImageNet-1k上进行预训练,然后添加解码头,并在下游数据集上进行整体微调。
📦 安装指南
文档中未提及具体安装步骤,可跳过该章节。
💻 使用示例
基础用法
以下是如何使用此模型将COCO 2017数据集中的图像分类为1000个ImageNet类别之一的示例:
from transformers import SegformerFeatureExtractor, SegformerForImageClassification
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = SegformerFeatureExtractor.from_pretrained("nvidia/mit-b5")
model = SegformerForImageClassification.from_pretrained("nvidia/mit-b5")
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[predicted_class_idx])
更多代码示例,请参考 文档。
📚 详细文档
模型描述
SegFormer由分层Transformer编码器和轻量级全MLP解码头组成,以在ADE20K和Cityscapes等语义分割基准测试中取得优异成绩。分层Transformer首先在ImageNet-1k上进行预训练,之后添加解码头并在下游数据集上进行整体微调。
本仓库仅包含预训练的分层Transformer,因此可用于微调目的。
预期用途和限制
你可以使用该模型进行语义分割的微调。请查看 模型中心 以查找针对你感兴趣的任务进行微调的版本。
📄 许可证
此模型的许可证可在 此处 找到。
BibTeX引用和引用信息
@article{DBLP:journals/corr/abs-2105-15203,
author = {Enze Xie and
Wenhai Wang and
Zhiding Yu and
Anima Anandkumar and
Jose M. Alvarez and
Ping Luo},
title = {SegFormer: Simple and Efficient Design for Semantic Segmentation with
Transformers},
journal = {CoRR},
volume = {abs/2105.15203},
year = {2021},
url = {https://arxiv.org/abs/2105.15203},
eprinttype = {arXiv},
eprint = {2105.15203},
timestamp = {Wed, 02 Jun 2021 11:46:42 +0200},
biburl = {https://dblp.org/rec/journals/corr/abs-2105-15203.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}
📋 模型信息
属性 |
详情 |
模型类型 |
语义分割编码器 |
训练数据 |
Imagenet-1k |