Как я могу преобразовать строку base-64 в формат Mat в opencv.
Мне нужно отправить изображение из jave в C ++ (opencv Code).
Как это сделать в C ++ с помощью OpenCV? или в С ++?
Для меня абсолютная загадка, почему вы в первую очередь переходите на Base64 (вы хотите передать свою картинку с помощью азбуки Морзе?), Но наверняка вам нужно сначала снова преобразовать вашу строку в байты propper, прежде чем вы сможете преобразовать ее в cv :: Мат. Поэтому вам нужно использовать любой набор функций и символов, который вы использовали для генерации строки Base64, чтобы развернуть ее снова. Как только у вас есть правильный байтовый массив, довольно просто получить cv :: Mat:
cv::Mat image(height,rows,CV_8UC3,array.data());
Если вы не собираетесь передавать свое изображение через древние системы связи, я бы взял этот ярлык и прямо прочитал в растровом изображении:
Mat image;
image = imread("full/path/of/image.bmp", CV_LOAD_IMAGE_COLOR);
И также рекомендую вам делать все на C ++ или использовать javaCV. Я надеюсь, что это было полезно — я не уверен, получил ли я то, что вы хотите сделать.
Других решений пока нет …