详解python如何通过numpy数组处理图像
目录
- 使用PIL库进行灰度处理
- 旋转180度
- 使用matplotlib库完成灰度处理
文章图片
使用PIL库进行灰度处理 PIL库适合图像归档和图像批量处理,你可以使用它建立缩略图,转换格式,打印图片等。
现在的版本可以识别和读取大量的图片格式,写入常用的转换和表示格式
它支持多个其他工具包的展示,提供了show()方法,可以保存图像到磁盘并调用外显示。它将图像保存到磁盘,并调用外部显示工具
并且包含了基本的图像处理功能,包括点操作,使用内置卷积内核过滤,色彩空间转换。
支持更改图像大小、旋转、任意仿射变换
from PIL import Imageimport numpy as np# 读取图像,并转化为数组im = np.array(Image.open("cat.jpg"))# 灰度处理公式gray_narry = np.array([0.299, 0.587, 0.114])x = np.dot(im, gray_narry)# 数组转图片gray_cat = Image.fromarray(x.astype('uint8'))# 保存图片gray_cat.save('gray_cat.jpg')# 展示查看gray_cat.show()
处理成功!
文章图片
旋转180度 所谓旋转操作,即 将三维数组中的数据,以每一行(三个)为单位 倒序排列。
from PIL import Imageimport numpy as np# 读取图像,并转化为数组im = np.array(Image.open("cat.jpg"))# 旋转x = im[::-1]# 数组转图片cat2 = Image.fromarray(x.astype('uint8'))# 保存图片cat2.save('cat2.jpg')# 展示查看cat2.show()
程序执行结果:
文章图片
使用matplotlib库完成灰度处理
import numpy as npimport matplotlib.pyplot as pltn1 = plt.imread("cat.jpg")# 读取了图片,转化为数组,三维的plt.imshow(n1)n2 = np.array([0.299, 0.587, 0.114])x = np.dot(n1, n2)plt.imshow(x, cmap="gray")plt.show()
文章图片
【详解python如何通过numpy数组处理图像】到此这篇关于详解python如何通过numpy数组处理图像的文章就介绍到这了,更多相关python 处理图像内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- Python脚本传参数argparse模块的使用
- python保存字典数据到csv文件的完整代码
- 如何快速建立一个podman环境
- #私藏项目实操分享#Python模拟登录,selenium模块,Python识别图形验证码实现自动登录
- #yyds干货盘点# 硬核!!教你如何通过脚本自动部署虚拟机并安装操作系统
- #私藏项目实操分享# 如何解决 Angular custom library module 在 ng build 时无法被识别的错误
- WooCommerce(如何在商店页面中隐藏/删除产品标题下的类别())
- pci/pcie|PCI BAR寄存器详解(二 实例讲解)
- #yyds干货盘点#Java双刃剑之Unsafe类详解
- python|Python模块和包的管理