续
上集说到语义搜索,这集接着玩一下图搜图,这种场景在电商中很常见——拍照搜商品。图搜图实现非常类似语义搜索,代码逻辑结构都很类似…
开搞
还是老地方modelscope找个Vision Transformer模型,这里选用vit-base-patch16-224
,如果还想玩玩文搜图,可以选用支持多模态的multi-modal_clip-vit-base-patch16_zh
D:\python2023>modelscope download --model AI-ModelScope/vit-base-patch16-224
准备测试数据
运行代码
from PIL import Image
from transformers import ViTFeatureExtractor, ViTModel
import torch
import time
from elasticsearch import Elasticsearch
# 初始化模型和图片特征提取器
MODEL_PATH = 'C:\\Users\\Administrator\\.cache\\modelscope\\hub\\AI-ModelScope\\vit-base-patch16-224'
feature_extractor = ViTFeatureExtractor.from_pretrained(MODEL_PATH)
model = ViTModel.from_pretrained(MODEL_PATH)
def extract_features(image_path):
image = Image.open(image_path)
inputs = feature_extractor(images=image, return_tensors="pt")
with torch.no_grad(