Dear Sir,<div><br></div><div>The following is my proposal for GSOC 2010.</div><div>I had initially sent it to Mr Hansen and made </div><div>changes according to his suggestions to make </div><div>my proposal more useful for the community.</div>
<div>Some of his suggestions as : "<span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; color: rgb(51, 51, 51); ">You propose a new XML schema to store the keywords. However, digikam already has a tagging system and it would be nice to simply integrate with this system." and using the tagged words for image search </span><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">have been implemented.</span></div>
<div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">I thank him for his advice.</span></div><div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">Hoping to work with digiKam in the summer.</span></div>
<div><span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; ">If you have any further suggestions kindly let me know.</span></div>
<div><br></div><div><font face="arial, sans-serif"><span style="border-collapse:collapse"><p class="MsoNormal" align="center" style="text-align:center"><b><u><span style="font-size:18.0pt;line-height:115%">REVERSE GEOCODING
AND IMPROVED MAP SEARCH ON THE ‘digiKam PLATFROM TO ENABLE AUTOMATIC TAGGING OF
REGIONS ON AN IMAGE AND ENABLE ADVANCED MAP SEARCH.</span></u></b></p>

<p class="MsoNormal"><b><span style="font-size:14.0pt;line-height:115%">Abstract :</span></b></p>

<p class="MsoNormal"><span style="font-size:14.0pt;line-height:115%">­</span><span style="font-size:12.0pt;line-height:115%">The digiKam photo management program
allows users to manage their photo collection and apply certain changes to
image properties. It is quite common that the user deals with maps of different
regions and also the map search tool. An interesting application that can be
developed in the digiKam environment is to automatically tag the various
parameters on the image. These parameters, like street, country, town etc. can
be predefined by the user, and they will automatically be tagged by using <i>reverse geocoding</i>. For this work I plan
to develop backends to ‘<a href="http://geonames.org" target="_blank">geonames.org</a>’ and ‘Google maps’ to fetch the string of
the relevant lat/long pair and manipulate the image accordingly so as to tag
it. This project also aims at modifying the map search in digiKam to allow users
to predefine the number of images and then display them on the map. </span></p>

<p class="MsoNormal"><b><i><span style="font-size:14.0pt;line-height:115%">Name and Contact info:</span></i></b></p>

<p class="MsoNormal" style="line-height:normal"><span style="font-size:12.0pt">Adwait
Gandhe</span></p>

<p class="MsoNormal" style="line-height:normal"><span style="font-size:12.0pt">Email
:</span></p>

<p class="MsoNormal" style="line-height:normal"><a href="mailto:adwait.gandhe1990@gmail.com" target="_blank"><span style="font-size:12.0pt">adwait.gandhe1990@gmail.com</span></a><span style="font-size:12.0pt"></span></p>


<p class="MsoNormal" style="line-height:normal"><a href="mailto:adwait1990@gmail.com" target="_blank"><span style="font-size:12.0pt">adwait1990@gmail.com</span></a><span style="font-size:12.0pt"></span></p>

<p class="MsoNormal" style="line-height:normal"><span style="font-size:12.0pt"> </span></p>

<p class="MsoNormal" style="line-height:normal"><b><i><span style="font-size:14.0pt">Benefits
to the community:</span></i></b></p>

<p class="MsoNormal"><span style="font-size:12.0pt;line-height:115%">The recently
developed digiKam map search is able to make a search based on a rectangle area
defined by the GPS positions. Development of this project will create a user
interface for end users, where the software will automatically tag predefined
parameters on the map, a task which is generally time consuming and tedious.
Also, the map search can be complimented with the display of predefined number
of images on the map pertaining to the region of interest. This particular feature
along with the recently developed kde education project ‘Marble’ will add a new
dimension to map search technology from the user perspective. The further
integration of the two can enable a location search where the user given
location map is displayed, with a predefined number of images, predefined
number of tags on that image, and the ‘Marble’ widget enabling its own class of
features. </span></p>

<p class="MsoNormal"><span style="font-size:12.0pt;line-height:115%"> </span></p>

<p class="MsoNormal" style="line-height:normal"><b><i><span style="font-size:14.0pt">Necessary
work to be done:</span></i></b></p>

