Our work throughout this chapter builds on the techniques of machine learning, meaning that the software makes predictions or decisions based on statistical models. Particularly, our approach is one of supervised learning, meaning that we (programmers and users) provide the software with examples of data and correct responses. The software creates the statistical model to extrapolate from these examples. The human provided examples are referred to as reference data or training data (or reference images or training images in the context of computer vision). Conversely, the software's extrapolations pertain to test data (or test images or scenes in the context of computer vision).
Supervised learning is much like the flashcard pedagogy used in early childhood education. The teacher shows the child a series of pictures (training images...