Pierre-Emmanuel Viel
327f92cc46
Precompute the divisor to ensure that no kind of compiler would process it on the fly at each call.
2020-07-01 18:52:05 +02:00
Pierre-Emmanuel Viel
482cacd420
Mix of 32 and 64bits vector types prevents vectorisation for distance computation.
...
Argument "a" is of type ElementType* that is either int* or float*, while b was double*.
Mixing types prevents the possibility to use SSE or AVX instructions.
On implementation without SIMD instructions, this doesn't show any impact on performance.
2020-07-01 18:27:07 +02:00
Pierre-Emmanuel Viel
93a6be836c
Remove duplicate line
2020-07-01 18:15:01 +02:00
Pierre-Emmanuel Viel
ef7185ce43
Fix genericity of computeNodeStatistics that couldn't compute stats properly on sub-nodes
2020-07-01 12:14:15 +02:00
Pierre-Emmanuel Viel
33fab84473
Type consistency for all xxxIndexParams integer arguments as well as with miniflann's LshIndexParams
2020-06-30 10:33:07 +02:00
Alexander Alekhin
a711e2aa41
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2020-06-29 21:19:09 +00:00
Alexander Alekhin
a84afb6334
Merge pull request #17640 from pemmanuelviel:pev--fix-lsh-bad-any-cast
2020-06-29 20:53:34 +00:00
Pierre-Emmanuel Viel
cdac7c7bec
Add test checking we don't throw when creating GenericIndex with LshIndexParams()
2020-06-28 19:51:04 +00:00
Pierre-Emmanuel Viel
fe09c79f4b
Fix the 'cvflann::anyimpl::bad_any_cast' error using Lsh
2020-06-28 19:51:04 +00:00
pemmanuelviel
daa88c6b9e
Merge pull request #17642 from pemmanuelviel:pev--fixes-and-clean
...
* Clean: make the use of the indices array length consistent
Either we don't want this method to be used in the future for any other node
than the root node, and so we replace indices_length by size_ and remove it as
argument, or we want to be able to use it potentially for other nodes, and
so using size_ instead of indices_length would have lead to a bug.
* Fix: b was not an address
* Fix: transpose the Flann repo commit "Fixes in accum_dist methods" from Adil Ibragimov
Avoids trying to compute log(ratio) with ratio = 0
* Fix: transpose the Flann repo commit "result_set bugfix" from Jack Rae
* Fix Jack Rae commit as the initial i - 1 index was decremented before entering the loop body
* Clean: transpose the Flann repo commit "Updated comments in lsh_index" from Richard McPherson
* Fix: Transpose the Flann repo commit "Fixing unreachable code in lsh_table.h" from hypevr
* Fix warning the same way it was done in flann standalone repo
* Change the return value in case of unsupported type
2020-06-26 22:34:52 +00:00
Alexander Alekhin
e45d74c8f9
Merge pull request #17638 from pemmanuelviel:pev--avoid-branching-in-loop
2020-06-26 19:22:20 +00:00
Pierre-Emmanuel Viel
06b4292534
Fix: error in the dimension used for computeMinMax
...
Instead of using the current dimension for which we just got a big span,
we were computing Min and Max for the previous dimension stored in cutfeat
(and using 0 instead of the dimension indice for the very first dimension
with "span > (1-eps)max_span")
2020-06-23 15:47:27 +02:00
Pierre-Emmanuel Viel
29f883feee
Optim: test that could be done once has been extracted from the loop
2020-06-23 15:43:38 +02:00
Pierre-Emmanuel Viel
05fbd1e5bc
DNA mode: add the distance computations
2020-06-22 22:53:05 +02:00
Brian Wignall
f9c514b391
Fix spelling typos
...
backport commit 659ffaddb4
2019-12-27 12:46:53 +00:00
Brian Wignall
659ffaddb4
Fix spelling typos
2019-12-26 06:45:03 -05:00
Alexander Alekhin
c6c8783c60
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-12-16 21:30:30 +00:00
Tatsuro Shibamura
971ae00942
Merge pull request #16027 from shibayan:arm64-windows10
...
* Support ARM64 Windows 10 platform
* Fixed detection issue for ARM64 Windows 10
* Try enabling ARM NEON intrin
* build: disable NEON with MSVC compiler
* samples(directx): gdi32 dependency
2019-12-17 00:23:30 +03:00
Alexander Alekhin
318cba4ce3
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-11-19 19:48:49 +00:00
Alexander Alekhin
7ec91aefc1
python: force using of ArgInfo
2019-11-15 19:16:22 +03:00
Alexander Alekhin
bea2c75452
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-09-05 14:29:22 +03:00
Maksim Shabunin
f3aab47f94
Assorted documentation fixes
...
* removed private flann documentation
* common tutorial images moved to doc/images
* grouping issues
2019-08-31 01:50:11 +03:00
luz.paz
fcc7d8dd4e
Fix modules/ typos
...
Found using `codespell -q 3 -S ./3rdparty -L activ,amin,ang,atleast,childs,dof,endwhile,halfs,hist,iff,nd,od,uint`
backporting of commit: ec43292e1e
2019-08-16 17:34:29 +03:00
luz.paz
ec43292e1e
Fix modules/ typos
...
Found using `codespell -q 3 -S ./3rdparty -L activ,amin,ang,atleast,childs,dof,endwhile,halfs,hist,iff,nd,od,uint`
2019-08-15 18:02:09 -04:00
TheGoddessInari
960bb540ec
Make sure to use defined(__GNUC__) instead of bare __GNUC__ in flann2 header.
...
This fixes a compiler error on MSVC with Unreal Engine (at least).
backport of commit: 4e998c9ade
2019-08-05 17:19:12 +03:00
TheGoddessInari
4e998c9ade
Make sure to use defined(__GNUC__) instead of bare __GNUC__ in flann2 header.
...
This fixes a compiler error on MSVC with Unreal Engine (at least).
2019-07-28 10:21:15 -07:00
Alexander Alekhin
b95e93c20a
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-06-26 20:19:04 +00:00
Apoorv Goel
5b521bb778
Merge pull request #14898 from UnderscoreAsterisk:flann-warnings-and-4376
...
Keep a local copy of `features` from `flann::GenericIndex ` constructor (#14898 )
* Fix warnings on Windows
* Fix #4376
2019-06-26 19:35:11 +03:00
Maksim Shabunin
d60ac98ef2
Limited API support for Python3
2019-06-11 15:20:43 +03:00
Maksim Shabunin
10d61a2b44
Limited API support for Python3
2019-06-11 15:15:49 +03:00
Alexander Alekhin
8c25a8eb7b
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-03-22 19:31:31 +03:00
Matthew K. Gumbel
74e3403620
flann/kmeans: Fix non-determinism of KMeans index
...
When running with >1 OpenCV thread, KMeans index generation was
non-deterministic because of a RWW race. Issue is resolved by removing
the offending logic from the parallel section.
2019-03-20 08:44:31 -07:00
Alexander Alekhin
8bde6aea4b
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2019-02-19 19:49:13 +00:00
Lindsay Roberts
7c72e095fa
Fix Flann compilation under nvcc + NEON
...
All <arm_neon.h> includes in core/cv_cpu_dispatch.h are protected by an
ifndef __CUDACC__ to prevent attempting to use neon intrinsics when
compiling cuda kernels (.cu) -- this prevents hard errors such as
error: identifier "__builtin_neon_qi" is undefined
Add this same protection to flann/dist.h to fix compilation involving
flann.hpp.
2019-02-19 15:11:01 +02:00
Alexander Alekhin
8f4e5c2fb8
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-11-26 15:37:45 +03:00
1over
5ff76088b9
fixed memory issue in flann
2018-11-25 01:31:54 +01:00
Alexander Alekhin
043e7e3516
flann: drop untested hdf5.h
2018-10-21 15:16:52 +00:00
Alexander Alekhin
9c23f2f1a6
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-10-20 11:37:54 +00:00
Apoorv Goel
d8ffddd075
Merge pull request #12871 from UnderscoreAsterisk:document-Distance
...
* Document distance functors in dist.h
* Add spec for Distance
* Generate appropriate links for symbols
2018-10-20 11:15:13 +03:00
Apoorv
a7dfa261d8
Add documentation for radiusSearch
2018-10-18 04:09:16 +05:30
Alexander Alekhin
a8b0db4e5d
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-28 14:14:47 +03:00
Alexander Alekhin
52f52f6786
flann: drop useless mutex
2018-09-26 19:37:44 +03:00
Alexander Alekhin
5fb0f34e8a
Merge pull request #12570 from alalek:drop_usrtype1
...
* core: drop usage of CV_USRTYPE1 in OpenCV
avoid OpenCV crashes due size change CV_ELEM_SIZE(CV_USRTYPE1): 8 -> 2
* ! fix persistence internal types
2018-09-19 13:55:26 +03:00
Alexander Alekhin
808ba552c5
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-14 23:44:35 +00:00
Hamdi Sahloul
5d54def264
Add semicolons after CV_INSTRUMENT
macros
2018-09-14 06:45:31 +09:00
Alexander Alekhin
dca657a2fd
Merge remote-tracking branch 'upstream/3.4' into merge-3.4
2018-09-10 00:10:21 +03:00
Hamdi Sahloul
a39e0daacf
Utilize CV_UNUSED macro
2018-09-07 20:33:52 +09:00
Jakub Golinowski
9f1218b00b
Merge pull request #11897 from Jakub-Golinowski:hpx_backend
...
* Add HPX backend for OpenCV implementation
Adds hpx backend for cv::parallel_for_() calls respecting the nstripes chunking parameter. C++ code for the backend is added to modules/core/parallel.cpp. Also, the necessary changes to cmake files are introduced.
Backend can operate in 2 versions (selectable by cmake build option WITH_HPX_STARTSTOP): hpx (runtime always on) and hpx_startstop (start and stop the backend for each cv::parallel_for_() call)
* WIP: Conditionally include hpx_main.hpp to tests in core module
Header hpx_main.hpp is included to both core/perf/perf_main.cpp and core/test/test_main.cpp.
The changes to cmake files for linking hpx library to above mentioned test executalbles are proposed but have issues.
* Add coditional iclusion of hpx_main.hpp to cpp cpu modules
* Remove start/stop version of hpx backend
2018-08-31 16:23:26 +03:00
Alexander Alekhin
b09a4a98d4
opencv: Use cv::AutoBuffer<>::data()
2018-07-04 19:11:29 +03:00
Alexander Alekhin
4df4a37b11
flann: apply CV_OVERRIDE/CV_FINAL
2018-03-28 18:43:27 +03:00
luz.paz
e805a55a5b
Misc. modules/ typos (cont.)
...
Found via `codespell`
2018-02-12 10:15:36 -05:00
Alexander Alekhin
4a297a2443
ts: refactor OpenCV tests
...
- removed tr1 usage (dropped in C++17)
- moved includes of vector/map/iostream/limits into ts.hpp
- require opencv_test + anonymous namespace (added compile check)
- fixed norm() usage (must be from cvtest::norm for checks) and other conflict functions
- added missing license headers
2018-02-03 19:39:47 +00:00
Hamdi Sahloul
8943441115
resolves #10548 - FLANN::knnSearch
garbage bug (when kNN is larger than the dataset size)
2018-01-08 18:58:55 +09:00
Pavel Rojtberg
6fb9d42c3f
Hid symbols in static builds, added LTO flags, removed exports from ts
2017-12-07 10:26:48 +03:00
Maksim Shabunin
248e2c7d47
Fixed some issues found by static analysis
2017-09-08 12:22:12 +03:00
Suleyman TURKMEN
ee6aacee9c
Update window_gtk.cpp
...
Update miniflann.cpp
Update test_stereomatching.cpp
2017-09-03 04:06:45 +03:00
Alexander Alekhin
7067c1597d
flann: std::vector<size_t> can't be converted into cv::Mat properly
...
size_t is not supported cv::Mat type
2017-08-30 13:16:00 +03:00
Alexander Alekhin
12213f9985
flann: fix out of buffer access
2017-07-26 18:17:03 +03:00
Alexander Alekhin
602f047fe8
build: replace WIN32 => _WIN32
2017-07-25 13:30:48 +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
a769d69a9d
Fixed several issues found by static analysis
2017-06-28 18:06:18 +03:00
Alexander Alekhin
82ec76c123
Merge pull request #8990 from mshabunin:fix-static-2
2017-06-27 14:53:26 +00:00
Alexander Alekhin
22d2207d41
flann: fix build with MSVC /sdl option
2017-06-27 15:25:19 +03:00
Maksim Shabunin
32d4af36e2
Fixing some static analysis issues
2017-06-27 14:30:26 +03:00
Alexander Alekhin
cc52523375
flann: add normal assignment operator for cvflann::any
2017-06-14 00:55:52 +00:00
Matthias Grundmann
e0fe3cce71
Update autotuned_index.h
...
Add missing sstream header for decl of std::ostringstream in line 104
2017-04-10 12:07:28 -07:00
Alexander Alekhin
08c6ffaa8d
Merge pull request #8346 from Sahloul:fixes/python_wrapper/flann
2017-03-10 20:01:54 +00:00
Hamdi Sahloul
db52841544
Accept default argument of FLANN index parameters
2017-03-10 22:09:31 +09:00
Alexander Alekhin
147f3ebf0a
flann: use OpenCV theRNG()
...
std::rand() has no thread-safe guarantee.
2017-03-02 13:45:12 +03:00
mshabunin
c6c519166e
Added CV_DEPRECATED macro
2017-01-24 15:57:06 +03: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
daB0bby
7840b07d2f
bypass macro
2016-09-23 13:00:30 +02: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
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
Ilya Lavrenov
bcc9010630
fixed memory leak in flann tests
2016-07-12 11:53:51 +03:00
Maksim Shabunin
b99d010977
Fixed memory leak in flann KMeansIndex
2016-04-13 12:08:42 +03: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
Ilya Lavrenov
3143f2fb50
fixed uninitialized memory writing/reading in flann
2015-09-13 12:43:44 +02:00
Roman Donchenko
a3b515c524
flann: fix AutotunedIndex crashing if a KDTree index is selected
...
Backport of mariusmuja/flann@f8ca6df3 .
2015-09-11 18:37:51 +02:00
Thomas Gabrowski
63dbeeaac5
Fix iOS warnings about implicit conversion precision by changing double literals to float ones
...
Conflicts:
modules/contrib/include/opencv2/contrib/retina.hpp
2015-04-26 12:22:41 +02:00
Maksim Shabunin
37c74e38f4
Python support
2015-03-02 18:13:00 +03:00
Maksim Shabunin
d01bedbc61
Removed Sphinx documentation files
2014-12-26 19:12:19 +03:00
Maksim Shabunin
1523fdcc1c
Doxygen documentation: more fixes and cleanups
2014-12-01 15:50:36 +03:00
Maksim Shabunin
472c210687
Doxygen documentation: flann, photo and stitching modules
2014-12-01 15:47:13 +03:00
Takahiro Poly Horikawa
553bb7956e
Fix "assignment operator could not be generated" warnings
2014-11-28 19:33:52 +09:00
Takahiro Poly Horikawa
180e54d09d
- Use cv::Mutex to safely update converged flag
...
- Use cv::AutoBuffer rather than new allocation
- Fix "assignment operator could not be generated" warning
2014-11-28 18:39:49 +09:00
Takahiro Poly Horikawa
123ca7e1c5
Parallize building kmeans index in flann
2014-11-27 16:29:05 +09:00
Maksim Shabunin
ba5f343c38
Basic doxygen documentation support
...
- updated existing Doxyfile.in
- added corresponding cmake instructions
- added some specific files (layout, icon)
- clean existing doxygen warnings
2014-10-22 15:24:15 +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
Maksim Shabunin
f908c2b0e3
Revert "Avoid obtaining several identical dimensions between two LSH sub-vectors by choosing orthogonal sub-vectors."
...
This reverts commit e85bacff7b
.
2014-08-08 16:59:24 +04:00
Maksim Shabunin
032c363ea0
Revert "Fix a heap issue with static on Windows"
...
This reverts commit 8e93c19de3
.
2014-08-08 16:59:13 +04:00
Maksim Shabunin
0be18aca81
Revert "Allows to choose orthogonal sub-vectors for LSH without using a static table among LshTable instances"
...
This reverts commit e63d7de87c
.
2014-08-08 16:58:35 +04:00
Maksim Shabunin
4c54b287e4
Revert "Fix local variable shadowing"
...
This reverts commit 2f8b5731da
.
2014-08-08 16:55:10 +04:00
Roman Donchenko
983e75e5de
Merge remote-tracking branch 'origin/master' into merge-2.4
2014-08-01 15:01:41 +04: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
Vadim Pisarevsky
d05d235c01
Merge pull request #2669 from Adil-Ibragimov:flann_distance_fix
2014-07-07 13:35:09 +00:00
Vadim Pisarevsky
8539d424b2
Merge pull request #2071 from pemmanuelviel:LshOrthogonalSubvectors
2014-07-02 14:24:09 +00:00
Pierre-Emmanuel Viel
ec99f96c62
Add the ensureSimpleDistance() method to ensure the user the returned distance is not ^2 (the default for L2 for instance)
2014-05-21 13:16:12 +02:00