Commit Graph

225 Commits

Author SHA1 Message Date
Andrey Kamaev
c98c246fc2 Move border type constants and Moments class to core module 2013-04-10 19:14:24 +04:00
Andrey Kamaev
b0e6606b98 Cleanup core module API
* Drop some low level API
* Remove outdated overloads
* Utilize Input/OutputArray
2013-04-09 13:36:32 +04:00
Stefan Walk
6062601c4d Make rescaling flexible and add median filtering
Previously the pyramid was done with a rescaling factor of 2 (implied by the
use of pyrDown). This often leads to inferior results compared to a scale step
of e.g. 0.8 (a factor of 2 is obviously faster). This commit makes the scale
step configurable and uses a resonable default value.

The other change in this commit is that median filtering is added. This is not
described in this paper but it is done in the author's implementation. (See
e.g. "Secrets of optical flow estimation and their principles", Sun et al.,
CVPR 2010) This serves as periodic outlier removal during optimization, leading
to smoother flow fields while preserving motion edges. This includes splitting
the optimization loop into two loops.
2013-04-08 15:18:26 +04:00
Andrey Kamaev
67073daf19 Merge branch '2.4' 2013-04-05 21:11:59 +04:00
Andrey Kamaev
517062039e Make core/internal.hpp a private header 2013-04-01 17:29:10 +04:00
Andrey Kamaev
d62bc8cfbf Remove more old definitions from internal.hpp 2013-04-01 16:32:08 +04:00
Andrey Kamaev
3890a74565 Drop outdated definitions from internal.hpp
This also fixes few clang build errors
2013-04-01 15:24:35 +04:00
Vladislav Vinogradov
924b0ef786 fixed bug in TVL1 optical flow:
initial optical flow was not cleaned during the second call
2013-03-29 10:40:28 +04:00
Andrey Kamaev
be7bbe3aa9 Drop cv:: prefix from cv::String used inside the cv namespace 2013-03-22 22:14:50 +04:00
Andrey Kamaev
2ad7b97f1c All modules (except ocl and gpu) compiles and pass tests 2013-03-22 22:14:26 +04:00
Andrey Kamaev
82d7292ee7 Merge pull request #680 from vpisarev:c2cpp_video_take2 2013-03-22 19:34:53 +04:00
Vadim Pisarevsky
d310ccad0a fixed documentation and warnings on Windows 2013-03-21 20:23:52 +04:00
Vadim Pisarevsky
09127aa358 fixed warnings; added read/write methods; fixed docs 2013-03-21 15:46:21 +04:00
Vadim Pisarevsky
07e0f7bf59 refactored video module; use the new-style algorithms now 2013-03-20 19:51:49 +04:00
Vadim Pisarevsky
14a0abbfa9 refactored video module; use the new-style algorithms now 2013-03-20 19:51:33 +04:00
Andrey Kamaev
89356ff16d Move non-CV functionality from core.hpp to separate utility.hpp header 2013-03-20 17:56:06 +04:00
Andrey Kamaev
a1c456b7c3 Extract common base header for C and C++ APIs 2013-03-15 10:38:38 +04:00
Andrey Kamaev
ad5cddc007 Main module headers are moved 1 level up
e.g. <opencv2/core/core.hpp> become <opencv2/core.hpp>

