2012-06-25 9 views
14

से ओपनसीवी चलाना मैं अपने उबंटू सर्वर 12.04 पर वर्चुअलएन्व के अंदर ओपनसीवी स्थापित करने की कोशिश कर रहा हूं। मुझे a thread discussing this मिला लेकिन इससे कोई जानकारी निकालने में कामयाब रहा।एक पायथन वर्चुअलनेव

मैंने pip install pyopencv का उपयोग करने की कोशिश की लेकिन यह असफल रहा।

... 
package/extras/core/ndarray.cpp:598:1: instantiated from here 

package/extras/core/ndarray.cpp:546:9: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘Py_intptr_t {aka long int}’ [-Wformat] 

package/extras/core/ndarray.cpp: In function ‘boost::python::api::object sdcpp::from_ndarray_impl(const sdcpp::ndarray&) [with T = cv::Scalar_<double>]’: 

package/extras/core/ndarray.cpp:601:1: instantiated from here 

package/extras/core/ndarray.cpp:546:9: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘Py_intptr_t {aka long int}’ [-Wformat] 

package/extras/core/ndarray.cpp: In function ‘boost::python::api::object sdcpp::from_ndarray_impl(const sdcpp::ndarray&) [with T = cv::Range]’: 

package/extras/core/ndarray.cpp:604:1: instantiated from here 

package/extras/core/ndarray.cpp:546:9: warning: format ‘%d’ expects argument of type ‘int’, but argument 4 has type ‘Py_intptr_t {aka long int}’ [-Wformat] 

error: command 'gcc' failed with exit status 1 

यह त्रुटि केवल दूसरी बार मैं pip install चलाने होता है। अगर मैं remainging build/ फ़ोल्डर को हटा देता हूं तो मुझे यह त्रुटि मिलती है।

-- Configuring incomplete, errors occurred! 

Configuring PyOpenCV via CMake... 

Error: error occurred while running CMake to configure PyOpenCV. 

You may want to manually configure PyOpenCV by running cmake's tools: 

    mkdir build 

    cd build 

    cmake-gui .. OR cmake .. 

    cd .. 

---------------------------------------- 
Command python setup.py egg_info failed with error code 255 

मेरे पास कम से कम निम्नलिखित एपीटी पैकेज स्थापित हैं।

build-essential 
uuid-dev 
python-dev 
python-pip 
libpq-dev 
cmake 
libboost-dev 
libcv-dev 
libcvaux-dev 
libboost-python-dev 
libboost1.48-dev 

मैं अपने वर्चुअलएव के अंदर ओपनसीवी कैसे स्थापित कर सकता हूं?

+0

मैं इस एक ही समस्या का सामना कर रहा हूँ। मैंने देखा, हालांकि, 'pyopencv' इस प्रोजेक्ट से मेल खाता है http://code.google.com/p/pyopencv/ और ओपनसीवी 2.X –

उत्तर

13

वर्चुअलएन्व को निकाल दिया गया और इस मार्गदर्शिका का पालन किया: http://www.samontab.com/web/2011/06/installing-opencv-2-2-in-ubuntu-11-04/, सीवी साझा वस्तुओं को मैनिपुलेट करने और कॉपी करने तक। इसके बजाय, मैंने cv.so (मेरी ओपनसीवी-2.2.0/lib निर्देशिका से) को अपने वर्चुअलनव साइट-पैकेज (उदाहरण के लिए env/lib/python2.7/site-packages /) में कॉपी किया। एक बार cv.so मेरे पर्यावरण में था, मैं पाइथन के भीतर सीवी आयात करने में सक्षम था।

+1

के साथ आने वाले पायथन बाइंडिंग नहीं, धन्यवाद, साझा वस्तुओं की प्रतिलिपि बनाना जो मैं था लापता!केवल अंतर था I cv.py [c] और cv2.so से/usr/lib/pymodules से, https://github.com/ingenuitas/SimpleCV#installation –

0

क्या आप पहले से ही apt-get build-dep python-opencv थे? यह स्रोत से इसे बनाने के लिए सभी आवश्यक निर्भरताओं को स्थापित करेगा; यदि आप इसे वर्चुअल वातावरण में स्थापित करने का प्रयास कर रहे हैं तो आपको इसकी आवश्यकता है।

+0

के अनुरूप, मेरे पास यह सब opencv.i386 है: एल्गोरिदम का संग्रह कंप्यूटर दृष्टि opencv-devel.i386: ओपनसीवी लाइब्रेरी opencv-python.i386 का उपयोग करने के लिए विकास फ़ाइलें: ओपनसीवी का उपयोग करने वाले ऐप्स के लिए पायथन बाइंडिंग मैं फेडोरा का उपयोग करता हूं, त्रुटि यह है: "/ include/C++/4.3.2/बिट्स/stl_move.h: 87: त्रुटि: इस संदर्भ में "मैं virtualenv.py का उपयोग कर रहा हूं। –

+0

@ कैटलिन फेस्टिला आपको एक और चर्चा खोलनी चाहिए क्योंकि आपका प्रश्न इस बात से अलग है कि यह किस बारे में बात कर रहा है। –

9

पायनव और वर्चुअलनेव प्लग-इन का उपयोग करके सबसे साफ तरीका यहां दिया गया है।

साझा लाइब्रेरी समर्थन के साथ पायथन स्थापित करें (इसलिए हमें लिनक्स पर मैक ओएस एक्स या libpython2.7.so पर libpython2.7.dylib मिलता है)।

env PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install -v 2.7.6 

वर्चुअलएन्व बनाएं, जो कि हमने अभी स्थापित किए गए पायथन के संस्करण के आधार पर बनाया है।

pyenv virtualenv 2.7.6 myvirtualenv 

वर्चुअलएन्व सक्रिय करें।

pyenv shell myvirtualenv 
pyenv rehash 

numpy इंस्टॉल करें। अन्यथा opencv खुद को पाइथन से सही तरीके से लिंक करने में विफल रहेगा।

pip install numpy 

पायथन इंस्टॉल का उपसर्ग सेट करें।

PREFIX_MAIN=`pyenv virtualenv-prefix` 

पर्यावरण का उपसर्ग सेट करें। (Sic! इन pyenv आदेशों का नाम थोड़ा भ्रामक कर रहे हैं!)

PREFIX=`pyenv prefix` 

अब कॉन्फ़िगर और opencv स्थापित करें। ध्यान दें कि ओपनसीवी बाइनरी और पैकेज हमारे वर्चुअलएन्व में स्थापित किए जाएंगे जबकि गतिशील लाइब्रेरी और पायथन इंस्टॉलेशन शामिल है।

cd openCV2.4 
mkdir release 
cd release 
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX="$PREFIX" -DPYTHON_EXECUTABLE="$PREFIX"/bin/python2.7 -DPYTHON_LIBRARY="$PREFIX_MAIN"/lib/libpython2.7.so -DPYTHON_INCLUDE_DIR="$PREFIX_MAIN"/include/python2.7 -DPYTHON_PACKAGES_PATH="$PREFIX"/lib/python2.7/site-packages/ .. 
make install 

(पर OSX, libpython2.7.dylib साथ libpython2.7.so बदलें।)

संबंधित मुद्दे