title: Houghlines in android with opencv
body: <p>I am trying to make a perspective correction for quadrilateral objects using <strong>opencv3</strong>. I managed to show the lines and also implemented the <strong>Houghlines</strong> using <code>Imgproc.HoughLinesP()</code> and tried to highlight the lines using <code>Imgproc.lines()</code> but output was no success. Below is my code and also I have attached my output image.</p>
  
  <p>Please let me know what is wrong happening and what should be done...</p>
  
  <pre><code>Mat initImg; // initial image
  Mat greyImg; // converted to grey
  
  Mat lines = new Mat();
  int threshold = 50;
  int minLineSize = 20;
  int lineGap = 10;
  
  initImg = Imgcodecs.imread(imgLoc, 1);
  greyImg = new Mat();
  Imgproc.cvtColor(initImg, greyImg, Imgproc.COLOR_BGR2GRAY);
  Bitmap bitm = Bitmap.createBitmap(greyImg.cols(), greyImg.rows(),Bitmap.Config.ARGB_8888);
  
  Imgproc.blur(greyImg, greyImg, new Size(3.d, 3.d));
  Imgproc.adaptiveThreshold(greyImg, greyImg, 255, Imgproc.ADAPTIVE_THRESH_MEAN_C, Imgproc.THRESH_BINARY_INV, 15, 4);
  
  Imgproc.HoughLinesP(greyImg, lines, 1, Math.PI/180, threshold,
          minLineSize, lineGap);
  // lines returns rows x columns and rows is always 1. I dont know why please help me to understand
  for (int x = 0; x &lt; lines.cols(); x++) {
  
      double[] vec = lines.get(0, x);
      double[] val = new double[4];
  
      double x1 = vec[0],
              y1 = vec[1],
              x2 = vec[2],
              y2 = vec[3];
  
      System.out.println(TAG+"Coordinates: x1=&gt;"+x1+" y1=&gt;"+y1+" x2=&gt;"+x2+" y2=&gt;"+y2);
      Point start = new Point(x1, y1);
      Point end = new Point(x2, y2);
  
      Imgproc.line(greyImg, start, end, new Scalar(0,255, 0, 255), 3);
  
  }
  
  Utils.matToBitmap(greyImg, bitm);
  
  if(bitm!=null){
      Toast.makeText(getApplicationContext(), "Bitmap not null", Toast.LENGTH_SHORT).show();
      iv.setImageBitmap(bitm);
  }else{
      Toast.makeText(getApplicationContext(), "Bitmap null", Toast.LENGTH_SHORT).show();
  }
  </code></pre>
  
  <p>My Output:</p>
  
  <p><img src="https://i.stack.imgur.com/pGraN.png" alt="Output from above code"></p>