imread函数的原型如下:

C++:
Mat cv::imread(const String & filename,int flags = IMREAD_COLOR)

Python:
retval=cv.imread(filename[, flags])

第二个参数flags是一个可选参数,默认值为“ IMREAD_COLOR”其枚举值(可设置值)的具体意义如下:

上面这张截图来自网页:
https://docs.opencv.org/4.1.2/d4/da8/group__imgcodecs.html#ga61d9b0126a3e57d9277ac48327799c80

具体的枚举值如下:

enum     cv::ImreadModes {cv::IMREAD_UNCHANGED = -1,cv::IMREAD_GRAYSCALE = 0,cv::IMREAD_COLOR = 1,cv::IMREAD_ANYDEPTH = 2,cv::IMREAD_ANYCOLOR = 4,cv::IMREAD_LOAD_GDAL = 8,cv::IMREAD_REDUCED_GRAYSCALE_2 = 16,cv::IMREAD_REDUCED_COLOR_2 = 17,cv::IMREAD_REDUCED_GRAYSCALE_4 = 32,cv::IMREAD_REDUCED_COLOR_4 = 33,cv::IMREAD_REDUCED_GRAYSCALE_8 = 64,cv::IMREAD_REDUCED_COLOR_8 = 65,cv::IMREAD_IGNORE_ORIENTATION = 128
}

下面一个参数一个参数的说。
IMREAD_UNCHANGED
Python: cv.IMREAD_UNCHANGED
If set, return the loaded image as is (with alpha channel, otherwise it gets cropped).
设置这个参数表示原样读取图像,即使图像有alpha通道(alpha通道用于控制图像的透明度),读取时也会保留,否则不会保留alpha通道

IMREAD_GRAYSCALE
Python: cv.IMREAD_GRAYSCALE
If set, always convert image to the single channel grayscale image (codec internal conversion).
设置这个参数表示把图像转换成灰度图像后读取。

IMREAD_COLOR
Python: cv.IMREAD_COLOR
If set, always convert image to the 3 channel BGR color image.
设置这个参数表示将图像转换成3通的BGR彩色图像。

IMREAD_ANYDEPTH
Python: cv.IMREAD_ANYDEPTH
If set, return 16-bit/32-bit image when the input has the corresponding depth, otherwise convert it to 8-bit.
设置这个参数表示16位或32位深度的图像在读取时也按16位或32位深度的图像读取,如果没有选择这个参数,则会转换为8位深度的图像。

IMREAD_ANYCOLOR
Python: cv.IMREAD_ANYCOLOR
If set, the image is read in any possible color format.
设置这个参数,那么图像将以任意的彩色格式被读取。

IMREAD_LOAD_GDAL
Python: cv.IMREAD_LOAD_GDAL
If set, use the gdal driver for loading the image.
设置这个参数,则在读取图像时会使用GDAL驱动加速图像的读取。
PS:GDAL-Geospatial Data Abstraction Library 是使用C/C++语言编写的用于读写空间数据的一套跨平台开源库。简单地说,GDAL是一个操作各种栅格地理数据格式的库。包括读取、写入、转换、处理。

IMREAD_REDUCED_GRAYSCALE_2
Python: cv.IMREAD_REDUCED_GRAYSCALE_2
If set, always convert image to the single channel grayscale image and the image size reduced 1/2.
设置这个参数,读取图像时会将图像转换成灰度图并将图像尺寸缩小为原来的1/2

IMREAD_REDUCED_COLOR_2
Python: cv.IMREAD_REDUCED_COLOR_2
If set, always convert image to the 3 channel BGR color image and the image size reduced 1/2.
设置这个参数,读取图像时会将图像转换成BGR三通道图像,并且尺寸缩小为原来的1/2

