The Core Functionality (core module) {#tutorial_table_of_content_core}
=====================================

Here you will learn the about the basic building blocks of the library. A must read and know for
understanding how to manipulate the images on a pixel level.

-   @subpage tutorial_mat_the_basic_image_container

    *Compatibility:* \> OpenCV 2.0

    *Author:* Bernát Gábor

    You will learn how to store images in the memory and how to print out their content to the
    console.

-   @subpage tutorial_how_to_scan_images

    *Compatibility:* \> OpenCV 2.0

    *Author:* Bernát Gábor

    You'll find out how to scan images (go through each of the image pixels) with OpenCV.
    Bonus: time measurement with OpenCV.


-   @subpage tutorial_mat_mask_operations

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Bernát Gábor

    You'll find out how to scan images with neighbor access and use the @ref cv::filter2D
    function to apply kernel filters on images.

-   @subpage tutorial_mat_operations

    Reading/writing images from file, accessing pixels, primitive operations, visualizing images.

-   @subpage tutorial_adding_images

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    We will learn how to blend two images!

-   @subpage tutorial_basic_linear_transform

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    We will learn how to change our image appearance!

-   @subpage tutorial_basic_geometric_drawing

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    We will learn how to draw simple geometry with OpenCV!

-   @subpage tutorial_random_generator_and_text

    *Compatibility:* \> OpenCV 2.0

    *Author:* Ana Huamán

    We will draw some *fancy-looking* stuff using OpenCV!

-   @subpage tutorial_discrete_fourier_transform

    *Languages:* C++, Java, Python

    *Compatibility:* \> OpenCV 2.0

    *Author:* Bernát Gábor

    You will see how and why use the Discrete Fourier transformation with OpenCV.


-   @subpage tutorial_file_input_output_with_xml_yml

    *Compatibility:* \> OpenCV 2.0

    *Author:* Bernát Gábor

    You will see how to use the @ref cv::FileStorage data structure of OpenCV to write and read
    data to XML or YAML file format.

-   @subpage tutorial_interoperability_with_OpenCV_1

    *Compatibility:* \> OpenCV 2.0

    *Author:* Bernát Gábor

    Did you used OpenCV before its 2.0 version? Do you wanna know what happened with your library
    with 2.0? Don't you know how to convert your old OpenCV programs to the new C++ interface?
    Look here to shed light on all this questions.


-   @subpage tutorial_how_to_use_ippa_conversion

    *Compatibility:* \> OpenCV 2.0

    *Author:* Elena Gvozdeva

    You will see how to use the IPP Async with OpenCV.


-   @subpage tutorial_how_to_use_OpenCV_parallel_for_

    *Compatibility:* \>= OpenCV 2.4.3

    You will see how to use the OpenCV parallel_for_ to easily parallelize your code.
