前言
虽然之前已经在一定程度上接触、学习并应用了 OpenCV,但是依然想系统地对这些内容重新学习和整理。
Code
/*
作者:郑大峰
时间:2019年09月19日
环境:OpenCV 4.1.1 + VS2017
内容:图像的读取、导出、显示,图像颜色空间的转换
*/
#include "pch.h" // 这个是预编译头文件,VS2017之前的版本为stdafx.h
#include <iostream>
#include <opencv.hpp>
int main()
{
using namespace std;
using namespace cv;
// 相对路径注意事项
// 1)图片放在代码文件同级目录下,启动调试可正常读取图像。但是双击生成的可执行文件,则读取不到图像。
// 2)复制图像至生成的可执行文件同级目录下,双击可执行文件,可正常读取图像
string image_file = "claudia.png";
// 新手小白,在附加依赖项中添加两个依赖时,这里也会读取不到图像
// 所以附加依赖项,只需要添加Debug或者Release对应的依赖即可
Mat img = imread(image_file, IMREAD_UNCHANGED);
if (img.empty())
{
cout << "Image is empty!";
return -1;
}
Mat img_gray;
cvtColor(img, img_gray, COLOR_BGR2GRAY);
imwrite("claudia_gray.png", img_gray);
namedWindow(image_file, WINDOW_AUTOSIZE);
imshow(image_file, img);
waitKey(0);
return 0;
}