Week 3 - Segmentation & Registration Flashcards
(36 cards)
Why is segmentation conducted?
Segmentation is used to assist completion of higher-level tasks, such as recognition, tracking, image database retrieval, feature quantification and registration
What is the main challenge with segmentation?
Divide the image into regions/segments, where each region presents a distinguished item. Each region should have similar importance
How does Otsu’s Thresholding work?
Exhaustively search for the threshold that minimises the intra-class variance and maximises the inter-class variance.
What is the primary disadvantage of using Otsu’s Thresholding?
It’s not robust enough on its own for most real-world applications.
What key assumption does the Otsu thresholding algorithm make about the data?
It assumes the data forms a bi-modal histogram
How does Region Growing work for segmentation?
- Start with one or more seed points
- Iteratively check its neighbour points: If intensity difference between the neighbour point and the region is smaller than a threshold, assign the neighbour point to the segmented region.
- Stop when there is no new assignment
What are the advantages of Region Growing for segmentation?
- Enables multiple class segmentation
- Parameter is easy to adjust
What are the disadvantages of Region Growing for Segmentation?
- Local region solution
- Computationally expensive
- Leakage along weak boundaries
- Sensitive to seed points
What is a Snake in regards to Segmentation?
It is a spline, which is a series of control points, with some function/s that govern the curve between the points. A snake is only interested in the location of the control points, but not the connection between them.
How does Active Contour, using Snake, work for segmentation?
- Represent the object boundary as a parametric curve
- A cost function is associated with the curve, so the boundary is found by optimising the cost function
- The cost function is defined as the sum of the three terms
- Iteratively update the contour points using something such as gradient descent
What is the mathematical equation that defines a snake in segmentation?
Esnake = (alpha * Einternal) + (beta * Eimage) + (gamma * constraint)
Where:
- Einternal = Contour smoothness, point spacing, etc…
- EImage = Image features e.g. lines, edges
- Econstraint = External constraint such as user interaction keypoints
How is the Snake term, called Einternal, defined?
Einteral = Econt + Ecurve
Where:
- Econt = Continuity i.e. control point distribution along the curve
- Ecurve = Curvature i.e. promote round curves where possible
How is the ECont term defined for Snake in segmentation?
Econt = (Davg - ||Pi - P(i-1)||)^2
Where:
Davg is the average distance between adjacent points along the line
Pi is a point on the line, and P(i-1) is the point before that.
How is the Ecurve term defined for Snake in segmentation?
Ecurve = (||P(i-1) - 2P(i) + P(i+1)||)^2
Where:
P stands for a point on the curve
What happens if you remove the Davg term from the continuity measure for Snakes in Segmentation?
If you remove it, then the snake will become a closed loop that effectively wraps around the target object
How is a closed loop snake used for segmentation?
Closed snakes separate the areas on either side of the Snake. Inside of the shape the Snake creates is the foreground, and outside of the shape is the background.
What are some drawbacks of Active Contour?
- Node Distribution
- Sharp Corners
- Topology Changes
How is Explicit Geometry defined?
Explicit Geometry - Parameterised boundaries
How is Implicit Geometry defined?
Implicit Geometry - Boundaries given by zero level set
What are some key properties of the Chan-Vese model?
- No parameterisation required
- Less sensitive to the contour initialisation and noise
- Computationally efficient
- Topological changes can be handled implicitly
- Based on regional statistics rather than boundary information
How does Graph Construction/Cut work in segmentation?
- Consider the image as a graph, where it has edges, vertices, and costs between assigned values.
- Find the optimal cut which produces the minimum cost
What two terms make up an energy function in a graph cut problem in segmentation?
Data term (Unary) - It is a function derived from the observed data that measures the cost of assigning label to pixel p
Smoothness Term (Pairwise) - Measures the cost of assigning the labels to adjacent pixels p and q. It’s used to impose spatial smoothness.
What does the smoothness term measure in graph cut problems in segmentation?
- Check all pairs of neighbour pixels
- Penalise adjacent pixels with different labels
- Function penalises a lot for discontinuities between pixels of similar intensities
- However, if pixels are very different, then the penalty is small
What are the key steps of feature-based method using clustering?
- Represent the characteristics of the local region for each pixel e.g. intensity, filtering, SIFT, HOG, etc…
- Define similarity function e.g. Euclidean, Cosine, Manhattan, etc…
- Region partition is handled as pixel classification problem using clustering analysis, such as K-Means.