Commit Graph

269 Commits

Author SHA1 Message Date
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
vbystricky
a75807354d Optimize OpenCL version function BackgroundSubstractionMOG2 2014-09-23 10:33:30 +04:00
Ernest Galbrun
fae69df9a9 Merge remote-tracking branch 'remotes/origin/master' into tvl1_chambolle
Conflicts:
	modules/video/doc/motion_analysis_and_object_tracking.rst
2014-08-17 22:08:12 +02: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
Vadim Pisarevsky
07744af790 Merge pull request #3066 from vpisarev:minor_fixes 2014-08-11 10:27:30 +00:00
Vadim Pisarevsky
d0137b6d2d moved part of video to contrib/{outflow, bgsegm}; moved matlab to contrib 2014-08-10 23:24:16 +04:00
Vadim Pisarevsky
0224a20ff6 ECC patch by the author (G. Evangelidis); fixed some OCL Farneback optical flow test failures on Mac 2014-08-08 22:33:40 +04:00
Alexander Alekhin
55188fe991 world fix 2014-08-05 20:12:35 +04:00
Ernest Galbrun
5c8e679bdc still a couple tabs and trailing whitespaces... 2014-07-07 12:34:23 +02:00
Ernest Galbrun
ca6fb27ea6 removed some tabs 2014-07-07 09:49:57 +02:00
Ernest Galbrun
eb6c598678 changed nullptr to NULL to avoid c++11 (failed to build on linux)
replaces tabs with spaces
2014-07-07 09:32:48 +02:00
Ernest Galbrun
4bd55c6f73 added comments and reference for Chambolle paper 2014-07-04 15:33:34 +02:00
Ernest Galbrun
693c4e5741 debug of cuda_tvl1 => pass tests succesfully 2014-07-04 14:23:09 +02:00
Ernest Galbrun
afb9b9540c performance issue when gamma=0 2014-07-02 12:01:59 +02:00
Ernest Galbrun
f2e09d048c changed default value for gamma (now 0 -> no use of gamma) 2014-07-02 10:38:32 +02:00
Ernest Galbrun
c45e645d6c Merge branch 'master' into tvl1_ali 2014-07-01 10:17:07 +02:00
Ernest Galbrun
5101a7fc00 replaced tabs by spaces 2014-06-27 15:41:39 +02:00
krodyush
2e2ca58b70 fix according review 2014-05-30 15:44:51 +04:00
krodyush
153ac43d3b opencl opticaflow fix that enables buffer2image extension 2014-05-28 10:34:11 +04:00
Roman Donchenko
3d7a457c97 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	doc/tutorials/introduction/linux_install/linux_install.rst
	modules/core/doc/operations_on_arrays.rst
	modules/core/include/opencv2/core/core.hpp
	modules/core/src/system.cpp
	modules/gpu/src/cuda/resize.cu
	modules/imgproc/doc/miscellaneous_transformations.rst
	modules/imgproc/doc/structural_analysis_and_shape_descriptors.rst
	modules/video/src/bgfg_gaussmix2.cpp
