@@ -7,7 +7,7 @@ namespace opencv_test { namespace {
7
7
8
8
const Size img_size (320 , 240 );
9
9
const int FLD_TEST_SEED = 0x134679 ;
10
- const int EPOCHS = 10 ;
10
+ const int EPOCHS = 5 ;
11
11
12
12
class FLDBase : public testing ::Test
13
13
{
@@ -44,6 +44,7 @@ class ximgproc_ED: public FLDBase
44
44
{
45
45
detector = createEdgeDrawing ();
46
46
}
47
+ string filename = cvtest::TS::ptr()->get_data_path () + "cv/imgproc/beads.jpg";
47
48
protected:
48
49
Ptr <EdgeDrawing> detector;
49
50
@@ -275,16 +276,18 @@ TEST_F(ximgproc_ED, rotatedRect)
275
276
ASSERT_EQ (EPOCHS, passedtests);
276
277
}
277
278
278
- TEST_F (ximgproc_ED, ManySmallCircles )
279
+ TEST_F (ximgproc_ED, detectLinesAndEllipses )
279
280
{
280
- string picture_name = " cv/imgproc/beads.jpg" ;
281
+ Mat gray_image;
282
+ vector<Vec6d> ellipses;
281
283
282
- string filename = cvtest::TS::ptr ()->get_data_path () + picture_name;
283
- test_image = imread (filename, IMREAD_GRAYSCALE);
284
+ test_image = imread (filename);
284
285
EXPECT_FALSE (test_image.empty ()) << " Invalid test image: " << filename;
285
286
286
- vector<Vec6d> ellipses;
287
- detector->detectEdges (test_image);
287
+ cvtColor (test_image, test_image, COLOR_BGR2BGRA);
288
+ cvtColor (test_image, gray_image, COLOR_BGR2GRAY);
289
+
290
+ detector->detectEdges (gray_image);
288
291
detector->detectEllipses (ellipses);
289
292
detector->detectLines (lines);
290
293
@@ -295,50 +298,30 @@ TEST_F(ximgproc_ED, ManySmallCircles)
295
298
EXPECT_GE (lines.size (), lines_size);
296
299
EXPECT_LE (lines.size (), lines_size + 2 );
297
300
EXPECT_EQ (ellipses.size (), ellipses_size);
298
- }
299
-
300
- TEST_F (ximgproc_ED, ManySmallCirclesPF)
301
- {
302
- string picture_name = " cv/imgproc/beads.jpg" ;
303
-
304
- string filename = cvtest::TS::ptr ()->get_data_path () + picture_name;
305
- test_image = imread (filename, IMREAD_GRAYSCALE);
306
- EXPECT_FALSE (test_image.empty ()) << " Invalid test image: " << filename;
307
301
308
302
detector->params .PFmode = true ;
309
- vector<Vec6d> ellipses;
310
- detector->detectEdges (test_image );
303
+
304
+ detector->detectEdges (gray_image );
311
305
detector->detectEllipses (ellipses);
312
306
detector->detectLines (lines);
313
307
314
- size_t segments_size = 2717 ;
315
- size_t lines_size = 6197 ;
316
- size_t ellipses_size = 2446 ;
308
+ segments_size = 2717 ;
309
+ lines_size = 6197 ;
310
+ ellipses_size = 2446 ;
317
311
EXPECT_EQ (detector->getSegments ().size (), segments_size);
318
312
EXPECT_GE (lines.size (), lines_size);
319
313
EXPECT_LE (lines.size (), lines_size + 2 );
320
314
EXPECT_EQ (ellipses.size (), ellipses_size);
321
- }
322
-
323
- TEST_F (ximgproc_ED, ManySmallCirclesColor)
324
- {
325
- string picture_name = " cv/imgproc/beads.jpg" ;
326
-
327
- string filename = cvtest::TS::ptr ()->get_data_path () + picture_name;
328
- test_image = imread (filename);
329
- EXPECT_FALSE (test_image.empty ()) << " Invalid test image: " << filename;
330
-
331
- cvtColor (test_image, test_image, COLOR_BGR2BGRA);
332
315
333
316
detector->params .MinLineLength = 10 ;
334
- vector<Vec6d> ellipses;
317
+
335
318
detector->detectEdges (test_image);
336
319
detector->detectEllipses (ellipses);
337
320
detector->detectLines (lines);
338
321
detector->detectEllipses (ellipses);
339
- size_t segments_size = 6230 ;
340
- size_t lines_size = 11133 ;
341
- size_t ellipses_size = 2431 ;
322
+ segments_size = 6230 ;
323
+ lines_size = 11133 ;
324
+ ellipses_size = 2431 ;
342
325
EXPECT_EQ (detector->getSegments ().size (), segments_size);
343
326
EXPECT_GE (lines.size (), lines_size);
344
327
EXPECT_LE (lines.size (), lines_size + 2 );
0 commit comments