赞
踩
https://github.com/opencv/opencv/wiki/ChangeLog
4.0.0-alpha: September, 2018
4.0.0-beta: October, 2018
We are moving towards OpenCV 4.0 gold. Here is what's new in OpenCV 4.0 alpha/beta:
OpenCV is now C++11 library and requires C++11-compliant compiler. Note that OpenCV 3.x can also be built as C++11 library by passing -DENABLE_CXX11=ON
flag to CMake. Now this is the only option so the flag is not needed and is not available anymore.
cv::String
and cv::Ptr
. Now cv::String == std::string
and cv::Ptr
is a thin wrapper on top of std::shared_ptr
. Also, on Linux/BSD for cv::parallel_for_
we now use std::thread
's instead of pthreads.DNN improvements
Added support for Mask-RCNN model. Follow a guide and use a python sample.
Integrated ONNX parser. We now support many popular classification networks. YOLO object detection network in partially supported as well (ONNX version of YOLO lacks some final layers that actually give you the list of rectangles). Thanks to Lubov Batanina for her first-time contribution to OpenCV!
Further improved performance of DNN module when it's built with Intel DLDT support by utilizing more layers from DLDT.
API changes: by default, blobFromImage
methods family do not swap red and blue channels and do not crop the input image. Beware that this API change has also been propagated to OpenCV 3.4 branch.
Added shortcuts for the most popular deep learning networks supported by OpenCV. You may specify an alias name of model to skip pre-processing parameters and even paths to models! In example, instead of
python object_detection.py --model opencv_face_detector.caffemodel --config opencv_face_detector.prototxt --mean 104 177 123 --width 300 --height 300
you can type just
python object_detection.py opencv_fd
Fixed OpenCL target for AMD and NVIDIA GPUs. Now you may enable DNN_TARGET_OPENCL
for your model without extra environment variables. Please note that DNN_TARGET_OPENCL_FP16
is tested on Intel GPUs only so it still requires additional flags.
Performance improvements
CPU_BASELINE=AVX2
CMake flag, you can get extra 15-30% speed improvement for certain image processing operations. By OpenCV 4.0 gold we plan to translate many more kernels to such intrinsics and also employ our dynamic dispatching mechanism, so that on x64 platform AVX2-optimized kernels are always built-in and could be selected on-fly if the actual hardware supports such instructions (without having to change CPU_BASELINE
). Big thanks to Sayed Adel for VSX backend and the initial (but rather complete!) AVX2 backend of the wide universal intrinsics! Big thanks to Vitaly Tuzov for conversion of many functions in OpenCV to wide universal intrinsics.opencv
opencv_contrib
August, 2018
OpenCV 3.4.3 has been released, with further extended dnn module, documentation improvements, some other new functionality and bug fixes.
TBD
opencv (35 contributors)
opencv_contrib (13 contributors)
July, 2018
OpenCV 3.4.2 has been released, with further extended dnn module, documentation improvements, some other new functionality and bug fixes.
OpenCV 3.4.x development is switched from "master" to "3.4" branch. "master" branch is used for development of upcoming OpenCV 4.x releases.
Bugfixes / optimizations / small improvemets should go into "3.4" branch. We will merge changes from "3.4" into "master" regularly (weekly/bi-weekly).
DNN improvements
DNN_TARGET_OPENCL_FP16
for half-precision floating point arithmetic of deep learning networks using OpenCL. Just use net.setPreferableTarget(DNN_TARGET_OPENCL_FP16)
.opencv (83 contributors)
opencv_contrib (17 contributors)
February, 2018
OpenCV 3.4.1 has been just released, with further extended dnn module, multiple bug fixes and other small and big improvements.
Added support for quantized TensorFlow networks. We are now able to load 8-bit matrices of weights. The computations are still done in FP32 (with plans to add FP16 path), but even now it's possible to compress the networks so that they consume less disk space. For example, our face detector can be modified to read and use our 8-bit quantized ResNet-based face detection network (pass it and this description file into cv::dnn::readNetFromTensorFlow()
). And the face detection network takes just 2.7Mb.
OpenCV is now able to use Intel DL inference engine as DNN acceleration backend. It gives quite noticeable performance boost on many models:
Model | CPU, default backend | CPU, Inference Engine backend, MKL-DNN plugin | Model Optimizer + Inference Engine, MKL-DNN plugin (a standalone application) |
---|---|---|---|
AlexNet | 14.44ms | 12.09ms (x1.19) | 12.05ms |
GoogLeNet | 15.26ms | 8.92ms (x1.71) | 8.75ms |
ResNet-50 | 35.78ms | 19.53ms (x1.83) | 19.4ms |
SqueezeNet v1.1 | 4.01ms | 2.60ms (x1.54) | 2.5ms |
MobileNet-SSD from Caffe | 21.62ms | 8.89ms (x2.43) | |
DenseNet-121 | 61.71ms | 28.21ms (x2.18) | |
OpenPose (COCO) @ 368x368 | 885.57ms | 544.05ms (x1.62) | |
OpenPose (MPI) @ 368x368 | 879.13ms | 533.96ms (x1.64) | |
OpenPose (MPI, 4 stages) @ 368x368 | 605.63ms | 378.49ms (x1.60) | |
OpenFace | 3.84ms | 2.59ms (x1.48) |
Added AVX-512 acceleration to the performance-critical kernels, such as convolution and fully-connected layers. Some networks, such as SSD object detection and ENet semantical segmentation, have been accelerated by ~20%.
SSD-based models trained and retrained in TensorFlow Object Detection API can be easier imported by a single invocation of python script making a text graph representation. Read a wiki page for details.
Performance of pthreads backend of cv::parallel_for_()
(which is used by default on Linux/Android, unless you installed TBB or chose OpenMP) has been greatly improved on many core machines, in particular 10-core Core i9. That let us to increase performance of DNN inference quite significantly (up to 6x) on such machines.
OpenCL backend has been expanded to cover more layers. The layer fusion has also been improved to increase the speed even further. It shall be reminded that in order to enable OpenCL backend (if it's available on the host machine) one should call the method my_dnn_net.setPreferableTarget(cv::dnn::DNN_TARGET_OPENCL)
before the inference, where my_dnn_net
is the network loaded using cv::dnn::readNetFromCaffe()
, cv::dnn::readNetFromTensorFlow()
etc.
Several bugs in various layers have been fixed; in particular, SSD priors are now computed slightly differently so that we can more accurate bounding boxes when running SSD on variable-size images.
C++11: added support of multi-dimentional cv::Mat
creation via C++ initializers lists:
auto K = Mat_<double>({3, 3}, {0, -1, 0, -1, 5, -1, 0, -1, 0});
C++17: OpenCV source code and tests comply C++17 standard
opencv_contrib: added GMS matching
opencv_contrib: added CSR-DCF tracker
opencv_contrib: several improvements in OVIS module (OGRE 3D based visualizer)
~248 patches have been merged since OpenCV 3.4.0
203 issues have been closed
opencv
- $ git shortlog --no-merges -ns 3.4.0..3.4.1
- 98 Alexander Alekhin
- 27 Dmitry Kurtaev
- 27 Li Peng
- 27 Maksim Shabunin
- 10 Fangjun Kuang
- 6 Vitaly Tuzov
- 6 luz.paz
- 5 Namgoo Lee
- 4 Tomoaki Teshima
- 3 Arjan van de Ven
- 3 Glue Crow
- 3 LaurentBerger
- 3 Sayed Adel
- 3 Suleyman TURKMEN
- 2 Alessandro de Oliveira Faria (A.K.A.CABELO)
- 2 Arthur Williams
- 2 Gregory Morse
- 2 Hamdi Sahloul
- 2 Pavel Rojtberg
- 2 Rostislav Vasilikhin
- 2 Steven
- 2 Woody Chow
- 2 berak
- 2 csukuangfj
- 2 oqtvs
- 2 victor-ludorum
- 2 wxzs5
- 1 Aaron Bray
- 1 Aditya Rohan
- 1 Alexander Nesterov
- 1 Ali Sentas
- 1 Ce Zheng
- 1 Chris Hall
- 1 Coralie RACHEX
- 1 Csaba Keszegh
- 1 David Koller
- 1 Elena Gvozdeva
- 1 Eric Wang
- 1 Erik Man
- 1 Florian Echtler
- 1 GlueCrow
- 1 Harshal Nishar
- 1 Jozef Mlich
- 1 Jun Zhao
- 1 Li, Peng
- 1 Mark Harfouche
- 1 Moshe
- 1 PalkoNazar
- 1 Patrik Huber
- 1 Philipp Hasper
- 1 Ryo Suzuki
- 1 Rémi Ratajczak
- 1 SarenT
- 1 Stanislaw Halik
- 1 Sui Libin
- 1 Tom Becker
- 1 Travers
- 1 Vinay Sharma
- 1 Ya-Chiu Wu
- 1 catree
- 1 denmatfoton
- 1 elenagvo
- 1 jasjuang
- 1 mworchel
- 1 razerhell
- 1 sergeybe
- 1 take1014
- 1 tobycollins
- 1 woody.chow
- 1 yuki takehara
opencv_contrib
- $ git shortlog --no-merges -ns 3.4.0..3.4.1
- 10 Pavel Rojtberg
- 4 Hamdi Sahloul
- 3 Alexander Alekhin
- 3 KUANG Fangjun
- 2 Maksim Shabunin
- 2 Vitaly Tuzov
- 2 berak
- 2 catree
- 1 Adam
- 1 Andrej Muhič
- 1 Fangjun Kuang
- 1 John Cant
- 1 Kv Manohar
- 1 Plamen Dimitrov
- 1 Suleyman TURKMEN
- 1 Yujun Shi
- 1 adrianheron
- 1 caseymcc
- 1 klchang
December, 2017
OpenCV 3.4 (NY 2018 edition) has been released, with further extended dnn module, some other new functionality, improvements and bug fixes.
The results of yet another GSoC 2017 OpenCV project on implementing new background subtraction algorithms have been integrated. Please, check the script, the algorithms LSBP-*
and GSOC-*
.
opencv_dnn has been further improved and extended:
INTER_LINEAR_EXACT
interpolation mode. In many places in the library we've switched to this new resize. Bit-exact
means that on any platform with any compiler etc. you will get absolutely the same results for the same scale factor values, there will be no difference (even +/-1) in pixel values in the output image. The function complements a few other bit-exact algorithms added in OpenCV 3.3.1: cvtColor(RGB<=>Lab, RGB<=>Luv)
.opencv
- 103 Alexander Alekhin
- 25 Dmitry Kurtaev
- 23 Maksim Shabunin
- 17 Li Peng
- 17 elenagvo
- 14 Vitaly Tuzov
- 10 Suleyman TURKMEN
- 10 catree
- 8 Tomoaki Teshima
- 6 Sayed Adel
- 5 LaurentBerger
- 5 Vladislav Sovrasov
- 5 Wu Zhiwen
- 4 Pavel Rojtberg
- 4 Rostislav Vasilikhin
- 4 Vadim Pisarevsky
- 3 tribta
- 2 Bhanudutta
- 2 Fakabbir Amin
- 2 Mattia Rizzolo
- 2 Ryan Fox
- 2 Shinya Ishikawa
- 2 berak
- 2 dtmoodie
- 1 Akhilesh Kumar
- 1 Alexander Nesterov
- 1 Alexander Rybnikov
- 1 Amro
- 1 Andrey Smorodov
- 1 Arthur Pastel
- 1 Cartucho
- 1 Christof Kaufmann
- 1 David Geldreich
- 1 Elena Gvozdeva
- 1 Florian Echtler
- 1 Hamdi Sahloul
- 1 Haritha
- 1 Iago Suárez
- 1 Igor Wodiany
- 1 Ivan Pozdeev
- 1 Jacob MacRitchie
- 1 James Perkins
- 1 Jcrist99
- 1 Jiri Horner
- 1 Jonathan Viney
- 1 Juha Reunanen
- 1 KUANG Fangjun
- 1 Mikhail Paulyshka
- 1 Muhammad Abdullah
- 1 Nickola
- 1 Pushkal Katara
- 1 Riyuzakii
- 1 Roman Cattaneo
- 1 Shresth Verma
- 1 Simon Guo
- 1 Wei Hao
- 1 Wu, Zhiwen
- 1 alessandro faria
- 1 gdkessler
- 1 klchang
- 1 woody.chow
- 1 wxzs5
- 1 zhijackchen
- 1 zhongwuzw
opencv_contrib
- 20 sghoshcvc
- 18 Vladislav Sovrasov
- 9 Alexander Alekhin
- 6 Vitaly Tuzov
- 6 berak
- 5 Hamdi Sahloul
- 5 Maksim Shabunin
- 4 Pavel Rojtberg
- 4 Suman Ghosh
- 3 LaurentBerger
- 3 Leonardo Brás
- 2 Suleyman TURKMEN
- 1 Adam Gradzki
- 1 Anup Parikh
- 1 Dmitry Kurtaev
- 1 Egor Pugin
- 1 Leonardo lontra
- 1 Oleg Kalachev
- 1 Vladislav Samsonov
- 1 cDc
- 1 fiammante
- 1 klchang
- 1 kurnianggoro
- 1 kushalvyaskv
- 1 sukhad-app
October, 2017
OpenCV 3.3.1 with extended dnn module, most of GSoC 2017 results integrated and other improvements has been released.
Results of several GSoC 2017 projects have been integrated:
One of GSoC 2017 projects that deserves a dedicated section in the change log:
opencv_dnn has been further improved and extended; new samples have been added:
Face detection sample and the light-weight Resnet-10 + SSD based network have been added. See the example for details. The detector runs around 20-50FPS on a normal desktop/laptop, and the network is just 10MB (FP32) or even 5MB (FP16).
The partial Darknet parser, enough to parse YOLO models, as well as the layers to support a few variations of YOLO object detection networks have been integrated. See the corresponding sample.
Preliminary support for FP16 networks has been added. We do not do computations in FP16 yet, we convert FP16 coeffs to FP32 when loading the networks. In the case of Caffe we rely on the following fork, whereas in the case of TF we use the official version.
Several new layers have been added to support text detection, image colorization and some other networks.
OpenCV has been optimised for PPC64 (64-bit PowerPC) architecture by mapping the universal intrinsics to VSX. Big thanks to Sayed Adel for the patches.
OpenCL acceleration path of the bioinspired module has been restored. See the bioinspired-based HDR/Background segmentation example. On Iris Pro HD5200 we get ~5x acceleration over the CPU branch.
KCF tracker has been accelerated by ~40%.
opencv
- 87 Alexander Alekhin
- 32 Dmitry Kurtaev
- 20 Vladislav Sovrasov
- 19 Rostislav Vasilikhin
- 19 tribta
- 14 Suleyman TURKMEN
- 10 saskatchewancatch
- 9 Tomoaki Teshima
- 8 Maksim Shabunin
- 6 Ningxin Hu
- 5 LaurentBerger
- 5 berak
- 4 Pavel Rojtberg
- 4 Steven Puttemans
- 4 Vitaly Tuzov
- 3 Pavel Vlasov
- 3 KUANG Fangjun
- 3 Boris Fomitchev
- 3 Igor Wodiany
- 2 Ryan Fox
- 2 Nishant Arora
- 2 Emanuele Ruffaldi
- 2 Wu Zhiwen
- 2 Tony0
- 2 RAJ NATARAJAN
- 2 Adi Shavit
- 2 Christof Kaufmann
- 2 Aleksandr Rybnikov
- 2 Sayed Adel
- 2 stalin18
- 2 Jiri Horner
- 2 Jasper Shemilt
- 2 Zoltán Mizsei
- 2 blendin
- 1 Ricardo Ribalda Delgado
- 1 Sayan Sinha
- 1 Sebastian Höffner
- 1 Sergey Alexandrov
- 1 Vivek Wisdom
- 1 Vladislav Vinogradov
- 1 Woody Chow
- 1 Yaron Inger
- 1 bradford barr
- 1 catree
- 1 jodrescher
- 1 joncrall
- 1 jrobble
- 1 lzx1413
- 1 mevatron
- 1 pengli
- 1 tz70s
- 1 vipinanand4
- 1 678098
- 1 woody.chow
- 1 Adam Rankin
- 1 Alex Zatsman
- 1 AlexeyAB
- 1 Arvid Piehl Lauritsen Böttiger
- 1 Balint Cristian
- 1 Benoit Blanchon
- 1 Bisaloo
- 1 Camille Barneaud
- 1 Congxiang Pan
- 1 David Geldreich
- 1 Deric Crago
- 1 Faheel Ahmad
- 1 Geoff McIver
- 1 Gregory Morse
- 1 Guillaume Jacob
- 1 James Perkins
- 1 Jeremy Maitin-Shepard
- 1 John Hany
- 1 KUANG, Fangjun
- 1 Kerry Billingham
- 1 Khem Raj
- 1 Kim Lindberg Schwaner
- 1 Lewis B
- 1 Li Peng
- 1 Maarten de Vries
- 1 Martin Seyferth
- 1 Mattia Rizzolo
- 1 Patel, Nilaykumar K
- 1 Peter Fischer
- 1 Peter J. Stieber
- 1 Philipp Hasper
- 1 Pranit Bauva
- 1 Raymond Kirk
opencv_contrib
- 19 Alexander Alekhin
- 19 Vladislav Sovrasov
- 13 Anguelos Nicolaou
- 4 Suleyman TURKMEN
- 3 Vitaly Tuzov
- 3 acyen
- 3 jaco
- 2 Woody Chow
- 2 Maksim Shabunin
- 2 LaurentBerger
- 2 Andrew Hundt
- 2 Fernando Martin
- 1 baudenri
- 1 f3rm4rf3r
- 1 jasjuang
- 1 jrobble
- 1 klchang
- 1 Ahmed Yarub Hani
- 1 woody.chow
- 1 Albert
- 1 Cristian Duguet
- 1 Dmitry Kurtaev
- 1 Felix Wehnert
- 1 Francis Charette Migneault
- 1 Gregor Kovalčík
- 1 Jaykob
- 1 Linus Ericsson
- 1 Nuzhny007
- 1 Piotr Majkrzak
- 1 atinfinity
August, 2017
OpenCV 3.3 with accelerated dnn module, moved to the main repository, first-ever appearance of Halide in OpenCV, multiple optimizations and other improvements has been released.
opencv_dnn module has been moved from the contribution repository (opencv_contrib) to the main repository (opencv) and was significantly improved:
High-level API has been modified and is even more convenient now.
The regression tests have been expanded, some new tests have been added. Now, there are 46 of them.
Many bugs have been fixed in Torch and TF loaders, as well as in some processing layers. Now we check that on a certain set of networks the results from OpenCV DNN match or very close to the results from the original frameworks. We also check that the results claimed in the papers for such networks are achievable with OpenCV DNN.
Performance has been substantially improved. Layer fusion has been implemented and some performance-critical layers have been optimized using AVX, AVX2, SSE and NEON. An external BLAS (OpenBLAS, MKL, ATLAS) is not needed anymore.
New samples in C++ and Python have been added.
The optional Halide backend has been added. It can accelerate OpenCV DNN on GPU when the GPU is fast enough.
See Deep Learning in OpenCV for details about the module.
OpenCV can now be configured and built as C++ 11 library. Pass -DENABLE_CXX11=ON
to CMake. On some modern Linux distributions, like the latest Fedora, it’s enabled by default.
New features for C++ 11 users have been added:
// 1. use parallel_for_ with lambda to compute Mandelbrot fractal parallel_for_(Range(0, img.rows*img.cols), [&](const Range& r) { for (int r = r.start; r < r.end; r++) { int i = r/img.cols, j = r%img.cols, t, maxiter=500; complex<float> z0(j * 2.7f/img.cols – 2.1f, i * 2.4f/img.rows – 1.2f); for (t = 0; t < maxiter; t++) { if (z.real()*z.real()+z.imag()*z.imag()> 4.f) break; z = z*z + z0; } img.at<uchar>(i, j)=uchar(sqrt((float)t/maxiter)*255); }}); // 2. using C++ 11 initializers auto A = Mat_<double>({0, -1, 0, -1, 5, -1, 0, -1, 0}).reshape(1, 3); Vec_<int, 10> digits = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; // 3. apply LUT to 8-bit image in C++ 11 style Mat_<Vec3b> img = imread("lena.jpg"); for( auto& pixel: img ) { pixel[0] = gamma_lut[pixel[0]]; pixel[1] = gamma_lut[pixel[1]]; pixel[2] = gamma_lut[pixel[2]]; }
Support for hardware-accelerated video encoding/decoding using Intel GPUs through Intel Media SDK has been implemented for Linux (in the form of backends for cv::VideoCapture
and cv::VideoWriter
).
Encoding and decoding of raw H.264 and MPEG1/2 video streams is supported, media containers are not supported yet.
Note that system kernel should have specific support for hardware as mentioned in the Media SDK/Server Studio installation guide. In some cases kernel recompilation will be needed.
See also: https://github.com/Intel-Media-SDK
opencv
- 210 Alexander Alekhin
- 36 Vladislav Sovrasov
- 35 Tomoaki Teshima
- 31 Vitaly Tuzov
- 26 Maksim Shabunin
- 21 Fangjun KUANG
- 17 chacha21
- 14 LaurentBerger
- 12 berak
- 11 Rostislav Vasilikhin
- 11 catree
- 10 dkurt
- 8 Matthias Grundmann
- 8 Pavel Rojtberg
- 8 Pyotr Chekmaryov
- 8 Vadim Pisarevsky
- 8 Woody Chow
- 7 Aleksandr Rybnikov
- 7 atinfinity
- 6 Hamdi Sahloul
- 6 vskarlsruhe
- 5 Jiri Horner
- 5 KUANG, Fangjun
- 5 Michele Cancilla
- 5 StevenPuttemans
- 4 Dal Rupnik
- 4 Naba Kumar
- 4 Pavel Vlasov
- 4 chrizandr
- 4 saskatchewancatch
- 3 Claudio
- 3 Jaime O. Rios
- 3 Peter Würtz
- 3 PkLab.net
- 3 Suleyman TURKMEN
- 3 Wenju He
- 3 Yuriy Solovyov
- 3 abratchik
- 3 nnorwitz
- 3 oulenz
- 2 Alexander Broemmer
- 2 Artem Lukoyanov
- 2 Chaoshuai Lu
- 2 Drew Hintz
- 2 Kerry Billingham
- 2 LukeZhu
- 2 Matt Bennett
- 2 Philipp Hasper
- 2 Rink Springer
- 2 Sergiu Deitsch
- 2 Tetragramm
- 2 Tong Ke
- 2 Utkarsh Sinha
- 2 jveitchmichaelis
- 2 lewisjb
- 2 mshabunin
- 2 tribta
- 2 utibenkei
- 2 ville-v
- 2 ziggy90127
- 1 Adeel
- 1 Adeel Ahmad
- 1 Alessandro Gentilini
- 1 Alexander Duda
- 1 Amro
- 1 André Mewes
- 1 Anupam Sobti
- 1 Arek
- 1 Arkadiusz Raj
- 1 Arnaud Brejeon
- 1 BadrinathS
- 1 Bragadeesh
- 1 Brian Armstrong
- 1 Bryce Evans
- 1 Cartucho
- 1 Christof Kaufmann
- 1 David Carlier
- 1 Dinar
- 1 Dinar Ahmatnurov
- 1 Dmitry Kurtaev
- 1 Duncan Barber
- 1 Egor Pugin
- 1 Fernando Iglesias Garcia
- 1 Frank de Brabander
- 1 Gabriel B. Nunes
- 1 Guilherme William Guedes
- 1 Hans Gaiser
- 1 Ilija Puaca
- 1 Ismo Puustinen
- 1 James Clarke
- 1 Jejos
- 1 Jeremy Maitin-Shepard
- 1 Jinay Patel
- 1 Jiří Sejkora
- 1 Jon Eyolfson
- 1 Jose Gómez
- 1 Juha Reunanen
- 1 Julian Exner
- 1 Julian Tanke
- 1 Kene Udeh
- 1 Kuan-Yi Li
- 1 Kyle Fleming
- 1 Lorena García
- 1 Louie Helm
- 1 Mark Szumowski
- 1 Martin Ganeff
- 1 Neil Shipp
- 1 Neio Zhou
- 1 Nicholas Nadeau
- 1 Ninad P.Chaudhari
- 1 Paolo Perkovic
- 1 Pascal Thomet
- 1 Patrik Huber
- 1 Piotr Semenov
- 1 PkLab
- 1 Raj Natarajan
- 1 Robert Bragg
- 1 Robin Chavignat
- 1 Ryan Pavlik
- 1 Ryuhei Mori
- 1 Sadika Sumanapala
- 1 Satoshi Tanaka
- 1 Sergey
- 1 Shuyu Liang
- 1 Sixela David
- 1 Steve
- 1 Steven Puttemans
- 1 Tim King
- 1 Tony Lian
- 1 Tony Theodore
- 1 Vadzim Piatrou
- 1 Werner Palfinger
- 1 Yakun Wang
- 1 Yuval Langer
- 1 Zhiwei Su
- 1 brian-armstrong-discord
- 1 cDc
- 1 cclauss
- 1 daB0bby
- 1 gylns
- 1 hailong-wang
- 1 huangqinjin
- 1 insoow
- 1 ionut
- 1 jexner
- 1 jqly
- 1 krishraghuram
- 1 kvaghel1
- 1 likan999
- 1 logic1988
- 1 mrquorr
- 1 mschoeneck
- 1 msk-repo01
- 1 n001519
- 1 neok-m4700
- 1 orisano
- 1 puqeko
- 1 q
- 1 remi
- 1 rmensing
- 1 sovrasov
- 1 umbraclet16
- 1 vartenkov
- 1 wykvictor
- 1 wzw
- 1 xuning0
- 1 ylemkimon
- 1 zongwave
opencv_contrib
- 44 Vladislav Sovrasov
- 24 Alexander Alekhin
- 14 Aleksandr Rybnikov
- 11 Hamdi Sahloul
- 11 dkurt
- 9 Vadim Pisarevsky
- 7 berak
- 6 LaurentBerger
- 5 Maksim Shabunin
- 4 Balint Cristian
- 4 arrybn
- 3 Dmitry Kurtaev
- 3 Li Peng
- 3 Pavel Rojtberg
- 3 Pavel Vlasanek
- 3 Philipp Hasper
- 3 Suleyman TURKMEN
- 3 jexner
- 2 Kumataro
- 2 Steven Puttemans
- 2 Vladislav Samsonov
- 2 Woody Chow
- 2 atinfinity
- 2 lhelontra
- 2 mshabunin
- 2 np-csu
- 2 olivierpascal
- 1 Diego
- 1 Edgar Riba
- 1 Erik Sandrén
- 1 Erwan Normand
- 1 Haaris
- 1 Jcrist99
- 1 Jeremy Nicola
- 1 Julian Exner
- 1 Justin Hotchkiss Palermo
- 1 Kiran Pradeep
- 1 Leonardo lontra
- 1 Lorena García
- 1 Max-Wang
- 1 Natsuki Kawai
- 1 Rostislav Vasilikhin
- 1 Sergey
- 1 StevenPuttemans
- 1 Tham
- 1 Yorwba
- 1 Yuriy Obukh
- 1 abratchik
- 1 catree
- 1 goldstar616
- 1 logic1988
- 1 nyanp
- 1 oqtvs
- 1 saskatchewancatch
- 1 szk1509
- 1 utibenkei
December, 2016
Long-awaited update to OpenCV 3.x release series, with tons of improvements and bug fixes. Big thanks to everyone who particpated! If you contributed something but your name is missing, please, let us know.
Results from 11 GSoC 2016 projects have been submitted to the library, 9 of them have been integrated already, 2 still pending (the numbers below are the id’s of the Pull Requests in opencv or opencv_contrib repository):
“myfilestorage.xml?base64”
when writing file storage to store big chunks of numerical data in base64-encoded form.big thanks to all the participants!
opencv
- git shortlog --no-merges -ns 3.1.0..3.2.0
- 244 Alexander Alekhin
- 63 Vitaly Tuzov
- 57 Tomoaki Teshima
- 54 Maksim Shabunin
- 51 Vladislav Sovrasov
- 46 Ilya Lavrenov
- 40 Rostislav Vasilikhin
- 33 k-shinotsuka
- 30 StevenPuttemans
- 29 Pavel Rojtberg
- 24 MYLS
- 18 Marina Noskova
- 17 catree
- 15 Alexander Smorkalov
- 14 Suleyman TURKMEN
- 13 Vladislav Vinogradov
- 13 apavlenko
- 13 berak
- 12 Alexandr Kondratev
- 11 mshabunin
- 10 Dan
- 10 Pavel Vlasov
- 10 Valeriy Van
- 10 atinfinity
- 10 matze
- 9 Li Peng
- 9 abratchik
- 8 Roman Donchenko
- 8 Vadim Pisarevsky
- 7 Aleksandar Atanasov
- 7 Philipp Hasper
- 6 ArkadiuszRaj
- 6 Francisco Facioni
- 6 LaurentBerger
- 6 PkLab.net
- 6 sourin
- 5 E Sommerlade
- 5 Eric Zavesky
- 5 Ishank gulati
- 5 Matthew Self
- 5 Philip
- 5 Tetragramm
- 4 Amro
- 4 Andrey Pavlenko
- 4 Arthur Cinader
- 4 Christoph Spörk
- 4 Dikay900
- 4 Marian Zajko
- 4 alcinos
- 4 daB0bby
- 4 filipsladek
- 4 ohnozzy
- 3 Alexander Karsakov
- 3 Andreas Franek
- 3 Arek
- 3 Arkadiusz Raj
- 3 Dimitrios Katsaros
- 3 Eric Sommerlade
- 3 Gilles Rochefort
- 3 Juha Reunanen
- 3 Marek Smigielski
- 3 Mathieu Barnachon
- 3 Matthew Skolaut
- 3 Philippe FOUBERT
- 3 Sergei Nosov
- 3 Vitaliy Lyudvichenko
- 3 Your Name
- 3 a-andre
- 3 anirudt
- 3 aravind
- 3 kurenai
- 3 panxiaochun
- 3 shruthikashyap
- 3 thierry
- 3 will hunt
- 3 Прун Виктор
- 2 Addison Elliott
- 2 Alexander Shishkov
- 2 Anatoly Orlov
- 2 Asal Mirzaieva
- 2 Bleach666
- 2 Bob Paulin
- 2 Cartucho
- 2 Dan Moodie
- 2 David Wolever
- 2 Declan Moran
- 2 Dmitry Trifonov
- 2 DozyC
- 2 Elad Joseph
- 2 Elif Albuz
- 2 Eric Liao
- 2 Erich Keane
- 2 Hajo Nils Krabbenhöft
- 2 Hannes
- 2 Jan Starzynski
- 2 Joe Howse
- 2 Jose Luis Guardiola
- 2 Josh Lubawy
- 2 Lucas Solomon
- 2 Naba Kumar
- 2 Patrick Snape
- 2 Patrik Huber
- 2 Peter Rekdal Sunde
- 2 Piotr Semenov
- 2 Quentin
- 2 Randy J. Ray
- 2 Robbert Klarenbeek
- 2 Rok Mandeljc
- 2 Sean McBride
- 2 Sergiu Deitsch
- 2 Steven Puttemans
- 2 Susmit
- 2 Teng Cao
- 2 emiswelt
- 2 jiakai
- 2 lewgate
- 2 mschoeneck
- 2 shengyu
- 2 takacsd
- 1 Aaron Simmons
- 1 Adam Rankin
- 1 Alexander Fedorov
- 1 AlexeyAB
- 1 Ankit Yadav
- 1 Anton V. Shokurov
- 1 Anush Elangovan
- 1 Artyom Lebedev
- 1 Balint Cristian
- 1 Bernd Kuhls
- 1 BinMatrix
- 1 Bleach
- 1 Bram Ton
- 1 CSBVision
- 1 Christian Kapeller
- 1 Colin Finck
- 1 Dmitry Mozgin
- 1 Dmitry-Me
- 1 Dustin Spicuzza
- 1 Eduardo Arnold
- 1 Elena Gvozdeva
- 1 Elena Shipunova
- 1 Emanuel Jöbstl
- 1 Eugene Khvedchenya
- 1 Evan Heidtmann
- 1 Feng Zhoutian
- 1 Finfa811
- 1 Fraser Harris
- 1 Graham Fyffe
- 1 Gregory Kramida
- 1 Gregory Morse
- 1 Guillaume Jacob
- 1 Guy Sheffer
- 1 HMM@T430s-x64
- 1 Han Hu
- 1 Ian MacLeod
- 1 Ivar Clemens
- 1 JR Heard
- 1 Jake Kesinger
- 1 Jason von Nieda
- 1 Jcrist99
- 1 Jeff McBride
- 1 Jeroen Kromwijk
- 1 Jiri Horner
- 1 Josep Bosch
- 1 Juan Pablo Aveggio
- 1 Julien Dehos
- 1 Julien Dubiel
- 1 Julien Nabet
- 1 Kai Hugo Hustoft Endresen
- 1 Kerry Billingham
- 1 Kevin Hughes
- 1 Kevin, Hu
- 1 KeySecure
- 1 Kotrix
- 1 Krishnaraj Bhat
- 1 Leonardo Brás
- 1 Leonid Volnitsky
- 1 Louis Letourneau
- 1 Luis Roberto Morales Iglesias
- 1 LukeZhu
- 1 Matt Leotta
- 1 Matthew Cook
- 1 Matthieu FT
- 1 Matěj Šmíd
- 1 Michael Shtutman
- 1 Morrison
- 1 Nikolay Polyarniy
- 1 Noel Eck
- 1 Oded Green
- 1 Oliver Schreer
- 1 Oskari Vinko
- 1 Patrick Spettel
- 1 Peter Entwistle
- 1 Philipp Nordhus
- 1 Philippe Renon
- 1 Pierre Dulac
- 1 Pranav Ganorkar
- 1 Prayag Verma
- 1 Péter Trombitás
- 1 Rahul Chhabra
- 1 S. Garrido
- 1 Sean Li
- 1 Sergey Alexandrov
- 1 Simmo Saan
- 1 Simon Hänisch
- 1 Sovrasov
- 1 Stephane Thiell
- 1 Steven E Wright
- 1 Tauranis
- 1 Thierry Fauck
- 1 Thomas Schenker
- 1 Tomi
- 1 Tsukasa Sugiura
- 1 Vadzim Piatrou
- 1 Vincent Rabaud
- 1 WANG Guoqin
- 1 Xiaolei Yu
- 1 Zhenqing, Hu
- 1 Zhigang Gong
- 1 ahb
- 1 arybnikov
- 1 bedbad
- 1 chacha21
- 1 danil-tolkachev
- 1 debjan
- 1 dharezlak
- 1 fegorsch
- 1 ggargov
- 1 guoxuedong
- 1 jacobdang
- 1 joao.faro
- 1 logic1988
- 1 look4pritam
- 1 monoid911
- 1 mpkh
- 1 mrquorr
- 1 mvukad
- 1 parismita
- 1 qiao
- 1 renu285
- 1 rishirajsurti
- 1 robertxwu
- 1 sarthak
- 1 solosuper
- 1 stbnps
- 1 themightyoarfish
- 1 viodetools
- 1 yigitsoy
- 1 yoffy
- 1 Özgür Can
opencv_contrib
- git shortlog --no-merges -ns 3.1.0..3.2.0
- 43 Vitaliy Lyudvichenko
- 30 Alexander Alekhin
- 29 Anna Petrovicheva
- 25 Vladislav Samsonov
- 25 Vladislav Sovrasov
- 21 Gary Bradski
- 15 Pavel Rojtberg
- 12 berak
- 10 Balint Cristian
- 5 Maksim Shabunin
- 5 Suleyman TURKMEN
- 5 apetrovichev
- 5 lluisgomez
- 4 Alexander Bokov
- 4 Amro
- 4 StevenPuttemans
- 4 mshabunin
- 3 Jinhan Lee
- 3 Patrick Snape
- 3 Rok Mandeljc
- 3 Steve Nicholson
- 3 folz
- 3 vbystricky
- 2 LaurentBerger
- 2 Maximilien Cuony
- 2 Prof. Dr. Rudolf Haussmann
- 2 Vadim Pisarevsky
- 2 Vitaly Tuzov
- 2 Yuki Furuta
- 2 catree
- 2 sbokov
- 1 Aleksandr Rybnikov
- 1 Alexey Spizhevoy
- 1 AmbroiseMoreau
- 1 Amy Winston
- 1 Andrea Merello
- 1 Bartek Pawlik
- 1 Bleach
- 1 Bleach666
- 1 Christian Richardt
- 1 Daniel Ching
- 1 Dikay900
- 1 Eric Zavesky
- 1 Eugene Mamin
- 1 Geoff
- 1 Gregor Kovalcik
- 1 Gregory Kramida
- 1 Gunshi Gupta
- 1 Han Hu
- 1 Konstantin Volokh
- 1 Kotrix
- 1 Kumataro
- 1 Lorena García
- 1 MambaWong
- 1 Marek Smigielski
- 1 Martin Nowak
- 1 Minh Ngo
- 1 Nicu Stiurca
- 1 Pavel Vlasanek
- 1 Rostislav Vasilikhin
- 1 Sarthak Ahuja
- 1 Sunglok Choi
- 1 Thomas Schulz
- 1 VBystricky
- 1 Vasilikhin
- 1 Vladimir
- 1 Wu Jiang
- 1 Zhou Chao
- 1 abratchik
- 1 alessiodore
- 1 andrewk-mccann
- 1 aravind
- 1 baisheng lai
- 1 comdiv
- 1 damir
- 1 edgarriba
- 1 jasjuang
- 1 jhlee525
- 1 lukaszi89
- 1 lych77
- 1 samontab
- 1 sht3ch
- 1 tharunkalwa
December, 2015
This is the first stabilization update in 3.x series. It shall be reminded that since OpenCV 3.0 we’ve changed the version enumeration scheme, so that 3.1 is the same sort of update to 3.0 as 2.4.1 was to 2.4.0.
opencv
- git shortlog --no-merges -ns 3.0.0..3.1.0
- 146 Vladislav Vinogradov
- 109 Alexander Alekhin
- 103 Alexander Smorkalov
- 73 Maksim Shabunin
- 68 Ilya Lavrenov
- 48 Roman Donchenko
- 47 StevenPuttemans
- 45 Pavel Rojtberg
- 28 Andrey Pavlenko
- 25 Seon-Wook Park
- 20 Pavel Vlasov
- 20 Suleyman TURKMEN
- 18 Viet Dinh
- 17 Alexey Ershov
- 15 berak
- 14 Vladimir Dudnik
- 13 Artur Wieczorek
- 12 Dan
- 12 Lorena García
- 10 Dikay900
- 10 ippei ito
- 9 Mansour Moufid
- 8 E Braun
- 8 Grigory Serebryakov
- 7 Alexander Karsakov
- 7 Alexander Nitsch
- 7 Vadim Pisarevsky
- 7 Vijay Pradeep
- 6 LaurentBerger
- 6 Marian Zajko
- 6 Nguyen Nguyen
- 6 Philipp Hasper
- 6 flp
- 6 sbokov
- 5 Andreas Stührk
- 5 PhilLab
- 5 Rok Mandeljc
- 5 Ruslan Baratov
- 5 askourik
- 5 songyuncen
- 4 Abe Friesen
- 4 Aman Verma
- 4 Dan Moodie
- 4 Dinar Ahmatnurov
- 4 Dominik Kleiser
- 4 Elad Joseph
- 4 Gleb Gladilov
- 4 Ishant Mrinal Haloi
- 4 Mike Maraya
- 4 Tom Stellard
- 4 Vitaly Tuzov
- 4 edgarriba
- 4 grundman
- 4 hoangviet1985
- 4 themightyoarfish
- 3 Adam Gibson
- 3 Andrey Kamaev
- 3 Camille
- 3 Cédric Rousseau
- 3 Elena Shipunova
- 3 Gregory Morse
- 3 Hajo Nils Krabbenhöft
- 3 Igor Kuzmin
- 3 Maxim Kostin
- 3 Renato Florentino Garcia
- 3 Richard Yoo
- 3 Samuel Martin
- 3 Seunghoon Park
- 3 Teng Cao
- 3 Yan Wang
- 3 a-andre
- 3 jiakai
- 3 unknown
- 2 Aleksandr Petrikov
- 2 Alex Torres
- 2 Alexander Duda
- 2 Anatoly Baksheev
- 2 Andrew Senin
- 2 Anton V. Shokurov
- 2 Ariel Bernal
- 2 Balint Cristian
- 2 Ben Hagen
- 2 Bruno Goncalves
- 2 Daniel Stonier
- 2 Dmitry Melnichenko
- 2 Enes Ateş
- 2 Evgeny Talanin
- 2 GregoryMorse
- 2 Jan S. (Milania1)
- 2 John Stowers
- 2 Leonid Beynenson
- 2 Luis Díaz Más
- 2 Nils Plath
- 2 Nisarg Thakkar
- 2 Philippe FOUBERT
- 2 Pierre Letessier
- 2 Prof. Dr. Rudolf Haussmann
- 2 Rodrigo Benenson
- 2 Sergey Alexandrov
- 2 Sergiu Dotenco
- 2 Tsukasa Sugiura
- 2 Vicente Olivert Riera
- 2 Vincent Rabaud
- 2 Vladimir Kolesnikov
- 2 WilhelmHannemann
- 2 howtobeahacker
- 2 jayceelock
- 2 jisli
- 2 kalistratovag
- 2 lujia
- 2 paul.kim
- 2 qubick
- 2 robertxwu
- 2 theodore
- 1 Aaron Simmons
- 1 Abhijit Kundu
- 1 Adam
- 1 Adam Geitgey
- 1 Adi Shavit
- 1 Adrian Clark
- 1 AfterEight
- 1 Alankar Kotwal
- 1 Alexander Petrikov
- 1 Alexander Stohr
- 1 AlexanderStohr
- 1 Amro
- 1 Andreas Franek
- 1 Antonella Cascitelli
- 1 Anush Elangovan
- 1 Ashley Stacey
- 1 Ashod Nakashian
- 1 Belev
- 1 Benoit Seguin
- 1 Bert
- 1 Boris Daskalov
- 1 Bovaz
- 1 Brian Park
- 1 Chris Kitching
- 1 Chris Mayo
- 1 Christian Richardt
- 1 ComFreek
- 1 Craig Reynolds
- 1 Deanna Hood
- 1 Dmitry Budnikov
- 1 Dmitry Gribanov
- 1 Drew Jetter
- 1 Ehren Metcalfe
- 1 Eric Sommerlade
- 1 Evgeny Agafonchikov
- 1 Firat Kalaycilar
- 1 Florent
- 1 GabrieleDalmazzone
- 1 HelenWong
- 1 Hernan Badino
- 1 Ignas Daukšas
- 1 Ishank gulati
- 1 Jaime Fernandez
- 1 Jan Starzynski
- 1 Jay Bosamiya
- 1 Jeremy Huddleston Sequoia
- 1 Jie Yang
- 1 Joe Howse
- 1 Jonas Vautherin
- 1 Josh Klontz
- 1 Jüri Aedla
- 1 Kauê de Moraes Vestena
- 1 Kazuki Matsuda
- 1 Keita Kita
- 1 Kevin Hughes
- 1 Lectem
- 1 LeonidBeynenson
- 1 Leszek Swirski
- 1 Manfred Georg
- 1 ManuelFreudenreich
- 1 Martijn Liem
- 1 Martin Ueding
- 1 Mat Moore
- 1 Matteo Piovanelli
- 1 Maximilien Cuony
- 1 Miguel Algaba
- 1 Milania1
- 1 Nghia Ho
- 1 Nickolay Polyarniy
- 1 Niklas Frisk
- 1 Nikolay Polyarniy
- 1 Oliver Lumby
- 1 Pastafarianist
- 1 Patrik Huber
- 1 Philip Salvaggio
- 1 Pierre Moulon
- 1 Pierre-Emmanuel Viel
- 1 Raaj
- 1 RafaRuiz
- 1 Rafael Sadowski
- 1 René
- 1 Robbert Klarenbeek
- 1 Rohit Rawat
- 1 S. Garrido
- 1 Samyak Datta
- 1 Sethur
- 1 Simon Heinen
- 1 Stefan Cornelius
- 1 Stephen Mell
- 1 Steven Puttemans
- 1 Thomas Dunker
- 1 Thomas Gabrowski
- 1 Thomas Weisbach
- 1 Tian Zhi
- 1 Tim D. Smith
- 1 Valentin Tsatskin
- 1 ValeryTyumen
- 1 Vipul Sharma
- 1 Vitaliy Lyudvichenko
- 1 Wangyida
- 1 Wenju He
- 1 Yang Fan
- 1 Ying Xiong
- 1 Youssef Kashef
- 1 aletheios
- 1 alexander barakin (aka sash-kan)
- 1 art-programmer
- 1 ausentso
- 1 bhack
- 1 boatx
- 1 brossetti
- 1 comdiv
- 1 doltac
- 1 emiswelt
- 1 greensea
- 1 jormansa
- 1 manuele
- 1 mattip
- 1 mbarann
- 1 micalan
- 1 michaelveth
- 1 niederb
- 1 quentin
- 1 rajithr
- 1 scorneli
- 1 spmallick
- 1 teng88
- 1 thebucc
- 1 ttagu99
- 1 ultrafro
- 1 侯骥
opencv_contrib
- git shortlog --no-merges -ns 3.0.0..3.1.0
- 169 Vladimir
- 48 Kurnianggoro
- 29 Wangyida
- 19 Muresan Mircea Paul
- 18 lluis
- 17 baisheng lai
- 16 Maksim Shabunin
- 14 Anh Nguyen
- 13 Lluis Gomez-Bigorda
- 10 nunombmoutinho@gmail.com
- 9 Seon-Wook Park
- 9 Vlad Shakhuro
- 9 nmoutinho
- 8 Oded Green
- 8 Patrick Snape
- 8 Zhou Chao
- 8 berak
- 6 xolodilnik
- 5 Baisheng Lai
- 5 Marc-Stefan Cassola
- 5 Pavel Rojtberg
- 5 felix
- 5 sbokov
- 4 Alexander Alekhin
- 4 Alexander Stohr
- 4 StevenPuttemans
- 4 edgarriba
- 3 Balint Cristian
- 3 Francisco Facioni
- 3 Maximilien Cuony
- 3 jiaolong_x220
- 2 Aakash Chopra
- 2 Jan S. (Milania1)
- 2 RobertaRavanelli
- 2 S. Garrido
- 2 Samyak Datta
- 2 Vadim Pisarevsky
- 2 Yang Fan
- 1 103yiran
- 1 Alex Tomala
- 1 Clint Pells
- 1 Dikay900
- 1 DirtyMaster
- 1 Hyunjun Kim
- 1 Jesus Briales
- 1 Jesús Briales
- 1 MMp131316
- 1 Pat O'Keefe
- 1 Philipp Hasper
- 1 Rok Mandeljc
- 1 Suleyman TURKMEN
- 1 Sunglok Choi
- 1 SvetlanaFilicheva
- 1 Vitaliy Lyudvichenko
- 1 Yan Wang
- 1 baudenri
- 1 comdiv
- 1 grundman
- 1 howtobeahacker
- 1 lar-lab-unibo
- 1 m4nh
- 1 manuele
- 1 previ
- 1 tucna
June, 2015
These are changes since 3.0 rc1.
opencv
- $ git shortlog —no-merges -ns 3.0.0-rc1..origin/master
- 60 Vadim Pisarevsky
- 31 laurentBerger
- 17 Maksim Shabunin
- 10 cbalint13
- 7 Maxim Kostin
- 6 Alexander Smorkalov
- 6 Ilya Lavrenov
- 6 StevenPuttemans
- 6 Vladimir Dudnik
- 5 Andrey Pavlenko
- 5 GilLevi
- 3 Dikay900
- 3 Philipp Hasper
- 3 Ruslan Baratov
- 3 rajithr
- 3 sgjava
- 2 Andreas Stührk
- 2 Christian Richardt
- 2 Deanna Hood
- 2 Joe Minichino
- 2 Luis Díaz Más
- 2 Mansour Moufid
- 2 Marek Nogacki
- 2 Martin Ueding
- 2 Vladislav Vinogradov
- 2 Zhigang Gong
- 2 kalistratovag
- 1 AfterEight
- 1 Aleksandr Petrikov
- 1 Alexander Nitsch
- 1 Andrew Senin
- 1 Ashod Nakashian
- 1 Belev
- 1 Boris Daskalov
- 1 Camille
- 1 Craig Reynolds
- 1 David Hirvonen
- 1 Ehren Metcalfe
- 1 Evgeny Agafonchikov
- 1 Jüri Aedla
- 1 Leonid Beynenson
- 1 Martijn Liem
- 1 Marvin Smith
- 1 Michaël Sdika
- 1 Mike Maraya
- 1 Milania1
- 1 Niklas Frisk
- 1 Owen Healy
- 1 Patrik Huber
- 1 Piotr Dobrowolski
- 1 Roman Donchenko
- 1 S. Garrido
- 1 Samed Ozdemir
- 1 Samuel Martin
- 1 Samyak Datta
- 1 Thomas Gabrowski
- 1 Vicente Olivert Riera
- 1 Vincent Rabaud
- 1 Vladimir Kolesnikov
- 1 aletheios
- 1 berak
- 1 jormansa
- 1 lujia
- 1 msandler
- 1 yanlend
- 1 zenev
opencv_contrib
- $ git shortlog —no-merges -ns 3.0.0-rc1..origin/master
- 19 cbalint13
- 11 GilLevi
- 6 Alexandre Benoit
- 4 Vadim Pisarevsky
- 2 laurentBerger
- 1 BISMOY MURASING
- 1 berak
- 1 root
April, 2015
These are changes since 3.0 beta.
Preliminary version of OpenCV HAL, low-level acceleration API beneath OpenCV, has been introduced. Currently it includes just a few math functions, but will grow soon. It also includes so-called “universal intrinsics”, inspired by NEON=>SSE conversion header by Victoria Zhislina from Intel: https://software.intel.com/en-us/blogs/2012/12/12/from-arm-neon-to-intel-mmxsse-automatic-porting-solution-tips-and-tricks The idea is that one can use a single SIMD code branch that will compile to either SSE or NEON instructions depending on the target platform. For example,
// a, b and c are floating-point arrays for( int i = 0; i < n; i+=4 ) v_store(c + i, v_load(a+i) + v_load(b+i));
will be expanded to either
for( int i = 0; i < n; i+=4 ) _mm_storeu_ps(c + i, mm_add_ps(_mm_loadups(a+i), mm_loadu_ps(b+i));
or
for( int i = 0; i < n; i+=4 ) vst1q_f32(c + i, vaddq_f32(vld1q_f32(a+i), vld1qf32(b+i));
Using such intrinsics one can write accelerated code, debug it on desktop and then run it without any changes on ARM and get reasonable performance.
opencv
- $ git shortlog —no-merges -ns 3.0.0-beta..origin/master
- 95 Vladislav Vinogradov
- 88 Maksim Shabunin
- 74 Ilya Lavrenov
- 40 Erik Karlsson
- 33 Olexa Bilaniuk
- 28 Vadim Pisarevsky
- 24 Dmitry-Me
- 24 orestis
- 18 StevenPuttemans
- 17 Maxim Kostin
- 15 Yan Wang
- 14 Alexander Alekhin
- 11 Roman Donchenko
- 8 Ashod Nakashian
- 7 Joe Howse
- 7 Nisarg Thakkar
- 6 Andrey Kamaev
- 6 Dikay900
- 5 Alexander Nitsch
- 5 Evgeny Agafonchikov
- 5 TobyWanKenobi
- 5 theodore
- 5 Сергей Нужный
- 4 Andrew Senin
- 4 Artur Wieczorek
- 4 Hamid Bazargani
- 4 Pavel Rojtberg
- 4 berak
- 3 Alexander Smorkalov
- 3 Ben Hagen
- 3 Deanna Hood
- 3 Marvin Smith
- 3 Nicu Știurcă
- 3 Philipp Hasper
- 3 Simon Heinen
- 3 Takahiro Poly Horikawa
- 3 Ying Xiong
- 2 ASUS
- 2 Ahmatnurov Dinar
- 2 Alexander Duda
- 2 Ana Huaman Quispe
- 2 Eric Sommerlade
- 2 Naer Chang
- 2 Nils Plath
- 2 Sync-my-L2P
- 2 VBystricky
- 2 guopei
- 2 ippei ito
- 2 kalistratovag
- 2 karelknoest
- 2 sanuj
- 2 vbystricky
- 1 Adam Borowski
- 1 Adam Greig
- 1 Alexander Bohn / FI$H2k
- 1 Alexander Karsakov
- 1 Andrey Pavlenko
- 1 Ari Suwendi
- 1 Basheer Subei
- 1 Boaz Stolk
- 1 Chris Mayo
- 1 Chuanbo Weng
- 1 Claudio Caraffi
- 1 Daeyun Shin
- 1 Daniel Angelov
- 1 Daniel Sjölie
- 1 Dmitriy Anisimov
- 1 Florian Verdet
- 1 Guo Yejun
- 1 HelenWong
- 1 Jay Bosamiya
- 1 Jiri Drbalek
- 1 Jonathan Viney
- 1 Josep Bosch
- 1 Julien Nabet
- 1 Kai Wolf
- 1 Kevin Squire
- 1 LorenaGdL
- 1 Max Kostin
- 1 Michae Gharbi
- 1 Mike Izbicki
- 1 Nicolas Riebesel
- 1 Owen Healy
- 1 Pat O’Keefe
- 1 Pavel Vlasov
- 1 Prof. Dr. Rudolf Haussmann
- 1 Quentin Minster
- 1 RafaRuiz
- 1 Rok Mandeljc
- 1 S. Garrido
- 1 Samyak Datta
- 1 Sancho McCann
- 1 Scott Graybill
- 1 Shiquan Wang
- 1 Tim D. Smith
- 1 Timur Sattarov
- 1 Tzafrir
- 1 UQ Times
- 1 Yang Fan
- 1 burun
- 1 eltermann
- 1 exeltior
- 1 fhsm
- 1 greensea
- 1 hahne
- 1 mariadeanton
- 1 potpath
- 1 sergei
- 1 soyer
- 1 tcavallari
- 1 tt
- 1 ttagu99
- 1 vincentweb
opencv_contrib
- $ git shortlog —no-merges -ns 3.0.0-beta..origin/master
- 13 Maksim Shabunin
- 5 cbalint13
- 3 Auron-X
- 3 Dikay900
- 3 Str3iber
- 2 Dmitriy Anisimov
- 2 Jay Bosamiya
- 2 Rok Mandeljc
- 2 Vadim Pisarevsky
- 2 berak
- 1 Alfonso Sanchez-Beato
- 1 Antonella Cascitelli
- 1 Beat Küng
- 1 Dinar Ahmatnurov
- 1 Nisarg Thakkar
- 1 Sh0
- 1 Shuda Li
- 1 StevenPuttemans
- 1 Vladimir
- 1 Yan Wang
- 1 jiaolong_cvc228
- 1 pmkalshetti
- 1 yifita
November, 2014
These are changes since 3.0 alpha.
opencv
- $ git shortlog —no-merges -ns 3.0.0-alpha..origin/master
- 129 edgarriba
- 71 Ilya Lavrenov
- 45 Alexander Karsakov
- 41 Adrien BAK
- 39 Rahul Kavi
- 37 Vadim Pisarevsky
- 27 Maksim Shabunin
- 20 Ernest Galbrun
- 15 Dmitriy Anisimov
- 14 Artur Wieczorek
- 13 Alexander Mordvintsev
- 12 Alexander Alekhin
- 9 vbystricky
- 9 Alexander Smorkalov
- 9 Rok Mandeljc
- 8 Elena Gvozdeva
- 8 Marc Rollins
- 7 Philipp Hasper
- 5 berak
- 5 ElenaGvozdeva
- 4 PhilLab
- 3 Juan Carlos Niebles
- 3 Alexander Duda
- 3 Alexander Shishkov
- 3 xantares
- 3 jaco
- 3 Brian Park
- 3 Chuanbo Weng
- 3 Igor Kuzmin
- 3 Michele Adduci
- 2 Andrey Pavlenko
- 2 Bence Magyar
- 2 Miroslav Benes
- 2 Shubhra Pandit
- 2 StevenPuttemans
- 2 abidrahmank
- 2 f-morozov
- 2 micha137
- 1 Jose-Luis Blanco-Claraco
- 1 Pat O’Keefe
- 1 Pavel Vlasov
- 1 John Kua
- 1 Huu Nguyen
- 1 Pierrick Koch
- 1 Poly Takahiro Horikawa
- 1 GregoryMorse
- 1 Felix Endres
- 1 Benoit Seguin
- 1 jeremy
- 1 Tomasz Posłuszny
- 1 U-KruchininD-ПК\KruchininD
- 1 VBystricky
- 1 Dmitry Gribanov
- 1 Yan Wang
- 1 Yusuke Suzuki
- 1 Anatoly Baksheev
- 1 bartaandras
- 1 Daniel Stonier
- 1 dkanafeev
- 1 Boaz Stolk
- 1 eltermann
- 1 Ling Wang@z77x
- 1 Manfred Georg
- 1 Leszek Swirski
- 1 Matthew Conway
- 1 Maximilien Cuony
- 1 Ariel Elkin
opencv_contrib
- $ git shortlog —no-merges -ns e2fde8..origin/master
- 69 biagio montesano
- 55 Vlad Shakhuro
- 46 Alex Leontiev
- 36 Bellaktris
- 28 Vadim Pisarevsky
- 24 lluis
- 19 dmitriy.anisimov
- 18 vludv
- 11 Dmitriy Anisimov
- 10 Bence Magyar
- 10 Daniel Angelov
- 10 Alexander Shishkov
- 9 ahb
- 6 tpietruszka
- 5 Maksim Shabunin
- 5 Beat Küng
- 4 manuele
- 4 StevenPuttemans
- 4 Alexander Mordvintsev
- 4 vbystricky
- 3 Philipp Hasper
- 3 berak
- 3 Sancho McCann
- 2 Alexander Alekhin
- 2 Ilya Lavrenov
- 2 Alexandre Benoit
- 1 tolgabirdal
- 1 Shuda Li
- 1 Rok Mandeljc
- 1 VBystricky
- 1 Poly Takahiro Horikawa
- 1 Michele Adduci
- 1 Ernest Galbrun
August, 2014
This is brief version of the change log. There is also a separate page with detailed review of OpenCV_3.0
OPENCV_EXTRA_MODULES_PATH=<path_to_contrib_directory>/modules
to CMake.
Also, big thanks to all the Itseez guys who reviewed patches, watched bug reports and helped OpenCV in many other ways: Alexander Shishkov (who also maintains opencv.org site), Andrey Pavlenko, Alexander Alekhin, Alexander Smorkalov, Roman Donchenko, Kirill Kornyakov, Andrey Kamaev, Sergey Sivolgin, Vladimir Bystritsky, Sergey Nosov, Nikita Manovich, Evgeniy Talanin, Elena Gvozdeva, Alexander Karsakov, Konstantin Matskevich, Ilya Lavrenov, Anna Kogan, Ivan Korolev, Dinar Ahmatnurov, Andrey Senin, Vlad Vinogradov, Alexey Spizhevoy, Anatoly Baksheev, Marina Kolpakova, Daniil Osokin, Leonid Beynenson, Dmitry Retinsky, Maria Dimashova, Ilya Lysenkov, Andrey Morozov, Victor Eruhimov, Alexander Bovyrin, Sergey Molinov, Gary Bradski, Vincent Rabaud, Harris Gasparakis, Stefano Fabri and many others.
Some functionality has been moved to opencv_contrib repository or just disappeared. After revision, we may put a part of disappeared functionality back to opencv (or opencv_contrib).
Note that among the moved functionality is Face Recognition (now a separate module opencv_contrib/face); SIFT, SURF, FREAK, Star feature detectors and descriptors (now a part of opencv_contrib/xfeatures2d); text detector (now a part of module opencv_contrib/text); matlab bindings (opencv_contrib/matlab); motion templates & simple flow (opencv_contrib/optflow).
In OpenCV 3 we write
#include “opencv2/core.hpp”
instead of
#include “opencv2/core/core.hpp”
The old method should also work.
ML module has been completely revised (and at the moment the functionality is not 100% match for OpenCV 2.4.x), you will need to update your code.
Similarly to ML, many high-level algorithms have been refactored to follow “open interface-hidden implementation” concept and this refactoring work will continue after alpha.
To lower the footprint, highgui module has been split into 3 parts: imgcodecs, videoio and highgui itself (thanks to Vladimir). You may need to update your code.
After massive functionality migration to opencv_contrib and other major changes some Python bindings may be missing. We will fix it by OpenCV 3.0 beta.
April, 2014
ocl::sum
, ocl::countNonZero
, ocl::minMax
, bitwise operationss, Haar face detector, etc)New VTK-based 3D visualization module viz
stabilized and back-ported to 2.4 branch. The module provides a very convenient way to display and position clouds, meshes, cameras and trajectories, and simple widgets (cube, line, circle, etc.). Full demo video can be found at Itseez Youtube channel
Numerous bugfixes in code and docs from community
- $ git checkout 2.4.9
- $ git shortlog --no-merges -n -s 2.4 --not 2.4.8
- 36 Alexander Smorkalov
- 35 Ilya Lavrenov
- 33 Vladislav Vinogradov
- 23 Anatoly Baksheev
- 16 Andrey Pavlenko
- 9 Maks Naumov
- 8 Roman Donchenko
- 6 Pierre-Emmanuel Viel
- 6 yash
- 5 Daniil Osokin
- 4 Alexander Karsakov
- 4 Alexander Shishkov
- 4 Matti Picus
- 4 Nghia Ho
- 4 Stuart Cunningham
- 4 Vadim Pisarevsky
- 3 Alexander Alekhin
- 3 Kang Liu
- 3 Seunghoon Park
- 3 Vincent Rabaud
- 2 Firat Kalaycilar
- 2 Martin Jul
- 2 RJ2
- 2 berak
- 1 Alessandro Trebbi
- 1 Cody Rigney
- 1 ComFreek
- 1 Dave Hughes
- 1 David Rolland
- 1 Drew Jetter
- 1 Evgeniy
- 1 Ian Taylor
- 1 JinoBetti
- 1 Kazuki Matsuda
- 1 Kirill Kornyakov
- 1 Konstantin Matskevich
- 1 Linquize
- 1 Marijan Vukcevich
- 1 Martin Chodakowski
- 1 Robbert Klarenbeek
- 1 Vladimir Kolesnikov
- 1 Zhigang Gong
- 1 ahb
- 1 kuroda sho
- 1 kurodash
December, 2013
- $ git checkout 2.4.8
- $ git shortlog --no-merges -n -s 2.4 --not 2.4.7
- 42 Alexander Smorkalov
- 35 Ilya Lavrenov
- 15 Roman Donchenko
- 15 Vladislav Vinogradov
- 14 Alexander Alekhin
- 11 krodyush
- 10 Andrey Pavlenko
- 9 Vladimir Bystricky
- 8 StevenPuttemans
- 7 Baichuan Su
- 7 Konstantin Matskevich
- 7 perping
- 6 Adrien BAK
- 6 Mimmmo Cosenza
- 6 Vincent Rabaud
- 4 Peter Andreas Entschev
- 4 Philippe FOUBERT
- 3 Anatoly Baksheev
- 3 berak
- 2 Alexander Karsakov
- 2 Bo Hu
- 2 GregoryMorse
- 2 Piotr Miecielica
- 2 moodoki
- 1 Alex Willisson
- 1 Alexander Shishkov
- 1 Alfonso (the fonz) de la Osa
- 1 Andrey Kamaev
- 1 Eric Sommerlade
- 1 Josep Bosch
- 1 Kiran Pradeep
- 1 Matthias Bady
- 1 Peng Xiao
- 1 Pierre-Emmanuel Viel
- 1 Séverin Lemaignan
- 1 Zhigang Gong
- 1 dpen2000
- 1 huangs
- 1 tim36272
November, 2013
OPENCV_OPENCL_DEVICE
environment variable (without app re-build);- $ git checkout 2.4.7
- $ git shortlog --no-merges -n -s 2.4 --not 2.4.6
- 111 Ilya Lavrenov
- 83 Alexander Alekhin
- 79 Roman Donchenko
- 41 Alexander Smorkalov
- 36 peng xiao
- 34 Jin Ma
- 32 Vladislav Vinogradov
- 27 StevenPuttemans
- 19 yao
- 17 Andrey Pavlenko
- 13 kdrobnyh
- 12 ilya-lavrenov
- 9 Alexander Shishkov
- 8 Vadim Pisarevsky
- 7 Greg Hale
- 7 Jan Starzynski
- 6 Bahram Dahi
- 5 Dmitry Retinskiy
- 5 Nghia Ho
- 5 konstantin
- 5 perping
- 3 Alexander Mordvintsev
- 3 Frederic Devernay
- 3 Kirill Kornyakov
- 3 Peng Xiao
- 3 Sebastian KrA¤mer
- 3 WonderRico
- 3 kamjagin
- 2 Alexander Pacha
- 2 Daniil Osokin
- 2 Gabe Schwartz
- 2 Hanusz Leszek
- 2 Nikita Manovich
- 2 Philippe FOUBERT
- 2 Zac Stewart
- 1 Alexander Karsakov
- 1 Andrew Senin
- 1 Baris Evrim Demiroz
- 1 Csaba Kertesz
- 1 George Andrew Brindeiro
- 1 Han Qiang
- 1 Harris Gasparakis
- 1 Heinz Hofbauer
- 1 Kevin
- 1 MarkBelmont
- 1 Michael Hanselmann
- 1 Miroslav Kobetski
- 1 Samuel Wejeus
- 1 Sebastian Kramer
- 1 abidrahmank
- 1 kocheganovvm
- 1 pengxiao
July, 2013
tbb::parallel_for()
to universalcv::parallel_for_()
with many possible backends (MS Concurrency, Apple’s GDC, OpenMP, Intel TBB etc.)iOS
build scripts (together with Android
ones) moved to opencv/platforms
directoryrotateVideo
flag to the CvVideoCamera
class to control camera preview rotation on device rotationUIImage
and cv::Mat
(just include opencv2/highgui/ios.h
)- ~/Work/OpenCV/opencv> git checkout 2.4.6
- ~/Work/OpenCV/opencv> git shortlog --no-merges -n -s 2.4 --not 2.4.5
- 55 Peng Xiao
- 50 yao
- 41 Roman Donchenko
- 40 Alexander Smorkalov
- 21 Vladislav Vinogradov
- 10 Kirill Kornyakov
- 9 Andrey Pavlenko
- 8 Alexander Shishkov
- 8 Andrey Kamaev
- 5 alex77git
- 5 Dominik Rose
- 4 Ivan Korolev
- 3 Sergei Nosov
- 3 abidrahmank
- 3 poiuytrez
- 2 Leszek Swirski
- 1 Bo Li
- 1 Jan Machacek
- 1 ShengyinWu
- 1 Siva Prasad Varma
- 1 Gurpinder Singh Sandhu
- 1 Andrew Senin
- 1 Peter Minin
- 1 caorong
- 1 dave
- 1 ograycode
- 1 Dustin Spicuzza
- 1 Luis Díaz Más
- 1 Egbert van der Wal
April, 2013
the new video super-resolution module has been added that implements the following papers:
cv::Mat
inside Visual Studio 2012 debugger has been contributed by Wolf Kienzle from Microsoft Research. See http://opencv.org/image-debugger-plug-in-for-visual-studio.htmlMarch, 2013
gpu
module and the following new functionality & optimizations:
ocl::Mat
can now use “special” memory (e.g. pinned memory, host-local or device-local).ocl::Mat
, providing significant ease of use for simple numerical manipulations.November, 2012
parallel_for
implementation using various backends: TBB (cross-platform:http://threadingbuildingblocks.org), OpenMP (cross-platform:http://en.wikipedia.org/wiki/OpenMP), Grand Central Dispatch (iOS/MacOSX: http://en.wikipedia.org/wiki/Grand_Central_Dispatch), Concurrency (Visual Studio 2010 or later:http://msdn.microsoft.com/en-us/library/dd492418.aspx), C= (http://www.hoopoesnest.com/cstripes/cstripes-details.htm). Many exiting parallel OpenCV algorithms have been converted to the new primitive. Therefore, you can enjoy performance improvements even without having to install TBB and ship it with OpenCV-based applications.http://code.opencv.org/attachments/download/1147
July, 2012
June, 2012
Added API for storing OpenCV data structures in text string and reading them back:\
- //==== storing data ====
- FileStorage fs(".xml", FileStorage::WRITE + FileStorage::MEMORY);
- fs << "date" << date_string << "mymatrix" << mymatrix;
- string buf = fs.releaseAndGetString();
-
- //== reading it back ==
-
- FileStorage fs(buf, FileStorage::READ + FileStorage::MEMORY);
-
- fs[“date”] >> date_string;
- fs[“mymatrix”] >> mymatrix;
cv::calcOpticalFlowPyrLK
now supports precomputed pyramids as input.May, 2012
The major changes since 2.4 beta
April, 2012
As usual, we created 2.4 branch in our repository (http://code.opencv.org/svn/opencv/branches/2.4), where we will further stabilize the code. You can check this branch for changes periodically, before as well as after 2.4 release.
At the age of 12, OpenCV got its own home! http://code.opencv.org is now the primary site for OpenCV development and http://opencv.org will be the official OpenCV user site.
Some of the old functionality from the modules imgproc
, video
, calib3d
, features2d
, objdetect
has been moved to legacy.
CMake scripts have been substantially modified. Now it’s very easy to add new modules – just put the directory with include, src, doc and test sub-directories to the modules directory, create a very simple CMakeLists.txt
and your module will be built as a part of OpenCV. Also, it’s possible to exclude certain modules from build (the CMake variables “BUILD_opencv_<modulename>
” control that).
A new essential class cv::Algorithm
has been introduced. It’s planned to be the fundamental part of all of the “non-trivial” OpenCV functionality. All Algorithm-based classes have the following features:
A new ffmpeg wrapper has been created that features multi-threaded decoding, more robust video positioning etc. It’s used with ffmpeg starting with 0.7.x versions.
features2d
API has been cleaned up. There are no more numerous classes with duplicated functionality. The base classes FeatureDetector
and DescriptorExtractor
are now derivatives of cv::Algorithm
. There is also the base Feature2D
, using which you can detect keypoints and compute the descriptors in a single call. This is also more efficient.
SIFT and SURF have been moved to a separate module named nonfree
to indicate possible legal issues of using those algorithms in user applications. Also, SIFT performance has been substantially improved (by factor of 3-4x).
The current state-of-art textureless detection algorithm, Line-Mod by S. Hinterstoisser, has been contributed by Patrick Mihelich. See objdetect/objdetect.hpp
, class Detector
.
3 face recognition algorithms have been contributed by Philipp Wagner. Please, check opencv/contrib/contrib.hpp
, FaceRecognizer
class, and opencv/samples/cpp/facerec_demo.cpp
.
2 algorithms for solving PnP problem have been added. Please, check flags
parameter in solvePnP
and solvePnPRansac
functions.
Enhanced LogPolar
implementation (that uses Blind-Spot model) has been contributed by Fabio Solari and Manuela Chessa, see opencv/contrib/contrib.hpp
, LogPolar_*
classes andopencv/samples/cpp/logpolar_bsm.cpp
sample.
A stub module photo
has been created to support a quickly growing “computational photography” area. Currently, it only contains inpainting
algorithm, moved from imgproc
, but it’s planned to add much more functionality.
Another module videostab
(beta version) has been added that solves a specific yet very important task of video stabilization. The module is under active development. Please, checkopencv/samples/cpp/videostab.cpp
sample.
findContours
can now find contours on a 32-bit integer image of labels (not only on a black-and-white 8-bit image). This is a step towards more convenient connected component analysis.
Canny
edge detector can now be run on color images, which results in better edge maps
Python bindings can now be used within python threads, so one can write multi-threaded computer vision applications in Python.
Different Optical Flow algorithms have been added:
New feature detectors and descriptors:
GoodFeaturesToTrack
Overall GPU module enhancements:
pyrUp
/pyrDown
implementations.
Matrix multiplication on GPU (wrapper for the CUBLAS library). This is optional, user need to compile OpenCV with CUBLAS support.
OpenGL back-end
has been implemented for highgui
module, that allows to display GpuMat
directly without downloading them to CPU.
See the [Android_Release_Notes].
A few OpenCV functions, like color conversion, morphology, data type conversions, brute-force feature matcher have been optimized using TBB and/or SSE intrinisics.
Along with regression tests, now many OpenCV functions have got performance tests. Now for most modules one can build opencv_perf_<modulename>
executables that run various functions from the particular module and produce a XML file. Note that if you want to run those tests, as well as the normal regression tests, you will need to get (a rather big) http://code.opencv.org/svn/opencv/trunk/opencv_extra directory and set environment variable OPENCV_TEST_DATA_PATH
to <your_copy_of_opencv_extra>/testdata
.
When OpenCV is built statically, dynamically created classes (via Algorithm::create
) can fail because linker excludes the “unused” object files. To avoid this problem, create classes explicitly, e.g
Ptr<DescriptorExtractor> d = new BriefDescriptorExtractor;
August, 2011
OpenCV Java bindings for Android platform are released in ‘’Beta 2’’ quality. A lot of work is done to make them more stable and easier to use. Currently Java API has about 700 different OpenCV functions and covers 8 OpenCV modules including full port of features2d.
Retina module has been contributed by Alexandre Benoit (in opencv_contrib
module). See the new retina sample and https://sites.google.com/site/benoitalexandrevision/.
Support for Ximea cameras (http://www.ximea.com/) in highgui
has been contributed by Ximea developers.
Planar subdivisions construction (Delaunay triangulation and Voronoi tessellation) have been ported to C++. See the new delaunay2.cpp
sample.
Several new Python samples have been added.
FLANN
in OpenCV has been upgraded to v1.6. Also, added Python bindings for FLANN
.
We now support the latest FFMPEG (0.8.x) that features multi-threaded decoding. Reading videos in OpenCV has never been that fast.
tbb30_20110427oss_win.zip
from the TBB website.tbb*_debug.dll
files from bin// to the corresponding folder in the installed OpenCV location in /build/common/tbb//July, 2011
A few more bugs reported in the OpenCV bug tracker have been fixed.
Documentation has been improved a lot! The new reference manual combines information for C++ and C interfaces, the OpenCV 1.x-style Python bindings and the new C++-style Python bindings. It has also been thoroughly checked for grammar, style and integrity.
Besides, there are new and updated tutorials.
The up-to-date online documentation is available at http://docs.opencv.org.
Unfortunately, it’s not a full-scale installation package, but simply a self-extracting archive with a readme.txt
supplied.
The installation package is probably to come in the next version.
VS2005 should build OpenCV 2.3 out of the box, including DirectShow
support.
ffmpeg bindings are now available for all Windows users via compiler- and configuration- and
version-independent opencv_ffmpeg.dll
(for 32-bit compilers) and opencv_ffmpeg_64.dll
(for 64-bit compilers).
June, 2011
Buildbot-based Continuous Integration system is now continuously testing OpenCV snapshots. The current status is available at http://pullrequest.opencv.org/
OpenCV switched to Google Test (http://code.google.com/p/googletest/) engine for regression and correctness tests. Each module now has “test” sub-directory which includes the corresponding tests.
Many functions and methods now take InputArray
/OutputArray
instead of cv::Mat
references. It retains compatibility with the existing code and yet brings more natural support for STL vectors and potentially other “foreign” data structures to OpenCV. Seehttp://docs.opencv.org/modules/core/doc/intro.html#inputarray-and-outputarray for details.
core
LAPACK
is not used by OpenCV anymore. The change decreased the library footprint and the compile time. We now use our own implementation of Jacobi SVD. SVD performance on small matrices (2×2 to 10×10) has been considerably improved; on larger matrices it is still pretty good. SVD accuracy on poorly-conditioned matrices has also been polished.features2d
BRIEF
and ORB
feature descriptors have been added.BRIEF
and ORB
descriptors will be added in 2.3.1.calib3d
highgui
videoInput
is now a part of highgui
. If there are any problems with compiling highgui
, set WITH_VIDEOINPUT=OFF
in CMake.stitching
opencv_stitching
is a beta version of new application that makes a panorama out of a set of photos taken from the same point.python
cv
and cv2
. cv2
includes wrappers for OpenCV 2.x functionality. opencv/samples/python2
contain a few samples demonstrating cv2
in use.contrib
StereoVar
has been added.gpu
OpenCV documentation is now written in ReStructured Text
and built using Sphinx
(http://sphinx.pocoo.org).
It’s not a single reference manual now, it’s 4 reference manuals (OpenCV 2.x C++ API, OpenCV 2.x Python API, OpenCV 1.x C API, OpenCV 1.x Python API), the emerging user guide and a set of tutorials for beginners.
Style and grammar of the main reference manual (OpenCV 2.x C++ API) have been thoroughly checked and fixed.
Online up-to-date version of the manual is available at http://docs.opencv.org
Documentation (especially on the new Python bindings) is still being updated. Watch http://docs.opencv.org for updates.
Android port does not provide Java interface for OpenCV. It is going to be added to 2.3 branchin a few weeks.
December, 2010
cxcore
, cv
, cvaux
, highgui
and ml
we now have several smaller modules:
opencv_core
– core functionality (basic structures, arithmetics and linear algebra, dft, XML and YAML I/O …).opencv_imgproc
– image processing (filter
, GaussianBlur
, erode
, dilate
, resize
, remap
, cvtColor
, calcHist
etc.)opencv_highgui
– GUI and image & video I/Oopencv_ml
– statistical machine learning models (SVM, Decision Trees, Boosting etc.)opencv_features2d
– 2D feature detectors and descriptors (SURF, FAST etc., including the new feature detectors-descriptor-matcher framework)opencv_video
– motion analysis and object tracking (optical flow, motion templates, background subtraction)opencv_objdetect
– object detection in images (Haar & LBP face detectors, HOG people detector etc.)opencv_calib3d
– camera calibration, stereo correspondence and elements of 3D data processingopencv_flann
– the Fast Library for Approximate Nearest Neighbors (FLANN
1.5) and the OpenCV wrappersopencv_contrib
– contributed code that is not mature enoughopencv_legacy
– obsolete code, preserved for backward compatibilityopencv_gpu
– acceleration of some OpenCV functionality using CUDA
(relatively unstable, yet very actively developed part of OpenCV)If you detected OpenCV and configured your make scripts using CMake or pkg-config tool, your code will likely build fine without any changes. Otherwise, you will need to modify linker parameters (change the library names) and update the include paths.
It is still possible to use #include <cv.h>
etc. but the recommended notation is:
- ```.cpp
- #include "opencv2/imgproc/imgproc.hpp"
- ```
Please, check the new C and C++ samples (http://code.opencv.org/svn/opencv/trunk/opencv/samples), which now include the new-style headers.
The new-style wrappers now cover much more of OpenCV 2.x API. The documentation and samples are to be added later. You will need numpy in order to use the extra functionality.
SWIG-based Python wrappers are not included anymore.
OpenCV can now be built for Android (GSoC 2010 project), thanks to Ethan Rublee; and there are some samples too. Please, check [OpenCV4Android]
The completely new opencv_gpu
acceleration module has been created with support by NVIDIA. See below for details.
core
cv::Matx<T, m, n>
type for fixed-type fixed-size matrices has been added. Vec<T, n>
is now derived from Matx<T, n, 1>
. The class can be used for very small matrices, where cv::Mat
use implies too much overhead. The operators to convert Matx
to Mat
and backwards are available.cv::Mat
and cv::MatND
are made the same type: typedef cv::Mat cv::MatND
.WITH_EIGEN2
option in CMake). Again, there are convertors from Eigen2 matrices to cv::Mat
and backwards. Seemodules/core/include/opencv2/core/eigen.hpp
.cv::Mat
can now be print with “<<
” operator. See opencv/samples/cpp/cout_mat.cpp
.cv::exp
and cv::log
are now much faster thanks to SSE2 optimization.imgproc
CV_LBGR2LAB
etc.CV_RGB2HSV_FULL
etc.initUndistortRectifyMap
for wide-angle cameras has been added: initWideAngleProjMap()
features2d
SURF
, FAST
, StarDetector
etc. have been wrapped to be used through the framework. The key advantage of the new framework (besides the uniform API for different detectors and descriptors) is that it also provides high-level tools for image matching and textured object detection. Please, see documentationhttp://docs.opencv.org/modules/features2d/doc/common_interfaces_of_feature_detectors.html\ and the C++ samples:
descriptor_extractor_matcher.cpp
– finding object in a scene using keypoints and their descriptors.generic_descriptor_matcher.cpp
– variation of the above sample where the descriptors do not have to be computed explicitly.bagofwords_classification.cpp
– example of extending the framework and using it to process data from the VOC databases: http://pascallin.ecs.soton.ac.uk/challenges/VOC/opencv/samples/cpp/video_homography.cpp
objdetect
opencv/samples/c/latentsvmdetect.cpp
calib3d
The new rational distortion model has been introduced. It is useful for calibration of cameras with wide-angle lenses. Because of the increased number of parameters to optimize you need to supply more data to robustly estimate all of them. Or, simply initialize the distortion vectors with zeros and pass CV_CALIB_RATIONAL_MODEL
to enable the new model CV_CALIB_FIX_K3 + CV_CALIB_FIX_K4 + CV_CALIB_FIX_K5
or other such combinations to selectively enable or disable certain coefficients.
rectification of trinocular camera setup, where all 3 heads are on the same line, is added. see samples/cpp/3calibration.cpp
ml
highgui
highgui
windows, “save as” etc. Please, check the youtube videos where Yannick demonstrates the new features:http://www.youtube.com/user/MrFrenchCookie#p/ulibqt4
with development packages) installed on your machine, and build OpenCV with Qt support (pass -DWITH_QT=ON
to CMake; watch the output, make sure Qt is used as GUI backend)contrib
samples/cpp/chamfer.cpp
gpu
This is completely new part of OpenCV, created with the support by NVIDIA. Note that the package is at alpha, probably early beta state, so use it with care and check OpenCV SVN for updates.
In order to use it, you need to have the latest NVidia CUDA SDK installed, and build OpenCV with CUDA support (-DWITH_CUDA=ON
CMake flag).
All the functionality is put to cv::gpu
namespace. The full list of functions and classes can be found at opencv/modules/gpu/include/opencv2/gpu/gpu.hpp
, and here are some major components of the API:
image arithmetics, filtering operations, morphology, geometrical transformations, histograms
3 stereo correspondence algorithms: Block Matching, Belief Propagation and Constant-Space Belief Propagation.
HOG-based object detector. It runs more than order of magnitude faster than the CPU version! See opencv/samples/gpu
python
bindings. A lot more of OpenCV 2.x functionality is now covered by Python bindings.
These new wrappers require numpy
to be installed
(see http://opencv.willowgarage.com/wiki/InstallGuide for details).
Likewise the C++ API, in the new Python bindings you do not need to allocate output arrays.
They will be automatically created by the functions.
Here is a micro example:
import cv a=cv.imread("lena.jpg",0) b=cv.canny(a, 50, 100, apertureSize=3) cv.imshow("test",b) cv.waitKey(0)
In the sample a
and b
are normal numpy
arrays, so the whole power of numpy
and scipy
can now be combined with OpenCV functionality.
Links to wiki pages have been added to each function description, see http://opencv.willowgarage.com
All the samples have been documented with default output ‘’(0 or incomplete number of parameters)’’ set to print out “howto” run instructions; most samples have been converted to C++ to use the new OpenCV API.
Over 300 issues have been resolved. Most of the issues (closed and still open) are listed athttp://code.opencv.org/projects/opencv/issues?set_filter=1
The old bug tracker at https://sourceforge.net/projects/opencvlibrary/ is now closed for updates. As soon as all the still relevant bug reports will be moved to code.ros.org, the old bug tracker will be completely deleted. Please, use the new tracker from now on.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。