2014-05-19 18:39:20 +04:00
Alexander Alekhin
b62e59aac0 icv: enable functions 2014-04-29 15:36:43 +04:00
Ernest Galbrun
6a6f24b170 adding new ali's feature 2014-04-18 16:36:34 +02:00
Andrey Pavlenko
80ef1f6753 Merge pull request #2621 from arkunze:pullreq/140319-resize-b 2014-04-15 19:56:56 +04:00
Vadim Pisarevsky
7942494fb6 Merge pull request #2233 from palindromoroz:BGSubtract_KNN_new_code 2014-04-15 13:22:43 +04:00
Vadim Pisarevsky
9cdd15e141 Merge pull request #2615 from krodyush:pullreq/140319-PyrLKOpticalFlow-fix 2014-04-15 13:19:45 +04:00
Aaron Kunze
ebbac3c66d Optimizes OpenCL resize and optical flow to use image extension. 2014-04-14 16:09:17 -07:00
krodyush
57992e0169 replace IPatchLocal[][] into *IPatchLocal to fix compilation error on some devices. 2014-04-14 13:23:12 +04:00
Vadim Pisarevsky
b5755b1228 Merge pull request #2588 from vpisarev:fix_samples_n_unused 2014-04-10 13:30:20 +04:00
Alexander Alekhin
ab691a4a24 ipp: some functions are not available in the ICV package #2 2014-04-09 18:20:49 +04:00
Ilya Lavrenov
b56b9c43dc cv::updateMotionHistory 2014-04-09 00:11:28 +04:00
Vadim Pisarevsky
1b339eb0d4 fixed slow down in getRectSubPix (original patch by Markus JR Mueller); removed some unused variables and functions 2014-04-08 17:54:08 +04:00
Firat Kalaycilar
990295644e made a performance improvement.
changed the way the mean value for each pixel is assigned in the output image.
2014-04-08 16:10:32 +03:00
krodyush
616ec74beb fix previous merge error 2014-04-07 17:32:39 +04:00
krodyush
4ca695cab0 Merge remote-tracking branch 'github/master' into pullreq/140319-PyrLKOpticalFlow
Conflicts:
	modules/video/src/opencl/pyrlk.cl
2014-04-04 11:26:08 +04:00
Roman Donchenko
cc05493730 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	cmake/OpenCVDetectAndroidSDK.cmake
	cmake/OpenCVGenAndroidMK.cmake
	cmake/OpenCVModule.cmake
	cmake/templates/OpenCV.mk.in
	cmake/templates/OpenCVConfig.cmake.in
	doc/tutorials/imgproc/histograms/histogram_comparison/histogram_comparison.rst
	modules/cudabgsegm/src/cuda/mog.cu
	modules/imgproc/perf/opencl/perf_filters.cpp
	modules/imgproc/src/opencl/filterSep_singlePass.cl
	modules/nonfree/CMakeLists.txt
	modules/nonfree/perf/perf_precomp.hpp
	modules/ocl/perf/perf_haar.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/src/opencl/bgfg_mog.cl
	modules/superres/CMakeLists.txt
	modules/superres/src/btv_l1_cuda.cpp
	modules/superres/src/cuda/btv_l1_gpu.cu
	modules/superres/src/frame_source.cpp
	modules/superres/src/input_array_utility.cpp
	modules/superres/src/optical_flow.cpp
	modules/superres/src/precomp.hpp
	samples/gpu/CMakeLists.txt
	samples/gpu/brox_optical_flow.cpp
	samples/gpu/super_resolution.cpp
