Commit Graph

739 Commits

Author SHA1 Message Date
Olexa Bilaniuk
bb01231990 Substituted the NaN check with OpenCV's implementation. 2015-03-03 13:06:36 -05:00
Olexa Bilaniuk
16f36a5fda Replaced division by reciprocal + multiply in a few places. 2015-03-03 11:55:36 -05:00
Olexa Bilaniuk
e1abc416cf Changed seeding in initialization.
The call to rand()/random() is now a call to (unsigned)cv::theRNG().
2015-03-03 11:48:41 -05:00
Olexa Bilaniuk
0f6ea38eac Added OPENCV_ prefix to #include guard. 2015-03-03 11:42:04 -05:00
Olexa Bilaniuk
a2affe70d9 Deleted last remnants of restrict keyword. 2015-03-03 11:40:44 -05:00
Olexa Bilaniuk
b229d6b7ac Moved constants to cv:: namespace. 2015-03-03 08:05:52 -05:00
Olexa Bilaniuk
ed2a23768e Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-03-02 17:55:34 -05:00
Vadim Pisarevsky
7c7a63bebc Merge pull request #3772 from Dmitry-Me:reduceVariableScope4 2015-03-02 19:52:18 +00: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
Dmitry-Me
4e582b131b Reduce veriables scope, move declaration to first use 2015-03-02 16:27:48 +03:00
Vadim Pisarevsky
e43a14ccd2 Merge pull request #3750 from Dmitry-Me:reduceVariableScope3 2015-03-02 10:55:37 +00:00
Vadim Pisarevsky
0172bd6beb Merge pull request #3756 from eliteraspberries:cast-double 2015-03-02 10:52:28 +00:00
Vladislav Vinogradov
cda6fed41f move tegra namespace out of cv to prevent conflicts 2015-02-27 12:52:11 +03:00
Olexa Bilaniuk
5748cea80d Removed unnecessary precision in damped Cholesky decomposition.
Cholesky decomposition is stable; It is not necessary to carry it out
internally at double precision if the result will be truncated to single
precision when stored.
2015-02-26 21:47:29 -05:00
Vladislav Vinogradov
44e41baffe use new functions before all tegra:: calls 2015-02-26 19:34:58 +03:00
Dmitry-Me
2311504c44 Reduce variables scope 2015-02-25 10:38:44 +03:00
Mansour Moufid
b7be49426d Cast some image coordinates and sizes to double. 2015-02-24 12:21:34 -05:00
Olexa Bilaniuk
f454929d9c PRNG changes: xorshift128+ algorithm, and seeding API.
- Switched to the extremely fast, while simple and high-quality,
xorshift128+ PRNG algorithm by Sebastiano Vigna in "Further scramblings
of Marsaglia's xorshift generators. CoRR, abs/1402.6246, 2014" (2^128-1
period, passes BigCrush tests). Performance improved by 10% over
random().
- Added an API to allow seeding with a specified seed, rather than using
rand() or random(). This allows deterministic, reproducible results in
tests using our algorithm (although findHomography() does not yet
support passing an entropy source on its own end).
2015-02-21 12:31:55 -05:00
Olexa Bilaniuk
0ea009f611 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-02-20 08:26:04 -05:00
Olexa Bilaniuk
f148f23382 Merge remote-tracking branch 'refs/remotes/upstream/master' 2015-02-18 21:04:39 -05:00
Vijay Pradeep
49bc100e51 Removing rng_seed arg in order to maintain ABI compatibility. Hardcoding seed 2015-02-17 09:19:36 -08:00
Maksim Shabunin
da383e65e2 Remove deprecated methods from cv::Algorithm 2015-02-16 15:28:54 +03:00
Vadim Pisarevsky
edab3916aa Merge pull request #3696 from Dmitry-Me:shouldPassByReference 2015-02-16 11:29:22 +00:00
Vladislav Vinogradov
a932d8aba1 use full qualified name for all internal namespaces to prevent ambiguous symbol errors 2015-02-16 11:31:21 +03:00
Olexa Bilaniuk
e5696bc5e6 Whitespace change reverts to minimize delta w.r.t master. 2015-02-13 08:07:15 -05:00
Hamid Bazargani
e22678018b Fix sacCalcJacobianErrors arguments. (curr.inl replaced with best.inl)
Fix the issue given NULL inlMask
2015-02-13 00:30:18 -05:00
Hamid Bazargani
42176f8eb1 Fix sacCalcJacobianErrors arguments. (curr.inl replaced with best.inl)
Fix the issue given NULL inlMask
2015-02-13 00:09:37 -05:00
ASUS
9a555063e8 Fix sacCalcJacobianErrors arguments. (curr.inl replaced with best.inl)
Fix the issue given NULL inlMask
2015-02-12 23:34:48 -05:00
ASUS
6b04351ce1 Merge branch 'accuracy' of https://github.com/obilaniu/opencv into accuracy
Conflicts:
	modules/calib3d/src/rhorefc.cpp
