基于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函数嵌套实例
Sep 23 Python
Python守护进程用法实例分析
Jun 04 Python
python爬虫_微信公众号推送信息爬取的实例
Oct 23 Python
python实现机器人行走效果
Jan 29 Python
用Python将一个列表分割成小列表的实例讲解
Jul 02 Python
python2与python3共存问题的解决方法
Sep 18 Python
超简单使用Python换脸实例
Mar 27 Python
详解python3 + Scrapy爬虫学习之创建项目
Apr 12 Python
python中的 zip函数详解及用法举例
Feb 16 Python
Python实现手势识别
Oct 21 Python
Django如何与Ajax交互
Apr 29 Python
Python利用folium实现地图可视化
May 23 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
使用PHP数组实现无限分类,不使用数据库,不使用递归.
2006/12/09 PHP
使用PHP静态变量当缓存的方法
2013/11/13 PHP
PHP扩展模块memcached长连接使用方法分析
2014/12/24 PHP
php简单实现数组分页的方法
2016/04/30 PHP
php中array_unshift()修改数组key注意事项分析
2016/05/16 PHP
Laravel中9个不经常用的小技巧汇总
2019/04/16 PHP
因str_replace导致的注入问题总结
2019/08/08 PHP
laravel-admin 在列表页添加自定义按钮的例子
2019/09/30 PHP
javascript 异常处理使用总结
2009/06/21 Javascript
几个有趣的Javascript Hack
2010/07/24 Javascript
javascript字母大小写转换的4个函数详解
2014/05/09 Javascript
jquery实现弹出层效果实例
2015/05/19 Javascript
js代码实现下拉菜单【推荐】
2016/12/15 Javascript
详解vue 单页应用(spa)前端路由实现原理
2018/04/04 Javascript
vue3.0 CLI - 1 - npm 安装与初始化的入门教程
2018/09/14 Javascript
使用vue2.0创建的项目的步骤方法
2018/09/25 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
Python中使用PIL库实现图片高斯模糊实例
2015/02/08 Python
详解Python中for循环的使用方法
2015/05/14 Python
分享给Python新手们的几道简单练习题
2017/09/21 Python
python编写微信远程控制电脑的程序
2018/01/05 Python
利用python修改json文件的value方法
2018/12/31 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
2019/06/17 Python
python3实现往mysql中插入datetime类型的数据
2020/03/02 Python
基于python 等频分箱qcut问题的解决
2020/03/03 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
Python用SSH连接到网络设备
2021/02/18 Python
Gina Bacconi官网:吉娜贝康尼连衣裙和礼服
2018/04/24 全球购物
阿里巴巴Oracle DBA笔试题答案-备份恢复类
2013/11/20 面试题
工程力学硕士生的自我评价范文
2013/11/16 职场文书
元旦文艺汇演主持词
2014/03/26 职场文书
体育馆的标语
2014/06/24 职场文书
小学捐书活动总结
2014/07/05 职场文书
确保工程质量承诺书
2015/04/29 职场文书
副校长2015年教育教学工作总结
2015/07/27 职场文书
Python实现数据的序列化操作详解
2022/07/07 Python