1. A method for touch detection performed by a touch processor in an optical touch detection system, the method comprising: receiving, with one or more processors, an image of an illuminated surface included in the optical touch detection system, wherein the image is captured by a camera included in the optical touch detection system; subtracting, with the one or more processors, a background model from the image to generate a mean-subtracted image; filtering the mean-subtracted image with a filter having zero mean with coefficients of a same sign in a central region of the filter surrounded by coefficients of an opposite sign such that a size of the central region corresponds to an expected size of a finger touch; identifying, with the one or more processors, local extrema in the filtered mean-subtracted image to generate a set of candidate touch locations; classifying, with the one or more processors, the candidate touch locations by comparing each of the local extrema to one or more detection thresholds to generate a set of validated candidate touch locations; and outputting, with the one or more processors, a set of final touch locations determined from the set of validated candidate touch locations.