资源简介
python:PIL,matplotlib.imshow 图像操作详解,包括读取、保存、显示、旋转、滤波、元素操作等
代码片段和文件信息
# coding=gbk
#-------------------------读取图片信息------------------------#
from PIL import Image
FilePath = ‘C:/Users/Administrator/Desktop/‘
img = Image.open(FilePath+‘Dog.jpg‘) # 打开图片
Size = img.size # 重要信息
print(img.formatSize) # 图片信息
#---------------------用matplotlib显示图像-------------------#
import matplotlib.pyplot as plt
plt.figure(1)
plt.imshow(imgcmap=‘jet‘) # 可以尝试其他的colormap
# help(plt.imshow)
#----------------------用Image进行处理并显示------------------#
# img.show() # 显示旋转后的图像
img_45 = img.rotate(45) # 旋转45°
img_45.save(FilePath+‘Dog-rotate-45.png‘“png“)
# img_45.show() # 显示图像
grey = img.convert(‘L‘) # 转化为灰度图像
grey.save(FilePath+‘Dog-grey.png‘“png“)
# grey.show() # 显示灰度图像
#------------滤波------------
from PIL import ImageFilter # 不同的核函数(kernel function)
plt.figure()
img_BLUR = img.filter(ImageFilter.BLUR)
plt.imshow(img_BLUR) # 均值滤波
img_BLUR.save(FilePath+‘Dog-BLUR.png‘“png“) # 保存
plt.figure()
img_ENDGE = img.filter(ImageFilter.FIND_EDGES)
plt.imshow(img_ENDGE) # 边缘检测
img_ENDGE.save(FilePath+‘Dog-FIND_EDGES.png‘“png“) # 保存
plt.show() # 显示所有
#----------像素操作-----------
for i in range(Size[0]): # 像素操作
for j in range(Size[1]):
img.getpixel((ij))
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 142329 2018-01-21 13:40 图像操作\Dog-BLUR.png
文件 222025 2018-01-21 13:40 图像操作\Dog-FIND_EDGES.png
文件 64560 2018-01-21 13:40 图像操作\Dog-grey.png
文件 169929 2018-01-21 13:40 图像操作\Dog-rotate-45.png
文件 26136 2018-01-13 16:59 图像操作\Dog.jpg
文件 1420 2018-01-21 13:40 图像操作\MyImage.py
目录 0 2018-01-21 13:48 图像操作
----------- --------- ---------- ----- ----
626399 7
- 上一篇:python建模
- 下一篇:用Python编写潮流计算极坐标
评论
共有 条评论