nomacs – Image Lounge is a light-weight image viewer developed at CVL. It is written in C++ with Qt and OpenCV and published under GPL. Since two years, nomacs has a plugin system which allows for adding modules dedicated to specific tasks.
We are accepted for Google Summer of Code 2016, as a part of the Computational Science and Engineering at TU Wien team. Please contact us, if you want to apply for any idea below cse-at-tu-wien-gsoc-2016@googlegroups.com.
Puzzle
If you are interested in applying for GSoC [nomacs] you can improve your chances by solving our puzzle. The puzzle is to check-out nomacs source code from our git repository (master branch), and compile it on your system using cmake and your favorite IDE/compiler. Then you should create a new plugin based on the SIMPLE_PLUGIN sample code that uses the DkPluginInterface. The plugin should implement at least one Instagram-like filter. You should send us the final puzzle as pull request of the nomacs-plugins repository.
Inpainting Plug-in
Description
Inpainting is the process of replacing lost or corrupted parts of the image data. Within this project a sophisticated algorithm should be implemented as plugin which allows users to delete unwanted content of their images (e.g. a pole, a fence or people) by selecting the region (using GrabCut [2]) and restoring the lost information using the properties of the image. The inpainting method should adopt a robust method such as the one presented by Mansfield et al. [3].
Benefit for the Student
The student will gain knowledge of in image processing methods, especially inpainting and image segmentation algorithms. Furthermore she can deepen her knowledge of using OpenCV.
Benefit for the Project
Inpainting functionality will be added to nomacs within this project. This will allow users to restore parts of the image. By implementing this functionality as plug-in it will keep the basic viewer small, while users can extend it on their demand.
Requirements
Advanced image processing knowledge, good skills in C++, experience in OpenCV and writing Qt plug-ins.
Image Stitching Plug-in
Description
A plug-in system was implemented in the GSoC 2013 by Tim Jerman which was released with nomacs 2.0. In this project an image stitching plug-in shall be developed. Image stitching allows users to combine their panorama shots or to create a high resolution image from multiple images. The stitching method should adopt a robust method such as the one presented by J. Zaragoza et al. [1].
Benefit for the Student
The student will gain knowledge in image processing methods, especially image stitching. Additionally she can deepen her knowledge of using OpenCV.
Benefit for the Project
Panorama functionality will be added to nomacs by this plug-in. Furthermore, a plug-in keeps the basic image viewer, while users can extend functionality on their demand.
Requirements
Advanced image processing knowledge, good skills in C++, experience in OpenCV and writing Qt plug-ins.
Image Collection Clustering
Description
In this project an image clustering plug-in shall be developed. Image clustering allows users to explore their photo collection based on different characteristics. On the one hand the entire collection is organized by their geograhical information using SVG maps.
Another possibility should be to cluster the collection based on a specified timeline. Thus, the clustering is performed on the date and time of the image acquisition.
Additionally, it should be possible to show photos from the collection based on a time selection.
Benefit for the Student
The student will gain knowledge in clustering and visualisation methods. Additionally she can deepen her knowledge of using OpenCV and Qt.
Benefit for the Project
An Image Clustering allows to explore large image collections based on the metadata like GPS tag or image aquisition time and date.
Requirements
Advanced knowledge in clustering and visualisation methods, good skills in C++, experience in OpenCV and writing Qt plug-ins.
References
[1] Zaragoza, J., Tat-Jun Chin, Brown, M.S., and Suter, D., “As-Projective-As-Possible Image Stitching with Moving DLT,” in IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp.2339-2346, 23-28 June 2013
[2] Carsten Rother, Vladimir Kolmogorov, Andrew Blake: “GrabCut”: interactive foreground extraction using iterated graph cuts. ACM Trans. Graph, 309-314, 2004
[3] Alex Mansfield, Nikolay Kobyshev, Hayko Riemenschneider, Will Chang, and Luc Van Gool. Frankenhorse: Automatic Completion of Articulating Objects from Image-based Reconstruction. Proceedings of the British Machine Vision Conference. BMVA Press, September 2014.