2015-02-12 21:27:08 -05:00
ASUS
6dbf13d7b5 saveBestModel() is modified. accuracy test is passed. 2015-02-12 21:22:52 -05:00
Olexa Bilaniuk
ff2509af56 Fixed printouts in testcase to blame the correct method for a failure.
Previously, certain test failures by the method RHO would result in an
error blaming RANSAC instead. The fix involves a parameter change to
several functions in test_homography.cpp.
2015-02-12 14:42:37 -05:00
Dmitry-Me
c3f8fc41b7 Parameters should have been passed by reference 2015-02-12 17:32:43 +03:00
Olexa Bilaniuk
ccd33a721e Fixed build failures related to designSPRTTest(). 2015-02-07 01:19:40 -05:00
Olexa Bilaniuk
adac8c04bb Converted to C++ style, + bugfixes.
The code has been refactored in response to feedback on Pull Request

Also, outputZeroH() now also zeroes the inlier set, much like
outputModel().
2015-02-07 00:56:58 -05:00
Olexa Bilaniuk
87c2b8197a Bug fixes in mask output.
Previously, the output mask of inliers could remain completely
uninitialized. This fix is the first part of a solution.
2015-02-05 02:18:41 -05:00
Olexa Bilaniuk
b90800f0c7 Corrected typo in comment.
The inverted JtJ does not multiply itself, but rather Jte. Correct this
in the comment.
2015-02-04 12:12:14 -05:00
Olexa Bilaniuk
2609e77af7 Silence spurious loss-of-data warnings from Windows.
Added explicit casts to silence warnings in fundam.cpp and rhorefc.cpp.
2015-02-04 02:26:01 -05:00
Olexa Bilaniuk
ce0570b777 Splitting vectorized code into separate branch.
Deleted SSE code from master branch.
Slight cleanups in fundam.cpp were made as a consequence.
2015-02-03 23:33:52 -05:00
Olexa Bilaniuk
69b146412a Edited Doxygen documentation in the module calib3d.
Added a mention within calib3d.hpp that the flag RHO is available as an
option on calls to findHomography().
2015-02-03 22:55:40 -05:00
Olexa Bilaniuk
8907e6feac Merge remote-tracking branch 'refs/remotes/upstream/master' into rho 2015-02-03 22:50:45 -05:00
Vadim Pisarevsky
bd4580a242 Merge pull request #3589 from JBosch:master 2015-01-21 10:46:53 +00:00
Olexa Bilaniuk
045f8294bb Merge remote-tracking branch 'refs/remotes/upstream/master' into rho 2015-01-20 13:11:09 -05:00
Olexa Bilaniuk
02124f19e6 Further LevMarq improvements.
Implemented a damping-parameter choice strategy similar to that
described in http://www2.imm.dtu.dk/documents/ftp/tr99/tr05_99.pdf.
Removed a few debug statements.
Chosen a new starting lambda value, 0.01.
We now actually output the mask of inliers.
2015-01-15 04:21:16 -05:00
Olexa Bilaniuk
ff91af825d LevMarq made semi-functional.
Replaced the complex rules OpenCV uses to select lambda with a naive but
fast heuristic. It's imperfect but produces good results. It is still
subject to the same problem as OpenCV - namely, on occasion LevMarq will
make a poor result even worse.
2015-01-14 04:22:48 -05:00
Vijay Pradeep
1292fdf71a Now using default arg instead of overloads 2015-01-13 11:25:01 -08:00
Olexa Bilaniuk
4401095b38 Optimizations to Jacobian and error calculations.
Deleted multiplications by zero and consequent additions of zero terms.
2015-01-12 11:33:05 -05:00
Olexa Bilaniuk
7fca146b21 More LevMarq bugfixes.
LevMarq now doesn't outright fail, but doesn't seem to improve things
much if at all.
2015-01-12 05:37:40 -05:00
Olexa Bilaniuk
33a3fba2d1 Work on LevMarq code.
Refactoring of Cholesky decomposition.
Fix for memory corruption bug.
LevMarq as a whole still non-functional.
2015-01-12 04:58:07 -05:00
Olexa Bilaniuk
c175a86cbb Merge remote-tracking branch 'upstream/master' into rho 2015-01-12 02:11:14 -05:00
Timur Sattarov
4762728fd5 More sensible error messages 2015-01-11 03:56:07 +04:00
Vijay Pradeep
964d5a20e9 Whitespace fix 2015-01-09 10:44:19 -08:00
Vijay Pradeep
177478a8ad overload instead of default arg for ABI backwards compatibility. rng_seed is now 'int' to support python port 2015-01-09 10:18:08 -08:00
Josep Bosch
75c99d65a5 Fisheye calibration methods available now in python 2015-01-09 10:05:36 +01:00
Vijay Pradeep
a1c5740044 solvePnPRansac now accepts a seed and is deterministic 2015-01-08 18:24:55 -08:00
Vijay Pradeep
042ff210d5 Fixing race condition by expanding resultsMutex lock section 2015-01-08 15:26:15 -08:00
Vadim Pisarevsky
1c8493fb0d Merge pull request #3549 from mshabunin:sphinx-doc-remove 2014-12-31 09:14:22 +00:00
Olexa Bilaniuk
46631c4b18 Merge remote-tracking branch 'upstream/master' into rho 2014-12-29 20:55:24 -05: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
Maksim Shabunin
d01bedbc61 Removed Sphinx documentation files 2014-12-26 19:12:19 +03:00
Maksim Shabunin
c485aee464 Included c-headers for better 2.4 compatibility 2014-12-19 17:05:26 +03:00
Maksim Shabunin
91e21847e2 Some changes to make migration to 3.0 easier 2014-12-16 13:00:31 +03:00
Olexa Bilaniuk
bcc630a8dc Merge remote-tracking branch 'upstream/master' into rho 2014-12-15 12:31:22 -05:00
Dmitry-Me
f269828160 Reduce variables scope, move declaration to first use point 2014-12-08 18:21:17 +03:00
Olexa Bilaniuk
51963f95dd Merge remote-tracking branch 'upstream/master' into rho 2014-12-05 15:56:33 -05:00
Dmitry-Me
cb049657e5 Prevent division by zero 2014-12-02 14:44:09 +03: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
Olexa Bilaniuk
68e59d6154 [RHO] Initial commit of RHO algorithm for rapid homography estimation.
Implements the RHO algorithm as presented in

