0

すでに見つけた重要なポイントの記述子を取得しようとしています。次のコード行を使用しています。

sift = cv2.SIFT()
self.features,des = sift.compute(self.gray,self.features)

ただし、次のエラーが表示されます。

'cv2.SIFT' object has no attribute 'compute'

このリンク ( http://docs.opencv.org/trunk/modules/nonfree/doc/feature_detection.html ) によると、これは可能であるはずなので、理由がわかりません。

ここで何が起こっているのか誰にもわかりませんか?

また、次のことに気付きました。

cv2.SIFT.detectAndCompute(image, mask[, descriptors[, useProvidedKeypoints]]) → keypoints, descriptors¶

すでに検出されたキーポイントを使用できます...この関数が機能するために引数を正しく入力する方法を誰かに教えてもらえますか? maskちなみに、引数を使用する必要はありません。

ご協力ありがとうございました。

4

1 に答える 1

0

先ほど提供したリンクは、使用しているバージョン 2 ではなく、OpenCV バージョン 3 用です。したがって、同じバージョンを使用していないため、関数またはライブラリ構造の違いは適切に説明されています ( sift = cv2.SIFT())。

于 2013-10-25T07:00:49.137 に答える