Thursday, May 31, 2012

Proposal for GSOC12 and Apertium

Q .Why is it you are interested in machine translation?
A. The world is now mobile. People always prefer to carry their mobile phones with them. professionals like politicians, diplomats, businessman, sportsmen, people from media and other industries have to travel almost every day to different parts of world. They have to deal with people who speak languages different than theirs. Moreover many countries use their own national language as the official language for their written documents. In this scenario the power to translate text to the desired language has vast utility.

Q. Why is it that you are interested in the Apertium project?
A.Because of my interest in open-source and develop technology which can help people in their daily life.

Q.Which of the published tasks are you interested in? What do you plan to do?
A.I am very much interested in "Apertium on your mobile". I have successfuly completed all the required challenges.

WORK DONE TILL NOW

Coding challenge

A method that just exercises the system, ie translates something predefined (ie not from standard input) and show the result.
  • java -jar ApertiumRun.jar <input file path>
  • Output is translated text
Please view code on GITHUB [https://github.com/arinkverma/Apertiurm-Java-port]

Extra challenges

Features/Support
  • Share intent (Figure 2)
  • Installation of language pair from local directory  (Figure 3 and Figure 4)
  • Language list view (Figure 5)
Made a small demo Android app for translation for that language pair

Figure 1
A typical layout basic layout

Figure 2
Showing share intent

Figure 3
Installation of language package from directory

Figure 4
Language pair detected in package 

Figure 5
Showing listview of installed languages

The apk file is standalone, with a single default language.



WORK TO BE DONE

Phases/milestones with dates

Time Task
May 21 - May 28 Planning and SRS development
  • User case diagram  -> 15hrs
  • Structural and database diagram  ->15hrs 
May 29 - Jun 26 Implementation
  • Data structure -> 20hrs
  • Creating library -> 25hrs
  • Porting into Android -> 40hrs
  • Mechanism to manage language pairs  -> 35hrs
June 27 Deliver subversion and discuss architecture and ideas with mentor
June 28- July 8 Adding basic intent of share and clipboard -> 35hrs
July 9 Midterm submission
July 9 - July 20 Adding sum advance feature like language specific keypad widgets. -> 60hrs
July 21 - Aug 7 Testing
  • Running apk on device -> 15hrs 
  • Catching and fixing bugs -> 15hrs
  • Improvement and optimization
Aug 7 - Aug 10 Documentation -> 20hrs
Aug 10 - Aug 23 Finalize the code
Aug 24 Submission

Addon features

Provide customer the services of Apertium on their mobile with more added features like
  1. Different keypad for different language
  2. Translation of SMS and other text content like contact, address, memo (Figure 7)
  3. Fetch language pairs from remote server
Figure 2
Figure 7 : Integration with apps like SMS

Technical approach

For basic feature
1.Language pair
  • For language pair is I have used a zip-compress file which include Install.xml in root. Install.xml contains information about installation and language pairs.
Structure of Install.xml

a-b
b-a
LanguageA-LanguageB
LanguageB-Languagea

Download dummy Language pair package (en-eo) 
[Note : It is en-eo language translation]
  • Jar file can be also used to serve same purpose without extraction
  • SVN to fetch content from remote server
2.Share intent
Android share intent features inorder to connect with other installed application in device.
3.Different keypad for different language
It can be done by having different layout of keypad. Same concept as Android have different layout for number input and alphabetic inputs. like the softkeypad project.
To provide addon features
  1. For different keypad for different language I can develop XML android layout with bunch of language which can be change according to TextArea.
  2. So opensource Softkeypad can be used. I have developed specific keypad for Hindi language earlier and capable of doing it for others too. (see link below)
  3. For translation of SMS and other content, Android intent can be implemented in order to connect with other relevant activities.

 About me

I am ug students doing btech from Indian Institute of Technology Ropar, 3rd year, Computer Science and Engineering. I love building stuff and coding. I have much experience in android application developments. I have work with company like Hewlett-Packard, Indian Railway to develop mobile  application along with implementation of web-services for heavy traffic.Please visit the link below to get more of me.

Related project/code

  1. Project with Hewlett-Packard and Indian Railway
  2. Download apk for Hindi keypad [mobile should have hindi unicode]
  3. Virtual Bengali keyboard

No comments:

Post a Comment