前言
本文是该专栏的第21篇,后面会持续分享python的各种干货知识,值得关注。
工作上,可能会需要你对两张图片进行相似度比较。比如现在的图片验证码,需要你对两张图片进行比较,找出图中存在相似特征的地方或动作;再或是在做电商项目的时候,需要你对商品主图进行相似度比较,从而找到潜在的竞争对手。
而本文要介绍的方法,使用python对比两张图片,以均值哈希算法,差值哈希算法,感知哈希算法,三直方图算法以及单通道的直方图,从这几个相似度纬度来进行相似度比较,更全面的比较两张图片的相似度。
下面,跟着笔者直接往下进入正文,探索利用python比较两张图片相似度的具体方法。
正文
1. 均值哈希算法
import cv2# 均值哈希算法
def aHash(img):size = 8 # 缩放为8*8的像素格子进行比较img = cv2.resize(img, (size, size))# 转换为灰度图gray = cv2.cvtColor(img, cv2.COLO