Converter uma string de bytes para cv :: mat

Eu preciso implementar uma função querecebe uma string contendo os bytes de uma imagem (recebido via conexão de soquete de impulso) econverte a informação em umOpenCV cv :: Mat.

Eu também sei a largura e altura da imagem e seu tamanho em bytes. Minha função é assim:

void createImageFromBytes(const std::string& name, std::pair<int,int> dimensions, const std::string& data)
{
   int width,height;
   width = dimensions.first;
   height = dimensions.second;
   //convert data to cv::Mat image

   std::string filepng = DATA_PATH"/" + name +".png";
   imwrite(filepng, image);
}

Qual é o melhor método para fazer isso? O OpenCV possui um construtor para o Mat a partir de uma string?

questionAnswers(4)

yourAnswerToTheQuestion