@@ -15,27 +15,30 @@ int main(int argc, const char** argv)
15
15
cv::CommandLineParser parser (argc, argv,
16
16
" {scale|1|}"
17
17
" {counter|99999|}"
18
+ " {show|false|}"
18
19
" {@filename|vtest.avi|}"
19
20
);
20
21
21
22
String filename = parser.get <string>(" @filename" );
22
23
double scale = parser.get <double >(" scale" );
23
24
int test_counter = parser.get <int >(" counter" );
25
+ bool show = parser.get <bool >(" show" );
24
26
Mat src, gray;
25
27
TickMeter tm0, tm1;
26
28
int counter = 0 ;
27
29
28
30
VideoCapture capture (samples::findFileOrKeep (filename));
29
31
if (capture.isOpened ())
30
32
{
31
- cout << " Capture is opened" << endl;
33
+ cout << " Capture is opened, " << capture. get (CAP_PROP_FRAME_COUNT) << " frames " << endl;
32
34
cout << " Frame [width,height] : [" << capture.get (CAP_PROP_FRAME_WIDTH) << " ," << capture.get (CAP_PROP_FRAME_HEIGHT) << " ]" << endl;
33
- cout << " scaled Frame [w,h ] : [" << capture.get (CAP_PROP_FRAME_WIDTH) * scale << " ," << capture.get (CAP_PROP_FRAME_HEIGHT) * scale << " ]" << endl;;
35
+ cout << " Scaled[width,height ] : [" << capture.get (CAP_PROP_FRAME_WIDTH) * scale << " ," << capture.get (CAP_PROP_FRAME_HEIGHT) * scale << " ]" << endl;;
34
36
35
37
Ptr <EdgeDrawing> ed = createEdgeDrawing ();
36
38
ed->params .EdgeDetectionOperator = EdgeDrawing::SOBEL;
37
39
ed->params .GradientThresholdValue = 36 ;
38
40
ed->params .AnchorThresholdValue = 8 ;
41
+ ed->params .ScanInterval = 1 ;
39
42
vector<Vec6d> ellipses;
40
43
vector<Vec4f> lines;
41
44
@@ -63,18 +66,24 @@ int main(int argc, const char** argv)
63
66
EDCircles testEDCircles = EDCircles (testEDLines);
64
67
tm1.stop ();
65
68
66
- /* std::vector<LS> linesegments = testEDLines.getLines();
69
+ if (show)
70
+ {
71
+ std::vector<LS> linesegments = testEDLines.getLines ();
67
72
68
- Mat lineImg0 = testEDLines.getLineImage(); //draws on an empty image
69
- Mat lineImg1 = Mat(lineImg0.rows, lineImg0.cols, CV_8UC1, Scalar(255));
73
+ Mat lineImg0 = testEDLines.getLineImage (); // draws on an empty image
74
+ Mat lineImg1 = Mat (lineImg0.rows , lineImg0.cols , CV_8UC1, Scalar (255 ));
70
75
71
- for (int i = 0; i < lines.size(); i++)
72
- line(lineImg1, Point2d(lines[i][0], lines[i][1]), Point2d(lines[i][2], lines[i][3]), Scalar(0), 1, LINE_AA);
76
+ for (int i = 0 ; i < lines.size (); i++)
77
+ line (lineImg1, Point2d (lines[i][0 ], lines[i][1 ]), Point2d (lines[i][2 ], lines[i][3 ]), Scalar (0 ), 1 , LINE_AA);
73
78
74
- Mat diff;
75
- absdiff(lineImg0, lineImg1, diff);
76
- imshow("", diff);
77
- waitKey();*/
79
+ Mat diff;
80
+ absdiff (lineImg0, lineImg1, diff);
81
+ imshow (" lineImg0" , lineImg0);
82
+ imshow (" lineImg1" , lineImg1);
83
+ imshow (" diff" , diff);
84
+ imshow (" gray" , gray);
85
+ waitKey ();
86
+ }
78
87
}
79
88
80
89
cout << " OpenCV processed " << counter << " frames in " << tm0.getTimeMilli () << " ms." ;
0 commit comments