c++opencv读取窗口图像并以mat形式储存的代码
时间: 2024-10-10 14:10:09 浏览: 77
在OpenCV (版本4.x及以上) 中,你可以使用`cv::imread()`函数来读取图像文件到一个Mat矩阵中,然后显示在窗口上。以下是一个简单的示例,演示如何从文件读取图片并将其存储为Mat:
```cpp
#include <opencv2/opencv.hpp>
int main() {
// 引入必要的头文件
cv::Mat img; // 定义一个Mat变量来存储图像
// 读取图像文件
if (!cv::imread("path_to_your_image.jpg", img)) { // 替换 "path_to_your_image.jpg" 为实际图片路径
std::cout << "Error reading image file!" << std::endl;
return -1;
}
// 检查是否成功加载
if (img.empty()) {
std::cout << "Failed to load image." << std::endl;
return -1;
}
// 显示图像
cv::imshow("Image", img);
// 等待用户按键,0表示无限制等待直到按下任意键
cv::waitKey(0);
// 如果需要将图像保存为Mat形式,可以使用imwrite函数
// cv::imwrite("output_image.jpg", img); // 这里省略,因为已经显示了图像
return 0;
}
```
在这个例子中,`imread()`函数会尝试打开指定路径的图片,并返回一个包含图像数据的`cv::Mat`对象。如果文件无法打开,它会返回空的`Mat`。
注意替换`"path_to_your_image.jpg"`为你想要读取的实际图片路径。程序会显示图片并在用户按下键盘上的任意键后关闭窗口。
阅读全文
相关推荐


















