OpenCV's documentation is online at http://docs.opencv.org/. The documentation includes a combined API reference for OpenCV's new C++ API, its new Python API (which is based on the C++ API), its old C API, and its old Python API (which is based on the C API). When looking up a class or function, be sure to read the section about the new Python API (cv2
module), not the old Python API (cv
module).
Note
The documentation entitled
OpenCV 2.1 Python Reference (http://opencv.willowgarage.com/documentation/python/) might show up in Google searches for OpenCV Python API
. Avoid this documentation, since it is out-of-date and covers only the old (C-like) Python API.
The documentation is also available as several downloadable PDF files:
API reference : http://docs.opencv.org/opencv2refman
Tutorials: http://docs.opencv.org/opencv_tutorials (These tutorials use C++ code. For a Python port of the tutorials' code, see Abid Rahman K.'s repository at http://goo.gl/EPsD1.)
User guide (incomplete): http://docs.opencv.org/opencv_user
If you write code on airplanes or other places without Internet access, you will definitely want to keep offline copies of the documentation.
If the documentation does not seem to answer your question, try talking to the OpenCV community. Here are some sites where you will find helpful people:
Official OpenCV forum: http://www.answers.opencv.org/questions/
Blog of David Millán Escrivá (one of this book's reviewers): http://blog.damiles.com/
Blog of Abid Rahman K. (one of this book's reviewers): http://www.opencvpython.blogspot.com/
My site for this book: http://nummist.com/opencv/
Last, if you are an advanced user who wants to try new features, bug-fixes, and sample scripts from the latest (unstable) OpenCV source code, have a look at the project's repository at https://github.com/Itseez/opencv/.