Python图像处理工具——PIL、opencv、matplotlib
PIL
PIL库支持图像存储、显示和处理,能够处理几乎所有格式的图片
Image读取图片为Image类型,可直接显示
from PIL import Image
img = Image.open('youyou.jpeg')#打开图片
img.show()#显示图片
img.save('youyou.jpg')#保存图片
图像转化为numpy类型后shape为[h,w,c],chanel顺序为[r,g,b]
import numpy as np
img = np.array(img)
print(img[:,:,0])#r通道
array([[231, 231, 231, ..., 238, 238, 237],
[231, 231, 231, ..., 238, 238, 237],
[231, 231, 231, ..., 238, 238, 237],
...,
[134, 134, 134, ..., 107, 108, 109],
[133, 133, 133, ..., 108, 109, 109],
[132, 132, 132, ..., 108, 109, 110]], dtype=uint8)
numpy类型保存前须转为Image类型
img = Image.fromarray(img)
img.show()#显示图片
img.save('youyou.jpg')#保存图片
cv2
cv2读取图片为numpy类型,shape为[h,w,c],chanel顺序为[b,g,r]
import cv2 as cv
img = cv.imread('youyou.jpeg')#打开图片
print(img[:,:,2])#r通道
array([[199, 199, 199, ..., 207, 207, 206],[199, 199, 199, ..., 207, 207, 206],[199, 199, 199, ..., 207, 207, 206],...,[165, 165, 165, ..., 147, 148, 149],[164, 164, 164, ..., 148, 149, 149],[163, 163, 163, ..., 148, 149, 150]], dtype=uint8)
cv.imshow('youyou',img)#显示图片
cv.imwrite('youyou.png',img)#保存图片
matplotlib
matplotlib 是python最著名的2D绘图库,适合交互式制图
plt可显示Image类型图片
import matplotlib.pyplot as plt
img = Image.open('youyou.jpeg')#打开图片
plt.figure("youyou")
plt.imshow(img)
plt.show()
plt也可显示numpy类型图片
import matplotlib.pyplot as plt
img = cv.imread('youyou.jpeg')#打开图片
plt.figure("youyou")
plt.imshow(img)
plt.show()
注意cv2读取的图片通道为bgr,若用其他工具显示需要转换通道
import matplotlib.pyplot as plt
img = cv.imread('youyou.jpeg')#打开图片
img1 = img.copy() #改变img1的时候不改变img
img1[:,:,0] = img[:,:,2]
img1[:,:,1] = img[:,:,1]
img1[:,:,2] = img[:,:,0] #cv2读取的是bgr,转换成rgb就要做一下变通
img = img1
plt.figure("youyou")
plt.imshow(img)
plt.show()
Python图像处理工具——PIL、opencv、matplotlib相关推荐
- python图像切面numpy_十个Python图像处理工具,不可不知!
原标题:十个Python图像处理工具,不可不知! 这些Python库提供了一种简单直观的方法来转换图像并理解底层数据. 今天的世界充满了数据,图像是这些数据的重要组成部分.但是,在使用它们之前,必须对 ...
- 干货整理!10个Python图像处理工具,入门必看,提效大法
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 在图像处理领域,一库在手,相当于天下已有.但是今天给大家推荐10个好用的库,快来看看有 ...
- 10个常用的Python图像处理工具,非常全了
图像处理中的常见任务包括显示图像.基本操作(如裁剪.翻转.旋转等).图像分割.分类和特征提取.图像恢复和图像识别.由于Python语言具有很多先进的图像处理工具,而且越来越普及.所以Python成为图 ...
- 10个常用的Python图像处理工具,建议收藏!
图像处理中的常见任务包括显示图像.基本操作(如裁剪.翻转.旋转等).图像分割.分类和特征提取.图像恢复和图像识别.由于Python语言具有很多先进的图像处理工具,而且越来越普及.所以Python成为图 ...
- 干货整理!10个Python图像处理工具,入门必看,提效大法 | 资源
原作:Parul Pandey 铜灵 编译整理 量子位 出品 | 公众号 QbitAI 在图像处理领域,一库在手,相当于天下已有. 最近,有一位搞数据科学的小姐姐Parul Pandey,整理了一份实 ...
- 《OpenCv视觉之眼》Python图像处理二十三:OpenCV图像处理最终章之基于PyQt5的图像处理界面设计及功能实现
本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...
- Python图像处理库PIL -- 学习资源
Resources 官方指南PIL Handbook(建议看英文,翻译) pil下载 安装中文指南 from the PythonWare PIL home page 推荐先看Python Imagi ...
- 《OpenCv视觉之眼》Python图像处理十二 :Opencv图像轮廓提取之基于一阶导数的Roberts算法、Prewitt算法及Sobel算法
本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...
- 《OpenCv视觉之眼》Python图像处理十四 :Opencv图像轮廓提取之Scharr算法和Canny算法
本专栏主要介绍如果通过OpenCv-Python进行图像处理,通过原理理解OpenCv-Python的函数处理原型,在具体情况中,针对不同的图像进行不同等级的.不同方法的处理,以达到对图像进行去噪.锐 ...
最新文章
- spi flash偶尔出现写入错误的情况
- Apache ZooKeeper - FourLetterCommands运维命令
- Hibernate-HQL
- ReactJS入门之前端开发的演变
- 【Modelsim零基础入门】verilog仿真程序:1-bit A+B
- effective C++ 条款 3:尽可能使用const
- C语言 多重指针--整型字符字符串 int**pp
- linux6磁盘绑定,关于Linux 6使用udev绑定共享磁盘的测试
- Qt 远程开关机 WakeOnLAN 重启
- 腾讯首款区块链AR游戏上线《一起来捉妖》,风物志里的奇珍异兽
- P2627 [USACO11OPEN]Mowing the Lawn G(单调队列优化dp)
- Win10创建文件不显示,Windows任务栏idea图标变白
- Flutter混合栈管理
- 雷顿学院大数据(一期课程)
- ubuntu 安装eclipes
- 投票小程序制作开发有哪些步骤?投票小程序开发有哪些功能?
- 2016计算机二级ps试题,2016下半年计算机二级ps试题及答案
- 机器人公司都吓傻了?因为谷东AR入局了嘛!
- JavaScript中pageX pageY offsetX offsetY区别
- 敏捷考证?你应该知道的敏捷体系认证名单(最全整理)
热门文章
- sqli-labs过关笔记(Page-1:1-22关)
- JS数组遍历-forEach()、map()方法
- Vue项目实战02 : vue项目刷新当前页面的三种方法
- 函的红头文件格式制作_Excel实现批量制作年会邀请函,这个方法,你一定不能错过...
- 为什么选择angular?-学习笔记
- vscode安装sftp控制文件自动上传
- 使用vue控制元素显示隐藏
- 给字符串对象定义一个repeat功能。当传入一个整数n时,它会返回重复n次字符串的结果。
- Boost字符串处理
- IDC 2018可穿戴市场报告:耳戴式设备占比四分之一,成“新宠”