【opencv图像处理】图片的读取——cv2.imgread各种读取方式对比
以下实验基于python==3.6、opencv-python==4.1.0.25、imutils==0.5.2
图片的读取 cv2.imread
该方法第一个参数为文件名filename(文件路径+文件名)
第二个为读取方式flags,可选参数
IMREAD_ANYCOLOR = 4
IMREAD_ANYDEPTH = 2
IMREAD_COLOR = 1
IMREAD_GRAYSCALE = 0IMREAD_IGNORE_ORIENTATION = 128IMREAD_LOAD_GDAL = 8IMREAD_REDUCED_COLOR_2 = 17
IMREAD_REDUCED_COLOR_4 = 33
IMREAD_REDUCED_COLOR_8 = 65IMREAD_REDUCED_GRAYSCALE_2 = 16
IMREAD_REDUCED_GRAYSCALE_4 = 32
IMREAD_REDUCED_GRAYSCALE_8 = 64IMREAD_UNCHANGED = -1
前4中读取方式的shape和显示效果如下
可见IMREAD_GRAYSCALE
和IMREAD_ANYDEPTH
都只读取了一层灰度图像
而IMREAD_COLOR
和IMREAD_ANYCOLOR
读取了3层彩色图像
因为这里只测试了jpeg图片,可能在读取其他图片的情况下会有不同结果,大家可以自己试一下
cv2.IMREAD_GRAYSCALE (2048, 1536)
cv2.IMREAD_COLOR (2048, 1536, 3)
cv2.IMREAD_ANYDEPTH (2048, 1536)
cv2.IMREAD_ANYCOLOR (2048, 1536, 3)
下面是IMREAD_IGNORE_ORIENTATION
、IMREAD_LOAD_GDAL
、IMREAD_UNCHANGED
cv2.IMREAD_IGNORE_ORIENTATION (2048, 1536)
cv2.IMREAD_LOAD_GDAL (2048, 1536, 3)
cv2.IMREAD_UNCHANGED (2048, 1536, 3)
下面是IMREAD_REDUCED_COLOR_2
、IMREAD_REDUCED_COLOR_4
、IMREAD_REDUCED_COLOR_8
像素分别减少为原来的1/2、1/4、1/8,但依然是彩色像
cv2.IMREAD_REDUCED_COLOR_2 (1024, 768, 3)
cv2.IMREAD_REDUCED_COLOR_4 (512, 384, 3)
cv2.IMREAD_REDUCED_COLOR_8 (256, 192, 3)
下面是IMREAD_REDUCED_GRAYSCALE_2
、IMREAD_REDUCED_GRAYSCALE_4
、IMREAD_REDUCED_GRAYSCALE_8
像素分别减少为原来的1/2、1/4、1/8,并且都是灰度图像
cv2.IMREAD_REDUCED_GRAYSCALE_2 (1024, 768)
cv2.IMREAD_REDUCED_GRAYSCALE_4 (512, 384)
cv2.IMREAD_REDUCED_GRAYSCALE_8 (256, 192)
注:为了方便比较,以上所有图片在显示的时候又统一缩放为(512, 384)大小的图片并排显示
示例代码已经上传到github
转载于:https://my.oschina.net/u/4105485/blog/3082420
【opencv图像处理】图片的读取——cv2.imgread各种读取方式对比相关推荐
- OpenCV笔记02:用cv2.imread函数读取图片
1.读取图片 import cv2 img = cv2.imread('image.jpg') print(img) 2. 查看输出 [[[ 33 26 103][ 34 21 100][ 34 15 ...
- Python下openCV图像处理-图片展示、图片缩小
目的 1.窗口显示图片 2.图片缩小 3.图片上显示文字 知识点 1.引包 import cv2 #引用OpenCV功能包 import numpy as np #引用数组功能包 2.窗口展示 ori ...
- OpenCV图像处理(0)——文件夹批量读取文件
读取文件夹下所有图像.jpg string file_path = "H:\\图像处理模板\\c++\\CmakeBuildOpenCVPrj\\Pic\\PillingImages\\Si ...
- python爬虫验证码识别 (手把手教会你验证码识别)opencv图像处理 图片处理 验证码处理 降噪 简单易懂验证码处理
前言:验证码是个烦人的小家伙!当然有很多打码平台,可以轻松解决!但可以自己来,干嘛靠别人!有技术不学是傻儿童!今天主要讲opencv来解决验证码!抱着怀里教你!让你向前迈一大步!详细讲,慢慢看!简单易 ...
- opencv改变图片大小,cv2.resize方法详解
cv2.resize可以改变图片的尺寸,方法如下 def resize(src, dsize, dst=None, fx=None, fy=None, interpolation=None) src: ...
- Python读取文本的三种方式对比
1.概述 Python有三种读取文本的方式,分别是: read() readline() readlines() 2.三种方式的优缺点分析 2.1 read() 最简单的一种方法,一次性读取文件的所有 ...
- 使用openCV 的cv2.imread函数读取图片找不到路径
使用openCV 的cv2.imread函数读取图片时出现,找不到图像的问题: 错误如下: 尝试把 \ 换为 /, 或者把 \ 换为 \ 都不可以. 后来发现,是中文路径的问题,将中文路径换为英文路径 ...
- 【OpenCV 例程200篇】01. 图像的读取(cv2.imread)
[OpenCV 例程200篇]01. 图像的读取(cv2.imread) 欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列,持续更新 ...
- python怎么打印图片_Python+OpenCV图像处理——打印图片属性、设置存储路径、调用摄像头...
一. 打印图片属性.设置图片存储路径 代码如下: #打印图片的属性.保存图片位置 import cv2 as cv import numpy as np #numpy是一个开源的python科学计算库 ...
最新文章
- Node.js 指南(目录)
- redis 集合操作
- 笔记-计算机网络基础-综合布线系统
- 嵌套页面h5怎么调起手机文件_让微信公众号文章排版像网页h5一样高大上
- 关于Kafka高性能的几个问题
- 力扣225. 用队列实现栈(JavaScript)
- pytorch从ubuntu16.04到win7的迁移(解决)
- MySql计算百分比
- SpringBoot 的属性配置文件
- 寻求生态保护与矿产开发平衡点 青海给出“绿色方案”
- android形状属性、锁屏密码、动态模糊、kotlin项目、抖音动画、记账app、视频播放器等源码...
- CUDNN学习笔记(1)
- Steam网页版/手机端显示“短期内来自您网络的失败登陆过多,请稍后再试”
- 使鼠标保持按住状态_让电脑也能听、会写、还会说!小米小爱鼠标抢先体验
- 产学交流 | 重庆师范大学计算机学院、湖北省十堰市竹溪管委会各位专家到访芝诺数据...
- centos主机测磁盘读写速度极限
- 小新Pro13成功安装黑苹果超详细教程,小白也会安装双系统!
- 认识和选用常用的几种 GPRS 模块
- 六十五、Spark-综合案例(搜狗搜索日志分析)
- golang interface 类型变量当作某个具体类型使用