title: FindContour OpenCV C++
body: <p>I have trouble when using <code>findContour()</code> function from opencv. It crash and output the following error:</p>
  
  <p><a href="https://i.stack.imgur.com/Hq6I6.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Hq6I6.png" alt="enter image description here"></a></p>
  
  <p>Here is my code:</p>
  
  <pre><code>using namespace cv;
  using namespace std;
  
  Mat src; Mat src_gray;
  int thresh = 100;
  int max_thresh = 255;
  RNG rng(12345);
  
  /// Function header
  void thresh_callback(int, void*);
  
  /** @function main */
  int main(int argc, char** argv)
  {
      src = imread("test.png");
      /// Load source image and convert it to gray
      //src = imread(argv[1], 1);
  
      /// Convert image to gray and blur it
      cvtColor(src, src_gray, CV_BGR2GRAY);
      blur(src_gray, src_gray, Size(3, 3));
  
      /// Create Window
      char* source_window = "Source";
      namedWindow(source_window, CV_WINDOW_AUTOSIZE);
      imshow(source_window, src);
  
      createTrackbar(" Canny thresh:", "Source", &amp;thresh, max_thresh, thresh_callback);
      thresh_callback(0, 0);
  
      waitKey(0);
      return(0);
  }
  
  /** @function thresh_callback */
  void thresh_callback(int, void*)
  {
      Mat canny_output;
      vector&lt;vector&lt;Point&gt; &gt; contours;
      vector&lt;Vec4i&gt; hierarchy;
  
      /// Detect edges using canny
      Canny(src_gray, canny_output, thresh, thresh * 2, 3);
      /// Find contours
      findContours(canny_output, contours, hierarchy, CV_RETR_TREE, CV_CHAIN_APPROX_SIMPLE, Point(0, 0));
  
      /// Draw contours
      Mat drawing = Mat::zeros(canny_output.size(), CV_8UC3);
      for (int i = 0; i&lt; contours.size(); i++)
      {
          Scalar color = Scalar(rng.uniform(0, 255), rng.uniform(0, 255), rng.uniform(0, 255));
          drawContours(drawing, contours, i, color, 2, 8, hierarchy, 0, Point());
      }
  
      /// Show in a window
      namedWindow("Contours", CV_WINDOW_AUTOSIZE);
      imshow("Contours", drawing);
  }
  </code></pre>
  
  <p>All the setting is correct such as property sheet as the program can works but it crash once it done the thresh_callback functions.
  I use visual studio 2015 with opencv 3.0. I had tried on visual studio 2012 or try other version of opencv like 2.4.9. Unfortunately, it still not works. Hope you all can help me</p>
  
  <p>Here showed my property sheet settings:
  1. Debug x64 property sheet
  <a href="https://i.stack.imgur.com/NZ2PL.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/NZ2PL.png" alt="Debug x64 property sheet"></a></p>
  
  <ol start="2">
  <li>Release x64 property sheet
  <a href="https://i.stack.imgur.com/RG8Wb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/RG8Wb.png" alt="Release x64 property sheet"></a></li>
  </ol>
  
  <p>I am able to run others image processing function such as <code>cv::imread</code>. Only the <code>findContour()</code> having errors.</p>
  
  <p><strong>Update</strong></p>
  
  <p>library path:
  <a href="https://i.stack.imgur.com/QYLni.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/QYLni.png" alt="enter image description here"></a></p>