Added TOC to most of tutorials
authorMaksim Shabunin <maksim.shabunin@gmail.com>
Mon, 7 Dec 2020 16:13:54 +0000 (19:13 +0300)
committerMaksim Shabunin <maksim.shabunin@gmail.com>
Mon, 7 Dec 2020 16:13:54 +0000 (19:13 +0300)
93 files changed:
doc/tutorials/app/intelperc.markdown
doc/tutorials/app/kinect_openni.markdown
doc/tutorials/app/orbbec_astra.markdown
doc/tutorials/app/raster_io_gdal.markdown
doc/tutorials/app/trackbar.markdown
doc/tutorials/app/video_input_psnr_ssim.markdown
doc/tutorials/app/video_write.markdown
doc/tutorials/calib3d/camera_calibration/camera_calibration.markdown
doc/tutorials/calib3d/camera_calibration_pattern/camera_calibration_pattern.markdown
doc/tutorials/calib3d/camera_calibration_square_chess/camera_calibration_square_chess.markdown
doc/tutorials/calib3d/interactive_calibration/interactive_calibration.markdown
doc/tutorials/calib3d/real_time_pose/real_time_pose.markdown
doc/tutorials/core/adding_images/adding_images.markdown
doc/tutorials/core/basic_linear_transform/basic_linear_transform.markdown
doc/tutorials/core/discrete_fourier_transform/discrete_fourier_transform.markdown
doc/tutorials/core/file_input_output_with_xml_yml/file_input_output_with_xml_yml.markdown
doc/tutorials/core/how_to_scan_images/how_to_scan_images.markdown
doc/tutorials/core/how_to_use_OpenCV_parallel_for_/how_to_use_OpenCV_parallel_for_.markdown
doc/tutorials/core/mat-mask-operations/mat_mask_operations.markdown
doc/tutorials/core/mat_operations.markdown
doc/tutorials/core/mat_the_basic_image_container/mat_the_basic_image_container.markdown
doc/tutorials/dnn/dnn_OCR/dnn_OCR.markdown
doc/tutorials/dnn/dnn_android/dnn_android.markdown
doc/tutorials/dnn/dnn_custom_layers/dnn_custom_layers.md
doc/tutorials/dnn/dnn_googlenet/dnn_googlenet.markdown
doc/tutorials/dnn/dnn_halide/dnn_halide.markdown
doc/tutorials/dnn/dnn_halide_scheduling/dnn_halide_scheduling.markdown
doc/tutorials/dnn/dnn_javascript/dnn_javascript.markdown
doc/tutorials/dnn/dnn_text_spotting/dnn_text_spotting.markdown
doc/tutorials/dnn/dnn_yolo/dnn_yolo.markdown
doc/tutorials/features2d/akaze_matching/akaze_matching.markdown
doc/tutorials/features2d/akaze_tracking/akaze_tracking.markdown
doc/tutorials/features2d/detection_of_planar_objects/detection_of_planar_objects.markdown
doc/tutorials/features2d/feature_description/feature_description.markdown
doc/tutorials/features2d/feature_detection/feature_detection.markdown
doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.markdown
doc/tutorials/features2d/feature_homography/feature_homography.markdown
doc/tutorials/features2d/homography/homography.markdown
doc/tutorials/features2d/trackingmotion/corner_subpixels/corner_subpixels.markdown
doc/tutorials/features2d/trackingmotion/generic_corner_detector/generic_corner_detector.markdown
doc/tutorials/features2d/trackingmotion/good_features_to_track/good_features_to_track.markdown
doc/tutorials/features2d/trackingmotion/harris_detector/harris_detector.markdown
doc/tutorials/gpu/gpu-basics-similarity/gpu_basics_similarity.markdown
doc/tutorials/gpu/gpu-thrust-interop/gpu_thrust_interop.markdown
doc/tutorials/imgproc/anisotropic_image_segmentation/anisotropic_image_segmentation.markdown
doc/tutorials/imgproc/basic_geometric_drawing/basic_geometric_drawing.markdown
doc/tutorials/imgproc/erosion_dilatation/erosion_dilatation.markdown
doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.markdown
doc/tutorials/imgproc/histograms/back_projection/back_projection.markdown
doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.markdown
doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.markdown
doc/tutorials/imgproc/histograms/histogram_equalization/histogram_equalization.markdown
doc/tutorials/imgproc/histograms/template_matching/template_matching.markdown
doc/tutorials/imgproc/hitOrMiss/hitOrMiss.markdown
doc/tutorials/imgproc/imgtrans/canny_detector/canny_detector.markdown
doc/tutorials/imgproc/imgtrans/copyMakeBorder/copyMakeBorder.markdown
doc/tutorials/imgproc/imgtrans/distance_transformation/distance_transform.markdown
doc/tutorials/imgproc/imgtrans/filter_2d/filter_2d.markdown
doc/tutorials/imgproc/imgtrans/hough_circle/hough_circle.markdown
doc/tutorials/imgproc/imgtrans/hough_lines/hough_lines.markdown
doc/tutorials/imgproc/imgtrans/laplace_operator/laplace_operator.markdown
doc/tutorials/imgproc/imgtrans/remap/remap.markdown
doc/tutorials/imgproc/imgtrans/sobel_derivatives/sobel_derivatives.markdown
doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.markdown
doc/tutorials/imgproc/morph_lines_detection/morph_lines_detection.md
doc/tutorials/imgproc/motion_deblur_filter/motion_deblur_filter.markdown
doc/tutorials/imgproc/opening_closing_hats/opening_closing_hats.markdown
doc/tutorials/imgproc/out_of_focus_deblur_filter/out_of_focus_deblur_filter.markdown
doc/tutorials/imgproc/periodic_noise_removing_filter/periodic_noise_removing_filter.markdown
doc/tutorials/imgproc/pyramids/pyramids.markdown
doc/tutorials/imgproc/random_generator_and_text/random_generator_and_text.markdown
doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.markdown
doc/tutorials/imgproc/shapedescriptors/bounding_rotated_ellipses/bounding_rotated_ellipses.markdown
doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.markdown
doc/tutorials/imgproc/shapedescriptors/hull/hull.markdown
doc/tutorials/imgproc/shapedescriptors/moments/moments.markdown
doc/tutorials/imgproc/shapedescriptors/point_polygon_test/point_polygon_test.markdown
doc/tutorials/imgproc/threshold/threshold.markdown
doc/tutorials/imgproc/threshold_inRange/threshold_inRange.markdown
doc/tutorials/ios/hello/hello.markdown
doc/tutorials/ios/image_manipulation/image_manipulation.markdown
doc/tutorials/ios/ios_install/ios_install.markdown
doc/tutorials/ios/video_processing/video_processing.markdown
doc/tutorials/others/background_subtraction.markdown
doc/tutorials/others/cascade_classifier.markdown
doc/tutorials/others/hdr_imaging.markdown
doc/tutorials/others/introduction_to_pca.markdown
doc/tutorials/others/introduction_to_svm.markdown
doc/tutorials/others/meanshift.markdown
doc/tutorials/others/non_linear_svms.markdown
doc/tutorials/others/optical_flow.markdown
doc/tutorials/others/stitcher.markdown
doc/tutorials/others/traincascade.markdown

