python आयात त्रुटि: डीएलएल लोड विफल:% 1 वैध Win32 अनुप्रयोग नहीं है




opencv importerror (5)

या आपको 64 बिट जीतने के लिए सीवी 2 मॉड्यूल का पुनर्निर्माण करना होगा।

मेरे पास यह समस्या है जहां मैं अजगर पर cv2 आयात करने का प्रयास करता हूं और निम्न त्रुटि संदेश प्राप्त करता हूं।

>>> import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: %1 is not a valid Win32 application.

मैं समझता हूं कि इस बारे में कई पोस्ट हैं जहां यह सुझाव दिया जाता है कि पैकेज का गठबंधन अजगर पैकेज से अलग है।

हालांकि, मैं जो कुछ भी चला रहा हूं वह 64 बिट्स है। मैं Win7 64 बिट्स पर हूं, मेरे पास winpython 2.7.3.3, 64 बिट वितरण है, और मैंने here दिए गए निर्देश के साथ 64 बिट्स में ओपनसीवी संकलित किया here और cy2.pyd dll को python के lib / site-packages फ़ोल्डर में रखा है।

दुर्भाग्यवश पाइथन के 32 बिट्स संस्करण का उपयोग करने का सुझाव अब मेरे लिए काम नहीं कर रहा है क्योंकि मुझे 32 बिट्स के लिए बहुत बड़ी संख्या में नमस्ते सरणी को संभालना है।

धन्यवाद!!!

------ अद्यतन करें

एकमात्र चीज गायब थी, विंडोज़ पाथ पर्यावरण चर में नया ओपनसीवी बाइनरी पथ (सी: \ ओपनसीवी \ बिल्ड \ बिन \ रिलीज) जोड़ने के लिए, पायथन को पुनरारंभ करें।

सबकुछ ठीक काम कर रहा है!


Win32 के संदर्भ के कारण ImportError संदेश थोड़ा भ्रामक है, जबकि समस्या केवल ओपनसीवी डीएलएल नहीं मिली थी।

Windows PATH पर्यावरण चर में ओपनसीवी बाइनरी पथ को जोड़कर इस समस्या को हल किया गया था (उदाहरण के तौर पर, मेरे कंप्यूटर पर यह पथ है: C: \ opencv \ build \ bin \ release)।


जब मुझे यह त्रुटि हुई, तो मेरे कंप्यूटर को क्रैश और पुनरारंभ करने के बाद यह चला गया। अपने आईडीई को बंद करने और फिर से खोलने का प्रयास करें, अगर यह काम नहीं करता है, तो अपने कंप्यूटर को पुनरारंभ करने का प्रयास करें। जब मैंने यह त्रुटि प्राप्त की थी तब मैंने पिचर्म को पुनरारंभ किए बिना उस बिंदु पर पुस्तकालयों को स्थापित किया था।

परीक्षण करने के लिए पहले PyCharm को कभी भी बंद न करें क्योंकि मेरा विस्फोटित कंप्यूटर यादृच्छिक रूप से क्रैश हो रहा है ... उस पर काम कर रहा है, लेकिन कम से कम इस समस्या को हल किया .. छोटी जीत .. :)।


आप opencv के 32 बिट संस्करण को स्थापित करने का प्रयास कर सकते हैं


मैंने बस इसे मारा और समस्या यह थी कि पैकेज प्रति उपयोगकर्ता पैकेज निर्देशिका में एक बिंदु पर स्थापित किया गया था। (विंडोज़ पर) उर्फ% AppData% \ पायथन। तो पाइथन पहले वहां देख रहा था, .pyd फ़ाइल का पुराना 32-बिट संस्करण ढूंढ रहा था, और सूचीबद्ध त्रुटि से असफल रहा। दुर्भाग्य से पाइप अनइंस्टॉल स्वयं को साफ़ करने के लिए पर्याप्त नहीं था, और इस समय पीआईपी 10.0.1 में अनइंस्टॉल करने के लिए केवल एक हीसर पैरामीटर नहीं है, केवल इंस्टॉल के लिए।

tl; ड्रॉ को पुराना .pyd% AppData% \ python \ python27 \ साइट-संकुल से हटाकर मेरे लिए इस समस्या का समाधान किया।





importerror