Doxygen tutorials: python basic
This commit is contained in:
87
doc/py_tutorials/py_setup/py_intro/py_intro.markdown
Normal file
87
doc/py_tutorials/py_setup/py_intro/py_intro.markdown
Normal file
@@ -0,0 +1,87 @@
|
||||
Introduction to OpenCV-Python Tutorials {#tutorial_py_intro}
|
||||
=======================================
|
||||
|
||||
OpenCV
|
||||
------
|
||||
|
||||
OpenCV was started at Intel in 1999 by **Gary Bradsky**, and the first release came out in 2000.
|
||||
**Vadim Pisarevsky** joined Gary Bradsky to manage Intel's Russian software OpenCV team. In 2005,
|
||||
OpenCV was used on Stanley, the vehicle that won the 2005 DARPA Grand Challenge. Later, its active
|
||||
development continued under the support of Willow Garage with Gary Bradsky and Vadim Pisarevsky
|
||||
leading the project. OpenCV now supports a multitude of algorithms related to Computer Vision and
|
||||
Machine Learning and is expanding day by day.
|
||||
|
||||
OpenCV supports a wide variety of programming languages such as C++, Python, Java, etc., and is
|
||||
available on different platforms including Windows, Linux, OS X, Android, and iOS. Interfaces for
|
||||
high-speed GPU operations based on CUDA and OpenCL are also under active development.
|
||||
|
||||
OpenCV-Python is the Python API for OpenCV, combining the best qualities of the OpenCV C++ API and
|
||||
the Python language.
|
||||
|
||||
OpenCV-Python
|
||||
-------------
|
||||
|
||||
OpenCV-Python is a library of Python bindings designed to solve computer vision problems.
|
||||
|
||||
Python is a general purpose programming language started by **Guido van Rossum** that became very
|
||||
popular very quickly, mainly because of its simplicity and code readability. It enables the
|
||||
programmer to express ideas in fewer lines of code without reducing readability.
|
||||
|
||||
Compared to languages like C/C++, Python is slower. That said, Python can be easily extended with
|
||||
C/C++, which allows us to write computationally intensive code in C/C++ and create Python wrappers
|
||||
that can be used as Python modules. This gives us two advantages: first, the code is as fast as the
|
||||
original C/C++ code (since it is the actual C++ code working in background) and second, it easier to
|
||||
code in Python than C/C++. OpenCV-Python is a Python wrapper for the original OpenCV C++
|
||||
implementation.
|
||||
|
||||
OpenCV-Python makes use of **Numpy**, which is a highly optimized library for numerical operations
|
||||
with a MATLAB-style syntax. All the OpenCV array structures are converted to and from Numpy arrays.
|
||||
This also makes it easier to integrate with other libraries that use Numpy such as SciPy and
|
||||
Matplotlib.
|
||||
|
||||
OpenCV-Python Tutorials
|
||||
-----------------------
|
||||
|
||||
OpenCV introduces a new set of tutorials which will guide you through various functions available in
|
||||
OpenCV-Python. **This guide is mainly focused on OpenCV 3.x version** (although most of the
|
||||
tutorials will also work with OpenCV 2.x).
|
||||
|
||||
Prior knowledge of Python and Numpy is recommended as they won't be covered in this guide.
|
||||
**Proficiency with Numpy is a must in order to write optimized code using OpenCV-Python.**
|
||||
|
||||
This tutorial was originally started by *Abid Rahman K.* as part of the Google Summer of Code 2013
|
||||
program under the guidance of *Alexander Mordvintsev*.
|
||||
|
||||
OpenCV Needs You !!!
|
||||
--------------------
|
||||
|
||||
Since OpenCV is an open source initiative, all are welcome to make contributions to the library,
|
||||
documentation, and tutorials. If you find any mistake in this tutorial (from a small spelling
|
||||
mistake to an egregious error in code or concept), feel free to correct it by cloning OpenCV in
|
||||
[GitHub](https://github.com/Itseez/opencv) and submitting a pull request. OpenCV developers will
|
||||
check your pull request, give you important feedback and (once it passes the approval of the
|
||||
reviewer) it will be merged into OpenCV. You will then become an open source contributor :-)
|
||||
|
||||
As new modules are added to OpenCV-Python, this tutorial will have to be expanded. If you are
|
||||
familiar with a particular algorithm and can write up a tutorial including basic theory of the
|
||||
algorithm and code showing example usage, please do so.
|
||||
|
||||
Remember, we **together** can make this project a great success !!!
|
||||
|
||||
Contributors
|
||||
------------
|
||||
|
||||
Below is the list of contributors who submitted tutorials to OpenCV-Python.
|
||||
|
||||
-# Alexander Mordvintsev (GSoC-2013 mentor)
|
||||
2. Abid Rahman K. (GSoC-2013 intern)
|
||||
|
||||
Additional Resources
|
||||
--------------------
|
||||
|
||||
-# A Quick guide to Python - [A Byte of Python](http://swaroopch.com/notes/python/)
|
||||
2. [Basic Numpy Tutorials](http://wiki.scipy.org/Tentative_NumPy_Tutorial)
|
||||
3. [Numpy Examples List](http://wiki.scipy.org/Numpy_Example_List)
|
||||
4. [OpenCV Documentation](http://docs.opencv.org/)
|
||||
5. [OpenCV Forum](http://answers.opencv.org/questions/)
|
||||
|
Reference in New Issue
Block a user