gpt4 book ai didi

在python中利用opencv简单做图片比对的方法

转载 作者:qq735679552 更新时间:2022-09-28 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章在python中利用opencv简单做图片比对的方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

下面代码中利用了两种比对的方法,一 对图片矩阵(m x m)求解特征值,通过比较特征值是否在一定的范围内,判断图片是否相同。二 对图片矩阵(m x m)中1求和,通过比较sum和来比较图片.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# -*- coding: utf-8 -*-
import cv2 as cv
import numpy as np
import os
file_dir_a = 'C:\Users\wt\Desktop\data\image1\\'
file_dir_b = 'C:\Users\wt\Desktop\data\image\\'
savepath = '.\'
 
all_file_name_a = os.listdir(file_dir_a)
all_file_name_b = os.listdir(file_dir_b)
image_all_a = []
image_all_b = []
for name in all_file_name_a:
   image_one = []
   image = cv.imread(file_dir_a + name, cv.IMREAD_GRAYSCALE)
   """arg是计算输入图片矩阵的特征值,通过对特征值的比较来实现图片的比对
   """
   # arg=np.linalg.eigvals(image)
   """arg是计算输入二值图片矩阵中1的个数,通过1的总数来实现图片的比对
   """
   arg = sum (image)
   image_one.append(name)
   image_one.append(arg)
   image_all_a.append(image_one) #将一个图片的信息写入
   print '读入a'
# np.save('img_a.npy',image_all_a)
for name in all_file_name_b:
   image_one = []
   image = cv.imread(file_dir_b + name, cv.IMREAD_GRAYSCALE)
   """同上
   """
   # arg=np.linalg.eigvals(image)
   arg = sum (image)
   image_one.append(name)
   image_one.append(arg)
   image_all_b.append(image_one) #将一个图片的信息写入
   print '读入b'
# np.save('img_b.npy',image_all_b)
print '开始比较'
result_all = []
for a in image_all_a: #比较小的
   result = []
   for b in image_all_b:
     # print sum(a[1]-b[1])
     if abs ( sum (a[ 1 ] - b[ 1 ]))< 0.00001 :
       result.append(a[ 0 ])
       result.append(b[ 0 ])
       result_all.append(result)
print '比较结束'
print result_all
 
np.save( 'match_result1.npy' ,result_all)

以上这篇在python中利用opencv简单做图片比对的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我.

原文链接:https://blog.csdn.net/MyNameIsObama/article/details/78865935 。

最后此篇关于在python中利用opencv简单做图片比对的方法的文章就讲到这里了,如果你想了解更多关于在python中利用opencv简单做图片比对的方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com