<p style="line-height:normal"><span style="font-size:12.0pt"><span>1.<span style="font:7.0pt "Times New Roman"">      </span></span></span><i><u><span style="font-size:12.0pt">XML schema:</span></u></i><span style="font-size:12.0pt"> In my earlier work I had thought that a new XML
schema needs to be designed for this purpose. However after interacting with
one of the digiKam developers, I now understand that digiKam already has a
tagging system and it will be a lot easier to integrate the work with this
system. DigiKam stores these tags in the XMP and IPTC areas of the picture.
Hence there is no direct need to develop a new XML schema.</span></p>

<p style="line-height:normal"><span style="font-size:12.0pt"><span>2.<span style="font:7.0pt "Times New Roman"">     
</span></span></span><i><u><span style="font-size:12.0pt">Implement Backends:</span></u></i><span style="font-size:12.0pt"> Once the user specifies the parameters that are to be
tagged on the image, the automatic tagging needs to be implemented. This
process will require JavaScript development. The backend application will need
to be developed that will fetch the relevant information. The information like
name of street etc. will be retrieved in this process.</span></p>

<p style="line-height:normal"><span style="font-size:12.0pt"><span>3.<span style="font:7.0pt "Times New Roman"">     
</span></span></span><i><u><span style="font-size:12.0pt">Implementing the tagging:</span></u></i><span style="font-size:12.0pt"> Once the requisite data is retrieved from
<a href="http://geonames.org" target="_blank">geonames.org</a> and google maps, it will be stored in program memory. The digiKam image
manipulation plugins like text writing and drawing squares etc. now need to be
implemented. In this procedure, the tag names will be written onto the image. <b>Variable colours may be implemented for
tagging different parameters.</b></span></p>

<p style="line-height:normal"><span style="font-size:12.0pt"><span>4.<span style="font:7.0pt "Times New Roman"">     
</span></span></span><i><u><span style="font-size:12.0pt">Displaying pictures on the map:</span></u></i><span style="font-size:12.0pt"> This is a crucial step in the project. The map search
keyword stored earlier now comes in the picture. Also, as suggested by Mr.
Michael Hansen from the digiKam community, the tag names given to the image can
directly be used for the picture search. The database will be searched for
pictures pertaining to these keywords and the select number of pictures will be
displayed on the map.</span></p>

<p style="line-height:normal"><span style="font-size:12.0pt"><span>5.<span style="font:7.0pt "Times New Roman"">      </span></span></span><i><u><span style="font-size:12.0pt">Selective display:
</span></u></i><span style="font-size:12.0pt">An interesting feature that may
be implemented is of selective display of images. It will involve taking
information from the user as to the domain of search. For example sports. And
then search only this domain for the pictures !!</span></p>

<p class="MsoNormal" style="line-height:normal"><span style="font-size:12.0pt">The
last part of the necessary work will make the project more complex. Hence I
plan to implement it only if time permits.</span></p>

<p class="MsoNormal" style="margin-bottom:6.0pt;line-height:normal"><b><i><span style="font-size:14.0pt">Work by timeline:</span></i></b></p>

<p class="MsoNormal" style="margin-bottom:6.0pt;line-height:normal"><span style="font-size:12.0pt">April 9 to April 26: Understand properly the code for
digiKam. </span></p>

<p class="MsoNormal" style="margin-bottom:6.0pt;line-height:normal"><span style="font-size:12.0pt">April 26 to May 24: Perfect and revise the necessary
skills for the project like C/C++</span></p>

<p class="MsoNormal" style="margin-bottom:6.0pt;line-height:normal"><span style="font-size:12.0pt"><span>                    
</span><span>   </span><span>       </span>: Read the source code for other open
source projects to narrow down</span></p>

<p class="MsoNormal" style="margin-bottom:6.0pt;line-height:normal"><span style="font-size:12.0pt"><span>                                    </span>on a good
XML schema design. Also interact with the mentor to</span></p>

