python图片去重复算法

复制代码
import os

from imagededup.methods import PHash
phasher = PHash()

def process_file(img_path):
    # 生成图像目录中所有图像的二值hash编码
    encodings = phasher.encode_images(image_dir=img_path)
    duplicates = phasher.find_duplicates(encoding_map=encodings)
    only_img = []  # 唯一图片
    like_img = []  # 相似图片

    for img, img_list in duplicates.items():
        if img not in only_img and img not in like_img:
            only_img.append(img)
            like_img.extend(img_list)
    for p in like_img:
        pic_full_path = os.path.join(img_path,p)
        if os.path.exists(pic_full_path):
            os.remove(pic_full_path)
    print('相似图片{}张,唯一图片{}张'.format(len(like_img),len(only_img)))



if __name__ == '__main__':
    image_path = r'F:\2023_07_10\zhangyifei\pic_data_01\lou_shao'
    process_file(image_path)
复制代码

 

posted @   lvye001  阅读(239)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示