欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 教育 > 培训 > 深度学习——图像余弦相似度

深度学习——图像余弦相似度

2025/4/2 1:48:38 来源:https://blog.csdn.net/qq_46018418/article/details/146714816  浏览:    关键词:深度学习——图像余弦相似度

计算机视觉是研究图像的学问,在图像的最终评价时,往往需要用到一些图像相似度的度量指标,因此,在本文中我们将详细地介绍原生和调用第三方库的计算图像余弦相似度的方法。

使用原生numpy实现

import numpy as npdef image_cosine_similarity(img1, img2):"""使用纯NumPy计算两张图像的余弦相似度"""# 展平图像并转换为浮点数vec1 = img1.flatten()vec2 = img2.flatten()# 计算点积dot_product = np.dot(vec1, vec2)# 计算L2范数norm1 = np.linalg.norm(vec1)norm2 = np.linalg.norm(vec2)# 计算余弦相似度return dot_product / (norm1 * norm2)

使用sklearn实现

import numpy as np
from sklearn.metrics.pairwise import cosine_similaritydef image_cosine_similarity_sklearn(img1, img2):"""使用 sklearn 计算两张图像的余弦相似度参数:img1, img2: 两张图像(2D 灰度或 3D 彩色 numpy 数组)返回:余弦相似度(范围 [-1, 1],但图像通常为 [0, 1])"""# 展平图像并转换为 floatvec1 = img1.flatten().reshape(1, -1).astype(float)vec2 = img2.flatten().reshape(1, -1).astype(float)# 计算余弦相似度similarity = cosine_similarity(vec1, vec2)return similarity[0][0]  # 返回标量值

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词