前言

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() 

参考

1.opencv-python教程-读取/显示/保存图像

opencv-python教程学习系列2-读取/显示/保存图像的更多相关文章

  1. 《Python爬虫学习系列教程》学习笔记

    http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多.学习过程中我把一些学习的笔记总结下来,还记录了一些自己 ...

  2. [转]《Python爬虫学习系列教程》

    <Python爬虫学习系列教程>学习笔记 http://cuiqingcai.com/1052.html 大家好哈,我呢最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多. ...

  3. opencv-python教程学习系列7-opencv图像基本操作

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的基本操作,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...

  4. opencv-python教程学习系列3-视频操作

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍视频的获取和保存,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...

  5. opencv-python教程学习系列8-opencv图像算术运算

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像的算术运算,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 ...

  6. opencv-python教程学习系列6-用滑动条做调色板

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv-python用滑动条做调色板,坚持学习,共同进步. 系列教程参照OpenCV-Pyt ...

  7. opencv-python教程学习系列4-opencv绘图函数

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv绘图函数,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统 ...

  8. opencv-python教程学习系列1-安装库

    前言 以后的项目可能会用到python和opencv进行实现,故准备opencv-python教程学习系列记录学习过程的点滴,这是这一系列的开篇,坚持学习,共同进步. 系列教程参照OpenCV-Pyt ...

  9. opencv-python教程学习系列13-图像平滑

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍图像平滑,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统环境 系统: ...

随机推荐

  1. iOS进阶_Socket(Socket简介&代码演练)

    网络通讯三要素 TCP & UDP 三次握手 断开连接的四次握手 Socket套接字 了解了上面的概念,我们开始演练一下Socket #import "ViewController. ...

  2. Codeforces 447C - DZY Loves Sequences

    447C - DZY Loves Sequences 思路:dp 代码: #include<bits/stdc++.h> using namespace std; #define ll l ...

  3. Java 常用对象-Object类

    2017-10-31 23:42:08 Object类:类 Object 是类层次结构的根类.每个类都使用 Object 作为超类.所有对象(包括数组)都实现这个类的方法. 或者说,每个类都直接或者间 ...

  4. Redis之列表类型命令

    Redis 列表(List) Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(左边)或者尾部(右边) 一个列表最多可以包含 232 - 1 个元素 (4294967 ...

  5. Mac下使用源码编译安装TensorFlow CPU版本

    1.安装必要的软件 1.1.安装JDK 8 (1)JDK 8 can be downloaded from Oracle's JDK Page: http://www.oracle.com/techn ...

  6. 解决SpringBoot更新数据到MySQL乱码问题

    怀疑数据库没有采用UTF8编码. DB也是UTF8格式,没有问题. 怀疑Hibernate连接字符串问题. application.properties修改为通过utf8连接mysql,但是问题依然没 ...

  7. 把Java Web工程转换为基于Maven的Web工程

    有一个之前的工程,在使用了基于Maven的Web开发后,发现这种方式很便利,于是就想把之前老的传统的J2EE Web Project转为Maven Web Project. 转换的思路如下: 1.新建 ...

  8. Java开发常用Util工具类-StringUtil、CastUtil、CollectionUtil、ArrayUtil、PropsUtil

    字符串工具类 StringUtil.java package com.***.util; /** * StringUtil * @description: 字符串工具类 **/ public clas ...

  9. 『PyTorch』第五弹_深入理解autograd_中:Variable梯度探究

    查看非叶节点梯度的两种方法 在反向传播过程中非叶子节点的导数计算完之后即被清空.若想查看这些变量的梯度,有两种方法: 使用autograd.grad函数 使用hook autograd.grad和ho ...

  10. hdu1358 kmp的next数组

    For each prefix of a given string S with N characters (each character has an ASCII code between 97 a ...