《OpenCV3编程入门》第3章-学习笔记1-Mat+imread+imshow+nameWindow()+imwrite()

举报
王博Kings 发表于 2020/12/30 00:30:20 2020/12/30
【摘要】 opencv中的C++类和函数都是 定义在命名空间cv之内 #include<opencv2/core/core.hpp>#include<opencv2/highgui/highgui.hpp>using namespace cv; Mat类 Mat是用来保存图像以及其他矩阵数据的数据结构, 默认情况尺寸为0;先学会下面这一句 将my.jpg导入到电脑中,存在src...

opencv中的C++类和函数都是 定义在命名空间cv之内


  
  1. #include<opencv2/core/core.hpp>
  2. #include<opencv2/highgui/highgui.hpp>
  3. using namespace cv;

Mat类

Mat是用来保存图像以及其他矩阵数据的数据结构, 默认情况尺寸为0;先学会下面这一句

将my.jpg导入到电脑中,存在srcImage这个矩阵中

Mat srcImage = imread("my.jpg");
 

imread函数

Mat imread(const string& filename, intflags=1 );

 

第一个参数:文件名(包含文件路径的)

第二个参数:读取图像的选项。>0 返回三通道彩色图像,=0返回灰度,<0返回Alpha通道的图像


  
  1. Mat image0=imread("my.jpg",2 | 4);//载入最真实的图像
  2. Mat image1=imread("my.jpg",0);//载入灰度图
  3. Mat image2=imread("my.jpg",199);//载入3通道的彩色图像
  4. Mat logo=imread("my.jpg");//载入3通道的彩色图像,默认为1

imshow函数

void imshow(const string& winname, InputArray mat);

 

第一个参数:窗口名称

第二个参数:需要显示的图像的矩阵

默认显示是原始图片大小,而缩放时取决于图像的深度,InputArray就当做Mat类型即可


  
  1. Mat msd;
  2. imshow("显示出来结果图像",msd);

创建窗口:nameWindow()函数

void nameWindow(const string& winname,int flags=WINDOW_AUTOSIZE);
 

第一个参数:窗口名称

第二个参数:窗口标识,也就是窗口大小

输出图像到文件imwrite()函数

bool imwrite(const string& filename,InputArray img, const vector<int>& params=vector<int>() );

 

第一个参数:文件名,通常有后缀,比如my.jpg     you.png

第二个参数:需要保存的数据,Mat类型

第三个参数:特定格式的参数编码,写不写都行,根据jpg,png等格式自动调整压缩还是高质量显示。

 

文章来源: kings.blog.csdn.net,作者:人工智能博士,版权归原作者所有,如需转载,请联系作者。

原文链接:kings.blog.csdn.net/article/details/83781513

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。