1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-31 08:13:04 +04:00

doc: tutorial refactor

This commit is contained in:
Maksim Shabunin
2020-12-05 01:46:00 +03:00
parent 6fdb7aee84
commit 461e26b60b
263 changed files with 623 additions and 878 deletions
@@ -4,6 +4,11 @@ Anisotropic image segmentation by a gradient structure tensor {#tutorial_anisotr
@prev_tutorial{tutorial_motion_deblur_filter}
@next_tutorial{tutorial_periodic_noise_removing_filter}
| | |
| -: | :- |
| Original author | Karpushin Vladislav |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -3,6 +3,11 @@ Basic Drawing {#tutorial_basic_geometric_drawing}
@next_tutorial{tutorial_random_generator_and_text}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goals
-----
@@ -4,6 +4,11 @@ Eroding and Dilating {#tutorial_erosion_dilatation}
@prev_tutorial{tutorial_gausian_median_blur_bilateral_filter}
@next_tutorial{tutorial_opening_closing_hats}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Smoothing Images {#tutorial_gausian_median_blur_bilateral_filter}
@prev_tutorial{tutorial_random_generator_and_text}
@next_tutorial{tutorial_erosion_dilatation}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Back Projection {#tutorial_back_projection}
@prev_tutorial{tutorial_histogram_comparison}
@next_tutorial{tutorial_template_matching}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Histogram Calculation {#tutorial_histogram_calculation}
@prev_tutorial{tutorial_histogram_equalization}
@next_tutorial{tutorial_histogram_comparison}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Histogram Comparison {#tutorial_histogram_comparison}
@prev_tutorial{tutorial_histogram_calculation}
@next_tutorial{tutorial_back_projection}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Histogram Equalization {#tutorial_histogram_equalization}
@prev_tutorial{tutorial_warp_affine}
@next_tutorial{tutorial_histogram_calculation}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Template Matching {#tutorial_template_matching}
@prev_tutorial{tutorial_back_projection}
@next_tutorial{tutorial_find_contours}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Hit-or-Miss {#tutorial_hitOrMiss}
@prev_tutorial{tutorial_opening_closing_hats}
@next_tutorial{tutorial_morph_lines_detection}
| | |
| -: | :- |
| Original author | Lorena García |
| Compatibility | OpenCV >= 3.0 |
Goal
----
Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

@@ -4,6 +4,11 @@ Canny Edge Detector {#tutorial_canny_detector}
@prev_tutorial{tutorial_laplace_operator}
@next_tutorial{tutorial_hough_lines}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Adding borders to your images {#tutorial_copyMakeBorder}
@prev_tutorial{tutorial_filter_2d}
@next_tutorial{tutorial_sobel_derivatives}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Image Segmentation with Distance Transform and Watershed Algorithm {#tutorial_di
@prev_tutorial{tutorial_point_polygon_test}
@next_tutorial{tutorial_out_of_focus_deblur_filter}
| | |
| -: | :- |
| Original author | Theodore Tsesmelis |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Making your own linear filters! {#tutorial_filter_2d}
@prev_tutorial{tutorial_threshold_inRange}
@next_tutorial{tutorial_copyMakeBorder}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Hough Circle Transform {#tutorial_hough_circle}
@prev_tutorial{tutorial_hough_lines}
@next_tutorial{tutorial_remap}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Hough Line Transform {#tutorial_hough_lines}
@prev_tutorial{tutorial_canny_detector}
@next_tutorial{tutorial_hough_circle}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Laplace Operator {#tutorial_laplace_operator}
@prev_tutorial{tutorial_sobel_derivatives}
@next_tutorial{tutorial_canny_detector}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Remapping {#tutorial_remap}
@prev_tutorial{tutorial_hough_circle}
@next_tutorial{tutorial_warp_affine}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Sobel Derivatives {#tutorial_sobel_derivatives}
@prev_tutorial{tutorial_copyMakeBorder}
@next_tutorial{tutorial_laplace_operator}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Affine Transformations {#tutorial_warp_affine}
@prev_tutorial{tutorial_remap}
@next_tutorial{tutorial_histogram_equalization}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Extract horizontal and vertical lines by using morphological operations {#tutori
@prev_tutorial{tutorial_hitOrMiss}
@next_tutorial{tutorial_pyramids}
| | |
| -: | :- |
| Original author | Theodore Tsesmelis |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Motion Deblur Filter {#tutorial_motion_deblur_filter}
@prev_tutorial{tutorial_out_of_focus_deblur_filter}
@next_tutorial{tutorial_anisotropic_image_segmentation_by_a_gst}
| | |
| -: | :- |
| Original author | Karpushin Vladislav |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ More Morphology Transformations {#tutorial_opening_closing_hats}
@prev_tutorial{tutorial_erosion_dilatation}
@next_tutorial{tutorial_hitOrMiss}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Out-of-focus Deblur Filter {#tutorial_out_of_focus_deblur_filter}
@prev_tutorial{tutorial_distance_transform}
@next_tutorial{tutorial_motion_deblur_filter}
| | |
| -: | :- |
| Original author | Karpushin Vladislav |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -3,6 +3,11 @@ Periodic Noise Removing Filter {#tutorial_periodic_noise_removing_filter}
@prev_tutorial{tutorial_anisotropic_image_segmentation_by_a_gst}
| | |
| -: | :- |
| Original author | Karpushin Vladislav |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Image Pyramids {#tutorial_pyramids}
@prev_tutorial{tutorial_morph_lines_detection}
@next_tutorial{tutorial_threshold}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Random generator and text with OpenCV {#tutorial_random_generator_and_text}
@prev_tutorial{tutorial_basic_geometric_drawing}
@next_tutorial{tutorial_gausian_median_blur_bilateral_filter}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goals
-----
@@ -4,6 +4,11 @@ Creating Bounding boxes and circles for contours {#tutorial_bounding_rects_circl
@prev_tutorial{tutorial_hull}
@next_tutorial{tutorial_bounding_rotated_ellipses}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Creating Bounding rotated boxes and ellipses for contours {#tutorial_bounding_ro
@prev_tutorial{tutorial_bounding_rects_circles}
@next_tutorial{tutorial_moments}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Finding contours in your image {#tutorial_find_contours}
@prev_tutorial{tutorial_template_matching}
@next_tutorial{tutorial_hull}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Convex Hull {#tutorial_hull}
@prev_tutorial{tutorial_find_contours}
@next_tutorial{tutorial_bounding_rects_circles}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Image Moments {#tutorial_moments}
@prev_tutorial{tutorial_bounding_rotated_ellipses}
@next_tutorial{tutorial_point_polygon_test}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Point Polygon Test {#tutorial_point_polygon_test}
@prev_tutorial{tutorial_moments}
@next_tutorial{tutorial_distance_transform}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -1,298 +1,52 @@
Image Processing (imgproc module) {#tutorial_table_of_content_imgproc}
=================================
In this section you will learn about the image processing (manipulation) functions inside OpenCV.
Basic
-----
- @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
*Languages:* C++
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
We will draw some *fancy-looking* stuff using OpenCV!
- @subpage tutorial_gausian_median_blur_bilateral_filter
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Let's take a look at some basic linear filters!
- @subpage tutorial_erosion_dilatation
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
Author: Ana Huamán
Let's *change* the shape of objects!
- @subpage tutorial_opening_closing_hats
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Here we investigate different morphology operators
- @subpage tutorial_hitOrMiss
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.4
*Author:* Lorena García
Learn how to find patterns in binary images using the Hit-or-Miss operation
- @subpage tutorial_morph_lines_detection
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Theodore Tsesmelis
Here we will show how we can use different morphological operators to extract horizontal and vertical lines
- @subpage tutorial_pyramids
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
What if I need a bigger/smaller image?
- @subpage tutorial_threshold
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
After so much processing, it is time to decide which pixels stay
- @subpage tutorial_threshold_inRange
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Rishiraj Surti
Thresholding operations using inRange function.
Transformations
---------------
- @subpage tutorial_filter_2d
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn to design our own filters by using OpenCV functions
- @subpage tutorial_copyMakeBorder
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to pad our images
- @subpage tutorial_sobel_derivatives
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to calculate gradients and use them to detect edges
- @subpage tutorial_laplace_operator
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn about the *Laplace* operator and how to detect edges with it
- @subpage tutorial_canny_detector
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn a sophisticated alternative to detect edges
- @subpage tutorial_hough_lines
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to detect lines
- @subpage tutorial_hough_circle
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to detect circles
- @subpage tutorial_remap
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to manipulate pixels locations
- @subpage tutorial_warp_affine
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to rotate, translate and scale our images
Histograms
----------
- @subpage tutorial_histogram_equalization
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to improve the contrast in our images
- @subpage tutorial_histogram_calculation
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to create and generate histograms
- @subpage tutorial_histogram_comparison
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn to calculate metrics between histograms
- @subpage tutorial_back_projection
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to use histograms to find similar objects in images
- @subpage tutorial_template_matching
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to match templates in an image
- @subpage tutorial_table_of_contents_contours
Learn how to find contours in images and investigate their properties and features.
Contours
--------
- @subpage tutorial_find_contours
- @subpage tutorial_hull
- @subpage tutorial_bounding_rects_circles
- @subpage tutorial_bounding_rotated_ellipses
- @subpage tutorial_moments
- @subpage tutorial_point_polygon_test
Others
------
- @subpage tutorial_distance_transform
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Theodore Tsesmelis
Where we learn to segment objects using Laplacian filtering, the Distance Transformation and the Watershed algorithm.
- @subpage tutorial_out_of_focus_deblur_filter
*Languages:* C++
*Compatibility:* \> OpenCV 2.0
*Author:* Karpushin Vladislav
You will learn how to recover an out-of-focus image by Wiener filter.
- @subpage tutorial_motion_deblur_filter
*Languages:* C++
*Compatibility:* \> OpenCV 2.0
*Author:* Karpushin Vladislav
You will learn how to recover an image with motion blur distortion using a Wiener filter.
- @subpage tutorial_anisotropic_image_segmentation_by_a_gst
*Languages:* C++, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Karpushin Vladislav
You will learn how to segment an anisotropic image with a single local orientation by a gradient structure tensor.
- @subpage tutorial_periodic_noise_removing_filter
*Languages:* C++
*Compatibility:* \> OpenCV 2.0
*Author:* Karpushin Vladislav
You will learn how to remove periodic noise in the Fourier domain.
@@ -1,62 +1,4 @@
Contours in OpenCV {#tutorial_table_of_contents_contours}
==================
- @subpage tutorial_find_contours
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to find contours of objects in our image
- @subpage tutorial_hull
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to get hull contours and draw them
- @subpage tutorial_bounding_rects_circles
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to obtain bounding boxes and circles for our contours
- @subpage tutorial_bounding_rotated_ellipses
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to obtain rotated bounding boxes and ellipses for our contours
- @subpage tutorial_moments
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn to calculate the moments of an image
- @subpage tutorial_point_polygon_test
*Languages:* C++, Java, Python
*Compatibility:* \> OpenCV 2.0
*Author:* Ana Huamán
Where we learn how to calculate distances from the image to contours
Content has been moved to this page: @ref tutorial_table_of_content_imgproc
@@ -4,6 +4,11 @@ Basic Thresholding Operations {#tutorial_threshold}
@prev_tutorial{tutorial_pyramids}
@next_tutorial{tutorial_threshold_inRange}
| | |
| -: | :- |
| Original author | Ana Huamán |
| Compatibility | OpenCV >= 3.0 |
Goal
----
@@ -4,6 +4,11 @@ Thresholding Operations using inRange {#tutorial_threshold_inRange}
@prev_tutorial{tutorial_threshold}
@next_tutorial{tutorial_filter_2d}
| | |
| -: | :- |
| Original author | Lorena García |
| Compatibility | Rishiraj Surti |
Goal
----