Deanna Hood
34bc3b8595
Don't relax error level for particular fundamental matrix calculation methods
2015-04-23 10:08:42 -04:00
Martin Ueding
5ffb53f229
Add example data types for calibrateCamera call
...
It took me a while to figure out what was meant with
OpenCV Error: Assertion failed (i < 0) in getMat
While searching for this error message I found [a list of error
messages](https://adventuresandwhathaveyou.wordpress.com/2014/03/14/opencv-error-messages-suck/ )
which also explained what the problem was: The data type for `rvecs` was
not a simple `cv::Mat` but a `std::vector<cv::Mat>`.
After I fixed that, I got the next error message:
OpenCV Error: Assertion failed (ni > 0 && ni == ni1) in
collectCalibrationData, file
/build/buildd/opencv-2.4.9+dfsg/modules/calib3d/src/calibration.cpp,
line 3193
The problem here was that my data type for the `objectPoints` was just
`vector<Vec3f>` and not `vector<vector<Vec3f>>`.
In order to save other people the time looking for this, I added
explicit examples of the needed data types into the documentation of the
function. I had to re-read the current version a couple of times until I
can read the needed levels of `vector<>`. Having this example would have
really helped me there.
2015-04-23 13:30:14 +02:00
Vadim Pisarevsky
063e4004ba
Merge pull request #3935 from vpisarev:extending_hal_part1
2015-04-21 14:02:02 +00:00
Vadim Pisarevsky
0f13208d81
Merge pull request #3929 from daeyun:findEssentialMat_doc
2015-04-21 12:20:02 +00:00
Pavel Rojtberg
78eac67a01
clean up cvTriangulatePoints by using C++ primitives directly.
...
- fixes the Calib3d_StereoCalibrate_C testcase.
update comment regarding cv::SVD::MODIFY_A
2015-04-21 11:29:26 +02: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
Daeyun Shin
4686b935c1
Fix typo in documentation. F = K^-T * E * K^-1
2015-04-14 07:44:32 -05:00
Maksim Shabunin
56b02331f7
Commented unused constants in the RHO algorithm
2015-03-27 14:36:27 +03:00
Maksim Shabunin
fab2a947ca
Fix build for VC10
2015-03-27 12:15:26 +03:00
Olexa Bilaniuk
8a1d8c8470
Merge remote-tracking branch 'refs/remotes/upstream/master'
2015-03-18 02:21:36 -04:00
Olexa Bilaniuk
6d27d488bf
Bugfix in n* optimization.
...
Similar to the problem in LevMarq, arg.inl was being used instead of
best.inl. This opened us up to a potential segfault.
2015-03-18 02:21:16 -04:00
Vadim Pisarevsky
b708969326
Merge pull request #3832 from Dmitry-Me:fixNullPointerDereference3
2015-03-17 10:36:52 +00:00
Vadim Pisarevsky
8cf45ce0af
Merge pull request #3828 from vpisarev:fix_win32_perf_calib3d_solvepnp_failure
2015-03-17 10:34:53 +00:00
Dmitry-Me
52a8d37f11
Fix potential null pointer dereference
2015-03-16 18:36:12 +03:00
Vadim Pisarevsky
ca19ae8b5a
in solvePnPRansac call the solvePnP in the end with all the inliers to get more precise estimate
2015-03-16 16:56:26 +03:00
Vadim Pisarevsky
5c352c9146
temporarily use EPNP in SolvePnP instead of UPNP or DLS algorithms, since the latter two are not quite stable
2015-03-16 12:46:24 +03:00
Olexa Bilaniuk
7e3cc44738
More docs on variable accesses.
...
Listed accesses for more functions.
2015-03-14 12:41:25 -04:00
Vadim Pisarevsky
1760078f67
trying to make solvePnPSmallPoints pass
2015-03-13 20:11:33 +03:00
Vadim Pisarevsky
7e07220440
made the solvepnp a bit more modest; test 5-point configuration instead of 4-point in some cases; reduce the noise in 4-point configurations in other cases
2015-03-13 18:04:23 +03:00
Olexa Bilaniuk
9c432f4f75
Silence Windows warnings.
2015-03-06 12:16:38 -05:00
Olexa Bilaniuk
2113636d29
Made seed a constant.
2015-03-06 09:24:45 -05:00
Olexa Bilaniuk
fcdbacdbb0
Corrected initialization of smart pointer.
2015-03-06 09:15:00 -05:00
sanuj
441cd22343
Add documentation for solvePnP in calib3d
2015-03-06 19:18:22 +05:30
Olexa Bilaniuk
52e67c1a29
Whitespace & Doc fixes on lower half of rho.cpp.
...
Spaced methods & functions more consistently, and started documenting
which members does each method access directly or through its callers
within RHO_HEST_REFC.
2015-03-04 05:04:52 -05:00
Olexa Bilaniuk
27fd810b6f
Silenced build warnings on Windows.
2015-03-04 02:09:59 -05:00
Olexa Bilaniuk
736b42b372
Refactorings and renamings.
...
- Deleted "RefC" from names of external-interface functions.
- Renamed rhorefc.[cpp|hpp] to rho.[cpp|hpp]
- Introduced RHO_HEST base class, from which RHO_HEST_REFC inherits.
- rhoInit() currently only returns a Ptr<RHO_HEST_REFC>, but in the
future it will be allowed to return pointers to other derived classes,
depending on the values returned by cv::checkHardwareSupport().
2015-03-04 01:43:13 -05:00
Olexa Bilaniuk
408f93340a
External interface converted to use OpenCV Ptr<> smart pointer.
2015-03-03 23:12:33 -05:00
Olexa Bilaniuk
f592321771
Internal buffers converted to use OpenCV dynamic memory allocation.
2015-03-03 22:57:40 -05:00
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
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
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
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
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
Josep Bosch
75c99d65a5
Fisheye calibration methods available now in python
2015-01-09 10:05:36 +01: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
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