1. A method of detecting and correcting flicker comprising the steps of: capturing a video stream of a scene at various instances of time by an image capture device; applying a local spatio-temporal feature extraction technique, by a processor, to regions of the capture scene within each frame; applying candidate flickering region detection, by a classifier, to identify candidate regions; tracking corresponding candidate regions over time to detect illumination differences within each analyzed region; applying an illumination correction technique to the candidate regions where flickering is detected; and outputting a flicker-free video on a display device.