加载图像(cv::imread)和显示图像(cv::namedWindos与cv::imshow)

第一个参数表示图像文件名称

imread第二个参数,表示加载的图像时什么类型,支持常见的三个参数值

IMREAD_UNCHANGED(<0)表示加载原图,不做任何改变

IMREAD_GRAYSCALE(0)表示把原图作为灰度图像加载进来

IMREAD_COLOR(>0)表示把原图作为RGB图像加载进来

 

namedWindow功能时创建一个OpenCv窗口,它时由opencv自动创建与释放,你无需销毁他

 

常见的用法namedWindow("WindosTitle ",WINDOW_AUTOSIZE)

WINDOW_AUTOSIZE会自动根据图像大小,显示窗口大小,不能人为改变窗口大小

WINDOW_NORMAL跟QT继承的时候会使用,允许修改窗口大小

imshow根据窗口名称显示图像道指定的窗口上去,第一个参数时窗口名称,第二时mat对象

修改图像(cv::cvtColor)

cvtColor的功能时把图像从一个彩色空间转道另外一个色采空间,有三个参数,第一个参数表示源图像,第二参数表示色彩空间转换之后的图像,第三个参数表示源和目标色彩空间如:

COLOR_BGR2HLS, COLOR_BGR2GRAY等

 

cvtColor(imgae, gray_image, COLOR_BGR2GRAY);

 

#include 
#include 

using namespace cv;

int main(void) {
	Mat src = imread("C:/Users/Robin/Pictures/test.jpg");
	if (src.empty()) {
		std::cout << "could  not load image..\n";
		return 0;
	}

	namedWindow("test opencv setup.", CV_WINDOW_AUTOSIZE);
	imshow("test opencv setup", src);

	namedWindow("out window", CV_WINDOW_AUTOSIZE);
	Mat output_image;
	cvtColor(src, output_image, CV_BGR2HLS);//通道亮度饱和度 查api手册
	imshow("output windows", output_image);

	waitKey(0);
	return 0;
}

 

你可能感兴趣的:(opencv,opencv,c++)