当前位置: 首页 > news >正文

湖南竞网科技有限公司南京seo公司

湖南竞网科技有限公司,南京seo公司,wordpress id 插件,深圳门户网站建设专业1. 引言 在当前到处充满着图像的世界里#xff0c;测量和量化图像之间的相似性已经成为一项关键的任务。无论是图像检索、内容推荐还是视觉搜索#xff0c;图像相似性方法在现代计算机视觉的应用中都发挥着关键的作用。 幸运的是#xff0c;Python提供了大量的工具和库测量和量化图像之间的相似性已经成为一项关键的任务。无论是图像检索、内容推荐还是视觉搜索图像相似性方法在现代计算机视觉的应用中都发挥着关键的作用。 幸运的是Python提供了大量的工具和库使开发人员和研究人员都可以快速探索和实现这些功能。在本文中我们将深入研究各种图像相似性技术并演示如何使用Python来实现它们。 2. 图像相似性概念 图像相似性可以被认为是两幅图像在视觉内容方面的相似程度的数字表示。图像可以在几个维度上来进行相似性的计算例如颜色、形状、纹理等。各种数学和计算方法被用来量化这些相似性使我们能够有效地进行图像分类。 3. 基于直方图的相似性度量 直方图一般用于捕捉图像中像素值的分布。通过比较两幅图像的直方图可以测量它们的相似性。这里我们主要使用Python的OpenCV库来实现计算和比较直方图的功能。 样例图像如下 举例代码如下 import cv2 # Load images image1 cv2.imread(image1) image2 cv2.imread(image2) hist_img1 cv2.calcHist([image1], [0, 1, 2], None, [256, 256, 256], [0, 256, 0, 256, 0, 256]) hist_img1[255, 255, 255] 0 #ignore all white pixels cv2.normalize(hist_img1, hist_img1, alpha0, beta1, norm_typecv2.NORM_MINMAX) hist_img2 cv2.calcHist([image2], [0, 1, 2], None, [256, 256, 256], [0, 256, 0, 256, 0, 256]) hist_img2[255, 255, 255] 0 #ignore all white pixels cv2.normalize(hist_img2, hist_img2, alpha0, beta1, norm_typecv2.NORM_MINMAX) # Find the metric value metric_val cv2.compareHist(hist_img1, hist_img2, cv2.HISTCMP_CORREL) print(fSimilarity Score: , round(metric_val, 2))得到结果如下 Similarity Score: 0.944. 基于SSIM的相似性度量 结构相似性指数Structural Similarity Index measure 简称SSIM) 是一种广泛使用的度量标准用于评估两幅图像之间的结构相似性。它考虑了亮度、对比度和结构给出了-1不同和1相同之间的分数。Python中的scikit-image提供了SSIM的相关实现。 在这里我们主要演示使用SSIM和scikit-image库的简单示例这里采用的样例图像同上 import cv2 from skimage import metrics # Load images image1 cv2.imread(image1) image2 cv2.imread(image2) image2 cv2.resize(image2, (image1.shape[1], image1.shape[0]), interpolation cv2.INTER_AREA) print(image1.shape, image2.shape) # Convert images to grayscale image1_gray cv2.cvtColor(image1, cv2.COLOR_BGR2GRAY) image2_gray cv2.cvtColor(image2, cv2.COLOR_BGR2GRAY) # Calculate SSIM ssim_score metrics.structural_similarity(image1_gray, image2_gray, fullTrue) print(fSSIM Score: , round(ssim_score[0], 2))相应的相似性度量结果如下 SSIM Score: 0.38与直方图方法相比SSIM方法的主要缺点是图像必须具有相同的维度。甚至相似性得分也很低。我们可以从图像中进行背景减法去除以提高相似性得分。 5. 基于特征相似性的度量 这类方法从图像中提取显著特征例如边缘、角或关键点。像尺度不变特征变换SIFT和加SURF特征这样的技术可以识别图像中的不同的关键点进而可以实现两幅图像之间的对比。 opencv-python库可以用于提取相应图像的SIFT和SURF特征。 6. 基于深度学习的方法 深度学习的出现已经彻底改变了图像相似性任务。使用预训练的卷积神经网络CNNs如ResNet、VGG和Inception我们可以方便地从图像中提取深层特征。 来自openAI的 contrastive Language-Image Pre-Training (CLIP) 是一种多模式零样本图像分类器它在没有微调的情况下在广泛的领域中达到了出色的效果。我们可以使用开源的训练代码在自己图像和文本数据集上对上述模型进行微调。 在本文中我们将使用基于CLIP的预训练模型和torch、open_CLIP和sentence_transformers库来演示一个简单的示例这里采用的样例图像同上 !pip install githttps://github.com/openai/CLIP.git !pip install open_clip_torch !pip install sentence_transformersimport torch import open_clip import cv2 from sentence_transformers import util from PIL import Image # image processing model device cuda if torch.cuda.is_available() else cpu model, _, preprocess open_clip.create_model_and_transforms(ViT-B-16-plus-240, pretrainedlaion400m_e32) model.to(device) def imageEncoder(img):img1 Image.fromarray(img).convert(RGB)img1 preprocess(img1).unsqueeze(0).to(device)img1 model.encode_image(img1)return img1 def generateScore(image1, image2):test_img cv2.imread(image1, cv2.IMREAD_UNCHANGED)data_img cv2.imread(image2, cv2.IMREAD_UNCHANGED)img1 imageEncoder(test_img)img2 imageEncoder(data_img)cos_scores util.pytorch_cos_sim(img1, img2)score round(float(cos_scores[0][0])*100, 2)return score print(fsimilarity Score: , round(generateScore(image1, image2), 2))得到结果如下 similarity Score: 76.77上述图像之间相似性的度量主要的依据是通过计算两幅图像中特征向量的余弦相似性或欧几里得距离来实现的。 7. 应用 图像相似技术的主要应用包括电子商务产品匹配、图像检索、对象识别和人脸识别。例如在图像检索中使用图像相似性来查找与查询图像相似的图像。图像相似性也可以可以用于对象识别以将给定对象与已知数据库相匹配。此外图像相似性算法还可以用于通过将人脸与数据库进行比较来识别不同的对象。 8. 总结 在当今视觉世界中测量图像相似性的能力是众多应用程序的重要组成部分。本博客向大家介绍了各种图像相似性方法从简单的基于直方图的方法到复杂的基于深度学习技术的实现方法。更进一步大家还可以探索Siamese networks这是一类专门为图像相似性任务设计的神经网络。 嗯嗯您学废了吗
http://wiki.neutronadmin.com/news/121998/