IMREAD_REDUCED_GRAYSCALE_4
Python: cv.IMREAD_REDUCED_GRAYSCALE_4
If set, always convert image to the single channel grayscale image and the image size reduced 1/4.
设置这个参数,读取图像时会将图像转换成灰度图并将图像尺寸缩小为原来的1/4

IMREAD_REDUCED_COLOR_4
Python: cv.IMREAD_REDUCED_COLOR_4
If set, always convert image to the 3 channel BGR color image and the image size reduced 1/4.
设置这个参数,读取图像时会将图像转换成BGR三通道图像,并且尺寸缩小为原来的1/4

IMREAD_REDUCED_GRAYSCALE_8
Python: cv.IMREAD_REDUCED_GRAYSCALE_8
设置这个参数,读取图像时会将图像转换成灰度图并将图像尺寸缩小为原来的1/8

IMREAD_REDUCED_COLOR_8
Python: cv.IMREAD_REDUCED_COLOR_8
设置这个参数,读取图像时会将图像转换成BGR三通道图像,并且尺寸缩小为原来的1/8

IMREAD_IGNORE_ORIENTATION
Python: cv.IMREAD_IGNORE_ORIENTATION
If set, do not rotate the image according to EXIF’s orientation flag.
设置这个参数,不会根据EXIF格式图像的方向设置旋转图像。

Python示例代码如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 图像处理开发需求、图像处理接私活挣零花钱,请加微信/QQ 2487872782
# 图像处理开发资料、图像处理技术交流请加QQ群,群号 271891601import cv2 as cvimg01 = cv.imread('./image/food-01.jpg')  # 不设置第二个参数,即取默认值“IMREAD_COLOR”
img02 = cv.imread('./image/food-01.jpg', cv.IMREAD_UNCHANGED)
img03 = cv.imread('./image/food-01.jpg', cv.IMREAD_GRAYSCALE)
img04 = cv.imread('./image/food-01.jpg', cv.IMREAD_COLOR)
img05 = cv.imread('./image/food-01.jpg', cv.IMREAD_ANYDEPTH)
img06 = cv.imread('./image/food-01.jpg', cv.IMREAD_ANYCOLOR)
img07 = cv.imread('./image/food-01.jpg', cv.IMREAD_LOAD_GDAL)
img08 = cv.imread('./image/food-01.jpg', cv.IMREAD_REDUCED_GRAYSCALE_2)
img09 = cv.imread('./image/food-01.jpg', cv.IMREAD_REDUCED_COLOR_2)
img10 = cv.imread('./image/food-01.jpg', cv.IMREAD_REDUCED_GRAYSCALE_4)
img11 = cv.imread('./image/food-01.jpg', cv.IMREAD_REDUCED_COLOR_4)
img12 = cv.imread('./image/food-01.jpg', cv.IMREAD_REDUCED_GRAYSCALE_8)
img13 = cv.imread('./image/food-01.jpg', cv.IMREAD_REDUCED_COLOR_8)
img13 = cv.imread('./image/food-01.jpg', cv.IMREAD_IGNORE_ORIENTATION)

