Commit Graph

9770 Commits

Author SHA1 Message Date
vbystricky
82a198a8f2 Fix epsilon calculation for sanity check in x32 build 2014-04-24 10:48:32 +04:00
Adrian Stratulat
4fb5680d91 Documentation - minor fix-ups 2014-04-23 17:30:27 +00:00
Aaron Kunze
1f8b41f390 Optimizes filter2D for Intel GPUs 2014-04-23 10:20:09 -07:00
Alexander Alekhin
dcc4d3640b Merge pull request #2651 from ilya-lavrenov:ipp_minmaxidx_3cn 2014-04-23 20:06:55 +04:00
Andrey Pavlenko
8114e071c2 Merge pull request #2655 from akarsakov:ipp_fix_pyramid 2014-04-23 16:27:33 +04:00
Elena Gvozdeva
2d71c094b3 IPP: CV::dft 2014-04-23 15:52:05 +04:00
Andrey Pavlenko
d93161812b Merge pull request #2620 from ilya-lavrenov:ipp_integration 2014-04-23 15:12:45 +04:00
Alexander Karsakov
f3d1001c5d Changed tests for support intersection between expected and actual lists of lines. 2014-04-23 13:18:47 +04:00
Alexander Karsakov
751264f88a Added ippiHoughLine_Region to cv::HoughLines 2014-04-23 11:59:36 +04:00
Alexander Alekhin
9badfa1f83 Merge pull request #2646 from ilya-lavrenov:ipp_remap 2014-04-23 11:51:01 +04:00
Alexander Alekhin
ba0ab8edb0 Merge pull request #2647 from vbystricky:ipp_norm 2014-04-23 11:50:13 +04:00
Alexander Alekhin
c2319285a9 Merge pull request #2649 from ilya-lavrenov:gabor_eps 2014-04-23 11:49:43 +04:00
Alexander Karsakov
92f855f0c3 Added checking destination size for pyrUp, pyrDown. 2014-04-23 11:47:15 +04:00
Alexander Karsakov
01123aaa36 Changed integer operations to float for Intel devices 2014-04-23 11:00:32 +04:00
Ilya Lavrenov
493679dc56 cv::minMaxIdx for cn > 1 2014-04-22 23:47:04 +04:00
Alexander Alekhin
e42057c487 Merge pull request #2648 from ilya-lavrenov:ipp_dist 2014-04-22 19:00:02 +04:00
Andrey Pavlenko
cd01d705c9 Merge pull request #2627 from akarsakov:ipp_pyramids 2014-04-22 17:19:27 +04:00
Ilya Lavrenov
5c0a4878d7 changes eps 2014-04-22 15:49:17 +04:00
vbystricky
dfe6adebb9 Fix error in arguments of ipp function 2014-04-22 15:07:03 +04:00
Alexander Alekhin
580559e1e6 Merge pull request #2618 from vbystricky:ipp_Scharr 2014-04-22 15:02:13 +04:00
Ilya Lavrenov
640c9667c7 fix for IPP ICV 2014-04-22 14:55:28 +04:00
Ilya Lavrenov
51e2a8ec96 fixes 2014-04-22 14:51:39 +04:00
vbystricky
e68a55cca2 Fix error in ipp function call 2014-04-22 14:35:27 +04:00
Ilya Lavrenov
46e40343f2 cv::remap 2014-04-22 14:33:55 +04:00
Alexander Alekhin
caf3ed284d Merge pull request #2645 from vbystricky:ipp_Convert 2014-04-22 13:45:31 +04:00
vbystricky
9cdb330452 Change test conditions 2014-04-22 13:27:20 +04:00
Roman Donchenko
4211d8fbd9 Merge pull request #2641 from SpecLad:merge-2.4 2014-04-22 12:01:03 +04:00
Andrey Pavlenko
6b986489ec Merge pull request #2643 from vbystricky:ipp_GaussianBorder 2014-04-22 11:55:06 +04:00
Andrey Pavlenko
34afc72c23 Merge pull request #2642 from vbystricky:ipp_resize 2014-04-22 11:53:26 +04:00
Andrey Pavlenko
6823b36974 Merge pull request #2624 from ElenaGvozdeva:ipp_DistanceTransform 2014-04-22 11:48:25 +04:00
vbystricky
f5c729396d Fix call of ippiConvert. 2014-04-22 10:50:35 +04:00
Andrey Pavlenko
7c3d5b056a Merge pull request #2612 from grkutty:pullreq/140319-bilateral-b 2014-04-22 09:32:39 +04:00
Artur Wieczorek
f27a886314 Fix for issue #3645 (http://code.opencv.org/issues/3645).
Implement missing features in CvCaptureCAM_VFW class.

