Commit Graph

2086 Commits

Author SHA1 Message Date
Alexander Alekhin
0876ec7a67 Merge pull request #2935 from vbystricky:oclopt_meanStdDev 2014-07-11 14:53:46 +00:00
Alexander Alekhin
cbf63b0709 Merge pull request #2851 from ilya-lavrenov:tapi_set_identity 2014-07-11 10:00:16 +00:00
Ilya Lavrenov
f2a2467de3 enabled BufferPool 2014-07-11 12:21:10 +04:00
Ilya Lavrenov
c949845a6b fixed perf test 2014-07-10 16:03:31 +04:00
Alexander Alekhin
a0816c6d15 Merge pull request #2927 from ilya-lavrenov:tapi_lut 2014-07-10 09:38:37 +00:00
Zhigang Gong
2e49ca4903 Avoid unmap an umat(ocl) which hasn't been mapped at all.
According to opencl 1.2 spec 5.4.2:
  enqueues a command to unmap a previously mapped region of a memory object.
  ...
  CL_INVALID_VALUE if mapped_ptr is not a valid pointer returned by
  clEnqueueMapBuffer, or clEnqueueMapImage for memobj.

So if the u->data is not from a clEnqueueMapBuffer call, we should not
call clEnqueueUnmapMemObject() unmap it. With this patch, the cases
./opencv_test_video --gtest_filter=OCL_Video/FarnebackOpticalFlow.Mat/*
could work well with beignet 0.9.1, Otherwise, it will get a
CL_INVALID_VALUE at the clEnqueueUnmapMemObject().

Signed-off-by: Zhigang Gong <zhigang.gong@intel.com>
2014-07-09 16:21:20 +08:00
Roman Donchenko
a3bde36c84 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	modules/calib3d/include/opencv2/calib3d/calib3d.hpp
	modules/contrib/doc/facerec/facerec_api.rst
	modules/contrib/include/opencv2/contrib/contrib.hpp
	modules/contrib/src/facerec.cpp
	modules/core/include/opencv2/core/mat.hpp
	modules/features2d/include/opencv2/features2d/features2d.hpp
	modules/highgui/src/loadsave.cpp
	modules/imgproc/src/pyramids.cpp
	modules/ocl/include/opencv2/ocl/cl_runtime/cl_runtime.hpp
	modules/python/src2/gen.py
	modules/python/test/test.py
	modules/superres/test/test_superres.cpp
	samples/cpp/facerec_demo.cpp
2014-07-08 14:33:56 +04:00
Alexander Alekhin
e79ceb4b45 Merge pull request #2936 from ilya-lavrenov:tapi_minmaxloc_opt 2014-07-08 07:30:49 +00:00
Vadim Pisarevsky
e1553d5da3 Merge pull request #2929 from ilya-lavrenov:sse_pow 2014-07-07 11:22:26 +00:00
Vadim Pisarevsky
b2ab1b758a Merge pull request #2937 from ilya-lavrenov:sse_patch_nans 2014-07-07 11:20:30 +00:00
Ilya Lavrenov
e2b86974ae SSE2 optimization of cv::patchNaNs 2014-07-04 10:27:44 +04:00
Ilya Lavrenov
e04c39b089 SSE2 optimization of cv::inRange 2014-07-04 10:11:18 +04:00
Alexander Alekhin
964b260937 Merge pull request #2932 from ilya-lavrenov:tapi_other_vendors 2014-07-03 13:02:41 +00:00
Ilya Lavrenov
55d84cf815 optimization of cv::minMaxLoc - used min/max 2014-07-03 16:56:22 +04:00
vbystricky
690c932d7f Change groups count for Intel 2014-07-03 15:50:56 +04:00
Ilya Lavrenov
2fe07abf83 use vectors for devices of all vendors 2014-07-03 15:32:34 +04:00
Alexander Alekhin
c5d3c08256 ocl: add try-catch for OpenCL device getter 2014-07-03 12:18:19 +04:00
Ilya Lavrenov
e5b63d43f2 sse2 optimization of inv_sqrt_64f 2014-07-03 01:33:49 +04:00
Ilya Lavrenov
10c772fa7f minor optimization of cv::LUT 2014-07-02 18:50:21 +04:00
Vadim Pisarevsky
0e534b5a25 Merge pull request #2923 from alalek:ocl_default_device_ignore_cpu 2014-07-02 09:56:59 +00:00
vbystricky
a3b9884674 Change global buffer to local 2014-07-02 11:36:25 +04:00
Vadim Pisarevsky
15197eb09b Merge pull request #2911 from ilya-lavrenov:sse2_convert_scale_abs 2014-07-01 17:31:37 +00:00
Alexander Alekhin
157257b072 ocl: don't use OpenCL CPU device in default setup 2014-07-01 14:25:31 +04:00
Ilya Lavrenov
972119bff3 sse2 optimization of cv::convertScaleAbs 2014-07-01 02:21:00 +04:00
Ilya Lavrenov
54e4ef657c optimized cv::transpose inplace 2014-07-01 00:36:13 +04:00
Ilya Lavrenov
9c8b9fc733 cv::transpose 2014-06-30 19:07:45 +04:00
Alexander Alekhin
cbd0511a56 Merge pull request #2907 from ilya-lavrenov:tapi_perf_transpose 2014-06-30 14:59:36 +00:00
Ilya Lavrenov
978f7eb44a added perf test for transpose inplace 2014-06-30 18:33:26 +04:00
Roman Donchenko
ebb0255e19 Remove a couple of useless casts in core headers
This helps users who compile their code with -Wuseless-cast.
2014-06-30 16:12:04 +04:00
Alexander Alekhin
b304868d91 Merge pull request #2886 from ilya-lavrenov:tapi_inrange 2014-06-30 10:04:04 +00:00
Alexander Alekhin
2d81595ed4 Merge pull request #2852 from ilya-lavrenov:tapi_abs 2014-06-27 08:21:06 +00:00
Roman Donchenko
e8850bf84a Merge pull request #2626 from KayKwon:matlab_formatter 2014-06-26 17:40:26 +04:00
Roman Donchenko
436342d5f4 Merge pull request #2880 from GravityJack:SparseMatIterator-build-fix 2014-06-25 16:32:18 +04:00
Roman Donchenko
b21b8ff9d7 Merge pull request #2891 from nisargthakkar:dims_zero_on_release 2014-06-25 16:27:33 +04:00
Vadim Pisarevsky
07c0d50edf put the detection-based tracker back (to objdetect module), so that the Android face detection sample builds fine. The patch by Konstantin Matskevich that adds C++11 threads support has been merged in too. Also, fixed compile error in the doc builder. 2014-06-24 21:16:09 +04:00
Nisarg Thakkar
98421e5970 Fix for Bug#3757: All dimension values are 0 after release is called 2014-06-23 20:15:23 +05:30
Alexander Alekhin
4f1d06d14a Merge pull request #2874 from vbystricky:ocl_LUTAMDfix 2014-06-23 14:23:26 +00:00
Ilya Lavrenov
e89cee35e5 optimized cv::inRange 2014-06-23 13:12:08 +04:00
Ilya Lavrenov
0528d2e2b3 added 32s to 32u conversion 2014-06-23 13:09:54 +04:00
Alexander Alekhin
07446ec954 Merge pull request #2847 from ilya-lavrenov:tapi_pow 2014-06-20 08:47:18 +00:00
Marc Rollins
05e0b3b7e6 Fixing build error when using post-increment operator. 2014-06-19 14:14:10 -07:00
Alexander Alekhin
d9daa0cbaa ocl: added runtime flags for debugging 2014-06-19 17:52:46 +04:00
vbystricky
ea6da6ee95 Change uchar2 to short 2014-06-18 15:44:56 +04:00
vbystricky
9391ccfe35 Move some variables into #ifdef 2014-06-18 15:03:09 +04:00
Hans Johnson
4c7ed03b5f COMP: Fix problem with narrowing in c++11
modules/core/src/arithm.cpp:345:51:
error: constant expression evaluates to 4294967295 which cannot be narrowed to type 'int' [-Wc++11-narrowing]
static int CV_DECL_ALIGNED(16) v64f_absmask[] = { 0xffffffff, 0x7fffffff, 0xffffffff, 0x7fffffff };
                                                  ^~~~~~~~~~

Converted to unsigned int.  This variable is only used to initialize a bit pattern anywhy for a 128bit type.
2014-06-17 15:49:06 -05:00
Ilya Lavrenov
6dd658a0af optimized cv::setIdentity 2014-06-16 13:41:43 +04:00
Ilya Lavrenov
316c044e06 used abs in reduction operations 2014-06-11 18:54:43 +04:00
Ilya Lavrenov
f1e24381d1 used abs 2014-06-11 18:33:46 +04:00
Ilya Lavrenov
b2c2aabd04 used built-in functions 2014-06-11 18:32:42 +04:00
Alexander Alekhin
88ceee05c6 Merge pull request #2837 from ilya-lavrenov:tapi_norm_relative 2014-06-10 22:21:09 +04:00
Ilya Lavrenov
03f665e870 some optimizaions of cv::pow 2014-06-10 18:37:35 +04:00
Ilya Lavrenov
9edd24fe51 changed power in cv::pow test to test actual kernel 2014-06-10 17:41:43 +04:00
Ilya Lavrenov
634da9f3bf added norm_inf support to minmaxloc kernel 2014-06-09 20:05:26 +04:00
Roman Donchenko
ed1c56e063 Merge pull request #2817 from bf:patch-1 2014-06-09 15:06:07 +04:00
Ilya Lavrenov
7f2662b310 fixes 2014-06-09 00:50:14 +04:00
Ilya Lavrenov
5403bdd228 optimized cv::norm with NORM_RELATIVE 2014-06-07 21:26:40 +04:00
Ilya Lavrenov
2040995801 optimized cv::norm with 2 args 2014-06-07 20:45:28 +04:00
Ilya Lavrenov
1a7a262f74 optimized cv::norm with NORM_INF 2014-06-06 19:34:26 +04:00
Alexander Alekhin
ea417ac04a Merge pull request #2755 from vbystricky:oclopt_LUT 2014-06-06 18:52:40 +04:00
Ilya Lavrenov
fd5a8b3e97 minmaxloc 2014-06-06 18:39:08 +04:00
Alexander Alekhin
f30301d171 Merge pull request #2801 from ilya-lavrenov:tapi_reduction 2014-06-06 18:38:22 +04:00
VBystricky
5d924b7a75 If lut table has one channel and src aligned to 4, work with src as with one channel matrix 2014-06-05 19:31:31 +04:00
VBystricky
0c0ebca855 Read 4 pixel for aligned data with 1 channel 2014-06-04 23:50:23 +04:00
VBystricky
8a5f2781fc Fix kernel by comments 2014-06-04 20:13:42 +04:00
Alexander Alekhin
3f485d58bb Merge pull request #2808 from ilya-lavrenov:tapi_normalize_mask 2014-06-04 18:10:13 +04:00
Ilya Lavrenov
405f12fe80 optimized cv::flip (CV_8UC1) 2014-06-04 14:21:42 +04:00
Alexander Alekhin
6d3413bc6a Merge pull request #2810 from ilya-lavrenov:tapi_copytomask 2014-06-04 12:23:36 +04:00
Alexander Alekhin
c2ca059baf Merge pull request #2798 from ilya-lavrenov:tapi_copymakeborder 2014-06-04 12:22:52 +04:00
Alexander Alekhin
ee8adc10a1 Merge pull request #2821 from ilya-lavrenov:tapi_reduce 2014-06-04 12:18:30 +04:00
Alexander Alekhin
607cd37b48 Merge pull request #2750 from ilya-lavrenov:tapi_convertto 2014-06-03 16:36:48 +04:00
Alexander Alekhin
93af92c878 Merge pull request #2795 from ilya-lavrenov:tapi_setto 2014-06-03 13:21:05 +04:00
Alexander Alekhin
5e8a3cde94 Merge pull request #2757 from ElenaGvozdeva:ocl_flip 2014-06-03 13:19:42 +04:00
Ilya Lavrenov
26b73a7bbd merged 2 kernels 2014-06-03 13:14:51 +04:00
Roman Donchenko
c836613bad Merge pull request #2819 from SpecLad:merge-2.4 2014-06-02 17:12:07 +04:00
Ilya Lavrenov
ab428c9dbd optimized cv::copyMakeBorder 2014-06-02 15:46:44 +04:00
Ilya Lavrenov
67bb1c6a70 optimized UMat::setTo 2014-06-02 15:39:36 +04:00
Ilya Lavrenov
17956a5ae5 optimized cv::normalize in case of mask 2014-06-02 15:33:19 +04:00
Alexander Alekhin
fc2f79701d Merge pull request #2778 from vbystricky:oclopt_reduce 2014-06-02 13:57:57 +04:00
Roman Donchenko
33087f9eaa Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-06-02 13:43:28 +04:00
Benjamin Flesch
62533d0d26 perspectiveTransform simplify assert() for better debuggin
When using perspectiveTransform in rather complicated settings, it would be easier for developers to have two separate assertions for each part of the boolean expression in order to pinpoint problems more efficiently. In my case I am struggling in Python2.7 with finding out whether scn+1 == m.cols or the depth == CV_32F || depth == CV_64F is making a problem, which is kind of hard.
2014-06-02 00:27:32 +02:00
Alexander Alekhin
78badcd651 Merge pull request #2781 from ilya-lavrenov:tapi_meanstddev 2014-05-31 22:50:44 +04:00
Alexander Alekhin
89e4118b30 Merge pull request #2809 from ilya-lavrenov:tapi_copy_perf 2014-05-31 22:49:34 +04:00
Alexander Alekhin
17d6083e01 Merge pull request #2787 from ilya-lavrenov:tapi_repeat 2014-05-31 22:46:21 +04:00
Ilya Lavrenov
80470f9cf6 added performance test 2014-05-30 18:34:04 +04:00
Ilya Lavrenov
7f818e9bc3 optimized UMat::copyTo with mask 2014-05-30 18:27:55 +04:00
Ilya Lavrenov
d156f5af6d added missed tests for cv::norm, cv::normalize 2014-05-29 16:00:38 +04:00
Roman Donchenko
9a5e9d3442 Merge pull request #2771 from SpecLad:pvs-checks-opencv 2014-05-29 14:50:42 +04:00
Ilya Lavrenov
c52a77b90f optimized cv::UMat::dot 2014-05-29 13:16:16 +04:00
Ilya Lavrenov
579499d900 optimized cv::sum (CV_8UC1) 2014-05-28 19:46:08 +04:00
Ilya Lavrenov
002a79bfc4 optimized cv::countNonZero 2014-05-28 18:42:42 +04:00
Ilya Lavrenov
7804d57f8b optimized index calculation 2014-05-28 18:01:03 +04:00
Ilya Lavrenov
33173d900a optimized cv::meanStdDev 2014-05-28 17:55:30 +04:00
Elena Gvozdeva
437927b7bb optimized index access 2014-05-28 16:27:08 +04:00
vbystricky
b4498d1d48 Fix some errors 2014-05-26 16:55:31 +04:00
vbystricky
63584bffda fix code in the kernel 2014-05-26 16:54:26 +04:00
vbystricky
04433b2d2b Change buffer cols count from 64 to 32 2014-05-26 16:54:25 +04:00
vbystricky
169351b01d Optimize openCL version of reduce function 2014-05-26 16:54:25 +04:00
vbystricky
cfabf32492 Fix some errors 2014-05-26 16:53:01 +04:00
vbystricky
48d82fd911 Fix some errors 2014-05-26 16:53:01 +04:00
vbystricky
a8bfab3cb7 Optimize OpenCL LUT function 2014-05-26 16:53:00 +04:00
vbystricky
6667cea0f4 Optimize OpenCL LUT function 2014-05-26 16:53:00 +04:00
vbystricky
72727111c7 Use 4 pixels for one unit. Some ocl code refactoring 2014-05-26 16:52:59 +04:00
vbystricky
47b092e527 Optimize OpenCL LUT function 2014-05-26 16:52:59 +04:00
Ilya Lavrenov
50fa809a96 fixed cv::mixChannels 2014-05-26 14:20:16 +04:00
Ilya Lavrenov
ec3c68c8ea fix 2014-05-26 12:19:07 +03:00
Ilya Lavrenov
bd5e4c6c49 other kernels now use row scheme 2014-05-26 12:19:06 +03:00
Ilya Lavrenov
15738bf7ef multiple rows in KF kernel 2014-05-26 12:19:06 +03:00
Ilya Lavrenov
5ee398bfd6 multiple rows per work-item 2014-05-26 12:19:05 +03:00
Roman Donchenko
0a2d22bf31 Merge remote-tracking branch 'origin/2.4' into merge-2.4 2014-05-26 12:32:14 +04:00
Ilya Lavrenov
c83455d8a4 optimized cv::repeat 2014-05-23 13:16:27 +03:00
Alexander Alekhin
c43e32854a Merge pull request #2713 from alalek:icv_enable_fns 2014-05-23 13:35:45 +04:00
Roman Donchenko
09f9b35bc6 Merge pull request #2742 from StevenPuttemans:feature_3176 2014-05-22 18:03:56 +04:00
StevenPuttemans
fea4396023 Added more info on the data input variable of kmeans 2014-05-22 12:56:44 +02:00
Alexander Alekhin
694d7726b5 Merge pull request #2762 from ilya-lavrenov:ipp_sort 2014-05-22 12:30:53 +04:00
Alexander Alekhin
d940093fb5 Merge pull request #2723 from ilya-lavrenov:tapi_intel_vector_width 2014-05-21 19:56:00 +04:00
Alexander Alekhin
cf5dd88cf2 Merge pull request #2776 from ilya-lavrenov:tapi_meanstddev 2014-05-21 17:43:29 +04:00
Ilya Lavrenov
0e1b37675c added performance test for cv::meanStdDev with mask 2014-05-21 11:50:31 +04:00
Alexander Alekhin
7032a5a46c Merge pull request #2763 from ilya-lavrenov:tapi_perf_norm_relative 2014-05-21 11:44:25 +04:00
Roman Donchenko
7ea1bf3cf0 Fixed several problems found by PVS-Studio.
This fixes all problems from the article "Checking OpenCV with PVS-Studio"
<http://www.viva64.com/en/b/0191/> that are not already fixed and are
not in 3rdparty or the legacy module.

The problems fixed are two instances of useless code and one instance
of unspecified behavior (right-shifting a negative number).
2014-05-20 13:54:00 +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
Vadim Pisarevsky
c6113c6cb3 Merge pull request #2630 from isarandi:concat_corr 2014-05-19 17:36:20 +04:00
Vadim Pisarevsky
934cb6c452 Merge pull request #2680 from adrians:remove_cv_err 2014-05-19 17:35:03 +04:00
Vadim Pisarevsky
118b27f5b4 Merge pull request #2744 from jet47:kmeans-fix 2014-05-19 17:33:10 +04:00
Roman Donchenko
cba5235f08 Merge pull request #2698 from GregoryMorse:patch-2 2014-05-19 14:52:58 +04:00
Roman Donchenko
06b335b2d7 Merge pull request #2733 from StevenPuttemans:bug_2162 2014-05-19 13:04:54 +04:00
Kazuki Matsuda
fa292c3d8d Implimentation "cv::Mat::forEach"
I propose forEach method for cv::Mat and cv::Mat_.
This is solution for the overhead of MatIterator_<_Tp>.

I runs a test that micro opecode runs all over the pixel of cv::Mat_<cv::Point3_<uint8_t>>.
And this implementation 40% faster than the simple pointer, 80% faster than iterator.
With OpenMP, 70% faster than simple pointer, 95% faster than iterator (Core i7 920).

Above all, code is more readable.

My test code is here.
    https://gist.github.com/kazuki-ma/8285876

Thanks.
2014-05-18 11:01:45 +09:00
Ilya Lavrenov
1e46a99d9f added performance test for cv::norm with NORM_RELATIVE 2014-05-16 14:15:31 +04:00
Ilya Lavrenov
eb1dd1900b fixed conditions 2014-05-16 12:18:35 +04:00
Elena Gvozdeva
c7dc884855 T-API: optimized ocl_flip 2014-05-16 11:01:10 +04:00
Vladislav Vinogradov
746185652a add additional tests for different input cases 2014-05-15 12:08:38 +04:00
Vladislav Vinogradov
f16503743f use more accurate reshape 2014-05-15 12:08:01 +04:00
Alexander Mordvintsev
2756ae2051 exposed OpenCL-control functions to python 2014-05-14 17:42:21 +04:00
Roman Donchenko
f13e05cdcb Merge pull request #2740 from ilya-lavrenov:tapi_norm_fix 2014-05-14 12:40:19 +04:00
Alexander Alekhin
46d672dcc3 Merge pull request #2663 from ilya-lavrenov:ipp_slow 2014-05-14 12:30:05 +04:00
Vladislav Vinogradov
55a714c83b fix cv::kmeans function
reshape input matrix, since the function works with data
as with [N x dims] matrix
2014-05-13 18:00:17 +04:00
Ilya Lavrenov
d16e0b377f disabled IPP functions that slower than OpenCV 2014-05-13 15:06:38 +04:00
Roman Donchenko
4a24ecd176 Merge pull request #2731 from StevenPuttemans:bug_2626 2014-05-13 14:21:36 +04:00
Ilya Lavrenov
f64dfeb222 fix for cv::norm (norm_inf) 2014-05-13 14:21:07 +04:00
StevenPuttemans
006956c324 Fixing as suggested in bug 2626, made naming same for both C, C++ and python API 2014-05-13 11:02:01 +02:00
Roman Donchenko
ff2d76ec0d Merge pull request #2699 from GregoryMorse:patch-1 2014-05-13 11:58:25 +04:00
StevenPuttemans
a0a8fb4fd9 fixed bug 2626 2014-05-12 16:43:07 +02:00
Roman Donchenko
313a0ad255 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	modules/core/include/opencv2/core/internal.hpp
	modules/core/src/arithm.cpp
	modules/imgproc/src/imgwarp.cpp
	modules/objdetect/src/hog.cpp
2014-05-12 17:38:07 +04:00
Ilya Lavrenov
1e5694e082 heuristic for Intel 2014-05-12 16:08:39 +04:00
Alexander Alekhin
1f638a3e5b icv: enable functions 2014-05-12 15:38:38 +04:00
Alexander Alekhin
c74fed1fcf Merge pull request #2706 from ilya-lavrenov:ipp_2.4_warnings 2014-05-08 17:04:18 +04:00
Ilya Lavrenov
19a2495067 fixed IPP related warnings 2014-05-08 13:31:27 +04:00
Vladislav Vinogradov
77275031ab finally fix cv::subtract 2014-05-08 13:11:42 +04:00
Vladislav Vinogradov
629461c836 fix output matrix allocation in cv::subtract 2014-05-07 19:52:35 +04:00
Alexander Alekhin
07d5f56707 Merge pull request #2679 from alalek:ippicv_update 2014-05-07 18:24:41 +04:00
Alexander Alekhin
849228ac6a Merge pull request #2684 from ElenaGvozdeva:ippiDFT 2014-05-07 17:57:17 +04:00