bb_avg_edge_length_49_euclidean_error¶
-
menpofit.error.
bb_avg_edge_length_49_euclidean_error
(shape, gt_shape)[source]¶ Computes the Euclidean error based on 49 points normalised by the average edge length of the 68-point ground truth shape’s bounding box, i.e.
\[\frac{\mathcal{F}(s,s^*)}{\mathcal{N}(s^*)}\]where
\[\mathcal{F}(s,s^*) = \frac{1}{49}\sum_{i=1}^{49}\sqrt{(s_{i,x}-s^*_{i,x})^2 + (s_{i,y}-s^*_{i,y})^2}\]where \(s\) and \(s^*\) are the final and ground truth shapes, respectively. \((s_{i,x}, s_{i,y})\) are the x and y coordinates of the \(i\)’th point of the final shape, \((s^*_{i,x}, s^*_{i,y})\) are the x and y coordinates of the \(i\)’th point of the ground truth shape. Finally, \(\mathcal{N}(s^*)\) is a normalising function that returns the average edge length of the bounding box of the 68-point ground truth shape (
bb_avg_edge_length
).- Parameters
shape (menpo.shape.PointCloud) – The input shape (e.g. the final shape of a fitting procedure). It must have 68 or 66 or 51 or 49 points.
gt_shape (menpo.shape.PointCloud) – The ground truth shape. It must have 68 points.
- Returns
normalised_error (float) – The computed Euclidean normalised error.
- Raises
ValueError – Final shape must have 68 or 51 or 49 points
ValueError – Ground truth shape must have 68 points