2014-03-24 19:02:16 +04:00
Firat Kalaycilar
c9f51d5eed modified BackgroundSubtractorMOG2::getBackgroundImage so that it can now work with gray-level images. 2014-03-21 09:44:11 +02:00
krodyush
65d64af2a8 ocl_calcOpticalFlowPyrLK optimizations
1. decrease branch number in CL code by replacing them into weights
2. decrease local mem pressure in reduce operation by using private variables
3. decrease image sampler pressure by caching data into local memory
4. remove unnecessary sync point on the HOST side.
2014-03-19 19:31:14 +04:00
vbystricky
6890aa0033 Fix problems on Intel HD graphics 2014-03-17 16:03:15 +04:00
Firat Kalaycilar
a87607e3ef Fixed an issue with weight assignment causing the resulting GMM weights to be unsorted in BackgroundSubtractorMOG2 2014-03-12 16:14:59 +02:00
Andrey Pavlenko
702a2a6ff6 Merge pull request #2373 from mlyashko:optflow_dualtvl1 2014-03-11 16:00:22 +04:00
mlyashko
eb2e8a11fa changed kernel.set to support unsuccssful set 2014-03-07 11:15:54 +04:00
mlyashko
66ed6a8a50 macro for normal return from thriveless kernel.set 2014-03-06 11:43:01 +04:00
Cody Rigney
a80ebfe28d Master Version: Added NEON Optimizations for LK Optical Flow. 2014-03-04 14:47:12 -05:00
Roman Donchenko
b5248dbf3f Merge pull request #2407 from codyrigney92:LKOptFlow_NEON 2014-03-04 15:30:26 +04:00
mlyashko
5c867463d2 changed localsize to NULL (reviewers comment) 2014-03-04 11:36:47 +04:00
Cody Rigney
fbc69e444b Added NEON optimizations for LK optical flow (Intrinsics). 2014-02-28 16:48:04 -05:00
Ilya Lavrenov
ce0557ebb8 fixed defects from Xcode 2014-02-25 17:33:12 +04:00
Ilya Lavrenov
32eb38ec98 fixed defects from coverity.com 2014-02-23 20:21:08 +04:00
mlyashko
10f2a038c2 Optical flow dualt tvl1 ocl-based implementation and tests 2014-02-20 14:23:10 +04:00
Andrey Pavlenko
bd6620fa87 Merge pull request #2252 from ilya-lavrenov:ocl_ref 2014-02-04 16:34:28 +04:00
Ilya Lavrenov
da5b316b4e minor ocl.cpp refactoring
fix for cv::LUT and cv::transpose
2014-02-04 01:52:48 +04:00
Ilya Lavrenov
31b7cdc695 implemented OpenCL version of cv::updateMotionHistory 2014-02-02 17:52:57 +04:00
Andrey Pavlenko
25d2ab8a68 Merge pull request #2218 from alalek:fix_defects_code_coverity 2014-01-31 19:23:02 +04:00
U-WBI\nlv20442
be7eb72051 some fixes 2014-01-30 14:50:35 +01:00
U-WBI\nlv20442
d950adc0d2 function code 2014-01-30 10:51:12 +01:00
unknown
14b1e8c7f1 New KNN code -should compile now 2014-01-30 10:47:12 +01:00
Alexander Alekhin
6fa49f6e80 fix unintialized fields 2014-01-29 19:59:03 +04:00
Elena Gvozdeva
96b6f338e1 fixed 2014-01-29 14:27:29 +04:00
Elena Gvozdeva
17c6b4d306 fixed warnings 2014-01-29 11:05:05 +04:00
Elena Gvozdeva
0edd0aaf69 fixed 2014-01-28 16:23:39 +04:00
Elena Gvozdeva
1391ca1da5 Added ocl_Mog2 2014-01-28 16:23:38 +04:00
vbystricky
bb09d44e0a Unused code removed 2014-01-24 17:37:54 +04:00
vbystricky
27fb7e1802 Change type of result vector of ocl version from row to column 2014-01-24 17:37:53 +04:00
vbystricky
094bc92318 Fix build error 2014-01-24 17:37:53 +04:00
vbystricky
a7e5a488a8 Change method of setting arguments to kernel to safe one 2014-01-24 17:37:52 +04:00
vbystricky
ece635bf3c Fix builds errors 2014-01-24 17:37:51 +04:00
vbystricky
3ba6636651 Fix builds errors 2014-01-24 17:37:51 +04:00
vbystricky
33fc46cdec Validate parameters for using OpenCL version, before upload UMat 2014-01-24 17:37:50 +04:00
vbystricky
4152135e63 Fix error with some opencl functions on the build WITH_OPENCL=OFF 2014-01-24 17:37:50 +04:00
vbystricky
c57e427fba Move OpticalFlowPyrLK from ocl module to video module 2014-01-24 17:37:50 +04:00
Andrey Pavlenko
9aa4410509 Merge pull request #2134 from vbystricky:ocl_calcOpticalFlowFarneback 2014-01-22 18:57:34 +04:00
vbystricky
f1541b5287 Add perfomance test 2014-01-17 16:15:39 +04:00
vbystricky
fc8b385ff6 Return false if ocl version not properly worked 2014-01-17 16:15:38 +04:00
vbystricky
3762036b08 Fix compiler warnings. Add additional test case for UseInitFlow 2014-01-17 16:15:38 +04:00
vbystricky
3b0fa68a97 Move OpticalFlowFarneback from ocl module to video module 2014-01-17 16:15:38 +04:00
Roman Donchenko
fee2ed37fc Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	modules/contrib/src/retina.cpp
	modules/core/include/opencv2/core/mat.hpp
	modules/core/src/algorithm.cpp
	modules/core/src/arithm.cpp
	modules/features2d/src/features2d_init.cpp
	modules/gpu/include/opencv2/gpu/gpu.hpp
	modules/gpu/perf/perf_imgproc.cpp
	modules/imgproc/src/generalized_hough.cpp
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/video/src/tvl1flow.cpp
	modules/video/src/video_init.cpp
