title: Read data of a table(image) cell by cell using opencv
body: <p>I am writing a mobile app to plot a graphical representation(graphs/charts) of table data. the user is taking an image of a statistical table. I have to detect the table and crop all the cells in an order to perform OCR using tessaract engine. 
  Is there a proper way to recognize a table in an image and loop through the cells and save those to an array? </p>
  
  <p>Up to now i have been able to clean the image as follows using opencv C++. </p>
  
  <p>Code:</p>
  
  <pre><code>const char* filename = argc &gt;= 2 ? argv[1] : "test.jpg";
  
  Mat src = imread(filename);
  if(src.empty())
  {
      //help();
      cout &lt;&lt; "can not open " &lt;&lt; filename &lt;&lt; endl;
      return -1;
  }
  
  Mat dst, cdst, img2;
  
  GaussianBlur(src,dst,Size(5,5),0);
  cvtColor(dst, dst, CV_RGB2GRAY);
  adaptiveThreshold(dst, dst, 255, CV_ADAPTIVE_THRESH_MEAN_C,CV_THRESH_BINARY, 31, 15);
  namedWindow("dst",WINDOW_NORMAL);
  
  imshow("dst", dst);
  </code></pre>
  
  <p>Is there a way to loop through the cells and crop them in an order?</p>