Агрегация Elasticsearch с расстоянием Хэмминга phash
Попытка сгруппировать похожие документы с соответствующими значениями полей ключевых слов и фашами связанных изображений. На данный момент у меня есть следующее, что хорошо работает для точных совпадений phashes
'duplicate_docs':
A('terms',
script={
"lang":
"painless",
"inline":
"def term = doc['make'] + '' +doc['model'] + doc['province'] + doc['mileage'];return term+''+doc['image_hash'];"
}),
}, {'dup_docs': A('top_hits', size=20)}):
Однако некоторые изображения немного отличаются, и весь смысл phash в том, что вы можете использовать расстояние Хэмминга, чтобы выяснить, насколько разные
Я понимаю, что это, вероятно, делает вычисление намного более дорогим, поскольку по сути нужно сравнивать каждое изображение с любым другим изображением, которое кажется чрезмерным, но неуверенным, как еще я мог бы сделать это. Спасибо
0 ответов
Вы можете попробовать это:
Му, Ц., Чжао, Дж., Ян, Г., Ян, Б. и Янь, З., 2019, октябрь. Быстрый и точный поиск ближайшего соседа в пространстве Хэмминга в полнотекстовых поисковых системах. В Международной конференции по поиску сходства и приложениям (стр. 49-56). Спрингер, Чам.
Метод FENSHSES, предложенный в вышеупомянутой статье, может эффективно находить всех r-соседей в пространстве Хэмминга без сканирования всех документов.