Show
OpenCV trên bánh xeCác gói OpenCV chỉ được xây dựng trước CPU cho Python. Kiểm tra phần xây dựng thủ công nếu bạn muốn biên dịch các ràng buộc từ nguồn để cho phép các mô -đun bổ sung như CUDA. Cài đặt và sử dụng
Các câu hỏi thường gặpQ: Tôi có cần cài đặt riêng OpenCV không? Trả lời: Không, các gói là các gói nhị phân bánh xe đặc biệt và chúng đã chứa các nhị phân opencv được xây dựng tĩnh. Q: Cài đặt PIP không thành công với Vì Q: Nhập thất bại trên Windows: Trả lời: Nếu nhập không thành công trên Windows, hãy đảm bảo cài đặt bạn đã cài đặt C ++ Rederributable 2015. Nếu bạn đang sử dụng phiên bản Windows cũ hơn Windows 10 và các bản cập nhật hệ thống mới nhất không được cài đặt, thời gian chạy Universal C cũng có thể được yêu cầu. Các phiên bản Windows N và KN không bao gồm gói tính năng phương tiện được OpenCV yêu cầu. Nếu bạn đang sử dụng Windows N hoặc KN Edition, vui lòng cài đặt Gói tính năng Windows Media. Nếu bạn có Windows Server 2012+, các DLL phương tiện cũng có thể bị thiếu; Vui lòng cài đặt tính năng có tên là "Media Foundation" trong trình quản lý máy chủ. Coi chừng, một số bài đăng khuyên bạn nên cài đặt "Windows Server Essential Media Gói", nhưng bài đăng này đòi hỏi vai trò "Trải nghiệm Windows Server Essentials" và vai trò này sẽ ảnh hưởng sâu sắc đến cấu hình Windows Server của bạn (bằng cách thực thi tích hợp Active Directory, v.v.); Vì vậy, chỉ cần cài đặt "nền tảng truyền thông" nên là một lựa chọn an toàn hơn. Nếu những điều trên không giúp đỡ, hãy kiểm tra xem bạn có đang sử dụng Anaconda không. Các phiên bản Anaconda cũ có lỗi gây ra lỗi, hãy xem vấn đề này để khắc phục thủ công. Nếu bạn vẫn gặp phải lỗi sau khi bạn đã kiểm tra tất cả các giải pháp trước đó, hãy tải xuống các phụ thuộc và mở tệp Q: Tôi có một số lỗi nhập khác? Trả lời: Đảm bảo rằng bạn đã xóa các cài đặt thủ công cũ của các ràng buộc OpenCV Python (CV2.SO hoặc CV2.pyd trong các gói trang web). Q: Hàm foo () hoặc thanh phương thức () trả về kết quả sai, ném ngoại lệ hoặc trình thông dịch gặp sự cố. Tôi nên làm gì? Trả lời: Kho lưu trữ chỉ chứa các tập lệnh xây dựng gói OpenCV-Python, nhưng không phải là OpenCV. Các ràng buộc Python cho OpenCV được phát triển trong Kho lưu trữ OpenCV chính thức và đó là nơi tốt nhất để báo cáo các vấn đề. Ngoài ra, vui lòng kiểm tra {opencv wiki] (https://github.com/opencv/opencv/wiki) và diễn đàn OpenCV chính thức trước khi nộp các lỗi mới. Q: Tại sao các gói không bao gồm các thuật toán không miễn phí? Trả lời: Các thuật toán không miễn phí như SURF không được bao gồm trong các gói này vì chúng được cấp bằng sáng chế / không miễn phí và do đó không thể được phân phối dưới dạng các nhị phân được xây dựng. Lưu ý rằng SIFT được bao gồm trong các bản dựng do hết hạn bằng sáng chế vì phiên bản OpenCV 4.3.0 và 3.4.10. Xem vấn đề này để biết thêm thông tin: https://github.com/skvark/opencv-python/issues/126 Hỏi: Tại sao gói và nhập là khác nhau (OpenCV-Python so với CV2)? Trả lời: Người dùng dễ hiểu Tài liệu cho OpenCV-Python
Mục đích của kho lưu trữ này là cung cấp phương tiện để đóng gói mỗi bản phát hành OpenCV mới cho các phiên bản và nền tảng Python được sử dụng nhiều nhất. Quá trình xây dựng CIDự án được cấu trúc giống như gói Python bình thường với tệp
Bước 1--4 được xử lý bởi Bản dựng có thể được tùy chỉnh với các biến môi trường. Ngoài bất kỳ biến nào mà bản dựng của OpenCV chấp nhận, chúng tôi nhận ra:
Xem phần tiếp theo để biết thêm thông tin về các bản dựng thủ công bên ngoài môi trường CI. Xây dựng thủ côngNếu một số phụ thuộc không được bật trong các bánh xe được xây dựng trước, bạn cũng có thể chạy bản dựng cục bộ để tạo bánh xe tùy chỉnh.
Bản dựng thủ công xây dựngĐể xây dựng
Nếu bạn muốn bản dựng sản xuất tất cả các lệnh trình biên dịch, thì sự kết hợp sau đây giữa các cờ và biến môi trường đã được kiểm tra để hoạt động trên Linux:
Xem vấn đề này để thảo luận thêm: https://github.com/opencv/opencv-python/issues/424 Phân phối nguồnVì OpenCV phiên bản 4.3.0, cũng là phân phối nguồn được cung cấp trong PYPI. Điều này có nghĩa là nếu hệ thống của bạn không tương thích với bất kỳ bánh xe nào trong PYPI, Bạn cũng có thể buộc
Nếu bạn cần các mô -đun đóng góp hoặc phiên bản không đầu, chỉ cần thay đổi tên gói (bước 4 trong phần trước là không cần thiết). Tuy nhiên, bất kỳ cờ CMake bổ sung nào cũng có thể được cung cấp thông qua các biến môi trường như được mô tả trong bước 3 của phần xây dựng thủ công. Nếu không có gì được cung cấp, các tập lệnh CMake của OpenCV sẽ cố gắng tìm và kích hoạt bất kỳ sự phụ thuộc phù hợp nào. Phân phối không đầu có cờ CMake mã hóa cứng, vô hiệu hóa tất cả các phụ thuộc GUI có thể. Trên các hệ thống chậm như Raspberry Pi, bản dựng đầy đủ có thể mất vài giờ. Trên Ryzen 7 3700x, bản dựng mất khoảng 6 phút. Cấp phépGói OpenCV-Python (tập lệnh trong kho này) có sẵn theo giấy phép MIT. Bản thân OpenCV có sẵn theo giấy phép Apache 2. Giấy phép gói của bên thứ ba là tại giấy phép-3-party.txt. Tất cả các bánh xe có FFMPEG được cấp phép theo LGPLV2.1. Bánh xe Linux không đứng đầu với Qt 5 được cấp phép theo LGPLV3. Các gói bao gồm cả các nhị phân khác. Danh sách đầy đủ các giấy phép có thể được tìm thấy từ giấy phép-3-party.txt. Phiên bản
Phát hànhMột bản phát hành được thực hiện và tải lên PYPI khi một thẻ mới được đẩy lên Master Branch. Các thẻ này phân biệt các gói (repo này có thể có sửa đổi nhưng phiên bản OpenCV vẫn giữ nguyên) và nên được tăng dần theo tuần tự. Trong thực tế, các số phiên bản phát hành trông như thế này:
Chi nhánh chính theo các bản phát hành chi nhánh Master OpenCV. 3.4 Chi nhánh theo OpenCV 3.4 Bugfix phát hành. Xây dựng phát triểnMọi cam kết với chi nhánh chính của repo này sẽ được xây dựng. Có thể xây dựng tạo tác sử dụng số nhận dạng phiên bản cục bộ:
Những cổ vật này không thể và sẽ không được tải lên PYPI. Bánh xe nhiềuBánh xe Linux được chế tạo bằng nhiều người khác. Những bánh xe này sẽ hoạt động ngoài hộp cho hầu hết các bản phân phối (sử dụng thư viện tiêu chuẩn GNU C) vì chúng được xây dựng dựa trên một phiên bản cũ của Glibc. Hình ảnh Phiên bản Python được hỗ trợPython 3.x Bánh xe được chế tạo sẵn tương thích được cung cấp cho các phiên bản Python được hỗ trợ chính thức (không phải trong EOL):
Khả năng tương thích ngượcBắt đầu từ 4.2.0 và 3.4.9 Xây dựng môi trường xây dựng MacOS Travis đã được cập nhật lên Xcode 9.4. Sự thay đổi đã giảm hiệu quả hỗ trợ cho các phiên bản MacOS hơn 10,13. Bắt đầu từ 4.3.0 và 3.4.10 Xây dựng môi trường xây dựng Linux đã được cập nhật từ Phiên bản Python nào phù hợp với OpenCV?Cài đặt OpenCV từ các nhị phân được xây dựng sẵn Python 3.x (3.4+) hoặc Python 2.7.x từ đây.Gói Numpy (ví dụ: sử dụng lệnh Pip Install Numpy).Python 3. x (3.4+) or Python 2.7. x from here. Numpy package (for example, using pip install numpy command).
Python 3.8 có hỗ trợ opencv không?Chào mừng OpenCV-Python cho các macOS trên M1, nó bổ sung CI cho các gói macOS bản địa M1 và hỗ trợ Python3.Các bản dựng 7, 3.8 và 3.9.supports python3. 7, 3.8, and 3.9 builds.
Python 3.10 có hỗ trợ opencv không?2 câu trả lời.Lưu câu trả lời này.Hiển thị hoạt động trên bài viết này.Có vẻ như không có opencv-python cho Python 3.10 ...there is no opencv-python for Python 3.10...
OpenCV có hoạt động với Python không?OpenCV hiện hỗ trợ vô số thuật toán liên quan đến tầm nhìn máy tính và học máy và đang mở rộng từng ngày.OpenCV hỗ trợ nhiều ngôn ngữ lập trình như C ++, Python, Java, v.v., và có sẵn trên các nền tảng khác nhau bao gồm Windows, Linux, OS X, Android và iOS.OpenCV supports a wide variety of programming languages such as C++, Python, Java, etc., and is available on different platforms including Windows, Linux, OS X, Android, and iOS. |