java - Base-64转Mat转换opencv

标签 java c++ opencv base64 javacv

如何在 opencv 中将 base-64 字符串转换为 Mat 格式。

我需要将图像从 jave 发送到 C++(opencv 代码)。

如何在 C++ uisng opencv 中执行此操作?还是在 C++ 中?

最佳答案

对我来说,你为什么首先使用 Base64 绝对是个谜(你想通过摩尔斯电码传输你的图片吗?)但是你肯定必须先将你的字符串再次转换为正确的字节,然后才能将其转换为简历::垫子。因此,您必须使用用于生成 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。我希望这对您有所帮助 - 我不确定我是否得到了您想要做的事情。

关于java - Base-64转Mat转换opencv,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16835084/

相关文章:

java - 在 Mac OS X 扩展坞中锚定 Java 应用程序?

java - SQLite:选择时间在范围内的行

java - eclipse Java : Define final variable based on build configuration

c++ - 将两列的文件读入一个数组

python - 如何使用python在opencv中计算由3D点组成的弧的弧长?

java - 使用 Glassfish 3.1 获取 Active Directory 领域时出错

c++ - 非常可靠地计算二项式系数

c++ - Tesseract OCR无法读取图像的清晰文字

c# - 使用opencv c#检测图像中的文本 block

c++ - 编译为架构 x64 的库在 Arm 架构中出现错误