c#向c++(opencv)实现base64图像数据传递和编解码

c#代码:

csharp 复制代码
[DllImport("ocr_cpu_ov.dll", CallingConvention = CallingConvention.Cdecl)]
extern static int det_base64(string in_pixels64);


Bitmap bmp = new Bitmap(@imagePath);
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp); // 注意这里的图片类型
byte[] arr = ms.ToArray(); // 使用ToArray()来简化代码
string base64Str = Convert.ToBase64String(arr);


rst = infer_base64(base64Str);

c++代码:

cpp 复制代码
extern "C" OCRDLL_API int det_base64(const char* in_pixels64);


OCRDLL_API int infer_base64(const char* in_pixels64) {
	try {
		std::string imagebase64(in_pixels64);
		std::string decodedImage = base64_decode(imagebase64);

		std::vector<uchar> data(decodedImage.begin(), decodedImage.end());
		cv::Mat img = cv::imdecode(data, cv::IMREAD_COLOR);
	}
	catch (const std::exception& e) {
		std::cerr << "Error: " << e.what() << std::endl;
	}

	return 0;
}
相关推荐
kyle~41 分钟前
C++----函数指针与函数指针类型 返回值类型 (*类型名)(参数列表)
开发语言·c++
努力中的编程者1 小时前
二叉树(C语言底层实现)
c语言·开发语言·数据结构·c++·算法
WarrenMondeville1 小时前
1.Unity面向对象-单一职责原则
unity·设计模式·c#
qq_416018721 小时前
高性能密码学库
开发语言·c++·算法
宵时待雨1 小时前
C++笔记归纳14:AVL树
开发语言·数据结构·c++·笔记·算法
呜喵王阿尔萨斯2 小时前
C and C++ code
c语言·开发语言·c++
旺仔.2912 小时前
顺序容器:deque双端队列 详解
c++
Jasonakeke2 小时前
我的编程来时路
java·c++·python
IT从业者张某某2 小时前
基于DEVC++实现一个控制台的赛车游戏-02-实现赛车游戏
开发语言·c++·游戏
2501_908329853 小时前
C++中的备忘录模式
开发语言·c++·算法