我需要一些指导来将OpenCV Mat图像编码为.jpg格式并从中创建一个字节数组。此字节数组将用于使用未安装OpenCV库的其他应用程序重新创建原始图像。
基本上,我需要从c ++应用程序(安装OpenCV)创建Mat图像的字节数组,并使用java应用程序(无OpenCV)重新创建它。
到目前为止,我已经尝试了, std::vector<uchar> buffer;
cv::imencode(".jpg", returnImage, buffer);
uchar * byteArray = buffer.data();
此处buffer
包含大量值,但buffer.data()
仅包含buffer
中的前几个值,然后是“不完整序列\ 340”。
我想将Mat图像转换为byte []而不将其重新保存到磁盘,并且创建的字节数组应该能够在Java中用于重新创建原始.jpg图像。
为实现这一目标的任何建议?