proposal
TRANSCRIPT
Digital photography basics on GCompris
A GSOC 2012 Proposal for GNOME
Abstract
The goal of this proposal is to develop a camera based educational activity toolkit
that extends GCompris, for kids between age group (2-10).
“ Give a Child the Gift of Photography And You Give a Child a Key that Can
Open New Doors to Creative Expression, New Perspectives, Confidence, Artistic
Achievement, & FUN ”
Motivation
Camera and Photography have always been fascinating for me and I wanted to do
much more with them.
When I visited nearby rural areas in Rajasthan, India to train kids to use OLPC
laptops , at that time making them familiar with GCompris fascinated me and drew
my attention to develop some activities related with camera to teach kids.
Being kids lover, photographer and open source enthusiast. This project would let
me combine all and Will help kids to learn as well.
Proposal Activity set:
a) Know your camera Introduction
know the parts and working of camera
CamPuzzle
b) Primary Light Colors Color Description (Primary, Secondary and White light)
Identify colors (as Primary, Secondary and White light)
Add color to get desired color
c) Image filters Play with Different Filters
Use Filters to get expected result
Revert back the color
d) Optics
e) Take a shoot
f) Camera Simulator
GCompris Camera Activities:
A GCompris extension, that has following set of activities:
a) Know your camera
It will include the textual description of various parts of a camera and a level at the
end to assemble various parts of camera in form of puzzles. Kids will click on each
part of camera in the initial levels and will be explained its functionality in text /
audio format. It will be categorized further as:
Introduction
know the parts and working of camera
Cam-Puzzle
b) Primary Light Colors
In this Activity at the initial level there will be description about primary and
secondary light colors and formation of white light color with colors. Different
level of activities will be based on color selection, desired color formation, Kids
will be asked to form secondary color with mixing primary color. Further
classifications are as follows:
Color Description (Primary, Secondary and White light)
Identify colors (as Primary, Secondary and White light)
Add color to get desired color
c) Image filters
In the set of Image filters activity image filters will be presented to kids and letting
them play with them and adjust brightness, saturation, hue, etc. In this activity, at
the end a level will be kept to make it more interactive where all filters will be
combined together and kids will be asked to adjust different filters and produce
expected results in a specific image as bringing back tux to blue color and
increasing / decreasing its brightness etc. Also number of modes will be equivalent
to number of levels in this activity as shown in the mockups below. Classifications
are as follows:
Play with Different Filters
Use Filters to get expected result
Revert back the color
d) Optics
In this activity we will teach kids about lens, magnification, how light ray passes
through the lens but yes keeping it in mind the range of kids for GCompris is 2-10 ,
here activity will be emphasize on on close / far and big / small (zoom in / out )
effects as observed from camera lens. In this activity kids can learn how light rays
coming from object through camera lens in form of animations. Kids will be able
to change the position of lens and observe the effects.
e) Take a shoot
In this activity we'll teach kid how to grab a picture holding a camera. We'll assign
them a task mentioning different focal points and they'll be asked to capture them
.Also a viewfinder will be provided on the screen as shown. The difficulty of level
will vary on the number of objects in the Picture. Also in this set of this Activity
Kids will learn about Identifying objects.
f) Camera Simulator
In this Activity, we will teach kid to interact with basic features of camera via
simulator. In the initial levels of this activity there will be explanation of each one
of them lightning, aperture, focal length, aperture ISO , etc individually and at the
end of the level we will show them altogether and ask kids to modify image using
all the functionality. See [1]
Implementation:
Getting insight into interaction between GCompris core and activity
plugins.
Create menus in xml formats for each activity including all important
information & fields related with activity.
Designing the User interface with PyGoocanvas to implement the
canvas widgets & PyGTK for creating the GUI.
Use GIMP for icon skins etc.
Use PIL (Python Imaging Library) for image filters activity. [2]
Developing algorithms for each game activity.
Integrating algorithms with the code.
To get started with sample code of pythontest & pythontemplate
activities.
Timeline:
April 23 - may 21:
-Further discuss the activity ideas with the mentor
-Getting familiar with PyGoocanvas, and GCompris API.
-Getting familiar with the Gcompris development workflow.
-Setting up the development environment.
-Study the overview of game sequence & interaction between
GCompris core & activity plugin.
-Contact people who've worked on Gcompris in the past, learn from their
experiences.
Phase-1: May 22 - June 4:
Start Coding
User Interface Design for the activities : Introduction and Know your Camera,
Code integration of activity plugin with the UI.
Documentation
Phase-2: June 5 - June 18:
Designing UI for Primary Light Colors activity and its different levels,
Code Integration and Documentation
Phase-3: June 19 - July 2:
Designing UI for Image Filters and its different levels of Activity.
Use of Python Imaging Library
Code Integration and Documentation
Phase-4: July 3 - July 9:
Designing UI for Optics Activity
Mid-term evaluation:
Three Activities will be Showable: know Your Camera, Primary Light Colors and
Image Filters Activity with documentation.
Phase-5: July 10 - July 16:
Code Integration and Documentation for Optics Activity
Phase-6: July 17 - July 30:
UI design for Take a shoot activity and its different level.
Code integration and Documentation
Phase-7: July 31 - August 13:
UI design for Camera Simulator activity with its different levels.
Code Integration and Documentation
August 14 - August 20:
Extensive Testing, Documentation & Debugging.
Code cleaning.
Final Release.
Student:
Name: Vivek Anand
Email: [email protected]
Blog URL: http://insidevivek.wordpress.com/
Github: https://github.com/insidevivek
Timezone: +530 GMT
Location: Bangalore, India
I am Vivek Anand currently pursuing engineering in Information Technology from
Govt. Engineering College Bikaner, Rajasthan Technical University.
I am passionate about Interaction design, Open Source software and hardware. I
used to work on a multi-touch table [3] [4] with my college mates. My blog details
[5] [6]. Apart, I am an open source enthusiast and active member of Linux user
group at my college [7]. I have been using Linux since past 3 years where
GNOME is the preferred desktop environment on it.
- I am well versed with photography and basic principles/concepts of optics.
- I love to code in C, C++, Python, PHP, Java and JavaScript, I have worked on
joomla twitter module, Drupal module to auto tag users, python django application
to implement feedback app. Code can be found here [8]
Since I am already well-versed in the community interactions/dynamics of OSS
projects, I will have absolutely no trouble in mingling with the community and
working with the infrastructure (Forums; Version Systems etc.). I have submitted
bug report (#672964)
I have participated in some intercollegiate technical festivals, fetched my team
First Prize at IIT Kanpur and BITS Pilani’s technical festival, where I exhibited
our multi-touch table with Applications and demonstrated how to make a PyMT
application from scratch.
On the other side I have organized couple of events including Software Freedom
Day [9], Annual FOSS Summits “RajasFOSS”.
Also I have been associated with Spoken-tutorial, an initiative of “Talk to a
Teacher” project of the National Mission on Education by Govt. of India.
References:
Python Imaging Library: http://www.pythonware.com/products/pil/
PyGoocanvas: https://live.gnome.org/PyGoocanvas
PyGTK: GTK+ for Python: http://www.pygtk.org/
GCompris: http://gcompris.net
GIMP: http://www.gimp.org/
Links:
[1]. http://camerasim.com/camera-simulator/
[2]. http://www.pythonware.com/products/pil/
[3]. http://vimeo.com/2953423
[4]. http://www.youtube.com/watch?feature=player_embedded&v=UCQfgysLO9o
[5]. http://insidevivek.wordpress.com/
[6]. http://anandvivek.in/
[7]. http://lugb.in/
[8]. https://github.com/insidevivek
[9]. http://lugb.in/sfd