c++怎么使用OpenCV读取和显示图片_c++ OpenCV图片读取与显示方法

首先检查图像是否成功加载,使用cv::imread读取图片并判断返回的Mat对象是否为空,若为空则输出错误信息;接着通过cv::imshow显示图像,需配合cv::waitKey确保窗口正常渲染。

c++怎么使用opencv读取和显示图片_c++ opencv图片读取与显示方法

在C++中使用OpenCV读取和显示图片是一个基础但重要的操作,适用于图像处理、计算机视觉等项目。要完成这个任务,需要正确配置OpenCV环境,并掌握核心函数的使用。

包含必要的头文件

使用OpenCV前,需引入相关头文件:

#include :包含OpenCV所有常用模块。 常用子模块如imgcodecs、highgui、imgproc会自动包含。

读取图片:cv::imread

使用cv::imread函数从文件加载图像:

函数原型:cv::Mat cv::imread(const std::string& filename, int flags) 第一个参数是图片路径,支持绝对或相对路径。 第二个参数指定读取方式,如: cv::IMREAD_COLOR:以三通道彩色图读取(默认)。 cv::IMREAD_GRAYSCALE:转为灰度图。 cv::IMREAD_UNCHANGED:保留透明通道(如PNG)。 返回值为cv::Mat类型,若路径错误或文件不存在,返回空矩阵(.empty() 为 true)。

示例代码:

立即学习“C++免费学习笔记(深入)”;

cv::Mat image = cv::imread("example.jpg", cv::IMREAD_COLOR);if (image.empty()) {    std::cerr << "无法读取图片,请检查路径!" << std::endl;    return -1;}

显示图片:cv::imshow 和 cv::waitKey

使用cv::imshow在窗口中显示图像:

函数原型:void cv::imshow(const std::string& winname, cv::InputArray mat) 第一个参数是窗口名称,可自定义。 第二个参数是要显示的Mat对象。

显示后需调用cv::waitKey等待按键事件,否则窗口可能闪退:

cv::waitKey(0):无限等待任意键按下。 cv::waitKey(1):常用于视频循环,等待1毫秒。 返回值为按下的键值,可用于交互控制。

完整显示流程:

cv::imshow("图片显示", image);cv::waitKey(0); // 等待按键后关闭cv::destroyAllWindows(); // 关闭所有窗口

完整示例代码

整合上述步骤的一个简单程序:

#include #include int main() {    cv::Mat img = cv::imread("test.jpg");        if (img.empty()) {        std::cout << "图片加载失败!" << std::endl;        return -1;    }    cv::imshow("原图", img);    cv::waitKey(0);    cv::destroyAllWindows();    return 0;}

确保图片路径正确,且OpenCV已正确链接到项目中(编译时添加相应的库路径和依赖)。

基本上就这些,掌握 imread、imshow 和 waitKey 就能实现基本的图像加载与展示功能。

以上就是c++++怎么使用OpenCV读取和显示图片_c++ OpenCV图片读取与显示方法的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1480254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月19日 04:28:30
下一篇 2025年12月19日 04:28:39

相关推荐

发表回复

登录后才能评论
关注微信