🚀 AM - RADIO:将所有领域归为一体
AM - RADIO是一种创新的模型,它能够将不同领域的信息进行整合,实现多领域信息的统一处理,为计算机视觉等领域的研究和应用提供了新的思路和方法。
🚀 快速开始
你可以从HuggingFace Hub拉取模型并使用,以下是具体的Python代码示例:
import torch
from PIL import Image
from transformers import AutoModel, CLIPImageProcessor
hf_repo = "nvidia/RADIO-B"
image_processor = CLIPImageProcessor.from_pretrained(hf_repo)
model = AutoModel.from_pretrained(hf_repo, trust_remote_code=True)
model.eval().cuda()
image = Image.open('./assets/radio.png').convert('RGB')
pixel_values = image_processor(images=image, return_tensors='pt', do_resize=True).pixel_values
pixel_values = pixel_values.cuda()
summary, features = model(pixel_values)
💻 使用示例
基础用法
RADIO会返回一个包含两个张量的元组。summary
类似于ViT中的cls_token
,用于表示整个图像的一般概念。它的形状为$(B,C)$,其中$B$是批量维度,$C$是通道数。spatial_features
表示更局部化的内容,适用于语义分割等密集任务,或集成到大型语言模型中。它的形状为$(B,T,D)$,其中$T$是扁平化的空间令牌,$D$是空间特征的通道数。一般来说,$C \neq D$。
import torch
from PIL import Image
from transformers import AutoModel, CLIPImageProcessor
hf_repo = "nvidia/RADIO-B"
image_processor = CLIPImageProcessor.from_pretrained(hf_repo)
model = AutoModel.from_pretrained(hf_repo, trust_remote_code=True)
model.eval().cuda()
image = Image.open('./assets/radio.png').convert('RGB')
pixel_values = image_processor(images=image, return_tensors='pt', do_resize=True).pixel_values
pixel_values = pixel_values.cuda()
summary, features = model(pixel_values)
高级用法
将spatial_features
转换为空间张量格式可以使用模型的下采样大小,并结合输入张量的形状。对于'radio_v1',补丁大小为14。
from einops import rearrange
spatial_features = rearrange(spatial_features, 'b (h w) d -> b d h w', h=x.shape[-2] // patch_size, w=x.shape[-1] // patch_size)
得到的张量形状为$(B,D,H,W)$,这是计算机视觉模型中常见的形状。
📚 详细文档
📄 许可证
RADIO代码和权重根据NSCLv1许可证发布。
📚 引用
如果你发现这个仓库很有用,请考虑给它加星并引用:
@InProceedings{Ranzinger_2024_CVPR,
author = {Ranzinger, Mike and Heinrich, Greg and Kautz, Jan and Molchanov, Pavlo},
title = {AM - RADIO: Agglomerative Vision Foundation Model Reduce All Domains Into One},
booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {June},
year = {2024},
pages = {12490-12500}
}
@misc{ranzinger2024phisdistributionbalancinglabelfree,
title={PHI - S: Distribution Balancing for Label - Free Multi - Teacher Distillation},
author={Mike Ranzinger and Jon Barker and Greg Heinrich and Pavlo Molchanov and Bryan Catanzaro and Andrew Tao},
year={2024},
eprint={2410.01680},
archivePrefix={arXiv},
primaryClass={cs.LG},
url={https://arxiv.org/abs/2410.01680},
}