基于python-opencv3的图像显示和保存操作


Posted in Python onJune 27, 2019

基于python-opencv3的图像显示和保存操作,具体代码如下所示:

import cv2 as cv
import numpy as np            #导入库
print("-------------------------------")
image = cv.imread("D:/1.jpeg")        #写入图像
cv.imshow("image",image)               #显示
cv.waitKey()                  #等待
cv.destroyAllWindows()             #关闭所有窗口
cv.imwrite("D:\\2.jpeg",image)         #保存图像

首先要导入cv2 和 numpy函数库,第四行的cv.imread()函数用于写入一个图像,imred()函数原型Mat imread(const String& filename,int flags = IMREAD_COLOR);

返回Mat对象,第一个参数是文件的绝对路径,但并不是支持所有文件对象,它支持的文件如下:

l  Windows bitmaps - *.bmp, *.dib (always supported)

l  JPEG files - *.jpeg, *.jpg, *.jpe (see the Notes section)

l  JPEG 2000 files - *.jp2 (see the Notes section)

l  Portable Network Graphics - *.png (see the Notes section)

l  WebP - *.webp (see the Notes section)

l  Portable image format - *.pbm, *.pgm, *.ppm *.pxm, *.pnm (always supported)

l  Sun rasters - *.sr, *.ras (always supported)

l  TIFF files - *.tiff, *.tif (see the Notes section)

l  OpenEXR Image files - *.exr (see the Notes section)

l  Radiance HDR - *.hdr, *.pic (always supported)

l  Raster and Vector geospatial data supported by Gdal (see the Notes section)

需要注意的是函数并不是靠识别后缀名,而是靠识别内容的编码。

其实,我们生活中常用的图像格式都是可以识别的,所以基本不用担心这个问题。

第二个参数可以将原图像进行一定的转换,此参数很重要,不要轻易设置,默认是IMREAD_LOAD_GDAL 即使用gdal驱动程序加载图像,常用的有以下几种:

l  IMREAD_UNCHANGED  加载原图,否则可能会被剪裁

l  IMREAD_GRAYSCALE   加载单通道灰度图像

l  IMREAD_COLOR   加载三通道BGR图像

其他的基本不会用到,也就不再赘述。

下面一行cv.imshow()是显示图像,其参数列表(“图像名”,图像),

Cv.waitKey()是等待函数,没有这个函数,会立刻退出,看不到图像,

参数列表(【delay】):delay=0(无限等待),delay>0(等待delayms),delay<0(等待任意键单击)

Cv.destroyAllWindows()是在运行完程序后关闭所有的窗口,这个是不必须的,但为了好的编程习惯应该这么做,。

最后,cv.imwrite(),则是保存图像了,其参数(路径名,图像名),即把想要保存的图像保存到指定的路径里(例如“D:/Ambitio/demo.jpeg”即把图像保存到D的Ambitio文件夹中,名字为demo,格式为jpeg)

总结

以上所述是小编给大家介绍的基于python-opencv3的图像显示和保存操作 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python开发常用的一些开源Package分享
Feb 14 Python
python的mysqldb安装步骤详解
Aug 14 Python
Python将多个excel表格合并为一个表格
Feb 22 Python
matplotlib.pyplot画图 图片的二进制流的获取方法
May 24 Python
mac下如何将python2.7改为python3
Jul 13 Python
django 实现电子支付功能的示例代码
Jul 25 Python
python Event事件、进程池与线程池、协程解析
Oct 25 Python
Python坐标线性插值应用实现
Nov 13 Python
实例讲解Python 迭代器与生成器
Jul 08 Python
Python中相见恨晚的技巧
Apr 13 Python
python基础之停用词过滤详解
Apr 21 Python
Python中可变和不可变对象的深入讲解
Aug 02 Python
pycharm new project变成灰色的解决方法
Jun 27 #Python
python之mock模块基本使用方法详解
Jun 27 #Python
python文件选择对话框的操作方法
Jun 27 #Python
python开启debug模式的方法
Jun 27 #Python
python判断所输入的任意一个正整数是否为素数的两种方法
Jun 27 #Python
教你一步步利用python实现贪吃蛇游戏
Jun 27 #Python
Python中遍历列表的方法总结
Jun 27 #Python
You might like
Mysql的GROUP_CONCAT()函数使用方法
2008/03/28 PHP
php生成静态文件的多种方法分享
2012/07/17 PHP
浅谈apache和nginx的rewrite的区别
2013/02/22 PHP
PHP使用json_encode函数时不转义中文的解决方法
2014/11/12 PHP
[原创]php实现数组按拼音顺序排序的方法
2017/05/03 PHP
理解JavaScript中的事件
2006/09/23 Javascript
学习YUI.Ext 第二天
2007/03/10 Javascript
js 获取、清空input type=&quot;file&quot;的值(示例代码)
2013/12/24 Javascript
js 本地预览的简单实现方法
2014/02/18 Javascript
JQuery对表单元素的基本操作使用总结
2014/07/18 Javascript
js创建表单元素并使用submit进行提交
2014/08/14 Javascript
JavaScript中继承用法实例分析
2015/05/16 Javascript
使用jQuery操作HTML的table表格的实例解析
2016/03/13 Javascript
JS实现的二叉树算法完整实例
2017/04/06 Javascript
详解 vue.js用法和特性
2017/10/15 Javascript
vue2.0 自定义组件的方法(vue组件的封装)
2018/06/05 Javascript
如何从0开始用node写一个自己的命令行程序
2018/12/29 Javascript
微信小程序引入模块中wxml、wxss、js的方法示例
2019/08/09 Javascript
a标签调用js的方法总结
2019/09/05 Javascript
解决ant Design中this.props.form.validateFields未执行的问题
2020/10/27 Javascript
Python验证码识别处理实例
2015/12/28 Python
Python魔法方法详解
2019/02/13 Python
pycharm的python_stubs问题
2020/04/08 Python
django 解决model中类写不到数据库中,数据库无此字段的问题
2020/05/20 Python
phonegap常用事件总结(必看篇)
2017/03/31 HTML / CSS
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
Ray-Ban雷朋太阳眼镜英国官网:Ray-Ban UK
2019/11/23 全球购物
什么是继承
2013/12/07 面试题
生产经理的自我评价分享
2013/11/07 职场文书
职业生涯规划书结束语
2014/04/15 职场文书
2014迎国庆标语大全
2014/09/19 职场文书
风雨哈佛路观后感
2015/06/03 职场文书
KTV员工管理制度
2015/08/06 职场文书
Python基础之教你怎么在M1系统上使用pandas
2021/05/08 Python
Python turtle编写简单的球类小游戏
2022/03/31 Python
解决IDEA翻译插件Translation报错更新TTK失败不能使用
2022/04/24 Python