2017-05-04 6 views
1

Ich möchte SIFT und SURF-Deskriptoren verketten, um zu sehen, ob es bessere Genauigkeit gibt, so dass ich brauche, dass SIFT und SURF die gleiche Anzahl von Spalten haben. Also ich möchte auf 128 Bits SURF Deskriptoren programmieren und so muss ich "erweiterte" Option verwenden. Ich tue dies, wie es:Wie verwende 'erweiterte' Option für Surf-Algorithmus

SurfFeatureDetector detector2(minHessian); 
detector2.extended=1; 

und dann:

extractor2.compute(img, keypoints_4, descriptors2);

Aber ich dies tun:

cout<<"descriptors2 "<<descriptors2.rows<<" + "<<descriptors2.cols<<endl; 

es gibt, dass

descriptors2 168 + 64

Also meine Frage ist, den erweiterten Parameter zu berücksichtigen? Was mache ich falsch ? Muss ich dem Extraktor einen ähnlichen Parameter geben?

Vielen Dank im Voraus

+0

hinzufügen, wenn Sie eine bessere Genauigkeit wünschen, vielleicht außerhalb dieser alten deskriptorbasierten Methoden. Ich bin nicht sicher, dass die Verkettung viel für Sie tun würde - Surfen macht im Grunde eine sehr ähnliche Sache unter der Haube als Sieben, nur mit mehr Näherungen, um es schneller zu machen ... – chris

+0

@chris Danke für Ihren Rat aber trotzdem, weißt du wie mit Surf _extended_ Parameter? – MysteryGuy

Antwort

0

Die Antwort war ziemlich einfach. Ich musste

extractor2.extended=1; 
Verwandte Themen