Ich bin neu in CV, ich habe viele Bilder und ich möchte ein Bild mit den anderen in meinem Bilder-Dataset vergleichen.So entscheide ich mich, alle Bilder zu indizieren, nachdem ich ein wenig suchen und ORG, SIFT, SURF I war auf der Suche for.But ich weiß nicht, wie die charakteristischen Punkt und Beschreiber zu verwenden, unten ist mein Code:Wie sollte ich OpenCV 3.1 ORB in Python3 verwenden?
import cv2
nfeatures = 1
cv2.ocl.setUseOpenCL(False)
img = cv2.imread('images/forest-copyright.jpg', 0)
img2 = cv2.imread('images/forest-high.jpg', 0)
def kpdes(img):
orb = cv2.ORB_create(nfeatures=nfeatures)
kp = orb.detect(img, None)
kp,des = orb.compute(img, kp)
print(kp,des)
kpdes(img)
kpdes(img2)
Einige Teile Ausgabe:
[KeyPoint 0000000002A2EF00] [ [252 48 188 124 41 124 81 184 161 112 93 224 225 78 67]]
Wie nehme ich den Deskriptor wie „[[252 48 188 124 41 124 81 184 161 63 167 25 87 63 74 91 192 213 237 0 60 79 243 0 219 235 112 93 224 225 78 67] ]",was heißt das? Wie kann ich sie in Elasticsearch speichern und abfragen? Ich fand den Deskriptor geändert, wenn ich nfeatures erhöhen. Ja, es gibt so viele Fragen für mich, auf Helfer warten!