Skip to content
Stefan van der Walt edited this page Feb 15, 2014 · 13 revisions

PSF student guidelines: http://wiki.python.org/moin/SummerOfCode/Expectations

Advice on writing a proposal (written with the Mailman project in mind, but generally applicable)

Application template for 2013

Community bonding

An important part of the GSoC is to connect with the community, both so that we can get to know one another and so that we may gauge your programming skills before selection. Pull requests provide an excellent opportunity to learn how the library fits together, so tackle one of the issues or implement a suggested feature.

Summer of code project ideas

These are core ideas for new projects, but may need to be expanded to have the correct scope, level of challenge and significance of contribution to qualify.

  • Interactive gallery

    Currently, the examples gallery is a static collection of code snippets and output images. We'd like users to be able to modify the code there and see the result. The outcome of this project would be a web-app that launches a sandboxed, resource-controller Python environment (probably built on top of Docker) that executes code snippets and provides the resulting image as a response.

    This project is best suited to a candidate with a strong Linux background and an interest in systems engineering.

  • Image registration

    Image registration forms part applications such as panorama stitching and super-resolution. It is also an important pre-processing step in many types of medical imaging. Some work has been done on implementing image registration in Python, e.g. the imreg project (https://github.com/pyimreg/imreg). The outcome of this project would be a registration sub-module that implements, e.g., dense registration (mutual information), sparse registration (ransac + features).

    This project is best suited to a candidate with some experience in API design and refactoring, although guidance will be provided via pull request review.

  • Blind deconvolution

    In order to perform deconvolution, the blurring or Point Spread Function (PSF), needs to be known. Blind deconvolution is the process of estimating the PSF and reversing its effect. This project involves researching the latest state of the art methods and implementing one or more of them. A good start may be the following paper:
    http://people.csail.mit.edu/sparis/publi/2011/cvpr_radon/Cho_11_Blur_Kernel_Estimation.pdf

    This project is best suited to a candidate with a signal processing background.

  • Non-patent-encumbered face detection

    Face detection as proposed by Viola & Jones is patented. As such, most implementations available cannot be used in scikit-image. A patent-free implementation would require modification and re-training of the underlying cascade, as described in the following article:

    http://rafaelmizrahi.blogspot.com/2007/02/intel-opencv-face-detection-license.html

    This is a challenging project with a fairly large research component. It is best suited to a creative candidate who likes to work independently.

  • Text detection algorithms