opencv(1)读取图片、颜色空间变换、保存图片

1、读取图片——imread

Mat img = imread("002.jpg"); //图片和主程序在同一文件夹下
Mat img = imread("D:/002.jpg"); //图片和主程序不在同一文件夹下,/和//均可

2、颜色空间变换——vcColor

cvtColor(img,img0,CV_BGR2GRAY);  //把BGR的img转换成灰度图像的img0

OpenCV中默认的颜色排列方式为BGR而非RGB,转换最长用就是BGR2GRAY即将彩色图像变成灰度图像。

3、创建图像窗口——namedWindow

namedWindow("Gray", WINDOW_NORMAL);

创建一个名叫Gray的窗口,不加WINDOW_NORMAL时,如果图片太大会出现显示不全的情况。

4、保存图像——imwrite

imwrite("003.jpg", img0); //将img0保存成003.jpg

保存的图片格式由后缀名决定,“”和imread一样。

完整代码:

#include <iostream>  
#include <opencv2/core/core.hpp>  
#include <opencv2/highgui/highgui.hpp>  
#include <opencv2/opencv.hpp>  

using namespace cv;

int main()
{
    // 读入一张图片
    Mat img = imread("002.jpg");
    //Mat img = imread("D:/002.jpg");
    // 创建一个名为 "图片"窗口    
    namedWindow("图片",WINDOW_KEEPRATIO);
    // 在窗口中显示图片   
    imshow("图片", img);    
    Mat img0;
    cvtColor(img,img0,CV_BGR2GRAY);
    namedWindow("Gray", WINDOW_NORMAL);
    // 在窗口中显示图片   
    imshow("Gray",img0);   
    imwrite("003.jpg", img0);
    waitKey(0);
    return 0;
}

运行结果:

参考博客:

https://blog.csdn.net/keith_bb/article/details/53470170

https://www.cnblogs.com/hercules-chung/p/11370744.html

https://blog.csdn.net/firstlai/article/details/70882240

posted @ 2020-02-04 20:14  gefhg  阅读(669)  评论(0编辑  收藏  举报