1. A method for performing variable bandwidth selection, comprising the steps of: receiving one of image data, video data, speech data and handwriting data, and extracting feature data points from the data; selecting a plurality of analysis scales; for each analysis scale, partitioning the data into one or more modes and determining a mean/covariance pair for each mode, wherein each data point is associated with a detected mode and a corresponding mean/covariance pair of the mode for each of the analysis scales; for each data point, determining the most stable mean/covariance pair associated with the data point; and for each data point, selecting for output the covariance of the most stable mean/covariance pair as a variable bandwidth for the data point, wherein the variable bandwidths are used for analyzing features of the data.