Advertisement
Guest User

OpenCV C++

a guest
Oct 24th, 2016
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.68 KB | None | 0 0
  1. #include <opencv2/opencv.hpp>
  2. #include <iostream>
  3. #include <string>
  4. #include <sstream>
  5. #include <vector>
  6.  
  7.  
  8.  
  9. using namespace cv;
  10. using namespace std;
  11.  
  12.  
  13. String folderpath = "C:/Users/Junior/Desktop/Segmentação atualizada 05-06-16/FiltroRosa*.jpg";
  14. vector<String> filenames;
  15.  
  16. vector<string> split(string str, char delimiter) {
  17. vector<string> internal;
  18. stringstream ss(str); // Turn the string into a stream.
  19. string tok;
  20.  
  21. while (getline(ss, tok, delimiter)) {
  22. internal.push_back(tok);
  23. }
  24.  
  25. return internal;
  26. }
  27.  
  28.  
  29. int main()
  30. {
  31. cv::glob(folderpath, filenames);
  32. int a = 0;
  33. for (size_t i = 0; i<filenames.size(); i++)
  34. {
  35. //printf("%d\n", i);
  36. Mat bw = imread(filenames[i], CV_LOAD_IMAGE_GRAYSCALE);
  37. cout << size(bw) << endl;
  38.  
  39.  
  40. string str = filenames[i];
  41. Mat labelImage(bw.size(), CV_32S);
  42. cout << size(labelImage) << endl;
  43.  
  44. Mat erode1, dilate1;
  45. int erosion_size = 3;
  46. Mat element = getStructuringElement(cv::MORPH_ELLIPSE,
  47. cv::Size(2 * erosion_size + 1, 2 * erosion_size + 1),
  48. cv::Point(erosion_size, erosion_size));
  49.  
  50. erode(bw, erode1, element);
  51. dilate(erode1, dilate1, element);
  52.  
  53. vector<string> sep = split(str, '\\');
  54. int contador;
  55. string temp;
  56. for (contador = 0; contador < sep.size(); ++contador)
  57. {
  58. //cout << sep[contador] << endl;
  59. temp = sep[contador];
  60. //system("pause");
  61. }
  62.  
  63. //mostra ou salva dst para cada label
  64. string strDst = temp + '_' + to_string(label) + ".jpg";
  65. cout << strDst << endl;
  66. cout << bw.size() << endl;
  67. cout << size(dst) << endl;
  68. imwrite(strDst, dst);
  69. //imshow(strDst, dst);
  70. //waitKey();
  71. //destroyWindow(strDst);
  72.  
  73. }
  74. }
  75. return 0;
  76. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement