Cluster analysis is a common approach to pattern discovery in spatial databases. While many clustering techniques have been developed, it is still challenging to discover implicit patterns accurately when the data set contains two kinds of noise or outliers: 1) domain-specific noise; 2) noise similar to true data on size, shape, or density. This paper presents a two-step strategy to solve the problem effectively: firstly, groups of data points are separated into different layers according to their sizes and densities; then a layered visualization is provided to the user to separate noise and true data intuitively. Such a strategy not only produces user-desired results but also separates noise and true data accurately. After noise removal, a hierarchical clustering is performed on remaining data to discover natural clusters. The experimental studies on both benchmark data sets and real images show very encouraging results. Keywords Data Mining, Clustering, Noise Removal, Pattern Discov...