8
我有一個表A有一個'template_phash'列。我存儲從400K圖像生成的phash。mysql hamming兩個phash之間的距離
現在我拍一張隨機圖像並從該圖像生成一個phash。
現在我該怎樣查詢,這樣我可以從表A中的記錄,其漢明距離差小於閾值,即20
我見過Hamming distance on binary strings in SQL,但無法弄清楚。
我想我想通了,我需要做一個功能來實現這一點,但如何?
我的兩個phash的是BigInt有例如:7641692061273169067
請幫我做的函數,這樣我可以查詢像
SELECT product_id, HAMMING_DISTANCE(phash1, phash2) as hd
FROM A
WHERE hd < 20 ORDER BY hd ASC;
像這個想法!無論如何,優化這個查詢是不可能的,不必完全比較物品的每一個物品,而只是比較一次「最接近」的物品。 – Manuel