opencv/modules/features2d/src
Jiri Horner 5f20e802d2 Merge pull request #8869 from hrnr:akaze_part1
[GSOC] Speeding-up AKAZE, part #1 (#8869)

* ts: expand arguments before stringifications in CV_ENUM and CV_FLAGS

added protective macros to always force macro expansion of arguments. This allows using CV_ENUM and CV_FLAGS with macro arguments.

* feature2d: unify perf test

use the same test for all detectors/descriptors we have.

* added AKAZE tests

* features2d: extend perf tests

* add BRISK, KAZE, MSER
* run all extract tests on AKAZE keypoints, so that the test si more comparable for the speed of extraction

* feature2d: rework opencl perf tests

use the same configuration as cpu tests

* feature2d: fix descriptors allocation for AKAZE and KAZE

fix crash when descriptors are UMat

* feature2d: name enum to fix build with older gcc

* Revert "ts: expand arguments before stringifications in CV_ENUM and CV_FLAGS"

This reverts commit 19538cac1e.

This wasn't a great idea after all. There is a lot of flags implemented as #define, that we don't want to expand.

* feature2d: fix expansion problems with CV_ENUM in perf

* expand arguments before passing them to CV_ENUM. This does not need modifications of CV_ENUM.
* added include guards to `perf_feature2d.hpp`

* feature2d: fix crash in AKAZE when using KAZE descriptors

* out-of-bound access in Get_MSURF_Descriptor_64
* this happened reliably when running on provided keypoints (not computed by the same instance)

* feature2d: added regression tests for AKAZE

* test with both MLDB and KAZE keypoints

* feature2d: do not compute keypoints orientation twice

* always compute keypoints orientation, when computing keypoints
* do not recompute keypoint orientation when computing descriptors

this allows to test detection and extraction separately

* features2d: fix crash in AKAZE

* out-of-bound reads near the image edge
* same as the bug in KAZE descriptors

* feature2d: refactor invariance testing

* split detectors and descriptors tests
* rewrite to google test to simplify debugging
* add tests for AKAZE and one test for ORB

* stitching: add tests with AKAZE feature finder

* added basic stitching cpu and ocl tests
* fix bug in AKAZE wrapper for stitching pipeline causing lots of
! OPENCV warning: getUMat()/getMat() call chain possible problem.
!                 Base object is dead, while nested/derived object is still alive or processed.
!                 Please check lifetime of UMat/Mat objects!
2017-06-21 14:33:09 +03:00
..
kaze Merge pull request #8869 from hrnr:akaze_part1 2017-06-21 14:33:09 +03:00
opencl Merge pull request #3483 from wangyan42164:ocl_orb_improve 2014-12-05 12:55:54 +00:00
agast_score.cpp Fixed out of bound reading in makeAgastOffsets 2017-05-10 16:21:22 +03:00
agast_score.hpp removing code duplicates and replace unsigned long by uint32_t 2015-11-23 23:47:23 +03:00
agast.cpp Eliminated use of obsolete 'register' keyword 2016-10-20 20:19:14 -04:00
akaze.cpp Merge pull request #8869 from hrnr:akaze_part1 2017-06-21 14:33:09 +03:00
bagofwords.cpp Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
blobdetector.cpp Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
brisk.cpp Fixed typo in BRISK feature detector. 2016-04-18 13:04:04 +01:00
draw.cpp Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
dynamic.cpp moved nonfree and a part of features2d to opencv_contrib/xfeatures2d 2014-08-11 23:26:39 +04:00
evaluation.cpp Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
fast_score.cpp Normalized file endings. 2013-08-21 18:59:25 +04:00
fast_score.hpp Fix binary compatibility of opencv_features2d 2012-10-17 02:09:14 +04:00
fast.cpp Moved size restrictions for OpenVX processed images to corresponding cpp files 2017-05-25 19:25:17 +03:00
feature2d.cpp fix regression issues in Feature2D and DescriptorMatcher interfaces 2016-10-16 13:36:40 +04:00
gftt.cpp Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
kaze.cpp Merge pull request #8869 from hrnr:akaze_part1 2017-06-21 14:33:09 +03:00
keypoint.cpp Merge branch '2.4' 2013-04-05 21:11:59 +04:00
main.cpp IPPInitSingelton was added to contain IPP related global variables; 2015-10-01 09:58:48 +03:00
matchers.cpp improved fix for java wrapper generator (gen_java.py) to avoid generation of java methods with duplicate signatures(v3) 2016-10-11 02:47:02 +04:00
mser.cpp fix the mser issue 2017-05-26 16:51:54 +08:00
orb.cpp fixed segfault at ORB::compute() near image's border 2016-12-16 18:36:37 +03:00
precomp.hpp HAL moved back to core 2015-12-17 12:33:23 +03:00