Opencv3

Version 8 (Sergey Sivolgin, 2014-08-20 05:31 pm)

1 1
h1. Opencv3
2 1
3 2 Sergey Sivolgin
h2. Transparent API
4 3 Sergey Sivolgin
5 2 Sergey Sivolgin
The transparent OpenCV API allows application developers to automatically utilize various kinds of accelerators (GPUs, APUs, DSPs etc.) that may be available on the host platform. No or little changes to OpenCV-based applications may be needed to engage the acceleration. Starting with OpenCV 3.0 OpenCL kernels were integrated inside OpenCV API: it does not need to specify cv::ocl::Canny, cv::gpu::Canny etc; cv::Canny just works on both CPU and GPU. Because of that ocl module became redundant and was removed.
6 1
7 1
8 2 Sergey Sivolgin
h2. Intel® IPP
9 4 Sergey Sivolgin
10 2 Sergey Sivolgin
OpenCV 3.0 supports optimization on x86 and x64 platforms with Intel® Integrated Performance Primitives (Intel® IPP) by two ways: with standalone Intel® IPP that should be installed separately and with special subset of Intel® IPP 8.1.1 functions for image processing and computer vision, IPP-ICV libraries, that contain more than 700 functions and support AVX2, SSE4.x, SSE2 instructions sets. Intel Corporation granted OpenCV Foundation and all our users the right to use IPP-ICV libraries free of charge for both non-commercial and commercial use. Optimization with IPP-ICV is enabled by default on the supported platforms. Intel® IPP optimization (with both standalone and IPP-ICV libraries) is available for the following platforms:
11 2 Sergey Sivolgin
* Windows (32-bit and 64-bit)
12 2 Sergey Sivolgin
* Linux (32-bit and 64-bit)
13 2 Sergey Sivolgin
* Mac OS (32-bit and 64-bit)
14 2 Sergey Sivolgin
* Android (32-bit)
15 3 Sergey Sivolgin
16 2 Sergey Sivolgin
In OpenCV 3.0 Intel® IPP usage was revised and extended with new 58 family functions that should give visible performance improvement on all supported platforms and instructions sets. As an example, the overall performance gain is about 40% comparing OpenCV with and without Intel® IPP 8.1.1/IPP-ICV usage and running on Intel Haswell processor. Some of examples are on the chart below.
17 1
18 5 Sergey Sivolgin
!ocv3_ipp_speedup.jpg!
19 5 Sergey Sivolgin
20 3 Sergey Sivolgin
21 1
h3. Intel® IPP Asynchonous
22 3 Sergey Sivolgin
23 2 Sergey Sivolgin
OpenCV 3.0 includes support for Intel® IPP Asynchronous C/C++ library by implemented inline conversion functions between Intel® IPP Asynchronous objects (IPPhppMatrix) and OpenCV objects (cv::Mat). OpenCV tutorial contains an example demonstrating how to use conversion functions and work with Intel® IPP Asynchronous functions.
24 1
25 1
h2. opencv_contrib repository
26 1
27 1
h2. New Functionality
28 1
29 1
h3. Computational phography
30 1
31 1
h3. Bindings
32 1
33 1
h3. Tracking
34 1
35 6 Sergey Sivolgin
h3. Camera support
36 7 Sergey Sivolgin
37 6 Sergey Sivolgin
Created new iVideoCapture class in VideoIO module. It uses data flow more optimal by memory copies minimization on both CPU and GPU by applied Transparent API. Currently this class supports Intel Perceptual Computing devices (Creative Senz3D cameras) and DirectShow devices.
38 6 Sergey Sivolgin
39 1
h3. Etc.
40 1
41 1
...
42 1
43 1
h2. Migrating from OpenCV 2 to OpenCV 3.
44 1
45 1
46 1