C++ 字节转cv::mat
时间: 2023-08-08 18:08:26 浏览: 198
c++图片与base64互转
你可以使用以下代码将字节流转换为 `cv::Mat` 对象:
```cpp
#include <opencv2/opencv.hpp>
cv::Mat bytesToMat(const std::vector<uchar>& bytes, int width, int height, int channels) {
cv::Mat image(height, width, CV_MAKETYPE(CV_8U, channels));
std::memcpy(image.data, bytes.data(), bytes.size() * sizeof(uchar));
return image;
}
```
这个函数将一个存储字节流的向量作为输入,以及图像的宽度、高度和通道数。它创建一个 `cv::Mat` 对象,并将字节流复制到该对象的数据指针中。然后,你可以使用这个 `cv::Mat` 对象进行进一步的图像处理。
阅读全文