OpenCV中函数imread的参数flags的枚举值(可设置值)及其具体意义相关推荐

  1. 详解OpenCV的函数imread()和函数imshow(),并利用它们实现对图像的读取和显示

    详解OpenCV的函数imread()和函数imshow(),并利用它们实现对图像的读取和显示 目录 01-详解函数imread():读取图像文件 02-详解函数imshow():显示图像 03-使用 ...

  2. Gabor滤波简介与Opencv中的实现及参数变化实验

    声明:本篇文章为转载,目的是便于以后查找学习 Gabor滤波是一种非常常见的特征提取算法,在人脸识别等领域有着很广泛的应用,在这里我主要介绍一下Gabor滤波器的公式及Opencv下的代码实现,以及我 ...

  3. python可变参数和关键字参数位置_python中函数的默认参数和可变长参数如何排列?...

    参数在python中总是通过赋值进行传递的.在默认情况下,参数是通过其位置进行匹配的,从左到右,而且必须精确的传递和函数头部参数名一样多的参数. 这种默认的传递方式很简单 def f(a,b,c): ...

  4. python中什么是关键字参数_如何使用python语言中函数的关键字参数的用法

    一般情况下,在调用函数时,使用的是位置参数,即是按照参数的位置来传值:关键字参数是按照定义函数传入的参数名称来传值的.那么,关键字参数怎么使用? 工具/原料 python pycharm 截图工具 W ...

  5. python可变参数函数二阶导数公式_python中函数的可变参数

    简介 INTRODUCTION一.[其实已经用过]可变参数 二.可变参数+普通参数 结合用法1 三.知识要点总结强调 知识回顾: 1.函数关键字参数 2.函数的参数的默认值.必须从右边写到左边. 一. ...

  6. python中函数的可变参数_Python中函数的参数定义和可变参数

    转自:http://www.cnblogs.com/tqsummer/archive/2011/01/25/1944416.html 刚学用Python的时候,特别是看一些库的源码时,经常会看到fun ...

  7. python中span函数_Python中函数定义及参数实例

    1.函数定义函数就是完成特定功能的一个语句组,这组语句可以作为一个单位使用,并且给它取一个名字 ,可以通过函数名在程序的不同地方多次执行(这通常叫函数调用) 预定义函数(可以直接使用) 自定义函数(自 ...

  8. python中函数的可变参数_简单谈谈Python中函数的可变参数

    前言 在Python中定义函数,可以用必选参数.默认参数.可变参数和关键字参数,这4种参数都可以一起使用,或者只用其中某些,但是请注意,参数定义的顺序必须是:必选参数.默认参数.可变参数和关键字参数. ...

  9. Python 中函数的 收集参数 机制

    定义函数的时候,在参数前加了一个 * 号,函数可以接收零个或多个值作为参数.返回结果是一个元组. 传递零个参数时函数并不报错,而是返回一个空元组.但以上这种方法也有局限性,它不能收集关键字参数. 对关 ...

最新文章

  1. linux看php安装路径,linux下查找php安装路径的方法是什么
  2. mysql decode encode 乱码问题
  3. RPC调用框架比较分析--转载
  4. TCP通信文件上传原理
  5. 银行业务软件测试,银行业务软件系统测试研究
  6. Idea和redis的坑
  7. 爬虫:爬取微软必应翻译做成API
  8. 智慧职教mooc学院计算机文化基础答案,智慧职教MOOC学院-刷课分析
  9. IDEA 配置 google翻译插件(Translate)
  10. ABB机器人指令列表分类详解
  11. Redis报错:WRONGTYPE Operation against a key holding the wrong kind of value
  12. java逻辑与或非_Java基础——逻辑运算符与或非
  13. jmeter 取样器
  14. 前端JSON格式化显示
  15. Excel使用技巧 查找重复值
  16. 玻璃幕墙LED透明屏多少钱一平方?为你解答
  17. 软件测试工程师面试的时候该怎么样介绍自己?
  18. 一个简单易用的Http访问工具类for Android
  19. 从获评毕马威中国领先地产科技50强 看贝壳的长期主义
  20. 怎样设置Win7共享

热门文章

  1. python语言下载-python下载_python免费下载[编程工具]-下载之家
  2. python从1到n出现了多少个1-【算法21】从1到n的正数中1的出现次数
  3. python自学流程-各个阶段的python学习路线?
  4. python毕业设计有哪些方向-Python毕业选题档案管理系统 开题报告
  5. python序列类型-python序列类型包括哪三种
  6. python3.6.5无法安装-Python3.6无法安装numpy,如何解决?
  7. python就业方向及工资-Python的就业的方向和前景
  8. python和java哪个-Python和Java到底哪个更好?
  9. python菜鸟教程h-Python for 循环语句
  10. python基础教程第二版下载-Python基础教程(第2版)