Commit Graph

1123 Commits

Author SHA1 Message Date
Jiri Horner
bb6496d9e5 Merge pull request #8951 from hrnr:akaze_part2
[GSOC] Speeding-up AKAZE, part #2 (#8951)

* feature2d: instrument more functions used in AKAZE

* rework Compute_Determinant_Hessian_Response

* this takes 84% of time of Feature_Detection
* run everything in parallel
* compute Scharr kernels just once
* compute sigma more efficiently
* allocate all matrices in evolution without zeroing

* features2d: add one bigger image to tests

* now test have images: 600x768, 900x600 and 1385x700 to cover different resolutions

* explicitly zero Lx and Ly

* add Lflow and Lstep to evolution as in original AKAZE code

* reworked computing keypoints orientation

integrated faster function from https://github.com/h2suzuki/fast_akaze

* use standard fastAtan2 instead of getAngle

* compute keypoints orientation in parallel

* fix visual studio warnings

* replace some wrapped functions with direct calls to OpenCV functions

* improved readability for people familiar with opencv
* do not same image twice in base level

* rework diffusity stencil

* use one pass stencil for diffusity from https://github.com/h2suzuki/fast_akaze
* improve locality in Create_Scale_Space

* always compute determinat od hessian and spacial derivatives

* this needs to be computed always as we need derivatives while computing descriptors
* fixed tests of AKAZE with KAZE descriptors which have been affected by this

Currently it computes all first and second order derivatives together and the determiant of the hessian. For descriptors it would be enough to compute just first order derivates, but it is not probably worth it optimize for scenario where descriptors and keypoints are computed separately, since it is already very inefficient. When computing keypoint and descriptors together it is faster to do it the current way (preserves locality).

* parallelize non linear diffusion computation

* do multiplication right in the nlp diffusity kernel

* rework kfactor computation

* get rid of sharing buffers when creating scale space pyramid, the performace impact is neglegible

* features2d: initialize TBB scheduler in perf tests

* ensures more stable output
* more reasonable profiles, since the first call of parallel_for_ is not getting big performace hit

* compute_kfactor: interleave finding of maximum and computing distance

* no need to go twice through the data

* start to use UMats in AKAZE to leverage OpenCl in the future

* fixed bug that prevented computing determinant for scale pyramid of size 1 (just the base image)
* all descriptors now support writing to uninitialized memory
* use InputArray and OutputArray for input image and descriptors, allows to make use UMAt that user passes to us

* enable use of all existing ocl paths in AKAZE

* all parts that uses ocl-enabled functions should use ocl by now

* imgproc: fix dispatching of IPP version when OCL is disabled

* when OCL is disabled IPP version should be always prefered (even when the dst is UMat)

* get rid of copy in DeterminantHessian response

* this slows CPU version considerably
* do no run in parallel when running with OCL

* store derivations as UMat in pyramid

* enables OCL path computing of determint hessian
* will allow to compute descriptors on GPU in the future

* port diffusivity to OCL

* diffusivity itself is not a blocker, but this saves us downloading and uploading derivations

* implement kernel for nonlinear scalar diffusion step

* download the pyramid from GPU just once

we don't want to downlaod matrices ad hoc from gpu when the function in AKAZE needs it. There is a HUGE mapping overhead and without shared memory support a LOT of unnecessary transfers.

This maps/downloads matrices just once.

* fix bug with uninitialized values in non linear diffusion

* this was causing spurious segfaults in stitching tests due to propagation of NaNs
* added new test, which checks for NaNs (added new debug asserts for NaNs)
* valgrind now says everything is ok

* add nonlinear diffusion step OCL implementation

* Lt in pyramid changed to UMat, it will be downlaoded from GPU along with Lx, Ly
* fix bug in pm_g2 kernel. OpenCV mangles dimensions passed to OpenCL, so we need to check for boundaries in each OCL kernel.

* port computing of determinant to OCL

* computing of determinant is not a blocker, but with this change we don't need to download all spatial derivatives to CPU, we only download determinant
* make Ldet in the pyramid UMat, download it from CPU together with the other parts of the pyramid
* add profiling macros

* fix visual studio warning

* instrument non_linear_diffusion

* remove changes I have made to TEvolution

* TEvolution is used only in KAZE now

* Revert "features2d: initialize TBB scheduler in perf tests"

This reverts commit ba81e2a711.
2017-08-01 12:46:01 +00:00
Alexander Alekhin
c455fc0334 Merge pull request #9133 from sovrasov:mser_add_test 2017-07-14 19:38:05 +00:00
Alexander Alekhin
5a54acef4e Merge pull request #9130 from alalek:android_define 2017-07-14 17:17:24 +00:00
Vladislav Sovrasov
25af743902 mser: add a couple of new regression tests 2017-07-14 20:07:32 +03:00
gylns
6d1cdcf601 Merge pull request #8910 from gylns:mser
fix the MSER history's size issue (#8910)

* simplify growHistory and merge

* add assertion for history's size