Also renamed <opencv2/core/opengl_interop.hpp> to <opencv2/core/opengl.hpp>
2013-03-13 17:26:56 +04:00
Georgios Evangelidis
f40725bb50 Add ECC algorithm
Evangelidis, G.D. and Psarakis E.Z. "Parametric Image Alignment using Enhanced
Correlation Coefficient Maximization", IEEE Transactions on PAMI, vol. 32, no.
10, 2008
2013-02-28 01:48:00 +04:00
Andrey Kamaev
2a6fb2867e Remove all using directives for STL namespace and members
Made all STL usages explicit to be able automatically find all usages of
particular class or function.
2013-02-25 15:04:17 +04:00
Andrey Kamaev
262fc929aa Merge branch '2.4' 2013-02-18 15:35:42 +04:00
Vladislav Vinogradov
a3a09cf4d1 refactored OpticalFlowDual_TVL1:
* added DenseOpticalFlow interface
* moved OpticalFlowDual_TVL1 to src folder
2013-02-14 13:26:47 +04:00
Vladislav Vinogradov
1498d2f427 added dual tvl1 optical flow implementation 2013-02-13 15:42:58 +04:00
Andrey Kamaev
57d3152cd0 Merge branch '2.4' 2013-01-31 14:35:27 +04:00
Andrey Kamaev
e0426148ba Merge pull request #374 from ivan-korolev:fix_estimateRigidTransform 2013-01-30 20:26:54 +04:00
Andrey Kamaev
c9d8e9900f Allow input of calcOpticalFlowPyrLK be submats of different size images
This fixes bug #2075
2013-01-30 16:07:55 +04:00
Ivan Korolev
b362affd13 Fixed bug in the cv::estimateRigidTransform (#1949) 2013-01-30 15:27:23 +04:00
Vadim Pisarevsky
c197a46e7e removed rarely used fixed_size parameter from AutoBuffer type, added optional AutoBuffer* but to cvarrToMat in order to speedup CvSeq->Mat conversion; finished conversion of convex hull and related functions to C++ 2013-01-20 00:58:51 +04:00
Andrey Kamaev
084b1c7969 Merge branch 2.4 2013-01-11 15:45:23 +04:00
Andrey Kamaev
b1384a6da8 Fix cvCalcOpticalFlow when the status parameter is NULL
issue 2526
2013-01-10 18:14:08 +04:00
LeonidBeynenson
02646427fb Fixed arguments of the function calcOpticalFlowSF. 2012-11-01 19:31:45 +04:00
Vladislav Vinogradov
8db5b7d7d4 fixed warnings under Windows 2012-10-25 13:28:30 +04:00
Vladislav Vinogradov
0ad849d2fd Dual TV-L1 optical flow implementation 2012-10-25 11:25:35 +04:00
OpenCV Buildbot
81f826db2b Normalize line endings and whitespace 2012-10-17 15:57:49 +04:00
OpenCV Buildbot
04384a71e4 Normalize line endings and whitespace 2012-10-17 15:32:23 +04:00
Vadim Pisarevsky
cb58e5a3a4 let Kalman handle the missing measurements (bug #1380) 2012-10-12 14:01:36 +04:00
Vadim Pisarevsky
354a5f2686 added recommended number of stripes to parallel_for_, modified some of the functions to use larger stripes (for better performance) 2012-10-11 22:37:14 +04:00
Vadim Pisarevsky
bbeffcc115 fixed the case learningRate==0 in BackgroundSubtractorMOG2 (patch #2221; thanks to Will Lucas) 2012-09-11 14:13:37 +04:00
Vadim Pisarevsky
932100c5a3 fixed build errors and warnings on Windows 2012-09-05 17:06:07 +04:00
Yury Zemlyanskiy
66ce62cd0d Small fixed #3 2012-09-05 14:39:33 +04:00
Yury Zemlyanskiy
036258b8da Small fixed #2 2012-09-05 14:36:40 +04:00
Yury Zemlyanskiy
9d1aa37e21 Small fixes 2012-09-05 14:19:44 +04:00
Yury Zemlyanskiy
4e0fdf2205 Merge remote-tracking branch 'itseez/opencv'
Conflicts:
	modules/video/src/simpleflow.cpp
	modules/video/test/test_simpleflow.cpp
2012-09-05 13:40:14 +04:00
Yury Zemlyanskiy
0c10ed26e3 Update to improve performance of SimpleFlow algorithm
+ Improve performance of calcOpticalFlowSingleScale method
+ Small refactoring

Current results:

IMAGE NAMES          RMSE
Beanbags
Dimetrodon           0.329428
DogDance
Grove2               0.550852
Grove3               1.464699
Hydrangea            0.523277
MiniCooper
RubberWhale          0.367246
Urban2               2.717003
Urban3               4.185070
Venus                0.775422
Walking

Time (for Urban3):
17.490248 sec
2012-09-05 13:27:47 +04:00
Vadim Pisarevsky
e5f9f97954 fixed build warnings on Windows 2012-08-31 14:56:28 +04:00
Yury Zemlyanskiy
1fde184192 Small fixes for SimpleFlow algorithm
+ Fixed warnings
+ Add new function calcOpticalFlow with smaller number of arguments
+ Add asserts to algorithm and remove 'exit(1)'
2012-08-31 14:39:59 +04:00
Yury Zemlyanskiy
784c09d6f9 Updates for SimpleFlow algorithm
+ New format for flow data - CV_32C2
+ Memory optimization
+ Cross Bilateral Filter optimization
+ Minor optimizations
+ Sample for calcOpticalFlowSF improved
2012-08-31 14:39:59 +04:00
Yury Zemlyanskiy
c77d099018 "SimpleFlow" optical flow estimation algorithm (GSoC project) declaration in includes, implementation, usage example, test 2012-08-31 14:39:58 +04:00
Yury Zemlyanskiy
7ad4c25452 Small fixes for SimpleFlow algorithm
+ Fixed warnings
+ Add new function calcOpticalFlow with smaller number of arguments
+ Add asserts to algorithm and remove 'exit(1)'
2012-08-31 13:34:24 +04:00
Vadim Pisarevsky
633a8bfacc fixed many warnings (modified pull request 13) 2012-08-28 18:15:14 +04:00
Yury Zemlyanskiy
5ee632fe90 Updates for SimpleFlow algorithm
+ New format for flow data - CV_32C2
+ Memory optimization
+ Cross Bilateral Filter optimization
+ Minor optimizations
+ Sample for calcOpticalFlowSF improved
2012-08-28 04:16:40 +04:00
Yury Zemlyanskiy
cc6f1eb824 "SimpleFlow" optical flow estimation algorithm (GSoC project)
declaration in includes, implementation, usage example, test
2012-08-28 04:16:40 +04:00
Anatoly Baksheev
70204a8e68 Removed PtrElemStep, Marked DevMem1D as deprecated, now should use PtrStepSz now 2012-08-24 02:02:42 +04:00
Andrey Kamaev
1a621c2916 Fix build warnings 2012-08-19 19:36:43 +04:00
Vladislav Vinogradov
456890e9e4 fixed warning C4512 2012-08-15 13:48:28 +04:00
Andrey Kamaev
d525362cd5 Fixed 2 new Android build warnings 2012-08-13 19:24:31 +04:00
Vladislav Vinogradov
941897aa3d fixed build errors in bgfg_gmg 2012-08-13 17:00:21 +04:00
Vladislav Vinogradov
4dbc7600e7 added support of all types to BackgroundSubtractorGMG 2012-08-13 10:28:42 +04:00
Vladislav Vinogradov
bfd9e6102a added updateBackgroundModel parameter and release method 2012-08-09 14:37:08 +04:00
Vladislav Vinogradov
55f8310cac fixed number of training mode operation 2012-08-09 12:37:35 +04:00
Vladislav Vinogradov
42c1d4f4b1 new optimized version of BackgroundSubtractorGMG 2012-08-08 18:15:06 +04:00
Andrey Kamaev
9981b283a6 Fixed build warnings (including error in FAST) 2012-08-06 19:10:55 +04:00
Anatoly Baksheev
acd19fe36c test7 2012-07-25 22:20:41 +04:00
Anatoly Baksheev
29fee9cab3 test2 2012-07-25 18:11:07 +04:00
Maria Dimashova
8f5b15b1c3 fixed compilation in msvc 2012-07-01 20:58:08 +00:00
Andrey Kamaev
dec38e5949 Background subtractor GMG: removed flexitype, fixed build errors. 2012-06-30 20:47:09 +00:00
Andrey Kamaev
a25c27ca05 Fixed windows build problems of BackgroundSubtractorGMG but code still need more work. 2012-06-28 20:42:26 +00:00
Vadim Pisarevsky
e4b58ebff5 added GMG background segmentation algorithm by Andrew Godbehere, ticket #2065 2012-06-28 16:24:48 +00:00
Andrey Kamaev
c5aba337e9 Fixed number of warnings. Fixed mingw64 build. 2012-06-12 14:46:12 +00:00
Andrey Kamaev
f2d3b9b4a1 Warning fixes continued 2012-06-09 15:00:04 +00:00
Andrey Kamaev
49a1ba6038 Set stricter warning rules for gcc 2012-06-07 17:21:29 +00:00
Vadim Pisarevsky
6206908868 added nmixtures parameter to BackgroundSubtractorMOG2 (ticket #1914) 2012-06-01 09:00:42 +00:00
Andrey Kamaev
ab6f0c4e0b Added tegra stub for cornerEigenValsVecs 2012-05-25 08:20:13 +00:00
Andrey Kamaev
88c934ea8c Added documentation for buildOpticalFlowPyramid 2012-05-23 08:50:43 +00:00
Vadim Pisarevsky
fd68cc768a fixed 2 build problems on MacOSX (highgui with ffmpeg, opencv_world); added macro CV_INIT_ALGORITHM for simpler algorithm registration (ticket #1876) 2012-05-21 14:56:07 +00:00
Andrey Kamaev
9bc5afd278 Updated tegra optical flow stub 2012-05-21 13:57:36 +00:00
Andrey Kamaev
47f72b538f Added new performance tests for calcOpticalFlowPyrLK and buildOpticalFlowPyramid; extracted private header from lkpyramid.cpp 2012-05-21 13:07:53 +00:00
Andrey Kamaev
8f3273bf07 Refactored per-computed pyramid handling in calcOpticalFlowPyrLK #1321 2012-05-17 10:29:53 +00:00
Andrey Kamaev
a877ecdcf0 Added option to pass pre-computed pyramid to piramidal LK optical flow #1321 2012-05-16 14:52:46 +00:00
Vadim Pisarevsky
8a5b6ced1a fixed background update in GMM2 algorithm (ticket #1931) 2012-05-15 14:25:07 +00:00
Vadim Pisarevsky
d5a0088bbe merged 2.4 into trunk 2012-04-30 14:33:52 +00:00
Vadim Pisarevsky
2fd1e2ea57 merged all the latest changes from 2.4 to trunk 2012-04-13 21:50:59 +00:00
Andrey Kamaev
a4f5216d52 Fixed gcc build after r7751 2012-03-30 14:03:18 +00:00
Vadim Pisarevsky
beb7fc3c92 a LOT of obsolete stuff has been moved to the legacy module. 2012-03-30 12:19:25 +00:00
Vadim Pisarevsky
4ba87233bb fixed the size of output velocity map in OptFlowBM, ticket #1362 (thanks to Takanori Y for the patch) 2012-03-26 09:20:03 +00:00
Marina Kolpakova
e50c0ed4c8 Fixed bug #1629 2012-03-19 11:29:29 +00:00
Vadim Pisarevsky
846e37ded5 fixed many warnings from GCC 4.6.1 2012-03-17 09:22:31 +00:00
Vadim Pisarevsky
1a25e58239 fixed patch diff calculation in the end of calcopticalflowpyrlk (thanks to Vlad Vinogradov for the patch) 2012-03-07 13:35:13 +00:00
Vadim Pisarevsky
716a5d04ab fixed a few problems detected by Xcode 4.2.1 2012-02-15 19:48:04 +00:00
Andrey Kamaev
45d36ee0c8 Reenabled Tegra optimization of calcOpticalFlowPyrLK 2011-11-23 15:25:05 +00:00
Andrey Kamaev
40d82c0720 One more bugfix for calcOpticalFlowPyrLK 2011-11-22 09:50:38 +00:00
Andrey Kamaev
4378f398c7 Fixed border interpolation bug in calcOpticalFlowPyrLK 2011-11-21 16:34:08 +00:00
Leonid Beynenson
3c9979cd6a Disabled some unfinished optimizations. 2011-09-29 08:51:03 +00:00
Vadim Pisarevsky
bd0d8429ee added support for Ximea cameras (patch by Marian Zajko), fixed GCC warnings in MOG2 background subtractor. 2011-08-11 17:59:30 +00:00
Vadim Pisarevsky
eebe4860da added minEigThreshold parameter to calcOpticalFlowPyrLK to filter out bad points earlier. 2011-07-27 19:07:45 +00:00
Vadim Pisarevsky
ff5e97c8e4 added COVAR_ and SORT_ enums to core.hpp; fixed many, many VS2005, VS2010 and MinGW (GCC 4.5.2) warnings 2011-07-19 12:27:07 +00:00
Vadim Pisarevsky
21409de176 optimized sparse LK optical flow (tickets #1062 and #1210) 2011-07-11 23:03:05 +00:00
Vadim Pisarevsky
b204e73d9a propagated some more fixes from 2.3 branch to the trunk 2011-06-29 22:06:42 +00:00
Vadim Pisarevsky
d5ba7c3826 fixed crashes in camshiftdemo (ticket #875) 2011-06-17 20:34:34 +00:00
Anatoly Baksheev
8f4c7db3f6 ~40 warnings under VS2008
HAVE_CONFIG_H -> HAVE_CVCONFIG_H
2011-06-11 17:24:09 +00:00
Vadim Pisarevsky
fcd2a0c3d3 fixed VS2010 compile warnings and errors 2011-06-06 15:15:30 +00:00
Vadim Pisarevsky
0c877f62e9 replaced "const InputArray&" => "InputArray"; made InputArray and OutputArray references. added "None()" constant (no array()). 2011-06-06 14:51:27 +00:00
Andrey Kamaev
cdda5ec491 YUV420i to RGB conversion is added to cvtColor 2011-06-04 18:15:52 +00:00
Ilya Lysenkov
04ebfc0a02 Added computing of the mean background image in the BackgroundSubtractorMOG2 model. 2011-06-03 14:10:12 +00:00
Vadim Pisarevsky
47443d9826 fixed 2 bugs reported by exvan (ticket #799) 2011-05-23 14:01:12 +00:00
Vadim Pisarevsky
23768b1826 replaced #include <some_opencv_hdr> with #include "some_opencv_hdr" (ticket #719) 2011-05-21 18:32:34 +00:00
Andrey Kamaev
1388826c41 Tegra optimization for calcOpticalFlowPyrLK 2011-05-20 14:33:41 +00:00
Vadim Pisarevsky
2dc981aaa8 fixed bug with possible memory corruption in CvMat m = iarray.getMat(); expressions (ticket #1054) 2011-05-18 15:16:12 +00:00
Vadim Pisarevsky
abeeb40d46 a big patch; use special proxy types (Input/OutputArray, Input/OutputArrayOfArrays) for passing in vectors, matrices etc. 2011-04-17 13:14:45 +00:00
Vadim Pisarevsky
60633fddd0 fixed bug in complanarity check in cvEstimateRigidTransform (thanks to Luca Del Tongo) 2011-03-31 14:03:17 +00:00
Vadim Pisarevsky
061b49e0b2 reworked nearly all of the OpenCV tests (except for opencv_gpu tests) - they now use the Google Test engine. 2011-02-09 20:55:11 +00:00
Vadim Pisarevsky
e26ac53589 some more fixes in background/foreground subtraction; converted bgfg_segm.cpp sample to C++ 2010-12-28 21:28:34 +00:00
Vadim Pisarevsky
2dd0e85264 fixed some build problems 2010-12-28 21:15:58 +00:00
Vadim Pisarevsky
0468bdeadd added background/foreground segmentation algorithm with shadow detection (by Zoran Zivkovic) 2010-12-28 16:25:39 +00:00
Vadim Pisarevsky
a937d9d43c unified the coordinate interpretation in RotatedRect (ticket #425) 2010-11-29 18:14:08 +00:00
Vadim Pisarevsky
a3dfba36a1 fixed crashes in camshiftdemo sample 2010-11-28 19:44:01 +00:00
Vadim Pisarevsky
54ef4c08c2 moved some old stuff to the legacy module; merge "compat_c.h" headers and moved to the legacy as well. moved implementation of many non-critical/obsolete inline functions and methods to .cpp to improve Opencv build time 2010-11-26 17:58:20 +00:00
Vadim Pisarevsky
1286c1db45 fixed multiple warnings from VS2010. 2010-11-25 16:55:46 +00:00
Vadim Pisarevsky
d366c0b2fa fixed canny test; fixed mhi-global test & implementation (hopefully, for the last time); added sse 4.1 & 4.2 support (not working in Xcode for some reason); moved splineInterpolation to color.cpp; fixed a few bugs in documentation 2010-11-24 09:46:46 +00:00
Vadim Pisarevsky
92fb499ba9 added type selection in the Kalman filter (thanks to Nghia Ho for the patch; see ticket #693) 2010-11-22 21:05:22 +00:00
Vadim Pisarevsky
e954577304 fixed duplicated external symbols in the static version of OpenCV 2010-11-15 21:23:14 +00:00
Vadim Pisarevsky
5a53d82e30 fixed most of the failures in opencv_test 2010-11-06 14:56:01 +00:00
Vadim Pisarevsky
1b1eab8e67 added helper macros to the function declarations 2010-10-16 20:34:34 +00:00
Vadim Pisarevsky
7ec4b59fac added #include "cvconfig.h" to make TBB and other 3rd party libs work correctly 2010-06-29 15:12:07 +00:00
Vadim Pisarevsky
127d6649a1 "atomic bomb" commit. Reorganized OpenCV directory structure 2010-05-11 17:44:00 +00:00