Вот код на питоне которые исщет похожие картники
Там задаются 4 картинки вычисляется их хеш и потом исщется та которая наиболее похожа другую
может его можно как то адаптрировать под javascript
если питон не знаешь учи
вообще то принцип такой картика уменьшается в размере переводится в черно белую и потом вычисляется ее хеш который потом сравнивается с другими такими же похожими картиками.
Еще можно заморачаться и написать нейросеть которая будет определять что у тебя там на картники или на что это вообще похоже но в этом я не силен.
import cv2 #Функция вычисления хэша def CalcImageHash(FileName): image = cv2.imread(FileName) #Прочитаем картинку resized = cv2.resize(image, (8,8), interpolation = cv2.INTER_AREA) #Уменьшим картинку gray_image = cv2.cvtColor(resized, cv2.COLOR_BGR2GRAY) #Переведем в черно-белый формат avg=gray_image.mean() #Среднее значение пикселя ret, threshold_image = cv2.threshold(gray_image, avg, 255, 0) #Бинаризация по порогу #Рассчитаем хэш _hash="" for x in range(8): for y in range(8): val=threshold_image[x,y] if val==255: _hash=_hash+"1" else: _hash=_hash+"0" return _hash def CompareHash(hash1,hash2): l=len(hash1) i=0 count=0 while i<l: if hash1[i]!=hash2[i]: count=count+1 i=i+1 return count hash1=CalcImageHash("1.png") hash2=CalcImageHash("2.png") hash3=CalcImageHash("3.png") hash4=CalcImageHash("4.png") print(hash1) print(hash2) print(hash3) print(hash4) print(CompareHash(hash1, hash2)) print(CompareHash(hash1, hash3)) print(CompareHash(hash1, hash4)) print(CompareHash(hash2, hash3)) print(CompareHash(hash2, hash4)) print(CompareHash(hash3, hash4)) minHash = CompareHash(hash1, hash2) img = 1 if(CompareHash(hash1, hash3) < minHash): minHash = CompareHash(hash1, hash3) if(CompareHash(hash1, hash4) < minHash): minHash = CompareHash(hash1, hash4) if(CompareHash(hash2, hash3) < minHash): minHash = CompareHash(hash2, hash3) img = 2 if(CompareHash(hash2, hash4) < minHash): minHash = CompareHash(hash2, hash4) img = 2 if(CompareHash(hash3, hash4) < minHash): minHash = CompareHash(hash3, hash4) img = 3 print(img, minHash)