Implemented missing CvCaptureCAM_VFW::setProperty() member function (handling CV_CAP_PROP_FRAME_WIDTH, CV_CAP_PROP_FRAME_HEIGHT, CV_CAP_PROP_FPS properties).
Extended CvCaptureCAM_VFW::setProperty()/getProperty() functions to handle also CV_CAP_PROP_FPS property.
Minor refactoring of CvCaptureCAM_VFW class.
2014-04-21 17:10:58 +02:00
vbystricky
bb12293251 Convert opencv border type to ipp border. Check supported border before call ipp function 2014-04-21 18:32:53 +04:00
vbystricky
42079b899c Fix error in call of ippResize 2014-04-21 17:26:03 +04:00
Elena Gvozdeva
3d7872b904 fixed 2014-04-21 16:59:55 +04:00
Roman Donchenko
4db12032dc Merge remote-tracking branch 'origin/2.4' into merge-2.4
No conflicts! Amazing!
2014-04-21 16:47:35 +04:00
Elena Gvozdeva
b4830d896c added ippiTrueDistanceTransform_8u32f_C1R 2014-04-21 15:17:56 +04:00
Elena Gvozdeva
0265247504 Added ippiDistanceTransform for cv::distanceTransform, maskSize=3,5 2014-04-21 15:17:55 +04:00
vbystricky
d9ef5bb5a7 Fix compile warnings 2014-04-21 15:02:38 +04:00
vbystricky
f52126725f Disable scharr in icv only configuration 2014-04-21 14:43:56 +04:00
vbystricky
d97f7da7a9 Fix setIppErrorStatus placement 2014-04-21 14:19:25 +04:00
Ilya Lavrenov
fe644ede19 cv::multiply 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
9cc80a68db fixed warnings 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
76c415ff49 cv::filterSpeckles 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
04abffeb16 cv::cornerHarris 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
8603c58f37 Mat::setTo(with mask) 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
0b678c2451 Mat::setTo(Scalar::all(0)) 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
3bd8211a72 Mat::copyTo 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
f7ec4a5c47 Mat::copyTo with mask 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
8d24a83c9c cv::flip inplace 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
5ca3d855a2 cv::transpose inplace 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
8da0e2b707 cv::accumulate 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
d453a598f8 cv::min/cv::max CV_64F 2014-04-21 13:14:55 +04:00
Ilya Lavrenov
3e173b701e cv::Laplacian 2014-04-21 13:14:54 +04:00
Alessandro Trebbi
3d25d70627 fix for compiling 2.4 opencv with xcode 5.1 2014-04-18 13:42:47 +02:00
vbystricky
650762419c Add setIppErrorStatus() 2014-04-18 15:13:34 +04:00
vbystricky
d17f40dc1f Fix error in code 2014-04-18 15:04:46 +04:00
vbystricky
32394df42d Add constant border fix call ipp function 2014-04-18 15:04:46 +04:00
vbystricky
79384beb60 Fix warning 2014-04-18 15:04:45 +04:00
vbystricky
160c964e4b Fix error 2014-04-18 15:04:45 +04:00
vbystricky
baa6ab1967 Change Scharr filter to new ipp functions 2014-04-18 15:04:45 +04:00
Andrey Pavlenko
82c67abbfa Merge pull request #2622 from ilya-lavrenov:ipp_sort 2014-04-18 14:47:06 +04:00
Ilya Lavrenov
9a109440df cv::reduce sum/avg 2014-04-18 14:44:12 +04:00
Ilya Lavrenov
aa5767421a cv::reduce (min/max to single column) 2014-04-18 14:39:33 +04:00
Ilya Lavrenov
1f6b719776 added ippisFlip to cv::sort 2014-04-18 14:37:46 +04:00
Ilya Lavrenov
26e8c6216f cv:;sortIdx 2014-04-18 14:31:27 +04:00
Ilya Lavrenov
d5513f522b cv::sort 2014-04-18 14:31:27 +04:00
Andrey Pavlenko
cb8743f9aa Merge pull request #2628 from ilya-lavrenov:ipp_error_handling 2014-04-18 13:37:35 +04:00
Alexander Karsakov
4f4a95299a Added setIppErrorStatus 2014-04-18 09:04:25 +04:00
Alexander Karsakov
6202f54a18 Fixed sanity check for integer type 2014-04-17 19:02:56 +04:00
Ilya Lavrenov
05a47d9014 cmd option 2014-04-17 18:06:14 +04:00
Ilya Lavrenov
87eb1b8fcc fixes in imgproc 2014-04-17 14:51:59 +04:00
Ilya Lavrenov
6f9ca3d77c fixed some errors 2014-04-17 11:08:02 +04:00
Ilya Lavrenov
ce0941160e added status check 2014-04-17 11:08:02 +04:00
Ilya Lavrenov
2cd7a913ed verbose errors 2014-04-17 11:07:01 +04:00
Ilya Lavrenov
f3c56f8310 first attemp 2014-04-17 11:07:01 +04:00
Maks Naumov
3e5a69d8ba remove unused variables in OCL_PERF_TEST_P() 2014-04-17 00:19:04 +03:00
Maks Naumov
dba0f9fc8f remove unused variable in erGrouping() 2014-04-17 00:16:07 +03:00
Maks Naumov
9e10c09f2d remove unused variable in LineSegmentDetectorImpl::compareSegments() 2014-04-17 00:14:13 +03:00
Alexander Karsakov
a7d12aabab Added epsilon for tests with float data type 2014-04-16 18:07:24 +04:00
Alexander Karsakov
793e980876 Added IPP Pyramid API functions to cv::buildPyramid 2014-04-16 17:10:20 +04:00
Andrey Pavlenko
e11d998cfb Merge pull request #2623 from alalek:icv_fix_color 2014-04-16 15:56:09 +04:00
Alexander Karsakov
ef2f5999ed Added perf test for cv::buildPyramid 2014-04-16 13:01:49 +04:00
Alexander Karsakov
8230f1fd68 Added ippiPyrUp_Gauss5x5 to cv::pyrUp 2014-04-16 11:59:32 +04:00
Alexander Karsakov
f218dffce6 Added ippiPyrDown_Gauss5x5 to cv::pyrDown 2014-04-16 11:39:10 +04:00
Alexander Karsakov
10cb660240 Fixed condition 2014-04-16 10:28:24 +04:00
unknown
c2f540d090 White space fixes 2014-04-15 09:32:34 -07:00
Andrey Pavlenko
80ef1f6753 Merge pull request #2621 from arkunze:pullreq/140319-resize-b 2014-04-15 19:56:56 +04:00
Andrey Pavlenko
a26bed16e6 Merge pull request #2617 from ElenaGvozdeva:ipp_matchTemplate 2014-04-15 19:56:38 +04:00
Andrey Pavlenko
dab8e920b0 Merge pull request #2565 from apavlenko:tapi_stitching 2014-04-15 19:56:11 +04:00
Andrey Pavlenko
7ba4212529 Merge pull request #2544 from alalek:perf_report_regressions 2014-04-15 16:17:39 +04:00
Alexander Alekhin
3bb6db522d ICV: mark missed functions 2014-04-15 15:55:44 +04:00
GregoryMorse
aa3c36f545 Update cap_msmf.cpp
Add support for WinRT in the MF capture framework by removing the disallowed calls to enumerate devices and create a sample grabber sink and adding framework for the MediaCapture interface and a custom sink which interfaces with the sample grabber callback interface. The change requires discussion for making it completely functional as redundancy is required given that if the source is a video file, the old code pathways must be used. Otherwise all IMFMediaSession, IMFMediaSource, and IMFActivate code must use a MediaCapture code path and all sink code must use the CMediaSink custom sink.