2014-01-14 11:53:59 +04:00
Ilya Lavrenov
6b9ebcbf3d deleted extra semicolons 2014-01-07 02:52:30 +04:00
Ilya Lavrenov
6083efc111 refactored cv::CamShift and cv::meanShift 2013-12-21 14:40:59 +04:00
Roman Donchenko
9c83f6c4fb Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	cmake/OpenCVDetectCUDA.cmake
	modules/core/include/opencv2/core/version.hpp
	modules/cudacodec/src/ffmpeg_video_source.cpp
	modules/gpu/src/video_writer.cpp
	modules/highgui/test/test_ffmpeg.cpp
	modules/highgui/test/test_video_io.cpp
	modules/highgui/test/test_video_pos.cpp
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/ocl/include/opencv2/ocl/private/util.hpp
	modules/ocl/src/arithm.cpp
	modules/ocl/src/blend.cpp
	modules/ocl/src/canny.cpp
	modules/ocl/src/cl_operations.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/src/haar.cpp
	modules/ocl/src/imgproc.cpp
	modules/ocl/src/kmeans.cpp
	modules/ocl/src/moments.cpp
	modules/ocl/src/safe_call.hpp
	modules/ocl/src/split_merge.cpp
	modules/ocl/test/test_moments.cpp
	samples/ocl/squares.cpp
2013-11-05 16:38:23 +04:00
Vadim Pisarevsky
d8c8339bec the first draft of transparent API and new UMat class. more files 2013-10-22 14:05:15 +04:00
Nghia Ho
2238e711b5 Copied errorCovPre to errorCovPost. This allows the correct behaviour of the uncertainty to grow when there is missing data for each predict step. 2013-10-20 13:00:11 +11:00
Roman Donchenko
808e0cf10b Boring changes - video. 2013-09-05 19:02:58 +04:00
Roman Donchenko
2c4bbb313c Merge commit '43aec5ad' into merge-2.4
Conflicts:
	cmake/OpenCVConfig.cmake
	cmake/OpenCVLegacyOptions.cmake
	modules/contrib/src/retina.cpp
	modules/gpu/doc/camera_calibration_and_3d_reconstruction.rst
	modules/gpu/doc/video.rst
	modules/gpu/src/speckle_filtering.cpp
	modules/python/src2/cv2.cv.hpp
	modules/python/test/test2.py
	samples/python/watershed.py
2013-08-27 13:26:44 +04:00
Roman Donchenko
e9a28f66ee Normalized file endings. 2013-08-21 18:59:25 +04:00
Roman Donchenko
f76dd99299 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	cmake/OpenCVModule.cmake
	doc/tutorials/calib3d/camera_calibration/camera_calibration.rst
	doc/tutorials/features2d/feature_detection/feature_detection.rst
	doc/tutorials/features2d/feature_flann_matcher/feature_flann_matcher.rst
	doc/tutorials/features2d/feature_homography/feature_homography.rst
	modules/core/include/opencv2/core/operations.hpp
	modules/core/src/arithm.cpp
	modules/gpu/perf/perf_video.cpp
	modules/imgproc/include/opencv2/imgproc/imgproc.hpp
	modules/java/generator/gen_java.py
	modules/java/generator/src/cpp/VideoCapture.cpp
	modules/nonfree/src/opencl/surf.cl
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/ocl/perf/perf_haar.cpp
	modules/ocl/perf/perf_precomp.hpp
	modules/ocl/src/color.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/test/test_color.cpp
	modules/ocl/test/test_objdetect.cpp
	modules/python/src2/cv2.cpp
	samples/gpu/CMakeLists.txt
	samples/gpu/super_resolution.cpp
