OpenCV: Difference between revisions
m Category:Python Category:Rust added (page has specific information about these languages) |
m minor grammatical errors |
||
Line 1: | Line 1: | ||
[https://opencv.org/ OpenCV] is the world's largest and most popular computer vision library | [https://opencv.org/ OpenCV] is the world's largest and most popular computer vision library<ref name=":0">https://opencv.org/</ref>. It is open source under the [[wikipedia:Apache_License|Apache License]] 2<ref>https://github.com/opencv/opencv?tab=Apache-2.0-1-ov-file#</ref>. OpenCV interfaces with many languages such as C++, Python and Java<ref name=":0" />. | ||
Due to needing dynamically linked libraries and not having all necessary dependencies | Due to needing dynamically linked libraries and not having all necessary dependencies packaged with the base version of the OpenCV package for all uses, this page was created to help with the initial hassle of getting OpenCV to run in development environments. | ||
== Python == | == Python == | ||
Line 127: | Line 127: | ||
It is important to note that the most popular OpenCV package for rust, [https://github.com/twistedfall/opencv-rust opencv-rust], is just a series of bindings for the C++ version of OpenCV, and is thereby unsafe. Errors that occur while trying to use these bindings may just fail quietly or return an error from the underlying C++ code. There is an effort to implement most of the main computer vision algorithms entirely in rust called [https://github.com/rust-cv/cv rust-cv]. The package has not been actively maintained since July of 2023. | It is important to note that the most popular OpenCV package for rust, [https://github.com/twistedfall/opencv-rust opencv-rust], is just a series of bindings for the C++ version of OpenCV, and is thereby unsafe. Errors that occur while trying to use these bindings may just fail quietly or return an error from the underlying C++ code. There is an effort to implement most of the main computer vision algorithms entirely in rust called [https://github.com/rust-cv/cv rust-cv]. The package has not been actively maintained since July of 2023. | ||
The opencv-rust package does not include the C++ bindings, thereby requiring it to be installed alongside the package itself. Luckily, it is packaged in nixpkgs and using it is just a question of getting on our system, the crate does the rest of the work. | The opencv-rust package does not include the C++ bindings, thereby requiring it to be installed alongside the package itself. Luckily, it is packaged in nixpkgs and using it is just a question of getting it on our system, the crate does the rest of the work. | ||
=== Flake.nix Example === | === Flake.nix Example === |