python如何利用cv2模块读取显示保存图片


Posted in Python onJune 04, 2021

1. 读取图片

使用函数cv2.imread(filepath,flags)读入一副图片

filepath:要读入图片的完整路径

flags:读入图片的标志

cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道

cv2.IMREAD_GRAYSCALE:读入灰度图片

cv2.IMREAD_UNCHANGED:顾名思义,读入完整图片,包括alpha通道

import numpy as npimport cv2img = cv2.imread(‘1.jpg',cv2.IMREAD_GRAYSCALE)

2. 显示图片

cv2.imshow(wname,img)
cv2.waitKey(0)
cv2.destroyAllWindows()
cv2.destroyWindow(wname)

使用函数cv2.imshow(wname,img)显示图像,第一个参数是显示图像的窗口的名字,第二个参数是要显示的图像(imread读入的图像),窗口大小自动调整为图片大小

cv2.waitKey顾名思义等待键盘输入,单位为毫秒,即等待指定的毫秒数看是否有键盘输入,若在等待时间内按下任意键则返回按键的ASCII码,程序继续运行。若没有按下任何键,超时后返回-1。参数为0表示无限等待。不调用waitKey的话,窗口会一闪而逝,看不到显示的图片

cv2.destroyAllWindow()销毁所有窗口

cv2.destroyWindow(wname)销毁指定窗口wname

保存图片

cv2.imwrite(filepahe, img, flag)

第一个参数filepath是要保存的文件路径及文件名,例如

filepath='"D\\TooBox\\0.jpg"

第二个参数是要保存的图像。可选的第三个参数,它针对特定的格式:对于JPEG,其表示的是图像的质量,用0 - 100的整数表示,默认95;对于png ,第三个参数表示的是压缩级别。默认为3.

注意:cv2.IMWRITE_JPEG_QUALITY类型为 long ,必须转换成 int

cv2.IMWRITE_PNG_COMPRESSION, 从0到9 压缩级别越高图像越小。

cv2.imwrite('1.png', img, [int(cv2.IMWRITE_JPEG_QUALITY),95])
cv2.imwrite('1.png',img,[int(cv2.IMWRITE_PNG_COMPRESSION),9])

图片操作

图片翻转

使用函数cv2.flip(img,flipcode)翻转图像,flipcode控制翻转效果

flipcode = 0:沿x轴翻转

flipcode > 0:沿y轴翻转

flipcode < 0:x,y轴同时翻转

imgflip=cv2.flip(img,1)

图片复制

imgcopy=img.copy()

颜色空间转换

RGB彩色图片转为灰度图片

img2 = cv2.cvtColor(img,cv2.COLOR_RGB2GRAY)

灰度图片转为RGB彩色图片

img3 = cv2.cvtColor(img,cv2.COLOR_GRAY2RGB)

总结

到此这篇关于python利用cv2读取显示保存图片的文章就介绍到这了,更多相关python cv2读取图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python解析中国天气网的天气数据
Mar 21 Python
Python使用scrapy采集数据过程中放回下载过大页面的方法
Apr 08 Python
python对指定目录下文件进行批量重命名的方法
Apr 18 Python
在Python中使用swapCase()方法转换大小写的教程
May 20 Python
插入排序_Python与PHP的实现版(推荐)
May 11 Python
python3 模拟登录v2ex实例讲解
Jul 13 Python
python web.py开发httpserver解决跨域问题实例解析
Feb 12 Python
详解Python下ftp上传文件linux服务器
Jun 21 Python
Python pyinotify模块实现对文档的实时监控功能方法
Oct 13 Python
在python tkinter界面中添加按钮的实例
Mar 04 Python
python中绕过反爬虫的方法总结
Nov 25 Python
Spy++的使用方法及下载教程
Jan 29 Python
Python实现socket库网络通信套接字
Jun 04 #Python
python cv2图像质量压缩的算法示例
Jun 04 #Python
高考要来啦!用Python爬取历年高考数据并分析
单身狗福利?Python爬取某婚恋网征婚数据
告别网页搜索!教你用python实现一款属于自己的翻译词典软件
Python 中random 库的详细使用
Jun 03 #Python
详解Python常用的魔法方法
You might like
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
解析如何用php screw加密php源代码
2013/06/20 PHP
使用PHP实现阻止用户上传成人照片或者裸照
2014/12/25 PHP
Windows7下的php环境配置教程
2015/02/28 PHP
php中使用base HTTP验证的方法
2015/04/20 PHP
tp5.1框架数据库子查询操作实例分析
2020/05/26 PHP
qTip2 精致的基于jQuery提示信息插件
2012/02/17 Javascript
javascript返回顶部效果(自写代码)
2013/01/06 Javascript
让javascript加载速度倍增的方法(解决JS加载速度慢的问题)
2014/12/12 Javascript
详解Bootstrap创建表单的三种格式(一)
2016/01/04 Javascript
使用JSON作为函数的参数的优缺点
2016/10/27 Javascript
Vue form 表单提交+ajax异步请求+分页效果
2017/04/22 Javascript
基于js原生和ajax的get和post方法以及jsonp的原生写法实例
2017/10/16 Javascript
JavaScript编程设计模式之观察者模式(Observer Pattern)实例详解
2017/10/25 Javascript
Vue 嵌套路由使用总结(推荐)
2020/01/13 Javascript
在vue中使用Base64转码的案例
2020/08/07 Javascript
pyv8学习python和javascript变量进行交互
2013/12/04 Python
基于Django与ajax之间的json传输方法
2018/05/29 Python
解决Python3 控制台输出InsecureRequestWarning问题
2019/07/15 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
python列表返回重复数据的下标
2020/02/10 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
Django如何继承AbstractUser扩展字段
2020/11/27 Python
css和css3弹性盒模型实现元素宽度(高度)自适应
2019/05/15 HTML / CSS
大学生求职简历的自我评价
2013/10/14 职场文书
员工拓展培训方案
2014/02/15 职场文书
销售2014年度工作总结
2014/12/08 职场文书
兴趣班停课通知
2015/04/24 职场文书
2015年监理个人工作总结
2015/05/23 职场文书
2019企业给员工的慰问信
2019/06/24 职场文书
MySQL的Query Cache图文详解
2021/07/01 MySQL
详细聊聊MySQL中慢SQL优化的方向
2021/08/30 MySQL
Javascript 解构赋值详情
2021/11/17 Javascript
MySQL优化常用的19种有效方法(推荐!)
2022/03/17 MySQL
Android开发之WECHAT微信小程序路由跳转的两种形式
2022/04/12 Java/Android
java中如何截取字符串最后一位
2022/07/07 Java/Android