Support for the custom sink is extended to non-WinRT not for compatibility as Windows Vista client is a minimum regardless, but because it offers more flexibility, could be faster and is able to be used as an optionally different code path during sink creation based on a future configuration parameter.

My discussion and proposal to finish this change:
 Devices are so easily enumerated through WinRT Windows.Devices namespace that wrapping the calls in a library is quite a chore for little benefit though to get the various modes and formats could still be a worthwhile project. For now conditional compilation to remove videodevices and any offending non-video file related activity in videodevice. In my opinion, this is a different , far less fundamental and important change which can possibly be done as a future project and also much more easily implemented in C++/CX.

ImageGrabber has the IMFSampleGrabberSinkCallback replaced with a base class (SharedSampleGrabber) which also be is base class for ImageGrabberRT. This change is necessary as the custom sink does not require a thread to pump events which is done through MediaCapture already. IMFSampleGrabberSinkCallback is the common element between both models and that piece can be shared. Initializing the new ImageGrabberRT is as simple as passing an already initialized MediaCapture object and any video format/encoding parameters.

The concurrency event is necessary to wait for completion and is the way the underlying, IAsyncAction wrappers in the task library work as well. Native WIN32 event objects would be an option if HAVE_CONCURRENCY is not defined. I could even imagine doing it with sleep/thread yield and InterlockedCompareExchange yet I am not enthusiastic about that approach either. Since there is a specific compiler HAVE_ for concurrency, I do not like pulling it in though I think for WinRT it is safe to say we will always have it available though should probably conditionally compile with the Interlocked option as WIN32 events would require HAVE_WIN32.

