We propose a novel online framework for detecting moving shadows in video sequences using statistical learning techniques. In this framework, Support Vector Machines are applied to obtain a classifier that can differentiate between moving shadows and other foreground objects. The co-training algorithm of Blum and Mitchell is then used in an online setting to improve accuracy with the help of unlabeled data. We evaluate the concept of co-training and show its viability even when explicit assumptions made by the algorithm are not satisfied. Thus, given a small random set of labeled examples (in our application domain, shadow and foreground), the system gives encouraging generalization performance using a semi-supervised approach. In dynamic environments such as those induced by robot motion, the view changes significantly and traditional algorithms do not work well. Our method can handle such changing conditions by adapting online using a semi-supervised approach.