Week 4 - Segmentation and Clustering p3,4 Flashcards

1
Q

What is model- free clustering

A

“non-parametric clustering”
clustering techniques that do not assume a specific parametric form for the underlying data distribution

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is mean-shift clustering

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a mode

A

Where the density reaches a peak (local maximum) - highest frequency
easy to see, hard to compute

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How does iterative mode search work

A
  1. Initialise random seed (random number generation), and window W
  2. Calculate centre of gravity (the “mean”) of W:
    1. Σ x H(x)
  3. Shift the search window to the “mean”
  4. 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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Mean shift visualisation using dot clusters

A

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 well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How do we make mean shift more efficient

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is an attraction basin

A

attraction basin of an attractor is the region of the state space from which trajectories lead to that attractor

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Pros of mean shift clustering

A

model-free
A single parameter
potentially finds global maxima
finds multiple of modes
robust to outliers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Cons of mean shift clustering

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is Graph theoretic segmentation

A

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 well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

How does segmenting via graphs work

A

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 well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

How is a weighted graph represented by a square matrix

A

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)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What sort of matrix is used for an undirected graph

A

A symmetric matrix
Half the weight in each of the ijth and jith elements

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

How can we measure affinity

A

denoted: aff(x,y)
- Distance
- Intensity I(x) - I(y)
- Colour

We place the similarity weight calculated on each edge of the graph

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What is affinity

A

similarity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is ideal for the weight between similar noes

A

Large

(different nodes = small)

17
Q

How does scale affect affinity

A

small σ: group only nearby points

large σ, broader gaussian: group far-away points

18
Q

What is a graph cut

A

The set of edges whose removal makes a graph disconnected

19
Q

What is the cost of a graph cut

A

Sum of weights of cut edges
Σwpq

20
Q

What is a minimum cut

A

The least costly cut
Not always the best cut
It is bias to cutting off the lesser weight (smaller, isolated sections)

21
Q

What is the best cut?

A

minimises the number of edges crossing between the partitions

22
Q

What is the normalise cut (NCut)

A

The goal is to penalise large segments (as minimum cuts favour small cuts -> large segments)

23
Q

What is the normalised cut equation

A

NCut(A,B) = cut(A,B)/ assoc(A,V) + cut(A,B) /assoc(B,V)

24
Q

What is Assoc(A,A)

A

Sum of all weights (association) within a cluster

25
Q

What is Assoc(A,V)

A

assoc(A,A) + cut(A,B) is the sum of all weights associated with nodes in A

26
Q

What assoc do big segments have

A

Large assoc(A,V)
Because it will have many edges with weights
Thus decreasing Ncut(A,B)

27
Q

How does NCut reduce bias to smaller cuts

A

Want smaller NCut
By reducing big segments NCut, we have more chance of choosing them over small

28
Q

What can be said about finding the globally optimal cut

A

NP-complete
a relaxed version can be solved using a generalised eigenvalue problem

29
Q

Pros of normalised cut

A

Generic framework, flexible to choice of affinity function
“model free”

30
Q

cons of normalised cut

A

Time and memory complexity can be high EG dense graphs → many affinity computations

31
Q

What is a GrabCut

A

Segmentation method that takes user input into account
User input = red box around the desired cut

32
Q

How do we evaluate segmentation

A

f1 score

33
Q

How do we calculate F1 Score

A

F = 2PR / (P+R)

34
Q

How does grabcut work

A

Immediately treats all pixels in the red box as foreground and then recursively improves

Iterates between 2 steps:

  1. segmentation using graph cuts
    1. decides if a pixel is fore or background (binary)
    2. (requires having foreground model)
  2. Once we have this segmentation
    1. Uses unsupervised clustering to learn two different models for foreground vs background
    2. sends this back to segmentation for improvement

Has very successful results

35
Q

How do we improve efficiency of segmentation

A

Superpixels
Group together similar looking pixels
cheap, local over-segmentation

36
Q

What do we need to ensure about chosen superpixels

A
  • Do not cross boundaries
  • have similar size
  • have regular shape
  • algorithm has low complexity
37
Q

What is precision P

A

percentage of marked boundary points that are real ones

38
Q

What is recall R

A

percentage of real boundary points that were marked