It looks like C++/CX cannot be used for the IMediaExtension sink (which should not be a problem) as using COM objects requires WRL and though deriving from IMediaExtension can be done, there is little purpose without COM. Objects from C++/CX can be swapped to interact with objects from native C++ as Inspectable* can reinterpret_cast to the ref object IInspectable^ and vice-versa. A solution to the COM class with C++/CX would be great so we could have dual support. Also without #define for every WRL object in use, the code will get quite muddy given that the */^ would need to be ifdef'd everywhere.

Update cap_msmf.cpp

Fixed bugs and completed the change.  I believe the new classes need to be moved to a header file as the file has become to large and more classes need to be added for handling all the asynchronous problems (one wrapping IAsyncAction in a task and another for making a task out of IAsyncAction).  Unfortunately, blocking on the UI thread is not an option in WinRT so a synchronous architecture is considered "illegal" by Microsoft's standards even if implementable (C++/CX ppltasks library throws errors if you try it).  Worse, either by design or a bug in the MF MediaCapture class with Custom Sinks causes a crash if stop/start previewing without reinitializing (spPreferredPreviewMediaType is fatally nulled).  After decompiling Windows.Media.dll, I worked around this in my own projects by using an activate-able custom sink ID which strangely assigns 1 to this pointer allowing it to be reinitialized in what can only be described as a hack by Microsoft.  This would add additional overhead to the project to implement especially for static libraries as it requires IDL/DLL exporting followed by manifest declaration.  Better to document that it is not supported.

Furthermore, an additional class for IMFAttributes should be implemented to make clean architecture for passing around attributes as opposed to directly calling non-COM interface calls on the objects and making use of SetProperties which would also be a set up for an object that uses the RuntimeClass activation ID.

The remaining changes are not difficult and will be complete soon along with debug tracing messages.

Update and rename cap_msmf.h to cap_msmf.hpp

Update cap_msmf.cpp

Successful test - samples are grabbed

Update ppltasks_winrt.h

Library updated and cleaned up with comments, marshaling, exceptions and linker settings
Fixed trailing whitespace

