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通过递归遍历出集合中所有元素的方法
Feb 25 Python
Python多线程编程(二):启动线程的两种方法
Apr 05 Python
分析python动态规划的递归、非递归实现
Mar 04 Python
python主线程捕获子线程的方法
Jun 17 Python
Python递归函数实例讲解
Feb 27 Python
对Python强大的可变参数传递机制详解
Jun 13 Python
Python代理IP爬虫的新手使用教程
Sep 05 Python
python 3.7.4 安装 opencv的教程
Oct 10 Python
Python有参函数使用代码实例
Jan 06 Python
Python 实现平台类游戏添加跳跃功能
Mar 27 Python
python中tkinter窗口位置\坐标\大小等实现示例
Jul 09 Python
从python读取sql的实例方法
Jul 21 Python
Python实现socket库网络通信套接字
Jun 04 #Python
python cv2图像质量压缩的算法示例
Jun 04 #Python
高考要来啦!用Python爬取历年高考数据并分析
单身狗福利?Python爬取某婚恋网征婚数据
告别网页搜索!教你用python实现一款属于自己的翻译词典软件
Python 中random 库的详细使用
Jun 03 #Python
详解Python常用的魔法方法
You might like
php计算多维数组中所有值总和的方法
2015/06/24 PHP
JavaScript实现Sleep函数的代码
2007/03/04 Javascript
javascript window对象属性整理
2009/10/24 Javascript
基于jQuery的图片大小自动适应实现代码
2010/11/17 Javascript
设置iframe的document.designMode后仅Firefox中其body.innerHTML为br
2012/02/27 Javascript
JavaScript高级程序设计(第3版)学习笔记3 js简单数据类型
2012/10/11 Javascript
jquery获取一组checkbox的值(实例代码)
2013/11/04 Javascript
javascript实现支持移动设备画廊
2015/08/24 Javascript
JavaScript 基础函数_深入剖析变量和作用域
2016/05/18 Javascript
javascript将中国数字格式转换成欧式数字格式的简单实例
2016/08/02 Javascript
JS实现图片局部放大或缩小的方法
2016/08/20 Javascript
Bootstrap栅格系统的使用和理解2
2016/12/14 Javascript
form表单序列化详解(推荐)
2017/08/15 Javascript
详解基于mpvue的小程序markdown适配解决方案
2018/05/08 Javascript
基于VUE实现的九宫格抽奖功能
2018/09/30 Javascript
Vue 刷新当前路由的实现代码
2019/09/26 Javascript
解决$store.getters调用不执行的问题
2019/11/08 Javascript
node.js使用mongoose操作数据库实现购物车的增、删、改、查功能示例
2019/12/23 Javascript
ES2020 新特性(种草)
2020/01/12 Javascript
[04:42]5分钟带你了解什么是DOTA2(第一期)
2017/02/07 DOTA
python读取Android permission文件
2013/11/01 Python
Python中用于返回绝对值的abs()方法
2015/05/14 Python
Python实现快速排序和插入排序算法及自定义排序的示例
2016/02/16 Python
Python 12306抢火车票脚本 Python京东抢手机脚本
2018/02/06 Python
python使用selenium实现批量文件下载
2019/03/11 Python
python同时替换多个字符串方法示例
2019/09/17 Python
python3用urllib抓取贴吧邮箱和QQ实例
2020/03/10 Python
Python2 与Python3的版本区别实例分析
2020/03/30 Python
Jupyter Notebook打开任意文件夹操作
2020/04/14 Python
python模拟哔哩哔哩滑块登入验证的实现
2020/04/24 Python
使用Python matplotlib作图时,设置横纵坐标轴数值以百分比(%)显示
2020/05/16 Python
HTML5中5个简单实用的API
2014/04/28 HTML / CSS
大韩航空官方网站:Korean Air
2017/10/25 全球购物
护理专业毕业生自荐书
2014/05/24 职场文书
2019年农民幸福观调查的实践感悟
2019/12/19 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis