欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

opencv学习—读取并且显示图像

程序员文章站 2024-03-09 13:49:23
...

opencv学习—读取并且显示图像

目录

opencv学习—读取并且显示图像

1、头文件

2、创建一个Mat对象

3、显示图像

4、控制窗口显示时间

5、读取并且显示图像代码


1、头文件

#include<opencv2/core.hpp>
#include<opencv2/imgproc.hpp>
#include<opencv2/highgui.hpp>
#include<iostream>
#include<string>

highgui模块,它包含输入和输出操作的功能

以及添加命名空间

C++的命名空间:using namespace std;
opencv的命名空间:using namespace cv;

2、创建一个Mat对象

Mat image;
image = imread(imageName, IMREAD_COLOR);

imread函数进行图像的读取。第二个参数指定了我们想要的图像的格式。

参数选择如下:

  • IMREAD_UNCHANGED(<0)按原样加载图像(包括alpha通道(如果存在)
  • IMREAD_GRAYSCALE(0)将图像作为强度加载
  • IMREAD_COLOR(> 0)以RGB格式加载图像

3、显示图像

namedWindow("Display window", WINDOW_AUTOSIZE); 
imshow("Display window", image);

先创建一个可以显示图像的窗口namedWindow

WINDOW_AUTOSIZE:让窗口图像占据显示图像的大小,不允许调整大小

4、控制窗口显示时间

waitKey(0);

窗口被显示直到用户按下下一个键,避免程序结束太快。

5、读取并且显示图像代码

#include<opencv2/core.hpp>
#include<opencv2/imgproc.hpp>
#include<opencv2/highgui.hpp>
#include<iostream>
#include<string>
using namespace std;
using namespace cv;

int main(int argc,char** argv) {
	String imageName("E:/backlit/1.jpg");
	if (argc>1)
	{
		imageName = argv[1];
	}
	Mat image;
	image = imread(imageName, IMREAD_COLOR);
	if (image.empty())
	{
		cout << "Could not open or Find the image" << endl;
		return -1;
	}
	namedWindow("Display window", WINDOW_AUTOSIZE); // Create a window for display.
	imshow("Display window", image);
	waitKey(0);
	return 0;
}

opencv学习—读取并且显示图像

相关标签: opencv学习 opencv