Introduction¶
This user guide is a general introduction to Menpo, aiming to provide a bird’s eye of Menpo’s design. After reading this guide you should be able to go explore Menpo’s extensive Notebooks and not be too suprised by what you see.
Core Interfaces¶
Menpo is an object oriented framework built around a set of core abstract interfaces, each one governing a single facet of Menpo’s design. Menpo’s key interfaces are:
Shape
- spatial data containersVectorizable
- efficient bi-directional conversion of types to a vector representationTargetable
- objects that generate some spatial dataTransform
- flexible spatial transformationsLandmarkable
- objects that can be annotated with spatial labelled landmarks
Data containers¶
Most numerical data in Menpo is passed around in one of our core data containers. The features of each of the data containers is explained in great detail in the notebooks - here we just list them to give you a feel for what to expect:
LazyList
- a list that calls a function when indexedImage
- n-dimensional image with k-channels of dataMaskedImage
- AsImage
, but with a boolean maskBooleanImage
- As boolean image that is used for masking images.PointCloud
- n-dimensional ordered point collectionPointUndirectedGraph
- n-dimensional ordered point collection with undirected connectivityPointDirectedGraph
- n-dimensional ordered point collection with directed connectivityTriMesh
- AsPointCloud
, but with a triangulation