Здравствуйте!
такой вопрос: создал прилагу по поиску фрагмента на картинке по шаблону 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 #define  CV_TM_SQDIFF        0   #include<opencv2\highgui\highgui.hpp> #include<opencv2\core\core.hpp> #include<opencv2\opencv.hpp> #include<opencv\cv.h> #include<stdio.h>   using namespace cv; using namespace std;   double minval, maxval;   int main(int argc, const char** argv) {     setlocale(LC_ALL, "Russian");       string ishod_im = "TEST.jpg";     char ish_is[100];     strcpy(ish_is, ishod_im.c_str());     IplImage* image = 0;     image = cvLoadImage(ish_is, 1);       string shablon_im = "X.jpg";     char ish_sh[100];     strcpy(ish_sh, shablon_im.c_str());     IplImage* templ = 0;     templ = cvLoadImage(ish_sh, 1);         int width = templ->width;     int height = templ->height;     IplImage *res = cvCreateImage(cvSize((image->width - templ->width + 1), (image->height - templ->height + 1)), IPL_DEPTH_32F, 1);     cvMatchTemplate(image, templ, res, CV_TM_SQDIFF);     CvPoint minloc, maxloc;     cvMinMaxLoc(res, &minval, &maxval, &minloc, &maxloc, 0);     cvRectangle(image, cvPoint(minloc.x, minloc.y), cvPoint(minloc.x + templ->width - 1, minloc.y + templ->height - 1), CV_RGB(0, 0, 255), 2, 8);     cvShowImage("Совпадения", image);     waitKey(0);     return 0; } С большего все работает норм, интересует два вопроса:
1. как сделать так чтобы находило более одного совпадения? (вроде как есть какой-то способ "скользящего окна", но хотелось бы знать как его реализовать. а может и не им надо пользоваться)
2. как сделать чтобы в случае отсутствия совпадения не показывал ни одной рамки (сейчас прога ищет совпадения, но даже если адекватных нет выдает хоть какой-то результат (неверный))