C++openCV图像的读取、显示、保存、信息

 OpenCV支持bmp、jpg、png、tiff等常用图像格式的解析

#include <opencv2/opencv.hpp> //头文件

int main()
{
    
    cv::Mat img = cv::imread("./tu/马.jpg", cv::IMREAD_UNCHANGED); //读入一张图片
    /*
    参数2:图像文件解析的方式,支持的方式有如下:
            cv::IMREAD_UNCHANGED    不对图像文件进行任何转换,直接读取【读入完整图片,包括alpha通道(png有,jpg无)】
                IMREAD_GRAYSCALE    将任何图像均转换为灰度图像(单通道)进行读取
                IMREAD_COLOR        将任何图像均转为RGB彩色图像(三通道)进行读取【默认参数,读入一副彩色图片,忽略alpha通道】
                IMREAD_ANYDEPTH     如果不设置这个参数,16/32位图像将会自动转为8位图像
                IMREAD_ANYCOLOR     将按照图像文件设定的颜色格式进行图像读取
                IMREAD_LOAD_GDAL    调用gdal库进行图像文件读取。(可以简单地理解为读取TIFF图像文件)
    */
        
    imshow("new", img);  //在窗口中显示载入的图片
    //参数1:窗口标题,如果找不到参数1的窗口就新建一个
    //imread读入的图像
    //imshow函数只支持8位灰度图像、8位彩色图像和32位灰度图像(像素值范围0-1)
    cv::waitKey(6000);
    img = cv::imread("./tu/猫.jpg", cv::IMREAD_UNCHANGED);
    imshow("new", img);
    cv::waitKey(6000); // 等待6000 ms
}

 

#include <opencv2/opencv.hpp> 
int main()
{
    
    cv::Mat img = cv::imread("./tu/马.jpg", cv::IMREAD_UNCHANGED); 
    int w = img.cols;  //返回图片的宽度
    int h = img.rows;  //返回图片的高度
    unsigned char* p = img.data; //数据缓存区指针
    unsigned int x = (unsigned int)p;

    x = img.channels();  //返回通道数

    x = img.elemSize();//返回的是一个像素占用的字节数

    x = img.elemSize() / img.channels() * 8;  //深度

    std::cout  << x << std::endl;
            
    cv::waitKey(6000);
    
}

 

cv::Mat img = cv::imread("./tu/马.jpg", cv::IMREAD_UNCHANGED); 

    std::vector<int> compression_params;
    compression_params.push_back(cv::IMWRITE_JPEG_QUALITY); 
    compression_params.push_back(50);

    cv::imwrite("my.jpg", img, compression_params);  //保存图片
    //参数1:文件名
    //参数2:Mat类型的矩阵
    /*
    参数3:[可选]表示为特定格式保存的参数编码,std::vector<int>类型
    看:https://blog.csdn.net/mars_xiaolei/article/details/62233900?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase 
    */

 

 

 

 

 

 

 

 

posted @ 2020-09-02 18:57  天子骄龙  阅读(7247)  评论(0编辑  收藏  举报