SoC/Ideas 2010

Complex Rendering Support for gnome terminal
gnome terminal currently does not support proper rendering of Indian characters. The aim of this project is to add complex rendering support to gnome terminal. This will be similar to our 2007 soc project for adding complex rendering support to tuxtype typing tutor.

Digital Kolla Varsham Calendar
Kolla Varsham is followed by many Malayalees around the world as a calendering system, especially for celebrating special occasions like birth days, marriage etc. Currently Gregorian, Hebrew and Jalali calendar systems are available. This task will add Kolla Varsham to this list.

Tokenizer/Lemmatiser for malayalam for GATE
Write a Lemmatiser for Malayalam. See whether we can do a plugin for GATE for malayalam, that would help NLP reasearchers a lot and that would be a great idea. Google search GATE,download and install GATE, and in the plugins directory a hindi tokenizer and lemmatiser is available.

Functional Optical character Recognition system
Add malayalam Support for tesseract OCR.


 * Study tesseract OCR system
 * Recogntion of all characters
 * Layout recogization using ocropus (optional ?)

http://code.google.com/p/tesseract-ocr/

http://code.google.com/p/ocropus/

Write a Gnome Speech Driver for Dhvani and Integrate it with Orca

 * 1) Orca for visually impaired users uses gnome speech for speech engines. Currently Festival, Espeak, freetts etc have drivers for gnome speech. We need to write a driver for dhvani.
 * 2) Develop plugins for KTTS/Gedit/Firefox

Write a Dhvani Interface for Speech Dispatcher
The goal of Speech Dispatcher project is to provide a high-level device independent layer for speech synthesis through a simple, stable and well documented interface. Since SD is more discussed to act as a unified TTS layer for both gnome and KDE, We can try to write a  Interface for that

Rewrite the Dhvani sound system with SDL and Additional APIs

 * 1) Rewrite the ALSA sound system of Dhvani with SDL to make it a cross platform application
 * 2) Packaging for different platforms
 * 3) Bug fixes for langauge modules and Code clean up
 * 4) Adding pitch/volume/pause support for the generated speech
 * 5) API to stop the speech in between a synthesis
 * 6) Provide Dhvani as a library
 * 7) API to check whether the synthesizer is producing speech(isSpeaking)

Localization of Free Content Management Systems to Malayalam-Drupal &Joomla
100% localization of Drupal and Joomla CMS systems to Malayalam

Speech recognition system for Malayalam
The aim is to develop a speech recognition system for Malayalam using the concepts of memory prediction framework. Memory prediction framework put forward by Jeff Hawkins in his book 'On Intelligence'(2004) is a theory of brain function, based on the hierarchical organization of human neocortex.It explains how the hierarchical structure enables brain to match sensory inputs to the stored memory patterns for predicting the future input sequences. According to this model, neocortex has a layered structure with different layers storing constructs of varying complexity, with sensory inputs coming to the lowest layer. For example in case of vision, the lower layer receives retinal signals and layers up the hierarchy associates themselves with meaningful constructs like lines, two dimensional figures, and furthur up specific objects like faces etc. In speech the layers store different speech constructs from phonemes and syllables to phrases and sentences. The human speech perception and recognition can be understood using this hierarchical organization. If we mimic the way in which human brain recognizes speech, the resulting system will be more robust than the existing systems. The proposed system is trained with a carefully compiled database and different speech constructs are stored in different layers.When a speech segment to be recognized is given, a series of predictions start and signals will be passed upwards and downwards the layers, until the most probable speech construct is arrived at. For example if the most probable candidate for first word is 'how', predictions start as to what succeeding words can be. This continues until the last word is arrived at and the phrase giving maximum probability will chosen among these predictions.

References:
 * 1) "On Intelligence", Jeff Hawkins, Sandra Blakeslee; Henry Holt, 2004
 * 2) "Hierarchical Temporal Memory - Concepts, Theory, and Terminology" by Jeff Hawkins and Dileep George, Numenta Inc.
 * 3) http://www.phillylac.org/prediction

Creating a new family of Equal Height Fonts (EHF)for Malayalam language
To design and create a new family of Equal Height Fonts for the traditional Malayalam script. Following Roman typology, serif and sans serif type of font variations are available in Malayalam. Equal Width Fonts, such as Courier, available in Roman typography are impossible for Malayalam characters and this is unnecessary. The proposed Equal Height Fonts is a new concept in the history of font making to surmount the typographical challenge of vertically stacked conjuncts.

How to Apply

 * 1) see http://socghop.appspot.com/document/show/gsoc_program/google/gsoc2010/faqs
 * 2) use this http://wiki.debian.org/SummerOfCode/StudentApplicationTemplate
 * 3) You have until April 9, 12 noon PDT / 19:00 UTC to contact us and to apply on the Google Summer of Code application.

Selection procedure
http://socghop.appspot.com/document/show/gsoc_program/google/gsoc2010/faqs

Guidelines for Students
How to write applications for KDE Google Summer Of Code? - most of the tips applicable to all projects.

Guidelines for Mentors
Summer of Code Mentoring HOWTO