2012-03-06 4 views
31

मैं वर्चुअलएन्व के भीतर निहित सब कुछ रखना चाहता हूं। क्या यह ओपनसीवी के साथ संभव है? मैं खरोंच से इमारत के साथ ठीक हूं, क्या मुझे पहले वर्चुअलएन्व को सेट करने की आवश्यकता है, फिर इसे कहां स्थापित करने के लिए कहने के लिए विशेष संकलन झंडे का उपयोग करें?क्या वर्चुअलएन्व से ओपनसीवी (पायथन बाध्यकारी) चलाने के लिए संभव है?

+0

आप किस ओएस/ड्रिब्यूशन का उपयोग कर रहे हैं? – pylover

+0

उबंटू 11.10। मैंने cmfe को PREFIX इंस्टॉल करने का प्रयास करने का प्रयास किया है लेकिन वास्तव में उस स्थानीय निर्देशिका में स्थापित नहीं करना चाहता है। – xamox

+0

मैं उबंटू 11.10 का भी उपयोग करता हूं। मैं इसे आभासी env में स्थापित करने का प्रयास करने के लिए प्रतीक्षा करें। – pylover

उत्तर

35

मुझे पता चला कि समाधान था कि मुझे वर्चुअलएव चलाने वाली निर्देशिका में cv2.so और cv.py पर प्रतिलिपि बनाना था, फिर पाइप इंस्टॉल numpy। उबंटू 12.04 पर ऐसा करने के लिए मैंने इसका इस्तेमाल किया।

virtualenv virtopencv 
cd virtopencv 
cp /usr/local/lib/python2.7/dist-packages/cv* ./lib/python2.7/site-packages/ 
./bin/pip install numpy 
source bin/activate 
python 
import cv 
+2

लेकिन यह वास्तव में स्वचालित तैनाती के साथ आपकी मदद नहीं करता है? चूंकि आपको अभी भी सही होना चाहिए। इसलिए अपनी विशेष प्रणाली के लिए फ़ाइल करें। –

+1

यह सच है, मैंने पाया कि आप .so फ़ाइलों को भी सिमलिंक कर सकते हैं, इसलिए यह तब तक ठीक से काम कर सकता है जब तक सिमलिंक उसी स्थान पर रहता है चाहे आप ओपनसीवी संस्करण का उपयोग कर रहे हों। एक नीचे की तरफ यह है कि वर्चुअलनेव किसी अन्य मशीन के लिए स्थानांतरित करने योग्य प्रतीत नहीं होता है, यहां तक ​​कि --relocatable ध्वज का उपयोग भी करता है, इसलिए यह वास्तव में केवल उदाहरण में उपयोगी है उदाहरण के लिए मैं अलग-अलग पायथन पुस्तकालयों का उपयोग करना चाहता हूं जो कि इंस्टॉल किया गया है प्रणाली। – xamox

+0

सबसे साफ तरीका, प्रतिलिपि बनाने या हार्ड-लिंक करने की कोई आवश्यकता नहीं है: http://stackoverflow.com/a/24112175/562816 –

5

opencv install guide से:

By default the OpenCV build system will choose the most recent version of Python that it can find, or you can force it to use a specific version using the PYTHON_EXECUTABLE variable when you invoke cmake.)

मैं सिर्फ यह मेरे ubuntu 11.10 पर स्थापित --with-नो-साइट-पैकेज, ऊपर के लिंक पर अनुदेश का पालन करके आभासी env पर,। आपको पूरे ओपनसीवी बनाने की जरूरत है। और इसके अजगर आवरण एक साथ।

संपादित करें 1:

  1. एक अस्थायी निर्देशिका है, जो हम निरूपित, के रूप में जहां उत्पन्न Makefiles रखना चाहता हूँ बनाएँ, परियोजना के रूप में अच्छी तरह से वस्तु फ़ाइलों और उत्पादन बाइनरी फ़ाइलें।

    cd ~/opencv 
    mkdir release 
    cd release 
    cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local .. 
    
  2. ) बनाया अस्थायी निर्देशिका (दर्ज करें और के साथ आगे बढ़ना:

    make 
    sudo make install 
    

---------

निर्माण & के बाद जोड़ने स्थापित PYTHON_PATH

पर एक्सटेंशन मॉड्यूल
+0

मैंने आपके द्वारा उल्लेखित चरणों का पालन किया है। "सुडो इंस्टॉलेशन" के बाद, मुझे एक संदेश मिला कि यह सफलतापूर्वक स्थापित किया गया था। हालांकि, जब मैं अजगर में opencv2 आयात करता हूं तो मुझे एक आयात त्रुटि मिलती है। कोई विचार मुझे क्या करना चाहिए? – MAS

+0

सुनिश्चित करें कि आपके PYTHONPATH को इस पोस्ट में उल्लिखित ओपनसीवी की ओर इशारा किया गया है – pylover

+0

मैंने इसे अपने .bash_profile में जोड़ा था। जब मैं अपने वर्चुअलएन्व में "पीआईपी फ्रीज" करता हूं तो मुझे opencv नहीं दिखाई देता है। मुझे यह अजीब – MAS

2

डेबियन पर, मैं उपयुक्त स्थापित अजगर-opencv, अजगर-virtualenv, अजगर-पिप और फिर एक virtualenv विकल्प --system-साइट-संकुल का उपयोग कर बनाया।

+0

एक आकर्षण की तरह काम किया – alan

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