13.【openCV_imread()函数详解】

简介: 13.【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等,因为不常用所以我们就不一一描述了,只需要聊一些简单的就行

4.实列操作:

4.1代码展示:

#include <iostream>
#include <opencv2/opencv.hpp>     //引入库(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;
}

4.2效果展示:

5.总结

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

(二)、imwrite函数

1.什么是imwrite函数?

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

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

2.imwrite函数的作用

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

3.实战项目:

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

3.1代码展示

#include <iostream>
#include <opencv2/opencv.hpp>
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;
}

3.2效果图展示

4.总结

不思则亡!


相关文章
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——1.3、图像缩放resize函数
OpenCV这么简单为啥不学——1.3、图像缩放resize函数
61 0
|
10月前
|
计算机视觉
OpenCV-图像翻转函数cv::filp
OpenCV-图像翻转函数cv::filp
|
3月前
|
人工智能 Linux API
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
OpenCV这么简单为啥不学——1.1、图像处理(灰度图、模糊图片、GaussianBlur函数、提取边缘、边缘膨胀、边缘细化)
69 0
|
10月前
|
计算机视觉 C++
OpenCV-计时函数cv::getTickCount&cv::getTickFrequency
OpenCV-计时函数cv::getTickCount&cv::getTickFrequency
112 0
|
6天前
|
机器人 计算机视觉
巧用 OpenCV solvePnP() 函数完成由图像坐标系到机器人坐标系的转换(二维坐标系之间的转换)
巧用 OpenCV solvePnP() 函数完成由图像坐标系到机器人坐标系的转换(二维坐标系之间的转换)
20 2
|
1月前
|
机器学习/深度学习 XML 计算机视觉
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习库,它提供了大量的函数和工具,用于处理图像和视频数据。
OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉和机器学习库,它提供了大量的函数和工具,用于处理图像和视频数据。
|
3月前
|
监控 算法 Serverless
OpenCV这么简单为啥不学——1.12、使用ssim函数对两张照片进行相似度分析
OpenCV这么简单为啥不学——1.12、使用ssim函数对两张照片进行相似度分析
107 0
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——1.6、图像旋转与翻转(rotate函数、imutils环境安装、imutils任意角度旋转)
OpenCV这么简单为啥不学——1.6、图像旋转与翻转(rotate函数、imutils环境安装、imutils任意角度旋转)
64 0
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——1.4、基础标识绘制(绘制线line函数、rectangle函数绘制四边形、circle函数绘制圆形、putText函数绘制文字、putText绘制中文文字)
OpenCV这么简单为啥不学——1.4、基础标识绘制(绘制线line函数、rectangle函数绘制四边形、circle函数绘制圆形、putText函数绘制文字、putText绘制中文文字)
42 0
|
3月前
|
监控 API 计算机视觉
OpenCV这么简单为啥不学——2、逐帧播放视频(VideoCapture函数、waitKey函数、0xFF == ord(‘1‘))
OpenCV这么简单为啥不学——2、逐帧播放视频(VideoCapture函数、waitKey函数、0xFF == ord(‘1‘))
46 0