opencv的读写非常简单,主要用到的就是imread和imwrite两个函数

读取图片示例

import cv2
#imread(filename[, flags]) -> retval
imgPath = 'E:/test01.jpg' #图片路径
#默认读取的是RGB三色图,得到三维矩阵
img = cv2.imread(imgPath)
#等价于img = cv2.imread('test01.jpg',cv2.IMREAD_COLOR)
#查看图像维数(719,1280,3)
print(img.shape)
#如果选择以灰度模式读入图像,得到二维矩阵
img0 = cv2.imread(imgPath, 0)
#等价于img = cv2.imread('test01.jpg',cv2.IMREAD_GRAYSCALE)
#查看图像维数(719,1280)
print(img0.shape)

PS:使用imread读取图片时,如果图片路程错误,opencv不会报Error,图片矩阵img=None

写图片示例

import cv2
#imwrite(filename, img[, params]) -> retval
imgPath = 'E:/test01.jpg' #图片的写入路径
#图片写入
cv2.imwrite(filename, img)
#第三个参数针对特定的格式:
imgPath = 'E:/test01.jpg'
cv2.imwrite(imgPath, img, [int(cv2.IMWRITE_JPEG_QUALITY),100])
#对于JPEG,其表示的是图像的质量。
#用0-100的整数表示,数值越高质量越高,默认为95。
imgPath = 'E:/test01.png'
cv2.imwrite(imgPath, img, [int(cv2.IMWRITE_PNG_COMPRESSION),9])
#对于PNG,第三个参数表示的是压缩级别。
#从0到9,压缩级别越高,图像尺寸越小,默认级别为3。
#注意,cv2.IMWRITE_JPEG_QUALITY和cv2.IMWRITE_PNG_COMPRESSION类型为Long,必须转换成int。

参考链接:

http://blog.csdn.net/eddy_zheng/article/details/48286735

http://blog.csdn.net/sunny2038/article/details/9057415

python_opencv应用系列1:图片读写的更多相关文章

  1. Python各类图像库的图片读写方式总结

    最近在研究深度学习视觉相关的东西,经常需要写python代码搭建深度学习模型.比如写CNN模型相关代码时,我们需要借助python图像库来读取图像并进行一系列的图像处理工作.我最常用的图像库当然是op ...

  2. JavaScript学习笔记5 之 计时器 & scroll、offset、client系列属性 & 图片无缝滚动

    一.计时器 setInterval ( 函数/名称 , 毫秒数 )表示每经过一定的毫秒后,执行一次相应的函数(重复) setTimeout ( 函数/名称 , 毫秒数 ) 表示经过一定的毫秒后,只执行 ...

  3. [js高手之路] html5 canvas系列教程 - 图片操作(drawImage,clip,createPattern)

    接着上文[js高手之路] html5 canvas系列教程 - 文本样式(strokeText,fillText,measureText,textAlign,textBaseline)继续,本文介绍的 ...

  4. 【光速使用开源框架系列】图片加载框架ImageLoader

    [关于本系列] 最近看了不少开源框架,网上的资料也非常多,但是我认为了解一个框架最好的方法就是实际使用.本系列博文就是带领大家快速的上手一些常用的开源框架,体会到其作用. 由于作者水平有限,本系列只会 ...

  5. mycat数据库集群系列之mycat读写分离安装配置

    最近在梳理数据库集群的相关操作,现在花点时间整理一下关于mysql数据库集群的操作总结,恰好你又在看这一块,供一份参考.本次系列终结大概包括以下内容:多数据库安装.mycat部署安装.数据库之读写分离 ...

  6. Bootstrap学习笔记系列5------Bootstrap图片显示

    通过添加一下的class来实现bootstrap对图片的支持 img-round 通过border-radius:6px 来获得图片圆角 img-circle 通过border-radius:50%来 ...

  7. SharePoint Online 创建门户网站系列之图片滚动

    前 言 创建SharePoint Online栏目我们之前已经介绍过了,具体就是内容编辑器方式.自带WebPart方式和JavaScript读取后台数据前台做展示的三种: 但是,对于复杂的展示来说,这 ...

  8. RDLC系列之三 图片显示

    一.头像效果

  9. Bootstrap系列 -- 23. 图片

    图像在网页制作中也是常要用到的元素,在Bootstrap框架中对于图像的样式风格提供以下几种风格: 1.img-responsive:响应式图片,主要针对于响应式设计 2.img-rounded:圆角 ...

随机推荐

  1. bootstrap-table 选择行,并且获得选中行的所有数据内容

    html代码如下: <table id="table" data-toggle="table" th:attr="data-url=@{/vie ...

  2. Set\HashSet集合为什么能去重(转)

    如果想查找一个集合中是否包含有某个对象,大概的程序代码怎样写呢?当发现某个元素与要查找的对对象进行equals方法比较的结果相等时,则停止继续查找并返回肯定的信息,否则返回否定的信息.如果是一个集合中 ...

  3. Mybatis学习笔记(八) —— Mybatis整合spring

    一.整合思路 1.SqlSessionFactory对象应该放到spring容器中作为单例存在. 2.传统dao的开发方式中,应该从spring容器中获得sqlsession对象. 3.Mapper代 ...

  4. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_.Net Framework 部署目标

    1.解决Windows性能不稳定: 2.降低Windows程序安装的复杂性: 3.解决Windows程序不安全性: 4.解决应用程序状态在硬盘上分散: 5.允许用户灵活地控制哪些东西能够安装,哪些东西 ...

  5. PS常用快捷键大全

    察看图像类别 说明:: --- Shift键 : --- 空格键         *--- 在Imageready中不适用 § --- 只在Imageready中可用 动作 结果 双击工具箱::或Ct ...

  6. TCP通讯模型简单示例

    1. TCP通讯模型 2. 服务器端 ① 创建socket,用函数socket() ② 绑定IP地址.端口号等信息到socket上,用函数bind() ③ 设置允许的最大连接数,用函数listen() ...

  7. 8.JSP基础

    1.Servlet与JSP关系 JSP工作原理: 一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet JSP引擎使用javac把转换成的servlet的源文件编译成相应的 ...

  8. 如何用Rational rose创建类图

    UML中各种图形概要: 图名 对照 说明 用例图 use case diagram 用例图表明系统做什么,与谁交互.用例是系统提供的功能,参与者是系统与谁交互,参与者可以是人.系统或其他实体.一个系统 ...

  9. 《mac的git安装手册-1》

    <mac的git安装手册-1> 下载地址 https://git-scm.com/downloads 如果遇到上面这个问题打开系统偏好设置: OK,这样就能安装了

  10. 转 windows下安装pycharm并连接Linux的python环境 以及 windows 下notepad ++编辑 linux 的文件

    ######sample 1:windows下安装pycharm并连接Linux的python环境 https://www.cnblogs.com/junxun/p/8287998.html wind ...