Senior Project: Virtual Cafe (2/2016)

This project starts when our lab (Intelligent Systems Research Laboratory or ISL) received a Google Tango device to play with. Big thanks to VR1, our sponsor who obtained the device for us. The idea of this work is to explore what kinds of APIs Google Tango supports and what we can do with this technology.

It later became a topic for the senior project called “Virtual Cafe”. This research aims to study and to implement an application of Tango Project by Google with Lenovo Phab 2 Pro device. We focus on creating 3D Object Recognition into the device by creating an augmented reality application that can recognize the indoor environment and objects in the real world and render the area and recognized objects in the virtual world.

The objectives of the study include:

  1. Learning surrounding environments and virtualizing them.
  2. Training the dataset to let them recognize a particular object.
  3. Visualization of real object into the virtual world
  4. Allowing user to interact with objects in the virtual world.

The tools used in this study are:

  1. Tango Device
  2. Point Cloud Library (3D point cloud processing)
  3. Unity (Game engine)

The result of the study was as follows:

  1. The application is able to map the area in the real world and transforms it into the virtual world, allowing some manipulations to such an area such as changing the texture of the room.
  2. The application can recognize a 3D object from trained datasets and display the virtual object in the virtual room.
  3. Users can interact with the objects in the virtual world.

The picture below shows corresponding point clouds (left) of the real environment (right).

Examples of point clouds of the same object captured from different distances.

Here is a video clip demonstrating our work.



  1. Access to the data captured by the Tango device is quite limited. We can’t access the raw data. We can only access the data provided by their APIs.
  2. Collecting datasets for training and testing is quite troublesome.




Senior Project: Sentiment Analysis on Thai Restaurant Reviews (2/2016)

This is one of the senior project that I advised in Semester 2/2016.

The goal of this project is to develop a system that can analyze comments or reviews, particularly on Thai restaurants, extracted from sources such as Facebook and/or Wongnai. We are trying to classify the reviews into 3 classes i.e., positive, neutral and negative.

Objectives of this work are as follows:

  1. To develop an algorithm that can analyze the sentiment of any Thai text.
  2. To devise a framework to support aggregation of result to produce an overall sentiment.
  3. To develop a front-end web page with clear presentation of analysis result.

As you can see in the following screen shots, the ratio of positive, neutral and negative reviews as analyzed by the system is shown along with the reviews that are classified into each class.

Analysis Results on Restaurant 1


Analysis Results on Restaurant 2


In the restaurant domain, there are several aspects that customers normally comment on such as cleanliness, the taste of the food, the restaurant’s atmosphere, service, and price. We also attempt to extract how customers view the restaurant from such aspects. There are still rooms for improvement on this detailed analysis.

Challenges and Discussion

  1. Since there is no word and sentence boundary in Thai, the accuracy of our analysis depends on how well the words are segmented.
  2. Thai corpora and other resources for Thai Natural Language Processing are still limited. We have to do a lot of manual collections of Thai words and sentiment labeling.
  3. Our current approach cannot deal with sarcasm at all. This issue is definitely what we will extend the work on in the future.
  4. Reviews that contain mixed opinions (i.e. reviews that contain both positive and negative comments) is also difficult to classify. We think that such reviews are also useful to the restaurant. Since our current technique determine the overall sentiment of a review, such information is lost. We also plan to handle this issue in future extension.


  1. Presentation
  2. Report