2013-08-19 19:02:36 +04:00
Roman Donchenko
7d768d2159 In calcOpticalFlowSF, fixed several uninitialized uses of matrices.
This should fix that pesky test failure that pops up from time to time.

I don't actually know if the default values should be zeros, but the tests
pass, so...
2013-08-16 14:43:18 +04:00
Roman Donchenko
d9f71b762f Deleted almost all of the precomp.cpp files.
Looks like we don't actually use them; when creating precompiled headers
with Visual C++, a dummy .cpp is created at build time.
2013-08-08 12:43:07 +04:00
Roman Donchenko
ac39bfb4cc Remove HAVE_CVCONFIG_H - it's always defined. 2013-07-10 16:02:07 +04:00
Vladislav Vinogradov
99a5b3417a added missing BackgroundSubtractorMOG2 parameters 2013-06-10 13:41:46 +04:00
Roman Donchenko
bae85660da Merge remote-tracking branch 'origin/2.4'
Pull requests:
	#943 from jet47:cuda-5.5-support
	#944 from jet47:cmake-2.8.11-cuda-fix
	#912 from SpecLad:contributing
	#934 from SpecLad:parallel-for
	#931 from jet47:gpu-test-fixes
	#932 from bitwangyaoyao:2.4_fixBFM
	#918 from bitwangyaoyao:2.4_samples
	#924 from pengx17:2.4_arithm_fix
	#925 from pengx17:2.4_canny_tmp_fix
	#927 from bitwangyaoyao:2.4_perf
	#930 from pengx17:2.4_haar_ext
	#928 from apavlenko:bugfix_3027
	#920 from asmorkalov:android_move
	#910 from pengx17:2.4_oclgfft
	#913 from janm399:2.4
	#916 from bitwangyaoyao:2.4_fixPyrLK
	#919 from abidrahmank:2.4
	#923 from pengx17:2.4_macfix

Conflicts:
	modules/calib3d/src/stereobm.cpp
	modules/features2d/src/detectors.cpp
	modules/gpu/src/error.cpp
	modules/gpu/src/precomp.hpp
	modules/imgproc/src/distransform.cpp
	modules/imgproc/src/morph.cpp
	modules/ocl/include/opencv2/ocl/ocl.hpp
	modules/ocl/perf/perf_color.cpp
	modules/ocl/perf/perf_imgproc.cpp
	modules/ocl/perf/perf_match_template.cpp
	modules/ocl/perf/precomp.cpp
	modules/ocl/perf/precomp.hpp
	modules/ocl/src/arithm.cpp
	modules/ocl/src/canny.cpp
	modules/ocl/src/filtering.cpp
	modules/ocl/src/haar.cpp
	modules/ocl/src/hog.cpp
	modules/ocl/src/imgproc.cpp
	modules/ocl/src/opencl/haarobjectdetect.cl
	modules/ocl/src/pyrlk.cpp
	modules/video/src/bgfg_gaussmix2.cpp
	modules/video/src/lkpyramid.cpp
	platforms/linux/scripts/cmake_arm_gnueabi_hardfp.sh
	platforms/linux/scripts/cmake_arm_gnueabi_softfp.sh
	platforms/scripts/ABI_compat_generator.py
	samples/ocl/facedetect.cpp
2013-06-05 15:42:07 +04:00
Roman Donchenko
29b13ec1de Replaced most of the usages of parallel_for with that of parallel_for_.
This should allow many algorithms to take advantage of more parallelization
technologies.
2013-05-31 12:22:04 +04:00
Andrey Kamaev
8f32902ce6 Minimize usages of legacy C API inside the library 2013-04-16 12:00:02 +04:00
Andrey Kamaev
199a35a105 Move C API of opencv_video to separate file 2013-04-11 17:38:33 +04:00
Andrey Kamaev
e27f4da9c6 Merge pull request #795 from taka-no-me:move_imgproc_utils_to_core 2013-04-11 11:35:15 +04:00
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