WikiStart

Version 78 (Gary Bradski, 2016-03-01 07:24 pm)

1 50 Gary Bradski
h1. OpenCV Wiki
2 50 Gary Bradski
3 52 Gary Bradski
!http://opencv.org/wp-content/themes/opencv/images/logo.png!
4 49 Gary Bradski
5 57 Gary Bradski
OpenCV (Open Source Computer Vision) is a library of programming functions for the realtime computer vision. OpenCV is released under the liberal "BSD license":http://opensource.org/licenses/bsd-license.php and hence it's free for both academic and commercial use. It has C++, C, Python and Java (Android) interfaces and supports Windows, Linux, Android and Mac OS. The library has more than 2500 optimized algorithms. Adopted all around the world, OpenCV has more than 47 thousand people of user community and estimated number of downloads exceeding 5 million. Usage ranges from interactive art, to mines inspection, stitching maps on the web or through advanced robotics.
6 1
7 78 Gary Bradski
* "News":http://opencv.org/category/news
8 34 Gary Bradski
* "Wiki map":http://code.opencv.org/projects/opencv/wiki/index
9 71 Gary Bradski
10 70 Gary Bradski
h2. Resources
11 69 Gary Bradski
12 78 Gary Bradski
* Homepage: http://opencv.org
13 78 Gary Bradski
* Q&A forum (questions, support): http://answers.opencv.org
14 78 Gary Bradski
* Documentation: http://opencv.org/documentation.html, including "books":http://opencv.org/books.html
15 78 Gary Bradski
* Source Codes. The main OpenCV repository was converted to git and compactified. History now begins with the famous “atomic bomb” commit, that dates back to May the 11th, 2010.
16 78 Gary Bradski
** To get the source code, point your git client to git://github.com/itseez/opencv.git. Here is [[Working_with_OpenCV_git_repository|instruction]].
17 78 Gary Bradski
<pre>
18 78 Gary Bradski
git clone git://github.com/itseez/opencv.git
19 78 Gary Bradski
</pre>
20 78 Gary Bradski
** The rest of the history plus matches between git commits and SVN revisions are stored at a separate "OpenCV Attic" repository: git://code.opencv.org/opencv_attic.git.
21 78 Gary Bradski
** Also OpenCV Extra was put to a separate repository: git://code.opencv.org/opencv_extra.git.
22 60 Gary Bradski
23 60 Gary Bradski
h2. Issue Tracker
24 60 Gary Bradski
25 78 Gary Bradski
Please note that OpenCV project, as any open-source project, welcomes contributions from users. Either you have implemented some new functionality, or you're able to localize and fix a bug by yourself, please make a pull request at the GitHub. It will be "automatically tested":http://pullrequest.opencv.org and reviewed by peers. Check your code for compliance with [[CodingStyleGuide|OpenCV Code Style Guide]] and please explain how your contribution might help other computer vision developers.
26 60 Gary Bradski
27 55 Gary Bradski
h3. Creating new tickets
28 3 Gary Bradski
29 78 Gary Bradski
You first need to register at http://code.opencv.org. Then:
30 78 Gary Bradski
* Click the "Issues":http://code.opencv.org/projects/opencv/issues tab or the "Search" box to look for existing tickets - probably your problem is already known or even fixed in the OpenCV development branches. If that is the case, please comment the ticket with your "+1". It will help us to select hot issues for the next iteration.
31 7 Gary Bradski
32 78 Gary Bradski
* If you can't find your problem on tracker, please click the "New issue":http://code.opencv.org/projects/opencv/issues/new tab to create a new ticket.
33 78 Gary Bradski
** _Bug_ tracker (issue type) is used for bug reports. Please note, that OpenCV team is always busy with other urgent or high-priority issues, so you're invited to debug the issue by yourself.
34 78 Gary Bradski
** _Bugfix_ tracker is used in cases when you've debugged the issue. Congrats, you are the man! This is quite common when people contribute their patches for the open-source software. But please note, that if you really want to see your patch included to the library, better to work on a pull request. This will greatly simplify reviewing and testing process, see http://pullrequest.opencv.org.
35 78 Gary Bradski
** _Feature_ is used for feature requests. Please always provide motivation for your request. Even better, when you're ready to work on the task and just need some mentoring. In the latter case please inform us that you're ready to help, and just need guidance.
36 78 Gary Bradski
** _Patch_ tracker should be used for contributions. As with the _Bugfix_ tracker, please prefer to make a pull request on the GitHub, so OpenCV devs may review and test submitted code.
37 21 Gary Bradski
38 7 Gary Bradski
h3. Reporting bugs
39 1
40 78 Gary Bradski
* First of all ask about the issue at the Q&A forum: http://answers.opencv.org. Then try to debug it in your own environment, because it may take forever to just reproduce the issue on other workstation. If you succeed, submit the fix as a pull request, and your fix may be included to the very next OpenCV release! But if you can't debug it, please do as follows...
41 78 Gary Bradski
42 77 Gary Bradski
* Please, specify your platform (Windows 32/64bit, Linux x86/x64/ppc/..., MacOSX 32/64bit/ppc); compiler version; OpenCV version/revision; whether IPP, OpenMP, MMX, SSE ... have been enabled or not, and any other information that let us reproduce the environment, identify and localize the problem.
43 1
44 78 Gary Bradski
* A sample code reproducing the problem helps us the most. Please check source:samples - for the preferred style (small code size, cross-platform).  There is *no need* to provide any project files or makefiles, if it is a short single-file sample, we could build it and run in a minute. If we can reproduce the problem, we can fix it quickly.
45 51 Gary Bradski
46 51 Gary Bradski
* If your application is complex, and the problem happens somewhere in the middle, often it is still possible to create a short standalone sample: 
47 1
** First, capture and store the data that you pass to the function using FileStorage.
48 16 Gary Bradski
** Then copy the function call and put the corresponding reading from FileStorage in front of it.
49 17 Gary Bradski
50 16 Gary Bradski
h2. Topic Pages
51 16 Gary Bradski
52 1
* [[New functionality discussion]]
53 65 Gary Bradski
* [[TODOs]]
54 31 Gary Bradski
* [[Meeting_notes|Developer meeting notes]]
55 75 Gary Bradski
* [[CARMA platform, compilation and testing]]