Paper: Bilaniuk, Olexa, Hamid Bazargani, and Robert Laganiere. "Fast
Target Recognition on Mobile Devices: Revisiting Gaussian Elimination
for the Estimation of Planar Homographies." In Computer Vision and
Pattern Recognition Workshops (CVPRW), 2014 IEEE Conference on, pp.
119-125. IEEE, 2014.

- Complete, heavily documented reference C implementation, as well as
temporarily disabled dirty SSE2 port.
- Enabled tests for RHO in test_homography; Currently these fail
presumably due to too-stringent accuracy requirements.
- Refinement and final refinement are not yet functional; Do not pass
their corresponding flags to RHO.
2014-11-17 15:06:08 -05:00
Alexander Duda
60cacbfd66 solvePnPRansac: fix mask generation 2014-11-09 23:10:43 +01:00
Alexander Duda
ed55d13112 PnPRansacCallback::computeError: fix count in case of Nx3 matrices 2014-11-09 23:08:47 +01:00
Pat O'Keefe
83ccdabe7e Add test for calib3d function decomposeProjectionMatrix(...) 2014-10-25 19:11:02 -06: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
Vadim Pisarevsky
4038beb67e fixed incorrect array access in solvepnp (which affected debug builds only) 2014-10-17 17:01:39 +04:00
Vadim Pisarevsky
1a809ca89b fixed msvc compile warning 2014-10-17 15:56:27 +04:00
Vadim Pisarevsky
1176d4ef84 fixed some more compile errors and test failures 2014-10-17 15:02:56 +04:00
Alexander Alekhin
af1d29db83 Merge pull request #3332 from lupustr3:pvlasov/implementation_detector 2014-10-16 14:51:53 +00:00
Vadim Pisarevsky
b30ad42609 Merge pull request #3270 from boaz001:patch-1 2014-10-16 10:09:28 +00:00
Boaz Stolk
ae81006eab Applied proposed fix 2014-10-15 22:36:38 +02: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
3b250d6e9c this is trivial change; the main change is in opencv_extra - added regression data for perf tests 2014-10-11 22:57:22 +04:00
edgarriba
4071c4e7c9 Updating to c++ interfaces 2014-10-11 01:44:46 +02:00
edgarriba
88aed15ffa Removing windows compilation crashes 2014-10-07 09:10:03 +02:00
edgarriba
f317d1277f Merge remote-tracking branch 'upstream/master' 2014-10-06 23:46:30 +02:00
edgarriba
2494e028c0 Updating upnp sanity heck 2014-10-06 18:18:03 +02:00
edgarriba
1709421c2c Updating sanity check 2014-10-06 17:43:01 +02:00
edgarriba
71dd9a6f1b Updating sanity check 2014-10-06 17:22:43 +02:00
edgarriba
862b675bee Updating sanity check 2014-10-06 16:23:21 +02:00
edgarriba
f328f9a10d Removing whitespaces 2014-10-06 14:53:06 +02:00
edgarriba
72fb85f6a0 Removing whitespaces 2014-10-06 13:01:23 +02:00
edgarriba
4d54f35a96 Updating documentation 2014-10-06 10:31:50 +02:00
edgarriba
d6bf209bb3 Updating for N=2 2014-10-06 10:28:04 +02:00
edgarriba
dc76ca5fc9 Updating documentation 2014-10-02 21:39:29 +02:00
edgarriba
7520544840 Return the estimated focal length 2014-10-02 17:05:42 +02:00
edgarriba
ea893bf9d9 Updating UPNP documentation 2014-10-02 17:05:06 +02:00
edgarriba
7429454171 Add UPNP acc_test and perf_test 2014-10-02 16:45:59 +02:00
edgarriba
a5b3a205d9 Add UPNP case + Modify model_points 2014-10-02 16:45:04 +02:00
edgarriba
84475ef1de UPNP code for N=1 2014-10-02 16:43:50 +02:00
edgarriba
71f4894d87 Added UPNP flag 2014-10-02 16:43:15 +02:00
Alexander Smorkalov
71c4e96e17 Test fisheye.rectify disabled for Tegra. 2014-09-30 14:49:33 +04:00
Vadim Pisarevsky
e5ab0ac294 Merge pull request #3201 from PhilLab:patch-3 2014-09-14 18:49:35 +00:00
Philipp Hasper
62c704d1e9 Updated PnP parameter documentation 2014-09-09 12:24:05 +02:00
Philipp Hasper
cc7aa5890d Fixing documentation links 2014-09-08 14:41:29 +02:00
PhilLab
e95c33dd18 PnP solver: fixed element-wise access 2014-08-25 17:06:17 +02:00
Vadim Pisarevsky
887a950243 Merge pull request #3116 from shubhra:master 2014-08-22 07:15:40 +00:00
Vadim Pisarevsky
5afaa6b1e7 Merge pull request #3129 from PhilLab:patch-2 2014-08-21 05:30:17 +00:00
Shubhra Pandit
7b2a1d15cc Doc changes for feature changes 1544 and 1557 2014-08-20 20:49:50 -04:00
PhilLab
e09adc4fde Clarified parameter useExtrinsicGuess in solvePnP 2014-08-19 11:08:16 +02:00
edgarriba
deec233519 cleaned dls code 2014-08-19 00:56:13 +02:00
edgarriba
15704c384e cleaned dls code 2014-08-19 00:52:09 +02:00
edgarriba
2653d745fd updated sanity data 2014-08-19 00:35:22 +02:00
edgarriba
6ea73a5bff updated dls perf test 2014-08-19 00:22:08 +02:00
edgarriba
7e2bb63378 Merge branch 'master' of https://github.com/Itseez/opencv 2014-08-18 22:30:00 +02:00
edgarriba
620387fbe1 Update perf_pnp && ransac model points 2014-08-18 21:46:16 +02:00
Shubhra Pandit
6ca893be23 Adding feature 1544 and 1557
-cv::findHomography added a parameter for RANSAC iterations
 -cv::findHomography added a parameter for RANSAC confidence
