基于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项目的Redis缓存消耗内存数据简单分析(附详细操作步骤)
目录 1 准备工作 2 具体实施 1 准备工作 什么是Redis? Redis:一个高性能的key-value数据库.支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使 ...
- 基于Metronic的Bootstrap开发框架经验总结(9)--实现Web页面内容的打印预览和保存操作
在前面介绍了很多篇相关的<Bootstrap开发框架>的系列文章,这些内容基本上覆盖到了我这个Bootstrap框架的各个主要方面的内容,总体来说基本达到了一个稳定的状态,随着时间的推移可 ...
- Python_基于Python同Linux进行交互式操作实现通过堡垒机访问目标机
基于Python同Linux进行交互式操作实现通过堡垒机访问目标机 by:授客 QQ:1033553122 欢迎加入全国软件测试交流群:7156436 实现功能 1 测试环境 1 代码实践 2 注 ...
- 基于Python操作redis介绍
(注:本文部分内容摘自互联网,由于作者水平有限,不足之处,还望留言指正.) 毕业前的最后一个学期(2016.03),龙哥结婚了.可是总有些人喜欢嘲笑别人,调侃我.当时我就理直气壮的告诉他们,等龙哥孩子 ...
- (转)基于Metronic的Bootstrap开发框架经验总结(9)--实现Web页面内容的打印预览和保存操作
http://www.cnblogs.com/wuhuacong/p/5147368.html 在前面介绍了很多篇相关的<Bootstrap开发框架>的系列文章,这些内容基本上覆盖到了我这 ...
- scapy - 基于python的数据包操作库
简介 地址:https://github.com/secdev/scapy scapy是一个基于python的交互式数据包操作程序和库. 它能够伪造或者解码多种协议的数据包,通过使用pcap文件对他们 ...
- python对缓存(memcached,redis)的操作
1.Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的 ...
- 使用python通过SSH登陆linux并操作
用的昨天刚接触到的库,在windows下通过paramiko来登录linux系统并执行了几个命令,基本算是初试成功,后面会接着学习的. 代码: >>> import paramiko ...
- Jenkins持续集成项目搭建与实践——基于Python Selenium自动化测试(自由风格)
Jenkins简介 Jenkins是Java编写的非常流行的持续集成(CI)服务,起源于Hudson项目.所以Jenkins和Hudson功能相似. Jenkins支持各种版本的控制工具,如CVS.S ...
随机推荐
- windows网络服务之配置网络负载均衡(NLB)群集
O首页51CTO博客我的博客 搜索 每日博报 社区:学院论坛博客下载更多 登录注册 家园 学院 博客 论坛 下载 自测 门诊 周刊 读书 技术圈 曾垂鑫的技术专栏 http:// ...
- 「小程序JAVA实战」微信小程序工程结构了解(五)
转自:https://idig8.com/2018/08/09/xiaochengxu-chuji-05/ 微信小程序工程结构 audio,button,canvas,checkbox 都是由4个文件 ...
- MySQL中TRUNCATE和ROUND函数的用法
一.TRUNCATE(expr, int_expr)用法 TRUNCATE函数将expr按照int_expr长度在小数点后按照位数直接进行截取. 实例: ); 输出结果:200.1256 二.ROUN ...
- 刷题向》POJ2823 单调队列裸题(<不会做,请自裁>系列)
最近BZOJ炸了,而我的博客上又更新了一些基本知识,所以这里刷一些裸题,用以丰富知识性博客 POJ2823 滑动的窗口 这是一道经典的单调队题,我记得我刚学的时候就是用这道题作为单调队列的例题,算 ...
- 【NOIP2008】传纸条
[描述] Description 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就 ...
- Centos7.2 下搭建LNMP环境(终极版)Yum安装
PHP7.1+Nginx+MySQL5.7 安装PHP //安装源只要遇到选择的全是Y rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-rele ...
- js通过session判断登录与否并确定跳转页面以及回车按钮提交
本文实例讲述了js判断登录与否并确定跳转页面的方法.分享给大家供大家参考.具体如下: 使用session存储,确定用户是否登录,从而确定页面跳转至哪个页面. 判断本地有无customerID func ...
- 如何从Win7上卸载Sql 2008 R2 Express,再重装
这两天,因工作需要,需要在一台新的机器上,Win7 64位英文操作系统上,安装Sql Server 2008 R2 Express,安装的过程中出现些问题,在查找问题的过程中,考虑重装 Sql Ser ...
- Shell +Cygwinterminal+WinMySQL 传参数授权
前言:新公司因为部分业务原因有好几百组win机器装MySQL授权登录比较麻烦,简单的写了一个shell传值自动授权的脚本,保存复用. #!/bin/bash #author liding@zlhy.c ...
- Use SFTP in Linux (转)
From http://www.cnblogs.com/chen1987lei/archive/2010/11/26/1888391.html sftp 是一个交互式文件传输程式.它类似于 ftp, ...