中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python怎么判斷文件夾內的重復圖片

發布時間:2021-05-14 09:51:37 來源:億速云 閱讀:587 作者:小新 欄目:編程語言

這篇文章主要介紹python怎么判斷文件夾內的重復圖片,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

1、步驟

如果要判斷文件夾中是否有相同的圖片,則需要對文件夾中的所有圖片進行分類,并逐一判斷兩張圖片是否相同。

如果文件夾中有1000張圖片,則第一張圖片需要與剩余的999張圖片進行比較,第二張圖片需要與剩余的998張圖片進行比較,第三張圖片需要與剩余的997張圖片進行比較,以此類推。

這個程序的做法是,首先將所有的圖片按照圖片大小(byte)進行分類,然后再進行分類比較。結果是:重復圖片很有可能連續出現(因為重復圖片大小相同)

2、實例

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
 
    # 將重復的圖片移動到新的文件夾,實現對原文件夾降重
    for image in file_repeat:
        shutil.move(image, save_path)
        print("正在移除重復照片:", image)

python的五大特點是什么

python的五大特點:1.簡單易學,開發程序時,專注的是解決問題,而不是搞明白語言本身。2.面向對象,與其他主要的語言如C++和Java相比, Python以一種非常強大又簡單的方式實現面向對象編程。3.可移植性,Python程序無需修改就可以在各種平臺上運行。4.解釋性,Python語言寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序。5.開源,Python是 FLOSS(自由/開放源碼軟件)之一。

以上是“python怎么判斷文件夾內的重復圖片”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

龙游县| 东方市| 灵寿县| 娄底市| 尉犁县| 平遥县| 台湾省| 花莲市| 罗甸县| 古田县| 紫阳县| 梅州市| 天柱县| 池州市| 翁源县| 安平县| 墨脱县| 丰顺县| 永川市| 曲水县| 文化| 都昌县| 昭通市| 宣武区| 晋城| 石景山区| 彰化县| 弋阳县| 大余县| 沭阳县| 栾城县| 兰州市| 铁岭县| 台中县| 缙云县| 遂宁市| 东台市| 阳山县| 峨边| 墨江| 金门县|