這時候就該dupeGuru出場了,它是個完全免費的軟件,而且支持多平臺,在https://dupeGuru.voltaicideas.net/中找到適合自己操作系統的版本,下載并安裝即可。
如果大家使用的是中文操作系統,安裝后應該會發現主界面基本漢化了,在界面最下端點擊“+”,即可選擇文件夾進行重復比較,也可以專門選擇音樂或圖像文件來檢查。細心的小伙伴肯定看出來了,它的默認查重方式是Contents(內容),而不是文件名、大小、日期等簡單的文件信息,這就是它的優勢所在了。
我們還可以根據需要專門選擇對音樂文件或圖像文件進行查重,而選擇了這兩種文件后,還能使用專門的查重選項。比如經常備份照片的話,就可以根據照片的EXIF來檢查是不是有重復備份。很多小伙伴的音樂文件名是有些歌手在前有些歌名在前,亂得又不好找吧?那么使用音樂文件的字段選項(Fields)就可以很方便地對比查重了。
至于具體能力,它對完全相同的文件搜索當然完全不在話下,只是使用默認的內容方式時,軟件會對文件進行分析,所以查重速度比有些軟件顯得略慢一點。如果對速度有要求的話,最好選擇其他搜索方式,比如前面提到的音樂文件字段選項。
那么略有差別的文件呢?小編將同一張圖片分別修改為不同的大小、裁剪主要內容和添加了水印,它只將水印圖片直接搜索了出來。從這一表現看,QQ、微博緩存等目錄里,大量Logo、水印略有差異的圖片應該是最適合它發揮的,而自行處理過的文件,即使修改幅度不大,一般不會被它查重,這不知道是否符合大家的需求。
在搜索結果出現后,我們還會發現其主界面有了明顯變化,出現了“行為”、“顯示列”等新選項,可以讓大家更快速地識別、處理重復文件。
其實別看這款文件界面清爽簡潔,它的功能設置還是挺多的,比如點開主界面“掃描類型”后的More Option按鍵,就有一些更“專業”向的選項,掃描后還可以保存掃描結果等等,有興趣的小伙伴可以自己去探索。
數字化時代,我們經常會遇到圖像文件大量堆積的情況,其中不乏重復的圖片。這些重復的圖片不僅占用了寶貴的存儲空間,還使得文件管理和備份變得繁瑣。為了解決這個問題,我們可以利用Python編寫一個腳本來自動檢測和刪除重復的圖像文件。
在開始編寫代碼之前,我們需要確保已經安裝了Python環境,并安裝了一個用于比較圖像相似度的庫,如imagehash和Pillow(PIL的分支)。這兩個庫可以幫助我們生成圖像的哈希值,并基于這些哈希值來比較圖像的相似性。
你可以使用pip來安裝這兩個庫:
pip install imagehash pillow
下面是一個簡單的Python腳本,用于查找并刪除重復的圖像文件:
import os
import imagehash
from PIL import Image
from itertools import combinations
def image_hash(file_path):
hash_object=imagehash.average_hash(Image.open(file_path))
return hash_object
def find_duplicate_images(directory):
images=[f for f in os.listdir(directory) if os.path.isfile(os.path.join(directory, f)) and f.lower().endswith(('.png', '.jpg', '.jpeg', '.gif', '.bmp'))]
hashes={f: image_hash(os.path.join(directory, f)) for f in images}
duplicates=[]
for img1, img2 in combinations(images, 2):
if hashes[img1] - hashes[img2] < 5: # 設定一個閾值來判斷是否相似
duplicates.append((img1, img2))
return duplicates
def remove_duplicates(directory, duplicates):
for img1, img2 in duplicates:
# 假設我們保留第一個文件,刪除第二個文件
os.remove(os.path.join(directory, img2))
print(f"Removed duplicate: {img2}")
# 使用示例
directory='path/to/your/image/directory' # 替換為你的圖像目錄
duplicates=find_duplicate_images(directory)
remove_duplicates(directory, duplicates)
注意:這個腳本使用了簡單的平均哈希算法來比較圖像,并設定了一個閾值(在這個例子中是5)來判斷兩個哈希值是否足夠接近,從而認為圖像是相似的。然而,這種方法的準確性可能因圖像質量和內容的復雜性而有所不同。你可能需要根據你的具體需求來調整這個閾值。
此外,這個腳本會刪除所有相似的圖像中的第二個圖像,保留第一個圖像。如果你想要更復雜的邏輯(例如,只刪除完全相同的圖像,或者基于某種策略來選擇要保留的圖像),你需要在remove_duplicates函數中添加更多的邏輯。
最后,這個腳本并沒有提供備份或撤銷刪除的選項,因此請確保在運行腳本之前備份你的圖像文件,以防止誤刪除重要文件。
代碼實戰
我有一批圖片,每張圖片都被備份了兩次,利用以上代碼識別出重復圖片
刪除圖片后,所有的圖片都只剩下一張原圖
Mac電腦上,你可以使用內置的照片應用來批量刪除重復照片,或者使用更便捷的Mac右鍵菜單工具——赤友右鍵超人快速刪除。
注:如果使用 iCloud 共享照片圖庫,請點按工具欄中的“圖庫”彈出式菜單,然后選取“兩個圖庫”。
2.使用Mac右鍵菜單工具快速刪除
赤友右鍵超人是一款Mac右鍵菜單工具,它提供刪除文件、清理相似照片、清理重復文件等功能,只需右鍵,就能一鍵完成。
如果想了解更多方法,可參考文章:《怎樣清理Mac上的重復照片(Mac刪除重復照片的方法)》