WikiStart

Version 85 (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 85 Gary Bradski
OpenCV (Open Source Computer Vision) is a library of programming functions for realtime computer vision. It uses a "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, iOS and Mac OS. It has more than 2500 optimized algorithms. Adopted all around the world, OpenCV has nearly 7 million downloads growing by nearly 200K/month. Usage ranges from interactive art, to mines inspection, stitching maps on the web on through advanced robotics.
6 1
7 85 Gary Bradski
* "User site":http://opencv.org/,  "Docs":http://docs.opencv.org/,  "Cheatsheet":http://docs.opencv.org/trunk/opencv_cheatsheet.pdf, "Help":http://answers.opencv.org.
8 84 Gary Bradski
* "Google Summer of Code 2013 (GSoC 2013) Ideas Page":http://code.opencv.org/projects/gsoc2013/wiki
9 78 Gary Bradski
* "News":http://opencv.org/category/news
10 34 Gary Bradski
* "Wiki map":http://code.opencv.org/projects/opencv/wiki/index
11 83 Gary Bradski
* [[How_to_contribute|How to Contribute]]
12 71 Gary Bradski
13 70 Gary Bradski
h2. Resources
14 69 Gary Bradski
15 1
* Homepage: http://opencv.org
16 78 Gary Bradski
* Q&A forum (questions, support): http://answers.opencv.org
17 85 Gary Bradski
* *Documentation:* http://opencv.org/documentation.html, including "books":http://opencv.org/books.html
18 79 Gary Bradski
* ChangeLog for the latest "releases":http://code.opencv.org/projects/opencv/wiki/ChangeLog
19 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.
20 82 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]].
21 78 Gary Bradski
<pre>
22 80 Gary Bradski
git clone git://github.com/Itseez/opencv.git
23 78 Gary Bradski
</pre>
24 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.
25 78 Gary Bradski
** Also OpenCV Extra was put to a separate repository: git://code.opencv.org/opencv_extra.git.
26 60 Gary Bradski
27 60 Gary Bradski
h2. Issue Tracker
28 60 Gary Bradski
29 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.
30 60 Gary Bradski
31 55 Gary Bradski
h3. Creating new tickets
32 3 Gary Bradski
33 78 Gary Bradski
You first need to register at http://code.opencv.org. Then:
34 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.
35 7 Gary Bradski
36 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.
37 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.
38 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.
39 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.
40 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.
41 21 Gary Bradski
42 7 Gary Bradski
h3. Reporting bugs
43 1
44 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...
45 78 Gary Bradski
46 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.
47 1
48 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.
49 51 Gary Bradski
50 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: 
51 1
** First, capture and store the data that you pass to the function using FileStorage.
52 16 Gary Bradski
** Then copy the function call and put the corresponding reading from FileStorage in front of it.
53 17 Gary Bradski
54 16 Gary Bradski
h2. Topic Pages
55 16 Gary Bradski
56 1
* [[New functionality discussion]]
57 65 Gary Bradski
* [[TODOs]]
58 31 Gary Bradski
* [[Meeting_notes|Developer meeting notes]]
59 75 Gary Bradski
* [[CARMA platform, compilation and testing]]