OpenCV && C++ 01 - Read an Image from File && Write an Image to File && Display an Image && Convert an Image's Color Space

前言

虽然之前已经在一定程度上接触、学习并应用了 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;
}

猜你喜欢

转载自www.cnblogs.com/zdfffg/p/11551264.html
今日推荐