open_clip编码图像和文本
open_clip是CLIP的开源实现版本,只训练了CLIP效果最好的几个模型。
安装是 1
pip install open_clip_torch
首先导入 open_clip,并创建相关模型 1
2
3
4
5
6
7
8
9
10import open_clip
import torch
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
clip_model_name = "ViT-L-14"
clip_model,_,clip_preprocess = open_clip.create_model_and_transforms(clip_model_name
clip_model_name,pretrained = "openai",precision='fp16' if device == 'cuda' else 'fp32',device=device,
)
tokenize = open_clip.get_tokenizer(clip_model_name)
tokenize
是分词器,所有的文本都要先经过分析器才能放入模型进行推理。
编码图像
1 |
|
/path/to/example.png
替换成自己图片的路径
image_to_features
函数是一个封装过的将图像转成文本的函数,传入的参数是一个image_to_features
格式的图片。
image_feature
就是经过CLIP的编码器得到的特征
编码文本
1 |
|
text_features
就是得到的特征。
open_clip编码图像和文本
https://studyinglover.com/2023/07/13/open_clip编码图像和文本/