Convierta una arraé de bytes a una imagen OpenCV en C ++

Tengo una matriz de bytes que representa un archivo .jpg que quiero convertir directamente en un objeto OpenCV Mat.

Tengo algo como

byte* data; // Represents a JPG that I don't want to disk and then read.
// What goes here to end up with the following line?
cv::Mat* image_representing_the_data;