Support VS 2013 and consistency cleanup and C++/CX object creation fixed
2014-04-15 18:32:23 +08:00
Vadim Pisarevsky
6a5a0fe803 Merge pull request #2016 from pemmanuelviel:kmeansppSquareDist 2014-04-15 13:31:48 +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
20aaa8fe77 Merge pull request #2560 from akarsakov:gaussianblur_integer 2014-04-15 13:21:25 +04:00
Vadim Pisarevsky
92db6786a9 Merge pull request #2578 from akrynski:patch-1 2014-04-15 13:21:08 +04:00
Vadim Pisarevsky
9cdd15e141 Merge pull request #2615 from krodyush:pullreq/140319-PyrLKOpticalFlow-fix 2014-04-15 13:19:45 +04:00
Roman Donchenko
534f9623f2 Merge pull request #2616 from SpecLad:merge-2.4 2014-04-15 12:06:13 +04:00
Elena Gvozdeva
3553e9379b fixed 2014-04-15 11:41:33 +04:00
unknown
36d33dd6c2 Review comments 2014-04-14 16:10:11 -07:00
Aaron Kunze
ebbac3c66d Optimizes OpenCL resize and optical flow to use image extension. 2014-04-14 16:09:17 -07:00
Andrey Pavlenko
8176e893c0 Merge pull request #2609 from alalek:tests_fixes 2014-04-14 18:54:01 +04:00
Andrey Pavlenko
5ff59af09d Merge pull request #2610 from ilya-lavrenov:ipp_cvtcolor 2014-04-14 18:52:07 +04:00
Alexander Karsakov
53bc93730c Added suppressing deprecation for ippiMulC_32f_C1IR 2014-04-14 16:38:59 +04:00
Roman Donchenko
799d2dabd6 Merge remote-tracking branch 'origin/2.4' into merge-2.4
Conflicts:
	modules/core/test/test_arithm.cpp
	modules/cuda/src/cascadeclassifier.cpp
	modules/imgproc/doc/geometric_transformations.rst
	modules/objdetect/src/hog.cpp
	modules/ocl/perf/perf_imgproc.cpp
	modules/ocl/src/gftt.cpp
	modules/ocl/src/moments.cpp
