В настоящее время я работаю над базой данных notMINST, используя python 2.7, пытаясь удалить дублированные изображения. Я превращаю каждое изображение в хеш MD5 и создаю словарь image_hashБолее быстрый алгоритм удаления дубликатов из словарей, сравнение двух
Первый способ работы, однако, потребовалось почти час, поскольку в наборе данных было всего 500 000 изображений.
image_hash_identical = {}
for key,value in image_hash.items():
if value not in image_hash_identical.values():
image_hash_identical[key] = value
Я пытался использовать «набор» для создания второго метода, чтобы сделать вещи быстрее:
image_hash_set_values = list(set(image_hash.values()))
for i in range(len(image_hash_set_values)):
for j in range(i, len(image_hash)):
image_hash[j] == image_hash_set_values[i]:
image_hash_identical[i] = image_hash[j]
break
Однако этот код не удался ускорить процесс для «набора» функции перетасовал заказ of image_hash. Есть ли способ заблокировать перетасовку с помощью функции «set» или любых более быстрых алгоритмов, которые могут справиться с этой ситуацией?
ли вы пытаетесь строить '' 'image_hash''' с хэш в качестве ключа? – wwii
Нет, не как ключ, а как ценность. Я использовал ключ для представления идентификатора наблюдения – Xiuyuanc