<p class="MsoNormal" style="margin-bottom:6.0pt;line-height:normal"><span style="font-size:12.0pt"><span>                                   </span>understand
the expectations of the organisation.</span><span style="font-size:14.0pt"></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>1.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Start coding.(May 24 to May 31) </span></b><span style="font-size:12.0pt">Initially for the first week work on understanding the
tagging system and source code of the digiKam software. Interact with the
mentor and community to clear concepts regarding the source code. Also the
geonames services have various WebServices like cities, ocean, earthquake etc.
This period will be utilized to narrow down on exactly which services to
integrate with digiKam. <b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>2.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Documentation on OpenStreetMaps reverse geocoding (June
1 to June 8)</span></b><span style="font-size:12.0pt"> I am keeping more time
for this part as the success of the work depends on this. This particular part
has been suggested to me by Mr. Hansen after I sent him the first draft of the
proposal. Search for an interface already defined for ‘Marble’ or work on
developing one for the current application.<b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>3.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Implement Backends.(June 8 to June 22) </span></b><span style="font-size:12.0pt">Once the XML is ready, the next step is to develop the
backends necessary for the geocoding. This will require more time as currently
I do not have prior knowledge of JavaScript and shall need guidance from my
mentor. However I am willing to learn the basics before the start of the
project as I find this work interesting.<b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>4.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Implement the tagging.(June 22 to July8) </span></b><span style="font-size:12.0pt">Completion of this part will cover up most of the
project. This will involve writing functions that link the plugins for image
manipulation and modify the image by tagging the retrieved information. The
GPSSync kipi plugin already integrates with digiKam. This knowledge will be
necessary for the tagging. <b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>5.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Complete the widget for tagging (Till July 15) </span></b><span style="font-size:12.0pt">This will ensure that the tagging widget is running
perfectly.<span>                                                                  
</span><b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:14.0pt">Midterm
Evaluation.............................................................................</span></b></p>

<p style="line-height:normal"><span style="font-size:12.0pt"><span>                                                                               
</span><b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>6.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Work on picture display (July 15 to July 29) </span></b><span style="font-size:12.0pt">This part will involve writing the code for selection
of the pictures pertaining to the keyword from the database and save them in
program variables. The next task is to display them on the image in a manner
that improves the interface of the software and makes it more attractive. As
suggested by Mr. Hansen, the tag words themselves can be used for the search
purposes along with the keyword supplied by the user.<b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>7.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Work on selective picture display (July 29 to August
7) </span></b><span style="font-size:12.0pt">If time permits.<b></b></span></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"><span>8.<span style="font:7.0pt "Times New Roman"">     
</span></span></span></b><b><span style="font-size:12.0pt">Complete the entire project till August 14. Always
good to finish before deadline.</span></b></p>

<p style="line-height:normal"><b><span style="font-size:12.0pt"> </span></b></p>

<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><b><i><span style="font-size:14.0pt">Personal Bio:</span></i></b></p>

<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><span style="font-size:12.0pt">Hi, my name is Adwait
Gandhe. I am a second year student at Birla Institute of Technology and
Science, BITS-Pilani, Goa Campus. I am currently pursuing Electrical and
Electronics engineering. My primary interest is Image Processing.</span></p>

<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><span style="font-size:12.0pt">I have taken certain related
courses like Computer Programming 1 and 2 covering the programming basics of
C/C++ environment. I have good experience in coding in C/C++ and deeply
interested in working in image manipulation. My main motivation in applying to
this organisation was working on software for image manipulation. I plan to work
to the best of my knowledge and simultaneously learn during the project.</span></p>

<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><span style="font-size:12.0pt">Contact details :</span></p>

<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><span style="font-size:12.0pt">Email : </span><a href="mailto:adwait.gandhe1990@gmail.com" target="_blank"><span style="font-size:12.0pt">adwait.gandhe1990@gmail.com</span></a><span style="font-size:12.0pt"></span></p>



<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><span style="font-size:12.0pt"><span>           </span>: </span><a href="mailto:adwait1990@gmail.com" target="_blank"><span style="font-size:12.0pt">adwait1990@gmail.com</span></a><span style="font-size:12.0pt"></span></p>



<p class="MsoNormal" style="text-align:justify;text-justify:inter-ideograph;line-height:normal"><span style="font-size:12.0pt">Phone : Will be given if
requested.</span></p>

<p class="MsoNormal" style="line-height:normal"><b><span style="font-size:12.0pt"> </span></b></p>

<p class="MsoNormal" style="line-height:normal"><b><span style="font-size:12.0pt"> </span></b></p>

<p class="MsoNormal" style="line-height:normal"><span style="font-size:12.0pt"><span> </span></span></p></span></font><br>-- <br>Adwait Gandhe<br>Second Year Undergraduate<br>BE(Hons) EEE<br>BITS-Pilani, Goa Campus.<br>
|+919881469181|<br><a href="mailto:adwait.gandhe1990@gmail.com" target="_blank">adwait.gandhe1990@gmail.com</a><br>
</div>