SoC 2008 application
- 1 Describe your organization
- 2 Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating?
- 3 Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.
- 4 Who will your organization administrator be? Please include Google Account information.
- 5 What license(s) does your project use?
- 6 What is the URL for your ideas page?
- 7 What is the main development mailing list or forum for your organization?
- 8 What is the main IRC channel for your organization?
- 9 Does your organization have an application template you would like to see students use? If so, please provide it now.
- 10 Who will be your backup organization administrator? Please include Google Account information.
- 11 Who will your mentors be? Please include Google Account information.
- 12 What criteria did you use to select these individuals as mentors? Please be as specific as possible.
- 13 Steering Committee
- 14 What is your plan for dealing with disappearing students?
- 15 What is your plan for dealing with disappearing mentors?
- 16 What steps will you take to encourage students to interact with your project's community before, during and after the program?
- 17 What will you do to ensure that your accepted students stick with the project after GSoC concludes?
Describe your organization
Our organization is a composite of several open source/free software projects: hugin, panotools and enblend/enfuse. We are used to collaborate across timezones and cultures.
Why is your organization applying to participate in GSoC 2008? What do you hope to gain by participating?
Did your organization participate in past GSoCs? If so, please summarize your involvement and the successes and challenges of your participation.
hugin/panotools participated in GSoC 2007. We consider this participation successful for both organization and students. Our projects were:
- New extensible modular GUI framework for Panorama Photography. Ippei Ukai has refactored the hugin code, cleaning the interface and adding Qt support while keeping wxWidgets compatibility. The upcoming hugin 0.7.4 release will still feature wxWidgets directly bound from the C++ code, mainly because the development of specific Qt widgets is very time consuming. Future plans are to provide hooks for rapid GUI development with higher level languages such as Python (wxPython or PyQt).
- Anti-ghosting HDR panorama blending and merging algorithm. During GSoC Jing presented her results at the IVRPA conference in Berkeley. She successfully finished the project and the code is now merged into hugin source code tree which we expect to release as 0.7.4 soon.
- Interactive Panoramic Viewer. This is a work on FreePV panoramic viewer. Since GSoC the work is still happening in the SoC branch of SVN. There is no release featuring changes done by the student yet. It is quite possible to see FreePV coce being integrated into VLC which is a popular crossplatform media viewer.
- Feature matching for panoramic images. Zoran Mesec successfully created Matchpoint - a new automatic control points generator that isn't affected by patents. Zoran also volunteered to be mentor for further Matchpoint development this year in GSoC2008 which shows his constant involvement into the project.
- VIPS integration. This project was supposed to bring very large images support to hugin, but failed.
Who will your organization administrator be? Please include Google Account information.
Alexandre Prokoudine will be primary administrator. He currently resides in Moscow, Russia. He is involved into open source projects since early 2002 as technical writer, GUI translator (hugin, Inkscape, Scribus, Audacity, Rosegarden etc.) and functional specifications author.
Being interested in design and photography since 2005 he quickly started enjoying his role of communicator between developers of various open source projects. In 2006 Jon Philips, a Creative Commons advocate, and he co-founded a CREATE project where developers of creative applications (mostly graphics related ones as of now) can meet and work out standards, unified approaches to solving real life user issues etc.
In 2007 Alexandre served as backup administrator of hugin/panotools and Scribus organizations for Google Summer of Code.
His Google account is email@example.com
What license(s) does your project use?
Both hugin, enblend/enfuse, panotools and matchpoint use GPL v2 or above.
What is the URL for your ideas page?
What is the main development mailing list or forum for your organization?
What is the main IRC channel for your organization?
We do not use IRC for communication. During GSoC 2007 we used Skype, but this is unlikely to happen again.
Does your organization have an application template you would like to see students use? If so, please provide it now.
- name / university / current enrollment
- short bio / overview of your educational background
- did you ever code in C or C++, yes/no? please provide examples of code.
- do you photograph panoramas? please provide examples.
- do you make other use of hugin/panotools than for stitching panoramas? please describe and show examples.
- were you involved in hugin/panotools development in the past? what was your contribution?
- were you involved in other OpenSource development projects in the past? which, when and in what role?
- why have you chosen your development idea and what do you expect from your implementation?
- how much time you plan to invest in the project? (we expected full time 40h/week but better make this explicit)
- please provide a schedule of how this time will be spent on subtasks of the project. While this is only preliminary, be aware that at the beginning of the project you will be required to provide a detailed plan, and during the project you will issue weekly progress reports against that plan.
Who will be your backup organization administrator? Please include Google Account information.
Yuval Levy is chosen to be backup administrator. He did a perfect job as primary administrator during GSoC 2007. His Google associated email address is google at levy.ch.
Who will your mentors be? Please include Google Account information.
Pablo d'Angelo is the initiator and main developer of the hugin project. He has studied computer engineering at the University of applied sciences Ulm, and is currently working at the DaimlerChrysler Research Center in Ulm, where he does research on advanced 3D reconstruction techniques for industrial quality inspection. He also has a PhD in the field of computer vision from the University of Bielefeld, which was granted in Summer 2007.
His Google associated account is pablo.dangelo at web.de.
Andrew Mihal is the project lead and main developer of the Enblend/Enfuse project. He received his Ph.D. in Electrical Engineering and Computer Science from the University of California, Berkeley. His specialization is in software for electronic design automation. He is also an amateur photographer, and enjoys turning academic research papers into useful open source projects as a hobby.
His Google associated account is andrewcmihal at gmail.com
Jim Watters is a Software Engineer at JFL Peripheral Solution, in Ottawa, Ontario, Canada, where he designs software for scanners. An avid user of PanoTools since 2000. A growing contributer to the source code of PanoTools since Aug 2003 and a current maintainer of PanoTools (http://panotools.sourceforge.net). Before receiving his degree in Computer Software in 1999, he received a diploma of Fine Art in Photography in 1990.
Most recently his attention has been directed to creating Immersive Panoramic Video.
His google associated account is jwatters at photocreations.ca.
Daniel M German
He is assistant professor at the Department of Computer Science at the University of Victoria, in British Columbia, in Canada. He received his PhD in Computer Science from the University of Waterloo in Canada.
One of his areas of research is open source software development. He is interested in understanding how globally distributed individuals are able to work together to create commercial strength software. He has also explored the use of historical artefacts (such as version control logs, emails, defect tracking) to understand how a system has evolved and how this information can be used to continue its development.
More recently he has been interested in the field of computational photography. More specifically on how to project extreme wide-angle images and spherical panoramas into acceptable flat representations.
During the last year he has been the maintainer of Panotools (http://panotools.sourceforge.net).
As a university professor one of his jobs is the supervision of students. He has graduated 6 Master's students, and currently supervising 3 Master's, and 1 Ph.D. Student. He has supervised more than a dozen honours projects of undergraduate students in computer science.
He is an avid photographer. His works have been exhibited in several galleries.
His Google associated account is dmg at uvic.ca.
Alexandre Jenny is graduate from Ecole des mines de Nancy, in physics and computer sciences. He spent 5 years in the computer game industry before starting to interest in panoramic.
He's casual photographer and he started interest in panorama when he moved near Alps mountains. After having climbed during 5 hours and reached the top, it's really frustrating not beeing able to capture the whole panorama. So he started studying this field at this time. It was during the very early stage of Panotools. The main problem was not being able to create automatically controls points, so he wrote the first SIFT control point generator which is always used a lot today as a Panotools plugin : autopano v1.03.
After this first release and because he felt that some business could be build upon panoramic, he founded Kolor, a well know business which is the creator of Autopano Pro, a fully automatic stitcher. Autopano Pro uses an industrial strong implementation of the SIFT algorithm, but has also many other features in a single easy to use package.
His Google associated account is alexandrejenny at kolor.com.
He is a student in the final year of undergraduate study of Computer and Information Science at University of Ljubljana. He has been a part of hugin's participation at GSoC 07 as a student where he successfully completed the project SoC2007_projects#Automatic_feature_detection_for_panoramic_images under the mentorship of dr. Bay. He continued to develop his work during the year and created MatchPoint, automatic control point suite. This year he is taking GSoC at a higher level, based on his past experience and knowledge in computer science and photography.
His Google associated account is firstname.lastname@example.org.
What criteria did you use to select these individuals as mentors? Please be as specific as possible.
- academic experience - most of them are or will very soon become PhD and have mentoring experience
- hands on experience with our code
- knowledge of the wider universe of code applied to produce stitched panoramas
- most of them have practical experience of applying the code to panorama production
This year we also have a steering committee - a group of professionals in panorama making that will help us support our students.
G. Donald Bain
G. Donald Bain manages the Geography Computing Facility at the University of California Berkeley, where he also teaches cartography and field studies. The rest of the time he devotes to VR.
Hi is a board member of IVRPA.
He travels and take panoramas for his web site: Don Bain's Virtual Guidebooks. This project (his wife refers to it as his obsession) has taken him from Tahiti to the Arctic, from the prehistoric ruins of the Southwest to the glaciers of the Canadian Rockies. As a compulsive educator it has been a real treat, documenting and sharing his landscapes with the world. He has taken over 4000 panoramas, with about 3500 currently on the site.
He co-founded the World Wide Panorama, the largest international collaborative effort showcasing over 3000 panoramas from VR-artists all over the world taken over 11 editions.
Bruno Postle trained as an architect and now works designing and engineering lightweight/portable/temporary buildings, monumental sculptures and anything else that comes along. Bruno has been a long-time contributor to the hugin project, and maintains a number of CPAN modules including Panotools::Script, a module for manipulating hugin project files. He also takes panoramic photographs.
Thomas Rauscher is graduate student at Vienna University of Technology in computer graphics, contributed to several parts of the PanoTools like PanoTools Anti Aliasing Filters, started the Freepv sourceforge project, and he is a moderator and web admin for PanoTools mailing list. He is also working 3 years in this field with his company Garden Gnome Software. In GSoc2007 he help mentoring the Interactive Panoramic Viewer project.
He is project leader, director, technical contributor, and/or consultant in the areas of 3D graphics, 2D graphics, digital video, image processing, computer vision, image compression, signal processing, dynamics and numerical analysis. Years ago he led research group of QuickTimeVR - the first panoramic images viewer.
What is your plan for dealing with disappearing students?
The very first thing we'll do is making sure we pick the right students. Our estimations are going to be based on the following criteria:
- students should be avid photographers;
- students should be able to prove that their programmings skill match our request;
- students should be able to prove that they have experience working with a mentor.
We are going to do our best to have them understand that GSoC is a both (close to) full time job and fun, so that they treat it with responsibility, but do not consider it a total boredom.
Next step is motivation.
The point of participating at GSoC for us is getting new contributors who bring innovation and stick to affiliated projects.
Last year we organized delivery to student of brand new panoramic heads sponsored by their manufacturer - Agno's Tech Engineering. We are investigating such possibility for this year's project again.
Depending on the context it might also be possible to structure the work as academic credits to further incentivation.
In case a student cannot deliver good enough results we are not going to drop all the work he managed to do and keep development at highest possible pace to make sure the community around affiliated project will not suffer in any way and any amount of money invested to the project by Google isn't completely lost.
What is your plan for dealing with disappearing mentors?
The selected mentors are well known and connected in the community. We estimate the risk of a disappearing mentor to be very low. To minimize the impact of such an unlikely event we strive to have several backup mentors who can replace others. In the event that one of the two mentors disappears, recruiting efforts for a backup mentor will start immediately. Our steering committee is well connected and will support the organizer in the efforts to recruit replacement mentors. Our community has already experienced the disappearing of key figures on important projects and survived the test when Helmut Dersch, founding father of the panotools library that is at the core of our community, disappeared.
What steps will you take to encourage students to interact with your project's community before, during and after the program?
First of all, we hope to recruit a student from the community. This is a growing and vibrant community. We will make sure that the student has the appropriate gear to shoot panoramas and we will do all we can to share with them our passion for panoramas. We have already organized a fund raiser to donate a fish-eye lens to one of the project maintainers  in 2006, a pano head for each student in 2007, and we can do this again and again.
What will you do to ensure that your accepted students stick with the project after GSoC concludes?
We will make sure he or she enjoys the practical aspects of panorama photography. Part of the assignement will be of practical nature: *use* the software to learn it, not just *code*. We intend to ask them to participate in the World Wide Panorama.