The Open Lighting Project is an effort to build high quality, open source software for the entertainment lighting industry. As new control protocols were developed, we recognized the need to develop a comprehensive test suite to evaluate protocol implementations and check for cross-compatibility. In 2011, we developed a test suite, but running the tests requires familiarity with the unix command line and access to a Linux or Mac machine, something many manufacturers don't have.
Our Google Summer of Code project for 2012 was to build a web frontend to the protocol tests, with the aim of making it much easier for manufacturers to run the tests prior to releasing a product. Over the course of 12 weeks our student, Ravindra Nath Kakarla, designed and built an interface which has received very positive reviews from engineers in the lighting industry. Ravindra's code has been merged into our main repository and is part of our latest release. We plan to start distributing stand alone testing appliances based on a Raspberry Pi and running Ravindra's code within the next month.
With the availability of low cost testing appliances, there is now no excuse for manufacturers not to thoroughly test their products before release. We expect this to increase the general quality of equipment and reduce the number of inter-operability problems within the industry.
By Simon Newton, Organization Administrator for the Open Lighting Project
Monkey is a small, fast and lightweight web server for GNU/Linux. It has been designed focusing on embedded devices, and is therefore, scalable by nature. It has a low memory footprint and CPU consumption, leading to an excellent performance.
This is our first year as a mentoring organization in the Google Summer of Code and it has been a great experience in terms of how the community is growing plus the many goals achieved by our two students. Lauri Kasanen, from Finland, converted our base code in a HTTP shared library and several code base cleanups. Finishing his project pretty quickly Lauri also wrote a new CGI plugin from scratch, plus many other code base optimizations. Sourabh Chandak, from India, implemented a Redis support package for our web services framework called Duda, and is now creating a new package to support Memcached. In addition, during his work he helped troubleshoot issues and propose new features for the core API. All of these student contributions exceeded our expectations, and we are very happy with all of the work completed this summer.
Thanks to everyone for this great opportunity, we are glad to contribute and support new people joining our community.
By Eduardo Silva, Monkey HTTP Daemon - Google Summer of Code Organization Administrator
SimpleCV is an open source python library that makes writing computer vision applications simple and fun. Our focus is creating a user interface that is intuitive so that computer vision can be used as a tool by makers, educators, and practical problem solvers. SimpleCV is a little over a year old, so we are still working on adding core functionality to the library.
We had the pleasure of working with three Google Summer of Code students this year: Vijay Mahantesh, Jay Rambhia, and Victor Silva. Over that course of the summer we collaborated with the students to add tools to the library that expanded its functionality, but also resonated with the student’s interests in the subject of computer vision. We wanted the students to get a broad understanding of the tasks involved with supporting a large open source project. To this end the students spent a significant amount of time supporting users via our help forum, generating blog posts and videos to publicize their work, and maintaining the library by fielding bug reports and feature requests. It was a great summer.
A few of the new features the students added to SimpleCV include:
Jay implemented a full tracking library that features mean shift tracking, Lucas-Kanade tracking, and Kalman Filter Tracking. He has also implemented a semi-working python port of OpenTLD.
Feature point detection is a hot topic in computer vision as it allows users to identify objects irrespective of the camera’s viewpoint. Our student Vijay devoted significant time to improving our feature extraction library.
Victor created a project template for making SimpleCV cell phone applications. This application allows you to quickly upload an image from your cellphone to a remote server for processing with SimpleCV. The processed image can then be returned to the user’s cell phone or displayed on the web.
Our student, Jay, helped us fill in some of the gaps in SimpleCV by adding support for frequency space filters, the Sobel operator, enhanced line finding support, enhanced ipython notebook features, and Ubuntu installation scripts.
Two cameras are often better than one and this is why humans and animals use stereo vision to navigate the world. To help students better understand depth perception Vijay added a complete stereo vision processing suite to SimpleCV.
Animated GIFs are the currency of online bulletin boards and forums. They are also a great way to embed animated illustrations of vision processing algorithms. For this reason our student Victor added an animated gif library to SimpleCV to allow us to save SimpleCV results as animated gifs and post them to the web.
By Katherine Scott, SimpleCV Organization Administrator