Projects

This list of projects will be available here. New projects are still being added.

Teams are free to propose their own projects. Email project ideas to Wei Tsang at ooiwt@comp.nus.edu.sg.

Projects 1-5 are private and have been sent through emails.

6. WorldScope: Mobile-to-Mobile Live Broadcast

Team: Litmus

The goal of this project is to develop an open source clone of Periscope. Students will build a mobile client and a server that allow a user to stream video and audio live from a mobile phone to their subcribers (listening and watching on their mobile phones).

7. Jiku Director: Automated Mobile Video Mashup

Jiku Director is an on-going project in School of Computing, that automatically stitch multiple videos of the same event, captured from different angles by different users, together to form a coherent, more interesting, video representation of the event. This project aims to extent the functionalities and improve the output quality of the software, while reengineering the system using software engineering principles.

8. Zoomable.js: HTML5-based Zoomable Video Streaming Player

Team: Meteoria

A zoomable video player is a video player that allows user to zoom into and pan around the video to view selected in higher resolution and in more details. The aim of this project is to develop an open source HTML5/Javascript-based video streaming server and player that utilizes websocket and DASH to stream videos for playback on a Javascript/HTML5 player.

9. CloudyGame: Cloud-Gaming Friendly Game Engine

Team: Insert Coin

Current computer games are written to run on game consoles, PCs, and mobile devices. Cloud gaming, however, runs these computer games on virtual machines on servers somewhere in the cloud. There is a mismatch between what is needed to run the games in the cloud versus what the game developers assume when they design the game/game engine. This project aims to re-architect an existing game engine from the ground up to meet the needs of cloud gaming.

10. Game Engine with Progressive Content Streaming

The objective of this project is to develop a game engine that supports progressive downloading of game contents (a.k.a file streaming). The team should come up with game engine design and specifications/API for developers of game content/game, implement the design by modifying any existing open source game engine, and develop a common thin client called Gamelet (may be, plug-in for browser), which can download the game contents on demand and allows game play of any game built with the game engine.

11. Adaptive Collaborative Rendering Engine for Cloud Games

The objective is to build a rendering engine (or modify an existing engine, e.g. Moonlight Stream) that offloads part of the rendering task of cloud games to the client. For example, some frames can be rendered in the server, others in the client, and they will be combined for display. The engine should be adaptive to the network bandwidth, client resources, and game context.

Team: Studio/Slash

With advances in 3D printing and 3D scanning technologies, there are increasing number of 3D models that are being put online. The goal of this project is to develop an open source Web gallery for 3D objects, similar to SketchFab but spots several advanced features for interacting and viewing 3D objects.

13. AutoComPaste: Simplifying Cross-Document Copy-Paste

Team: Aurora

AutoComPaste is a project that allow easy copy-and-paste across documents through an auto-completion interface. This project aims to reimplement and extend the project, to support cross-device copy-paste operation and to support modern text editors (such as Atom).

14. eTutorial: More Engaging Tutorial during eLearning Week

Team: New Team 1

Current remote conference software supports lecture delivery very well. For a tutorial scenario, where the tutor writes on the white board, and facilitate discussion among students, there is no good solution. The goal of this project is to design a system that is easy to setup, easy to use, and effective in supporting e-learning for tutorial sessions.

This is an open-ended project: multiple teams can take up this project and propose/implement different solutions.

15. EnvironView: A Viewer for Ourdoor Webcam Images

Ourdoor webcams provide climate/environmental scientists a long-term window into how the environment has changed over the years. See the paper by Valt at al for an example. The aim of this project is to develop a system that helps scientists visualize the outdoor images captured, as well as to help them analyze the data.

16. BillOrg: Automated Organization and Summary of Scanned Bills and Statements

Team: A.L.P.H.A.

A person who scans his phone bills/medical bills/banks statements often has to manually file the scanned images/PDF. The bills/statements from one organization, however, typically have the same layout and format and it is possible to automatically classify the bills (e.g., based on the logo) and file them into appropriate folders. Further, it is possible to read information (such as the amount of phone usage) from the PDF/images and summarize them (e.g., show a chart of phone usage month-over-month). In this project, the students will build a Web application that allows users to upload their scanned documents and present the documents in categories with summary automatically.