README.md

    git_link

    https://gitcode.net/aspnmy/python_dff_hash_pic

    本类库支持中文路径读取图片,如需单独调用中文读取函数,请如下调用(cvv是代码中的速记词,原库为cv2,如需要改写类库,请注意全部改写)

    cvv_imread_cn(file_path)

    python 版本说明

    本类库使用了match case 函数,只支持3.10.0以上版本,如以下版本需要支持,需要在类库代码中,将 match case 代码全部改写成 if 类写法

    本类库如需单独调用HASH比较,请如下调用

    cmpHash(hash1, hash2)

    python_dff_Hash_pic

    用于实现aHASH,dHASH,pHASH三种算法,查找图片的相似程度(以图找图)。 只需要引入类库,一行代码即可实现以图找图的业务。 如何在自己的项目中引用: 把类库文件放在自己的项目中,在项目文件中这样引用

        #!/usr/bin/python
        # -*- coding: UTF-8 -*-
        #引入sys库体,python的信息模块
        import sys                                    
        #系统路径中填写存放.py文件地址,然后通过import方法导入
        sys.path.append("G:\py实现相似图片识别")
        #只需要需要引用的类库文件名
        from dff_Hash_pic import *

    一个文件夹(path)下所有的图片进行相似度比较,使用dhash方式,然后将相似度较接近的文件输出到(outdir)下,使用以下命令调用

        path=r"C:\Users\Administrator\Desktop\upload\img1"
        outdir =r"C:\Users\Administrator\Desktop\upload\sameout"
        ##time1=datetime.datetime.now()
        rs=dff_img_file(path,outdir)
        timea =(datetime.datetime.now()-time1).microseconds
        ##dff_img_file函数默认采用dHash算法计算,才能获得高效能力
    
        print(rs,"耗时为dhash",timea)

    对一个图片源文件路径(aim_photo)使用ahash/dhash/phash方式,对指定目录下的对比图片(path)进行比较

        ##需要比对文件夹的地址
        ##path=r"C:\Users\Administrator\Desktop\upload\img1"
        # 需要比较的图片的原始地址
        ##aim_photo =r"C:\Users\Administrator\Desktop\upload\img1\pic_0136.png"
        ##sshash 代表用于比较的算法,传入dhash就才有dhash算法进行计算,传ahash就用ahash进行计算,传phash就用phash进行计算
       
        
        #sshash = 'dhash'    
        #rs=dff_img_one(path,aim_photo,sshash)
        #timed =(datetime.datetime.now()-time1).microseconds
        
        #sshash1 = 'ahash'    
        #rs=dff_img_one(path,aim_photo,sshash1)
        #timea =(datetime.datetime.now()-time1).microseconds
    
        #sshash1 = 'phash'    
        #rs=dff_img_one(path,aim_photo,sshash1)
        #timep =(datetime.datetime.now()-time1).microseconds
        
        #print(type(rs))
        #print("与原始文件完全相同的文件是",rs,"算法为",sshash,"耗时为dhash",timed,"耗时为ahash",timea,"耗时为phash",timep)
        #print("dahash算法比ahash算法速度上要快",timea-timed)

    项目简介

    用于实现aHASH,dHASH,pHASH三种算法,查找图片的相似程度(以图找图)。 只需要引入类库,一行代码即可实现以图找图的业务。

    一个文件夹(path)下所有的图片进行相似度比较,使用dhash方式,然后将相似度较接近的文件输出到(outdir)下 对一个图片源文件路径(aim_photo)使用ahash方式,对指定目录下的对比图片(path)进行比较

    发行版本

    当前项目没有发行版本

    贡献者 1

    aspnmy @aspnmy

    开发语言

    • Python 100.0 %