2015-01-17 5 views
6

OpenCV 3.0을 추가 패키지 (sift, surf ...)로 설치하려고 시도했지만 항상 실패합니다. 붙어있어.Python을위한 추가 모듈 (sift, surf ...)을 사용하여 OpenCV 3.0을 설치하십시오.

cd git 
git clone https://github.com/Itseez/opencv_contrib.git 
cd .. 
wget https://github.com/Itseez/opencv/archive/3.0.0-beta.zip 
unzip 3.0.0-beta.zip 
cd opencv-3.0.0-beta/ 
mkdir release 
cd release/ 
workon OCR 
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/home/jbd/src/opencv-3.0.0b -D OPENCV_EXTRA_MODULES_PATH=/home/jbd/git/opencv_contrib/modules -D BUILD_opencv_python3=ON -D PYTHON2_EXECUTABLE=/home/jbd/.virtualenv/OCR/bin/python -D PYTHON_INCLUDE_DIR=/home/jbd/.virtualenv/OCR/include/python2.7 -D PYTHON_LIBRARY=/usr/lib/libpython2.7.so -D PYTHON2_NUMPY_INCLUDE_DIRS=/home/jbd/.virtualenv/OCR/local/lib/python2.7/site-packages/numpy .. 
make -j7 
make install 
cd ~/.virtualenv/OCR/lib/python2.7/site-packages/ 
ln -s /home/jbd/src/opencv-3.0.0b/lib/python2.7/site-packages/cv2.so 

나는 그것을 설치하려고 길을, 나는 항상 얻을 무엇 이건 :

Traceback (most recent call last): File "/home/jbd/git/ocr/test.py", line 10, in sift = cv2.xfeatures2d.SIFT() AttributeError: 'module' object has no attribute 'SIFT'

와 나는 여기

내가 무슨 짓을 가상 것들에 다음 주 환경에서 시도 :

import numpy as np 
import cv2 
sift = cv2.xfeatures2d.SIFT() 

누군가 내가 틀린 곳을 보면 ...

덕분에 많은 opencv3.0와

답변

9
>>> help(cv2.xfeatures2d) 
Help on module cv2.xfeatures2d in cv2: 

NAME 
    cv2.xfeatures2d 

FILE 
    (built-in) 

FUNCTIONS 
    SIFT_create(...) 
     SIFT_create([,nfeatures[,nOctaveLayers[,contrastThreshold[,edgeThreshold[,sigma]]]]) -> retval 

    SURF_create(...) 
     SURF_create([,hessianThreshold[,nOctaves[,nOctaveLayers[,extended[,upright]]]]]) -> retval 

, 당신은 인스턴스를 얻을하는 XXXX_create() 기능을 사용할 필요가 때문에, 그것의 :

orb = cv2.ORB_create() 

과 :

sift = cv2.xfeatures2d.SIFT_create() 
sift.detect(...) 
sift.compute(...) 
+0

정말 고마워요. 그리워요. 마침내 좋은 :) – jbdemonte

관련 문제