diff --git a/doc/tools/scan_tutorials.py b/doc/tools/scan_tutorials.py new file mode 100644 index 0000000000..0b924a4626 --- /dev/null +++ b/doc/tools/scan_tutorials.py @@ -0,0 +1,96 @@ +#!/usr/bin/env python + +from pathlib import Path +import re + +# Tasks +# 1. Find all tutorials +# 2. Generate tree (@subpage) +# 3. Check prev/next nodes + +class Tutorial(object): + def __init__(self, path): + self.path = path + self.title = None # doxygen title + self.children = [] # ordered titles + self.prev = None + self.next = None + with open(path, "rt") as f: + self.parse(f) + + def parse(self, f): + rx_title = re.compile(r"\{#(\w+)\}") + rx_subpage = re.compile(r"@subpage\s+(\w+)") + rx_prev = re.compile(r"@prev_tutorial\{(\w+)\}") + rx_next = re.compile(r"@next_tutorial\{(\w+)\}") + for line in f: + if self.title is None: + m = rx_title.search(line) + if m: + self.title = m.group(1) + continue + if self.prev is None: + m = rx_prev.search(line) + if m: + self.prev = m.group(1) + continue + if self.next is None: + m = rx_next.search(line) + if m: + self.next = m.group(1) + continue + m = rx_subpage.search(line) + if m: + self.children.append(m.group(1)) + continue + + def verify_prev_next(self, storage): + res = True + + if self.title is None: + print("[W] No title") + res = False + + prev = None + for one in self.children: + c = storage[one] + if c.prev is not None and c.prev != prev: + print("[W] Wrong prev_tutorial: expected {} / actual {}".format(c.prev, prev)) + res = False + prev = c.title + + next = None + for one in reversed(self.children): + c = storage[one] + if c.next is not None and c.next != next: + print("[W] Wrong next_tutorial: expected {} / actual {}".format(c.next, next)) + res = False + next = c.title + + if len(self.children) == 0 and self.prev is None and self.next is None: + print("[W] No prev and next tutorials") + res = False + + return res + +if __name__ == "__main__": + + p = Path('tutorials') + print("Looking for tutorials in: '{}'".format(p)) + + all_tutorials = dict() + for f in p.glob('**/*'): + if f.suffix.lower() in ('.markdown', '.md'): + t = Tutorial(f) + all_tutorials[t.title] = t + + res = 0 + print("Found: {}".format(len(all_tutorials))) + print("------") + for title, t in all_tutorials.items(): + if not t.verify_prev_next(all_tutorials): + print("[E] Verification failed: {}".format(t.path)) + print("------") + res = 1 + + exit(res) diff --git a/doc/tutorials/app/_old/table_of_content_highgui.markdown b/doc/tutorials/app/_old/table_of_content_highgui.markdown new file mode 100644 index 0000000000..3a1705ecd5 --- /dev/null +++ b/doc/tutorials/app/_old/table_of_content_highgui.markdown @@ -0,0 +1,4 @@ +High Level GUI and Media (highgui module) {#tutorial_table_of_content_highgui} +========================================= + +Content has been moved to this page: @ref tutorial_table_of_content_app diff --git a/doc/tutorials/app/_old/table_of_content_imgcodecs.markdown b/doc/tutorials/app/_old/table_of_content_imgcodecs.markdown new file mode 100644 index 0000000000..a49bbe5cce --- /dev/null +++ b/doc/tutorials/app/_old/table_of_content_imgcodecs.markdown @@ -0,0 +1,4 @@ +Image Input and Output (imgcodecs module) {#tutorial_table_of_content_imgcodecs} +========================================= + +Content has been moved to this page: @ref tutorial_table_of_content_app diff --git a/doc/tutorials/app/_old/table_of_content_videoio.markdown b/doc/tutorials/app/_old/table_of_content_videoio.markdown new file mode 100644 index 0000000000..f2b3ccf81c --- /dev/null +++ b/doc/tutorials/app/_old/table_of_content_videoio.markdown @@ -0,0 +1,4 @@ +Video Input and Output (videoio module) {#tutorial_table_of_content_videoio} +========================================= + +Content has been moved to this page: @ref tutorial_table_of_content_app diff --git a/doc/tutorials/highgui/trackbar/images/Adding_Trackbars_Tutorial_Result_0.jpg b/doc/tutorials/app/images/Adding_Trackbars_Tutorial_Result_0.jpg similarity index 100% rename from doc/tutorials/highgui/trackbar/images/Adding_Trackbars_Tutorial_Result_0.jpg rename to doc/tutorials/app/images/Adding_Trackbars_Tutorial_Result_0.jpg diff --git a/doc/tutorials/highgui/trackbar/images/Adding_Trackbars_Tutorial_Result_1.jpg b/doc/tutorials/app/images/Adding_Trackbars_Tutorial_Result_1.jpg similarity index 100% rename from doc/tutorials/highgui/trackbar/images/Adding_Trackbars_Tutorial_Result_1.jpg rename to doc/tutorials/app/images/Adding_Trackbars_Tutorial_Result_1.jpg diff --git a/doc/tutorials/highgui/trackbar/images/Adding_Trackbars_Tutorial_Trackbar.png b/doc/tutorials/app/images/Adding_Trackbars_Tutorial_Trackbar.png similarity index 100% rename from doc/tutorials/highgui/trackbar/images/Adding_Trackbars_Tutorial_Trackbar.png rename to doc/tutorials/app/images/Adding_Trackbars_Tutorial_Trackbar.png diff --git a/doc/tutorials/videoio/orbbec-astra/images/astra_color.jpg b/doc/tutorials/app/images/astra_color.jpg similarity index 100% rename from doc/tutorials/videoio/orbbec-astra/images/astra_color.jpg rename to doc/tutorials/app/images/astra_color.jpg diff --git a/doc/tutorials/videoio/orbbec-astra/images/astra_depth.png b/doc/tutorials/app/images/astra_depth.png similarity index 100% rename from doc/tutorials/videoio/orbbec-astra/images/astra_depth.png rename to doc/tutorials/app/images/astra_depth.png diff --git a/doc/tutorials/imgcodecs/raster-gdal/images/gdal_flood-zone.jpg b/doc/tutorials/app/images/gdal_flood-zone.jpg similarity index 100% rename from doc/tutorials/imgcodecs/raster-gdal/images/gdal_flood-zone.jpg rename to doc/tutorials/app/images/gdal_flood-zone.jpg diff --git a/doc/tutorials/imgcodecs/raster-gdal/images/gdal_heat-map.jpg b/doc/tutorials/app/images/gdal_heat-map.jpg similarity index 100% rename from doc/tutorials/imgcodecs/raster-gdal/images/gdal_heat-map.jpg rename to doc/tutorials/app/images/gdal_heat-map.jpg diff --git a/doc/tutorials/imgcodecs/raster-gdal/images/gdal_output.jpg b/doc/tutorials/app/images/gdal_output.jpg similarity index 100% rename from doc/tutorials/imgcodecs/raster-gdal/images/gdal_output.jpg rename to doc/tutorials/app/images/gdal_output.jpg diff --git a/doc/tutorials/videoio/video-input-psnr-ssim/images/outputVideoInput.png b/doc/tutorials/app/images/outputVideoInput.png similarity index 100% rename from doc/tutorials/videoio/video-input-psnr-ssim/images/outputVideoInput.png rename to doc/tutorials/app/images/outputVideoInput.png diff --git a/doc/tutorials/videoio/video-write/images/resultOutputWideoWrite.png b/doc/tutorials/app/images/resultOutputWideoWrite.png similarity index 100% rename from doc/tutorials/videoio/video-write/images/resultOutputWideoWrite.png rename to doc/tutorials/app/images/resultOutputWideoWrite.png diff --git a/doc/tutorials/videoio/video-write/images/videoCompressSelect.png b/doc/tutorials/app/images/videoCompressSelect.png similarity index 100% rename from doc/tutorials/videoio/video-write/images/videoCompressSelect.png rename to doc/tutorials/app/images/videoCompressSelect.png diff --git a/doc/tutorials/videoio/video-write/images/videoFileStructure.png b/doc/tutorials/app/images/videoFileStructure.png similarity index 100% rename from doc/tutorials/videoio/video-write/images/videoFileStructure.png rename to doc/tutorials/app/images/videoFileStructure.png diff --git a/doc/tutorials/videoio/intelperc.markdown b/doc/tutorials/app/intelperc.markdown similarity index 99% rename from doc/tutorials/videoio/intelperc.markdown rename to doc/tutorials/app/intelperc.markdown index 6a6a5e5c9a..5c036a63c2 100644 --- a/doc/tutorials/videoio/intelperc.markdown +++ b/doc/tutorials/app/intelperc.markdown @@ -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 diff --git a/doc/tutorials/videoio/kinect_openni.markdown b/doc/tutorials/app/kinect_openni.markdown similarity index 99% rename from doc/tutorials/videoio/kinect_openni.markdown rename to doc/tutorials/app/kinect_openni.markdown index aadaec5e44..e235a97755 100644 --- a/doc/tutorials/videoio/kinect_openni.markdown +++ b/doc/tutorials/app/kinect_openni.markdown @@ -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} diff --git a/doc/tutorials/videoio/orbbec-astra/orbbec_astra.markdown b/doc/tutorials/app/orbbec_astra.markdown similarity index 99% rename from doc/tutorials/videoio/orbbec-astra/orbbec_astra.markdown rename to doc/tutorials/app/orbbec_astra.markdown index 8c5ebcd802..7c39229a40 100644 --- a/doc/tutorials/videoio/orbbec-astra/orbbec_astra.markdown +++ b/doc/tutorials/app/orbbec_astra.markdown @@ -1,6 +1,8 @@ Using Orbbec Astra 3D cameras {#tutorial_orbbec_astra} ====================================================== +@tableofcontents + @prev_tutorial{tutorial_kinect_openni} @next_tutorial{tutorial_intelperc} diff --git a/doc/tutorials/imgcodecs/raster-gdal/raster_io_gdal.markdown b/doc/tutorials/app/raster_io_gdal.markdown similarity index 95% rename from doc/tutorials/imgcodecs/raster-gdal/raster_io_gdal.markdown rename to doc/tutorials/app/raster_io_gdal.markdown index 432caa69e0..73574cdccd 100644 --- a/doc/tutorials/imgcodecs/raster-gdal/raster_io_gdal.markdown +++ b/doc/tutorials/app/raster_io_gdal.markdown @@ -1,6 +1,16 @@ Reading Geospatial Raster files with GDAL {#tutorial_raster_io_gdal} ========================================= +@tableofcontents + +@prev_tutorial{tutorial_trackbar} +@next_tutorial{tutorial_video_input_psnr_ssim} + +| | | +| -: | :- | +| Original author | Marvin Smith | +| Compatibility | OpenCV >= 3.0 | + Geospatial raster data is a heavily used product in Geographic Information Systems and Photogrammetry. Raster data typically can represent imagery and Digital Elevation Models (DEM). The standard library for loading GIS imagery is the Geographic Data Abstraction Library [(GDAL)](http://www.gdal.org). In this diff --git a/doc/tutorials/app/table_of_content_app.markdown b/doc/tutorials/app/table_of_content_app.markdown new file mode 100644 index 0000000000..8e05dfaf07 --- /dev/null +++ b/doc/tutorials/app/table_of_content_app.markdown @@ -0,0 +1,10 @@ +Application utils (highgui, imgcodecs, videoio modules) {#tutorial_table_of_content_app} +======================================================= + +- @subpage tutorial_trackbar +- @subpage tutorial_raster_io_gdal +- @subpage tutorial_video_input_psnr_ssim +- @subpage tutorial_video_write +- @subpage tutorial_kinect_openni +- @subpage tutorial_orbbec_astra +- @subpage tutorial_intelperc diff --git a/doc/tutorials/highgui/trackbar/trackbar.markdown b/doc/tutorials/app/trackbar.markdown similarity index 96% rename from doc/tutorials/highgui/trackbar/trackbar.markdown rename to doc/tutorials/app/trackbar.markdown index d6700d6387..2b88114a6b 100644 --- a/doc/tutorials/highgui/trackbar/trackbar.markdown +++ b/doc/tutorials/app/trackbar.markdown @@ -1,6 +1,16 @@ Adding a Trackbar to our applications! {#tutorial_trackbar} ====================================== +@tableofcontents + +@next_tutorial{tutorial_raster_io_gdal} + +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + + - In the previous tutorials (about @ref tutorial_adding_images and the @ref tutorial_basic_linear_transform) you might have noted that we needed to give some **input** to our programs, such as \f$\alpha\f$ and \f$beta\f$. We accomplished that by entering this data using the Terminal. diff --git a/doc/tutorials/videoio/video-input-psnr-ssim/video_input_psnr_ssim.markdown b/doc/tutorials/app/video_input_psnr_ssim.markdown similarity index 98% rename from doc/tutorials/videoio/video-input-psnr-ssim/video_input_psnr_ssim.markdown rename to doc/tutorials/app/video_input_psnr_ssim.markdown index 76cfa3751d..e212c4e46d 100644 --- a/doc/tutorials/videoio/video-input-psnr-ssim/video_input_psnr_ssim.markdown +++ b/doc/tutorials/app/video_input_psnr_ssim.markdown @@ -1,8 +1,16 @@ Video Input with OpenCV and similarity measurement {#tutorial_video_input_psnr_ssim} ================================================== +@tableofcontents + +@prev_tutorial{tutorial_raster_io_gdal} @next_tutorial{tutorial_video_write} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/videoio/video-write/video_write.markdown b/doc/tutorials/app/video_write.markdown similarity index 98% rename from doc/tutorials/videoio/video-write/video_write.markdown rename to doc/tutorials/app/video_write.markdown index ec071d0942..bcd288b960 100644 --- a/doc/tutorials/videoio/video-write/video_write.markdown +++ b/doc/tutorials/app/video_write.markdown @@ -1,9 +1,16 @@ Creating a video with OpenCV {#tutorial_video_write} ============================ +@tableofcontents + @prev_tutorial{tutorial_video_input_psnr_ssim} @next_tutorial{tutorial_kinect_openni} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/calib3d/camera_calibration/camera_calibration.markdown b/doc/tutorials/calib3d/camera_calibration/camera_calibration.markdown index 90298124c7..00e1e9668f 100644 --- a/doc/tutorials/calib3d/camera_calibration/camera_calibration.markdown +++ b/doc/tutorials/calib3d/camera_calibration/camera_calibration.markdown @@ -1,9 +1,16 @@ Camera calibration With OpenCV {#tutorial_camera_calibration} ============================== +@tableofcontents + @prev_tutorial{tutorial_camera_calibration_square_chess} @next_tutorial{tutorial_real_time_pose} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 4.0 | + Cameras have been around for a long-long time. However, with the introduction of the cheap *pinhole* cameras in the late 20th century, they became a common occurrence in our everyday life. diff --git a/doc/tutorials/calib3d/camera_calibration_pattern/camera_calibration_pattern.markdown b/doc/tutorials/calib3d/camera_calibration_pattern/camera_calibration_pattern.markdown index d6df8a8b5e..c87f9f95f8 100644 --- a/doc/tutorials/calib3d/camera_calibration_pattern/camera_calibration_pattern.markdown +++ b/doc/tutorials/calib3d/camera_calibration_pattern/camera_calibration_pattern.markdown @@ -1,8 +1,15 @@ Create calibration pattern {#tutorial_camera_calibration_pattern} ========================================= +@tableofcontents + @next_tutorial{tutorial_camera_calibration_square_chess} +| | | +| -: | :- | +| Original author | Laurent Berger | +| Compatibility | OpenCV >= 3.0 | + The goal of this tutorial is to learn how to create calibration pattern. diff --git a/doc/tutorials/calib3d/camera_calibration_square_chess/camera_calibration_square_chess.markdown b/doc/tutorials/calib3d/camera_calibration_square_chess/camera_calibration_square_chess.markdown index 51b0a5eac7..b278bb87ac 100644 --- a/doc/tutorials/calib3d/camera_calibration_square_chess/camera_calibration_square_chess.markdown +++ b/doc/tutorials/calib3d/camera_calibration_square_chess/camera_calibration_square_chess.markdown @@ -1,9 +1,16 @@ Camera calibration with square chessboard {#tutorial_camera_calibration_square_chess} ========================================= +@tableofcontents + @prev_tutorial{tutorial_camera_calibration_pattern} @next_tutorial{tutorial_camera_calibration} +| | | +| -: | :- | +| Original author | Victor Eruhimov | +| Compatibility | OpenCV >= 4.0 | + The goal of this tutorial is to learn how to calibrate a camera given a set of chessboard images. diff --git a/doc/tutorials/calib3d/images/camera_calibration.png b/doc/tutorials/calib3d/images/camera_calibration.png deleted file mode 100644 index b010459c9d..0000000000 Binary files a/doc/tutorials/calib3d/images/camera_calibration.png and /dev/null differ diff --git a/doc/tutorials/calib3d/images/camera_calibration_square_chess.jpg b/doc/tutorials/calib3d/images/camera_calibration_square_chess.jpg deleted file mode 100644 index 1fcab0f83c..0000000000 Binary files a/doc/tutorials/calib3d/images/camera_calibration_square_chess.jpg and /dev/null differ diff --git a/doc/tutorials/calib3d/images/real_time_pose_estimation.jpg b/doc/tutorials/calib3d/images/real_time_pose_estimation.jpg deleted file mode 100644 index dcd24cc791..0000000000 Binary files a/doc/tutorials/calib3d/images/real_time_pose_estimation.jpg and /dev/null differ diff --git a/doc/tutorials/calib3d/interactive_calibration/interactive_calibration.markdown b/doc/tutorials/calib3d/interactive_calibration/interactive_calibration.markdown index 36e19e0754..3c4f0b0c83 100644 --- a/doc/tutorials/calib3d/interactive_calibration/interactive_calibration.markdown +++ b/doc/tutorials/calib3d/interactive_calibration/interactive_calibration.markdown @@ -1,8 +1,15 @@ Interactive camera calibration application {#tutorial_interactive_calibration} ============================== +@tableofcontents + @prev_tutorial{tutorial_real_time_pose} +| | | +| -: | :- | +| Original author | Vladislav Sovrasov | +| Compatibility | OpenCV >= 3.1 | + According to classical calibration technique user must collect all data first and when run @ref cv::calibrateCamera function to obtain camera parameters. If average re-projection error is huge or if estimated parameters seems to be wrong, process of diff --git a/doc/tutorials/calib3d/real_time_pose/real_time_pose.markdown b/doc/tutorials/calib3d/real_time_pose/real_time_pose.markdown index 98a44b232b..e14273cb31 100644 --- a/doc/tutorials/calib3d/real_time_pose/real_time_pose.markdown +++ b/doc/tutorials/calib3d/real_time_pose/real_time_pose.markdown @@ -1,9 +1,16 @@ Real Time pose estimation of a textured object {#tutorial_real_time_pose} ============================================== +@tableofcontents + @prev_tutorial{tutorial_camera_calibration} @next_tutorial{tutorial_interactive_calibration} +| | | +| -: | :- | +| Original author | Edgar Riba | +| Compatibility | OpenCV >= 3.0 | + Nowadays, augmented reality is one of the top research topic in computer vision and robotics fields. The most elemental problem in augmented reality is the estimation of the camera pose respect of an diff --git a/doc/tutorials/calib3d/table_of_content_calib3d.markdown b/doc/tutorials/calib3d/table_of_content_calib3d.markdown index 3861d448b7..5fc6e591e9 100644 --- a/doc/tutorials/calib3d/table_of_content_calib3d.markdown +++ b/doc/tutorials/calib3d/table_of_content_calib3d.markdown @@ -1,58 +1,8 @@ Camera calibration and 3D reconstruction (calib3d module) {#tutorial_table_of_content_calib3d} ========================================================== -Although we get most of our images in a 2D format they do come from a 3D world. Here you will learn how to find out 3D world information from 2D images. - - @subpage tutorial_camera_calibration_pattern - - *Languages:* Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Laurent Berger - - You will learn how to create some calibration pattern. - - @subpage tutorial_camera_calibration_square_chess - - *Languages:* C++ - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Victor Eruhimov - - You will use some chessboard images to calibrate your camera. - - @subpage tutorial_camera_calibration - - *Languages:* C++ - - *Compatibility:* \> OpenCV 4.0 - - *Author:* Bernát Gábor - - Camera calibration by using either the chessboard, circle or the asymmetrical circle - pattern. Get the images either from a camera attached, a video file or from an image - collection. - - @subpage tutorial_real_time_pose - - *Languages:* C++ - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Edgar Riba - - Real time pose estimation of a textured object using ORB features, FlannBased matcher, PnP - approach plus Ransac and Linear Kalman Filter to reject possible bad poses. - - @subpage tutorial_interactive_calibration - - *Compatibility:* \> OpenCV 3.1 - - *Author:* Vladislav Sovrasov - - Camera calibration by using either the chessboard, chAruco, asymmetrical circle or dual asymmetrical circle - pattern. Calibration process is continuous, so you can see results after each new pattern shot. - As an output you get average reprojection error, intrinsic camera parameters, distortion coefficients and - confidence intervals for all of evaluated variables. diff --git a/doc/tutorials/core/adding_images/adding_images.markdown b/doc/tutorials/core/adding_images/adding_images.markdown index c8776325a3..3cec9f1734 100644 --- a/doc/tutorials/core/adding_images/adding_images.markdown +++ b/doc/tutorials/core/adding_images/adding_images.markdown @@ -1,9 +1,17 @@ Adding (blending) two images using OpenCV {#tutorial_adding_images} ========================================= +@tableofcontents + @prev_tutorial{tutorial_mat_operations} @next_tutorial{tutorial_basic_linear_transform} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + +We will learn how to blend two images! Goal ---- diff --git a/doc/tutorials/core/basic_linear_transform/basic_linear_transform.markdown b/doc/tutorials/core/basic_linear_transform/basic_linear_transform.markdown index 1eac760a4c..75bd655272 100644 --- a/doc/tutorials/core/basic_linear_transform/basic_linear_transform.markdown +++ b/doc/tutorials/core/basic_linear_transform/basic_linear_transform.markdown @@ -1,9 +1,16 @@ Changing the contrast and brightness of an image! {#tutorial_basic_linear_transform} ================================================= +@tableofcontents + @prev_tutorial{tutorial_adding_images} @next_tutorial{tutorial_discrete_fourier_transform} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/core/discrete_fourier_transform/discrete_fourier_transform.markdown b/doc/tutorials/core/discrete_fourier_transform/discrete_fourier_transform.markdown index 53ef27258d..1701babf4f 100644 --- a/doc/tutorials/core/discrete_fourier_transform/discrete_fourier_transform.markdown +++ b/doc/tutorials/core/discrete_fourier_transform/discrete_fourier_transform.markdown @@ -1,9 +1,16 @@ Discrete Fourier Transform {#tutorial_discrete_fourier_transform} ========================== +@tableofcontents + @prev_tutorial{tutorial_basic_linear_transform} @next_tutorial{tutorial_file_input_output_with_xml_yml} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/core/file_input_output_with_xml_yml/file_input_output_with_xml_yml.markdown b/doc/tutorials/core/file_input_output_with_xml_yml/file_input_output_with_xml_yml.markdown index b87ec79ff7..da060cf27d 100644 --- a/doc/tutorials/core/file_input_output_with_xml_yml/file_input_output_with_xml_yml.markdown +++ b/doc/tutorials/core/file_input_output_with_xml_yml/file_input_output_with_xml_yml.markdown @@ -1,9 +1,16 @@ 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_} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/core/how_to_scan_images/how_to_scan_images.markdown b/doc/tutorials/core/how_to_scan_images/how_to_scan_images.markdown index c5028d6a3a..d19936ecbe 100644 --- a/doc/tutorials/core/how_to_scan_images/how_to_scan_images.markdown +++ b/doc/tutorials/core/how_to_scan_images/how_to_scan_images.markdown @@ -1,9 +1,16 @@ 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} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/core/how_to_use_OpenCV_parallel_for_/how_to_use_OpenCV_parallel_for_.markdown b/doc/tutorials/core/how_to_use_OpenCV_parallel_for_/how_to_use_OpenCV_parallel_for_.markdown index 80cc6c68fe..92f73b77e8 100644 --- a/doc/tutorials/core/how_to_use_OpenCV_parallel_for_/how_to_use_OpenCV_parallel_for_.markdown +++ b/doc/tutorials/core/how_to_use_OpenCV_parallel_for_/how_to_use_OpenCV_parallel_for_.markdown @@ -1,8 +1,14 @@ 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} +| | | +| -: | :- | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/core/images/Adding_Images_Tutorial_Result_0.jpg b/doc/tutorials/core/images/Adding_Images_Tutorial_Result_0.jpg deleted file mode 100644 index 940b54c82f..0000000000 Binary files a/doc/tutorials/core/images/Adding_Images_Tutorial_Result_0.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/Basic_Linear_Transform_Tutorial_Result_0.jpg b/doc/tutorials/core/images/Basic_Linear_Transform_Tutorial_Result_0.jpg deleted file mode 100644 index eccf37aa20..0000000000 Binary files a/doc/tutorials/core/images/Basic_Linear_Transform_Tutorial_Result_0.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/Drawing_1_Tutorial_Result_0.jpg b/doc/tutorials/core/images/Drawing_1_Tutorial_Result_0.jpg deleted file mode 100644 index 05e8f01232..0000000000 Binary files a/doc/tutorials/core/images/Drawing_1_Tutorial_Result_0.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/Drawing_2_Tutorial_Result_7.jpg b/doc/tutorials/core/images/Drawing_2_Tutorial_Result_7.jpg deleted file mode 100644 index d650c18427..0000000000 Binary files a/doc/tutorials/core/images/Drawing_2_Tutorial_Result_7.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/Morphology_1_Tutorial_Cover.jpg b/doc/tutorials/core/images/Morphology_1_Tutorial_Cover.jpg deleted file mode 100644 index 71509ba5b8..0000000000 Binary files a/doc/tutorials/core/images/Morphology_1_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/Smoothing_Tutorial_Cover.jpg b/doc/tutorials/core/images/Smoothing_Tutorial_Cover.jpg deleted file mode 100644 index c11f2ed024..0000000000 Binary files a/doc/tutorials/core/images/Smoothing_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/discrete_fourier_transform.png b/doc/tutorials/core/images/discrete_fourier_transform.png deleted file mode 100644 index 07bd1119f4..0000000000 Binary files a/doc/tutorials/core/images/discrete_fourier_transform.png and /dev/null differ diff --git a/doc/tutorials/core/images/file_input_output_with_xml_yml.png b/doc/tutorials/core/images/file_input_output_with_xml_yml.png deleted file mode 100644 index 24ae4fdd23..0000000000 Binary files a/doc/tutorials/core/images/file_input_output_with_xml_yml.png and /dev/null differ diff --git a/doc/tutorials/core/images/howToScanImages.jpg b/doc/tutorials/core/images/howToScanImages.jpg deleted file mode 100644 index 4e0fa26d0d..0000000000 Binary files a/doc/tutorials/core/images/howToScanImages.jpg and /dev/null differ diff --git a/doc/tutorials/core/images/interopOpenCV1.png b/doc/tutorials/core/images/interopOpenCV1.png deleted file mode 100644 index 040f50a003..0000000000 Binary files a/doc/tutorials/core/images/interopOpenCV1.png and /dev/null differ diff --git a/doc/tutorials/core/images/matMaskFilter2DOp.png b/doc/tutorials/core/images/matMaskFilter2DOp.png deleted file mode 100644 index 6795921608..0000000000 Binary files a/doc/tutorials/core/images/matMaskFilter2DOp.png and /dev/null differ diff --git a/doc/tutorials/core/images/matTheBasicImageStructure.jpg b/doc/tutorials/core/images/matTheBasicImageStructure.jpg deleted file mode 100644 index ab6704a3c9..0000000000 Binary files a/doc/tutorials/core/images/matTheBasicImageStructure.jpg and /dev/null differ diff --git a/doc/tutorials/core/mat-mask-operations/mat_mask_operations.markdown b/doc/tutorials/core/mat-mask-operations/mat_mask_operations.markdown index fedb123ae6..43c71d7159 100644 --- a/doc/tutorials/core/mat-mask-operations/mat_mask_operations.markdown +++ b/doc/tutorials/core/mat-mask-operations/mat_mask_operations.markdown @@ -1,9 +1,16 @@ Mask operations on matrices {#tutorial_mat_mask_operations} =========================== +@tableofcontents + @prev_tutorial{tutorial_how_to_scan_images} @next_tutorial{tutorial_mat_operations} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Mask operations on matrices are quite simple. The idea is that we recalculate each pixel's value in an image according to a mask matrix (also known as kernel). This mask holds values that will adjust how much influence neighboring pixels (and the current pixel) have on the new pixel value. From a diff --git a/doc/tutorials/core/mat_operations.markdown b/doc/tutorials/core/mat_operations.markdown index 991d01367b..331a847551 100644 --- a/doc/tutorials/core/mat_operations.markdown +++ b/doc/tutorials/core/mat_operations.markdown @@ -1,9 +1,15 @@ Operations with images {#tutorial_mat_operations} ====================== +@tableofcontents + @prev_tutorial{tutorial_mat_mask_operations} @next_tutorial{tutorial_adding_images} +| | | +| -: | :- | +| Compatibility | OpenCV >= 3.0 | + Input/Output ------------ diff --git a/doc/tutorials/core/mat_the_basic_image_container/mat_the_basic_image_container.markdown b/doc/tutorials/core/mat_the_basic_image_container/mat_the_basic_image_container.markdown index 573e112d61..4f6f2b8a88 100644 --- a/doc/tutorials/core/mat_the_basic_image_container/mat_the_basic_image_container.markdown +++ b/doc/tutorials/core/mat_the_basic_image_container/mat_the_basic_image_container.markdown @@ -1,8 +1,15 @@ Mat - The Basic Image Container {#tutorial_mat_the_basic_image_container} =============================== +@tableofcontents + @next_tutorial{tutorial_how_to_scan_images} +| | | +| -: | :- | +| Original author | Bernát Gábor | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/core/table_of_content_core.markdown b/doc/tutorials/core/table_of_content_core.markdown index c607d4c02c..4cd77fcdfc 100644 --- a/doc/tutorials/core/table_of_content_core.markdown +++ b/doc/tutorials/core/table_of_content_core.markdown @@ -1,97 +1,12 @@ 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 - - *Languages:* C++ - - *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 - - *Languages:* C++ - - *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 - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - 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 - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - We will learn how to change our image appearance! - - @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 - - *Languages:* C++, Python - - *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_how_to_use_OpenCV_parallel_for_ - - *Languages:* C++ - - *Compatibility:* \>= OpenCV 2.4.3 - - You will see how to use the OpenCV parallel_for_ to easily parallelize your code. diff --git a/doc/tutorials/dnn/dnn_OCR/dnn_OCR.markdown b/doc/tutorials/dnn/dnn_OCR/dnn_OCR.markdown index ddf40c96a0..48a55992c6 100644 --- a/doc/tutorials/dnn/dnn_OCR/dnn_OCR.markdown +++ b/doc/tutorials/dnn/dnn_OCR/dnn_OCR.markdown @@ -1,8 +1,15 @@ # How to run custom OCR model {#tutorial_dnn_OCR} +@tableofcontents + @prev_tutorial{tutorial_dnn_custom_layers} @next_tutorial{tutorial_dnn_text_spotting} +| | | +| -: | :- | +| Original author | Zihao Mu | +| Compatibility | OpenCV >= 4.3 | + ## Introduction In this tutorial, we first introduce how to obtain the custom OCR model, then how to transform your own OCR models so that they can be run correctly by the opencv_dnn module. and finally we will provide some pre-trained models. diff --git a/doc/tutorials/dnn/dnn_android/dnn_android.markdown b/doc/tutorials/dnn/dnn_android/dnn_android.markdown index 7000a493a9..6ab67b3820 100644 --- a/doc/tutorials/dnn/dnn_android/dnn_android.markdown +++ b/doc/tutorials/dnn/dnn_android/dnn_android.markdown @@ -1,8 +1,15 @@ # How to run deep networks on Android device {#tutorial_dnn_android} +@tableofcontents + @prev_tutorial{tutorial_dnn_halide_scheduling} @next_tutorial{tutorial_dnn_yolo} +| | | +| -: | :- | +| Original author | Dmitry Kurtaev | +| Compatibility | OpenCV >= 3.3 | + ## Introduction In this tutorial you'll know how to run deep learning networks on Android device using OpenCV deep learning module. diff --git a/doc/tutorials/dnn/dnn_custom_layers/dnn_custom_layers.md b/doc/tutorials/dnn/dnn_custom_layers/dnn_custom_layers.md index feed5aaf76..07c3fb4a7f 100644 --- a/doc/tutorials/dnn/dnn_custom_layers/dnn_custom_layers.md +++ b/doc/tutorials/dnn/dnn_custom_layers/dnn_custom_layers.md @@ -1,8 +1,15 @@ # Custom deep learning layers support {#tutorial_dnn_custom_layers} +@tableofcontents + @prev_tutorial{tutorial_dnn_javascript} @next_tutorial{tutorial_dnn_OCR} +| | | +| -: | :- | +| Original author | Dmitry Kurtaev | +| Compatibility | OpenCV >= 3.4.1 | + ## Introduction Deep learning is a fast growing area. The new approaches to build neural networks usually introduce new types of layers. They could be modifications of existing diff --git a/doc/tutorials/dnn/dnn_googlenet/dnn_googlenet.markdown b/doc/tutorials/dnn/dnn_googlenet/dnn_googlenet.markdown index f6040dce1c..a886e9e089 100644 --- a/doc/tutorials/dnn/dnn_googlenet/dnn_googlenet.markdown +++ b/doc/tutorials/dnn/dnn_googlenet/dnn_googlenet.markdown @@ -1,8 +1,15 @@ Load Caffe framework models {#tutorial_dnn_googlenet} =========================== +@tableofcontents + @next_tutorial{tutorial_dnn_halide} +| | | +| -: | :- | +| Original author | Vitaliy Lyudvichenko | +| Compatibility | OpenCV >= 3.3 | + Introduction ------------ diff --git a/doc/tutorials/dnn/dnn_halide/dnn_halide.markdown b/doc/tutorials/dnn/dnn_halide/dnn_halide.markdown index 0500d25150..84ab50c193 100644 --- a/doc/tutorials/dnn/dnn_halide/dnn_halide.markdown +++ b/doc/tutorials/dnn/dnn_halide/dnn_halide.markdown @@ -1,8 +1,15 @@ # How to enable Halide backend for improve efficiency {#tutorial_dnn_halide} +@tableofcontents + @prev_tutorial{tutorial_dnn_googlenet} @next_tutorial{tutorial_dnn_halide_scheduling} +| | | +| -: | :- | +| Original author | Dmitry Kurtaev | +| Compatibility | OpenCV >= 3.3 | + ## Introduction This tutorial guidelines how to run your models in OpenCV deep learning module using Halide language backend. Halide is an open-source project that let us diff --git a/doc/tutorials/dnn/dnn_halide_scheduling/dnn_halide_scheduling.markdown b/doc/tutorials/dnn/dnn_halide_scheduling/dnn_halide_scheduling.markdown index b825da7922..e4a6f1fecc 100644 --- a/doc/tutorials/dnn/dnn_halide_scheduling/dnn_halide_scheduling.markdown +++ b/doc/tutorials/dnn/dnn_halide_scheduling/dnn_halide_scheduling.markdown @@ -1,8 +1,15 @@ # How to schedule your network for Halide backend {#tutorial_dnn_halide_scheduling} +@tableofcontents + @prev_tutorial{tutorial_dnn_halide} @next_tutorial{tutorial_dnn_android} +| | | +| -: | :- | +| Original author | Dmitry Kurtaev | +| Compatibility | OpenCV >= 3.3 | + ## Introduction Halide code is the same for every device we use. But for achieving the satisfied efficiency we should schedule computations properly. In this tutorial we describe diff --git a/doc/tutorials/dnn/dnn_javascript/dnn_javascript.markdown b/doc/tutorials/dnn/dnn_javascript/dnn_javascript.markdown index 9ad632fbc8..49b6f33adb 100644 --- a/doc/tutorials/dnn/dnn_javascript/dnn_javascript.markdown +++ b/doc/tutorials/dnn/dnn_javascript/dnn_javascript.markdown @@ -1,8 +1,15 @@ # How to run deep networks in browser {#tutorial_dnn_javascript} +@tableofcontents + @prev_tutorial{tutorial_dnn_yolo} @next_tutorial{tutorial_dnn_custom_layers} +| | | +| -: | :- | +| Original author | Dmitry Kurtaev | +| Compatibility | OpenCV >= 3.3.1 | + ## Introduction This tutorial will show us how to run deep learning models using OpenCV.js right in a browser. Tutorial refers a sample of face detection and face recognition diff --git a/doc/tutorials/dnn/dnn_text_spotting/dnn_text_spotting.markdown b/doc/tutorials/dnn/dnn_text_spotting/dnn_text_spotting.markdown index 0aa66f9e61..603ae9adec 100644 --- a/doc/tutorials/dnn/dnn_text_spotting/dnn_text_spotting.markdown +++ b/doc/tutorials/dnn/dnn_text_spotting/dnn_text_spotting.markdown @@ -1,7 +1,14 @@ # High Level API: TextDetectionModel and TextRecognitionModel {#tutorial_dnn_text_spotting} +@tableofcontents + @prev_tutorial{tutorial_dnn_OCR} +| | | +| -: | :- | +| Original author | Wenqing Zhang | +| Compatibility | OpenCV >= 4.5 | + ## Introduction In this tutorial, we will introduce the APIs for TextRecognitionModel and TextDetectionModel in detail. diff --git a/doc/tutorials/dnn/dnn_yolo/dnn_yolo.markdown b/doc/tutorials/dnn/dnn_yolo/dnn_yolo.markdown index 1552d4e654..0973396db5 100644 --- a/doc/tutorials/dnn/dnn_yolo/dnn_yolo.markdown +++ b/doc/tutorials/dnn/dnn_yolo/dnn_yolo.markdown @@ -1,9 +1,16 @@ YOLO DNNs {#tutorial_dnn_yolo} =============================== +@tableofcontents + @prev_tutorial{tutorial_dnn_android} @next_tutorial{tutorial_dnn_javascript} +| | | +| -: | :- | +| Original author | Alessandro de Oliveira Faria | +| Compatibility | OpenCV >= 3.3.1 | + Introduction ------------ diff --git a/doc/tutorials/dnn/table_of_content_dnn.markdown b/doc/tutorials/dnn/table_of_content_dnn.markdown index 0ed97749fb..dd3e596827 100644 --- a/doc/tutorials/dnn/table_of_content_dnn.markdown +++ b/doc/tutorials/dnn/table_of_content_dnn.markdown @@ -2,91 +2,11 @@ Deep Neural Networks (dnn module) {#tutorial_table_of_content_dnn} ===================================== - @subpage tutorial_dnn_googlenet - - *Languages:* C++ - - *Compatibility:* \> OpenCV 3.3 - - *Author:* Vitaliy Lyudvichenko - - In this tutorial you will learn how to use opencv_dnn module for image classification by using GoogLeNet trained network from Caffe model zoo. - - @subpage tutorial_dnn_halide - - *Languages:* Halide - - *Compatibility:* \> OpenCV 3.3 - - *Author:* Dmitry Kurtaev - - This tutorial guidelines how to run your models in OpenCV deep learning module using Halide language backend. - - @subpage tutorial_dnn_halide_scheduling - - *Languages:* Halide - - *Compatibility:* \> OpenCV 3.3 - - *Author:* Dmitry Kurtaev - - In this tutorial we describe the ways to schedule your networks using Halide backend in OpenCV deep learning module. - - @subpage tutorial_dnn_android - - *Languages:* Java - - *Compatibility:* \> OpenCV 3.3 - - *Author:* Dmitry Kurtaev - - This tutorial will show you how to run deep learning model using OpenCV on Android device. - - @subpage tutorial_dnn_yolo - - *Languages:* C++, Python - - *Compatibility:* \> OpenCV 3.3.1 - - *Author:* Alessandro de Oliveira Faria - - In this tutorial you will learn how to use opencv_dnn module using yolo_object_detection with device capture, video file or image. - - @subpage tutorial_dnn_javascript - - *Languages:* JavaScript - - *Compatibility:* \> OpenCV 3.3.1 - - *Author:* Dmitry Kurtaev - - In this tutorial we'll run deep learning models in browser using OpenCV.js. - - @subpage tutorial_dnn_custom_layers - - *Languages:* C++, Python - - *Compatibility:* \> OpenCV 3.4.1 - - *Author:* Dmitry Kurtaev - - How to define custom layers to import networks. - - @subpage tutorial_dnn_OCR - - *Languages:* C++ - - *Compatibility:* \> OpenCV 4.3 - - *Author:* Zihao Mu - - In this tutorial you will learn how to use opencv_dnn module using custom OCR models. - - @subpage tutorial_dnn_text_spotting - - *Languages:* C++ - - *Compatibility:* \> OpenCV 4.5 - - *Author:* Wenqing Zhang - - In these tutorial, we'll introduce how to use the high-level APIs for text recognition and text detection diff --git a/doc/tutorials/features2d/akaze_matching/akaze_matching.markdown b/doc/tutorials/features2d/akaze_matching/akaze_matching.markdown index 0635dfc4f6..9cb920ff1b 100644 --- a/doc/tutorials/features2d/akaze_matching/akaze_matching.markdown +++ b/doc/tutorials/features2d/akaze_matching/akaze_matching.markdown @@ -1,9 +1,16 @@ AKAZE local features matching {#tutorial_akaze_matching} ============================= +@tableofcontents + @prev_tutorial{tutorial_detection_of_planar_objects} @next_tutorial{tutorial_akaze_tracking} +| | | +| -: | :- | +| Original author | Fedor Morozov | +| Compatibility | OpenCV >= 3.0 | + Introduction ------------ diff --git a/doc/tutorials/features2d/akaze_tracking/akaze_tracking.markdown b/doc/tutorials/features2d/akaze_tracking/akaze_tracking.markdown index 58071ffd42..dd23957d5d 100644 --- a/doc/tutorials/features2d/akaze_tracking/akaze_tracking.markdown +++ b/doc/tutorials/features2d/akaze_tracking/akaze_tracking.markdown @@ -1,9 +1,16 @@ AKAZE and ORB planar tracking {#tutorial_akaze_tracking} ============================= +@tableofcontents + @prev_tutorial{tutorial_akaze_matching} @next_tutorial{tutorial_homography} +| | | +| -: | :- | +| Original author | Fedor Morozov | +| Compatibility | OpenCV >= 3.0 | + Introduction ------------ diff --git a/doc/tutorials/features2d/detection_of_planar_objects/detection_of_planar_objects.markdown b/doc/tutorials/features2d/detection_of_planar_objects/detection_of_planar_objects.markdown index 9febdb7acd..2d19e3387e 100644 --- a/doc/tutorials/features2d/detection_of_planar_objects/detection_of_planar_objects.markdown +++ b/doc/tutorials/features2d/detection_of_planar_objects/detection_of_planar_objects.markdown @@ -1,9 +1,15 @@ Detection of planar objects {#tutorial_detection_of_planar_objects} =========================== +@tableofcontents + @prev_tutorial{tutorial_feature_homography} @next_tutorial{tutorial_akaze_matching} +| | | +| -: | :- | +| Original author | Victor Eruhimov | +| Compatibility | OpenCV >= 3.0 | The goal of this tutorial is to learn how to use *features2d* and *calib3d* modules for detecting known planar objects in scenes. diff --git a/doc/tutorials/features2d/feature_description/feature_description.markdown b/doc/tutorials/features2d/feature_description/feature_description.markdown index 70a30096f5..1b77b6a624 100644 --- a/doc/tutorials/features2d/feature_description/feature_description.markdown +++ b/doc/tutorials/features2d/feature_description/feature_description.markdown @@ -1,9 +1,16 @@ Feature Description {#tutorial_feature_description} =================== +@tableofcontents + @prev_tutorial{tutorial_feature_detection} @next_tutorial{tutorial_feature_flann_matcher} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/features2d/feature_detection/feature_detection.markdown b/doc/tutorials/features2d/feature_detection/feature_detection.markdown index a22ef90520..0d52877318 100644 --- a/doc/tutorials/features2d/feature_detection/feature_detection.markdown +++ b/doc/tutorials/features2d/feature_detection/feature_detection.markdown @@ -1,9 +1,16 @@ Feature Detection {#tutorial_feature_detection} ================= +@tableofcontents + @prev_tutorial{tutorial_corner_subpixels} @next_tutorial{tutorial_feature_description} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.markdown b/doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.markdown index 2e5f12c922..1416604aa3 100644 --- a/doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.markdown +++ b/doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.markdown @@ -1,9 +1,16 @@ Feature Matching with FLANN {#tutorial_feature_flann_matcher} =========================== +@tableofcontents + @prev_tutorial{tutorial_feature_description} @next_tutorial{tutorial_feature_homography} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/features2d/feature_homography/feature_homography.markdown b/doc/tutorials/features2d/feature_homography/feature_homography.markdown index b2d23435eb..4b75c7f485 100644 --- a/doc/tutorials/features2d/feature_homography/feature_homography.markdown +++ b/doc/tutorials/features2d/feature_homography/feature_homography.markdown @@ -1,9 +1,16 @@ Features2D + Homography to find a known object {#tutorial_feature_homography} ============================================== +@tableofcontents + @prev_tutorial{tutorial_feature_flann_matcher} @next_tutorial{tutorial_detection_of_planar_objects} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/features2d/homography/homography.markdown b/doc/tutorials/features2d/homography/homography.markdown index 960511dd3d..10690ddf8d 100644 --- a/doc/tutorials/features2d/homography/homography.markdown +++ b/doc/tutorials/features2d/homography/homography.markdown @@ -1,8 +1,14 @@ Basic concepts of the homography explained with code {#tutorial_homography} ==================================================== +@tableofcontents + @prev_tutorial{tutorial_akaze_tracking} +| | | +| -: | :- | +| Compatibility | OpenCV >= 3.0 | + @tableofcontents Introduction {#tutorial_homography_Introduction} diff --git a/doc/tutorials/features2d/images/AKAZE_Match_Tutorial_Cover.png b/doc/tutorials/features2d/images/AKAZE_Match_Tutorial_Cover.png deleted file mode 100644 index fdf2007ba2..0000000000 Binary files a/doc/tutorials/features2d/images/AKAZE_Match_Tutorial_Cover.png and /dev/null differ diff --git a/doc/tutorials/features2d/images/AKAZE_Tracking_Tutorial_Cover.png b/doc/tutorials/features2d/images/AKAZE_Tracking_Tutorial_Cover.png deleted file mode 100644 index bb3272c96b..0000000000 Binary files a/doc/tutorials/features2d/images/AKAZE_Tracking_Tutorial_Cover.png and /dev/null differ diff --git a/doc/tutorials/features2d/images/Feature_Description_Tutorial_Cover.jpg b/doc/tutorials/features2d/images/Feature_Description_Tutorial_Cover.jpg deleted file mode 100644 index 975caa62ef..0000000000 Binary files a/doc/tutorials/features2d/images/Feature_Description_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/Feature_Detection_Tutorial_Cover.jpg b/doc/tutorials/features2d/images/Feature_Detection_Tutorial_Cover.jpg deleted file mode 100644 index cca9a2b438..0000000000 Binary files a/doc/tutorials/features2d/images/Feature_Detection_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/Feature_Flann_Matcher_Tutorial_Cover.jpg b/doc/tutorials/features2d/images/Feature_Flann_Matcher_Tutorial_Cover.jpg deleted file mode 100644 index e3f66fa0d1..0000000000 Binary files a/doc/tutorials/features2d/images/Feature_Flann_Matcher_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/Feature_Homography_Tutorial_Cover.jpg b/doc/tutorials/features2d/images/Feature_Homography_Tutorial_Cover.jpg deleted file mode 100644 index d509cd9eb7..0000000000 Binary files a/doc/tutorials/features2d/images/Feature_Homography_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/detection_of_planar_objects.png b/doc/tutorials/features2d/images/detection_of_planar_objects.png deleted file mode 100644 index 92de70cfdc..0000000000 Binary files a/doc/tutorials/features2d/images/detection_of_planar_objects.png and /dev/null differ diff --git a/doc/tutorials/features2d/images/trackingmotion/Corner_Subpixeles_Cover.jpg b/doc/tutorials/features2d/images/trackingmotion/Corner_Subpixeles_Cover.jpg deleted file mode 100644 index 61ec8d1d89..0000000000 Binary files a/doc/tutorials/features2d/images/trackingmotion/Corner_Subpixeles_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/trackingmotion/Generic_Corner_Detector_Cover.jpg b/doc/tutorials/features2d/images/trackingmotion/Generic_Corner_Detector_Cover.jpg deleted file mode 100644 index 89fc7bef7c..0000000000 Binary files a/doc/tutorials/features2d/images/trackingmotion/Generic_Corner_Detector_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/trackingmotion/Harris_Detector_Cover.jpg b/doc/tutorials/features2d/images/trackingmotion/Harris_Detector_Cover.jpg deleted file mode 100644 index bc4d816e32..0000000000 Binary files a/doc/tutorials/features2d/images/trackingmotion/Harris_Detector_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/images/trackingmotion/Shi_Tomasi_Detector_Cover.jpg b/doc/tutorials/features2d/images/trackingmotion/Shi_Tomasi_Detector_Cover.jpg deleted file mode 100644 index e0ee608d9c..0000000000 Binary files a/doc/tutorials/features2d/images/trackingmotion/Shi_Tomasi_Detector_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/features2d/table_of_content_features2d.markdown b/doc/tutorials/features2d/table_of_content_features2d.markdown index f42e2a571c..29c99018fc 100644 --- a/doc/tutorials/features2d/table_of_content_features2d.markdown +++ b/doc/tutorials/features2d/table_of_content_features2d.markdown @@ -1,128 +1,15 @@ 2D Features framework (feature2d module) {#tutorial_table_of_content_features2d} ========================================= -Learn about how to use the feature points detectors, descriptors and matching framework found inside -OpenCV. - - @subpage tutorial_harris_detector - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - Why is it a good idea to track corners? We learn how to use the Harris method to detect - corners. - - @subpage tutorial_good_features_to_track - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - Where we use an improved method to detect corners more accurately. - - @subpage tutorial_generic_corner_detector - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - Here you will learn how to use OpenCV functions to make your personalized corner detector! - - *Languages:* C++, Java, Python - - @subpage tutorial_corner_subpixels - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - Is pixel resolution enough? Here we learn a simple method to improve our corner location accuracy. - - @subpage tutorial_feature_detection - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - In this tutorial, you will use *features2d* to detect interest points. - - @subpage tutorial_feature_description - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - In this tutorial, you will use *features2d* to calculate feature vectors. - - @subpage tutorial_feature_flann_matcher - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - In this tutorial, you will use the FLANN library to make a fast matching. - - @subpage tutorial_feature_homography - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - In this tutorial, you will use *features2d* and *calib3d* to detect an object in a scene. - - @subpage tutorial_detection_of_planar_objects - - *Languages:* C++ - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Victor Eruhimov - - You will use *features2d* and *calib3d* modules for detecting known planar objects in - scenes. - - @subpage tutorial_akaze_matching - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 3.0 - - *Author:* Fedor Morozov - - Using *AKAZE* local features to find correspondence between two images. - - @subpage tutorial_akaze_tracking - - *Languages:* C++ - - *Compatibility:* \> OpenCV 3.0 - - *Author:* Fedor Morozov - - Using *AKAZE* and *ORB* for planar object tracking. - - @subpage tutorial_homography - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 3.0 - - This tutorial will explain the basic concepts of the homography with some - demonstration codes. diff --git a/doc/tutorials/features2d/trackingmotion/corner_subpixels/corner_subpixels.markdown b/doc/tutorials/features2d/trackingmotion/corner_subpixels/corner_subpixels.markdown index a9316b732d..e43fc3b344 100644 --- a/doc/tutorials/features2d/trackingmotion/corner_subpixels/corner_subpixels.markdown +++ b/doc/tutorials/features2d/trackingmotion/corner_subpixels/corner_subpixels.markdown @@ -1,9 +1,16 @@ Detecting corners location in subpixels {#tutorial_corner_subpixels} ======================================= +@tableofcontents + @prev_tutorial{tutorial_generic_corner_detector} @next_tutorial{tutorial_feature_detection} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/features2d/trackingmotion/generic_corner_detector/generic_corner_detector.markdown b/doc/tutorials/features2d/trackingmotion/generic_corner_detector/generic_corner_detector.markdown index 6082b9b91d..def95717b4 100644 --- a/doc/tutorials/features2d/trackingmotion/generic_corner_detector/generic_corner_detector.markdown +++ b/doc/tutorials/features2d/trackingmotion/generic_corner_detector/generic_corner_detector.markdown @@ -1,9 +1,15 @@ Creating your own corner detector {#tutorial_generic_corner_detector} ================================= +@tableofcontents + @prev_tutorial{tutorial_good_features_to_track} @next_tutorial{tutorial_corner_subpixels} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | Goal ---- diff --git a/doc/tutorials/features2d/trackingmotion/good_features_to_track/good_features_to_track.markdown b/doc/tutorials/features2d/trackingmotion/good_features_to_track/good_features_to_track.markdown index 7e8cf1157e..19023c24b5 100644 --- a/doc/tutorials/features2d/trackingmotion/good_features_to_track/good_features_to_track.markdown +++ b/doc/tutorials/features2d/trackingmotion/good_features_to_track/good_features_to_track.markdown @@ -1,9 +1,16 @@ Shi-Tomasi corner detector {#tutorial_good_features_to_track} ========================== +@tableofcontents + @prev_tutorial{tutorial_harris_detector} @next_tutorial{tutorial_generic_corner_detector} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/features2d/trackingmotion/harris_detector/harris_detector.markdown b/doc/tutorials/features2d/trackingmotion/harris_detector/harris_detector.markdown index f0b32683ce..1ed9cd51ac 100644 --- a/doc/tutorials/features2d/trackingmotion/harris_detector/harris_detector.markdown +++ b/doc/tutorials/features2d/trackingmotion/harris_detector/harris_detector.markdown @@ -1,8 +1,15 @@ Harris corner detector {#tutorial_harris_detector} ====================== +@tableofcontents + @next_tutorial{tutorial_good_features_to_track} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/gapi/anisotropic_segmentation/porting_anisotropic_segmentation.markdown b/doc/tutorials/gapi/anisotropic_segmentation/porting_anisotropic_segmentation.markdown index 2912c6fba5..fa25c2b0b3 100644 --- a/doc/tutorials/gapi/anisotropic_segmentation/porting_anisotropic_segmentation.markdown +++ b/doc/tutorials/gapi/anisotropic_segmentation/porting_anisotropic_segmentation.markdown @@ -1,5 +1,8 @@ # Porting anisotropic image segmentation on G-API {#tutorial_gapi_anisotropic_segmentation} +@prev_tutorial{tutorial_gapi_interactive_face_detection} +@next_tutorial{tutorial_gapi_face_beautification} + [TOC] # Introduction {#gapi_anisotropic_intro} diff --git a/doc/tutorials/gapi/face_beautification/face_beautification.markdown b/doc/tutorials/gapi/face_beautification/face_beautification.markdown index 9e56db0a54..1ceb416c99 100644 --- a/doc/tutorials/gapi/face_beautification/face_beautification.markdown +++ b/doc/tutorials/gapi/face_beautification/face_beautification.markdown @@ -1,5 +1,7 @@ # Implementing a face beautification algorithm with G-API {#tutorial_gapi_face_beautification} +@prev_tutorial{tutorial_gapi_anisotropic_segmentation} + [TOC] # Introduction {#gapi_fb_intro} diff --git a/doc/tutorials/gapi/interactive_face_detection/interactive_face_detection.markdown b/doc/tutorials/gapi/interactive_face_detection/interactive_face_detection.markdown index e5ca466da7..6f8b03bb61 100644 --- a/doc/tutorials/gapi/interactive_face_detection/interactive_face_detection.markdown +++ b/doc/tutorials/gapi/interactive_face_detection/interactive_face_detection.markdown @@ -1,5 +1,7 @@ # Face analytics pipeline with G-API {#tutorial_gapi_interactive_face_detection} +@next_tutorial{tutorial_gapi_anisotropic_segmentation} + [TOC] # Overview {#gapi_ifd_intro} diff --git a/doc/tutorials/gpu/gpu-basics-similarity/gpu_basics_similarity.markdown b/doc/tutorials/gpu/gpu-basics-similarity/gpu_basics_similarity.markdown index 74840efbc2..60e136fc6d 100644 --- a/doc/tutorials/gpu/gpu-basics-similarity/gpu_basics_similarity.markdown +++ b/doc/tutorials/gpu/gpu-basics-similarity/gpu_basics_similarity.markdown @@ -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} diff --git a/doc/tutorials/gpu/gpu-thrust-interop/gpu_thrust_interop.markdown b/doc/tutorials/gpu/gpu-thrust-interop/gpu_thrust_interop.markdown index c930f883a3..b5d79ab0bc 100644 --- a/doc/tutorials/gpu/gpu-thrust-interop/gpu_thrust_interop.markdown +++ b/doc/tutorials/gpu/gpu-thrust-interop/gpu_thrust_interop.markdown @@ -2,6 +2,8 @@ Using a cv::cuda::GpuMat with thrust {#tutorial_gpu_thrust_interop} =========================================== +@tableofcontents + @prev_tutorial{tutorial_gpu_basics_similarity} Goal diff --git a/doc/tutorials/highgui/images/Adding_Trackbars_Tutorial_Cover.jpg b/doc/tutorials/highgui/images/Adding_Trackbars_Tutorial_Cover.jpg deleted file mode 100644 index e914cab1d5..0000000000 Binary files a/doc/tutorials/highgui/images/Adding_Trackbars_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/highgui/table_of_content_highgui.markdown b/doc/tutorials/highgui/table_of_content_highgui.markdown deleted file mode 100644 index fb5a343664..0000000000 --- a/doc/tutorials/highgui/table_of_content_highgui.markdown +++ /dev/null @@ -1,14 +0,0 @@ -High Level GUI and Media (highgui module) {#tutorial_table_of_content_highgui} -========================================= - -This section contains tutorials about how to use the built-in graphical user interface of the library. - -- @subpage tutorial_trackbar - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - We will learn how to add a Trackbar to our applications diff --git a/doc/tutorials/images/calib3d.jpg b/doc/tutorials/images/calib3d.jpg deleted file mode 100644 index c5226a9a1d..0000000000 Binary files a/doc/tutorials/images/calib3d.jpg and /dev/null differ diff --git a/doc/tutorials/images/core.jpg b/doc/tutorials/images/core.jpg deleted file mode 100644 index 6fe819bd52..0000000000 Binary files a/doc/tutorials/images/core.jpg and /dev/null differ diff --git a/doc/tutorials/images/feature2D.jpg b/doc/tutorials/images/feature2D.jpg deleted file mode 100644 index 6744de0610..0000000000 Binary files a/doc/tutorials/images/feature2D.jpg and /dev/null differ diff --git a/doc/tutorials/images/general.jpg b/doc/tutorials/images/general.jpg deleted file mode 100644 index 95829d9c64..0000000000 Binary files a/doc/tutorials/images/general.jpg and /dev/null differ diff --git a/doc/tutorials/images/gpu.jpg b/doc/tutorials/images/gpu.jpg deleted file mode 100644 index 4cc053895c..0000000000 Binary files a/doc/tutorials/images/gpu.jpg and /dev/null differ diff --git a/doc/tutorials/images/highgui.jpg b/doc/tutorials/images/highgui.jpg deleted file mode 100644 index ada65fcb03..0000000000 Binary files a/doc/tutorials/images/highgui.jpg and /dev/null differ diff --git a/doc/tutorials/images/imgproc.jpg b/doc/tutorials/images/imgproc.jpg deleted file mode 100644 index ad7dafb0b7..0000000000 Binary files a/doc/tutorials/images/imgproc.jpg and /dev/null differ diff --git a/doc/tutorials/images/introduction.jpg b/doc/tutorials/images/introduction.jpg deleted file mode 100644 index 19a9284785..0000000000 Binary files a/doc/tutorials/images/introduction.jpg and /dev/null differ diff --git a/doc/tutorials/images/ml.jpg b/doc/tutorials/images/ml.jpg deleted file mode 100644 index 40acfcfbfd..0000000000 Binary files a/doc/tutorials/images/ml.jpg and /dev/null differ diff --git a/doc/tutorials/images/objdetect.jpg b/doc/tutorials/images/objdetect.jpg deleted file mode 100644 index c811f348f5..0000000000 Binary files a/doc/tutorials/images/objdetect.jpg and /dev/null differ diff --git a/doc/tutorials/images/opencv_ios.png b/doc/tutorials/images/opencv_ios.png deleted file mode 100644 index ce2031d7c0..0000000000 Binary files a/doc/tutorials/images/opencv_ios.png and /dev/null differ diff --git a/doc/tutorials/images/photo.png b/doc/tutorials/images/photo.png deleted file mode 100644 index f701ffacf1..0000000000 Binary files a/doc/tutorials/images/photo.png and /dev/null differ diff --git a/doc/tutorials/images/retina.jpg b/doc/tutorials/images/retina.jpg deleted file mode 100644 index 2d2465070f..0000000000 Binary files a/doc/tutorials/images/retina.jpg and /dev/null differ diff --git a/doc/tutorials/images/video.jpg b/doc/tutorials/images/video.jpg deleted file mode 100644 index dd5d0c4ed2..0000000000 Binary files a/doc/tutorials/images/video.jpg and /dev/null differ diff --git a/doc/tutorials/images/viz.jpg b/doc/tutorials/images/viz.jpg deleted file mode 100644 index 7ac8f3ed8d..0000000000 Binary files a/doc/tutorials/images/viz.jpg and /dev/null differ diff --git a/doc/tutorials/imgcodecs/images/gdal-io.jpg b/doc/tutorials/imgcodecs/images/gdal-io.jpg deleted file mode 100644 index b2974ed2fb..0000000000 Binary files a/doc/tutorials/imgcodecs/images/gdal-io.jpg and /dev/null differ diff --git a/doc/tutorials/imgcodecs/table_of_content_highgui.markdown b/doc/tutorials/imgcodecs/table_of_content_highgui.markdown deleted file mode 100644 index b63b7b00ce..0000000000 --- a/doc/tutorials/imgcodecs/table_of_content_highgui.markdown +++ /dev/null @@ -1,14 +0,0 @@ -Image Input and Output (imgcodecs module) {#tutorial_table_of_content_imgcodecs} -========================================= - -This section contains tutorials about how to read/save your image files. - -- @subpage tutorial_raster_io_gdal - - *Languages:* C++ - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Marvin Smith - - Read common GIS Raster and DEM files to display and manipulate geographic data. diff --git a/doc/tutorials/imgproc/anisotropic_image_segmentation/anisotropic_image_segmentation.markdown b/doc/tutorials/imgproc/anisotropic_image_segmentation/anisotropic_image_segmentation.markdown index 49fd621909..d480a19621 100644 --- a/doc/tutorials/imgproc/anisotropic_image_segmentation/anisotropic_image_segmentation.markdown +++ b/doc/tutorials/imgproc/anisotropic_image_segmentation/anisotropic_image_segmentation.markdown @@ -1,9 +1,16 @@ 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} +| | | +| -: | :- | +| Original author | Karpushin Vladislav | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/basic_geometric_drawing/basic_geometric_drawing.markdown b/doc/tutorials/imgproc/basic_geometric_drawing/basic_geometric_drawing.markdown index 77c44219f9..289000cbe2 100644 --- a/doc/tutorials/imgproc/basic_geometric_drawing/basic_geometric_drawing.markdown +++ b/doc/tutorials/imgproc/basic_geometric_drawing/basic_geometric_drawing.markdown @@ -1,8 +1,15 @@ Basic Drawing {#tutorial_basic_geometric_drawing} ============= +@tableofcontents + @next_tutorial{tutorial_random_generator_and_text} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goals ----- diff --git a/doc/tutorials/imgproc/erosion_dilatation/erosion_dilatation.markdown b/doc/tutorials/imgproc/erosion_dilatation/erosion_dilatation.markdown index 42f8c7c38f..99179f7691 100644 --- a/doc/tutorials/imgproc/erosion_dilatation/erosion_dilatation.markdown +++ b/doc/tutorials/imgproc/erosion_dilatation/erosion_dilatation.markdown @@ -1,9 +1,16 @@ Eroding and Dilating {#tutorial_erosion_dilatation} ==================== +@tableofcontents + @prev_tutorial{tutorial_gausian_median_blur_bilateral_filter} @next_tutorial{tutorial_opening_closing_hats} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.markdown b/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.markdown index a03f95b6e4..beb09641c1 100644 --- a/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.markdown +++ b/doc/tutorials/imgproc/gausian_median_blur_bilateral_filter/gausian_median_blur_bilateral_filter.markdown @@ -1,9 +1,16 @@ Smoothing Images {#tutorial_gausian_median_blur_bilateral_filter} ================ +@tableofcontents + @prev_tutorial{tutorial_random_generator_and_text} @next_tutorial{tutorial_erosion_dilatation} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/histograms/back_projection/back_projection.markdown b/doc/tutorials/imgproc/histograms/back_projection/back_projection.markdown index 61baca9bf1..4bc5f35012 100644 --- a/doc/tutorials/imgproc/histograms/back_projection/back_projection.markdown +++ b/doc/tutorials/imgproc/histograms/back_projection/back_projection.markdown @@ -1,9 +1,16 @@ Back Projection {#tutorial_back_projection} =============== +@tableofcontents + @prev_tutorial{tutorial_histogram_comparison} @next_tutorial{tutorial_template_matching} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.markdown b/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.markdown index 0623ba12f2..5f16931269 100644 --- a/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.markdown +++ b/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.markdown @@ -1,9 +1,16 @@ Histogram Calculation {#tutorial_histogram_calculation} ===================== +@tableofcontents + @prev_tutorial{tutorial_histogram_equalization} @next_tutorial{tutorial_histogram_comparison} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.markdown b/doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.markdown index 8b7bf78377..cc38cba07a 100644 --- a/doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.markdown +++ b/doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.markdown @@ -1,9 +1,16 @@ Histogram Comparison {#tutorial_histogram_comparison} ==================== +@tableofcontents + @prev_tutorial{tutorial_histogram_calculation} @next_tutorial{tutorial_back_projection} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/histograms/histogram_equalization/histogram_equalization.markdown b/doc/tutorials/imgproc/histograms/histogram_equalization/histogram_equalization.markdown index 271c6d1347..e80032ba7c 100644 --- a/doc/tutorials/imgproc/histograms/histogram_equalization/histogram_equalization.markdown +++ b/doc/tutorials/imgproc/histograms/histogram_equalization/histogram_equalization.markdown @@ -1,9 +1,16 @@ Histogram Equalization {#tutorial_histogram_equalization} ====================== +@tableofcontents + @prev_tutorial{tutorial_warp_affine} @next_tutorial{tutorial_histogram_calculation} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/histograms/template_matching/template_matching.markdown b/doc/tutorials/imgproc/histograms/template_matching/template_matching.markdown index 5cc39e3b17..f03f761dd1 100644 --- a/doc/tutorials/imgproc/histograms/template_matching/template_matching.markdown +++ b/doc/tutorials/imgproc/histograms/template_matching/template_matching.markdown @@ -1,9 +1,16 @@ Template Matching {#tutorial_template_matching} ================= +@tableofcontents + @prev_tutorial{tutorial_back_projection} @next_tutorial{tutorial_find_contours} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/hitOrMiss/hitOrMiss.markdown b/doc/tutorials/imgproc/hitOrMiss/hitOrMiss.markdown index c55f09296f..887b3765c0 100644 --- a/doc/tutorials/imgproc/hitOrMiss/hitOrMiss.markdown +++ b/doc/tutorials/imgproc/hitOrMiss/hitOrMiss.markdown @@ -1,9 +1,16 @@ Hit-or-Miss {#tutorial_hitOrMiss} ================================= +@tableofcontents + @prev_tutorial{tutorial_opening_closing_hats} @next_tutorial{tutorial_morph_lines_detection} +| | | +| -: | :- | +| Original author | Lorena García | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/images/Morphology_1_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/Morphology_1_Tutorial_Cover.jpg deleted file mode 100644 index 67da3a5ac0..0000000000 Binary files a/doc/tutorials/imgproc/images/Morphology_1_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/Morphology_2_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/Morphology_2_Tutorial_Cover.jpg deleted file mode 100644 index b3a1c55659..0000000000 Binary files a/doc/tutorials/imgproc/images/Morphology_2_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/Morphology_3_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/Morphology_3_Tutorial_Cover.jpg deleted file mode 100644 index 1eddc17554..0000000000 Binary files a/doc/tutorials/imgproc/images/Morphology_3_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/Pyramids_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/Pyramids_Tutorial_Cover.jpg deleted file mode 100644 index 0851cab278..0000000000 Binary files a/doc/tutorials/imgproc/images/Pyramids_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/Smoothing_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/Smoothing_Tutorial_Cover.jpg deleted file mode 100644 index 67656ab4b3..0000000000 Binary files a/doc/tutorials/imgproc/images/Smoothing_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/Threshold_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/Threshold_Tutorial_Cover.jpg deleted file mode 100644 index 6b115d88f5..0000000000 Binary files a/doc/tutorials/imgproc/images/Threshold_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/histograms/Back_Projection_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/histograms/Back_Projection_Tutorial_Cover.jpg deleted file mode 100644 index 013bdf6f2f..0000000000 Binary files a/doc/tutorials/imgproc/images/histograms/Back_Projection_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/histograms/Histogram_Calculation_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/histograms/Histogram_Calculation_Tutorial_Cover.jpg deleted file mode 100644 index 32d09e37e8..0000000000 Binary files a/doc/tutorials/imgproc/images/histograms/Histogram_Calculation_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/histograms/Histogram_Comparison_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/histograms/Histogram_Comparison_Tutorial_Cover.jpg deleted file mode 100644 index 7538a7203d..0000000000 Binary files a/doc/tutorials/imgproc/images/histograms/Histogram_Comparison_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/histograms/Histogram_Equalization_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/histograms/Histogram_Equalization_Tutorial_Cover.jpg deleted file mode 100644 index fbc5866835..0000000000 Binary files a/doc/tutorials/imgproc/images/histograms/Histogram_Equalization_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/histograms/Template_Matching_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/histograms/Template_Matching_Tutorial_Cover.jpg deleted file mode 100644 index e84f52119a..0000000000 Binary files a/doc/tutorials/imgproc/images/histograms/Template_Matching_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Canny_Detector_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Canny_Detector_Tutorial_Cover.jpg deleted file mode 100644 index bcd9ff9ace..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Canny_Detector_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/CopyMakeBorder_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/CopyMakeBorder_Tutorial_Cover.jpg deleted file mode 100644 index f241ff2238..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/CopyMakeBorder_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Distance_Transformation_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Distance_Transformation_Tutorial_Cover.jpg deleted file mode 100644 index 8effc42a04..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Distance_Transformation_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Filter_2D_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Filter_2D_Tutorial_Cover.jpg deleted file mode 100644 index c2f5809108..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Filter_2D_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Hough_Circle_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Hough_Circle_Tutorial_Cover.jpg deleted file mode 100644 index 175180ae81..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Hough_Circle_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Hough_Lines_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Hough_Lines_Tutorial_Cover.jpg deleted file mode 100644 index 4211ee2629..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Hough_Lines_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Laplace_Operator_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Laplace_Operator_Tutorial_Cover.jpg deleted file mode 100644 index 14373f25b1..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Laplace_Operator_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Remap_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Remap_Tutorial_Cover.jpg deleted file mode 100644 index bfb55dbdac..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Remap_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Sobel_Derivatives_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Sobel_Derivatives_Tutorial_Cover.jpg deleted file mode 100644 index fbe17c8978..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Sobel_Derivatives_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/imgtrans/Warp_Affine_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/imgtrans/Warp_Affine_Tutorial_Cover.jpg deleted file mode 100644 index 5655789bd6..0000000000 Binary files a/doc/tutorials/imgproc/images/imgtrans/Warp_Affine_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/shapedescriptors/Bounding_Rects_Circles_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/shapedescriptors/Bounding_Rects_Circles_Tutorial_Cover.jpg deleted file mode 100644 index be2ae57d40..0000000000 Binary files a/doc/tutorials/imgproc/images/shapedescriptors/Bounding_Rects_Circles_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/shapedescriptors/Bounding_Rotated_Ellipses_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/shapedescriptors/Bounding_Rotated_Ellipses_Tutorial_Cover.jpg deleted file mode 100644 index b7330592b5..0000000000 Binary files a/doc/tutorials/imgproc/images/shapedescriptors/Bounding_Rotated_Ellipses_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/shapedescriptors/Find_Contours_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/shapedescriptors/Find_Contours_Tutorial_Cover.jpg deleted file mode 100644 index 82888a1ba9..0000000000 Binary files a/doc/tutorials/imgproc/images/shapedescriptors/Find_Contours_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/shapedescriptors/Hull_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/shapedescriptors/Hull_Tutorial_Cover.jpg deleted file mode 100644 index a7a1b6ebeb..0000000000 Binary files a/doc/tutorials/imgproc/images/shapedescriptors/Hull_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/shapedescriptors/Moments_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/shapedescriptors/Moments_Tutorial_Cover.jpg deleted file mode 100644 index 1e865eb371..0000000000 Binary files a/doc/tutorials/imgproc/images/shapedescriptors/Moments_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/images/shapedescriptors/Point_Polygon_Test_Tutorial_Cover.jpg b/doc/tutorials/imgproc/images/shapedescriptors/Point_Polygon_Test_Tutorial_Cover.jpg deleted file mode 100644 index 9980df8421..0000000000 Binary files a/doc/tutorials/imgproc/images/shapedescriptors/Point_Polygon_Test_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/imgproc/imgtrans/canny_detector/canny_detector.markdown b/doc/tutorials/imgproc/imgtrans/canny_detector/canny_detector.markdown index 01bf6f862d..d585c77520 100644 --- a/doc/tutorials/imgproc/imgtrans/canny_detector/canny_detector.markdown +++ b/doc/tutorials/imgproc/imgtrans/canny_detector/canny_detector.markdown @@ -1,9 +1,16 @@ Canny Edge Detector {#tutorial_canny_detector} =================== +@tableofcontents + @prev_tutorial{tutorial_laplace_operator} @next_tutorial{tutorial_hough_lines} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/copyMakeBorder/copyMakeBorder.markdown b/doc/tutorials/imgproc/imgtrans/copyMakeBorder/copyMakeBorder.markdown index 8a4bbc0702..4acc06064f 100644 --- a/doc/tutorials/imgproc/imgtrans/copyMakeBorder/copyMakeBorder.markdown +++ b/doc/tutorials/imgproc/imgtrans/copyMakeBorder/copyMakeBorder.markdown @@ -1,9 +1,16 @@ Adding borders to your images {#tutorial_copyMakeBorder} ============================= +@tableofcontents + @prev_tutorial{tutorial_filter_2d} @next_tutorial{tutorial_sobel_derivatives} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/distance_transformation/distance_transform.markdown b/doc/tutorials/imgproc/imgtrans/distance_transformation/distance_transform.markdown index a5afffdbb1..28b81f4e6e 100644 --- a/doc/tutorials/imgproc/imgtrans/distance_transformation/distance_transform.markdown +++ b/doc/tutorials/imgproc/imgtrans/distance_transformation/distance_transform.markdown @@ -1,9 +1,16 @@ 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} +| | | +| -: | :- | +| Original author | Theodore Tsesmelis | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/filter_2d/filter_2d.markdown b/doc/tutorials/imgproc/imgtrans/filter_2d/filter_2d.markdown index 454f745177..efe3fdf9ae 100644 --- a/doc/tutorials/imgproc/imgtrans/filter_2d/filter_2d.markdown +++ b/doc/tutorials/imgproc/imgtrans/filter_2d/filter_2d.markdown @@ -1,9 +1,16 @@ Making your own linear filters! {#tutorial_filter_2d} =============================== +@tableofcontents + @prev_tutorial{tutorial_threshold_inRange} @next_tutorial{tutorial_copyMakeBorder} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/hough_circle/hough_circle.markdown b/doc/tutorials/imgproc/imgtrans/hough_circle/hough_circle.markdown index fe2f88be15..6b2f215901 100644 --- a/doc/tutorials/imgproc/imgtrans/hough_circle/hough_circle.markdown +++ b/doc/tutorials/imgproc/imgtrans/hough_circle/hough_circle.markdown @@ -1,9 +1,16 @@ Hough Circle Transform {#tutorial_hough_circle} ====================== +@tableofcontents + @prev_tutorial{tutorial_hough_lines} @next_tutorial{tutorial_remap} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/hough_lines/hough_lines.markdown b/doc/tutorials/imgproc/imgtrans/hough_lines/hough_lines.markdown index 8b24d87a2d..496b956aed 100644 --- a/doc/tutorials/imgproc/imgtrans/hough_lines/hough_lines.markdown +++ b/doc/tutorials/imgproc/imgtrans/hough_lines/hough_lines.markdown @@ -1,9 +1,16 @@ Hough Line Transform {#tutorial_hough_lines} ==================== +@tableofcontents + @prev_tutorial{tutorial_canny_detector} @next_tutorial{tutorial_hough_circle} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/laplace_operator/laplace_operator.markdown b/doc/tutorials/imgproc/imgtrans/laplace_operator/laplace_operator.markdown index 63aed356b2..27b4aa98db 100644 --- a/doc/tutorials/imgproc/imgtrans/laplace_operator/laplace_operator.markdown +++ b/doc/tutorials/imgproc/imgtrans/laplace_operator/laplace_operator.markdown @@ -1,9 +1,16 @@ Laplace Operator {#tutorial_laplace_operator} ================ +@tableofcontents + @prev_tutorial{tutorial_sobel_derivatives} @next_tutorial{tutorial_canny_detector} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/remap/remap.markdown b/doc/tutorials/imgproc/imgtrans/remap/remap.markdown index 58c79c6039..3c3d95c4cc 100644 --- a/doc/tutorials/imgproc/imgtrans/remap/remap.markdown +++ b/doc/tutorials/imgproc/imgtrans/remap/remap.markdown @@ -1,9 +1,16 @@ Remapping {#tutorial_remap} ========= +@tableofcontents + @prev_tutorial{tutorial_hough_circle} @next_tutorial{tutorial_warp_affine} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/sobel_derivatives/sobel_derivatives.markdown b/doc/tutorials/imgproc/imgtrans/sobel_derivatives/sobel_derivatives.markdown index f8725d2a12..4183476524 100644 --- a/doc/tutorials/imgproc/imgtrans/sobel_derivatives/sobel_derivatives.markdown +++ b/doc/tutorials/imgproc/imgtrans/sobel_derivatives/sobel_derivatives.markdown @@ -1,9 +1,16 @@ Sobel Derivatives {#tutorial_sobel_derivatives} ================= +@tableofcontents + @prev_tutorial{tutorial_copyMakeBorder} @next_tutorial{tutorial_laplace_operator} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.markdown b/doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.markdown index b5023ad03e..22d5298f18 100644 --- a/doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.markdown +++ b/doc/tutorials/imgproc/imgtrans/warp_affine/warp_affine.markdown @@ -1,9 +1,16 @@ Affine Transformations {#tutorial_warp_affine} ====================== +@tableofcontents + @prev_tutorial{tutorial_remap} @next_tutorial{tutorial_histogram_equalization} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/morph_lines_detection/morph_lines_detection.md b/doc/tutorials/imgproc/morph_lines_detection/morph_lines_detection.md index ce9e81e211..74b117f849 100644 --- a/doc/tutorials/imgproc/morph_lines_detection/morph_lines_detection.md +++ b/doc/tutorials/imgproc/morph_lines_detection/morph_lines_detection.md @@ -1,9 +1,16 @@ Extract horizontal and vertical lines by using morphological operations {#tutorial_morph_lines_detection} ============= +@tableofcontents + @prev_tutorial{tutorial_hitOrMiss} @next_tutorial{tutorial_pyramids} +| | | +| -: | :- | +| Original author | Theodore Tsesmelis | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/motion_deblur_filter/motion_deblur_filter.markdown b/doc/tutorials/imgproc/motion_deblur_filter/motion_deblur_filter.markdown index 704e0ef275..fd286deda5 100644 --- a/doc/tutorials/imgproc/motion_deblur_filter/motion_deblur_filter.markdown +++ b/doc/tutorials/imgproc/motion_deblur_filter/motion_deblur_filter.markdown @@ -1,9 +1,16 @@ 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} +| | | +| -: | :- | +| Original author | Karpushin Vladislav | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/opening_closing_hats/opening_closing_hats.markdown b/doc/tutorials/imgproc/opening_closing_hats/opening_closing_hats.markdown index e918c65ce7..8f991176d9 100644 --- a/doc/tutorials/imgproc/opening_closing_hats/opening_closing_hats.markdown +++ b/doc/tutorials/imgproc/opening_closing_hats/opening_closing_hats.markdown @@ -1,9 +1,16 @@ More Morphology Transformations {#tutorial_opening_closing_hats} =============================== +@tableofcontents + @prev_tutorial{tutorial_erosion_dilatation} @next_tutorial{tutorial_hitOrMiss} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/out_of_focus_deblur_filter/out_of_focus_deblur_filter.markdown b/doc/tutorials/imgproc/out_of_focus_deblur_filter/out_of_focus_deblur_filter.markdown index 800286d9a8..13db710b32 100644 --- a/doc/tutorials/imgproc/out_of_focus_deblur_filter/out_of_focus_deblur_filter.markdown +++ b/doc/tutorials/imgproc/out_of_focus_deblur_filter/out_of_focus_deblur_filter.markdown @@ -1,9 +1,16 @@ Out-of-focus Deblur Filter {#tutorial_out_of_focus_deblur_filter} ========================== +@tableofcontents + @prev_tutorial{tutorial_distance_transform} @next_tutorial{tutorial_motion_deblur_filter} +| | | +| -: | :- | +| Original author | Karpushin Vladislav | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/periodic_noise_removing_filter/periodic_noise_removing_filter.markdown b/doc/tutorials/imgproc/periodic_noise_removing_filter/periodic_noise_removing_filter.markdown index 3c36a1e9c4..dff204a2f2 100644 --- a/doc/tutorials/imgproc/periodic_noise_removing_filter/periodic_noise_removing_filter.markdown +++ b/doc/tutorials/imgproc/periodic_noise_removing_filter/periodic_noise_removing_filter.markdown @@ -1,8 +1,15 @@ Periodic Noise Removing Filter {#tutorial_periodic_noise_removing_filter} ========================== +@tableofcontents + @prev_tutorial{tutorial_anisotropic_image_segmentation_by_a_gst} +| | | +| -: | :- | +| Original author | Karpushin Vladislav | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/pyramids/pyramids.markdown b/doc/tutorials/imgproc/pyramids/pyramids.markdown index c11a80527f..adbd086cf0 100644 --- a/doc/tutorials/imgproc/pyramids/pyramids.markdown +++ b/doc/tutorials/imgproc/pyramids/pyramids.markdown @@ -1,9 +1,16 @@ Image Pyramids {#tutorial_pyramids} ============== +@tableofcontents + @prev_tutorial{tutorial_morph_lines_detection} @next_tutorial{tutorial_threshold} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/random_generator_and_text/random_generator_and_text.markdown b/doc/tutorials/imgproc/random_generator_and_text/random_generator_and_text.markdown index f588bbc44d..4100d91622 100644 --- a/doc/tutorials/imgproc/random_generator_and_text/random_generator_and_text.markdown +++ b/doc/tutorials/imgproc/random_generator_and_text/random_generator_and_text.markdown @@ -1,9 +1,16 @@ 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} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goals ----- diff --git a/doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.markdown b/doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.markdown index d6194dfd3f..2c6d59b579 100644 --- a/doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.markdown +++ b/doc/tutorials/imgproc/shapedescriptors/bounding_rects_circles/bounding_rects_circles.markdown @@ -1,9 +1,16 @@ Creating Bounding boxes and circles for contours {#tutorial_bounding_rects_circles} ================================================ +@tableofcontents + @prev_tutorial{tutorial_hull} @next_tutorial{tutorial_bounding_rotated_ellipses} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/shapedescriptors/bounding_rotated_ellipses/bounding_rotated_ellipses.markdown b/doc/tutorials/imgproc/shapedescriptors/bounding_rotated_ellipses/bounding_rotated_ellipses.markdown index a4c29b2fde..c15d73e291 100644 --- a/doc/tutorials/imgproc/shapedescriptors/bounding_rotated_ellipses/bounding_rotated_ellipses.markdown +++ b/doc/tutorials/imgproc/shapedescriptors/bounding_rotated_ellipses/bounding_rotated_ellipses.markdown @@ -1,9 +1,16 @@ Creating Bounding rotated boxes and ellipses for contours {#tutorial_bounding_rotated_ellipses} ========================================================= +@tableofcontents + @prev_tutorial{tutorial_bounding_rects_circles} @next_tutorial{tutorial_moments} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.markdown b/doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.markdown index b8aa6d898f..dc112b9402 100644 --- a/doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.markdown +++ b/doc/tutorials/imgproc/shapedescriptors/find_contours/find_contours.markdown @@ -1,9 +1,16 @@ Finding contours in your image {#tutorial_find_contours} ============================== +@tableofcontents + @prev_tutorial{tutorial_template_matching} @next_tutorial{tutorial_hull} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/shapedescriptors/hull/hull.markdown b/doc/tutorials/imgproc/shapedescriptors/hull/hull.markdown index e40934e6e2..36763fd81d 100644 --- a/doc/tutorials/imgproc/shapedescriptors/hull/hull.markdown +++ b/doc/tutorials/imgproc/shapedescriptors/hull/hull.markdown @@ -1,9 +1,16 @@ Convex Hull {#tutorial_hull} =========== +@tableofcontents + @prev_tutorial{tutorial_find_contours} @next_tutorial{tutorial_bounding_rects_circles} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/shapedescriptors/moments/moments.markdown b/doc/tutorials/imgproc/shapedescriptors/moments/moments.markdown index 683568ab0c..4e47242cd1 100644 --- a/doc/tutorials/imgproc/shapedescriptors/moments/moments.markdown +++ b/doc/tutorials/imgproc/shapedescriptors/moments/moments.markdown @@ -1,9 +1,16 @@ Image Moments {#tutorial_moments} ============= +@tableofcontents + @prev_tutorial{tutorial_bounding_rotated_ellipses} @next_tutorial{tutorial_point_polygon_test} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/shapedescriptors/point_polygon_test/point_polygon_test.markdown b/doc/tutorials/imgproc/shapedescriptors/point_polygon_test/point_polygon_test.markdown index 2e02fb8815..6f4c6d7ebd 100644 --- a/doc/tutorials/imgproc/shapedescriptors/point_polygon_test/point_polygon_test.markdown +++ b/doc/tutorials/imgproc/shapedescriptors/point_polygon_test/point_polygon_test.markdown @@ -1,9 +1,16 @@ Point Polygon Test {#tutorial_point_polygon_test} ================== +@tableofcontents + @prev_tutorial{tutorial_moments} @next_tutorial{tutorial_distance_transform} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/table_of_content_imgproc.markdown b/doc/tutorials/imgproc/table_of_content_imgproc.markdown index b0a8b8260b..edffd706bd 100644 --- a/doc/tutorials/imgproc/table_of_content_imgproc.markdown +++ b/doc/tutorials/imgproc/table_of_content_imgproc.markdown @@ -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. diff --git a/doc/tutorials/imgproc/table_of_contents_contours.markdown b/doc/tutorials/imgproc/table_of_contents_contours.markdown index 3e8bba3a62..cc2f133bfd 100644 --- a/doc/tutorials/imgproc/table_of_contents_contours.markdown +++ b/doc/tutorials/imgproc/table_of_contents_contours.markdown @@ -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 diff --git a/doc/tutorials/imgproc/threshold/threshold.markdown b/doc/tutorials/imgproc/threshold/threshold.markdown index a452d14042..f7458d192c 100644 --- a/doc/tutorials/imgproc/threshold/threshold.markdown +++ b/doc/tutorials/imgproc/threshold/threshold.markdown @@ -1,9 +1,16 @@ Basic Thresholding Operations {#tutorial_threshold} ============================= +@tableofcontents + @prev_tutorial{tutorial_pyramids} @next_tutorial{tutorial_threshold_inRange} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/imgproc/threshold_inRange/threshold_inRange.markdown b/doc/tutorials/imgproc/threshold_inRange/threshold_inRange.markdown index 0995b9758c..f05ebe477a 100644 --- a/doc/tutorials/imgproc/threshold_inRange/threshold_inRange.markdown +++ b/doc/tutorials/imgproc/threshold_inRange/threshold_inRange.markdown @@ -1,9 +1,16 @@ Thresholding Operations using inRange {#tutorial_threshold_inRange} ===================================== +@tableofcontents + @prev_tutorial{tutorial_threshold} @next_tutorial{tutorial_filter_2d} +| | | +| -: | :- | +| Original author | Lorena García | +| Compatibility | Rishiraj Surti | + Goal ---- diff --git a/doc/tutorials/introduction/config_reference/config_reference.markdown b/doc/tutorials/introduction/config_reference/config_reference.markdown index a6bde80102..714a392a85 100644 --- a/doc/tutorials/introduction/config_reference/config_reference.markdown +++ b/doc/tutorials/introduction/config_reference/config_reference.markdown @@ -1,6 +1,9 @@ OpenCV configuration options reference {#tutorial_config_reference} ====================================== +@prev_tutorial{tutorial_general_install} +@next_tutorial{tutorial_linux_install} + @tableofcontents # Introduction {#tutorial_config_reference_intro} diff --git a/doc/tutorials/introduction/crosscompilation/arm_crosscompile_with_cmake.markdown b/doc/tutorials/introduction/crosscompilation/arm_crosscompile_with_cmake.markdown index 91353b2990..058b5c92f2 100644 --- a/doc/tutorials/introduction/crosscompilation/arm_crosscompile_with_cmake.markdown +++ b/doc/tutorials/introduction/crosscompilation/arm_crosscompile_with_cmake.markdown @@ -1,7 +1,7 @@ Cross compilation for ARM based Linux systems {#tutorial_arm_crosscompile_with_cmake} ============================================= -@prev_tutorial{tutorial_ios_install} +@prev_tutorial{tutorial_macos_install} @next_tutorial{tutorial_building_tegra_cuda} | | | diff --git a/doc/tutorials/introduction/documenting_opencv/documentation_tutorial.markdown b/doc/tutorials/introduction/documenting_opencv/documentation_tutorial.markdown index 2cce88c856..3654f939c0 100644 --- a/doc/tutorials/introduction/documenting_opencv/documentation_tutorial.markdown +++ b/doc/tutorials/introduction/documenting_opencv/documentation_tutorial.markdown @@ -667,20 +667,9 @@ Write the tutorial {#tutorial_documentation_steps_tutorial} 6. Add newly created tutorial to the corresponding table of contents. Just find "table_of_content_*.markdown" file with the needed table and place new record in it similar to existing ones. - @verbatim -- @subpage tutorial_windows_visual_studio_image_watch - _Languages:_ C++, Java, Python - - _Compatibility:_ \>= OpenCV 2.4 - - _Author:_ Wolf Kienzle - - You will learn how to visualize OpenCV matrices and images within Visual Studio 2012. - @endverbatim - As you can see it is just a list item with special _subpage_ command which marks your page as a - child and places it into the existing pages hierarchy. Add compatibility information, - authors list and short description. Also note the list item indent, empty lines between + It is simply a list item with special _subpage_ command which marks your page as a + child and places it into the existing pages hierarchy. Also note the list item indent, empty lines between paragraphs and special _italic_ markers. 7. Generate doxygen documentation and verify results. diff --git a/doc/tutorials/introduction/general_install/general_install.markdown b/doc/tutorials/introduction/general_install/general_install.markdown index 2fa3a17223..e8c93f430e 100644 --- a/doc/tutorials/introduction/general_install/general_install.markdown +++ b/doc/tutorials/introduction/general_install/general_install.markdown @@ -1,6 +1,8 @@ OpenCV installation overview {#tutorial_general_install} ============================ +@next_tutorial{tutorial_config_reference} + @tableofcontents There are two ways of installing OpenCV on your machine: download prebuilt version for your platform or compile from sources. diff --git a/doc/tutorials/introduction/images/Display_Image_Tutorial_Result.jpg b/doc/tutorials/introduction/images/Display_Image_Tutorial_Result.jpg deleted file mode 100644 index 16400698f0..0000000000 Binary files a/doc/tutorials/introduction/images/Display_Image_Tutorial_Result.jpg and /dev/null differ diff --git a/doc/tutorials/introduction/images/Java_logo.png b/doc/tutorials/introduction/images/Java_logo.png deleted file mode 100644 index 2114751896..0000000000 Binary files a/doc/tutorials/introduction/images/Java_logo.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/android_logo.png b/doc/tutorials/introduction/images/android_logo.png deleted file mode 100644 index 69bccd74d2..0000000000 Binary files a/doc/tutorials/introduction/images/android_logo.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/clojure-logo.png b/doc/tutorials/introduction/images/clojure-logo.png deleted file mode 100644 index f8a29b965c..0000000000 Binary files a/doc/tutorials/introduction/images/clojure-logo.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/eclipse-logo.png b/doc/tutorials/introduction/images/eclipse-logo.png deleted file mode 100644 index 64ec01c253..0000000000 Binary files a/doc/tutorials/introduction/images/eclipse-logo.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/eclipse_cpp_logo.jpeg b/doc/tutorials/introduction/images/eclipse_cpp_logo.jpeg deleted file mode 100644 index e63e26b1b4..0000000000 Binary files a/doc/tutorials/introduction/images/eclipse_cpp_logo.jpeg and /dev/null differ diff --git a/doc/tutorials/introduction/images/gccegg-65.jpg b/doc/tutorials/introduction/images/gccegg-65.jpg deleted file mode 100644 index e3e44d1f6c..0000000000 Binary files a/doc/tutorials/introduction/images/gccegg-65.jpg and /dev/null differ diff --git a/doc/tutorials/introduction/images/how_to_write_a_tutorial.png b/doc/tutorials/introduction/images/how_to_write_a_tutorial.png deleted file mode 100644 index ae40fc3d32..0000000000 Binary files a/doc/tutorials/introduction/images/how_to_write_a_tutorial.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/lena.png b/doc/tutorials/introduction/images/lena.png deleted file mode 100644 index 68342fae53..0000000000 Binary files a/doc/tutorials/introduction/images/lena.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/opencv_ios.png b/doc/tutorials/introduction/images/opencv_ios.png deleted file mode 100644 index ce2031d7c0..0000000000 Binary files a/doc/tutorials/introduction/images/opencv_ios.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/ubuntu-logo.jpg b/doc/tutorials/introduction/images/ubuntu-logo.jpg deleted file mode 100644 index a34243496c..0000000000 Binary files a/doc/tutorials/introduction/images/ubuntu-logo.jpg and /dev/null differ diff --git a/doc/tutorials/introduction/images/visual-studio-2010-logo.jpg b/doc/tutorials/introduction/images/visual-studio-2010-logo.jpg deleted file mode 100644 index 8b053695c4..0000000000 Binary files a/doc/tutorials/introduction/images/visual-studio-2010-logo.jpg and /dev/null differ diff --git a/doc/tutorials/introduction/images/visual_studio_image_watch.png b/doc/tutorials/introduction/images/visual_studio_image_watch.png deleted file mode 100644 index e693344df8..0000000000 Binary files a/doc/tutorials/introduction/images/visual_studio_image_watch.png and /dev/null differ diff --git a/doc/tutorials/introduction/images/windows_logo.jpg b/doc/tutorials/introduction/images/windows_logo.jpg deleted file mode 100644 index e35a8a86ae..0000000000 Binary files a/doc/tutorials/introduction/images/windows_logo.jpg and /dev/null differ diff --git a/doc/tutorials/introduction/macos_install/macos_install.markdown b/doc/tutorials/introduction/macos_install/macos_install.markdown index ec708101a0..dadce9304c 100644 --- a/doc/tutorials/introduction/macos_install/macos_install.markdown +++ b/doc/tutorials/introduction/macos_install/macos_install.markdown @@ -2,7 +2,7 @@ Installation in MacOS {#tutorial_macos_install} ===================== @prev_tutorial{tutorial_android_ocl_intro} -@next_tutorial{tutorial_ios_install} +@next_tutorial{tutorial_arm_crosscompile_with_cmake} | | | | -: | :- | diff --git a/doc/tutorials/introduction/table_of_content_introduction.markdown b/doc/tutorials/introduction/table_of_content_introduction.markdown index 2eb95e7b72..d1f2aa3ca3 100644 --- a/doc/tutorials/introduction/table_of_content_introduction.markdown +++ b/doc/tutorials/introduction/table_of_content_introduction.markdown @@ -25,9 +25,9 @@ Introduction to OpenCV {#tutorial_table_of_content_introduction} ##### Other platforms - @subpage tutorial_macos_install -- @subpage tutorial_ios_install - @subpage tutorial_arm_crosscompile_with_cmake - @subpage tutorial_building_tegra_cuda +- @ref tutorial_ios_install ##### Usage basics - @subpage tutorial_display_image - We will learn how to load an image from file and display it using OpenCV diff --git a/doc/tutorials/ios/hello/hello.markdown b/doc/tutorials/ios/hello/hello.markdown index fc6992cc70..87d39fb8fb 100644 --- a/doc/tutorials/ios/hello/hello.markdown +++ b/doc/tutorials/ios/hello/hello.markdown @@ -1,8 +1,16 @@ OpenCV iOS Hello {#tutorial_hello} ================ +@tableofcontents + +@prev_tutorial{tutorial_ios_install} @next_tutorial{tutorial_image_manipulation} +| | | +| -: | :- | +| Original author | Charu Hans | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/ios/image_manipulation/image_manipulation.markdown b/doc/tutorials/ios/image_manipulation/image_manipulation.markdown index 61590d8f77..f01aa6e4f8 100644 --- a/doc/tutorials/ios/image_manipulation/image_manipulation.markdown +++ b/doc/tutorials/ios/image_manipulation/image_manipulation.markdown @@ -1,9 +1,16 @@ OpenCV iOS - Image Processing {#tutorial_image_manipulation} ============================= +@tableofcontents + @prev_tutorial{tutorial_hello} @next_tutorial{tutorial_video_processing} +| | | +| -: | :- | +| Original author | Charu Hans | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/ios/images/facedetect.jpg b/doc/tutorials/ios/images/facedetect.jpg deleted file mode 100644 index 788b7d8262..0000000000 Binary files a/doc/tutorials/ios/images/facedetect.jpg and /dev/null differ diff --git a/doc/tutorials/ios/images/image_effects.png b/doc/tutorials/ios/images/image_effects.png deleted file mode 100644 index 25edb668f9..0000000000 Binary files a/doc/tutorials/ios/images/image_effects.png and /dev/null differ diff --git a/doc/tutorials/ios/images/intro.png b/doc/tutorials/ios/images/intro.png deleted file mode 100644 index 5f2dc1aa4c..0000000000 Binary files a/doc/tutorials/ios/images/intro.png and /dev/null differ diff --git a/doc/tutorials/introduction/ios_install/ios_install.markdown b/doc/tutorials/ios/ios_install/ios_install.markdown similarity index 96% rename from doc/tutorials/introduction/ios_install/ios_install.markdown rename to doc/tutorials/ios/ios_install/ios_install.markdown index cbe3902602..4353808e14 100644 --- a/doc/tutorials/introduction/ios_install/ios_install.markdown +++ b/doc/tutorials/ios/ios_install/ios_install.markdown @@ -1,8 +1,9 @@ Installation in iOS {#tutorial_ios_install} =================== -@prev_tutorial{tutorial_macos_install} -@next_tutorial{tutorial_arm_crosscompile_with_cmake} +@tableofcontents + +@next_tutorial{tutorial_hello} | | | | -: | :- | diff --git a/doc/tutorials/ios/table_of_content_ios.markdown b/doc/tutorials/ios/table_of_content_ios.markdown index 4031c6c80b..99cfea5306 100644 --- a/doc/tutorials/ios/table_of_content_ios.markdown +++ b/doc/tutorials/ios/table_of_content_ios.markdown @@ -1,32 +1,6 @@ OpenCV iOS {#tutorial_table_of_content_ios} ========== - +- @subpage tutorial_ios_install - @subpage tutorial_hello - - *Languages:* Objective-C++ - - *Compatibility:* \> OpenCV 2.4.3 - - *Author:* Charu Hans - - You will learn how to link OpenCV with iOS and write a basic application. - - @subpage tutorial_image_manipulation - - *Languages:* Objective-C++ - - *Compatibility:* \> OpenCV 2.4.3 - - *Author:* Charu Hans - - You will learn how to do simple image manipulation using OpenCV in iOS. - - @subpage tutorial_video_processing - - *Languages:* Objective-C++ - - *Compatibility:* \> OpenCV 2.4.3 - - *Author:* Eduard Feicho - - You will learn how to capture and process video from camera using OpenCV in iOS. diff --git a/doc/tutorials/ios/video_processing/video_processing.markdown b/doc/tutorials/ios/video_processing/video_processing.markdown index 04bdd14e89..e388d8262c 100644 --- a/doc/tutorials/ios/video_processing/video_processing.markdown +++ b/doc/tutorials/ios/video_processing/video_processing.markdown @@ -1,8 +1,15 @@ OpenCV iOS - Video Processing {#tutorial_video_processing} ============================= +@tableofcontents + @prev_tutorial{tutorial_image_manipulation} +| | | +| -: | :- | +| Original author | Eduard Feicho | +| Compatibility | OpenCV >= 3.0 | + This tutorial explains how to process video frames using the iPhone's camera and OpenCV. diff --git a/doc/tutorials/ml/images/introduction_to_pca_cover.png b/doc/tutorials/ml/images/introduction_to_pca_cover.png deleted file mode 100644 index ce230029ec..0000000000 Binary files a/doc/tutorials/ml/images/introduction_to_pca_cover.png and /dev/null differ diff --git a/doc/tutorials/ml/images/introduction_to_svm.png b/doc/tutorials/ml/images/introduction_to_svm.png deleted file mode 100644 index f2d63751fc..0000000000 Binary files a/doc/tutorials/ml/images/introduction_to_svm.png and /dev/null differ diff --git a/doc/tutorials/ml/images/non_linear_svms.png b/doc/tutorials/ml/images/non_linear_svms.png deleted file mode 100644 index bd185d4c74..0000000000 Binary files a/doc/tutorials/ml/images/non_linear_svms.png and /dev/null differ diff --git a/doc/tutorials/ml/table_of_content_ml.markdown b/doc/tutorials/ml/table_of_content_ml.markdown deleted file mode 100644 index b4064777a2..0000000000 --- a/doc/tutorials/ml/table_of_content_ml.markdown +++ /dev/null @@ -1,36 +0,0 @@ -Machine Learning (ml module) {#tutorial_table_of_content_ml} -============================ - -Use the powerful machine learning classes for statistical classification, regression and clustering -of data. - -- @subpage tutorial_introduction_to_svm - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Fernando Iglesias García - - Learn what a Support Vector Machine is. - -- @subpage tutorial_non_linear_svms - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Fernando Iglesias García - - Here you will learn how to define the optimization problem for SVMs when it is not possible to - separate linearly the training data. - -- @subpage tutorial_introduction_to_pca - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Theodore Tsesmelis - - Learn what a Principal Component Analysis (PCA) is. diff --git a/doc/tutorials/objdetect/images/Cascade_Classifier_Tutorial_Cover.jpg b/doc/tutorials/objdetect/images/Cascade_Classifier_Tutorial_Cover.jpg deleted file mode 100644 index cfa5de67e5..0000000000 Binary files a/doc/tutorials/objdetect/images/Cascade_Classifier_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/objdetect/table_of_content_objdetect.markdown b/doc/tutorials/objdetect/table_of_content_objdetect.markdown deleted file mode 100644 index 0b019d88a5..0000000000 --- a/doc/tutorials/objdetect/table_of_content_objdetect.markdown +++ /dev/null @@ -1,18 +0,0 @@ -Object Detection (objdetect module) {#tutorial_table_of_content_objdetect} -=================================== - -Ever wondered how your digital camera detects peoples and faces? Look here to find out! - -- @subpage tutorial_cascade_classifier - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Ana Huamán - - Here we learn how to use *objdetect* to find objects in our images or videos - -- @subpage tutorial_traincascade - - This tutorial describes _opencv_traincascade_ application and its parameters. diff --git a/doc/tutorials/others/_old/table_of_content_ml.markdown b/doc/tutorials/others/_old/table_of_content_ml.markdown new file mode 100644 index 0000000000..5999b0208a --- /dev/null +++ b/doc/tutorials/others/_old/table_of_content_ml.markdown @@ -0,0 +1,4 @@ +Machine Learning (ml module) {#tutorial_table_of_content_ml} +============================ + +Content has been moved to this page: @ref tutorial_table_of_content_other diff --git a/doc/tutorials/others/_old/table_of_content_objdetect.markdown b/doc/tutorials/others/_old/table_of_content_objdetect.markdown new file mode 100644 index 0000000000..0aa69fcd8d --- /dev/null +++ b/doc/tutorials/others/_old/table_of_content_objdetect.markdown @@ -0,0 +1,4 @@ +Object Detection (objdetect module) {#tutorial_table_of_content_objdetect} +=================================== + +Content has been moved to this page: @ref tutorial_table_of_content_other diff --git a/doc/tutorials/others/_old/table_of_content_photo.markdown b/doc/tutorials/others/_old/table_of_content_photo.markdown new file mode 100644 index 0000000000..14a10a9c70 --- /dev/null +++ b/doc/tutorials/others/_old/table_of_content_photo.markdown @@ -0,0 +1,4 @@ +Computational photography (photo module) {#tutorial_table_of_content_photo} +======================================== + +Content has been moved to this page: @ref tutorial_table_of_content_other diff --git a/doc/tutorials/others/_old/table_of_content_stitching.markdown b/doc/tutorials/others/_old/table_of_content_stitching.markdown new file mode 100644 index 0000000000..e8f91ba659 --- /dev/null +++ b/doc/tutorials/others/_old/table_of_content_stitching.markdown @@ -0,0 +1,4 @@ +Images stitching (stitching module) {#tutorial_table_of_content_stitching} +=================================== + +Content has been moved to this page: @ref tutorial_table_of_content_other diff --git a/doc/tutorials/others/_old/table_of_content_video.markdown b/doc/tutorials/others/_old/table_of_content_video.markdown new file mode 100644 index 0000000000..fae3e6ca79 --- /dev/null +++ b/doc/tutorials/others/_old/table_of_content_video.markdown @@ -0,0 +1,4 @@ +Video analysis (video module) {#tutorial_table_of_content_video} +============================= + +Content has been moved to this page: @ref tutorial_table_of_content_other diff --git a/doc/tutorials/video/background_subtraction/background_subtraction.markdown b/doc/tutorials/others/background_subtraction.markdown similarity index 97% rename from doc/tutorials/video/background_subtraction/background_subtraction.markdown rename to doc/tutorials/others/background_subtraction.markdown index 420286960d..5d07f1dae9 100644 --- a/doc/tutorials/video/background_subtraction/background_subtraction.markdown +++ b/doc/tutorials/others/background_subtraction.markdown @@ -1,8 +1,16 @@ How to Use Background Subtraction Methods {#tutorial_background_subtraction} ========================================= +@tableofcontents + +@prev_tutorial{tutorial_stitcher} @next_tutorial{tutorial_meanshift} +| | | +| -: | :- | +| Original author | Domenico Daniele Bloisi | +| Compatibility | OpenCV >= 3.0 | + - Background subtraction (BS) is a common and widely used technique for generating a foreground mask (namely, a binary image containing the pixels belonging to moving objects in the scene) by using static cameras. diff --git a/doc/tutorials/objdetect/cascade_classifier/cascade_classifier.markdown b/doc/tutorials/others/cascade_classifier.markdown similarity index 98% rename from doc/tutorials/objdetect/cascade_classifier/cascade_classifier.markdown rename to doc/tutorials/others/cascade_classifier.markdown index be942bdbdd..149bac5ab5 100644 --- a/doc/tutorials/objdetect/cascade_classifier/cascade_classifier.markdown +++ b/doc/tutorials/others/cascade_classifier.markdown @@ -1,8 +1,16 @@ Cascade Classifier {#tutorial_cascade_classifier} ================== +@tableofcontents + +@prev_tutorial{tutorial_optical_flow} @next_tutorial{tutorial_traincascade} +| | | +| -: | :- | +| Original author | Ana Huamán | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/photo/hdr_imaging/hdr_imaging.markdown b/doc/tutorials/others/hdr_imaging.markdown similarity index 98% rename from doc/tutorials/photo/hdr_imaging/hdr_imaging.markdown rename to doc/tutorials/others/hdr_imaging.markdown index 0bc15fd9b2..a9f1276618 100644 --- a/doc/tutorials/photo/hdr_imaging/hdr_imaging.markdown +++ b/doc/tutorials/others/hdr_imaging.markdown @@ -1,6 +1,15 @@ High Dynamic Range Imaging {#tutorial_hdr_imaging} ========================== +@tableofcontents + +@next_tutorial{tutorial_stitcher} + +| | | +| -: | :- | +| Original author | Fedor Morozov | +| Compatibility | OpenCV >= 3.0 | + Introduction ------------ diff --git a/doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_Scheme.png b/doc/tutorials/others/images/Background_Subtraction_Tutorial_Scheme.png similarity index 100% rename from doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_Scheme.png rename to doc/tutorials/others/images/Background_Subtraction_Tutorial_Scheme.png diff --git a/doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_frame.jpg b/doc/tutorials/others/images/Background_Subtraction_Tutorial_frame.jpg similarity index 100% rename from doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_frame.jpg rename to doc/tutorials/others/images/Background_Subtraction_Tutorial_frame.jpg diff --git a/doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_result_KNN.jpg b/doc/tutorials/others/images/Background_Subtraction_Tutorial_result_KNN.jpg similarity index 100% rename from doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_result_KNN.jpg rename to doc/tutorials/others/images/Background_Subtraction_Tutorial_result_KNN.jpg diff --git a/doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_result_MOG2.jpg b/doc/tutorials/others/images/Background_Subtraction_Tutorial_result_MOG2.jpg similarity index 100% rename from doc/tutorials/video/background_subtraction/images/Background_Subtraction_Tutorial_result_MOG2.jpg rename to doc/tutorials/others/images/Background_Subtraction_Tutorial_result_MOG2.jpg diff --git a/doc/tutorials/objdetect/cascade_classifier/images/Cascade_Classifier_Tutorial_Result_Haar.jpg b/doc/tutorials/others/images/Cascade_Classifier_Tutorial_Result_Haar.jpg similarity index 100% rename from doc/tutorials/objdetect/cascade_classifier/images/Cascade_Classifier_Tutorial_Result_Haar.jpg rename to doc/tutorials/others/images/Cascade_Classifier_Tutorial_Result_Haar.jpg diff --git a/doc/tutorials/objdetect/cascade_classifier/images/Cascade_Classifier_Tutorial_Result_LBP.jpg b/doc/tutorials/others/images/Cascade_Classifier_Tutorial_Result_LBP.jpg similarity index 100% rename from doc/tutorials/objdetect/cascade_classifier/images/Cascade_Classifier_Tutorial_Result_LBP.jpg rename to doc/tutorials/others/images/Cascade_Classifier_Tutorial_Result_LBP.jpg diff --git a/doc/tutorials/stitching/stitcher/images/affinepano.jpg b/doc/tutorials/others/images/affinepano.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/affinepano.jpg rename to doc/tutorials/others/images/affinepano.jpg diff --git a/doc/tutorials/stitching/stitcher/images/boat.jpg b/doc/tutorials/others/images/boat.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/boat.jpg rename to doc/tutorials/others/images/boat.jpg diff --git a/doc/tutorials/stitching/stitcher/images/budapest.jpg b/doc/tutorials/others/images/budapest.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/budapest.jpg rename to doc/tutorials/others/images/budapest.jpg diff --git a/doc/tutorials/stitching/stitcher/images/compressedPlaneA2B1.jpg b/doc/tutorials/others/images/compressedPlaneA2B1.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/compressedPlaneA2B1.jpg rename to doc/tutorials/others/images/compressedPlaneA2B1.jpg diff --git a/doc/tutorials/stitching/stitcher/images/fisheye.jpg b/doc/tutorials/others/images/fisheye.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/fisheye.jpg rename to doc/tutorials/others/images/fisheye.jpg diff --git a/doc/tutorials/photo/hdr_imaging/images/fusion.png b/doc/tutorials/others/images/fusion.png similarity index 100% rename from doc/tutorials/photo/hdr_imaging/images/fusion.png rename to doc/tutorials/others/images/fusion.png diff --git a/doc/tutorials/stitching/stitcher/images/gvedit.jpg b/doc/tutorials/others/images/gvedit.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/gvedit.jpg rename to doc/tutorials/others/images/gvedit.jpg diff --git a/doc/tutorials/objdetect/cascade_classifier/images/haar.png b/doc/tutorials/others/images/haar.png similarity index 100% rename from doc/tutorials/objdetect/cascade_classifier/images/haar.png rename to doc/tutorials/others/images/haar.png diff --git a/doc/tutorials/objdetect/cascade_classifier/images/haar_features.jpg b/doc/tutorials/others/images/haar_features.jpg similarity index 100% rename from doc/tutorials/objdetect/cascade_classifier/images/haar_features.jpg rename to doc/tutorials/others/images/haar_features.jpg diff --git a/doc/tutorials/photo/hdr_imaging/images/ldr.png b/doc/tutorials/others/images/ldr.png similarity index 100% rename from doc/tutorials/photo/hdr_imaging/images/ldr.png rename to doc/tutorials/others/images/ldr.png diff --git a/doc/tutorials/photo/hdr_imaging/images/memorial.png b/doc/tutorials/others/images/memorial.png similarity index 100% rename from doc/tutorials/photo/hdr_imaging/images/memorial.png rename to doc/tutorials/others/images/memorial.png diff --git a/doc/tutorials/stitching/stitcher/images/newspaper.jpg b/doc/tutorials/others/images/newspaper.jpg similarity index 100% rename from doc/tutorials/stitching/stitcher/images/newspaper.jpg rename to doc/tutorials/others/images/newspaper.jpg diff --git a/doc/tutorials/ml/introduction_to_svm/images/optimal-hyperplane.png b/doc/tutorials/others/images/optimal-hyperplane.png similarity index 100% rename from doc/tutorials/ml/introduction_to_svm/images/optimal-hyperplane.png rename to doc/tutorials/others/images/optimal-hyperplane.png diff --git a/doc/tutorials/ml/introduction_to_pca/images/pca_eigen.png b/doc/tutorials/others/images/pca_eigen.png similarity index 100% rename from doc/tutorials/ml/introduction_to_pca/images/pca_eigen.png rename to doc/tutorials/others/images/pca_eigen.png diff --git a/doc/tutorials/ml/introduction_to_pca/images/pca_line.png b/doc/tutorials/others/images/pca_line.png similarity index 100% rename from doc/tutorials/ml/introduction_to_pca/images/pca_line.png rename to doc/tutorials/others/images/pca_line.png diff --git a/doc/tutorials/ml/introduction_to_pca/images/pca_output.png b/doc/tutorials/others/images/pca_output.png similarity index 100% rename from doc/tutorials/ml/introduction_to_pca/images/pca_output.png rename to doc/tutorials/others/images/pca_output.png diff --git a/doc/tutorials/ml/introduction_to_pca/images/pca_test1.jpg b/doc/tutorials/others/images/pca_test1.jpg similarity index 100% rename from doc/tutorials/ml/introduction_to_pca/images/pca_test1.jpg rename to doc/tutorials/others/images/pca_test1.jpg diff --git a/doc/tutorials/ml/non_linear_svms/images/sample-errors-dist.png b/doc/tutorials/others/images/sample-errors-dist.png similarity index 100% rename from doc/tutorials/ml/non_linear_svms/images/sample-errors-dist.png rename to doc/tutorials/others/images/sample-errors-dist.png diff --git a/doc/tutorials/ml/introduction_to_svm/images/separating-lines.png b/doc/tutorials/others/images/separating-lines.png similarity index 100% rename from doc/tutorials/ml/introduction_to_svm/images/separating-lines.png rename to doc/tutorials/others/images/separating-lines.png diff --git a/doc/tutorials/ml/introduction_to_svm/images/svm_intro_result.png b/doc/tutorials/others/images/svm_intro_result.png similarity index 100% rename from doc/tutorials/ml/introduction_to_svm/images/svm_intro_result.png rename to doc/tutorials/others/images/svm_intro_result.png diff --git a/doc/tutorials/ml/non_linear_svms/images/svm_non_linear_result.png b/doc/tutorials/others/images/svm_non_linear_result.png similarity index 100% rename from doc/tutorials/ml/non_linear_svms/images/svm_non_linear_result.png rename to doc/tutorials/others/images/svm_non_linear_result.png diff --git a/doc/tutorials/objdetect/images/visualisation_single_stage.png b/doc/tutorials/others/images/visualisation_single_stage.png similarity index 100% rename from doc/tutorials/objdetect/images/visualisation_single_stage.png rename to doc/tutorials/others/images/visualisation_single_stage.png diff --git a/doc/tutorials/objdetect/images/visualisation_video.png b/doc/tutorials/others/images/visualisation_video.png similarity index 100% rename from doc/tutorials/objdetect/images/visualisation_video.png rename to doc/tutorials/others/images/visualisation_video.png diff --git a/doc/tutorials/ml/introduction_to_pca/introduction_to_pca.markdown b/doc/tutorials/others/introduction_to_pca.markdown similarity index 98% rename from doc/tutorials/ml/introduction_to_pca/introduction_to_pca.markdown rename to doc/tutorials/others/introduction_to_pca.markdown index c1c6c53a99..490024ac29 100644 --- a/doc/tutorials/ml/introduction_to_pca/introduction_to_pca.markdown +++ b/doc/tutorials/others/introduction_to_pca.markdown @@ -1,8 +1,15 @@ Introduction to Principal Component Analysis (PCA) {#tutorial_introduction_to_pca} ======================================= +@tableofcontents + @prev_tutorial{tutorial_non_linear_svms} +| | | +| -: | :- | +| Original author | Theodore Tsesmelis | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/ml/introduction_to_svm/introduction_to_svm.markdown b/doc/tutorials/others/introduction_to_svm.markdown similarity index 98% rename from doc/tutorials/ml/introduction_to_svm/introduction_to_svm.markdown rename to doc/tutorials/others/introduction_to_svm.markdown index 1340061228..557093c2ae 100644 --- a/doc/tutorials/ml/introduction_to_svm/introduction_to_svm.markdown +++ b/doc/tutorials/others/introduction_to_svm.markdown @@ -1,8 +1,16 @@ Introduction to Support Vector Machines {#tutorial_introduction_to_svm} ======================================= +@tableofcontents + +@prev_tutorial{tutorial_traincascade} @next_tutorial{tutorial_non_linear_svms} +| | | +| -: | :- | +| Original author | Fernando Iglesias García | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/video/meanshift/meanshift.markdown b/doc/tutorials/others/meanshift.markdown similarity index 99% rename from doc/tutorials/video/meanshift/meanshift.markdown rename to doc/tutorials/others/meanshift.markdown index 6472570ead..7ca9ecad30 100644 --- a/doc/tutorials/video/meanshift/meanshift.markdown +++ b/doc/tutorials/others/meanshift.markdown @@ -1,6 +1,8 @@ Meanshift and Camshift {#tutorial_meanshift} ====================== +@tableofcontents + @prev_tutorial{tutorial_background_subtraction} @next_tutorial{tutorial_optical_flow} diff --git a/doc/tutorials/ml/non_linear_svms/non_linear_svms.markdown b/doc/tutorials/others/non_linear_svms.markdown similarity index 99% rename from doc/tutorials/ml/non_linear_svms/non_linear_svms.markdown rename to doc/tutorials/others/non_linear_svms.markdown index 025ae0cda1..f70449fe1d 100644 --- a/doc/tutorials/ml/non_linear_svms/non_linear_svms.markdown +++ b/doc/tutorials/others/non_linear_svms.markdown @@ -1,9 +1,16 @@ 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} +| | | +| -: | :- | +| Original author | Fernando Iglesias García | +| Compatibility | OpenCV >= 3.0 | + Goal ---- diff --git a/doc/tutorials/video/optical_flow/optical_flow.markdown b/doc/tutorials/others/optical_flow.markdown similarity index 99% rename from doc/tutorials/video/optical_flow/optical_flow.markdown rename to doc/tutorials/others/optical_flow.markdown index bcf88f7af1..07456d7ea9 100644 --- a/doc/tutorials/video/optical_flow/optical_flow.markdown +++ b/doc/tutorials/others/optical_flow.markdown @@ -1,7 +1,10 @@ Optical Flow {#tutorial_optical_flow} ============ +@tableofcontents + @prev_tutorial{tutorial_meanshift} +@next_tutorial{tutorial_cascade_classifier} Goal ---- diff --git a/doc/tutorials/stitching/stitcher/stitcher.markdown b/doc/tutorials/others/stitcher.markdown similarity index 97% rename from doc/tutorials/stitching/stitcher/stitcher.markdown rename to doc/tutorials/others/stitcher.markdown index 3670065bbe..e636d83f30 100644 --- a/doc/tutorials/stitching/stitcher/stitcher.markdown +++ b/doc/tutorials/others/stitcher.markdown @@ -1,6 +1,16 @@ High level stitching API (Stitcher class) {#tutorial_stitcher} ========================================= +@tableofcontents + +@prev_tutorial{tutorial_hdr_imaging} +@next_tutorial{tutorial_background_subtraction} + +| | | +| -: | :- | +| Original author | Jiri Horner | +| Compatibility | OpenCV >= 3.2 | + Goal ---- diff --git a/doc/tutorials/others/table_of_content_other.markdown b/doc/tutorials/others/table_of_content_other.markdown new file mode 100644 index 0000000000..a004df63e2 --- /dev/null +++ b/doc/tutorials/others/table_of_content_other.markdown @@ -0,0 +1,13 @@ +Other tutorials (ml, objdetect, photo, stitching, video) {#tutorial_table_of_content_other} +======================================================== + +- photo. @subpage tutorial_hdr_imaging +- stitching. @subpage tutorial_stitcher +- video. @subpage tutorial_background_subtraction +- video. @subpage tutorial_meanshift +- video. @subpage tutorial_optical_flow +- objdetect. @subpage tutorial_cascade_classifier +- objdetect. @subpage tutorial_traincascade +- ml. @subpage tutorial_introduction_to_svm +- ml. @subpage tutorial_non_linear_svms +- ml. @subpage tutorial_introduction_to_pca diff --git a/doc/tutorials/objdetect/traincascade.markdown b/doc/tutorials/others/traincascade.markdown similarity index 99% rename from doc/tutorials/objdetect/traincascade.markdown rename to doc/tutorials/others/traincascade.markdown index 042aaccdc9..0d95bd003a 100644 --- a/doc/tutorials/objdetect/traincascade.markdown +++ b/doc/tutorials/others/traincascade.markdown @@ -1,7 +1,10 @@ Cascade Classifier Training {#tutorial_traincascade} =========================== +@tableofcontents + @prev_tutorial{tutorial_cascade_classifier} +@next_tutorial{tutorial_introduction_to_svm} Introduction ------------ diff --git a/doc/tutorials/photo/images/hdr.png b/doc/tutorials/photo/images/hdr.png deleted file mode 100644 index 9d3782055c..0000000000 Binary files a/doc/tutorials/photo/images/hdr.png and /dev/null differ diff --git a/doc/tutorials/photo/table_of_content_photo.markdown b/doc/tutorials/photo/table_of_content_photo.markdown deleted file mode 100644 index 357c36996e..0000000000 --- a/doc/tutorials/photo/table_of_content_photo.markdown +++ /dev/null @@ -1,14 +0,0 @@ -Computational photography (photo module) {#tutorial_table_of_content_photo} -======================================== - -Use OpenCV for advanced photo processing. - -- @subpage tutorial_hdr_imaging - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 3.0 - - *Author:* Fedor Morozov - - Learn how to create and process high dynamic range images. diff --git a/doc/tutorials/stitching/table_of_content_stitching.markdown b/doc/tutorials/stitching/table_of_content_stitching.markdown deleted file mode 100644 index d5972f4343..0000000000 --- a/doc/tutorials/stitching/table_of_content_stitching.markdown +++ /dev/null @@ -1,17 +0,0 @@ -Images stitching (stitching module) {#tutorial_table_of_content_stitching} -=================================== - -Sometimes a single image can't capture it all. Here you will learn how to join -more images together to create a large pano. Doesn't matter if you want to -create a photo panorama or you want to stitch scans. - -- @subpage tutorial_stitcher - - *Languages:* C++ - - *Compatibility:* \>= OpenCV 3.2 - - *Author:* Jiri Horner - - You will use high level stitching api to create a photo panorama. You will - learn about Stitcher class and its configurations. diff --git a/doc/tutorials/tutorials.markdown b/doc/tutorials/tutorials.markdown index 5a35077df9..59aefc2b1f 100644 --- a/doc/tutorials/tutorials.markdown +++ b/doc/tutorials/tutorials.markdown @@ -4,18 +4,12 @@ OpenCV Tutorials {#tutorial_root} - @subpage tutorial_table_of_content_introduction - build and install OpenCV on your computer - @subpage tutorial_table_of_content_core - basic building blocks of the library - @subpage tutorial_table_of_content_imgproc - image processing functions -- @subpage tutorial_table_of_content_highgui - built-in graphical user interface -- @subpage tutorial_table_of_content_imgcodecs - read and write images from/to files using _imgcodecs_ module -- @subpage tutorial_table_of_content_videoio - read and write videos using _videio_ module +- @subpage tutorial_table_of_content_app - application utils (GUI, image/video input/output) - @subpage tutorial_table_of_content_calib3d - extract 3D world information from 2D images - @subpage tutorial_table_of_content_features2d - feature detectors, descriptors and matching framework -- @subpage tutorial_table_of_content_video - algorithms for video streams: motion detection, object and feature tracking, etc. -- @subpage tutorial_table_of_content_objdetect - detect objects using conventional CV methods - @subpage tutorial_table_of_content_dnn - infer neural networks using built-in _dnn_ module -- @subpage tutorial_table_of_content_ml - machine learning algorithms for statistical classification, regression and data clustering - @subpage tutorial_table_of_content_gapi - graph-based approach to computer vision algorithms building -- @subpage tutorial_table_of_content_photo - advanced photo processing -- @subpage tutorial_table_of_content_stitching - create panoramas and more using _stitching_ module +- @subpage tutorial_table_of_content_other - other modules (ml, objdetect, stitching, video, photo) - @subpage tutorial_table_of_content_ios - running OpenCV on an iDevice @cond CUDA_MODULES - @subpage tutorial_table_of_content_gpu - utilizing power of video card to run CV algorithms diff --git a/doc/tutorials/video/images/Background_Subtraction_Tutorial_Cover.jpg b/doc/tutorials/video/images/Background_Subtraction_Tutorial_Cover.jpg deleted file mode 100644 index d5c84a3722..0000000000 Binary files a/doc/tutorials/video/images/Background_Subtraction_Tutorial_Cover.jpg and /dev/null differ diff --git a/doc/tutorials/video/table_of_content_video.markdown b/doc/tutorials/video/table_of_content_video.markdown deleted file mode 100644 index 1a80f716da..0000000000 --- a/doc/tutorials/video/table_of_content_video.markdown +++ /dev/null @@ -1,28 +0,0 @@ -Video analysis (video module) {#tutorial_table_of_content_video} -============================= - -Look here in order to find use on your video stream algorithms like: motion extraction, feature -tracking and foreground extractions. - -- @subpage tutorial_background_subtraction - - *Languages:* C++, Java, Python - - *Compatibility:* \> OpenCV 2.4.6 - - *Author:* Domenico Daniele Bloisi - - We will learn how to extract foreground masks from both videos and sequences of images and - to show them. - -- @subpage tutorial_meanshift - - *Languages:* C++, Java, Python - - Learn how to use the Meanshift and Camshift algorithms to track objects in videos. - -- @subpage tutorial_optical_flow - - *Languages:* C++, Java, Python - - We will learn how to use optical flow methods to track sparse features or to create a dense representation. diff --git a/doc/tutorials/videoio/images/video-input-psnr-ssim.png b/doc/tutorials/videoio/images/video-input-psnr-ssim.png deleted file mode 100644 index de8c2835a6..0000000000 Binary files a/doc/tutorials/videoio/images/video-input-psnr-ssim.png and /dev/null differ diff --git a/doc/tutorials/videoio/images/video-write.png b/doc/tutorials/videoio/images/video-write.png deleted file mode 100644 index 9413d80836..0000000000 Binary files a/doc/tutorials/videoio/images/video-write.png and /dev/null differ diff --git a/doc/tutorials/videoio/table_of_content_videoio.markdown b/doc/tutorials/videoio/table_of_content_videoio.markdown deleted file mode 100644 index 393a0fc236..0000000000 --- a/doc/tutorials/videoio/table_of_content_videoio.markdown +++ /dev/null @@ -1,35 +0,0 @@ -Video Input and Output (videoio module) {#tutorial_table_of_content_videoio} -========================================= - -This section contains tutorials about how to read/save your video files. - -- @subpage tutorial_video_input_psnr_ssim - - *Languages:* C++, Python - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Bernát Gábor - - You will learn how to read video streams, and how to calculate similarity values such as PSNR - or SSIM. - -- @subpage tutorial_video_write - - *Languages:* C++ - - *Compatibility:* \> OpenCV 2.0 - - *Author:* Bernát Gábor - -- @subpage tutorial_kinect_openni - - *Languages:* C++ - -- @subpage tutorial_orbbec_astra - - *Languages:* C++ - -- @subpage tutorial_intelperc - - *Languages:* C++