.. toctree ::
The following links describe a set of basic OpenCV tutorials. All the source code mentioned here is provide as part of the OpenCV regular releases, so check before you start copy & pasting the code. The list of tutorials below is automatically generated from reST files located in our SVN repository.
.. note ::
YouTube videos yet to come...we have to think about them!
As always, we would be happy to hear your comments and receive your contributions on any tutorial.
* **INTRO**
* :ref: `Linux_Installation`
=============== ======================================================
|Install_Linux| *Title:* **Installation steps in Linux**
*Compatibility:* > OpenCV 2.0
We will learn how to setup OpenCV in your computer!
=============== ======================================================
.. |Install_Linux| image :: Intro/Linux_Installation/images/ubuntu_logo.jpeg
:height: 120pt
* :ref: `Windows_Installation`
================= ======================================================
|Install_Windows| *Title:* **Installation steps in Windows**
*Compatibility:* > OpenCV 2.0
You will learn how to setup OpenCV in your Windows Operating System!
================= ======================================================
.. |Install_Windows| image :: Intro/Windows_Installation/images/windows_logo.jpg
:height: 120pt
* :ref: `Linux_GCC_Usage`
=================== ======================================================
|Usage_Linux_GCC| *Title:* **Using OpenCV with gcc (and CMake)**
*Compatibility:* > OpenCV 2.0
We will learn how to compile your first project using gcc and CMake
=================== ======================================================
.. |Usage_Linux_GCC| image :: Intro/Linux_GCC_Usage/images/gccegg-65-2.png
:height: 120pt
* :ref: `Linux_Eclipse_Usage`
======================= ======================================================
|Usage_Linux_Eclipse| *Title:* **Using OpenCV with Eclipse (CDT plugin)**
*Compatibility:* > OpenCV 2.0
We will learn how to compile your first project using the Eclipse environment
======================= ======================================================
.. |Usage_Linux_Eclipse| image :: Intro/Linux_Eclipse_Usage/images/eclipse_cpp_logo.jpeg
:height: 120pt
* :ref: `Display_Image`
================= ======================================================
|Display_Image| *Title:* **Display an Image**
*Compatibility:* > OpenCV 2.0
We will learn how to display an image using OpenCV
================= ======================================================
.. |Display_Image| image :: Intro/Display_Image/images/Display_Image_Tutorial_Result.png
:height: 120pt
* :ref: `Load_Save_Image`
================== ======================================================
|Load_Save_Image| *Title:* **Load and save an Image**
*Compatibility:* > OpenCV 2.0
We will learn how to save an Image in OpenCV...plus a small conversion to grayscale
================== ======================================================
.. |Load_Save_Image| image :: Intro/Load_Save_Image/images/Load_Save_Image_Result_1.png
:height: 150pt
* **CX CORE**
* :ref: `Drawing_1`
=============== ======================================================
|Drawing_1| *Title:* **Basic Drawing**
*Compatibility:* > OpenCV 2.0
We will learn how to draw simple geometry with OpenCV!
=============== ======================================================
.. |Drawing_1| image :: CxCore/Matrix/Drawing_1/images/Drawing_1_Tutorial_Result_0.png
:height: 200pt
* :ref: `Drawing_2`
=============== ======================================================
|Drawing_2| *Title:* **Cool Drawing**
*Compatibility:* > OpenCV 2.0
We will draw some *fancy-looking* stuff using OpenCV!
=============== ======================================================
.. |Drawing_2| image :: CxCore/Matrix/Drawing_2/images/Drawing_2_Tutorial_Result_7.png
:height: 200pt
* **IMAGE PROCESSING**
* :ref: `Basic_Linear_Transform`
========================== =========================================================
|Basic_Linear_Transform| *Title:* **Changing the contrast and brightness of an image**
*Compatibility:* > OpenCV 2.0
We will learn how to change our image appearance!
========================== =========================================================
.. |Basic_Linear_Transform| image :: ImgProc/Basic_Linear_Transforms/images/Basic_Linear_Transform_Tutorial_Result_0.png
:height: 200pt
* :ref: `Adding_Images`
================= ======================================================
|Adding_Images| *Title:* **Linear Blending**
*Compatibility:* > OpenCV 2.0
We will learn how to blend two images!
================= ======================================================
.. |Adding_Images| image :: ImgProc/Adding_Images/images/Adding_Images_Tutorial_Result_0.png
:height: 200pt
* :ref: `Adding_Trackbars`
==================== ======================================================
|Adding_Trackbars| *Title:* **Creating Trackbars**
*Compatibility:* > OpenCV 2.0
We will learn how to add a Trackbar to our applications
==================== ======================================================
.. |Adding_Trackbars| image :: HighGUI/Adding_Trackbars/images/Adding_Trackbars_Tutorial_Cover.png
:height: 200pt
* :ref: `Smoothing`
===================== ======================================================
|Smoothing| *Title:* **Smoothing Images**
*Compatibility:* > OpenCV 2.0
Let's take a look at some basic linear filters!
===================== ======================================================
.. |Smoothing| image :: ImgProc/Smoothing/images/Smoothing_Tutorial_Cover.png
:height: 200pt
* :ref: `Morphology_1`
===================== ======================================================
|Morphology_1| *Title:* **Erosion and Dilation**
*Compatibility:* > OpenCV 2.0
Let's *change* the shape of objects!
===================== ======================================================
.. |Morphology_1| image :: ImgProc/Morphology_1/images/Morphology_1_Tutorial_Cover.png
:height: 200pt
* :ref: `Morphology_2`
===================== ======================================================
|Morphology_2| *Title:* **More advanced Morphology Transformations**
*Compatibility:* > OpenCV 2.0
Here we investigate different morphology operators
===================== ======================================================
.. |Morphology_2| image :: ImgProc/Morphology_2/images/Morphology_2_Tutorial_Cover.png
:height: 200pt
* :ref: `Pyramids`
===================== ======================================================
|Pyramids| *Title:* **Image Pyramids**
*Compatibility:* > OpenCV 2.0
What if I need a bigger/smaller image?
===================== ======================================================
.. |Pyramids| image :: ImgProc/Pyramids/images/Pyramids_Tutorial_Cover.png
:height: 200pt
* :ref: `Basic_Threshold`
===================== ======================================================
|Threshold| *Title:* **Basic Thresholding Operations**
*Compatibility:* > OpenCV 2.0
After so much processing, it is time to decide which pixels stay!
===================== ======================================================
.. |Threshold| image :: ImgProc/Threshold/images/Threshold_Tutorial_Cover.png
:height: 200pt