新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python如何判斷文件夾內(nèi)的重復圖片
步驟

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供河津網(wǎng)站建設、河津做網(wǎng)站、河津網(wǎng)站設計、河津網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、河津企業(yè)網(wǎng)站模板建站服務,10余年河津做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
1、首先將所有的圖片按照圖片大小(byte)進行分類,然后再進行分類比較。
2、重復圖片很有可能連續(xù)出現(xiàn)(因為重復圖片大小相同)
如果要判斷文件夾中是否有相同的圖片,則需要對文件夾中的所有圖片進行分類,并逐一判斷兩張圖片是否相同。
如果文件夾中有1000張圖片,則第一張圖片需要與剩余的999張圖片進行比較,第二張圖片需要與剩余的998張圖片進行比較,第三張圖片需要與剩余的997張圖片進行比較,以此類推。
實例
if __name__ == '__main__':
load_path = 'E:\\測試圖片集(未去重)' # 要去重的文件夾
save_path = 'E:\\測試圖片集(重復照片)' # 空文件夾,用于存儲檢測到的重復的照片
os.makedirs(save_path, exist_ok=True)
# 獲取圖片列表 file_map,字典{文件路徑filename : 文件大小image_size}
file_map = {}
image_size = 0
# 遍歷filePath下的文件、文件夾(包括子目錄)
for parent, dirnames, filenames in os.walk(load_path):
# for dirname in dirnames:
# print('parent is %s, dirname is %s' % (parent, dirname))
for filename in filenames:
# print('parent is %s, filename is %s' % (parent, filename))
# print('the full name of the file is %s' % os.path.join(parent, filename))
image_size = os.path.getsize(os.path.join(parent, filename))
file_map.setdefault(os.path.join(parent, filename), image_size)
# 獲取的圖片列表按 文件大小image_size 排序
file_map = sorted(file_map.items(), key=lambda d: d[1], reverse=False)
file_list = []
for filename, image_size in file_map:
file_list.append(filename)
# 取出重復的圖片
file_repeat = []
for currIndex, filename in enumerate(file_list):
dir_image1 = file_list[currIndex]
dir_image2 = file_list[currIndex + 1]
result = 比較兩張圖片是否相同(dir_image1, dir_image2)
if(result == "兩張圖相同"):
file_repeat.append(file_list[currIndex + 1])
print("\n相同的圖片:", file_list[currIndex], file_list[currIndex + 1])
else:
print('\n不同的圖片:', file_list[currIndex], file_list[currIndex + 1])
currIndex += 1
if currIndex >= len(file_list)-1:
break
# 將重復的圖片移動到新的文件夾,實現(xiàn)對原文件夾降重
for image in file_repeat:
shutil.move(image, save_path)
print("正在移除重復照片:", image)
以上就是python判斷文件夾內(nèi)的重復圖片的方法,希望對大家有所幫助。更多Python學習指路:創(chuàng)新互聯(lián)Python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
新聞標題:創(chuàng)新互聯(lián)Python教程:python如何判斷文件夾內(nèi)的重復圖片
網(wǎng)站鏈接:http://www.dlmjj.cn/article/djecdig.html


咨詢
建站咨詢
