From cf62a37f87ddc873a6f25d58d049816e2b46f485 Mon Sep 17 00:00:00 2001 From: Ana Huaman Date: Wed, 6 Jul 2011 14:15:13 +0000 Subject: [PATCH] Added matchTemplate reST tutorial --- doc/conf.py | 4 +- .../histogram_calculation.rst | 1 - .../Template_Matching_Original_Image.jpg | Bin 0 -> 43065 bytes .../Template_Matching_Template_Image.jpg | Bin 0 -> 840 bytes ...mplate_Matching_Template_Theory_Result.jpg | Bin 0 -> 13200 bytes ...plate_Matching_Template_Theory_Sliding.jpg | Bin 0 -> 61353 bytes ...plate_Matching_Template_Theory_Summary.jpg | Bin 0 -> 31788 bytes .../template_matching/template_matching.rst | 380 ++++++++++++++++++ 8 files changed, 383 insertions(+), 2 deletions(-) create mode 100644 doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Original_Image.jpg create mode 100644 doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Image.jpg create mode 100644 doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Result.jpg create mode 100644 doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Sliding.jpg create mode 100644 doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Summary.jpg diff --git a/doc/conf.py b/doc/conf.py index 20fac68373..a0794fdc5f 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -324,7 +324,9 @@ extlinks = {'cvt_color': ('http://opencv.willowgarage.com/documentation/cpp/imgp 'equalize_hist' : ('http://opencv.willowgarage.com/documentation/cpp/imgproc_histograms.html?#equalizeHist%s', None), 'split' : ('http://opencv.willowgarage.com/documentation/cpp/core_operations_on_arrays.html?#split%s', None), 'calc_hist' : ('http://opencv.willowgarage.com/documentation/cpp/imgproc_histograms.html?#calcHist%s', None), - 'normalize' : ('http://opencv.willowgarage.com/documentation/cpp/core_operations_on_arrays.html?#normalize%s', None) + 'normalize' : ('http://opencv.willowgarage.com/documentation/cpp/core_operations_on_arrays.html?#normalize%s', None), + 'match_template' : ('http://opencv.willowgarage.com/documentation/cpp/imgproc_object_detection.html?#matchTemplate%s', None), + 'min_max_loc' : ('http://opencv.willowgarage.com/documentation/cpp/core_operations_on_arrays.html?#minMaxLoc%s', None) } diff --git a/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.rst b/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.rst index 5a77d30114..833ff699ae 100644 --- a/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.rst +++ b/doc/tutorials/imgproc/histograms/histogram_calculation/histogram_calculation.rst @@ -6,7 +6,6 @@ Histogram Calculation Goal ===== - In this tutorial you will learn how to: .. container:: enumeratevisibleitemswithsquare diff --git a/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Original_Image.jpg b/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Original_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7809066923f945a99886483a12d816d524c57fcf GIT binary patch literal 43065 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 literal 0 HcmV?d00001 diff --git a/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Image.jpg b/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5f0da4f06e8140fb83f8c0ca5283a7a479e8fa0d GIT binary patch literal 840 zcmex=LJ%Z3brsR%R9! z7G_o;!OF_Y#?HgR4g~z%+?+gu{6a#4{DOkQVlv{wB2uD)f)a`nQnIr0^76vsN-9cn zDl&5Nav(z(fm+$w*!eg(_~b+cMdU~Z{|_(-axiE!s4_DuF)#@-G7B>PKf)lzz`(=| z^Z^2}vN15TvoHbW^aU807@3(^fru3%&&b5gz#_;h#3rI>7$~gdXjCYwY#cPvxpCpe zk3bC~CtL^Ix z&GQyb`eKnj^O|AGWVa_wp9}&gU*5@bH71??!5lB0q{%WnoqzgCmYWxN96x5KVH$Sr z?Uret&vj-WD`!3b(beRh#g-jAdo8mM3k$F;sP#D z-@e_i-SqgOvZ!evc%QCtatyn5=Jemqx0>Utm+on^Ot8MZjx(tKsTXsW-U6q2JsEdz zo}O{d`S;YS$3Is(PI_6s@%DjFCnnou*}fC!+W-7qrr*Cuw&_t{*Dg-=RFN!y;VEx= zx_)Ks*^F(vYPSQ5!oSzP>MnIUHQ|oCr24`WjJ|Ad7vG-U%c>jW_Gc%XSaO5B{EG|a z`{p}bPuj9~L#y)4jiLvOl#?GTKdJZ~dWTD~O(sif>ynG2EJDZkSqJm2U0tyC>YS?7 zw`as{PEBT!mNpVFetUp@`N^}47j?qJF8un{_bu?R$|0T~cQ`)=O){}i-6Fii=={lP zGP`!(Ib~pE{K+O{!SS~bHtpCvS8v9egXM1b*-xz6a+@P8BttHvGiOS|y58?>d(Pq;-Esdy(y$oHFk%wAUXYI4k(@6$EKmx^3^FeUhY w9>Y5KZjJ|oQ*poAQqc)K&t-kR`2XJo07*M2$N&HU literal 0 HcmV?d00001 diff --git a/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Result.jpg b/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Result.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8383cc25ac315c069f9c1964ae429979e6c7209e GIT binary patch literal 13200 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 literal 0 HcmV?d00001 diff --git a/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Sliding.jpg b/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Sliding.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a862ee6a3a4d5be27546f1b5d3de4910d2459801 GIT binary patch literal 61353 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 literal 0 HcmV?d00001 diff --git a/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Summary.jpg b/doc/tutorials/imgproc/histograms/template_matching/images/Template_Matching_Template_Theory_Summary.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c7c0dcd125113df8f84e04740ccce40814fea50a GIT binary patch literal 31788 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 F{{ud0!D|2j literal 0 HcmV?d00001 diff --git a/doc/tutorials/imgproc/histograms/template_matching/template_matching.rst b/doc/tutorials/imgproc/histograms/template_matching/template_matching.rst index 066a40f22a..d1726c8f81 100644 --- a/doc/tutorials/imgproc/histograms/template_matching/template_matching.rst +++ b/doc/tutorials/imgproc/histograms/template_matching/template_matching.rst @@ -2,3 +2,383 @@ Template Matching ***************** + +Goal +==== + +In this tutorial you will learn how to: + +.. container:: enumeratevisibleitemswithsquare + + * Use the OpenCV function :match_template:`matchTemplate <>` to search for matches between an image patch and an input image + * Use the OpenCV function :min_max_loc:`minMaxLoc <>` to find the maximum and minimum values (as well as their positions) in a given array. + +Theory +====== + +What is template matching? +-------------------------- + +.. container:: enumeratevisibleitemswithsquare + + Template matching is a technique for finding areas of an image that match (are similar) to a template image (patch). + + +How does it work? +------------------ + +.. container:: enumeratevisibleitemswithsquare + + * We need two primary components: + + a. **Source image (I):** The image in which we expect to find a match to the template image + b. **Template image (T):** The patch image which will be compared to the template image + + our goal is to detect the highest matching area: + + .. image:: images/Template_Matching_Template_Theory_Summary.jpg + :height: 200pt + :align: center + + * To identify the matching area, we have to *compare* the template image against the source image by sliding it: + + .. image:: images/Template_Matching_Template_Theory_Sliding.jpg + :height: 200pt + :align: center + + * By **sliding**, we mean moving the patch one pixel at a time (left to right, up to down). At each location, a metric is calculated so it represents how "good" or "bad" the match at that location is (or how similar the patch is to that particular area of the source image). + + * For each location of **T** over **I**, you *store* the metric in the *result matrix* **(R)**. Each location :math:`(x,y)` in **R** contains the match metric: + + .. image:: images/Template_Matching_Template_Theory_Result.jpg + :height: 200pt + :align: center + + the image above is the result **R** of sliding the patch with a metric **TM_CCORR_NORMED**. The brightest locations indicate the highest matches. As you can see, the location marked by the red circle is probably the one with the highest value, so that location (the rectangle formed by that point as a corner and width and height equal to the patch image) is considered the match. + + * In practice, we use the function :min_max_loc:`minMaxLoc <>` to locate the highest value (or lower, depending of the type of matching method) in the *R* matrix. + +Which are the matching methods available in OpenCV? +---------------------------------------------------- + +Good question. OpenCV implements Template matching in the function :match_template:`matchTemplate <>`. The available methods are 6: + +a. **method=CV\_TM\_SQDIFF** + + .. math:: + + R(x,y)= \sum _{x',y'} (T(x',y')-I(x+x',y+y'))^2 + + +b. **method=CV\_TM\_SQDIFF\_NORMED** + + .. math:: + + R(x,y)= \frac{\sum_{x',y'} (T(x',y')-I(x+x',y+y'))^2}{\sqrt{\sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'} I(x+x',y+y')^2}} + + +c. **method=CV\_TM\_CCORR** + + .. math:: + + R(x,y)= \sum _{x',y'} (T(x',y') \cdot I(x+x',y+y')) + + +d. **method=CV\_TM\_CCORR\_NORMED** + + .. math:: + + R(x,y)= \frac{\sum_{x',y'} (T(x',y') \cdot I'(x+x',y+y'))}{\sqrt{\sum_{x',y'}T(x',y')^2 \cdot \sum_{x',y'} I(x+x',y+y')^2}} + + +e. **method=CV\_TM\_CCOEFF** + + .. math:: + + R(x,y)= \sum _{x',y'} (T'(x',y') \cdot I(x+x',y+y')) + + where + + .. math:: + + \begin{array}{l} T'(x',y')=T(x',y') - 1/(w \cdot h) \cdot \sum _{x'',y''} T(x'',y'') \\ I'(x+x',y+y')=I(x+x',y+y') - 1/(w \cdot h) \cdot \sum _{x'',y''} I(x+x'',y+y'') \end{array} + + +f. **method=CV\_TM\_CCOEFF\_NORMED** + + .. math:: + + R(x,y)= \frac{ \sum_{x',y'} (T'(x',y') \cdot I'(x+x',y+y')) }{ \sqrt{\sum_{x',y'}T'(x',y')^2 \cdot \sum_{x',y'} I'(x+x',y+y')^2} } + + +Code +==== + + +.. container:: enumeratevisibleitemswithsquare + + * **What does this program do?** + + .. container:: enumeratevisibleitemswithsquare + + * Loads an input image and a image patch (*template*) + * Perform a template matching procedure by using the OpenCV function :match_template:`matchTemplate <>` with any of the 6 matching methods described before. The user can choose the method by entering its selection in the Trackbar. + * Normalize the output of the matching procedure + * Localize the location with higher matching probability + * Draw a rectangle around the area corresponding to the highest match + + * **Downloadable code**: + Click `here `_ + + * **Code at glance:** + +.. code-block:: cpp + + #include "opencv2/highgui/highgui.hpp" + #include "opencv2/imgproc/imgproc.hpp" + #include + #include + + using namespace std; + using namespace cv; + + /// Global Variables + Mat img; Mat templ; Mat result; + char* image_window = "Source Image"; + char* result_window = "Result window"; + + int match_method; + int max_Trackbar = 5; + + /// Function Headers + void MatchingMethod( int, void* ); + + /** @function main */ + int main( int argc, char** argv ) + { + /// Load image and template + img = imread( argv[1], 1 ); + templ = imread( argv[2], 1 ); + + /// Create windows + namedWindow( image_window, CV_WINDOW_AUTOSIZE ); + namedWindow( result_window, CV_WINDOW_AUTOSIZE ); + + /// Create Trackbar + char* trackbar_label = "Method: \n 0: SQDIFF \n 1: SQDIFF NORMED \n 2: TM CCORR \n 3: TM CCORR NORMED \n 4: TM COEFF \n 5: TM COEFF NORMED"; + createTrackbar( trackbar_label, image_window, &match_method, max_Trackbar, MatchingMethod ); + + MatchingMethod( 0, 0 ); + + waitKey(0); + return 0; + } + + /** + * @function MatchingMethod + * @brief Trackbar callback + */ + void MatchingMethod( int, void* ) + { + /// Source image to display + Mat img_display; + img.copyTo( img_display ); + + /// Create the result matrix + int result_cols = img.cols - templ.cols + 1; + int result_rows = img.rows - templ.rows + 1; + + result.create( result_cols, result_rows, CV_32FC1 ); + + /// Do the Matching and Normalize + matchTemplate( img, templ, result, match_method ); + normalize( result, result, 0, 1, NORM_MINMAX, -1, Mat() ); + + /// Localizing the best match with minMaxLoc + double minVal; double maxVal; Point minLoc; Point maxLoc; + Point matchLoc; + + minMaxLoc( result, &minVal, &maxVal, &minLoc, &maxLoc, Mat() ); + + /// For SQDIFF and SQDIFF_NORMED, the best matches are lower values. For all the other methods, the higher the better + if( match_method == CV_TM_SQDIFF || match_method == CV_TM_SQDIFF_NORMED ) + { matchLoc = minLoc; } + else + { matchLoc = maxLoc; } + + /// Show me what you got + rectangle( img_display, matchLoc, Point( matchLoc.x + templ.cols , matchLoc.y + templ.rows ), Scalar::all(0), 2, 8, 0 ); + rectangle( result, matchLoc, Point( matchLoc.x + templ.cols , matchLoc.y + templ.rows ), Scalar::all(0), 2, 8, 0 ); + + imshow( image_window, img_display ); + imshow( result_window, result ); + + return; + } + +Explanation +=========== + +#. Declare some global variables, such as the image, template and result matrices, as well as the match method and the window names: + + .. code-block:: cpp + + Mat img; Mat templ; Mat result; + char* image_window = "Source Image"; + char* result_window = "Result window"; + + int match_method; + int max_Trackbar = 5; + + +#. Load the source image and template: + + .. code-block:: cpp + + img = imread( argv[1], 1 ); + templ = imread( argv[2], 1 ); + +#. Create the windows to show the results: + + .. code-block:: cpp + + namedWindow( image_window, CV_WINDOW_AUTOSIZE ); + namedWindow( result_window, CV_WINDOW_AUTOSIZE ); + +#. Create the Trackbar to enter the kind of matching method to be used. When a change is detected the callback function **MatchingMethod** is called. + + .. code-block:: cpp + + char* trackbar_label = "Method: \n 0: SQDIFF \n 1: SQDIFF NORMED \n 2: TM CCORR \n 3: TM CCORR NORMED \n 4: TM COEFF \n 5: TM COEFF NORMED"; + createTrackbar( trackbar_label, image_window, &match_method, max_Trackbar, MatchingMethod ); + +#. Wait until user exits the program. + + .. code-block:: cpp + + waitKey(0); + return 0; + +#. Let's check out the callback function. First, it makes a copy of the source image: + + .. code-block:: cpp + + Mat img_display; + img.copyTo( img_display ); + + +#. Next, it creates the result matrix that will store the matching results for each template location. Observe in detail the size of the result matrix (which matches all possible locations for it) + + .. code-block:: cpp + + int result_cols = img.cols - templ.cols + 1; + int result_rows = img.rows - templ.rows + 1; + + result.create( result_cols, result_rows, CV_32FC1 ); + +#. Perform the template matching operation: + + .. code-block:: cpp + + matchTemplate( img, templ, result, match_method ); + + the arguments are naturally the input image **I**, the template **T**, the result **R** and the match_method (given by the Trackbar) + +#. We normalize the results: + + .. code-block:: cpp + + normalize( result, result, 0, 1, NORM_MINMAX, -1, Mat() ); + +#. We localize the minimum and maximum values in the result matrix **R** by using :min_max_loc:`minMaxLoc <>`. + + .. code-block:: cpp + + double minVal; double maxVal; Point minLoc; Point maxLoc; + Point matchLoc; + + minMaxLoc( result, &minVal, &maxVal, &minLoc, &maxLoc, Mat() ); + + the function calls as arguments: + + .. container:: enumeratevisibleitemswithsquare + + + **result:** The source array + + **&minVal** and **&maxVal:** Variables to save the minimum and maximum values in **result** + + **&minLoc** and **&maxLoc:** The Point locations of the minimum and maximum values in the array. + + **Mat():** Optional mask + + +#. For the first two methods ( CV\_SQDIFF and CV\_SQDIFF\_NORMED ) the best match are the lowest values. For all the others, higher values represent better matches. So, we save the corresponding value in the **matchLoc** variable: + + .. code-block:: cpp + + if( match_method == CV_TM_SQDIFF || match_method == CV_TM_SQDIFF_NORMED ) + { matchLoc = minLoc; } + else + { matchLoc = maxLoc; } + +#. Display the source image and the result matrix. Draw a rectangle around the highest possible matching area: + + .. code-block:: cpp + + rectangle( img_display, matchLoc, Point( matchLoc.x + templ.cols , matchLoc.y + templ.rows ), Scalar::all(0), 2, 8, 0 ); + rectangle( result, matchLoc, Point( matchLoc.x + templ.cols , matchLoc.y + templ.rows ), Scalar::all(0), 2, 8, 0 ); + + imshow( image_window, img_display ); + imshow( result_window, result ); + + +Results +======= + +#. Testing our program with an input image such as: + + .. image:: images/Template_Matching_Original_Image.jpg + :height: 200pt + :align: center + + and a template image: + + .. image:: images/Template_Matching_Template_Image.jpg + :height: 50pt + :align: center + +#. Generate the following result matrices (first row are the standard methods SQDIFF, CCORR and CCOEFF, second row are the same methods in its normalized version). In the first column, the darkest is the better match, for the other two columns, the brighter a location, the higher the match. + + ============ ============ ============ + |Result_0| |Result_2| |Result_4| + ============ ============ ============ + |Result_1| |Result_3| |Result_5| + ============ ============ ============ + + .. |Result_0| image:: images/Template_Matching_Correl_Result_0.jpg + :height: 150pt + :align: middle + + .. |Result_1| image:: images/Template_Matching_Correl_Result_1.jpg + :height: 150pt + :align: middle + + .. |Result_2| image:: images/Template_Matching_Correl_Result_2.jpg + :height: 150pt + :align: middle + + .. |Result_3| image:: images/Template_Matching_Correl_Result_3.jpg + :height: 150pt + :align: middle + + .. |Result_4| image:: images/Template_Matching_Correl_Result_4.jpg + :height: 150pt + :align: middle + + .. |Result_5| image:: images/Template_Matching_Correl_Result_5.jpg + :height: 150pt + :align: middle + +#. The right match is shown below (black rectangle around the face of the guy at the right). Notice that CCORR and CCDEFF gave erroneous best matches, however their normalized version did it right, this may be due to the fact that we are only considering the "highest match" and not the other possible high matches. + + .. image:: images/Template_Matching_Image_Result.jpg + :height: 200pt + :align: center +