0

私は OpenCV 2.4 を使用して SURF 特徴を抽出しており、マッチング プロセスには各キーポイントのラプラシアン値が必要です。

OpenCV 2.3 を使用していたときは、これで問題はありませんでした。OpenCV 2.4cv2.SURF()では機能しないため、次のようにする必要があります。

im2 = cv2.imread(imgPath)
im = cv2.cvtColor(im2, cv2.COLOR_BGR2GRAY)
surfDetector = cv2.FeatureDetector_create("SURF")
surfDescriptorExtractor = cv2.DescriptorExtractor_create("SURF")
keypoints = surfDetector.detect(im)
(keypoints, descriptors) = surfDescriptorExtractor.compute(im,keypoints)

これは機能しますが、一般的なキーポイント オブジェクトのセットが得られます。SURF固有の値を取得する方法はありますか? (ラプラシアン、ヘシアン)

残念ながら、2.4 では以前に発生した別の問題が修正されているため、2.3 に戻すことはできません。

4

1 に答える 1

3

単一のキーポイントであると仮定keypointします。

x = keypoint.pt[0]
y = keypoint.pt[1]
size = keypoint.size
dir_in_degrees = keypoint.angle
laplacian = round(keypoint.class_id)
hessian = keypoint.response
于 2012-05-30T21:14:04.530 に答える