This is NOT the official contest page. DO NOT ASSUME IT IS.
Opticks Open Source Programming Contest
What's the Prize?
Playstation® 3 and Nintendo® Wii.
The first place finisher gets to choose between the Playstation® 3 and Nintendo® Wii. The second place finisher gets the prize that the first place finisher did not select.
What are the dates?
- All submissions have to made by June 4, 2010
- The winners will be announced on June 18, 2010
What is the contest?
The contest is to write an Opticks extension. If you don't know what Opticks is, look below to the next section. You can view a list of already available extensions for Opticks. You can also learn about what extensions can do.
We are looking for interesting extensions that are related to the core focus of Opticks, which is remote sensing, image analysis and video analysis. This can include hyper-spectral, multi-spectral, synthetic aperture radar, astronomical data, video data or even medical imagery.
Here are some ideas for you:
- Basic synthetic aperture RADAR (SAR) processing tools such as FFT analysis, image formation, and sub-aperture processing.
- Video processing and object tracking tools such as background suppression, optical flow tracking, and shape recognition tracking.
- Hyperspectral data point clustering and classification. (supervised or unsupervised)
- Astronomical image processing tools such as noise removal and point source intensity classification.
- Index all data in a directory or directories and place markers on a globe view (NASA World Wind, KDE marble, etc.) such that the user can click them to load the data.
- If you have an idea and you're not sure if you're on the right track, you can talk to Opticks developers on our developers' email list and IRC chat channel.
What is Opticks?
Opticks is a free and open source remote sensing application and development framework. Opticks is similar to commercial tools like ENVI, ERDAS Imagine, SOCET GXP, and RemoteView. Opticks can be used to load remote sensing data, usually imagery, and then perform analysis on that data to come to some conclusion. For example, Opticks can be used to work with hyper-spectral, multi-spectral, synthetic aperture radar, and motion imagery data. Opticks is also a development framework with a rich API and plug-in architecture that allows developers to build new remote sensing algorithms and to create new remote sensing products. The majority of Opticks is actually implemented using it's own API and plug-in architecture.
Take the Feature Tour.
Ok, so why do you care? We think it's a pretty cool application. If you are interested in physics, this remote sensing stuff is pretty darn cool. And if you are a programmer, making all of this work on a desktop while processing large imagery (> 4GB) exposes you to some pretty cool stuff as well.
What programming language will I be using?
Opticks extensions can be written in C++, IDL and Python.
Extensions written in C++ are the most powerful way to extend Opticks. In fact, most of capability provided by Opticks is implemented using the same C++ SDK you would be using.
For those developers that have a stronger background in remote sensing and image analysis we also provide the ability to extend Opticks using IDL and Python. Using these two languages you are more restricted, but there is more than enough capability to create algorithms. You can browse some sample algorithms. Visit the IDL Scripting page and Python Scripting page for more details.
How do I enter?
- All submissions must be open source including but not limited to the software, algorithms, techniques, and concepts associated with the entry and must be licensed under GNU LGPL v2.1 license or a compatible license.
- Submissions must be made to the Opticks developers' mailing list. Submissions may be zip, tar.gz, or tar.bz2 files with all source code and build files needed to build the extension. Alternately, a link to a publicly accessible source code repository (free services include: Github, Google Code, Sourceforge, Launchpad, bitbucket) may be sent to the developers' mailing list. Binary builds of the extension or Opticks AEB install files are not required, but may be submitted as well.
- Submissions must be received by the mailing list server by 11:59pm EDT on May 21st, 2010. It is suggested that you submit earlier. You may submit multiple extensions but, if many entries are submitted, one of your entries will be given priority. If a single entry is submitted multiple times, the most recent submission prior to the deadline will be used.
How do we pick the winning submission?
- The winner will be selected by three arbitrary and punctilious judges with no formal criteria. When making their decision, judges will account for:
- interesting and novel capability
- usefulness of the extension
- end user documentation and code commenting
- general code quality and readability
- reuse and integration of existing Opticks functionality
The judges are Trevor Clarke, Kip Streithorst and David Sulgrove. All entrants will receive constructive feedback. Submissions which are deemed non-applicable will be ignored.
Are there any other rules?
Now that you mention it, there are:
- The Opticks Open Source Programming Contest is open to individuals or teams, but not to corporate entities.
- If you enter, you agree that members of the Opticks development team may publicize your name, likeness, and the description of work submitted for the contest.
- There will be no compensation for submissions. The first and second place finishers will not be required to pay applicable shipping costs for their prizes.
- This contest is not affiliated with any corporation.
- Core developers and members of their immediate families are not eligible to enter:
- Dustan Adkins <dadkins>
- David Sulgrove <dsulgrov>
- John Prikkel <jprikkel>
- Kip Streithorst <kstreith>
- Michael Considine <mconsidi>
- Ryan Evans <raevans>
- Richard Forehand <rforehan>
- Trevor Clarke <tclarke>
- Todd Johnson <tjohnson>