University of Groningen
Algorithm that mimics human perceptual grouping of dot patterns
Papari, G.; Petkov, N.
Published in:
BRAIN, VISION, AND ARTIFICIAL INTELLIGENCE, PROCEEDINGS
IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish to cite from
it. Please check the document version below.
Document Version
Publisher's PDF, also known as Version of record
Publication date:
2005
Link to publication in University of Groningen/UMCG research database
Citation for published version (APA):
Papari, G., & Petkov, N. (2005). Algorithm that mimics human perceptual grouping of dot patterns. In MD.
Gregorio, DiMaio, M. Frucci, & C. Musio (Eds.), BRAIN, VISION, AND ARTIFICIAL INTELLIGENCE,
PROCEEDINGS (pp. 497-506). (LECTURE NOTES IN COMPUTER SCIENCE; Vol. 3704). BERLIN:
Springer.
Copyright
Other than for strictly personal use, it is not permitted to download or to forward/distribute the text or part of it without the consent of the
author(s) and/or copyright holder(s), unless the work is under an open content license (like Creative Commons).
Take-down policy
If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately
and investigate your claim.
Downloaded from the University of Groningen/UMCG research database (Pure): http://www.rug.nl/research/portal. For technical reasons the
number of authors shown on this cover page is limited to 10 maximum.
Download date: 12-06-2020
Algorithm That Mimics Human Perceptual Grouping
of Dot Patterns
G. Papari and N. Petkov
Institute of Mathematics and Computing Science,
University of Groningen,
P.O.Box 800, 9700 AV Groningen, The Netherlands
Abstract. We propose an algorithm that groups points similarly to how human
observers do. It is simple, totally unsupervised and able to find clusters of complex and not necessarily convex shape. Groups are identified as the connected
components of a Reduced Delaunay Graph (RDG) that we define in this paper.
Our method can be seen as an algorithmic equivalent of the gestalt law of perceptual grouping according to proximity. We introduce a measure of dissimilarity between two different groupings of a point set and use this measure to compare our algorithm with human visual perception and the k-means clustering algorithm. Our algorithm mimics human perceptual grouping and outperforms the
k-means algorithm in all cases that we studied. We also sketch a potential application in the segmentation of structural textures.
1 Introduction
One of the remarkable properties of the human visual system is its ability to group
together bits and pieces of visual information in order to recognize objects in complex
scenes. In psychology, there is a long tradition of research devoted to perceptual
grouping. This tradition has been largely formed and is still very much influenced by
gestalt laws that name factors, such as proximity or similarity in orientation, colour,
shape, or speed and direction of movement which play a role in perceptual grouping
(see e.g. [1-4]). The sole naming of these factors, however, is not sufficient for a
quantitative analysis of an image aimed at grouping features together automatically,
i.e. without the involvement of a human observer. Such automatic grouping is essential for the computerized recognition of objects in digital images.
In the current paper we describe an algorithm for the grouping of points (Section
2) and demonstrate that this algorithm delivers results that are in agreement with human visual perception (Section 3). To quantify the degree of agreement we introduce
a measure of dissimilarity between two possible groupings of the points of one set.
We also compare the performance of our algorithm in mimicking human visual perception with the performance of the k-means clustering algorithm, commonly used in
computer vision (Section 4). Our algorithm is closely related to the gestalt law of
proximity but it goes beyond that law in that it has predictive power. In Section 5 we
refer to some related previous work, draw conclusions and outline future work on
possible applications in computer vision.
M. De Gregorio et al. (Eds.): BV&AI 2005, LNCS 3704, pp. 497 – 506, 2005.
© Springer-Verlag Berlin Heidelberg 2005
498
G. Papari and N. Petkov
2 Grouping Algorithm
2.1 Voronoi Tessellation and Delaunay Graph
Given a set S = {p1, …, pN} of N points in the plain, we partition the plain in cells
C1, …, CN (bound or unbound) such that the points which belong to cell Cj, associated
with point pj ∈ S, are closer to pj than to any other point pk ∈ S, k ≠ j :
q ∈Cj
⇔ d ( q, p j ) ≤ d ( q, pk ) , ∀q, ∀p j , pk ∈ S .
(2.1)
Such a partition of the plain is called the Voronoi Tessellation (VT) or Voronoi diagram related to S. The dual of the Voronoi tessellation, called the Delaunay Graph
(DG), is obtained by connecting all pairs of points of S whose Voronoi diagram cells
share a boundary (Fig. 1). More details about Voronoi tessellation and Delaunay
graph can be found in the standard literature (see for example [5]).
Fig. 1. Voronoi tessellation and Delaunay graph of a set of points
2.2 Reduced Delaunay Graph
Perceptually, a group of points in S is a subset of points, which are much closer to
each other than to the other points of S. However, the concept of “much closer” is
subjective and it is not well defined mathematically. We propose an algorithm which
partitions S in disjoint subsets, and show that this partitioning corresponds to human
visual perception of groups. We compute the Delaunay Graph DG of the set S and
eliminate some edges from it to obtain a new graph that we call the Reduced Delaunay Graph; then, we regard the connected components of that graph as groups. This is
illustrated by Fig. 2. In order to choose which edges must be removed, for each edge
pq of the DG we first compute the distance d(p, q) (Fig. 2a); then we normalize it with
the distances of p and q to their respective nearest neighbours:
ξ ( p, q ) =
d ( p, q )
min {d ( p, x )}
;
ξ ( q, p ) =
x∈S
d ( q, p )
min {d ( q, x )}
.
(2.2)
x∈S
Note that in general ξ(p, q) ≠ ξ(q, p). In this way, we assign two ratios, r1(e) = ξ(p, q)
and r2(e) = ξ (q, p), to each edge e of the DG (Fig.2b).
Next, we reduce the two above mentioned numbers to a single quantity, computed
as their geometric average:
r ( e ) = r1 ( e ) ⋅ r2 ( e ) .
(2.3)
Algorithm That Mimics Human Perceptual Grouping of Dot Patterns
499
and remove from the DG every edge e for which r(e) is larger than a fixed threshold
rT. We call the remaining graph Reduced Delaunay Graph (RDG).
More precisely, RDG = (VRDG, ERDG) is a graph whose vertex set VRDG is the same
as the vertex set of the DG, and whose edge set ERDG contains those edges e ∈ EDG for
which r(e) is less than or equal to a given threshold vlaue rT:
VRDG = VDG ;
ERDG = {e ∈ EDG r ( e ) ≤ rT } .
(2.4)
Finally, we regard the connected components of the RDG as groups.
This is illustrated in Fig. 2, where the value chosen for rT is 1.65. The two normalized distances assigned to edge p1p2, for instance, are ξ(p1, p2) = 4.95 and ξ(p2, p1)
= 2.48. Their geometrical average is 3.5, larger than rT, so p1p2 must be removed. The
other edges that must be removed are shown in dashed line in Fig.2c. The remaining
edges (shown in solid line) produce two connected components, {p1,p3,p4} and
{p2,p5,p6}, which we regard as groups.
Fig. 2. (a) A set of points and its Delaunay graph. The numbers assigned to the edges are equal
to the distances between the corresponding vertices. (b) A pair of normalized distances is assigned to each edge of the DG. (c) The pair of normalized distances assigned to an edge is replaced by a single number, computed as their geometric mean. The dash lines represent the
edges removed from the DG; these are the lines that are assigned numbers larger than the
threshold (1.65). The vertices and the remaining edges define the reduced Delaunay graph; its
connected components are regarded as groups.
3 Results
In this section we apply our algorithm to several sets of points (see Figures 3-5); in all
these examples we take a threshold value rT = 1.65 that is empirically chosen.
In the cases shown in Fig.3a-b the RDG is connected and all points are grouped
together in one single group; this corresponds to the human visual perception of these
500
G. Papari and N. Petkov
dot patterns; the examples of Fig.3c-f are point configurations in which distinct
groups, arranged both regularly and randomly, are formed. In the case shown in
Fig.4a the points arranged in a circle and the points inside that circle form separate
groups. Fig.4b-c present examples of sets in which there are isolated points. Fig. 4d-f
illustrate the ability of our algorithm to find clusters of complex shape that are not
necessarily convex.
Fig.5a-b show examples of point sets in which groups of points are immersed in a
group that covers the whole image. In Fig.5a, for instance, we perceive a set of
crosses immersed in a square grid, and it is exactly what the RDG reveals. Similarly,
in Fig.5b we perceive small squares surrounded by a grid of octagons and big squares.
In Fig.5c the RDG reveals the lines traced by the points. This example has a certain
relation to the gestalt law of good continuation. The arcs of the RDG not only allow
identifying groups but also reveal the order of continuation.
4 Quantitative Comparison to Human Observers
We claim that our algorithm mimics the grouping properties of the human visual system. To quantify this claim, we now compare the grouping results obtained with this
algorithm with the groupings defined by human observers. For this purpose we first
introduce a measure of dissimilarity between two possible groupings of the points of
one set.
4.1 Dissimilarity Between Two Partitions of a Point Set
Let C1 = {U1 , K , U N } be a collection of disjoint subsets of a point set S, such that the
union of these subsets is identical with S. Each such subset defines a group of points,
and C1 defines a possible grouping or partitioning of the points of S into different
groups. Let C2 = {W1 , K , WM } be another such grouping of S. We introduce the following quantities:
αi ,k =
card (U i ∩ Wk )
card( S )
; ui =
card (U i )
card( S )
; wk =
card (Wk )
card( S )
.
(4.1)
In analogy with probability theory, we call αik joint probability and ui and wk marginal
probabilities; we also say that C1 and C2 are independent if αik = uiwk. We also define
the following formal entropies [6]:
H ( C1 ) = −∑ ui ln ui ; H ( C2 ) = −∑ wk ln wk ; H ( C1 , C2 ) = −∑ α i , k ln α i , k .
i
k
(4.2)
i,k
We now define the dissimilarity coefficient ρ ( C1 , C2 ) between the two partitions C1
and C2 as follows:
ρ ( C1 , C2 ) =
H ( C1 , C2 ) − min { H ( C1 ) , H ( C2 )}
max { H ( C1 ) , H ( C2 )}
.
(4.3)
Algorithm That Mimics Human Perceptual Grouping of Dot Patterns
(a)
(b)
(c)
(d)
(e)
(f)
501
Fig. 3. Six point sets (first and third rows) and their corresponding RDGs (second and fourth
rows). In cases (a-b) the RDGs are fully connected and all points belong to the same group. In
cases (c-f) the points are clustered in groups, both regularly and randomly arranged, which are
correctly detected by the respective RDGs.
502
G. Papari and N. Petkov
(a)
(b)
(c)
(d)
(e)
(f)
Fig. 4. Other six point sets (first and third rows) and their corresponding RDGs (second and
fourth rows). In case (a) the points that form a circle belong to a different group than the point
inside that circle. Cases (b-c) are examples of RDGs that have isolated points; in examples (d-f)
the shape of the clusters is complex and not necessarily convex.
Algorithm That Mimics Human Perceptual Grouping of Dot Patterns
(a)
(b)
503
(c)
Fig. 5. Point sets (above) and their corresponding RDGs (below). (a-b) A system of groups is
immersed in a group that covers the whole image. (c) A case related to the gestalt principle of
good continuation. The edges of the RDG reveal the connectivity of that continuation.
It can easily be shown that ρ is symmetric, positive, equal to zero iff C1 = C2, and
that it satisfies the triangular inequality; therefore, it defines a metrics in the space of
the groupings. ρ has also the property to be always between 0 and 1, with ρ = 1 if and
only if the two concerned groupings are independent. Fig.6 illustrates that the concept
of dissimilarity between two groupings is related to their correlation.
4.2 Results
We used the dissimilarity coefficient defined above to compare the results of our
grouping algorithm with the perceptual grouping as done by human observers. For
each of the images named in the first column of Table 1, we asked eight human observers (male, age varying between 25 and 48) to group the points of the corresponding set. Originally, we used a larger number of point sets but then we excluded sets
for which the observers produced different groupings; the set shown in Fig. 4d is one
such case that is included here for illustration; the maximum dissimilarity coefficient
of two groupings produced by two observers for this set was 0.026. For all other point
sets included here the groupings produced by different observers are identical.
In all the cases but the ones presented in Fig.4d and Fig.5c our algorithm produces
groupings that are identical with the groupings defined by the human observers. Consequently, the dissimilarity coefficients of the groupings obtained by the algorithm
and by perceptual grouping are 0 in these cases, Table 1. One case in which a
504
G. Papari and N. Petkov
difference arises is shown in Fig.7. As can be seen, this difference is small which is
well reflected in the small value of the corresponding dissimilarity coefficient. For the
case shown in Fig.4d the dissimilarity coefficient is computed as the average of the
dissimilarity coefficients between the algorithmic grouping on one hand and each of
the human perceptual groupings on the other hand. The average value obtained in this
way is smaller than the maximum value of dissimilarity between the perceptual
groupings by two different observers.
Table 1 shows also the results achieved by another algorithm - the k-mean clustering [7]. Since this algorithm requires a number of clusters to be specified, this number
has been selected to be equal to the number of groups drawn by the human observers.
In all cases, the RDG algorithm outperforms the k-means algorithm in its ability to
mimic human perception. The performance difference is especially large for point sets
in which the groups (as defined by human visual perception) are not convex and have
complex form, Fig.7.
Fig. 6. (a) The groupings/partitions C1 = {U1, U2, U3} and C2 = {U1, U2, U3} defined by the continuous and dashed lines, respectively, are strongly correlated and consequently their dissimilarity ρ ( C1 , C2 ) is small. (b) The partitions C1 and C3 = {U1, U2, U3} are totally uncorrelated
and their dissimilarity coefficient is maximal.
Fig. 7. (left) The RDG grouping algorithm mimics human perception while (right) the k-means
algorithm clusters points in a very different way
Algorithm That Mimics Human Perceptual Grouping of Dot Patterns
505
Table 1. Dissimilarity coefficient values between perceptual grouping by humans and two
grouping algorithms, RDG and k-means
Point
set
Fig. 3c
Fig. 3d
Fig. 3e
Fig. 3f
Fig. 4a
Fig. 4d
Fig. 4e
Fig. 4f
Fig. 5c
ρ
ρ
(RDG to human)
0
0
0
0
0
0.007
0.21
0
0.17
(k-mean to human)
0.08
0.04
0.05
0.05
0.24
0.48
0.85
0.68
0.30
5 Summary and Conclusion
Attempts to identify perceptually meaningful structure in a set of points have been
made in previous works. Voronoi neighbourhood is used in [8]. A discussion in [9]
motivates a graph-approach to detect Gestalt groups. In [10] the following concept is
introduced: two points p and q of a set S are considered relatively close if d(p,q) <
max{d(p,x), d(q,x)}, ∀x∈S; linking all points of S which are relatively close, we obtain what is called the Relative Neighbourhood Graph [11]. In [11] it is shown by
some examples that points are linked in a way that is perceptually natural for human
observers. However, this algorithm cannot be used to find groups of points, which is
the goal of the current paper. A nice algorithm, presented in [12], repeatedly splits the
convex hull of the point set, until clusters are found; but it is unable to find clusters
which are one inside the other.
We introduced the concept of a RDG that we use to group points. We demonstrated
that this algorithm mimics human visual perception. For this purpose we introduced a
quantitative measure of dissimilarity between two possible groupings of the points of
a set. The dissimilarities between groupings produced by our algorithm and perceptual groupings done by human observers are zero or very small for a number of point
sets that we studied. In contrast, the popular k-means clustering algorithm groups
points in a way that is quite different from visual perception. Our algorithm is very
simple, totally unsupervised, and is able to find groups of complex shape.
In future work we will apply this algorithm to computer vision problems, such as
segmentation of structural textures. Such textures cannot be treated adequately with
traditional filter based approaches (see e.g. [13]). Our idea is to first reduce a texture
(Fig.8a) to one or more sets of points that indicate the positions of structural elements,
using morphological filters, and to group them using the RDG approach, Fig.8b-c.
506
G. Papari and N. Petkov
(a)
(b)
(c)
Fig. 8. (a) A texture in which the regions are defined by different structural elements. (b) The
positions of the + elements are identified by a morphological filter selective for the + shape,
and the points are connected in a RDG to identify regions of + elements. (c) The regions that
contain L elements are identified in a similar way using another morphological filter.
References
1. Moore, P., Fitz, C.: Gestalt Theory and Instructional Design. J. Technical Writing and
Communication, Vol. 23, No.2 (1993) 137-157.
2. Wertheimer, M.: Untersuchungen zur Lehere von der Gestalt II. Psychologische
Forschungen, Vol. 4 (1923) 301-350.
3. Koffka, K.: Principles of Gestalt Psychology. R. & K. Paul London (1935).
4. Koheler, W.: Gestal Psychology. Mentor Books New York (1947).
5. De Berg, M.: Computational Geometry. Springer (2000).
6. Cover, T. M., Thomas, J. A..: Elements of Information Theory, Wiley series in Telecommunication. Wiley and Son New York (1991).
7. Hartigan, J. A.: Clustering Algorithms. Wiley & Sons New York (1975).
8. Ahuja, N.: Dot pattern processing using Voronoi neighborhoods, IEEE Trans. on Pattern
Analysis and Machine Intelligence, Vol. 4, No 3 (1982) 336-343.
9. Zhan, T. C.: Graph-theoretical methods for detecting and describing gestalt clusters, IEEE
Trans. On Computers, Vol C-20, No 1 (1971) 68-86.
10. Lackford, P. A.: Regionalization, Theory and alternative algorithms. Geographical Analysis, Vol. 1 (1969) 196-212.
11. Toussaint, G. T.: The relative neighbourhood graph of a finite planar set, Pattern Recognition, Vol. 12 (1980) 261-268.
12. Garai, G., Chaudhuri, B. B.: A Split and merge procedure for polygonal border detection
of dot pattern, Image and Vision Computin, Vol.17 (1999) 75-82.
13. Grigorescu, S.E., Petkov, N., Kruizinga, P.: Comparison of texture features based on Gabor filters, IEEE Trans. on Image Proc., Vol. 11, No. 10 (2002) 1160-1167.