2024-09-01
Python
00

在C++中将cv::Mat保存为文件,然后在Python中加载为NumPy数组,可以使用OpenCV和NumPy库来完成。以下是一个示例代码,展示了如何执行这些步骤:

C++ 代码(使用OpenCV保存图像):

python
#include <opencv2/opencv.hpp> int main() { cv::Mat outimg; // 假设你已经创建了名为 outimg 的 cv::Mat 对象 // 保存为文件 cv::FileStorage fs("outimg.yml", cv::FileStorage::WRITE); fs << "outimg" << outimg; fs.release(); return 0; }

Python 代码(使用NumPy加载数据):

python
import numpy as np import cv2 # 加载数据 fs = cv2.FileStorage("outimg.yml", cv2.FILE_STORAGE_READ) outimg = fs.getNode("outimg").mat() fs.release() # 将数据转换为 NumPy 数组 outimg_np = np.array(outimg) # 打印数组 print(outimg_np)

这段代码将保存名为 "outimg.yml" 的文件,然后使用 Python 读取该文件并将其转换为 NumPy 数组。你可以根据需要修改文件名和路径。确保在 C++ 程序中创建的 cv::Mat 对象命名为 outimg,以便与 Python 中的节点名称相匹配。

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!