index 6a6a5e5..5c036a6 100644 (file)
@@ -1,6 +1,8 @@
 Using Creative Senz3D and other Intel RealSense SDK compatible depth sensors {#tutorial_intelperc}
 =======================================================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_orbbec_astra}
 
 **Note**: This tutorial is partially obsolete since PerC SDK has been replaced with RealSense SDK
index aadaec5..e235a97 100644 (file)
@@ -1,6 +1,8 @@
 Using Kinect and other OpenNI compatible depth sensors {#tutorial_kinect_openni}
 ======================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_video_write}
 @next_tutorial{tutorial_orbbec_astra}
 
index 8c5ebcd..7c39229 100644 (file)
@@ -1,6 +1,8 @@
 Using Orbbec Astra 3D cameras {#tutorial_orbbec_astra}
 ======================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_kinect_openni}
 @next_tutorial{tutorial_intelperc}
 
index 7cdc2a2..73574cd 100644 (file)
@@ -1,6 +1,8 @@
 Reading Geospatial Raster files with GDAL {#tutorial_raster_io_gdal}
 =========================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_trackbar}
 @next_tutorial{tutorial_video_input_psnr_ssim}
 
index 9f2741e..2b88114 100644 (file)
@@ -1,6 +1,8 @@
 Adding a Trackbar to our applications! {#tutorial_trackbar}
 ======================================
 
+@tableofcontents
+
 @next_tutorial{tutorial_raster_io_gdal}
 
 |    |    |
index b1c1344..e212c4e 100644 (file)
@@ -1,6 +1,8 @@
 Video Input with OpenCV and similarity measurement {#tutorial_video_input_psnr_ssim}
 ==================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_raster_io_gdal}
 @next_tutorial{tutorial_video_write}
 
index e52bc85..bcd288b 100644 (file)
@@ -1,6 +1,8 @@
 Creating a video with OpenCV {#tutorial_video_write}
 ============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_video_input_psnr_ssim}
 @next_tutorial{tutorial_kinect_openni}
 
index fd71bfc..00e1e96 100644 (file)
@@ -1,6 +1,8 @@
 Camera calibration With OpenCV {#tutorial_camera_calibration}
 ==============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_camera_calibration_square_chess}
 @next_tutorial{tutorial_real_time_pose}
 
index 0ddd857..c87f9f9 100644 (file)
@@ -1,6 +1,8 @@
 Create calibration pattern {#tutorial_camera_calibration_pattern}
 =========================================
 
+@tableofcontents
+
 @next_tutorial{tutorial_camera_calibration_square_chess}
 
 |    |    |
index 98d732d..b278bb8 100644 (file)
@@ -1,6 +1,8 @@
 Camera calibration with square chessboard {#tutorial_camera_calibration_square_chess}
 =========================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_camera_calibration_pattern}
 @next_tutorial{tutorial_camera_calibration}
 
index 5f2ee51..3c4f0b0 100644 (file)
@@ -1,6 +1,8 @@
 Interactive camera calibration application {#tutorial_interactive_calibration}
 ==============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_real_time_pose}
 
 |    |    |
index 4a9cf55..e14273c 100644 (file)
@@ -1,6 +1,8 @@
 Real Time pose estimation of a textured object {#tutorial_real_time_pose}
 ==============================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_camera_calibration}
 @next_tutorial{tutorial_interactive_calibration}
 
index 4ccad0c..3cec9f1 100644 (file)
@@ -1,6 +1,8 @@
 Adding (blending) two images using OpenCV {#tutorial_adding_images}
 =========================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_mat_operations}
 @next_tutorial{tutorial_basic_linear_transform}
 
index d9c23bf..75bd655 100644 (file)
@@ -1,6 +1,8 @@
 Changing the contrast and brightness of an image! {#tutorial_basic_linear_transform}
 =================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_adding_images}
 @next_tutorial{tutorial_discrete_fourier_transform}
 
index 277a3a2..1701bab 100644 (file)
@@ -1,6 +1,8 @@
 Discrete Fourier Transform {#tutorial_discrete_fourier_transform}
 ==========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_basic_linear_transform}
 @next_tutorial{tutorial_file_input_output_with_xml_yml}
 
index 0abaa4b..da060cf 100644 (file)
@@ -1,6 +1,8 @@
 File Input and Output using XML and YAML files {#tutorial_file_input_output_with_xml_yml}
 ==============================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_discrete_fourier_transform}
 @next_tutorial{tutorial_how_to_use_OpenCV_parallel_for_}
 
index c80282d..d19936e 100644 (file)
@@ -1,6 +1,8 @@
 How to scan images, lookup tables and time measurement with OpenCV {#tutorial_how_to_scan_images}
 ==================================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_mat_the_basic_image_container}
 @next_tutorial{tutorial_mat_mask_operations}
 
index 0ad345a..92f73b7 100644 (file)
@@ -1,6 +1,8 @@
 How to use the OpenCV parallel_for_ to parallelize your code {#tutorial_how_to_use_OpenCV_parallel_for_}
 ==================================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_file_input_output_with_xml_yml}
 
 |    |    |
index 52ba2ec..43c71d7 100644 (file)
@@ -1,6 +1,8 @@
 Mask operations on matrices {#tutorial_mat_mask_operations}
 ===========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_how_to_scan_images}
 @next_tutorial{tutorial_mat_operations}
 
index 2577751..331a847 100644 (file)
@@ -1,6 +1,8 @@
 Operations with images {#tutorial_mat_operations}
 ======================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_mat_mask_operations}
 @next_tutorial{tutorial_adding_images}
 
index ed7cce9..4f6f2b8 100644 (file)
@@ -1,6 +1,8 @@
 Mat - The Basic Image Container {#tutorial_mat_the_basic_image_container}
 ===============================
 
+@tableofcontents
+
 @next_tutorial{tutorial_how_to_scan_images}
 
 |    |    |
index 7093041..48a5599 100644 (file)
@@ -1,5 +1,7 @@
 # How to run custom OCR model {#tutorial_dnn_OCR}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_custom_layers}
 @next_tutorial{tutorial_dnn_text_spotting}
 
index 8d6687e..6ab67b3 100644 (file)
@@ -1,5 +1,7 @@
 # How to run deep networks on Android device {#tutorial_dnn_android}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_halide_scheduling}
 @next_tutorial{tutorial_dnn_yolo}
 
index 915ff4f..07c3fb4 100644 (file)
@@ -1,5 +1,7 @@
 # Custom deep learning layers support {#tutorial_dnn_custom_layers}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_javascript}
 @next_tutorial{tutorial_dnn_OCR}
 
index 0096a31..a886e9e 100644 (file)
@@ -1,6 +1,8 @@
 Load Caffe framework models  {#tutorial_dnn_googlenet}
 ===========================
 
+@tableofcontents
+
 @next_tutorial{tutorial_dnn_halide}
 
 |    |    |
index 9737007..84ab50c 100644 (file)
@@ -1,5 +1,7 @@
 # How to enable Halide backend for improve efficiency  {#tutorial_dnn_halide}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_googlenet}
 @next_tutorial{tutorial_dnn_halide_scheduling}
 
index 107cedb..e4a6f1f 100644 (file)
@@ -1,5 +1,7 @@
 # How to schedule your network for Halide backend {#tutorial_dnn_halide_scheduling}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_halide}
 @next_tutorial{tutorial_dnn_android}
 
index 5bcd746..49b6f33 100644 (file)
@@ -1,5 +1,7 @@
 # How to run deep networks in browser {#tutorial_dnn_javascript}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_yolo}
 @next_tutorial{tutorial_dnn_custom_layers}
 
index 3cedbb9..603ae9a 100644 (file)
@@ -1,5 +1,7 @@
 # High Level API: TextDetectionModel and TextRecognitionModel {#tutorial_dnn_text_spotting}
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_OCR}
 
 |    |    |
index 0330ed8..0973396 100644 (file)
@@ -1,6 +1,8 @@
 YOLO DNNs  {#tutorial_dnn_yolo}
 ===============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_dnn_android}
 @next_tutorial{tutorial_dnn_javascript}
 
index 3a7a48f..9cb920f 100644 (file)
@@ -1,6 +1,8 @@
 AKAZE local features matching {#tutorial_akaze_matching}
 =============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_detection_of_planar_objects}
 @next_tutorial{tutorial_akaze_tracking}
 
index 66d0200..dd23957 100644 (file)
@@ -1,6 +1,8 @@
 AKAZE and ORB planar tracking {#tutorial_akaze_tracking}
 =============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_akaze_matching}
 @next_tutorial{tutorial_homography}
 
index 155c30a..2d19e33 100644 (file)
@@ -1,6 +1,8 @@
 Detection of planar objects {#tutorial_detection_of_planar_objects}
 ===========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_feature_homography}
 @next_tutorial{tutorial_akaze_matching}
 
index b24d3b4..1b77b6a 100644 (file)
@@ -1,6 +1,8 @@
 Feature Description {#tutorial_feature_description}
 ===================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_feature_detection}
 @next_tutorial{tutorial_feature_flann_matcher}
 
index bf61943..0d52877 100644 (file)
@@ -1,6 +1,8 @@
 Feature Detection {#tutorial_feature_detection}
 =================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_corner_subpixels}
 @next_tutorial{tutorial_feature_description}
 
index 79f1424..1416604 100644 (file)
@@ -1,6 +1,8 @@
 Feature Matching with FLANN {#tutorial_feature_flann_matcher}
 ===========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_feature_description}
 @next_tutorial{tutorial_feature_homography}
 
index f6c3838..4b75c7f 100644 (file)
@@ -1,6 +1,8 @@
 Features2D + Homography to find a known object {#tutorial_feature_homography}
 ==============================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_feature_flann_matcher}
 @next_tutorial{tutorial_detection_of_planar_objects}
 
index fdcfa3b..10690dd 100644 (file)
@@ -1,6 +1,8 @@
 Basic concepts of the homography explained with code {#tutorial_homography}
 ====================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_akaze_tracking}
 
 |    |    |
index 9831d67..e43fc3b 100644 (file)
@@ -1,6 +1,8 @@
 Detecting corners location in subpixels {#tutorial_corner_subpixels}
 =======================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_generic_corner_detector}
 @next_tutorial{tutorial_feature_detection}
 
index 93cdc2a..def9571 100644 (file)
@@ -1,6 +1,8 @@
 Creating your own corner detector {#tutorial_generic_corner_detector}
 =================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_good_features_to_track}
 @next_tutorial{tutorial_corner_subpixels}
 
index 5b57983..19023c2 100644 (file)
@@ -1,6 +1,8 @@
 Shi-Tomasi corner detector {#tutorial_good_features_to_track}
 ==========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_harris_detector}
 @next_tutorial{tutorial_generic_corner_detector}
 
index 7179c4c..1ed9cd5 100644 (file)
@@ -1,6 +1,8 @@
 Harris corner detector {#tutorial_harris_detector}
 ======================
 
+@tableofcontents
+
 @next_tutorial{tutorial_good_features_to_track}
 
 |    |    |
index 74840ef..60e136f 100644 (file)
@@ -1,6 +1,9 @@
 @cond CUDA_MODULES
 Similarity check (PNSR and SSIM) on the GPU {#tutorial_gpu_basics_similarity}
 ===========================================
+
+@tableofcontents
+
 @todo update this tutorial
 
 @next_tutorial{tutorial_gpu_thrust_interop}
index c930f88..b5d79ab 100644 (file)
@@ -2,6 +2,8 @@
 Using a cv::cuda::GpuMat with thrust {#tutorial_gpu_thrust_interop}
 ===========================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_gpu_basics_similarity}
 
 Goal
index e8e130b..d480a19 100644 (file)
@@ -1,6 +1,8 @@
 Anisotropic image segmentation by a gradient structure tensor {#tutorial_anisotropic_image_segmentation_by_a_gst}
 ==========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_motion_deblur_filter}
 @next_tutorial{tutorial_periodic_noise_removing_filter}
 
index 29439d3..289000c 100644 (file)
@@ -1,6 +1,8 @@
 Basic Drawing {#tutorial_basic_geometric_drawing}
 =============
 
+@tableofcontents
+
 @next_tutorial{tutorial_random_generator_and_text}
 
 |    |    |
index 228f0dc..99179f7 100644 (file)
@@ -1,6 +1,8 @@
 Eroding and Dilating {#tutorial_erosion_dilatation}
 ====================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_gausian_median_blur_bilateral_filter}
 @next_tutorial{tutorial_opening_closing_hats}
 
index 2ab6d09..4bc5f35 100644 (file)
@@ -1,6 +1,8 @@
 Back Projection {#tutorial_back_projection}
 ===============
 
+@tableofcontents
+
 @prev_tutorial{tutorial_histogram_comparison}
 @next_tutorial{tutorial_template_matching}
 
index a8d653d..5f16931 100644 (file)
@@ -1,6 +1,8 @@
 Histogram Calculation {#tutorial_histogram_calculation}
 =====================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_histogram_equalization}
 @next_tutorial{tutorial_histogram_comparison}
 
index 9327767..cc38cba 100644 (file)
@@ -1,6 +1,8 @@
 Histogram Comparison {#tutorial_histogram_comparison}
 ====================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_histogram_calculation}
 @next_tutorial{tutorial_back_projection}
 
index 170bc02..e80032b 100644 (file)
@@ -1,6 +1,8 @@
 Histogram Equalization {#tutorial_histogram_equalization}
 ======================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_warp_affine}
 @next_tutorial{tutorial_histogram_calculation}
 
index ac14320..f03f761 100644 (file)
@@ -1,6 +1,8 @@
 Template Matching {#tutorial_template_matching}
 =================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_back_projection}
 @next_tutorial{tutorial_find_contours}
 
index f8051f3..887b376 100644 (file)
@@ -1,6 +1,8 @@
 Hit-or-Miss {#tutorial_hitOrMiss}
 =================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_opening_closing_hats}
 @next_tutorial{tutorial_morph_lines_detection}
 
index 8e0cfcc..d585c77 100644 (file)
@@ -1,6 +1,8 @@
 Canny Edge Detector {#tutorial_canny_detector}
 ===================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_laplace_operator}
 @next_tutorial{tutorial_hough_lines}
 
index a975576..4acc060 100644 (file)
@@ -1,6 +1,8 @@
 Adding borders to your images {#tutorial_copyMakeBorder}
 =============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_filter_2d}
 @next_tutorial{tutorial_sobel_derivatives}
 
index 4a0e2b6..28b81f4 100644 (file)
@@ -1,6 +1,8 @@
 Image Segmentation with Distance Transform and Watershed Algorithm {#tutorial_distance_transform}
 =============
 
+@tableofcontents
+
 @prev_tutorial{tutorial_point_polygon_test}
 @next_tutorial{tutorial_out_of_focus_deblur_filter}
 
index 3061dbb..efe3fdf 100644 (file)
@@ -1,6 +1,8 @@
 Making your own linear filters! {#tutorial_filter_2d}
 ===============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_threshold_inRange}
 @next_tutorial{tutorial_copyMakeBorder}
 
index c285cbb..6b2f215 100644 (file)
@@ -1,6 +1,8 @@
 Hough Circle Transform {#tutorial_hough_circle}
 ======================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_hough_lines}
 @next_tutorial{tutorial_remap}
 
index eb72f10..496b956 100644 (file)
@@ -1,6 +1,8 @@
 Hough Line Transform {#tutorial_hough_lines}
 ====================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_canny_detector}
 @next_tutorial{tutorial_hough_circle}
 
index 3dd0b21..27b4aa9 100644 (file)
@@ -1,6 +1,8 @@
 Laplace Operator {#tutorial_laplace_operator}
 ================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_sobel_derivatives}
 @next_tutorial{tutorial_canny_detector}
 
index 007e3b8..3c3d95c 100644 (file)
@@ -1,6 +1,8 @@
 Remapping {#tutorial_remap}
 =========
 
+@tableofcontents
+
 @prev_tutorial{tutorial_hough_circle}
 @next_tutorial{tutorial_warp_affine}
 
index b91ea7d..4183476 100644 (file)
@@ -1,6 +1,8 @@
 Sobel Derivatives {#tutorial_sobel_derivatives}
 =================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_copyMakeBorder}
 @next_tutorial{tutorial_laplace_operator}
 
index 68d4ebd..22d5298 100644 (file)
@@ -1,6 +1,8 @@
 Affine Transformations {#tutorial_warp_affine}
 ======================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_remap}
 @next_tutorial{tutorial_histogram_equalization}
 
index 360ea8a..74b117f 100644 (file)
@@ -1,6 +1,8 @@
 Extract horizontal and vertical lines by using morphological operations {#tutorial_morph_lines_detection}
 =============
 
+@tableofcontents
+
 @prev_tutorial{tutorial_hitOrMiss}
 @next_tutorial{tutorial_pyramids}
 
index af1b3b8..fd286de 100644 (file)
@@ -1,6 +1,8 @@
 Motion Deblur Filter {#tutorial_motion_deblur_filter}
 ==========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_out_of_focus_deblur_filter}
 @next_tutorial{tutorial_anisotropic_image_segmentation_by_a_gst}
 
index f6417b8..8f99117 100644 (file)
@@ -1,6 +1,8 @@
 More Morphology Transformations {#tutorial_opening_closing_hats}
 ===============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_erosion_dilatation}
 @next_tutorial{tutorial_hitOrMiss}
 
index db8fca5..13db710 100644 (file)
@@ -1,6 +1,8 @@
 Out-of-focus Deblur Filter {#tutorial_out_of_focus_deblur_filter}
 ==========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_distance_transform}
 @next_tutorial{tutorial_motion_deblur_filter}
 
index 5692fb9..dff204a 100644 (file)
@@ -1,6 +1,8 @@
 Periodic Noise Removing Filter {#tutorial_periodic_noise_removing_filter}
 ==========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_anisotropic_image_segmentation_by_a_gst}
 
 |    |    |
index 02f4a9a..adbd086 100644 (file)
@@ -1,6 +1,8 @@
 Image Pyramids {#tutorial_pyramids}
 ==============
 
+@tableofcontents
+
 @prev_tutorial{tutorial_morph_lines_detection}
 @next_tutorial{tutorial_threshold}
 
index d250775..4100d91 100644 (file)
@@ -1,6 +1,8 @@
 Random generator and text with OpenCV {#tutorial_random_generator_and_text}
 =====================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_basic_geometric_drawing}
 @next_tutorial{tutorial_gausian_median_blur_bilateral_filter}
 
index 70c7a87..2c6d59b 100644 (file)
@@ -1,6 +1,8 @@
 Creating Bounding boxes and circles for contours {#tutorial_bounding_rects_circles}
 ================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_hull}
 @next_tutorial{tutorial_bounding_rotated_ellipses}
 
index 75d2da1..c15d73e 100644 (file)
@@ -1,6 +1,8 @@
 Creating Bounding rotated boxes and ellipses for contours {#tutorial_bounding_rotated_ellipses}
 =========================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_bounding_rects_circles}
 @next_tutorial{tutorial_moments}
 
index daf42b4..dc112b9 100644 (file)
@@ -1,6 +1,8 @@
 Finding contours in your image {#tutorial_find_contours}
 ==============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_template_matching}
 @next_tutorial{tutorial_hull}
 
index 0a29c5e..36763fd 100644 (file)
@@ -1,6 +1,8 @@
 Convex Hull {#tutorial_hull}
 ===========
 
+@tableofcontents
+
 @prev_tutorial{tutorial_find_contours}
 @next_tutorial{tutorial_bounding_rects_circles}
 
index 9eab42d..4e47242 100644 (file)
@@ -1,6 +1,8 @@
 Image Moments {#tutorial_moments}
 =============
 
+@tableofcontents
+
 @prev_tutorial{tutorial_bounding_rotated_ellipses}
 @next_tutorial{tutorial_point_polygon_test}
 
index 2eb0b23..f7458d1 100644 (file)
@@ -1,6 +1,8 @@
 Basic Thresholding Operations {#tutorial_threshold}
 =============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_pyramids}
 @next_tutorial{tutorial_threshold_inRange}
 
index 8ff49e5..f05ebe4 100644 (file)
@@ -1,6 +1,8 @@
 Thresholding Operations using inRange {#tutorial_threshold_inRange}
 =====================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_threshold}
 @next_tutorial{tutorial_filter_2d}
 
index ff1245f..87d39fb 100644 (file)
@@ -1,6 +1,8 @@
 OpenCV iOS Hello {#tutorial_hello}
 ================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_ios_install}
 @next_tutorial{tutorial_image_manipulation}
 
index 78bfe56..f01aa6e 100644 (file)
@@ -1,6 +1,8 @@
 OpenCV iOS - Image Processing {#tutorial_image_manipulation}
 =============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_hello}
 @next_tutorial{tutorial_video_processing}
 
index fe05728..4353808 100644 (file)
@@ -1,6 +1,8 @@
 Installation in iOS {#tutorial_ios_install}
 ===================
 
+@tableofcontents
+
 @next_tutorial{tutorial_hello}
 
 |    |    |
index c015763..e388d82 100644 (file)
@@ -1,6 +1,8 @@
 OpenCV iOS - Video Processing {#tutorial_video_processing}
 =============================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_image_manipulation}
 
 |    |    |
index 929005c..5d07f1d 100644 (file)
@@ -1,6 +1,8 @@
 How to Use Background Subtraction Methods {#tutorial_background_subtraction}
 =========================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_stitcher}
 @next_tutorial{tutorial_meanshift}
 
index 8e4cd00..149bac5 100644 (file)
@@ -1,6 +1,8 @@
 Cascade Classifier {#tutorial_cascade_classifier}
 ==================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_optical_flow}
 @next_tutorial{tutorial_traincascade}
 
index 8c5e0a0..a9f1276 100644 (file)
@@ -1,6 +1,8 @@
 High Dynamic Range Imaging {#tutorial_hdr_imaging}
 ==========================
 
+@tableofcontents
+
 @next_tutorial{tutorial_stitcher}
 
 |    |    |
index 1b9df5d..490024a 100644 (file)
@@ -1,6 +1,8 @@
 Introduction to Principal Component Analysis (PCA) {#tutorial_introduction_to_pca}
 =======================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_non_linear_svms}
 
 |    |    |
index 584303d..557093c 100644 (file)
@@ -1,6 +1,8 @@
 Introduction to Support Vector Machines {#tutorial_introduction_to_svm}
 =======================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_traincascade}
 @next_tutorial{tutorial_non_linear_svms}
 
index 6472570..7ca9eca 100644 (file)
@@ -1,6 +1,8 @@
 Meanshift and Camshift {#tutorial_meanshift}
 ======================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_background_subtraction}
 @next_tutorial{tutorial_optical_flow}
 
index 3bf2b00..f70449f 100644 (file)
@@ -1,6 +1,8 @@
 Support Vector Machines for Non-Linearly Separable Data {#tutorial_non_linear_svms}
 =======================================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_introduction_to_svm}
 @next_tutorial{tutorial_introduction_to_pca}
 
index 810f625..07456d7 100644 (file)
@@ -1,6 +1,8 @@
 Optical Flow {#tutorial_optical_flow}
 ============
 
+@tableofcontents
+
 @prev_tutorial{tutorial_meanshift}
 @next_tutorial{tutorial_cascade_classifier}
 
index e1cee08..e636d83 100644 (file)
@@ -1,6 +1,8 @@
 High level stitching API (Stitcher class) {#tutorial_stitcher}
 =========================================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_hdr_imaging}
 @next_tutorial{tutorial_background_subtraction}
 
index 7f71262..0d95bd0 100644 (file)
@@ -1,6 +1,8 @@
 Cascade Classifier Training {#tutorial_traincascade}
 ===========================
 
+@tableofcontents
+
 @prev_tutorial{tutorial_cascade_classifier}
 @next_tutorial{tutorial_introduction_to_svm}