Ideas Page for OpenCV Google Summer of Code 2014 (GSoC 2014)

OpenCV winning the Everingham Award at ICCV 2013 for contributions furthering progress in the computer vision community as a whole.

General Information:

  • UTC to PDT (Pacific Daylight Time == Daylight savings time. In winter it's PST).


For students or mentors interested in applying

Accepted Projects for OpenCV GSoC 2014:

OpenCV GSoC 2014 students, projects, mentors are below.
Mentor link to spreadsheet and email is here .

Student                 Project                                           Mentor(s)
=======                 =======                                           ========
Lluis Gomez             Improve Scene Text Detection module in OpenCV     Stefano Fabri, Vadim Pisarevsky 
Abid Rahman             Extend of OpenCV-Python Bindings and Tutorials    Vadim Pisarevsky 
Fedor Morozov           Local feature descriptors                         Pablo Alcantarilla
Siddharth Kherada       Computational Photography: Image Decomp  Color    spmallick
Daniel Angelov          Custom Calibration Pattern                        Sid Bao
Vitaly Lyudvichenko     New edge-aware filters for OpenCV                 Alexander Mordvintsev
Alex Leontiev           Learning based trackers                           Gary Bradski
Tolga Bridle            Rec & Pose Est of 3D Objects via 3D Features      Bence Magyar
Francesco Puja          Saliency improvement for tracking                 Antonella Cascitelli
edgarriba               Real Time Pose Est Tutorial and DLS impl.         Alexander Shishkov
Yuri Gitman             P. Dollar segmentation algorithm                  Alexander Shishkov
Vlad Shakhuro           Fastest Pedestrian Detector in the West           Alexander Bovyrin
biagio                  Geometrical-primitives based localization system  Manuele Tamburrano
Tomasz Pietruszka       Optical Flow Estimation – state-of-the-art        Prasanna Krishnasamy
Paul Foster             Dense Tracking and Mapping (DTAM) for OpenCV      Vincent Rabaud

Project notes are compiled here .

Project Ideas summary:

Students may propose their own projects (give us a clear summary and why you can do this project). However, below are some of our priorities for this year

Contact us and/or discuss ideas at!forum/opencv-gsoc-2014

These are not in order of priority

  • Finger print detection (Prasanna Krishnasamy)
  • Quadrotor / quadcopter computer vision (Gary Bradski)
    • Implement hovering, tracking other algorithms
    • Due to the nature of this, you should have a working quad rotor craft with camera and feedback to work with
  • Graphics rendering expert: Create a data set generator for OpenCV
    • We want to take a 3D scan or CAD model of a rigid object, and
      • render it 1000's of times
      • in different lightings
      • using settable camera parameters (OpenCV structure)
      • outputting the rendered image and the ground truth mask and 6DOF pose
    • We also want to do the same thing with humans and/or hands
      • Use makehuman + blender + poser or any other tool
      • Create humans/hands in 1000's of poses, lightings etc
  • We would like to create a "High school robotics competition intelligent vision package" to allow high school robot competitions to be more autonomous
    • In Python
      • Calibration
      • Stereo
      • Planar object detection and tracking
      • Object tracking (such as balls)
  • Expand 3D processing in OpenCV already in the RGBD module
    • Surface curvature
    • Basic 3D features
    • ICP step to improve LINE-MOD
  • Expand OpenCV Viz module
    • Mentor: Anatoly Baksheev
    • Integration message loops highgui & viz. For now they are handled separately by waitKey & Viz3d::spin()
    • More widgets (like human body/hand/skeletons visualization, need to generate more ideas)
    • More widgets (free-fly mode, possible will be done before GSoC by me)
  • Mobile vision app development:
    • Vision apps on phone and tablet. We want a very clear examples to build on to make it easier for the rest to start developing mobile vision applications. People can apply for:
      • iOS (iPhone) examples
      • Android example
  • Mech Turk Interface
    • Easily label images for train test in OpenCV
  • OpenCL Optmization:
    • We have contributors already, get one or more of them to be GSoC students
  • Camera based 1D and 2D Barcode readers. OpenCV needs this, robotics needs this
    • Mentor: Claudia Rapuano
    • We have a basic datamatrix reader. Expand to other kinds of barcodes (1D, other 2D).
  • Improve tracking API module in contrib created for Gsoc 2013.
    • Mentor: Antonella Cascitell
    • Add Reidentification on the tracking (allows tracking to re-find the object if lost)
    • Add camera network activity sub-modual
    • Add saliency module for the tracking modual
  • Natural barcodes:
  • Mentor: Gary Bradski
    • OpenCV can read calibration patterns.
      • Calibrate a camera,
      • rectify it's output.
      • Put a picture next to a calibration pattern in a scene.
      • Find 2D interest points with features2D.
      • Measure them in the image using the calibration pattern.
      • Use the pattern of interest points and their measures to turn the picture into a calibration pattern/barcode so that the computer recognizes the picture and knows where it is in relation to the iamge.
    • Stretch goal, embeded and retrieve watermarks in the image.
  • Ego-centric vision:
    • maybe something like "Pixel-level Hand Detection for Ego-centric Videos." in CVPR 2013
    • Combine with depth sensing from the kinect
  • Geometry:
    • DTAM implementation
    • write tutorials for the libmv integration from the previous years (on GitHub), improve the CERES integration
    • create a structure for camera matrix information (K, D, colorspace ...)
  • OpenCV Documentation:
    • Add to the general documentation for all platforms: C++, CUDA, OpenCL, Python 2/3, Java, ... and smart search.
    • Help create an inverted index of functionality to functions. That is, say, edge detection would list Sobel, Scharr, Canny etc.
  • Course-ware:
    • We want to start offering vision courses using OpenCV.
      • If you are expert in a topic (say it's your area of graduate research, or you've just finished a project or course in a particular topic and can explain it well)
      • Write up the topic, the math and then develop a step by step example of it using OpenCV.
  • Expose OpenCV GPU functionality into Python API
    • Current Python OpenCV wrappers use cv::Mat <=> Numpy array mapping for passing data between C++ and Python worlds. Aim of this project is to adopt PyCuda GPUArray as a counterpart of GpuMat.
    • This would allow to extend cv2 wrapper generator to expose CUDA-powered OpenCV functions.
    • Project requires good knowledge of C++ and Python and willingness to dive into the internals of OpenCV, Python and PyCuda.
    • Expect all sorts of gotchas, subtle issues and design discussion with mentors.
    • The resulting design decisions can be used to wrap the OpenCV's OpenCL functionality with PyOpenCL


Actual signed up mentors

  • Alexander Mordvintsev zzznah(+)
  • Sid Bao ybao(+)
  • Vincent Rabaud vincent.rabaud(+)
  • Vadim Pisarevsky vadim.pisarevsky(+)
  • Adrian Kaehler therealadrian(+)
  • Terry Boult tboult(+)
  • spmallick spmallick(+)
  • Serge Belongie sjb344(+)
  • Stefano s.fabri10(+)
  • Prasanna pras.bits(+)
  • Pablo Alcantarilla pablofdezalc(+)
  • Bence Magyar mw.mzperx(+)
  • Manuele manuele.tamburrano(+)
  • Grace Vesom grace.vesom(+)
  • Open Source Computer Vision Library (OpenCV) garybradski(+)
  • Douglas Lee dougabug(+)
  • Claudia Rapuano c.rapuano(+)
  • Antonella Cascitelli antonellacascitelli(+)
  • Anatoly Baksheev anatoly.baksheev(+)
  • Alexander alexander.shishkov(+)
  • Alexander Bovyrin alexander.bovyrin(+)

In the below, get rid of the ''-delete-'' to make the emails work.

Anatoly Baksheev
Researcher, Vision Algorithms on GPU
Alexander Bovyrin
PhD, Senior Researcher
Argus/Itseez founder
NNU Lecturer
Gary Bradski
Founder, Industrial Perception Inc.
Consulting Prof. Stanford U.
OpenCV Founder, Technical Content Owner, GSoC Admin
Co-author of Learning OpenCV Book
Antonella Cascitelli
Grad student, University of Rome
Eric Christiansen
Stefano Fabri
CRR Team leader, University of Rome
Victor Eruhimov
OpenCV founding team/Senior Researcher
Argus/Itseez founder
NNU Lecturer
Adrian Kaehler
Principle Engineer, Applied Minds
Co-author of Learning OpenCV Book.
Peter Karasev
PhD Student, MINERVA Research Group
Georgia Tech
Vadim Pisarevsky
OpenCV founding team/Czar
Manuele Tamburrano
Grad Student, University of Rome
Vincent Rabaud
Principle Engineer, Aldebaran Robotics
Claudia Rapuano
Grad student, University of Rome
Grace Vesom
Lawrence Livermore
Bence Magyar
Pal Robotics
Pablo Alcantarilla
Toshiba Research Europe Ltd.

Back up Mentors

Mark Asbach
Fraunhofer IAIS
Schloss Birlinghoven
Sankt Augustin, Germany
Nicolas Saunier, Ph.D.
Assistant Professor
Civil, Geological and Mining Department (CGM)
École Polytechnique de Montréal
Alexander Mordvintsev
Software Engineer
Andrey Morozov
Software Engineer

OpenCV Org. Application to GSoC 2014

OpenCV GSoC Application

Previous Years

Everingham_Award.jpg (217.6 kB) Gary Bradski, 2014-02-10 09:22 am

EveringhamAward.jpg (203.1 kB) Gary Bradski, 2014-02-10 09:45 am