Commit Graph

1070 Commits

Author SHA1 Message Date
Alexander Alekhin
ed58b5489f [move sift.cpp] sift: avoid inplace calls of GaussianBlur
- should unlock IPP optimizations

original commit: ce7c8f2646
2020-04-16 17:58:45 +00:00
Alexander Alekhin
ef5fa498d4 [move sift.cpp] sift: perf tests and trace regions
original commit: a15e105db1
2020-04-16 17:58:45 +00:00
ab-dragon
2947877871 [move sift.cpp] Merge pull request opencv/opencv_contrib#2301 from ab-dragon:conditionally_compute_dog_pyramid
Build DoG Pyramid if useProvideKeypoints is false

The buildDoGPyramid operation need not be performed unconditionally. In cases where it is not needed, both memory and speed performance can be improved

original commit: e45887e1c0
2019-11-01 21:28:18 +03:00
Alexander Alekhin
fadb90c579 [move sift.cpp] xfeatures2d: use updated TLS API
original commit: 3e4fb8f415
2019-10-20 14:17:05 +00:00
Alexander Alekhin
fd46684bf8 [move sift.cpp] opencv: use cv::AutoBuffer<>::data()
original commit: fc69aa57bc
2018-06-13 19:11:18 +00:00
Alexander Alekhin
9badb0d903 [move sift.cpp] xfeatures2d: apply CV_OVERRIDE/CV_FINAL
original commit: ec65e5b29c
2018-03-28 16:50:00 +03:00
Vitaly Tuzov
c5f06814bc [move sift.cpp] Updated internal calls to linear resize to use bit-exact version
original commit: 8c394a4f2e
2017-12-14 13:00:09 +03:00
woody.chow
69d43e2997 [move sift.cpp] Remove unnecessary _mm256_round_ps
original commit: b5340f6428
2017-09-26 10:12:30 +09: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
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
Woody Chow
546239a3a8 [move sift.cpp] Optimize SIFT with AVX2
original commit: c5e55dfde9
2017-03-08 10:08:50 +09:00
Suleyman TURKMEN
8be0a3452d [move sift.cpp] Update sift.cpp
original commit: cb7b59f203
2016-12-23 13:21:30 +03: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
24284d3d17 [move sift.cpp] Fixed HAL headers location
original commit: f529a1df2b
2015-12-15 18:41: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
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
Alexander Alekhin
f0ffc52435 fix files permissions 2020-04-13 04:29:55 +00:00
Maksim Shabunin
d4d95bd70d Fixs several problems found by static analysis 2020-03-16 19:15:26 +03:00
Maksim Shabunin
bf96d8239d Use BufferArea in more places 2020-02-26 11:45:19 +03:00
Alexander Alekhin
e180cc050b
Merge pull request #16236 from alalek:fix_core_simd_emulator
* core: fix intrin_cpp, allow to build modules with SIMD emulator

* core(arithm): fix v_zero initialization

* core(simd): 'strict' types for binary/bitwise operations

* features2d: avoid aligned load issue in GCC 5.4 with emulated SIMD

