python matchtemplate返回值相似度_Python-OpenCV 14. 比较图片相似度

834f6b22-e59d-4ae6-8db5-90d0195a0cbf

一、图片相似比较

本文介绍的几种实现方式:

  • 暴力方式:1.按像素比较,n越小相似度越高;2.矩阵相减,用来判断两个图是不是完全一样;hashlib.md5判断两个图是否完全一样
  • 哈希算法:1.感知哈希算法;2.均值哈希算法;3.差值哈希算法
  • 灰度直方图:1.单通道直方图;2. 三通道直方图

二、暴力方式

1. 按像素比较

# -*- coding: utf-8 -*-# !/usr/bin/pythonimport cv2n = 0img1 = cv2.imread('test.jpg', cv2.IMREAD_GRAYSCALE)img2 = cv2.imread('test.png', cv2.IMREAD_GRAYSCALE)height, width = img1.shapefor line in range(height): for pixel in range(width): if img1[line][pixel] != img2[line][pixel]: n = n + 1print(n)

2. OpenCV2 矩阵相减

  • 两个图片完全一样时返回值为true
  • 如果把一个图片转了格式,则结果可能不一样,因为转格式的过程中可能会进行算法处理

3. 通过hashlib.md5判断图片是否完全一样

import hashliba = open("test.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值