|Project Name||Stars||Downloads||Repos Using This||Packages Using This||Most Recent Commit||Total Releases||Latest Release||Open Issues||License||Language|
|Opencv_contrib||8,695||2 days ago||533||apache-2.0||C++|
|Repository for OpenCV's extra modules|
|3dv_tutorial||1,126||6 days ago||3||other||CMake|
|An Invitation to 3D Vision: A Tutorial for Everyone|
|Raftlib||890||a month ago||35||apache-2.0||C++|
|The RaftLib C++ library, streaming/dataflow concurrency via C++ iostream-like operators|
|Eyelike||707||5 years ago||13||mit||C++|
|A webcam based pupil tracking implementation.|
|Opencv Mingw Build||559||2 years ago|
|👀 MinGW 32bit and 64bit version of OpenCV compiled on Windows. Including OpenCV 3.3.1, 3.4.1, 3.4.1-x64, 3.4.5, 3.4.6, 3.4.7, 3.4.8-x64, 3.4.9, 4.0.0-alpha-x64, 4.0.0-rc-x64, 4.0.1-x64, 4.1.0, 4.1.0-x64, 4.1.1-x64, 4.5.0-with-contrib, 4.5.2-x64|
|Asap||548||19 days ago||31||gpl-2.0||C++|
|Program for the analysis and visualization of whole-slide images in digital pathology|
|Mtcnn Light||512||6 years ago||27||mit||C++|
|this repository is the implementation of MTCNN with no framework, Just need opencv and openblas, support linux and windows|
|Coherent Line Drawing||502||a year ago||1||mit||C++|
|🖼✨Automatically generates line drawing from a photograph|
|Zxing Cpp||439||4 years ago||46||apache-2.0||C++|
|ZXing C++ Library|
|Simple_vehicle_counting||419||4 years ago||19||C++|
|Vehicle Detection, Tracking and Counting|
This repository is intended for the development of so-called "extra" modules, contributed functionality. New modules quite often do not have stable API, and they are not well-tested. Thus, they shouldn't be released as a part of the official OpenCV distribution, since the library maintains binary compatibility, and tries to provide decent performance and stability.
So, all the new modules should be developed separately, and published in the
opencv_contrib repository at first. Later, when the module matures and gains
popularity, it is moved to the central OpenCV repository, and the development team
provides production-quality support for this module.
You can build OpenCV, so it will include the modules from this repository. Contrib modules are under constant development and it is recommended to use them alongside the master branch or latest releases of OpenCV.
Here is the CMake command for you:
$ cd <opencv_build_directory> $ cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules <opencv_source_directory> $ make -j5
As the result, OpenCV will be built in the
<opencv_build_directory> with all
opencv_contrib repository. If you don't want all of the modules,
BUILD_opencv_* options. Like in this example:
$ cmake -DOPENCV_EXTRA_MODULES_PATH=<opencv_contrib>/modules -DBUILD_opencv_legacy=OFF <opencv_source_directory>
If you also want to build the samples from the "samples" folder of each module, also include the "-DBUILD_EXAMPLES=ON" option.
If you prefer using the GUI version of CMake (cmake-gui), then, you can add
opencv_contrib modules within
opencv core by doing the following:
Select the opencv source code folder and the folder where binaries will be built (the 2 upper forms of the interface).
configure button. You will see all the opencv build parameters in the central interface.
Browse the parameters and look for the form called
OPENCV_EXTRA_MODULES_PATH (use the search form to focus rapidly on it).
OPENCV_EXTRA_MODULES_PATH by the proper pathname to the
<opencv_contrib>/modules value using its browse button.
configure button followed by the
generate button (the first time, you will be asked which makefile style to use).
opencv core with the method you chose (make and make install if you chose Unix makefile at step 6).
To run, linker flags to contrib modules will need to be added to use them in your code/IDE. For example to use the aruco module, "-lopencv_aruco" flag will be added.
In order to keep a clean overview containing all contributed modules, the following files need to be created/adapted:
Update the README.md file under the modules folder. Here, you add your model with a single-line description.
Add a README.md inside your own module folder. This README explains which functionality (separate functions) is available, links to the corresponding samples, and explains in somewhat more detail what the module is expected to do. If any extra requirements are needed to build the module without problems, add them here also.