opencv/modules/imgproc/test
Tom Becker 592f8d8c1b Merge pull request #10232 from TomBecker-BD:hough-many-circles
Hough many circles (#10232)

* Add Hui's optimization. Merge with latest changes in OpenCV.

* Use conditional compilation instead of a runtime flag.

* Whitespace.

* Create the sequence for the nonzero edge pixels only if using that approach.

* Improve performance for finding very large numbers of circles

* Return the circles with the larger accumulator values first, as per API documentation.
Use a separate step to check distance between circles. Allows circles to be sorted by strength first. Avoids locking in EstimateRadius which was slowing it down.
Return centers only if maxRadius == 0 as per API documentation.

* Sort the circles so results are deterministic. Otherwise the order of circles with the same strength depends on parallel processing completion order.

* Add test for HoughCircles.

* Add beads test.

* Wrap the non-zero points structure in a common interface so the code can use either a vector or a matrix.

* Remove the special case for skipping the radius search if maxRadius==0.

* Add performance tests.

* Use NULL instead of nullptr.
OpenCV should compile with C++98 compiler.

* Put test suite name first.
Use different test suite names for each test to avoid an error from the test runner.

* Address build bot errors and warnings.

* Skip radius search if maxRadius < 0.

* Dynamically switch to NZPointList when it will be faster than NZPointSet.

* Fix compile error: missing 'typename' prior to dependent type name.

* Fix compile error: missing 'typename' prior to dependent type name.
This time fix it the non C++ 11 way.

* Fix compile error: no type named 'const_reference' in 'class cv::NZPointList'

* Disable ManySmallCircles tests. Failing on Mac.

* Change beads image to JPEG for smaller file size.
Try enabling the ManySmallCircles tests again.

* Remove ManySmallCircles tests. They are failing on the Mac build.

* Fix expectations to check all circles.

* Changing case on a case-insensitive file system
Step 1: remove the old file names

* Changing case on a case-insensitive file system
Step 2: add them back with the new names

* Fix cmpAccum function to be strictly weak ordered.

* Add tests for many small circles.

* imgproc(perf): fix HoughCircles tests

* imgproc(houghCircles): refactor code

- simplify NZPointList
- drop broken (de-synchronization of 'current'/'mi' fields) NZPointSet iterator
- NZPointSet iterator is replaced to direct area scan
- use SIMD intrinsics
- avoid std exceptions (build for embedded systems)
2017-12-28 17:23:11 +03:00
..
ocl fix file names 2017-12-15 14:59:35 +03:00
test_approxpoly.cpp Normalized file endings. 2013-08-21 18:59:25 +04:00
test_bilateral_filter.cpp Update for IPP for OpenCV 2017u2 integration; 2017-04-25 15:53:12 +03:00
test_boundingrect.cpp Normalize line endings and whitespace 2012-10-17 15:32:23 +04:00
test_canny.cpp Implementation of bit-exact resize. Internal calls to linear resize updated to use bit-exact version. (#9468) 2017-12-13 15:00:38 +03:00
test_color.cpp Bit-exact version of Luv2RGB_b (#9470) 2017-09-21 14:20:45 +03:00
test_connectedcomponents.cpp Add Grana's connected components algorithm for 8-way connectivity. (#6823) 2016-08-26 16:01:00 +04:00
test_contours.cpp Fix pointPolygonTest for large coordinate values (#10222) 2017-12-05 15:49:44 +03:00
test_convhull.cpp Fix Issue #9797 minEnclosingCircle from three points 2017-10-13 19:26:54 +03:00
test_cvtyuv.cpp typo 2015-09-11 19:01:18 +02:00
test_distancetransform.cpp Fixing GCC 4.9 warnings 2015-07-22 16:12:31 +03:00
test_drawing.cpp Fixed clipLine evaluation for very long lines 2017-06-26 16:00:29 +03:00
test_emd.cpp Normalize line endings and whitespace 2012-10-17 15:32:23 +04:00
test_filter.cpp test for GaussianBlur with border 2017-11-17 13:15:15 +03:00
test_fitellipse_ams.cpp fix file names 2017-12-15 14:59:35 +03:00
test_fitellipse_direct.cpp fix file names 2017-12-15 14:59:35 +03:00
test_fitellipse.cpp enabled tests for fitEllipse since the issue is fixed 2017-10-23 16:28:49 +03:00
test_floodfill.cpp Fix wrong default mask value in floodFill 2016-10-25 11:16:59 +03:00
test_goodfeaturetotrack.cpp Merge pull request #9618 from vipinanand4:goodFeaturesToTrack_added_gradiantSize 2017-09-22 14:04:43 +00:00
test_grabcut.cpp Make highgui.hpp independent from C API 2013-04-08 15:47:29 +04:00
test_histograms.cpp cv::convertMaps 2014-11-01 10:13:28 -07:00
test_houghcircles.cpp Merge pull request #10232 from TomBecker-BD:hough-many-circles 2017-12-28 17:23:11 +03:00
test_houghlines.cpp fix file names 2017-12-15 14:59:35 +03:00
test_imgproc_umat.cpp Implementation of bit-exact resize. Internal calls to linear resize updated to use bit-exact version. (#9468) 2017-12-13 15:00:38 +03:00
test_imgwarp_strict.cpp Implementation of bit-exact resize. Internal calls to linear resize updated to use bit-exact version. (#9468) 2017-12-13 15:00:38 +03:00
test_imgwarp.cpp Implementation of bit-exact resize. Internal calls to linear resize updated to use bit-exact version. (#9468) 2017-12-13 15:00:38 +03:00
test_intersection.cpp fixed warnings 2013-10-08 12:46:43 +04:00
test_lsd.cpp Let LineSegmentDetector output line segment coordinates in float precision, as supported by the LSD algorithm. 2015-01-20 17:05:38 +01:00
test_main.cpp added 16-bit support to Bayer2RGB & Bayer2Gray (ticket #686); fixed bug in cv.CreateHist() when no ranges are passed (ticket #990) 2011-06-03 15:45:50 +00:00
test_moments.cpp test: extract OpenCL Moments tests, drop 'coi' parameter 2017-11-02 13:37:58 +03:00
test_pc.cpp core: use matlab-style in 2d fftShift 2017-07-13 13:33:02 +03:00
test_precomp.hpp ColorLab_full test fixed 2017-09-12 17:16:30 +03:00
test_resize_bitexact.cpp Added universal intrinsics based implementations for CV_8UC2, CV_8UC3, CV_8UC4 bit-exact resizes. 2017-12-20 17:17:10 +03:00
test_templmatch.cpp Move cv::Scalar_ to types.hpp 2013-04-01 15:24:33 +04:00
test_thresh.cpp Update 16UC thresholding 2017-09-18 18:34:45 +03:00
test_watershed.cpp Several type of formal refactoring: 2014-08-13 15:21:35 +04:00