Basic knowledge of Opencv -image read、presentation、convert and write

1.Read 

IMREAD_UNCHANGED       加载原图,不做任何处理

IMREAD_GRAYSCALE       把原图作为灰度图加载进来

IMREAD_COLOR               作为RGB图像加载进来

IMREAD_ANYCOLOR        读取图像时将其转换为任意颜色格式。这个标志主要用于确保图像以彩色格式读取,即使源图像本身是灰度图像,也会将其转换为彩色图像。 //当你需要确保图像以彩色格式进行处理,而源图像格式不确定(可能是灰度图像或彩色图像)时,使用 IMREAD_ANYCOLOR 可以保证图像以彩色格式读取。

Mat img = imread("D:/Images/zhang1.jpg", IMREAD_COLOR);
    if (img.empty())
    {
        printf("无法正常加载图像\n");
        return 0;
    }

2.presentataion

OpenCV 库中有用于显示图像的一个独立函数,基于操作系统原生的窗口管理机制,如windows的win32API。在测试阶段可以展示自己的阶段性的处理结果。主要用到的几个函数
在window销毁之前,可以通过window的name选择要操作的window。
//由opencv自动创建和销毁的一个图像窗口,无需自己手动销毁
//flag 窗口类型 WINDOW_AUTOSIZE 自适应图像大小
// WINDOW_FREERATIO 可以自己拖动窗体大小  namedWindow("pic", WINDOW_AUTOSIZE); //将图像img显示到指定名称的窗口中 cv::moveWindow("pic", 100, 100); resizeWindow("pic", Size(500, 800)); imshow("pic", img);
waitKey(0); //显示的时长 0为等待键入
destroywindow("pic");
destroyAllWindows();

3.convert

enum: COLOR_xxx 最常用的是RGB2GRAY  RGB2HSV

cvtColor(img, hsv, COLOR_BGR2HSV);

4.write

//保存到指定位置的文件 格式由后缀决定
imwrite("zhanghuiwen.png", out_img);
posted @ 2025-07-10 13:59  Wind_Swing_Dunn  阅读(6)  评论(0)    收藏  举报