Python-图片去重

直接上代码

python 复制代码
# 修改一下第34行文件夹路径以及13行图片后缀名即可使用
import os
from hashlib import md5


def remove_duplicate_images(folder_path):
    image_files = []
    duplicate_images = set()

    # 遍历文件夹,找到所有 JPG 图片文件
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            if file.lower().endswith('.jpg'):
                image_files.append(os.path.join(root, file))

    # 遍历所有图片文件,并使用哈希值比较是否完全相同
    for image_file in image_files:
        with open(image_file, 'rb') as f:
            image_data = f.read()
            image_hash = md5(image_data).hexdigest()

            if image_hash in duplicate_images:
                f.close()
                # 如果哈希值存在于重复图片集合中,则删除图片文件
                print(os.path.basename(image_file))
                os.remove(image_file)
            else:
                # 否则将哈希值添加到重复图片集合中
                duplicate_images.add(image_hash)
                f.close()


# 文件夹路径
folder_path_ = 'E:/古风/'

# 调用函数删除重复图片
remove_duplicate_images(folder_path_)
相关推荐
FY_20189 分钟前
SubprocVecEnv 原理、详细使用方法
人工智能·python·机器学习
czliutz10 分钟前
使用pdfplumber库处理pdf文件获取文本图片作者等信息
python·pdf
Sunhen_Qiletian12 分钟前
《Python开发之语言基础》第七集:库--时间库
前端·数据库·python
smile_Iris14 分钟前
Day 30 函数定义与参数
开发语言·python
杨航 AI21 分钟前
FORCE_VERIFYING_SIGNATURE=false
python
程序员-King.31 分钟前
双指针/滑动窗口—算法总结与教学指南
经验分享·算法·双指针
AI弟32 分钟前
推荐系统:带你走进推荐之路(二)
人工智能·python·深度学习·面试·推荐算法
不错就是对1 小时前
mmdetection - Linux环境搭建
图像处理·人工智能·python·深度学习·计算机视觉
背心2块钱包邮1 小时前
第5节——定积分与面积
python·深度学习·机器学习·matplotlib
电饭叔1 小时前
如何将提前的奇数进行相加
python