相关文章:

  • 网页设计实训报告美食主题做seo如何赚钱
  • 网站推广排名服务科技部政务服务平台
  • 周至县做网站淮南服装网站建设费用
  • 北京网站建站深圳宝安中心医院
  • 怎么做qq业务网站建网站多少钱一个平台
  • 湖南城乡住房建设厅网站网站建设可行性分析报告模板
  • 丹灶网站建设深圳装修公司口碑排名
  • 网站开发下载哪个同泰公司网站公司查询
  • 网站建设怎么链接表格大学生创新创业大赛报名入口
  • 深圳网站建设黄浦网络 骗子公司邮箱后缀正确的是以下
  • 招聘 网站建设表白网页在线生成制作源码
  • 建设部网站电话丽水微信网站建设公司
  • 新闻类的网站如何做优化我的世界做壁纸网站
  • 滕州网站建设猎头做单网站
  • 杭州网站建设品牌杭州seo相关网站
  • 中国林业建设协会网站wordpress 突然404
  • 做视频挣钱的网站趣快排seo是什么
  • 网站服务器配置要求夫妻找做伙食饭工作哪个网站好
  • 房地产管理局网站wordpress mysql pdo
  • 东莞做网站哪家好电商网站建设实训报告心得
  • 河南网站推广怎么做活动策划网站有哪些
  • 简洁大气企业网站做微信公众号整合网站
  • 微网站建设比较全面的是wordpress 封面
  • 开发网站需要什么硬件学校网站建设说明
  • 网站开发的需求分析论文采购系统有哪些
  • 枣庄市建设项目环评备案网站php做调查问卷网站
  • 做外贸找客户的网站关于网站建设费用
  • 做网站都需要哪些知识整站优化该怎么做
  • 网站设计图尺寸网站建设教程资源
  • 珠海网站建设哪个好薇音速企业名录搜索软件