1. A data processing system comprising: a processor; a random access memory for storing data and programs for execution by the processor; and computer readable instructions stored in the random access memory for execution by the processor to perform a method for clustering data points in a multidimensional dataset in a multidimensional image space, the method comprising: generating a multidimensional image from the multidimensional dataset; generating a pyramid of multidimensional images having varying resolution levels by successively performing a pyramidal sub-sampling of the multidimensional image; identifying data clusters at each resolution level of the pyramid by applying a set of perceptual grouping constraints; and determining levels of a clustering hierarchy by identifying each salient bend in a variation curve of a magnitude of identified data clusters as a function of pyramid resolution level.