Lecture 11 Flashcards
What is Procrustes Analysis?
we have a model consisting of k points, and n samples of these, each with different shapes, rotation, translation, and scale, Procrustes analysis allows us to remove these non shape variations.
How do we remove translation with Procrustes Analysis?
Find the average point location from each sample, subtract this from each point, this moves the sample to eht origin.
How do we remove scale differences with Procrustes Analysis?
After removing translation, find the average distance between all points, scale points to fix this average to 1.
How do we remove rotation differences using Procrustes analysis?
After making the mean location 0 and giving the points common scale. Select one shape as the reference and rotate the otheres to align to it, using the SVD to find the necessary rotation.
To align two sets of points we arrange them into columns of a matrix and then find the SVD for this matrix, the necessary rotation will be the non sigma part of the SVD.
What is principal component analysis used to do?
Models the remaining variation in a set of data, this represents an element in a set of data as the mean + a set of k variations*their weight for that variation). Each variation will be orthogonal(linearly independent) and ordered from most to least significant.
How do we find the principal components?
Given n shapes with p variables, represent the ith shape as a vector Si, compute the mean shape, form the N x p data matrix (D) zero mean shapes as rows, compute the pp covariance matrix = C = D^TD/(n-1).
The variations are then the V component of C, the weights are found as V^T(Si - mean) and our samples are Si = mean + V*(weights).
What does principal component analysis provide in Procrustes analysis??
We made a point distribution model, and found the variation within them, most of the variation is in the main principal components, providing dimensionality reduction.
How do Point distribution model classifiers work? What are some problems? How can we improve?
Compute the average weight for each classification class, For a new sample we compute it’s weights. The classification is then whatever weight profile it is closest to.
This can suck because we can’t tell if a gesture is new and variance isn’t accounted for.
We can improve by using the mean and covariance for each class, and then compute the Mahalanobis distance for each class(the number of standard deviations from the mean), if within some threshold(2 or 3) it is in a class.
What is an active shape model?
Assume the point distribution model is initialised(can be done in first frame), copy the point distribution model into the next model and update to fit the image(ideally to line up with image edges by changing transform or weight values).
What is an active contour model and condensation tracking?
Active contour models(Snakes) define a curve through the points and define an energy for the curve, high image gradients, smooth curves and well spaces control points are good. Control points are moved to minimise energy.
Condensation tracking is Active contour modelling and a particle filter.
What is an Active appearance model?
Adds appearance to active shape model by learning pixel distribution, creating huge parameter spaces.