TGTGInsightаналитика telegramLIVE / telegram public index
← DeepSchool
DeepSchool avatar

TGINSIGHT POST

Post #99

@deep_school

DeepSchool

Просмотры2,560Количество просмотров
Опубликован22 нояб.22.11.2022, 15:20
Содержимое поста

Содержимое

​​Задачка на подумать: Пусть вам нужно дедуплицировать фотографии. Причем дедупликация должна быть умной. Если есть фотка и такая же фотка, но сдвинутая/повернутая/засвеченная, то нужно считать их дублями. Для этой задачки вы решили использовать сетку. Выцепляете эмбеддинги картинок и если расстояние между эмбеддингами меньше порога, то считаете картинки дублями. В итоге может получиться такой словарик (рис. 1): { 'img1': {'img2', 'img10', 'img15'}, 'img2': {'img1', 'img10', 'img15', 'img20'}, ... } Где ключ - это картинка, а значение - это множество картинок, которые мы посчитали дублями по расстоянию между эмбеддингами. В таком подходе возникнет следующая проблема: получившееся отношение дублируемости не транзитивно. Это значит, что по расстоянию между эмбеддингами может получиться что-то такое (рис. 2): { 'img1': {'img2', 'img3'}, 'img2': {'img1'}, 'img3': {'img1'}, } т.е. img2 и img3 дублируют img1, но не дублируют друг друга. Кажется, в такой ситуации мы хотим сказать, что все картинки (img1, img2, img3) являются дубликатами друг друга. Ситуацию, при которой из-за такого подхода мы начнем даже очень непохожие картинки называть дублями, мы не рассматриваем, она малореалистична. Как этого достичь? Ответ опубликуем завтра