2014-04-14 16:08:02 +04:00
Ilya Lavrenov
884b706b3a fixed warning 2014-04-14 14:40:40 +04:00
Ilya Lavrenov
ad7f2311c0 cv::Laplacian 2014-04-14 14:34:28 +04:00
Ilya Lavrenov
2a051a124f cvtColor 2014-04-14 14:29:36 +04:00
Andrey Pavlenko
5522c14efc Merge pull request #2607 from ilya-lavrenov:warn_sup 2014-04-14 14:15:12 +04:00
krodyush
57992e0169 replace IPatchLocal[][] into *IPatchLocal to fix compilation error on some devices. 2014-04-14 13:23:12 +04:00
unknown
d2b4ee1e9b More intendation fixes 2014-04-11 21:44:12 -07:00
unknown
06df383675 Indent fixes 2014-04-11 19:14:01 -07:00
Alexander Alekhin
3a1a3da782 fix tests 2014-04-11 16:11:05 +04:00
Andrey Pavlenko
f104d5be8c Merge pull request #2600 from ilya-lavrenov:ipp_calc_hist 2014-04-11 15:18:04 +04:00
Andrey Pavlenko
fd90efc9dd Merge pull request #2593 from arkunze:pullreq/140319-color 2014-04-11 15:16:33 +04:00
Roman Donchenko
df8e28283f Merge pull request #2571 from MartinChodakowski:fix-old-python-doc-typos 2014-04-11 14:15:26 +04:00
Roman Donchenko
4c2db3d6e7 Merge pull request #2579 from maksqwe:test_operations_fix 2014-04-11 14:14:33 +04:00
Roman Donchenko
8ab224746b Merge pull request #2603 from maksqwe:unused_fix_2.4 2014-04-11 14:14:04 +04:00
Ilya Lavrenov
19d470749b added macro for denoting region for suppression of "Wdeprecated-declarations" 2014-04-11 13:45:20 +04:00
Andrey Pavlenko
925178749a removing SuppressWarning and CV_OPENCL_RUN 2014-04-11 13:09:19 +04:00
Alexander Alekhin
3578f0afe9 ocl: workaround for synchronization issue in ::map() 2014-04-11 13:09:18 +04:00
Alexander Alekhin
588658d1a3 tapi: stitching: fix documentation 2014-04-11 13:09:17 +04:00
Alexander Alekhin
026b13b3db TAPI: stitching: blender: fix OpenCL path & adjust test condition 2014-04-11 13:09:16 +04:00
Alexander Alekhin
e6cc1be7e8 stitching: allow to use dynamic DescriptorMatcher 2014-04-11 13:01:13 +04:00
Alexander Alekhin
06738468af TAPI: stiching: add custom OpenCL kernels for MultiBandBlender 2014-04-11 13:01:12 +04:00
Alexander Alekhin
c22d92c1cb stitching: extend logging 2014-04-11 13:01:11 +04:00
Alexander Alekhin
a7f69a37e3 stitching: use BORDER_CONSTANT in warp 2014-04-11 13:01:10 +04:00
Alexander Alekhin
c4a31a1ab1 TAPI: stitching: optimize compare operation 2014-04-11 13:01:10 +04:00
Alexander Alekhin
7a5c1babde TAPI: stitching: optimize exposure 2014-04-11 13:01:09 +04:00
Alexander Alekhin
2737e3c99b TAPI: stitching: workaround for problem getUMat() call 2014-04-11 13:01:08 +04:00
Alexander Alekhin
c1ea6f3c42 TAPI: stitching: improve warpers 2014-04-11 13:01:07 +04:00
Alexander Alekhin
89e3e448f5 features2d: workaround for 'utrainDescCollection' issue (PR #2142) 2014-04-11 13:01:07 +04:00
Alexander Alekhin
1d9808e5d5 TAPI: stitching, replaced Mat->UMat/_Array 2014-04-11 13:01:06 +04:00
Alexander Alekhin
8b6c5ade0e TAPI: added perf test for stitching 2014-04-11 13:01:05 +04:00
Andrey Pavlenko
6bfbcf02cb Merge pull request #2587 from ElenaGvozdeva:ipp_matchTemplate 2014-04-11 12:47:25 +04:00
Andrey Pavlenko
f7f4593936 Merge pull request #2581 from vbystricky:ipp_moments 2014-04-11 12:45:13 +04:00
Andrey Pavlenko
7ae547a208 Merge pull request #2597 from ilya-lavrenov:ipp_countnonzero 2014-04-11 12:43:24 +04:00
unknown
e032b5f5d5 Resolving conflicts after rebasing from public 2014-04-10 12:28:37 -07:00
Aaron Kunze
b59c517f98 Optimizations to OpenCL bilateral filter. 2014-04-10 12:15:13 -07:00
Ilya Lavrenov
b970ec7dae parallel version 2014-04-10 19:39:00 +04:00
Elena Gvozdeva
43c29a6751 fixed 2014-04-10 17:26:38 +04:00
Alexander Karsakov
7369cfd9ec Added perf test for cornerMinEigenVal 2014-04-10 16:09:48 +04:00
Vadim Pisarevsky
f417c79d16 Merge pull request #1932 from seth-planet:master 2014-04-10 13:36:14 +04:00
Vadim Pisarevsky
a0bf7f82ba Merge pull request #2067 from pemmanuelviel:groupWiseCenterChooser 2014-04-10 13:33:29 +04:00
Vadim Pisarevsky
dae04aacc3 Merge pull request #2575 from rold2007:Bugfix_1437 2014-04-10 13:31:33 +04:00
Vadim Pisarevsky
b66adc81a4 Merge pull request #2599 from maksqwe:test_calibration_2.4 2014-04-10 13:30:37 +04:00
Vadim Pisarevsky
b5755b1228 Merge pull request #2588 from vpisarev:fix_samples_n_unused 2014-04-10 13:30:20 +04:00
Ilya Lavrenov
b2379b51b5 cv::countNonZero 2014-04-10 13:21:52 +04:00