Tôi gặp sự cố này khi tôi cố gắng nhập cv2 trên python và nhận thông báo lỗi sau.ImportError: Tải DLL không thành công:% 1 không phải là ứng dụng Win32 hợp lệ
>>> import cv2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: DLL load failed: %1 is not a valid Win32 application.
Tôi hiểu rằng có rất nhiều bài đăng về vấn đề này khi đề xuất rằng bit của gói khác với gói python.
Tuy nhiên, mọi thứ tôi đang chạy là 64 bit. Tôi đang trên win7 64 bit, tôi có các phân phối winpython 2.7.3.3, 64 bit, và tôi biên dịch opencv trong 64 bit với hướng dẫn cung cấp here và đặt dll cv2.pyd trong thư mục Lib/site-package của python.
Rất tiếc, đề xuất sử dụng phiên bản 32 bit của python không hoạt động đối với tôi nữa vì tôi phải xử lý các mảng quá lớn cho 32 bit.
Xin cảm ơn !!!
------ CẬP NHẬT
Điều duy nhất còn thiếu là để thêm các con đường mới binaries opencv (C: \ OpenCV \ xây dựng \ bin \ Release) vào biến môi trường PATH Windows, khởi động lại python.
Mọi thứ có vẻ đang hoạt động tốt ngay bây giờ!
Các bước cần thực hiện để thực hiện việc này là gì? – Exzile
Những gì tôi không nhận được là, tại sao không thông báo lỗi nhà nước DLL mà không thể được nạp? % 1 chỉ đơn thuần là một trình giữ chỗ cho tên của DLL. – antred
Ah ok. Vì vậy, bạn phải sao chép cv2.pyd từ thư mục x64, nếu bạn đang dùng máy 64 bit để sửa lỗi đó. @antred Nó là một trình giữ chỗ.Nó thường được thay thế bằng DLL nhưng nó không hoạt động vì 32 bit không tải được trên máy 64 bit. –