* core(simd): alignment checks in SIMD emulator
2020-01-10 21:31:02 +03:00
Brian Wignall
f9c514b391 Fix spelling typos
backport commit 659ffaddb4
2019-12-27 12:46:53 +00:00
Alexander Alekhin
4dfa0a0383 bindings: basic support for #if preprocessor directives
- #if 0
- #ifdef __OPENCV_BUILD
2019-12-04 18:42:31 +03:00
Alexander Alekhin
f4d55d512f
imgproc: fix bit-exact GaussianBlur() / sepFilter2D() (#15855)
* imgproc: fix bit-exact GaussianBlur() / sepFilter2D()

- avoid kernels with bad approximation
- GaussiabBlur - apply error-diffusion approximation for kernel (8-bit fraction)

* java(test): update features2d ref data

* test: update test_facedetect
2019-11-18 01:39:27 +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
Alexander Alekhin
8d0b3dad5c Merge pull request #15357 from ChipKerchner:fastCorner 2019-08-29 08:26:31 +00:00
ChipKerchner
51ceabb2eb Change fast corner flags in HAL version from char array to single int 2019-08-20 13:25:35 -05: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
Rafa Gomez-Jordana
9a24886282 Fix blob detector insertion sort 2019-07-02 19:54:27 +00:00
Vitaly Tuzov
9befb7a1d7 Merge pull request #14916 from terfendail:wsignmask_deprecated
* Avoid using v_signmask universal intrinsic and mark it as deprecated

* Renamed v_find_negative to v_scan_forward
2019-07-01 19:53:51 +03:00
Alexander Alekhin
1e9ad5476d core(intrin): drop hasSIMD128 checks
- use compile-time checks instead (`#if CV_SIMD128`)
- runtime checks are useless
2019-06-08 19:20:20 +00:00
Alexander Alekhin
aab9ef4290 Merge pull request #14667 from asashour:javadoc 2019-06-06 10:57:39 +00:00
utibenkei
03382d29cc Merge pull request #14693 from utibenkei:fix_java_simpleblobdetector
* java: fix java SimpleBlobDetector

* add SIMPLEBLOBFeatureDetectorTest

* add package org.opencv.test.features2d;

* fix SIMPLEBLOBFeatureDetectorTest
2019-06-06 13:05:41 +03:00
Ahmed Ashour
5c56b8ce92 java: generated code to have javadoc 2019-06-05 12:44:03 +02:00
Alexander Alekhin
78384d8923 build: avoid highgui dependency 2019-04-15 18:59:51 +00:00
Alexander Alekhin
a0a1fb5fec python: discover tests from module/misc/python/test paths 2019-04-10 18:35:35 +00:00
Suleyman TURKMEN
794c14b29a code clean up 2019-01-14 22:21:21 +03:00
Dmitry Kurtaev
ff8c53ea20 Merge pull request #13481 from dkurt:fix_13227
* Fix drawMatches and drawKeypoints for BGRA input images

* keep BGRA too

* Combine different input types for drawMatches test
2018-12-25 17:29:12 +03:00
Alexander Alekhin
3f3c8823ac features2d: fix retainBest() implementation 2018-12-18 05:33:21 +00:00
Dan Mašek
2075fa9c15 Resolve #13219: Make randomly generated colours opaque. 2018-11-20 15:08:40 +01:00
Alexander Alekhin
e580061b74 Merge pull request #12908 from alexevans:Issue11855 2018-11-16 20:42:54 +00:00
Alexander Alekhin
a68835f7f1 features2d(test): add crossCheck=true test 2018-11-16 19:30:00 +00:00
tompollok
2da56d5af6 refactoring catching all exceptions as const ref 2018-11-08 19:59:47 +03:00
huangqinjin
1fbaa48cec ORB: compute default norm by wta_k 2018-10-22 10:10:49 +08:00
Michał Janiszewski
85b9960f62 Fix clashing include guards
Relevant guards can be found in
ef5579dc86/modules/features2d/src/kaze/AKAZEConfig.h (L8)
and
ef5579dc86/modules/ml/include/opencv2/ml.hpp (L44)
2018-10-16 22:59:38 +02:00
Dmitry Kurtaev
e9f99063c7 JavaScript bindings for features2d module 2018-09-28 11:04:13 +03:00
Hamdi Sahloul
5d54def264 Add semicolons after CV_INSTRUMENT macros 2018-09-14 06:45:31 +09:00
Hamdi Sahloul
03b3be0f51 MSVC: Slience external/meaningless warnings 2018-09-12 20:02:13 +09:00
Hamdi Sahloul
a39e0daacf Utilize CV_UNUSED macro 2018-09-07 20:33:52 +09:00
luz.paz
2003eb1b9b Misc. typos
Found via `codespell -q 3 -I ../opencv-whitelist.txt --skip="./3rdparty"`
2018-07-31 18:44:23 +03:00
Maksim Shabunin
cbb1e867e5 More issues found by static analysis 2018-07-24 16:04:42 +03:00
Maksim Shabunin
1da46fe6fb Fixed issues found by static analysis (mostly DBZ) 2018-07-17 16:14:54 +03:00
Alexander Alekhin
b09a4a98d4 opencv: Use cv::AutoBuffer<>::data() 2018-07-04 19:11:29 +03:00
Vadim Pisarevsky
7d19bd6c19 Merge pull request #11634 from vpisarev:empty_mat_with_types_2
fixes handling of empty matrices in some functions (#11634)

* a part of PR #11416 by Yuki Takehara

* moved the empty mat check in Mat::copyTo()

* fixed some test failures
2018-05-31 16:36:39 +00:00
Alexander Alekhin
6b581c4e51 build: unreachable code after CV_Error() (part 2) 2018-04-24 16:03:40 +03:00
Alexander Alekhin
0854dc3320 features2d: apply CV_OVERRIDE/CV_FINAL 2018-03-28 17:57:59 +03:00
vasiliev-vb
94c8e59bbe
Fixed bug in KAZE features orientation.
Bug was added in f6ceeaa commit, different angle computation functions have different parameter order.
2018-03-13 15:09:36 +00:00
Alexander Alekhin
da6dc6774b features2d: add verbose messages into tests
To investigate sporadic failures of Features2d_FLANN_Auto.regression test.
2018-02-28 19:47:16 +00:00
mworchel
aab390c51d Add mask support to SimpleBlobDetector 2018-02-19 17:54:27 +03:00
luz.paz
d05714995c Misc. modules/ cont. pt2
Found via `codespell`
2018-02-13 11:28:11 -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
Alexander Alekhin
12cd3b55ec Merge pull request #10756 from terfendail:orb_firstlevel 2018-02-01 18:34:57 +00:00
Vitaly Tuzov
26321795f7 Fixed assertion in ORB::setFirstLevel() 2018-02-01 16:58:35 +03:00
Vadim Pisarevsky
f780ee12a0 Merge pull request #10690 from terfendail:orb_firstlevel 2018-02-01 13:41:29 +00:00
Tomoaki Teshima
5f4b48da34 fix build error on Visual Studio 2013 and earlier 2018-01-31 18:22:09 +09:00
Vitaly Tuzov
205022ceee Fixed issue in ORB detection if firstLevel property is set above 0 2018-01-25 16:14:16 +03:00
Elena Gvozdeva
b97b650ab3 add HAL for FAST (#10362)
* add HAL for FAST

* add new interface
2018-01-24 01:48:06 +03:00
Maksim Shabunin
8b87c4b96a Fixed several warnings produced by clang 6 and static analyzers 2018-01-16 15:26:28 +03:00
Hamdi Sahloul
2d2499f610 BLOB - Support RGBA 2018-01-07 14:30:40 +09:00
Tomoaki Teshima
fe7b3f1228 clean up the code
* disable the warning in CMake, not int the code using pragma
2017-12-22 08:42:21 +09:00
Vitaly Tuzov
51cb56ef2c 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
Pavel Rojtberg
6fb9d42c3f Hid symbols in static builds, added LTO flags, removed exports from ts 2017-12-07 10:26:48 +03:00
Vadim Pisarevsky
f5dba12762 Merge pull request #10180 from alalek:ocl_avoid_unnecessary_initialization 2017-11-29 11:42:22 +00:00
Alexander Alekhin
0ed3209b00 ocl: avoid unnecessary loading/initializing OpenCL subsystem
If there are no OpenCL/UMat methods calls from application.

OpenCL subsystem is initialized:
- haveOpenCL() is called from application
- useOpenCL() is called from application
- access to OpenCL allocator: UMat is created (empty UMat is ignored) or UMat <-> Mat conversions are called

Don't call OpenCL functions if OPENCV_OPENCL_RUNTIME=disabled
(independent from OpenCL linkage type)
2017-11-28 14:02:42 +03:00
Pavel Rojtberg
6fbf0758bc Python: wrap Algorithm::read and Algorithm::write 2017-11-27 17:04:56 +01:00
Jcrist99
0608227e10 Merge pull request #9698 from abratchik:parse.doxygen
Support @deprecated tag in java wrappers (#9698)
2017-11-16 16:48:12 +03:00
Vitaly Tuzov
2eb61a4a99 AVX2 optimized implementation of FAST corner tracking migrated to separate file 2017-10-24 20:00:48 +03:00
Vitaly Tuzov
8d5a5d5ceb AVX2 optimizations for FAST corner tracking provided by Victoria Zhislina 2017-10-17 18:53:15 +03:00
Vladislav Vinogradov
26fe8bd4f2 made flann dependency for features2d optional
it will allow to build features2d even if flann module is not available
2017-10-13 14:59:39 +03:00
vipinanand4
39e742765a Merge pull request #9618 from vipinanand4:goodFeaturesToTrack_added_gradiantSize
Added gradiantSize param into goodFeaturesToTrack API (#9618)

* Added gradiantSize param into goodFeaturesToTrack API

Removed hardcode value 3 in goodFeaturesToTrack API, and
added new param 'gradinatSize' in this API so that user can
pass any gradiant size as 3, 5 or 7.

Signed-off-by: Vipin Anand <anand.vipin@gmail.com>
Signed-off-by: Nilaykumar Patel<nilay.nilpat@gmail.com>
Signed-off-by: Prashanth Voora <prashanthx85@gmail.com>

* fixed compilation error for java test

Signed-off-by: Vipin Anand <anand.vipin@gmail.com>

* Modifying code for previous binary compatibility and fixing other warnings

fixed ABI break issue

resolved merged conflict

compilation error fix

Signed-off-by: Vipin Anand <anand.vipin@gmail.com>
Signed-off-by: Patel, Nilaykumar K <nilay.nilpat@gmail.com>
2017-09-22 14:04:43 +00:00
Vadim Pisarevsky
f1695bdc38 Merge pull request #9678 from tomoaki0705:universalFastScore 2017-09-21 19:12:30 +00:00
Tomoaki Teshima
bf718b0865 use universal intrinsic in FAST 2017-09-21 18:28:15 +09:00
Vadim Pisarevsky
e70b75b51a Merge pull request #8820 from woodychow:multithread_sift_findScaleSpaceExtrema 2017-09-20 12:03:25 +00:00
Patel, Nilaykumar K
6857870412 Overloading getDefaultName method for Feature2D and its child classes
Signed-off-by: Vipin Anand <anand.vipin@gmail.com>
Signed-off-by: Prashanth Voora <prashanthx85@gmail.com>
Signed-off-by: Patel, Nilaykumar K <nilay.nilpat@gmail.com>
2017-09-14 23:22:18 +05:30
Maksim Shabunin
248e2c7d47 Fixed some issues found by static analysis 2017-09-08 12:22:12 +03:00
Alexander Alekhin
d57321f7c1 Merge pull request #9528 from berak:fix_bfmatcher_hamming2 2017-09-01 18:07:57 +00:00
berak
da208216ee features2d: fix BFMatcher.radiusMatch with HAMMING2 2017-08-31 17:24:02 +02:00
Alexander Alekhin
af09cb2834 Merge pull request #9347 from kschwan:fix-docs
Fix doxygen comment in BFMatcher
2017-08-22 13:55:03 +00:00
Jiri Horner
a5b5684670 Merge pull request #9330 from hrnr:akaze_ocl
[GSOC] Enable OCL for AKAZE (#9330)

* revert e0489cb - reenable OCL for AKAZE

* deal with conversion internally in AKAZE

* pass InputArray directly to AKAZE to allow distiguishing input Mat/UMat. deal with conversion there
* ensure that keypoints orientations are always computed. prevents misuse of internal AKAZE class.

* covert internal AKAZE functions to use InputArray/OutputArray

* make internal functions private in AKAZE

* split OCL and CPU paths in AKAZE

* create 2 separate pyramids, 1 for OCL and 1 for CPU
* template functions that use temporaries to always store them as correct type (UMat/Mat)

* remove variable used only in OCL path

causes unused variable warning

* update AKAZE documentation

* run ocl version only when ocl is enabled

* add tests for OCL path in AKAZE

* relax condition for keypoints angle
2017-08-16 16:46:11 +00:00
Martin Seyferth
e5f129424c brisk add detection threshold for custom sampling pattern 2017-08-15 11:41:04 +02:00
Kim Lindberg Schwaner
7f9fe6f1f2 Fix doxy comment for BFMatcher::create()
A missing asterisk caused doxygen to not generate documentation for the
BFMatcher::create() method.
2017-08-11 14:18:53 +02:00
Alexander Alekhin
94dbc35d92 features2d(test): more AKAZE tests 2017-08-03 22:54:45 +00:00
Alexander Alekhin
ad2e864a9a akaze: more fixes
- boundary checks
- div by zero guard
- fixed bilinear interpolation (another case)
- reduce memory allocation
2017-08-03 21:45:35 +00:00
Alexander Alekhin
e0489cb4a6 akaze: fix T-API interfaces, disable OpenCL code
- OpenCL kernels don't handle matrices properly. Assumptions are not checked.
- OpenCL/T-API integration is not correct.
2017-08-03 20:35:06 +00:00
Alexander Alekhin
2a8322ddbb akaze: uninitialized field 2017-08-03 20:04:21 +03:00
Alexander Alekhin
73c3d14a66 akaze: fRound -> cvRound, fix bilinear interpolation 2017-08-03 19:51:46 +03:00
Alexander Alekhin
f6ceeaa2e5 akaze: getAngle() -> fastAtan2() 2017-08-03 19:51:46 +03:00