В настоящее время я работаю над проверкой дубликатов изображений, поэтому я использую ORB для этого, первая часть почти завершена, у меня есть вектор дескриптора обоих изображений, теперь как вторая часть, которую я хочу знаю, как мы вычислим оценки с использованием расстояния Хэмминга, и что должно быть порогом сказать, что они являются дубликатамипроверка дубликатов изображений с помощью ORB
img1 = gray_image15
img2 = gray_image25
# Initiate STAR detector
orb = cv2.ORB_create()
# find the keypoints with ORB
kp1 = orb.detect(img1,None)
kp2 = orb.detect(img2,None)
# compute the descriptors with ORB
kp1, des1 = orb.compute(img1, kp1)
kp2, des2 = orb.compute(img2, kp2)
matcher = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)
matches = matcher.match(des1, des2)
# Sort them in the order of their distance.
matches = sorted(matches, key = lambda x:x.distance)
я просто хочу знать, следующий шаг в этом процессе, так что в конце концов я могу напечатать да или нет для дубликаты. Я использую opencv3.0.0 с питоном 2,7
Для реализации C++ используйте https://github.com/vonzhou/opencv/blob/master/match/ORB_match.cpp и для реализации реализации python: http://stackoverflow.com/questions/11114349/how- чтобы визуализировать-дескриптора-согласования-с использованием OpenCV-модуль--в-питона. Надеюсь, это вам поможет. –
Другая ссылка: http: //docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_matcher/py_matcher.html –
Привет, не могли бы вы рассказать нам, каковы критерии «дубликатов изображений» из ваших представлений? В зависимости от ваших ответов решения могут быть совершенно разными: они могут варьироваться от простого способа, например сравнения гистограмм, или сложных алгоритмов, таких как сумка слов, хеширование изображений. Если вы хотите знать, как использовать OBR для определения аналогичного объекта (если это отдельный объект), это довольно просто, как сказал Сагар. – StereoMatching