2 min read

Two months after the OpenCV team announced the alpha release of Open CV 4.0, the final version 4.0 of OpenCV is here. OpenCV 4.0 was announced last week and is now available as a c++11 library that requires a c++ 11- compliant compiler. This new release explores features such as a G-API module, QR code detector, performance improvements, and DNN improvements among others.

OpenCV is an open source library of programming functions which is mainly aimed at real-time computer vision. OpenCV is cross-platform and free for use under the open-source BSD license.

Let’s have a look at what’s new in OpenCV 4.0.

New Features

  • G-API: OpenCV 4.0 comes with a completely new module opencv_gapi. G-API is an engine responsible for very efficient image processing, based on the lazy evaluation and on-fly construction of the processing graph.
  • QR code detector and decoder: OpenCV 4.0 comprises QR code detector and decoder that has been added to opencv/objdetect module along with a live sample. The decoder is currently built on top of QUirc library.
  • Kinect Fusion algorithm: A popular Kinect Fusion algorithm has been implemented, optimized for CPU and GPU (OpenCL), and integrated into opencv_contrib/rgbd module.  Kinect 2 support has also been updated in opencv/videoio module to make the live samples work.

DNN improvements

  • Support has been added for Mask-RCNN model.
  • A new Integrated ONNX parser has been added.
  • Support added for popular classification networks such as the YOLO object detection network.
  • There’s been an improvement in the performance of the DNN module in OpenCV 4.0 when built with Intel DLDT support by utilizing more layers from DLDT.
  • OpenCV 4.0 comes with experimental Vulkan backend that has been added for the platforms where OpenCL is not available.

Performance improvements

  • In OpenCV 4.0, hundreds of basic kernels in OpenCV have been rewritten with the help of “wide universal intrinsics”. Wide universal intrinsics map to SSE2, SSE4, AVX2, NEON or VSX intrinsics, depending on the target platform and the compile flags. This leads to better performance, even for the already optimized functions.
  • Support has been added for IPP 2019 using the IPPICV component upgrade.

For more information, check out the official release notes.

Read Next

Image filtering techniques in OpenCV

3 ways to deploy a QT and OpenCV application

OpenCV and Android: Making Your Apps See

Tech writer at the Packt Hub. Dreamer, book nerd, lover of scented candles, karaoke, and Gilmore Girls.