Когда я загружаю архивы, они часто содержат изображения, которые я уже имею в другой папке, но главным образом с другим именем или форматом файла.
Мой вопрос: Какой сценарий / программное обеспечение 1 Вы знаете, это может распознать 2 дублирующихся изображения?
Это должно позволить Вам решить, являются ли они действительно тем же (и возможно удалите изображения с нижним качеством).
1 в лучшем случае межплатформенный, но Linux было бы достаточно
2, например, их цветовым различием или чем-то
для окон их маленькое бесплатное программное обеспечение "visipic". это может искать подобные изображения и дать Вам опцию удалить или переместить файлы согласно их качеству.
загрузите visipic http://www.visipics.info/index.php?title=Download
Немного волшебства Python может помочь Вам здесь. Удостоверяясь, что PIL установлен:
import os, sys, glob
import ImageChops, Image
def equal(im1, im2):
return ImageChops.difference(im1, im2).getbbox() is None
dir1 = sys.argv[1]
dir2 = sys.argv[2]
for im1 in glob.glob(os.path.join(dir1, "*.jpg")):
for im2 in glob.glob(os.path.join(dir2, "*.jpg")):
if im1!=im2 and equal(Image.open(im1), Image.open(im2)):
print im1, "==", im2
Принятие сценария сохраняется как изображение-diff.py:
$python отображают-diff.py dir1 dir2
Это будет искать все изображения JPG в dir1 и dir2, и сравнивать их. Это работает в O (N^2), исключая время, которое занимает ImageChops.difference, так может не подойти для большого набора архивов изображений. Но дает Вам идею. Измените и взломайте как Вам нравится.