All Projects → opencv → Opencv_contrib

opencv / Opencv_contrib

Licence: apache-2.0
Repository for OpenCV's extra modules

Programming Languages

C++
36643 projects - #6 most used programming language
Cuda
1817 projects
python
139335 projects - #7 most used programming language
c
50402 projects - #5 most used programming language
CMake
9771 projects
assembly
5116 projects

Labels

Projects that are alternatives of or similar to Opencv contrib

Opencv
OpenCV projects: Face Recognition, Machine Learning, Colormaps, Local Binary Patterns, Examples...
Stars: ✭ 624 (-91.19%)
Mutual labels:  opencv
Head Pose Estimation
Head pose estimation by TensorFlow and OpenCV
Stars: ✭ 698 (-90.15%)
Mutual labels:  opencv
Face morpher
👼 Morph faces with Python, Numpy, Scipy
Stars: ✭ 732 (-89.67%)
Mutual labels:  opencv
Mvision
机器人视觉 移动机器人 VS-SLAM ORB-SLAM2 深度学习目标检测 yolov3 行为检测 opencv PCL 机器学习 无人驾驶
Stars: ✭ 6,140 (-13.34%)
Mutual labels:  opencv
Opencv Machine Learning
M. Beyeler (2017). Machine Learning for OpenCV: Intelligent image processing with Python. Packt Publishing Ltd., ISBN 978-178398028-4.
Stars: ✭ 693 (-90.22%)
Mutual labels:  opencv
Openlabeling
Label images and video for Computer Vision applications
Stars: ✭ 706 (-90.04%)
Mutual labels:  opencv
Ofxcv
Alternative approach to interfacing with OpenCv from openFrameworks.
Stars: ✭ 614 (-91.33%)
Mutual labels:  opencv
Anime Inpainting
An application tool of edge-connect, which can do anime inpainting and drawing. 动漫人物图片自动修复,去马赛克,填补,去瑕疵
Stars: ✭ 761 (-89.26%)
Mutual labels:  opencv
Nomacs
nomacs is a free image viewer for windows, linux, and mac systems.
Stars: ✭ 694 (-90.2%)
Mutual labels:  opencv
Mmcamscanner
Simulation of CamScanner app With Custom Camera and Crop Rect Validation
Stars: ✭ 728 (-89.72%)
Mutual labels:  opencv
Makeup
让你的“女神”逆袭,代码撸彩妆(画妆)
Stars: ✭ 655 (-90.76%)
Mutual labels:  opencv
Gazetracking
👀 Eye Tracking library easily implementable to your projects
Stars: ✭ 683 (-90.36%)
Mutual labels:  opencv
Raftlib
The RaftLib C++ library, streaming/dataflow concurrency via C++ iostream-like operators
Stars: ✭ 717 (-89.88%)
Mutual labels:  opencv
Opencv for ios book samples
"OpenCV for iOS" book samples
Stars: ✭ 640 (-90.97%)
Mutual labels:  opencv
Bosssensor
Hide screen when boss is approaching.
Stars: ✭ 6,081 (-14.17%)
Mutual labels:  opencv
Cvui
A (very) simple UI lib built on top of OpenCV drawing primitives
Stars: ✭ 619 (-91.26%)
Mutual labels:  opencv
Chosuntruck
Euro Truck Simulator 2 autonomous driving solution
Stars: ✭ 706 (-90.04%)
Mutual labels:  opencv
Eyelike
A webcam based pupil tracking implementation.
Stars: ✭ 770 (-89.13%)
Mutual labels:  opencv
Human Detection And Tracking
Human-detection-and-Tracking
Stars: ✭ 753 (-89.37%)
Mutual labels:  opencv
Opencvtutorials
OpenCV-Python4.1 中文文档
Stars: ✭ 720 (-89.84%)
Mutual labels:  opencv

Repository for OpenCV's extra modules

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 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.

How to build OpenCV with extra modules

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 modules from opencv_contrib repository. If you don't want all of the modules, use CMake's 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:

  1. Start cmake-gui.

  2. Select the opencv source code folder and the folder where binaries will be built (the 2 upper forms of the interface).

  3. Press the configure button. You will see all the opencv build parameters in the central interface.

  4. Browse the parameters and look for the form called OPENCV_EXTRA_MODULES_PATH (use the search form to focus rapidly on it).

  5. Complete this OPENCV_EXTRA_MODULES_PATH by the proper pathname to the <opencv_contrib>/modules value using its browse button.

  6. Press the configure button followed by the generate button (the first time, you will be asked which makefile style to use).

  7. Build the opencv core with the method you chose (make and make install if you chose Unix makefile at step 6).

  8. 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.

Update the repository documentation

In order to keep a clean overview containing all contributed modules, the following files need to be created/adapted:

  1. Update the README.md file under the modules folder. Here, you add your model with a single line description.

  2. 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.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].