R
R
Roman Mirilaczvili2016-10-30 00:05:57
PostgreSQL
Roman Mirilaczvili, 2016-10-30 00:05:57

How to find duplicates in an array of 64-bit numbers by (bit) Hamming distance?

Из базы изображений получил набор perceptive hash - 64-битных чисел, представленных в 16-ричной форме.
Необходимо выявить те группы таких чисел, (битовое) расстояние Хэмминга между которыми не превышает некоторого порога C.
Хранится в таблице images, колонка phash: char(16).
Каким SQL запросом можно выявить дубликаты?

Answer the question

In order to leave comments, you need to log in

1 answer(s)
R
Rsa97, 2016-10-30
@Rsa97

Hamming distance on MySQL is easy to calculate.
But it is necessary to define the concept of "a group of such numbers". Let's take three binary numbers (001, 011, 111) and determine the distances between them.
d(001, 011) = 1
d(001, 111) = 2 d
(011, 111) = 1
choose 1, how should groups be formed?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question