2014-08-17 13:06:06 -04:00
Vadim Pisarevsky
af2434c547 Merge pull request #2827 from Alexander-Petrikov-ELVEES-NEOTEK:neon-stereobm 2014-08-13 13:04:02 +00: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
edgarriba
3c3d695d4d Perf test update 2014-08-12 18:29:43 +02:00
edgarriba
12f8d8069d removed old code 2014-08-12 16:49:19 +02:00
edgarriba
1dec1645e5 Merge branch 'master' of https://github.com/Itseez/opencv 2014-08-12 16:45:22 +02:00
edgarriba
de2861e7a9 DLS performance modifications 2014-08-12 16:20:22 +02:00
edgarriba
d1f4f6f4b8 DLS performance modifications 2014-08-12 16:15:19 +02:00
edgarriba
dccc10ff12 DLS perf 2014-08-11 17:53:43 +02:00
edgarriba
2666da892f DLS perf update 2014-08-11 17:09:26 +02:00
edgarriba
cc81b4a5cd SOLVEPNP_* flags whitespace 2014-08-11 16:31:28 +02:00
edgarriba
afdb67b462 SOLVEPNP_* flags 2014-08-11 16:28:09 +02: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
edgarriba
90b3086f4a RANSAC test confidence 0.99 2014-08-11 12:31:10 +02:00
edgarriba
6c8b11afee DLS test 2014-08-11 11:31:18 +02:00
edgarriba
d7f0b9de25 DLS test 2014-08-11 11:02:00 +02:00
edgarriba
c7f6c0cb9f Fixed warnings + RANSAC confidence to double 2014-08-11 10:17:42 +02:00
edgarriba
213241c06a DLS test update 2014-08-11 09:44:24 +02:00
edgarriba
2d26f60192 test dls 2014-08-09 21:54:22 +02:00
edgarriba
3780de9d98 test for DLS 2014-08-09 21:26:38 +02:00
edgarriba
67eb6dde75 warning removed 2014-08-09 20:55:18 +02:00
edgarriba
f8c5acee4c modified number test points 2014-08-08 15:20:38 +02:00
edgarriba
8b732e086d updated ransanc model 2014-08-08 13:52:15 +02:00
edgarriba
e5a91a8be8 Modification Ransac model points 2014-08-07 14:59:01 +02:00
edgarriba
3a2cf37115 fixed conflicts 2014-08-07 12:41:47 +02:00
Vadim Pisarevsky
0428ce4703 Merge pull request #3037 from PhilLab:pnpPatch 2014-08-06 20:21:05 +00:00
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
edgarriba
7b0be9cf8f Update code 2014-08-05 17:27:20 +02:00
edgarriba
0d2bc9b0a1 Removed whitespaces 2014-08-05 17:02:06 +02:00
edgarriba
a3e74ec521 Merge remote-tracking branch 'upstream/master'
Conflicts:
	modules/calib3d/doc/camera_calibration_and_3d_reconstruction.rst
2014-08-05 12:59:47 +02:00
unknown
3fe4980ce1 Double precision for solvePnPRansac() 2014-08-04 14:20:32 +02:00
Roman Donchenko
74e58ddbb1 Disable the broken fisheye undistortImage test 2014-08-01 19:50:17 +04:00
Roman Donchenko
983e75e5de Merge remote-tracking branch 'origin/master' into merge-2.4 2014-08-01 15:01:41 +04:00
edgarriba
3e2a57ff35 Update for non Eigen users 2014-08-01 10:48:39 +02:00