14. An image restoration engine comprising: a processor arranged to receive a poor quality image; and a plurality of trained machine learning predictors arranged to use the poor quality image to calculate restored versions of the poor quality image, the plurality of trained machine learning predictors being arranged in a cascade architecture, the cascade architecture comprising a plurality of layers connected in series, each layer comprising at least one of the trained machine learning predictors, each internal layer of the cascade architecture being trained using more training data examples than the first layer of the cascade architecture.
14. An image restoration engine comprising: a processor arranged to receive a poor quality image; and a plurality of trained machine learning predictors arranged to use the poor quality image to calculate restored versions of the poor quality image, the plurality of trained machine learning predictors being arranged in a cascade architecture, the cascade architecture comprising a plurality of layers connected in series, each layer comprising at least one of the trained machine learning predictors, each internal layer of the cascade architecture being trained using more training data examples than the first layer of the cascade architecture. 15. An image restoration engine as claimed in claim 14 where at least one internal layer receives image features of at least one of the restored versions of the poor quality image as input.