Week 4 - Segmentation and Clustering p3,4 Flashcards
What is model- free clustering
“non-parametric clustering”
clustering techniques that do not assume a specific parametric form for the underlying data distribution
What is mean-shift clustering
An advanced technique for clustering based segmentation
“model -free” does not make assumptions on data shape or number of clusters
Essentially smooths a distribution and finds its peaks
What is a mode
Where the density reaches a peak (local maximum) - highest frequency
easy to see, hard to compute
How does iterative mode search work
- Initialise random seed (random number generation), and window W
- Calculate centre of gravity (the “mean”) of W:
- Σ x H(x)
- Shift the search window to the “mean”
- Repeat Step 2 until convergence
Can use the derivative f’(x) of the kernel density estimate f(x) to find the direction we have to move it to find the local maximum
Mean shift visualisation using dot clusters
1) choose random point (not necessarily dot) and region of interest around it
2) calculate centre of mass for this region
3) calculate mean shift vector pointing us towards this centre of mass
4) shift along vector and repeat
We repeat from every single point which is very laborious
How do we make mean shift more efficient
Record the trajectories of all regions that move to the same mode (attraction basin)
We can then cluster all data points in the same attraction basin of a mode
What is an attraction basin
attraction basin of an attractor is the region of the state space from which trajectories lead to that attractor
Pros of mean shift clustering
model-free
A single parameter
potentially finds global maxima
finds multiple of modes
robust to outliers
Cons of mean shift clustering
output heavily depends on window size
(large window-> fewer and large clusters, small window -> more and smaller clusters)
window size selection is not trivial
computationally expensive
does not scale well with dimension of feature space
What is Graph theoretic segmentation
The approach in which an image is represented as a graph
- Node for every pixel
- Edge between every pair of pixels (p,q)
- Affinity weight (cost) for each edge wpq
How does segmenting via graphs work
Delete links that cross between segments
Easiest to break links that have low similarity (low weight)
- Similar pixels should be in the same segments
- Dissimilar pixels should be in different segments
How is a weighted graph represented by a square matrix
Row and column for each vertex
ij th element of a matrix = the weight of the edge from the vertex i to vertex j
The diagonal entries represent the edge from the node to itself (loop)
What sort of matrix is used for an undirected graph
A symmetric matrix
Half the weight in each of the ijth and jith elements
How can we measure affinity
denoted: aff(x,y)
- Distance
- Intensity I(x) - I(y)
- Colour
We place the similarity weight calculated on each edge of the graph
What is affinity
similarity