• 3.【openCV_imread()函数详解】


    (一)、imread函数

    1.什么是imread()函数以及Window的访问格式?

    imread()函数、是用来读取图像信息的函数,在引用路径的时候,我们既可以用双引号、也可以使用单引号.
    访问格式: imread("C:\Users\22612\Pictures\Screenshots\思考.jpg); 路径\ 名字.jpg

    2.imread()函数的原型?

    i吗read(“ ”,阿拉伯数字 a )

    3.各个原型代表的啥意思?

    当a=1时或则省略a的时候,颜色为原始颜色.
    当a=0时,读取原始图像为:灰色.
    并不是说a只能有这些数字可以取,还有其他的数比如 2 4等,因为不常用所以我们就不一一描述了,只需要聊一些简单的就行
    
    • 1
    • 2
    • 3

    4.实列操作:

    4.1代码展示:

    #include 
    #include      //引入库(opencv/程序名.hpp)
    using namespace cv;
    using namespace std;
    int main()
    {
    	char c;
    	Mat img = imread("yy.jpg",32);		
    	namedWindow("学校风景",WINDOW_NORMAL);    //定义窗口namedWindow("学校风景",WINDOW_AUTOSIZE);不可改变窗口的大小
    	resizeWindow("学校风景", 1958, 1080);    //窗口名字,宽度,长度
    	imshow("学校风景", img);     //展示窗口
    	c=waitKey(0);                //窗口展示的显示时长,以ms为单位,如果为0,一直显示
    	if (c == 'q')
    	{
    		exit(1);
    	}
    	destroyAllWindows();       //消除所有的窗口     
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    4.2效果展示:

    在这里插入图片描述

    5.总结

    imread抽象的可以说成,它是一个中介,它从文件夹里外面取出商品、然后再到手正给我们,它在途中对商品做什么。我们也只能认栽.

    (二)、imwrite函数

    1.什么是imwrite函数?

    imwrite()函数是再opencv中保存文件的函数,需要注意的是导入文件的后缀是.jpg,在imwrite函数中可以进行改格式.

    imwrite(路径//改成名字.格式,imag)
    
    • 1
    imwrite("C:\\Users\\22612\\Pictures\\Screenshots\\傻瓜图.png", imag);
    
    • 1

    2.imwrite函数的作用

    便于管理者进行快速保存文件.

    3.实战项目:

    简介:把导入的文件xx.jpg转成傻子图以.jpg的格式保存

    3.1代码展示

    #include 
    #include 
    using namespace cv;
    using namespace std;
    int main()
    {
    	Mat imag;
    	imag = imread("C:\\Users\\22612\\Pictures\\Screenshots\\思考.jpg");
    	namedWindow("校园风景");
    	imshow("校园风景", imag);
    	int  c;
    	c=waitKey(0);   //代表按任意键继续,是int型的
    	cout << "输入1,退出、反之保存" << endl;
    	cin >> c;
    	if (c == 1)
    	{
    		cout << "正常退出" << endl;
    		destroyAllWindows(); 
    	}
    	else
    	{
    		imwrite("C:\\Users\\22612\\Pictures\\Screenshots\\傻瓜图.jpg", imag);
    		cout << "保存" << endl;
    	}
    	return 0;
    
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    3.2效果图展示

    在这里插入图片描述

    4.总结

    不思则亡!
    在这里插入图片描述

  • 相关阅读:
    图像分类原理
    【web前端】<meta>标签
    信号量机制的实现
    聊一聊 golang 的测试与性能调优
    Java字符串String、StringBuffer、StringBuilder的异同
    拧紧数据“安全阀”,筑牢个保“安全堤”
    MySQL-数据类型和DDL
    社区医疗系统平台的设计与实现
    kotlin:list的for循环
    HFSS笔记——边界条件和激励
  • 原文地址:https://blog.csdn.net/qq_69683957/article/details/126183962