* MSER: fix merging components' history
2017-07-14 16:58:56 +00:00
Alexander Alekhin
a4a47b538c build: detect Android via '__ANDROID__' macro
https://sourceforge.net/p/predef/wiki/OperatingSystems
2017-07-10 12:43:59 +03:00
Tony Lian
c8783f3e23 Merge pull request #9075 from TonyLianLong:master
Remove unnecessary Non-ASCII characters from source code (#9075)

* Remove unnecessary Non-ASCII characters from source code

Remove unnecessary Non-ASCII characters and replace them with ASCII
characters

* Remove dashes in the @param statement

Remove dashes and place single space in the @param statement to keep
coding style

* misc: more fixes for non-ASCII symbols

* misc: fix non-ASCII symbol in CMake file
2017-07-03 16:14:17 +00:00
Maksim Shabunin
e0393f8557 Fixed some issues found by static analysis (4th round) 2017-06-30 12:26:53 +03:00
Maksim Shabunin
a769d69a9d Fixed several issues found by static analysis 2017-06-28 18:06:18 +03:00
Maksim Shabunin
32d4af36e2 Fixing some static analysis issues 2017-06-27 14:30:26 +03:00
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
abratchik
037d8fbdcd Refactor OpenCV Java Wrapping 2017-06-15 20:35:12 +04:00
Woody Chow
0f0dea79fc [move sift.cpp] Use TLS instead of mutex in SIFT
original commit: ab43a3b2d9
2017-05-31 15:08:32 +09:00
Woody Chow
b6d636214e [move sift.cpp] Multithreading findScaleSpaceExtremaComputer. Sort the keypoints afterwards to make the output stable
original commit: 6be2945abb
2017-05-31 10:02:09 +09:00
Woody Chow
5a4f2b5d27 Add function to sort keypoints that are calculated in parallel to ensure stable output 2017-05-29 17:59:20 +09:00
Vadim Pisarevsky
ee257ffe9e Merge pull request #8455 from terfendail:ovxhal_skipsmall 2017-05-26 12:10:18 +00:00
n001519
cc3fdd005e fix the mser issue 2017-05-26 16:51:54 +08:00
Vitaly Tuzov
1d62a025b3 Moved size restrictions for OpenVX processed images to corresponding cpp files 2017-05-25 19:25:17 +03:00
remi
8ee8710c02 Modifications to reduce the code through a loop
AKAZE refactoring: fixed indentation and made more minor modifications
2017-05-23 16:36:55 +03:00
Vadim Pisarevsky
31aa69f556 Merge pull request #8708 from terfendail:agast_fix 2017-05-17 15:03:41 +00:00
Vitaly Tuzov
ee5b5a6b2f Fixed out of bound reading in makeAgastOffsets 2017-05-10 16:21:22 +03:00
Vitaly Tuzov
2492c299f3 Extended set of existing performance test to OpenVX HAL suitable execution modes 2017-04-27 12:32:29 +03:00
Vitaly Tuzov
bf5b7843e8 Extended set of OpenVX HAL calls disabled for small images 2017-04-06 18:17:32 +03:00
Woody Chow
4b64955a12 [move sift.cpp] Parallelize calcDescriptors and buildDoGPyramid. Simplify 2 lines of AVX2 instructions
original commit: 443f68cb71
2017-03-24 16:31:18 +09:00
Maksim Shabunin
9333f82be0 Reduce dependencies between modules 2017-03-15 17:58:52 +03:00
Woody Chow
546239a3a8 [move sift.cpp] Optimize SIFT with AVX2
original commit: c5e55dfde9
2017-03-08 10:08:50 +09:00
Vitaly Tuzov
9a4b5a4545 OpenVX calls updated to use single common OpenVX context per thread 2017-02-21 16:08:23 +03:00
Tomoaki Teshima
1d01e435ca use universal intrinsic in fast 2017-01-23 19:03:22 +09:00
Suleyman TURKMEN
8be0a3452d [move sift.cpp] Update sift.cpp
original commit: cb7b59f203
2016-12-23 13:21:30 +03:00
Vadim Pisarevsky
c64ac42b27 Merge pull request #7852 from savuor:fix/orb_rotation 2016-12-19 16:19:38 +00:00
Rostislav Vasilikhin
13b9dd3963 fixed segfault at ORB::compute() near image's border 2016-12-16 18:36:37 +03:00
Rostislav Vasilikhin
969c55da58 Merge pull request #7720 from savuor:openvx_FAST
Added OpenVX based processing to FAST (#7720)

* added wrapper for OVX FAST & fixes to IVX wrappers

* fixed type checks in wrappers, array downloading code simplified

* rewritten for new macro use
2016-12-16 13:48:18 +02:00
Alexander Alekhin
fbf2383d5d Merge pull request #7787 from alalek:ocl_explicit_only 2016-12-13 10:22:33 +00:00
Vladislav Sovrasov
4a3da1c4ed Fix missing angles in AKAZE keypoints 2016-12-12 12:28:16 +03:00
Alexander Alekhin
44d9d59f08 ocl: stop using of OpenCL without explicit UMat arguments 2016-12-04 02:34:17 +03:00
Alexander Alekhin
39d7ecc93b perf: disabled checks for magic numbers
Results are not bit-exact
2016-11-18 15:20:18 +03:00
Alexander Alekhin
dac37a0bc9 features2d: update rotation invariance test
Don't process keypoints near border, because after rotation border points
have contrast gradients with rotation border fill.
2016-11-18 15:20:03 +03:00
abratchik
f978ee613e fix for #7510, #7511 and #7512 2016-10-31 11:07:56 +04:00
abratchik
78874c568e fix java wrapper autotests 2016-10-31 10:06:32 +04:00
Sean McBride
943ac96526 Eliminated use of obsolete 'register' keyword
Fixes clang warnings about uses of this obsolete keyword.
2016-10-20 20:19:14 -04:00
abratchik
adbb1471fc fix regression issues in Feature2D and DescriptorMatcher interfaces 2016-10-16 13:36:40 +04:00
Alexander Alekhin
1ae27eb696 Merge pull request #7476 from abratchik:java.wrapper.fix.3.1 2016-10-15 09:21:45 +00:00
Maksim Shabunin
699c25a4be Merge pull request #7471 from alalek:fix_java_generator 2016-10-13 15:21:39 +00:00
abratchik
084c595855 fix for legacy FeatureDetector and DescriptorMatcher classes 2016-10-13 14:45:59 +04:00
Alexander Alekhin
c16c803fe9 java: integrate code from base modules
To resolve undefined "Mat_to_vector_KeyPoint" error
2016-10-12 18:01:51 +03:00
abratchik
789b35d813 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
abratchik
be028d0774 fix for #7420, #7421 2016-10-07 23:58:57 +04:00
Alexander Alekhin
1c18b1d245 Merge pull request #7370 from souch55:Fixxn 2016-10-01 10:44:56 +00:00
sourin
a34fbf7bb1 Fixed identifiers warns 2016-09-30 15:16:29 +05:30
Alexander Alekhin
d102ea96c0 Merge pull request #7210 from mshabunin:fix-warnings 2016-09-02 12:50:45 +00:00
Alexander Alekhin
8104db2232 Merge pull request #7130 from souch55:Fixed 2016-09-02 12:49:49 +00:00
Maksim Shabunin
dc704d77ac Fixed several GCC 5.x warnings 2016-09-01 15:44:01 +03:00
Pavel Vlasov
30a6cee2fe Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
Vadim Pisarevsky
ea1f885be1 Merge pull request #7055 from gylns:master 2016-08-18 13:17:18 +00:00
sourin
ce818dc01f respective changes added 2016-08-18 17:24:43 +05:30
Alexander Alekhin
185fe7aa1b Merge pull request #7094 from terfendail:MSER_fix 2016-08-17 15:14:34 +00:00
Vitaliy Lyudvichenko
ab8de8f506 Adding of user-defined type conversions for python bindings inside module directories
Adding of destructor and placement new constructors for classes wrapped with CV_EXPORTS_W_SIMPLE macro
2016-08-16 13:10:17 +03:00
Vitaly Tuzov
62c1a5a152 Replaced quiet return from MSER:detectRegion function with exeption throwing to notify user in case small image is processed 2016-08-15 14:16:13 +03:00
will hunt
ac2d79fd67 MSER: all test passed.
1. if a component's variation is a global minimum than it should be a local minimum
2. for the small image with invert and blur, the MSERs number should be 20
2016-08-15 09:25:45 +08:00
Vitaly Tuzov
9db93d773d Fix for MSER::detectRegions crash on images with either dimension less than 3 2016-08-12 10:31:13 +03:00
will hunt
c3d2921971 MSER: grew unnecessary histories.
the merge() calls growHistory() too many times such that:
1. some CompHistory nodes not used have been created
2. some CompHistory node's val equal their parents
2016-08-07 08:28:23 +08:00
will hunt
c2e5418e51 MSER: off-by-one bug 2016-08-06 13:12:50 +08:00
Juan Pablo Aveggio
ba5f9d68c4 Update bagofwords.cpp 2016-08-02 20:53:05 -03:00
Vadim Pisarevsky
b0cc495698 Merge pull request #6822 from saedrna:master 2016-07-19 15:37:31 +00:00
Martin Nowak
99d914ea3b [move sift.cpp] fix overflow issue when computing diagonal
- with big images the int multiplication can overflow

original commit: d4df727d38
2016-06-11 17:51:46 +02:00
Maksim Shabunin
1e667de1f3 HAL math interfaces: fastAtan2, magnitude, sqrt, invSqrt, log, exp 2016-05-31 11:54:52 +03:00
Han Hu
e646f9d2f1 Fix subpixel problem of akaze.
This is found in the original akaze repo. Previous sub pixel localization method assumes the coordinate (0, 0) is the up-left corner of the up-left pixel. But as far as I know, opencv uses the center of the up-left corner, in this case it should be done in this way.

35aeb83a71
db3dc22981
2016-05-20 11:45:46 +08:00
Julien Nabet
a29c814bd8 cppcheck: fix some reports
All of these: (performance) Prefer prefix ++/-- operators for non-primitive types.
[modules/calib3d/src/fundam.cpp:1049] -> [modules/calib3d/src/fundam.cpp:1049]: (style) Same expression on both sides of '&&'.
2016-04-29 15:41:39 +02:00
Ivar Clemens
3287ab386c Fixed typo in BRISK feature detector. 2016-04-18 13:04:04 +01:00
mvukad
695e33b25b Fix missing format when writing Algorithm-based objects
Added a writeFormat() method to Algorithm which must be called by the
write() method of derived classes.
2016-04-07 13:49:42 -07:00
Maksim Shabunin
f3127521f3 Merge pull request #6214 from vonnieda:java_features2d 2016-03-21 11:51:11 +00:00
Vadim Pisarevsky
cd1426ba8d Merge pull request #6025 from sovrasov:new_python_tests 2016-03-12 17:11:19 +00:00
Balint Cristian
f819323296 Fix AGAST keypoint declared size. 2016-03-12 16:49:14 +02:00
Krishnaraj Bhat
9b8013d193 gcc6: fix misleading indentation warning
cosmetic changes to fix this warning.
real bugs not found
2016-03-07 17:06:16 +05:30
Jason von Nieda
f4b502dd03 Adds supports for the majority of features2d to the Java wrappers:
* Adds the main features2d header to the parse list for the generator.
* Removes the manual definition of drawKeypoints and drawMatches since these are now included in the main header.
* Updates the generator to ignore SimpleBlobDetector, FlannBasedMatcher and DescriptorMatcher as these cause conflicts with the generator. This is okay since these were not previously included in the distribution anyway, so no harm is done.
2016-03-07 00:14:53 -08:00
Vladislav Sovrasov
e4fed417d2 Add segmentation and object tracking python tests 2016-03-03 11:06:21 +03:00
Patrick Snape
05cfe28612 Fix parsing of training vecs for FlannBasedMatcher
FlannBasedMatcher::add is overloaded, but the style of parsing the
InputArrayOfArrays does not match the style from
DescriptorMatcher::add. The issue is that InputArrayOfArrays
must be properly marshalled so that the data can be read
correctly. In this case, the method expects the training
descriptors to be either a vector of matrices or a single matrix
(as is shown in DescriptorMatcher::add). These code
replicates that for the case of the FlannBasedMatcher::add.

In fact, a similar commit to this was added by 26d9a7c but was
ultimately not accepted in #4111. This is likely due to the
fact that the input arrays were not parsed properly and the
case of a single matrix was being improperly handled. I believe
this commit to be correct given the logic from
DescriptorMatcher::add.
2016-01-23 15:58:16 +00:00
Patrick Snape
2f5ea3437e Update indentation to match rest of file
Very cosmetic, but was analyzing code and just wanted to make it
consistent.
2016-01-23 15:57:46 +00:00
Alexander Alekhin
3d85e7ac0d features2d agast: clear in/out keypoints container
fixes #5863
2015-12-25 13:49:24 +03:00
Alexander Alekhin
323e24e3ef change links from samples/python2 to samples/python 2015-12-18 11:00:30 +03:00
Maksim Shabunin
84f37d352f HAL moved back to core 2015-12-17 12:33:23 +03:00
Maksim Shabunin
24284d3d17 [move sift.cpp] Fixed HAL headers location
original commit: f529a1df2b
2015-12-15 18:41:26 +03:00
Vadim Pisarevsky
8e67f0ba84 Merge pull request #5774 from mshabunin:coverity_fixes 2015-12-09 13:32:44 +00:00
Maksim Shabunin
2cda78ffac Valgrind: fixed uninitialized image usage in descriptors regression tests 2015-12-09 14:25:09 +03:00
Balint Cristian
0087c57e0d Fix KAZE/AKAZE descriptors to use angle instead radians. 2015-12-08 22:04:41 +02:00
Vadim Pisarevsky
9d624f82c0 Merge pull request #5670 from askourik:opencv_agast_tree 2015-12-08 16:46:11 +00:00
Vadim Pisarevsky
9c0a5523e4 Merge pull request #5757 from alalek:merge-2.4 2015-12-08 11:51:29 +00:00
Alexander Alekhin
d86d8ed909 Merge 2.4 into master
PR #2968: cce2d99 8578f9c
Fixed bug which caused crash of GPU version of feature matcher in stitcher

The bug caused crash of GPU version of feature matcher in stitcher when
we use ORB features.

PR #3236: 5947519
Check sure that we're not already below required leaf false alarm rate before continuing to get negative samples.

PR #3190
fix blobdetector

PR #3562 (part): 82bd82e
TBB updated to 4.3u2. Fix for aarch64 support.

PR #3604 (part): 091c7a3
OpenGL interop sample reworked not ot use cvconfig.h

PR #3792: afdf319
Add -L for CUDA libs path to pkg-config

Add all dirs from CUDA_LIBS_PATH as -L linker options to
OPENCV_LINKER_LIBS. These will end up in opencv.pc.

PR #3893: 122b9f8
Turn ocv_convert_to_lib_name into a function

PR #5490: ec5244a
fixed memory leak in findHomography tests

PR #5491: 0d5b739
delete video readers

PR #5574

PR #5202
2015-12-08 10:24:54 +03:00
Dominik Kleiser
0c471515fd use float for CV_PI 2015-12-02 17:33:40 +01:00
Dominik Kleiser
c7cb028035 use floats for the calculation 2015-12-02 16:38:44 +01:00
Dominik Kleiser
767bae44ae Fix the unit of angle for AKaze/Kaze KeyPoints
Convert the return value of getAngle from radian to degrees.
2015-12-02 11:51:37 +01:00
Alexander Alekhin
8524d46fee Merge pull request #5633 from mshabunin:doc-mser 2015-11-30 09:48:39 +00:00
askourik
fedf064088 removing code duplicates and replace unsigned long by uint32_t 2015-11-23 23:47:23 +03:00
askourik
b3e8c65e5e removed code duplication for non-intel platforms 2015-11-23 22:41:35 +03:00
askourik
4cf7ddfd87 Added new function definition in AGAST module header for tree-optimized version 2015-11-23 22:11:01 +03:00
Maksim Shabunin
bd53a30e76 Merge pull request #5658 from berak:akaze_fix 2015-11-23 09:51:23 +00:00
askourik
a6bbe06379 Merge branch 'opencv_agast_tree' of https://github.com/askourik/opencv into opencv_agast_tree 2015-11-19 07:41:55 +03:00
askourik
cc5a1d612e added comments and test perl examples for agast tree version 2015-11-19 07:39:57 +03:00
askourik
ae66ce9d22 Add treelookups for nonintel 2015-11-19 07:06:20 +03:00
berak
0baf0bdc24 AKAZE: check channels instead of type in detectAndCompute
add same CV_32F and CV_16U support for KAZE
2015-11-12 12:48:03 +01:00
Vadim Pisarevsky
3942b1f362 Merge pull request #5340 from alalek:ocl_off 2015-11-10 16:53:36 +00:00
Maksim Shabunin
7392ce0a81 Added some documentation for MSER 2015-11-05 17:17:18 +03:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
Pavel Vlasov
e837d69f8f IPPInitSingelton was added to contain IPP related global variables;
OPENCV_IPP env var now allows to select IPP architecture level for IPP9+;
IPP initialization logic was unified across modules;
2015-10-01 09:58:48 +03:00
Balint Cristian
fdbed4a473 Speedup AGAST nonmax-suppression. 2015-09-26 04:43:07 +03:00
Alexander Alekhin
7213e5f68a ocl: correct disabling of OpenCL code 2015-09-13 20:28:23 +03:00
Ilya Lavrenov
cf0f47f589 fixed memory leak in descriptor regression tests 2015-09-13 12:14:30 +02:00
Ilya Lavrenov
f7d36bbad5 fixed memory leaks in modules/features2d/test/test_nearestneighbors.cpp 2015-09-13 12:08:19 +02:00
Ilya Lavrenov
e390c8c728 fixed typo 2015-09-11 18:59:33 +02:00
Roman Donchenko
ec0508269a NearestNeighborTest: use ts->get_rng() instead of (implicit) theRNG()
This ensures that test data is not dependent on the order the tests are
executed in.
2015-09-11 18:39:32 +02:00
Maksim Shabunin
771af4f32d Some changes to support mingw-w64
- IPP is disabled by default when compiler is mingw (couldn't make it
work)
- fixed some warnings
- fixed some `__GNUC__` version checks (for correctness and convenience)
- removed UTF-8 BOM from hough.cpp (fixes #5253)
2015-09-01 00:59:08 +03:00
Ilya Lavrenov
dc441f50cd fixed memory leak in descriptor regression tests 2015-08-31 17:30:42 +03:00
Ilya Lavrenov
be499b42d9 fixed memory leaks in modules/features2d/test/test_nearestneighbors.cpp 2015-08-31 17:21:55 +03:00
Alexander Alekhin
a00b37d209 Merge pull request #5094 from SpecLad:f2d-ts-rng 2015-08-19 00:45:04 +00:00
Ilya Lavrenov
370d1ff21a fixed typo 2015-08-15 16:25:25 +03:00
Roman Donchenko
1245cd1752 NearestNeighborTest: use ts->get_rng() instead of (implicit) theRNG()
This ensures that test data is not dependent on the order the tests are
executed in.
2015-07-30 18:03:48 +03:00
Roman Donchenko
72ddeea479 FREAK: add missing field initialization 2015-07-22 14:06:39 +03:00
Evgeny Agafonchikov
6a6d58d389 Adding test support for WINRT 2015-06-30 15:35:20 +03:00
Vadim Pisarevsky
5e095c8fbd Merge pull request #4022 from LaurentBerger:ExampleBLOB_MSER 2015-05-28 15:00:36 +00:00
Niklas Frisk
8138e26163 Fixes #3910, flags in _prepareImgAndDrawKeypoints are now binary OR'ed instead of added.
Conflicts:
	modules/features2d/src/draw.cpp
2015-05-24 13:31:11 +02:00
Vadim Pisarevsky
af47b6551f another attempt to make the MSER test pass. removed possible randomization in parameters from run to run 2015-05-21 17:10:35 +03:00
Vadim Pisarevsky
4c67ae1a0b fixed failure in Features2d_MSER.cases 2015-05-21 16:27:34 +03:00
Vadim Pisarevsky
dab78c26b1 added reasonable test for MSER (including coverage for http://code.opencv.org/issues/4273, http://code.opencv.org/issues/1723 and http://code.opencv.org/issues/756); also, added some "in-progress" info to the Features2d_Feature2d.no_crash test. 2015-05-21 15:03:17 +03:00
Vadim Pisarevsky
fede94e979 it's now true MSER algorithm that works well on binary images too 2015-05-21 05:44:14 +03:00
Vadim Pisarevsky
b5a7122855 added test to do smoke testing of ORB, KAZE, AKAZE and BRISK on images of different size 2015-05-18 21:16:53 +03:00
Vadim Pisarevsky
fc06a2384b added test for batch detection/descriptor extraction (http://code.opencv.org/issues/3943) 2015-05-18 19:01:00 +03:00
Vadim Pisarevsky
432cf1152a added read/write functions for vector<DMatch> + the test (http://code.opencv.org/issues/4308) 2015-05-18 18:59:37 +03:00
Vadim Pisarevsky
b9792fdc14 Merge pull request #3829 from ippei-i:2.4-flann-lsh-addable-index 2015-05-18 15:38:21 +00:00
laurentBerger
3a53e726dd example BLOB_MSER and fixed bug in blobdetector 2015-05-07 11:52:06 +02:00
cbalint13
2c6114f58d Force newer build over buildbot. 2015-05-05 12:19:35 +03:00
cbalint13
8ba1ec22e4 Force buildbot to rebuild. 2015-05-04 19:54:08 +03:00
cbalint13
f426778160 Force buildbot rebuild. 2015-05-02 11:25:22 +03:00
cbalint13
9b87c22e01 Fix bugs in non-max suppression routine. 2015-05-01 22:07:08 +03:00
cbalint13
bbdf21679f Leave AGAST at thresold=10, cosmetic for perf tests. 2015-04-30 02:23:58 +03:00
cbalint13
e2f74309f7 Default AGAST threshold is 40 (as authors recomandation) 2015-04-29 23:54:16 +03:00
cbalint13
0ec5561b4e Adjust AGAST perftest to be at parity (better) with FAST ones. 2015-04-29 23:42:57 +03:00
Vadim Pisarevsky
d705c651f2 Merge pull request #3960 from ilya-lavrenov:aarch64_test_fixes 2015-04-28 10:48:33 +00:00
cbalint13
0ded2984b8 Merge remote-tracking branch 'upstream/master' into brisk 2015-04-28 06:48:52 +03:00
Pierre Moulon
901d4995e3 Fix a typo error
Fix a typo error
Conflicts:
	modules/features2d/include/opencv2/features2d.hpp
2015-04-25 15:07:17 +02:00
Ilya Lavrenov
89e3c508d8 fixed tests for aarch64 2015-04-24 13:56:20 +03:00
Vadim Pisarevsky
ee11a2d266 fully implemented SSE and NEON cases of intrin.hpp; extended the HAL with some basic math functions 2015-04-16 23:00:26 +03:00
Vadim Pisarevsky
9fc872b70b [move sift.cpp] fixed contrib code to match the HAL
original commit: cdddcc8237
2015-04-16 22:52:05 +03:00
cbalint13
dee3a4b528 Add missing opencv_contrib PR #202 patch. 2015-04-11 17:43:28 +03:00
cbalint13
26997f32c6 Fix BRISK detector&descriptor using proper AGAST. 2015-04-11 12:09:13 +03:00
Maksim Shabunin
35b2139929 Basic HAL module 2015-04-07 18:16:22 +03:00
ippei ito
b8c00854fe instead of "using namespace cv" put all the tests into cv:: namespace. 2015-04-02 19:58:19 +09:00
ippei ito
65b0ecfec5 Test accuracy for PR#3829.Fix WOrder warning on gcc 2015-03-25 18:24:52 +09:00
ippei ito
d1902a1276 Test accuracy for PR#3829.Fix warning on gcc, comment out INIT_RANDOM_SEED for same result each ran. 2015-03-25 05:28:29 +09:00
ippei ito
56cae1b293 Test accuracy for PR#3829.Fix Some Error, Modify SLA. 2015-03-25 03:11:44 +09:00
ippei ito
7c740b6a31 Test accuracy for Pull Request # 3829 2015-03-25 02:38:01 +09:00
ippei ito
cd42e38013 FlannBasedMatcher(LshIndex) in the feature2d optimization for continuance additional train()
Current implementation of miniflann is releasing the trained index, and
rebuilding the index from the beginning.
But, some indexing algorithms like the LSH are able to add the indexing
data after that.
This branch is implementation of that optimization for LshIndex
FlannBasedMatcher in the feature2d.
2015-03-14 04:38:07 +09:00
Nils Plath
32d56c6b43 Fixed: wrong conversion of float-based Mat input inside the AKAZE. 2015-03-05 23:55:07 +01:00
Ilya Lavrenov
cf4c79ebdd disabled some kernels for Android && NVidia 2015-03-04 14:46:49 +03:00
Maksim Shabunin
37c74e38f4 Python support 2015-03-02 18:13:00 +03:00
Maksim Shabunin
457123027e Modified java wrapping mechanism 2015-03-02 18:12:30 +03:00
Vladislav Vinogradov
cda6fed41f move tegra namespace out of cv to prevent conflicts 2015-02-27 12:52:11 +03:00
Vladislav Vinogradov
44e41baffe use new functions before all tegra:: calls 2015-02-26 19:34:58 +03:00
exeltior
b51805e245 Update mser.cpp
Need to initialize boolean variable pass2Only, otherwise the result is not predictable
2015-02-16 18:17:41 +01:00
Vladislav Vinogradov
c120001178 fix -Wsign-compare warnings 2015-01-15 17:17:35 +03:00
Vadim Pisarevsky
df57d038b8 Merge pull request #3572 from berak:python_samples_30 2015-01-15 13:17:26 +00:00
berak
fd60e98c5b fixes for latest changes in opencv3.0 api
fixes for latest changes in opencv3.0 api

waitKey() normalization

fixed mser bindings
2015-01-15 12:01:47 +01:00
Yan Wang
75277bb770 Remove unnecessary global/local dim for radius match.
Signed-off-by: Yan Wang <yan.wang@linux.intel.com>
2015-01-09 13:37:00 +08:00
Maksim Shabunin
d01bedbc61 Removed Sphinx documentation files 2014-12-26 19:12:19 +03:00
Vadim Pisarevsky
03df7831ab Merge pull request #3514 from mshabunin:compat-24 2014-12-22 10:38:56 +00:00
orestis
fffe2464cd Change DescriptorExtractor_ORB regression test
to compensate for neon ieee754 non-compliancy.
Also changed the comparison between max valid and calculated distance to
make the error message more accurate (in case curMaxDist == maxDist)
2014-12-21 21:27:03 +02:00
Maksim Shabunin
91e21847e2 Some changes to make migration to 3.0 easier 2014-12-16 13:00:31 +03:00
StevenPuttemans
db9a0cfbc0 add extra to FeatureDetector docs 2014-12-15 11:31:18 +01:00
Alexander Alekhin
893deb4040 Merge pull request #3483 from wangyan42164:ocl_orb_improve 2014-12-05 12:55:54 +00:00
Yan Wang
2df606f098 Use sincos instead of sin and cos.
Signed-off-by: Yan Wang <yan.wang@linux.intel.com>
2014-12-04 15:48:23 +08:00
Yan Wang
1c9f956b88 Remove unnecesary operations and calculations in loop body.
Signed-off-by: Yan Wang <yan.wang@linux.intel.com>
2014-12-04 15:25:18 +08:00
Maksim Shabunin
03e213ccae Doxygen documentation: BiB references and fixes 2014-12-01 15:50:55 +03:00
Maksim Shabunin
1523fdcc1c Doxygen documentation: more fixes and cleanups 2014-12-01 15:50:36 +03:00
Maksim Shabunin
c5a698fb54 Doxygen documentation: calib3d and features2d modules 2014-12-01 15:47:13 +03:00
Vadim Pisarevsky
b476bf2a00 Merge pull request #3294 from mshabunin:fix-ios-warnings-24 2014-11-05 11:35:19 +00:00
Maksim Shabunin
09fb7512ed Fixed iOS framework compilation warnings 2014-10-27 15:28:21 +03:00
Maksim Shabunin
9b55c09999 Basic doxygen documentation support
- updated existing Doxyfile.in
- added corresponding cmake instructions
- added some specific files (layout, icon)
- clean existing doxygen warnings

Conflicts:
	CMakeLists.txt
	doc/CMakeLists.txt
	modules/core/include/opencv2/core.hpp
	modules/core/include/opencv2/core/base.hpp
	modules/core/include/opencv2/core/cuda.inl.hpp
	modules/core/include/opencv2/core/mat.hpp
	modules/core/include/opencv2/core/matx.hpp
	modules/core/include/opencv2/core/types.hpp
	modules/flann/include/opencv2/flann/lsh_table.h
	modules/imgproc/include/opencv2/imgproc.hpp
2014-10-23 18:27:26 +04:00
Alexander Alekhin
322593e89f Merge pull request #3256 from vbystricky:oclopt_BFMatcher 2014-10-21 08:59:23 +00:00
Vadim Pisarevsky
dcee883961 fixed MSVC warnings and iOS framework compile error 2014-10-18 21:58:34 +04:00
Vadim Pisarevsky
d2b9dc5530 quickly corrected the previous refactoring of features2d: moved from set(SOME_PROP, val) to setSomeProp(val) 2014-10-18 20:44:26 +04:00
vbystricky
3787388eac Optimize OpenCL version of BFMatcher 2014-10-17 19:48:45 +04:00
Vadim Pisarevsky
cc11a8d183 Merge branch 'refactor_features2d_take4' of https://github.com/vpisarev/opencv into refactor_features2d_take4
Conflicts:
	modules/features2d/src/orb.cpp
2014-10-17 15:13:35 +04:00
Vadim Pisarevsky
54e65598bd fixed error in OpenCL ORB 2014-10-17 15:02:57 +04:00
Vadim Pisarevsky
1176d4ef84 fixed some more compile errors and test failures 2014-10-17 15:02:56 +04:00
Vadim Pisarevsky
9c9ecc22e2 fixed opencv_java build 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
fa76c634ec ok; all the tests now pass 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
01d3848f17 all the tests now pass except for MSER 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
162384a838 fixed several test failures; currently 9 out of 73 tests fail 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
06d4aa6060 now all the samples and opencv_contrib compile! 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
09df1a286b OpenCV with the refactored features2d compiles! contrib is broken for now; the tests are not tried yet 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
2e915026a0 yet another attempt to refactor features2d; the first commit, features2d does not even compile 2014-10-17 14:56:58 +04:00
Vadim Pisarevsky
f6f839eb3c trying to resolve the merge conflict 2014-10-17 14:46:08 +04:00
Vadim Pisarevsky
c5292c2549 fixed error in OpenCL ORB 2014-10-17 14:30:12 +04:00
Vadim Pisarevsky
c422bdc3f8 fixed some more compile errors and test failures 2014-10-17 14:22:02 +04:00
Vadim Pisarevsky
61cddd8b63 fixed opencv_java build 2014-10-16 22:52:04 +04:00
Vadim Pisarevsky
25a7d023dd ok; all the tests now pass 2014-10-16 21:59:38 +04:00
Vadim Pisarevsky
c5261ea3d2 all the tests now pass except for MSER 2014-10-16 20:58:29 +04:00
Vadim Pisarevsky
97a5dd0ead fixed several test failures; currently 9 out of 73 tests fail 2014-10-16 17:00:40 +04:00
Vadim Pisarevsky
d017faa06c now all the samples and opencv_contrib compile! 2014-10-16 16:34:22 +04:00
Vadim Pisarevsky
e3654d5416 [move sift.cpp] refactored xfeatures2d in the same style as features2d
original commit: 0cfd795303
2014-10-16 16:33:21 +04:00
Alexander Alekhin
d92bee821d Merge upstream branch 2020-04-21 06:20:05 +00:00
Alexander Alekhin
df10411e05 features2d(sift): patent expiration note 2020-04-21 06:19:16 +00:00
Alexander Alekhin
44e9fb306d features2d(sift): code from nonfree module 2020-04-21 04:14:18 +00:00
Vadim Pisarevsky
5e667ee53a OpenCV with the refactored features2d compiles! contrib is broken for now; the tests are not tried yet 2014-10-15 22:49:17 +04:00
Pavel Vlasov
45958eaabc Implementation detector and selector for IPP and OpenCL;
IPP can be switched on and off on runtime;

Optional implementation collector was added (switched off by default in CMake). Gathers data of implementation used in functions and report this info through performance TS;

TS modifications for implementations control;
2014-10-15 14:24:41 +04:00
Vadim Pisarevsky
1796a26fc7 yet another attempt to refactor features2d; the first commit, features2d does not even compile 2014-10-13 23:01:45 +04:00
Vadim Pisarevsky
9575a82a9e Merge pull request #3299 from felixendres:orb_keypoint_detector_threshold 2014-10-09 14:52:38 +00:00
Niklas Frisk
af72e6b8f4 Fixes #3910, flags in _prepareImgAndDrawKeypoints are now binary OR'ed instead of added. 2014-10-07 09:40:56 +02:00
Felix Endres
ee6835492c Exposing the FAST detector threshold for ORB
Implemented as a new optional parameter for
the constructor of the ORB detector. The
change of this parameter has been included
in the orb unit test.
2014-10-02 12:17:01 +02:00
Vadim Pisarevsky
df28bb5ccd Merge pull request #3190 from StevenPuttemans:fix_simpleblobdetector 2014-09-23 07:18:01 +00:00
StevenPuttemans
d4ec359f11 Fixing errors 2014-09-22 22:12:27 +02:00
StevenPuttemans
03662c0589 fix blobdetector 2014-09-22 13:58:45 +02:00
Vadim Pisarevsky
3516e14e05 Merge branch 'bug_3172' of https://github.com/elmarb/opencv into bfmatcher_fix;
use different fix for the problem, embedded right into the BFMatcher.
2014-09-19 15:31:21 +04:00
E Braun
d82b918a7b fix for bug 3172 2014-09-19 14:47:43 +04:00
E Braun
aa9da6e433 regression test for bug 3172 2014-09-19 14:47:43 +04:00
Vadim Pisarevsky
4057e27539 Merge pull request #3126 from avdmitry:move_KDTree_to_ml 2014-09-14 18:57:23 +00:00
E Braun
bdb82d181f fix for bug 3172 2014-09-02 18:05:23 +02:00
Adrian Clark
fcc481e751 Fixed crash in SSE implementation of FREAK descriptor when number of pairs is set to something other than 512.
See http://code.opencv.org/issues/3889 for more details
2014-09-01 09:37:33 +12:00
Dmitriy Anisimov
5f3ee657ce removed kdtree declaration from interface 2014-08-31 21:39:47 +04:00
Vadim Pisarevsky
2211cfe783 Merge pull request #3151 from PhilLab:orbNoKeypoints 2014-08-25 17:10:45 +00:00
Philipp Hasper
9b1136518c ORB.cl : fixed redefinition of val 2014-08-23 19:07:14 +02:00
PhilLab
92826a0436 ORB crashed with no keypoints present 2014-08-23 14:02:15 +02:00
Vadim Pisarevsky
1efc3cff36 Merge pull request #3124 from f-morozov:optim_pr 2014-08-22 07:04:43 +00:00
f-morozov
0ae89fe2be AKAZE optimizations 2014-08-21 09:34:52 +04:00
Vadim Pisarevsky
a223479107 Merge pull request #3099 from f-morozov:akaze_tutorial 2014-08-19 22:22:23 +00:00
f-morozov
886319c81d AKAZE fixes and tracking tutorial 2014-08-19 16:35:20 +04:00
Dmitriy Anisimov
37b1a7560c first version of moving KDTree from core to ml 2014-08-18 22:40:31 +04:00
Adil Ibragimov
8a4a1bb018 Several type of formal refactoring:
1. someMatrix.data -> someMatrix.prt()
2. someMatrix.data + someMatrix.step * lineIndex -> someMatrix.ptr( lineIndex )
3. (SomeType*) someMatrix.data -> someMatrix.ptr<SomeType>()
4. someMatrix.data -> !someMatrix.empty() ( or !someMatrix.data -> someMatrix.empty() ) in logical expressions
2014-08-13 15:21:35 +04:00
Vadim Pisarevsky
1629d50999 removed some more trailing whitespaces 2014-08-12 14:33:18 +04:00
Vadim Pisarevsky
bca4eb5e00 fixed more doc builder warnings 2014-08-12 10:40:23 +04:00
Vadim Pisarevsky
d119afafdb removed the stuff that's now in xfeatures2d; temporarily added dummy definition of SIFT to make doc builder pass (will remove it later) 2014-08-12 00:30:06 +04:00
Vadim Pisarevsky
fe7b48aa8f removed the stuff that's now in xfeatures2d; temporarily added dummy definition of SIFT to make doc builder pass (will remove it later) 2014-08-12 00:29:56 +04:00
Vadim Pisarevsky
27d2d3cbac fixed doc builder complains and the test failures 2014-08-12 00:03:40 +04:00
Vadim Pisarevsky
31df47b6ea moved nonfree and a part of features2d to opencv_contrib/xfeatures2d 2014-08-11 23:26:39 +04:00
mshabunin
c54b8f9b00 Merge remote-tracking branch 'master' into stitch-fix
* 'master' of github.com:itseez/opencv: (82 commits)
  moved part of video to contrib/{outflow, bgsegm}; moved matlab to contrib
  added some basic functionality needed by the new face module (moved from the old "contrib")
  moved to the new opencv_contrib/face module
  fixed various warnings and obvious errors reported by clang compiler and the coverity tool.
  Fixed review comment from Vadim Pisarevsky
  modified farneback sample to use T-API
  ECC patch by the author (G. Evangelidis); fixed some OCL Farneback optical flow test failures on Mac
  small fix for GaussianBlur ocl test
  fix binary package build
  small fix for ocl_resize
  fix IOS framework
  fixed test ocl_MatchTemplate for sparse matrix
  Fixed typos
  fixing error, wrong template method param.
  fixing Mac build
  some formal changes (generally adding constness)
  Fixed choice of kercn and rowsPerWI for non-Intel device.
  fixed nDiffs for CalcBackProject
  fixed tests for ocl_filter2d, ocl_matchTemplate, ocl_histogram.cpp
  Fixed issue: Mat::copyTo(UMat) if device copy is obsolete. Added test.
  ...

Conflicts:
	modules/core/include/opencv2/core/mat.inl.hpp
2014-08-11 14:50:08 +04:00
Vadim Pisarevsky
05e7c29de5 fixed various warnings and obvious errors reported by clang compiler and the coverity tool. 2014-08-10 00:10:05 +04:00
Adil Ibragimov
98d5731ad8 some formal changes (generally adding constness) 2014-08-07 15:49:14 +04:00
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
Roman Donchenko
983e75e5de Merge remote-tracking branch 'origin/master' into merge-2.4 2014-08-01 15:01:41 +04:00
E Braun
bbe48eaac6 regression test for bug 3172 2014-08-01 00:17:17 +02:00
f-morozov
7f82960897 AKAZE fixes, tests and tutorial 2014-07-30 18:02:08 +04:00
PhilLab
d5489f3a68 Clarified DescriptorExtractor::compute 2014-07-18 10:57:54 +02:00
Roman Donchenko
a3bde36c84 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	modules/calib3d/include/opencv2/calib3d/calib3d.hpp
	modules/contrib/doc/facerec/facerec_api.rst
	modules/contrib/include/opencv2/contrib/contrib.hpp
	modules/contrib/src/facerec.cpp
	modules/core/include/opencv2/core/mat.hpp
	modules/features2d/include/opencv2/features2d/features2d.hpp
	modules/highgui/src/loadsave.cpp
	modules/imgproc/src/pyramids.cpp
	modules/ocl/include/opencv2/ocl/cl_runtime/cl_runtime.hpp
	modules/python/src2/gen.py
	modules/python/test/test.py
	modules/superres/test/test_superres.cpp
	samples/cpp/facerec_demo.cpp
2014-07-08 14:33:56 +04:00
vbystricky
4286f60387 Extract imgcodecs module from highgui 2014-07-07 16:28:08 +04:00
berak
3500c940d4 add Bag of Words to python wrapper 2014-06-11 11:50:22 +02:00
Ilya Lavrenov
556206de2d fixed defects found by coverity scan 2014-06-10 13:14:51 +04:00
berak
fc610979bb export BOW to script wrappers 2014-06-07 16:34:53 +02:00
Alexander Alekhin
776728ef2a KAZE: disable tests (too many crashes) 2014-05-29 23:12:48 +04:00
Vadim Pisarevsky
8bd1efa523 Merge pull request #2673 from BloodAxe:kaze 2014-05-19 17:35:22 +04:00
Ievgen Khvedchenia
12e1d7fc2b Fix "WARNING: Block quote ends without a blank line" 2014-05-13 21:07:30 +03:00
Ievgen Khvedchenia
87972d0d7c Fix "WARNING: Block quote ends without a blank line" 2014-05-13 13:15:24 +03:00