Thursday, April 15, 2010

Weekly Report 5

In this week I searched a segmentation algorithm for the image processing part of the project. Due to huge domain space of the picture, which we will use, one segmentaiton algorithm is not enough for our aim. A fusion approach should be used and the candidate segmentation algorithms for this approach are region growing methods, edge detection based methods, histogram based methods and clustering based methods. Combining these algorithms gives us a better segmentation. After the completion of segmentation part, feature extraction is the next step. For each segmented image a set of features are extracted. By using extracted features a classifier should be designed. Simple classifiers are enough for our purpose such as Bayesian decision making method or decision tree.

Friday, April 2, 2010

Weekly Report 4

This week we tried to carry our project one step farther. Last week we distributed our workload using trac and started to perform our duties. Together with Güliz, we enhanced the client-server communication of our project. The problem in the server client part was caused by the buffer and string size limitations. We partly solved the problem considering those limitations. Now we can send larger images, but it was not sufficient enough. Apart from that, I took part in compass group and looked for a method to send a rotation event for compass of emulator to capture. But documentations for send event command were not satisfactory. But still, we managed to connect to android terminal by using the command line:

telnet localhost 5554

then after we connect to android terminal we sent the swap event:

send event EV_SW:0:0

and

send event EV_SW:0:1

to make a 90 degrees rotation and a rotation in reverse direction. But we could not be able to handle any event using android sensor listener.

Lastly, I helped Tolga during his server-side work which consists of image information retrieving from image database according to the GPS location.

Finally, for this week's demo we achieved sending meeningful information (name of the place) from server to client using gps information.

Weekly Report 4

I worked on the compass information retrieving from Android operating system. Android operating system provide this system as an event listener process. The difficulty is here to simulate the android telephone event in the emulator. The emulator has no ability to provide compass events to the process except the terminal event flopping commands. Therefore, we have used a tool, named SensorSimulator, to create the events needed by our compass information extraction. In addition to that the communication problem still continues. Due to the problem in the android application, large size data cannot be transfered from the client to the server. JSONObject solutions are applied to that problem. However, we don't come up with a solution yet. The experiments continue. A solution is not far away

Thursday, April 1, 2010

Database Connection - Weekly Report

Last week, we distributed the responsibilities of each member using Trac. This week, my duty was to establish the database connection.

Firstly, I compiled some data about some famous landmarks including Anıtkabir, the Sheraton Hotel and the Eiffel Tower. In accordance with the entity relationship diagram we presented in the detailed design report, I populated some tables in the database which had already been created before. Now, the Location table holds GPS and compass information, the Imageinfo table contains information about the images and the images themselves, and Has_location table maps the locations with image infos. The SendPicture servlet is now capable of receiving latitude and longitude info of the image from the client and after querying the database using these values, responding to the client successfully with the image description found.

Tolga AKIN
Department of Computer Engineering
Middle East Technical University

Weekly Report 4

This week I worked on several tasks including enhancement of the client-server communication, obtaining compass information and sending GPS location.

For enhancing the communication between the client and the server, I can say that Cigdem and I are close to finding a solution to the file size problem. We enhanced the communication a bit, that is we are now able to send bigger images, but this is still not enough. In the code that we presented in the first demo, we had used String and StringBuffer objects to keep the image, now we realized that these objects have size limitation which prevents us from keeping the image properly.


In order to obtain compass data, we should be able to simulate the behavior of a magnetic compass. That's why we have to find a way to change the direction of the emulator. An application named SensorSimulator simulates this behavior. We have to first install an apk file to the android emulator, then run the Java application of the simulator. After that, we run the apk and connect the emulator and the running Java application. Now we are able to change the sensor values of the emulator. However, when we close the android application, that connection vanishes making it impossible for us to update the compass sensor value.


I also worked on obtaining the GPS information and sending it to the server. Now, depending on the GPS information, server will return a meaningful response to the android client.