Commit Graph

73 Commits

Author SHA1 Message Date
Dan Ben-Yosef
31f66766b7
Merge pull request #19685 from danbey:setting_stereoBMImpl_in_init_list
Init params (StereoBMParams) in StereoBMImpl constructor initialization list

* Init StereoBMImpl in initialization list

To improve preformence it is better to init the params (StereoBMImpl) in the
initialization list.

* coding style

* drop useless copy/move ctor

Co-authored-by: Alexander Alekhin <alexander.a.alekhin@gmail.com>
2021-03-07 20:06:08 +03:00
Ganesh Kathiresan
cddd7f10d5
Merge pull request #17224 from ganesh-k13:bugfix/calib3d/17201
* Fixed indexing in prefilter

* Initialised prefilter

* Initialised prefilter with value initialisation

* Added TC to trigger different Mem Allocs in BufferBM

* Optimize cases with only needed conditions
2020-05-14 16:30:01 +00:00
Maksim Shabunin
55cdeaa6dd BufferArea: initial version, usage in StereoBM
New class BufferArea is used to hide complexity of buffers allocations and allow instrumentation with valgrind and sanitizers.
2020-02-07 14:57:36 +03:00
Vitaly Tuzov
1ce5a724c7 Fixed StereoBM uniqueness check 2019-10-24 17:54:49 +03:00
Vitaly Tuzov
0a1b957331 StereoBM algorithm updated to use wide universal intrinsics 2019-09-25 14:37:12 +03: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
Daniel Ingram
962d57b4d6 Merge pull request #14559 from daniel-s-ingram:master
* Fix typo: 'divisble' -> 'divisible'

* Fix typo: 'One of arguments' -> 'One of the arguments'
2019-05-15 18:41:43 +03:00
tompollok
0b77600718 change area() emptiness checks to empty() 2018-10-13 21:35:10 +02:00
Hamdi Sahloul
5d54def264 Add semicolons after CV_INSTRUMENT macros 2018-09-14 06:45:31 +09:00
Rostislav Vasilikhin
fc35c77f00 Merge pull request #11610 from savuor:fix/stereobm_simd_fixed_float
* StereoBM: fixed SIMD processing for fixed-type output arrays

* changed norm type and threshold, added assertion

* fixed disp_shift
2018-06-04 13:03:12 +00:00
Alexander Alekhin
bdbd0129af calib3d: apply CV_OVERRIDE/CV_FINAL 2018-03-28 17:57:59 +03: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
Alexander Alekhin
2e17251160 calib3d: fix invalid memory access 2017-07-26 17:21:46 +03:00
Alexander Alekhin
bf0173bf38 ts: update valgrind suppressions 2017-07-26 17:21:45 +03:00
Paolo Perkovic
dd576c89a3 Fix StereoBM ROI selection
- Fix StereoBM ROI (Region of interest) selection for stereo
images used by block matching algorithm
2017-04-01 13:29:44 +02:00
Tomoaki Teshima
b34ebc8cfe use universal intrinsic in stereo matching
- check SIMD availability before executing
2017-01-24 18:25:22 +09:00
k-shinotsuka
1a51a96de2 fixed the difference of the calculation result for findStereoCorrespondenceBM_SSE2() and findStereoCorrespondenceBM_(). 2016-10-01 16:26:35 +09:00
Pavel Vlasov
30a6cee2fe Instrumentation for OpenCV API regions and IPP functions; 2016-08-19 18:10:03 +03:00
Your Name
718891d937 Tabs -> Whitespaces. 2016-07-26 23:46:58 -03:00
Your Name
c6f790ce12 Fixed using local variable instead of global var.
- Still need to change SSE_2
2016-07-26 23:29:05 -03:00
Your Name
440ba2e4a7 Passing Disparity Shift as a parameter. 2016-07-20 22:57:55 -03:00
Leonardo Brás
0e9c8e2dd5 'resolves' 6898
I have seen that you can input a Mat_<float> on StereoBM, but the value seems the same as CV_16S.
I changed it so, only if you input a Mat_<float> it makes use of a previously truncated 4 bits, giving more resolution to Disparity Matrix. (The algorithm stays the same, it's not more precise).
If any other input Mat is given, it changes nothing.
2016-07-19 20:11:41 -03: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
Vadim Pisarevsky
3942b1f362 Merge pull request #5340 from alalek:ocl_off 2015-11-10 16:53:36 +00:00
Maksim Shabunin
6e9d0d9a0c Visual Studio 2015 warning and test fixes 2015-10-20 12:48:37 +03:00
Alexander Alekhin
7213e5f68a ocl: correct disabling of OpenCL code 2015-09-13 20:28:23 +03:00
sbokov
ff1687d378 Fixing uninitialized memory access problem 2015-06-30 18:16:56 +03:00
Aleksandr Petrikov
25b4cface0 add NEON realization for StereoBM(findCorrespondence, prefilterXSobel)
Conflicts:
	modules/calib3d/src/stereobm.cpp

Add CV_Assert (ndisp % 8 == 0) to NEON version
2015-05-23 17:36:44 +02:00
Maksim Shabunin
da383e65e2 Remove deprecated methods from cv::Algorithm 2015-02-16 15:28:54 +03:00
Julien Nabet
2d5e3b57ea Fix cppcheck reports warnings:
(performance) Possible inefficient checking for 'lmap' emptiness
(warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
(style) Array index '<xxx>' is used before limits check
2014-12-27 10:54:34 +01:00
vbystricky
21ad8e92d4 Optimize OpenCL version of StereoBM function
Fix problems on NVidia devices.
2014-10-23 20:18:53 +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
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
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
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
Konstantin Matskevich
1a43ed9893 finalizing 2014-03-17 10:42:19 +04:00
Konstantin Matskevich
af1084eb58 speedUp 2014-03-14 18:00:13 +04:00
Konstantin Matskevich
91e4334227 temp 2014-03-14 18:00:12 +04:00
Konstantin Matskevich
ddc235172e new approach 2014-03-14 18:00:11 +04:00
Konstantin Matskevich
a5d989f346 new attempt 2014-03-14 18:00:11 +04:00
Konstantin Matskevich
799d7e7a50 bad experiment =( 2014-03-14 18:00:10 +04:00
Konstantin Matskevich
0904f10ab5 optimizations 2014-03-14 18:00:10 +04:00
Konstantin Matskevich
bfc843a5f5 added optimization 2014-03-14 18:00:09 +04:00
Konstantin Matskevich
b5f717b6b3 stereoBM 2014-03-14 18:00:09 +04:00
ziyangli
bbe8654c3d cleanup 2014-03-12 18:16:54 +08:00
Ziyang LI
4f5896493e remove a whitepace 2014-03-12 18:14:43 +08:00
Ziyang LI
786e3b9eee Moved x = 0 into the parenthesis
Easier to understand
2014-03-10 17:33:13 +08:00
Vadim Pisarevsky
a3aced20c1 fixed difference between SSE2 and C branches of StereoBM; they should now produce absolutely the same results 2014-02-25 18:13:51 +04:00
Roman Donchenko
bd70a033fc Boring changes - calib3d. 2013-09-05 18:26:43 +04:00