首页 > 其他分享 >colab上比较DINO

colab上比较DINO

时间:2024-07-01 16:22:25浏览次数:26  
标签:features DINO torch transforms colab device import model 比较

!git clone https://github.com/facebookresearch/dino.git
!pip install timm
import torch
import timm
from PIL import Image
from torchvision import transforms

# 加载模型
model = torch.hub.load('facebookresearch/dino:main', 'dino_vits8')
model.eval()
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)

# 定义图像预处理
transform = transforms.Compose([
    transforms.Resize(256),
    transforms.CenterCrop(224),
    transforms.ToTensor(),
    transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),
])

# 图像特征提取函数
def extract_features(img_path):
    image = Image.open(img_path).convert('RGB')
    x = transform(image).unsqueeze(0).to(device)
    with torch.no_grad():
        features = model(x)
    return features[0]

# 加载图像并提取特征
features1 = extract_features("img1.jpg")
features2 = extract_features("img2.jpg")

# 计算特征之间的余弦相似度
cos = torch.nn.CosineSimilarity(dim=1, eps=1e-6)
similarity = cos(features1.unsqueeze(0), features2.unsqueeze(0))
print("Similarity:", similarity.item())

 

标签:features,DINO,torch,transforms,colab,device,import,model,比较
From: https://www.cnblogs.com/Anonytt/p/18278295

相关文章

  • colab上比较PSNR
    如果两张图片不一样大,预处理:!pipinstallPillowfromPILimportImage#打开图像img1=Image.open('img1.jpg')img2=Image.open('img2.jpg')#调整图像大小,统一为img1的大小img2=img2.resize(img1.size,Image.ANTIALIAS)#确保图像都是RGBifimg1.mode!='......
  • colab上比较clip
    !pipinstalltorchtorchvisionftfyregex!pipinstallgit+https://github.com/openai/CLIP.gitimporttorchimportclipfromPILimportImagefromioimportBytesIOimportrequests#加载模型device="cuda"iftorch.cuda.is_available()else"......
  • FL Studio 21真的有没有破解版?萌新入坑的话怎么选择 FL Studio 21比较合适?
    不知道为什么现在钓鱼的这么多(有答案的请在评论区上告诉我),就一个学习版的编曲软件有必要这样子搞吗?我也是在各类博客上找了一大堆教程,根本没几个能用的,索性直接到兔八哥爱分享上找了一个,发现可以直接拿来用。我本身是一个重度电子乐爱好者,看见国内这么多人想要玩Flstudio真......
  • MATLAB的.m文件与Python的.py文件:比较与互参
    simulinkMATLAB的.m文件与Python的.py文件:比较与互参相似之处**1.基本结构****2.执行逻辑****3.可读性和维护性**差异性**1.语法特性****2.性能和应用****3.开发环境**互相学习的可能性结论MATLAB的.m文件与Python的.py文件:比较与互参在编程语言的选择上,MA......
  • 【Python机器学习】聚类算法的对比与评估——在人脸数据集上比较算法
    数据探查:我们将k均值、DBSCAN和凝聚聚类算法应用于Wild数据集中的LabeledFaces,并查看它们是否找到了有趣的结构。我们将使用数据的特征脸表示,它由包含100个成分的PCA(whiten=True)生成:people=fetch_lfw_people(data_home="C:\\Users\\86185\\Downloads\\",min_faces_per_......
  • 模拟集成电路设计系列博客——7.3.1 并联比较型ADC基本介绍
    7.3.1并联比较型ADC基本介绍并联比较型ADC(后续都称作FlashADC)是实现超高速转换器的标准方式。FlashADC的输入信号被并行的馈入\(2^N\)个比较器中,如下图所示:每个比较器被连接到电阻串的节点上。任何连接到电阻串节点的比较器,如果\(V_{ri}\)大于\(V_{in}\)有着1的输出,而\(V_{r......
  • 聊聊最近比较火的AI产品做互联网算法备案
    今年AI......
  • Python中的交互式GUI开发:与MATLAB uicontrol的比较
    Python中的交互式GUI开发Python中的交互式GUI开发:与MATLABuicontrol的比较**PythonGUI开发库****Tkinter****PyQt/PySide****与MATLAB的比较****总结**Python中的交互式GUI开发:与MATLABuicontrol的比较在MATLAB中,uicontrol是一个强大的功能,用于创建用户界面控......
  • CHATGPT说这个运算放大器是比较器,我说这是运放典型的同相比例放大器,一个光控电路分析
    纠正图1光控电路该电路来自一个问题,链接见文末。因GPT的分析有误,特此纠正。引用图片和答案用于分析,如侵权请联系本人。电路分析:该电路为光控灯电路,灯光为LED发光二极管D。光敏电阻RG的阻值和光线强度关系,光线暗,电阻大,光线亮则电阻小;光敏电阻的暗电阻在1000K......
  • 发外链比较好的平台选择:策略与考量
    在当今的互联网营销环境中,外链(即外部链接)的重要性不言而喻。外链不仅可以增加网站的曝光度,还能在一定程度上提升网站在搜索引擎中的排名。然而,选择一个“发外链比较好的平台”并非易事,需要综合考虑多个因素。一、外链平台的选择原则在选择发外链的平台时,我们首先要明确目标受......