This page contains projects I have worked on, work ranging from my Ph.D thesis to result of 2-hour coding sessions of interesting ideas.
Robots and Assistive Tech, Mobile Devices, Computer Vision, Machine Learning, Web Services, Agronomy, Misc Tools
Robots and Assistive Technologies
Learning Communicative Behavior: My Ph.D thesis where I focus on developing a learning framework to allow humans establish communication with robots via face-to-face negotiation using natural gestures.
LifeTech ASSIST: Team Leader. A multi-university and disciplinary project to create technology suitable for the elderly, and study the impact of technology to the elders. I am the student team leader for the computer science team, leading the development of technologies such as fall-detection devices, object-finder, communication enhancement tools. (C++ Visual Basic Java)
Secure-home: A multi-camera sensory array system that monitors activities in a room. Upon detection of intruder, the system automatically alerts the user and dispatches a mobile robot to investigate the area where the intruder was last seen. An intuitive augmented virtual reality user interface is also presented. (C++)
Motion Control Interface: My attempts at using the Wii-remote to create a natural interface for controlling a robot to perform complicated manipulation tasks: (1) driving a simulated mobile robot, (2) teaching a real humanoid robot to perform useful tasks
iPhotoCut: An iPhone app that allows users edit photos and cut out foreground objects with a few stroke. A Graph-Cut algorithm is used for image segmentation. (Objective-C and Java)
Smart Sketch Pad: A mobile device app that users computer vision techniques to turn hand-draw sketches into diagrams. (C#)
myPDA: A series of utilities on the Sharp Zaurus 5500L PDA that monitors user pattern of usage for the system, and actively provides assistance when needed. (C++)
Mobile Device Applications
- Read-It: a news reader that uses a voice synthesizer to read to the user daily news which he selected before leaving home.
- Track-me: an in-door position tracking system on a PDA that keeps track of the where-about of the user. This data is used in conjunctions with other software to make decisions about how to actively assist the user.
- App-mon: an application monitor that keeps track of software usuage of user within applications
- File-assist: an assistant services that uses many modality of inputs including user’s schedule, positions, and file access activity history such that it automatically retrieves the appropriate notes, slides or other related documents before the user sits down for a class or meeting.
- Advanced power-mon: a context-aware power-management services that adapts to the user activity patterns such it can learn the appropriate power management policy that both minimizes power consumption as well as user annoyance.
Computer vision techniques has been ubiquitously applied in many of my projects: from detecting human presence and tracking human motion for natural interaction, to detecting falls, to editing photos on the iPhone, to free-hand idea sketch pad for UMPCs.
Robotics: demonstrated how a hierarchical framework can incorporate elements of incremental learning, scalable knowledge representation, and skill reuse to enable robots to learn communication behavior from a few interactions, rather than thousands of training instances normally required by advanced machine learning algorithms.
Context-aware mobile devices: a learning control approach for context aware applications, where reinforcement learning is used for amobile device systemto autonomously learn to adaptive to user’s behavior pattern, and thus be able to pro-actively attend to user’s needs in a least intrusive manor.
Agronomy where I applied Multi-Layer Perceptron (neural networks) learning to several problems in Agronomy.
Community News Aggregator Web Service: Creator and lead programmer. A user-customizable portal web site allows community members to subscribe to their favorite news feeds and see them under one concise page (screenshots and usuage). Feeds include travel, shopping deals and local info.. Some feeds are mined by our in-house developed crawlers. (PHP+MySQL)
Deal Monitoring and Search System:
A web service lets users customize product price monitors, off-loading user’s research time for products. (PHP+MySQL)
ChaosBot: A unique and entertaining AI chat-bot whose conversation skills improve as more and more people chat with it. Other than just chatting for fun, ChaosBot can also provide useful services such as search for deals on-line, taking notes, reminder, send offline messages to friends. (Python)
FarmSoft: the Nutrient Management software for the state of Massachusetts, in active use by state agencies 2000~2004 (Visual Basic)
Planning and Management
FlashyWidgets: A Flash-based desktop widget engine similar to Yahoo! widget engine. It can use any Flash movies, even if they are on-line. Each widget uses much less memory than the Yahoo! widgets. A sourceforge project. (C#). Click here to see demo.
QuickPost: An open-source tool (hosted by sourceforge.net) for fast copying and pasting articles you see on the web to your favorite blog, forums. (C#)
MyNetDrive: An open-source tool (on sourcefoge.net) for sharing images, mp3, movies and many other files with friends. Easy drag-and-drop interface, intuitive file management to multiple free file storage websites. (C#)