title: C++ OpenCV 3.4 : HOG detectMultiScale() / detect() issues
body: <p>I am having a problem with the detectmultiScale() function. I am developing a object recognizer of multiple objects (car, tree, building, ..). For this, I trained n binary SVM (object_i/no_object_i). On the test set (with patches of the same size) i get accuracy of around 90%, which is quite ok. However, when I use them to detect objects in a bigger image (i.e. with MultiScale() ) regardless of the model I use, i get a pretty window right in the middle of the image.</p>
  
  <p><a href="https://i.stack.imgur.com/xlNVY.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/xlNVY.jpg" alt="enter image description here"></a></p>
  
  <p>Do you have any Idea of what could be the issue here? I used the detect() function and in this case I get literally the exact opposite situation. squares everywhere.</p>
  
  <p><a href="https://i.stack.imgur.com/Hs7GQ.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Hs7GQ.jpg" alt="enter image description here"></a></p>
  
  <p>I gave as function parameter a vector as well to get the confidence weights. However, the returned values are always around 20 - 30. Does someone know what do they mean? against which factor should it normalized?</p>
  
  <pre><code>// get the support vectors
      cv::Mat sv = svm-&gt;getSupportVectors();
      const int sv_total = sv.rows;
      // get the decision function
      cv::Mat alpha, svidx;
      double rho = svm-&gt;getDecisionFunction(0, alpha, svidx);
      std::vector&lt; float &gt; hog_detector(sv.cols + 1);
      memcpy(&amp;hog_detector[0], sv.ptr(), sv.cols * sizeof(hog_detector[0]));
      hog_detector[sv.cols] = (float)-rho;
  
  
      //hog.winSize = cv::Size(64, 48);
      hog.setSVMDetector(hog_detector);
  
      //look for cars in an image:
  
      cv::Mat test_img = cv::imread(SCENE_IMG_PATH + "street_par150.jpg");
      cv::imwrite("result_1.jpg", test_img);
  
      std::vector&lt;cv::Rect&gt; obj_locations;
      std::vector&lt;double&gt; coinfidence_value;
      hog.detectMultiScale(test_img, obj_locations, coinfidence_value,0.00, cv::Size(4,4), cv::Size(0, 0), 1.05, 2.0, false);
      //what with normal?
      std::vector&lt;cv::Point&gt; obj_locs;
      std::vector&lt;double&gt; coinfidence_values;
      hog.detect(test_img, obj_locs,coinfidence_values, (0.0), cv::Size(4, 4), cv::Size(0,0));
  </code></pre>