A Vision-based Framework for Human Computer Interaction