A data processing system is provided that comprises 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 comprises 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.