Open Source Computer Vision and Deep Learning Library

OpenCV, the Open Source Computer Vision Library includes state of the art computer vision and deep learning algorithms (including running deep networks) and apps. It is professionally coded and optimized. It can be used in C++, Python, javascipt, Cuda, OpenCL and Matlab. It runs on: Android, iOS, Windows, Linux and MacOS and many embedded implementations such as Raspberry Pi.

It is also useful to look at the change log: and instructions to install on various platforms:

Please see our videos for the past several years of GSoC contributions: (2017: (2015: (2014: (2013:

Many books on OpenCV, google: books opencv

lightbulb_outline View ideas list


  • c++
  • python


comment IRC Channel
email Mailing list
mail_outline Contact email

OpenCV 2019 Projects

  • Yashas Samaga B L
    Allow the OpenCV's DNN module to work with GPUs
    The development of GPUs for general purpose computing has revolutionized the field of deep learning. They are critical for training large deep neural...
  • Muskaan
    Computer Vision based Alpha Matting
    This project aims to integrate some of the computer vision based alpha matting algorithms into OpenCV. Alpha matting refers to the problem of softly...
  • Diego Velazquez
    Curating Deep Nets for the OpenCV DNN Module
    The OpenCV's DNN Module allows us to run inference on a pre-trained Deep Neural Network in order to accomplish high end vision tasks with just a few...
  • Fanny Monori
    Deep learning based super-resolution algorithms based on OpenCV DNN
    Super Resolution is a subset of algorithms that aim to up-sample a lower quality image to a higher quality one. It’s goal is to create an up-sampled...
  • Apoorv Goel
    DynamicFusion Implementation
    DynamicFusion is the first dense SLAM system capable of reconstructing non-rigidly deforming scenes in real time. It accomplishes this by extending...
  • Saiteja Talluri
    Facial Landmark Detector
    Facial feature detection and tracking is a high value area of computer vision since humans are interested in what humans are paying attention to,...
  • Wenzhao Xiang
    Improve the performance of JavaScript version of OpenCV (OpenCV.js)
    OpenCV.js is a JavaScript binding for selected subset of OpenCV functions for the web platform. It allows emerging web applications with multimedia...
  • Xavier Weber
    Learning-based Super Resolution
    Super resolution is the process of up-scaling and improving the details of an image. Currently the super resolution modules within OpenCV are based...