opencv-python教程学习系列2-读取/显示/保存图像
前言
opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的读取、显示以及保存,坚持学习,共同进步。
系列教程参照OpenCV-Python中文教程;
系统环境
系统:win_x64;
python版本:python3.5.2;
opencv版本:opencv3.3.1;
内容安排
1.知识点介绍;
2.测试代码;
具体内容
1.知识点介绍;
1.1 读取图像;
cv2.imread(文件名, 标记),其中cv2.IMREAD_COLOR/1读取彩色图像,cv2.IMREAD_GRAYSCALE/0以灰度模式读取图像;
import cv2
import numpy as np
#读入图像,cv2.IMREAD_COLOR/1或者cv2.IMREAD_GRAYSCALE/0;
img = cv2.imread('test.jpg',cv2.IMREAD_GRAYSCALE)
1.2 显示图像cv2.imshow();
* cv2.waitKey()等待键盘输入,为毫秒级;
* cv2.destroyAllWindows()可以轻易删除任何我们建立的窗口,括号内输入想删除的窗口名;
其中,可以先创建一个窗口,再加载图像,这种情况可以决定窗口是否可以调整大小,使用到cv2.namedWindow()函数。初始设定函数标签是cv2.WINDOW_AUTOSIZE,调整窗口大小的标签是cv2.WINDOW_NORMAL。当图像维度太大或者需要添加轨迹条时,调整窗口大小将会非常有用。
1.3 保存图像cv2.imwrite(保存的文件名,要保存的图像变量 );
2.测试代码;
import cv2
import numpy as np
img = cv2.imread('test.jpg',cv2.IMREAD_GRAYSCALE)#读入图像,cv2.IMREAD_COLOR/1或者cv2.IMREAD_GRAYSCALE/0;
#可先创建窗口再加载图像,其中cv2.WINDOW_NORMAL可调整窗口大小,cv2.WINDOW_AUTOSIZE是初始设定函数标签;
cv2.namedWindow('image', cv2.WINDOW_NORMAL)
cv2.imshow('image',img)#显示图像
k = cv2.waitKey(0)#等待键盘输入,为毫秒级
if k == 27:
#wait for ESC key to exit
cv2.destroyAllWindows()#可以轻易删除任何建立的窗口,括号内输入项删除的窗口名
elif k == ord('s'):#wait for 's' key to save and exit.
cv2.imwrite('test_gray.png', img)#保存图像
cv2.destroyAllWindows() #matplotlib绘图库显示图像
from matplotlib import pyplot as plt
plt.imshow(img, cmap='gray', interpolation = 'bicubic')
plt.xticks([]), plt.yticks([])#to hide tick values on X and Y axis
plt.show()
参考
完
opencv-python教程学习系列2-读取/显示/保存图像的更多相关文章
- 《Python爬虫学习系列教程》学习笔记
http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把一些学习的笔记总结下来,还记录了一些自己 ...
- [转]《Python爬虫学习系列教程》
<Python爬虫学习系列教程>学习笔记 http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多. ...
- opencv-python教程学习系列7-opencv图像基本操作
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的基本操作,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...
- opencv-python教程学习系列3-视频操作
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍视频的获取和保存,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...
- opencv-python教程学习系列8-opencv图像算术运算
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的算术运算,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...
- opencv-python教程学习系列6-用滑动条做调色板
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv-python用滑动条做调色板,坚持学习,共同进步. 系列教程参照OpenCV-Pyt ...
- opencv-python教程学习系列4-opencv绘图函数
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv绘图函数,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统 ...
- opencv-python教程学习系列1-安装库
前言 以后的项目可能会用到python和opencv进行实现,故准备opencv-python教程学习系列记录学习过程的点滴,这是这一系列的开篇,坚持学习,共同进步. 系列教程参照OpenCV-Pyt ...
- opencv-python教程学习系列13-图像平滑
前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像平滑,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 系统: ...
随机推荐
- Qt5.3.2openglVS2010_QSqlField_字段类型
1.本来想通过 QSqlField::typeID() 来找字段类型,但是没找到... 然而看到了 SQL_INTEGER.SQL_SMALLINT等的使用(在“static QVariant::Ty ...
- VC6的VCVARS32.BAT所在位置
1. C:\Program Files (x86)\Microsoft Visual Studio\VC98\Bin\VCVARS32.BAT 2.
- springboot全局配置文件可设置的属性
# =================================================================== # COMMON SPRING BOOT PROPERTIE ...
- ng的概念层次(官方文档摘录)
官方文档是这么说的: You write Angular applications by: composing HTML templates with Angularized markup, writ ...
- Java 常用对象-BigInteger类
2017-11-02 21:57:09 BigInteger类:不可变的任意精度的整数.所有操作中,都以二进制补码形式表示 BigInteger(如 Java 的基本整数类型).BigInteger ...
- C#开发框架学习
C# 开源框架(整理) Json.NET http://json.codeplex.com/ Json.Net 是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Net环境下使用J ...
- 20170711筛选OutLook主题并转发
Sub 筛选OutLook主题并转发() On Error Resume Next Dim OutApp As Application Set OutApp = Application Dim Out ...
- Confluence 6 从外部目录中同步数据支持的目录类型
针对一些特定的用户目录类型,Confluence 在系统的数据库中保存了目录的缓存信息(用户和用户组),这样能够让系统更快速的访问用户和用户组数据.一个数据同步的进程将会间歇性的在系统中运行来将远程的 ...
- django-celery定时任务以及异步任务and服务器部署并且运行全部过程
Celery 应用Celery之前,我想大家都已经了解了,什么是Celery,Celery可以做什么,等等一些关于Celery的问题,在这里我就不一一解释了. 应用之前,要确保环境中添加了Celery ...
- Edge coloring of bipartite graph CodeForces - 600F (二分图染色)
大意:给定二分图, 求将边染色, 使得任意邻接边不同色且使用颜色种类数最少 最少颜色数即为最大度数, 要输出方案的话, 对于每一条边(u,v), 求出u,v能使用的最小的颜色$t0$,$t1$ 若t0 ...