广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python图像处理库PIL如何使用
  • 945
分享到

Python图像处理库PIL如何使用

2023-07-06 11:07:36 945人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“python图像处理库PIL如何使用”,在日常操作中,相信很多人在Python图像处理库PIL如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python图像处理库PIL如何使用”的疑

这篇文章主要介绍“python图像处理库PIL如何使用”,在日常操作中,相信很多人在Python图像处理库PIL如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python图像处理库PIL如何使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

一、 简介

1、 基本介绍

Pillow 是 Python 中较为基础的图像处理库,主要用于图像的基本处理,比如裁剪图像、调整图像大小和图像颜色处理等。与 Pillow 相比,OpenCV 和 Scikit-image 的功能更为丰富,所以使用起来也更为复杂,主要应用于机器视觉、图像分析等领域,比如众所周知的“人脸识别”应用 。

2、 特点
  • 支持格式繁多

    Pillow 支持广泛的图像格式,比如 "jpeg","png","bmp","gif","ppm","tiff" 等。同时,它也支持图像格式之间的相互转换。总之, Pillow 几乎能够处理任何格式的图像

  • 提供丰富的功能

    Pillow 提供了丰富的图像处理功能,可概括为两个方面:

    图像归档,包括创建缩略图、生成预览图像、图像批量处理等;而图像处理,则包括调整图像大小、裁剪图像、像素点处理、添加滤镜、图像颜色处理等

    • 图像归档

    • 图像处理

  • 配合 GUI 工具使用

3、 安装
pip install pillow导包imoprt PIL

二、 Image 对象

1、 实例化对象
1.1 实例化

导包

from PIL import Image

使用 open 方法

im = PIL.Image.open(fp) # 导入图片im.show() # 展示图片

fp:图片路径

使用 open 方法

im = Image.new(mode,size,color) # 创建图片im.show() # 展示图片

参数说明如下:

  • mode:图像模式,字符串参数,比如 RGB(真彩图像)、L(灰度图像)、CMYK(色彩图打印模式)等

  • size:图像大小,元组参数(width, height)代表图像的像素大小

  • color:图片颜色,默认值为 0 表示黑色,参数值支持(R,G,B)三元组数字格式、颜色的十六进制值以及颜色英文单词

1.2 图像模式
mode描述
11 位像素(取值范围 0-1),0表示黑,1 表示白,单色通道。
L8 位像素(取值范围 0 -255),灰度图,单色通道。
P8 位像素,使用调色板映射到任何其他模式,单色通道。
RGB3 x 8位像素,真彩色,三色通道,每个通道的取值范围 0-255。
RGBA4 x 8位像素,真彩色+透明通道,四色通道。
CMYK4 x 8位像素,四色通道,可以适应于打印图片。
YCbCr3 x 8位像素,彩色视频格式,三色通道。
LAB3 x 8位像素,L * a * b颜色空间,三色通道
HSV3 x 8位像素,色相,饱和度,值颜色空间,三色通道。
I32 位有符号整数像素,单色通道。
F32 位浮点像素,单色通道。
2、 对象属性
import PIL.Imageim = PIL.Image.open(r"D:\35005\Pictures\Screenshots\微信图片_20220302175157.jpg")print(im.size) # 查看图片大小print(im.readonly) # 查看是否为只读,1为是,0为否print(im.fORMat) # 查看图片的格式print(im.info) # 查看图片的相关信息print(im.mode) # 查看图片的模式
3、 格式转换
3.1 save 方法

save 方法用于保存 图像,当不指定文件格式时,它会以默认的图片格式来存储;如果指定图片格式,则会以指定的格式存储图片

语法:

im = PIL.Image.open(r"D:\35005\Pictures\Screenshots\微信图片_20220302175157.jpg")im.save(fp, format=None) # 保存图片

参数说明如下:

  • fp:图片的存储路径,包含图片的名称,字符串格式

  • format:可选参数,可以指定图片的格式

3.2 convert 方法

注意,并非所有的图片格式都可以用 save() 方法转换完成,比如将 PNG 格式的图片保存为 JPG 格式,如果直接使用 save() 方法就会出现错误

引发错误的原因是由于 PNG 和 JPG 图像模式不一致导致的。其中 PNG 是四通道 RGBA 模式,即红色、绿色、蓝色、Alpha 透明色;JPG 是三通道 RGB 模式。因此要想实现图片格式的转换,就要将 PNG 转变为三通道 RGB 模式

Image 类提供的 convert() 方法可以实现图像模式的转换。该函数提供了多个参数,比如 mode、matrix、dither 等,其中最关键的参数是 mode,其余参数无须关心

语法:

im.convert(mode, params) # 转换模式im.save(fp) # 保存图片

参数:

  • mode:指的是要转换成的图像模式

  • params:其他可选参数

4、 图片缩放

在图像处理过程中经常会遇到缩小或放大图像的情况,Image 类提供的 resize() 方法能够实现任意缩小和放大图像

语法:

im_new = im.resize(size, resample=image.BICUBIC, box=None, reducing_gap=None) # 注意要重新赋值im_new.show() # 缩放后的图片

参数:

  • size:元组参数 (width,height),图片缩放后的尺寸

  • resample:可选参数,指图像重采样滤波器,与 thumbnail() 的 resample 参数类似,默认为 Image.BICUBIC

  • box:对指定图片区域进行缩放,box 的参数值是长度为 4 的像素坐标元组,即 (左,上,右下)。注意,被指定的区域必须在原图的范围内,如果超出范围就会报错。当不传该参数时,默认对整个原图进行缩放

    (0, 0, 120, 180)代表的是以原图的左上角为原点,选择宽和高分别是(120,180)的图像区域

  • reducing_gap:可选参数,浮点参数值,用于优化图片的缩放效果,常用参数值有 3.0 和 5.0

5、 创建缩略图

缩略图指的是将原图缩小至一个指定大小(size)的图像。通过创建缩略图可以使图像更易于展示和浏览

Image 对象提供了一个 thumbnail() 方法用来生图像的缩略图,等比缩放

语法:

im.thumbnail(size,resample) # 直接在原图的基础上修改im.show() # 缩放后的图片

参数:

  • size:元组参数,指的是缩小后的图像大小

  • resample:可选参数,指图像重采样滤波器,有四种过滤方式,分别是 Image.BICUBIC(双立方插值法)、PIL.Image.NEAREST(最近邻插值法)、PIL.Image.BILINEAR(双线性插值法)、PIL.Image.LANCZOS(下采样过滤插值法),默认为 Image.BICUBIC

6、 图像分离与合并

图像(指数字图像)由许多像素点组成,像素是组成图像的基本单位,而每一个像素点又可以使用不同的颜色,最终呈现出了绚丽多彩的图像 ,而图像的分离与合并,指的就是图像颜色的分离和合并

6.1 split 方法
im = PIL.Image.open(r"D:\35005\Pictures\Screenshots\微信图片_20220302175157.jpg")r, g, b = im.split() # split 方法使用较简单,分离通道r.show()g.show()b.show()
6.2 merge 方法

Image 类提供的 merge() 方法可以实现图像的合并操作。注意,图像合并,可以是单个图像合并,也可以合并两个以上的图像

im_merge = PIL.Image.merge(mode, bands)im_merge.show()

参数:

  • mode:指定输出图片的模式

  • bands:参数类型为元组或者列表序列,其元素值是组成图像的颜色通道,比如 RGB 分别代表三种颜色通道,可以表示为 (r, g, b)

6.3 blend 方法

Image 类也提供了 blend() 方法来混合 RGBA 模式的图片(PNG 格式)

语法:

PIL.Image.blend(image1,image2, alpha)

参数:

  • image1:图片对象1

  • image2:图片对象2

  • alpha:透明度 ,取值范围为 0 到 1,当取值为 0 时,输出图像相当于 image1 的拷贝,而取值为 1 时,则是 image2 的拷贝,只有当取值为 0.5 时,才为两个图像的中合。因此改值的大小决定了两个图像的混合程度

7、 图像处理
7.1 图像裁剪

Image 类提供的 crop() 函数允许我们以矩形区域的方式对原图像进行裁剪

语法:

im_crop = im.crop(box=None) # box 代表裁剪区域im_crop.show()

box 是一个有四个数字的元组参数 (x_左上,y_左下,x1_右上,y1_右下),分别表示被裁剪矩形区域的左上角 x、y 坐标和右下角 x,y 坐标。默认 (0,0) 表示坐标原点,宽度的方向为 x 轴,高度的方向为 y 轴,每个像素点代表一个单位

7.2 拷贝和粘贴

拷贝、粘贴操作几乎是成对出现的,Image 类提供了 copy() 和 paste() 方法来实现图像的复制和粘贴

拷贝语法:

im_copy = im.copy() # 复制图片

粘贴语法:

im_copy.paste(image, box=None, mask=None)

参数:

  • image:指被粘贴的图片

  • box:指定图片被粘贴的位置或者区域,其参数值是长度为 2 或者 4 的元组序列,长度为 2 时,表示具体的某一点 (x, y);长度为 4 则表示图片粘贴的区域,此时区域的大小必须要和被粘贴的图像大小保持一致

  • mask:可选参数,为图片添加蒙版效果

注意:

  • 粘贴后的图片模式将自动保持一致,不需要进行额外的转换

from PIL import Imageim = Image.open(r"D:\35005\Pictures\Screenshots\微信图片_20220302175157.jpg")# 复制一张图片副本im_copy = im.copy()# 对副本进行裁剪im_crop = im_copy.crop((0, 0, 200, 100))# 创建一个新的图像作为蒙版,L模式,单颜色值image_new = Image.new('L', (200, 100), 200)# 将裁剪后的副本粘贴至副本图像上,并添加蒙版im_copy.paste(im_crop, (100, 100, 300, 200), mask=image_new)# 显示粘贴后的图像im_copy.show()
8、几何变化

图像的几何变换主要包括图像翻转、图像旋转和图像变换操作,Image 类提供了处理这些操作的函数 transpose()、rotate() 和 transform()

8.1 transpose

该函数可以实现图像的垂直、水平翻转

语法:

im_out = im.transpose(method) # 生成新的图像对象

method取值:

  • Image.FLIP_LEFT_RIGHT:左右水平翻转

  • Image.FLIP_TOP_BOTTOM:上下垂直翻转

  • Image.ROTATE_90:图像逆时针旋转 90 度

  • Image.ROTATE_180:图像旋转 180 度

  • Image.ROTATE_270:图像旋转 270 度

  • Image.TRANSPOSE:图像转置

  • Image.TRANSVERSE:图像横向翻转

8.2 rotate

当我们想把图像旋转任意角度时,可以使用 rotate() 函数

语法:

im_out = im.rotate(angle, resample=PIL.Image.NEAREST, expand=None, center=None, translate=None, fillcolor=None) # 返回图像对象

参数:

  • angle:表示任意旋转的角度

  • resample:重采样滤波器,默认为 PIL.Image.NEAREST 最近邻插值方法

  • expand:可选参数,表示是否对图像进行扩展,如果参数值为 True 则扩大输出图像,如果为 False 或者省略,则表示按原图像大小输出

  • center:可选参数,指定旋转中心,参数值是长度为 2 的元组,默认以图像中心进行旋转

  • translate:参数值为二元组,表示对旋转后的图像进行平移,以左上角为原点;translate的参数值可以为负数

  • fillcolor:可选参数,填充颜色,图像旋转后,对图像之外的区域进行填充

8.3 transform

该函数能够对图像进行变换操作,通过指定的变换方式,产生一张规定大小的新图像

语法:

im_out = im.transform(size, method, data=None, resample=0) # 返回图像对象

参数:

  • size:指定新图片的大小

  • method:指定图片的变化方式,比如 Image.EXTENT 表示矩形变换

  • data:该参数用来给变换方式提供所需数据

  • resample:图像重采样滤波器,默认参数值为 PIL.Image.NEAREST

三、 ImageFilter

1、 简介

随着数字图像技术的不断发展,图像降噪方法也日趋成熟,通过某些算法来构造滤波器是图像降噪的主要方式。滤波器能够有效抑制噪声的产生,并且不影响被处理图像的形状、大小以及原有的拓扑结构

Pillow 通过 ImageFilter 类达到图像降噪的目的,该类中集成了不同种类的滤波器,通过调用它们从而实现图像的平滑、锐化、边界增强等图像降噪操作

2、 降噪处理
2.1 图像降噪滤波器
名称说明
ImageFilter.BLUR模糊滤波,即均值滤波
ImageFilter.CONTOUR轮廓滤波,寻找图像轮廓信息
ImageFilter.DETAIL细节滤波,使得图像显示更加精细
ImageFilter.FIND_EDGES寻找边界滤波(找寻图像的边界信息)
ImageFilter.EMBOSS浮雕滤波,以浮雕图的形式显示图像
ImageFilter.EDGE_ENHANCE边界增强滤波
ImageFilter.EDGE_ENHANCE_MORE深度边缘增强滤波
ImageFilter.SMOOTH平滑滤波
ImageFilter.SMOOTH_MORE深度平滑滤波
ImageFilter.SHARPEN锐化滤波
ImageFilter.GaussianBlur()高斯模糊
ImageFilter.UnsharpMask()反锐化掩码滤波
ImageFilter.Kernel()卷积核滤波
ImageFilter.MinFilter(size)最小值滤波器,从 size 参数指定的区域中选择最小像素值,然后将其存储至输出图像中。
ImageFilter.MedianFilter(size)中值滤波器,从 size 参数指定的区域中选择中值像素值,然后将其存储至输出图像中。
ImageFilter.MaxFilter(size)最大值滤波器
ImageFilter.ModeFilter()模式滤波
2.2 使用语法

语法:

im_ft = im.filter(filt_mode) # 返回图像对象,里面传入滤波器

实例:

from PIL import Image, ImageFilterim = Image.open(r"D:\35005\Pictures\Screenshots\微信图片_20220302175157.jpg")im_ft = im.filter(ImageFilter.EMBOSS) # 添加浮雕滤波器im_ft.show()

相当于PS里面添加的滤镜

四、 ImageColor

1、 简介

Pillow 提供了颜色处理模块 ImageColor,该模块支持不同格式的颜色,比如 RGB 格式的颜色三元组、十六进制的颜色名称(#ff0000)以及颜色英文单词("red")。同时,它还可以将 CSS(层叠样式表,用来修饰网页)风格的颜色转换为 RGB 格式

在 ImageColor 模块对颜色的大小写并不敏感,比如 "Red" 也可以写为 " red"

2、 颜色处理
2.1 颜色命名

ImageColor 支持多种颜色模式的的命名(即使用固定的格式对颜值进行表示),比如我们熟知的 RGB 色彩模式,除此之外,还有 HSL (色调-饱和度-明度)、HSB (又称 HSV,色调-饱和度-亮度)色彩模式。下面对 HSL 做简单介绍:

  • H:即 Hue 色调,取值范围 0 -360,其中 0 表示“red”,120 表示 “green”,240 表示“blue”

  • S:即 Saturation 饱和度,代表色彩的纯度,取值 0~100%,其中 0 代表灰色(gry),100% 表示色光最饱和

  • L:即 Lightness 明度,取值为 0~100%,其中 0 表示“black”黑色,50% 表示正常颜色,100% 则表示白色

亮度和明度的表达方式类似,链接中有具体描述:【https://www.zhihu.com/question/22077462】

ImageColor 模块比较简单,只提供了两个常用方法,分别是 getrgb() 和 getcolor() 函数

2.2 getrgb

语法:

rgb = PIL.ImageColor.getrgb(color) # 得到颜色的 rgb 数值

color参数即可以是英文,也可以是HSL和HSB模式2.3

应用:

from PIL import Image, ImageColorim = Image.new(mode="RGB", size=(100, 100), color=ImageColor.getrgb('HSL(0,100%,50%)'))im.show()
2.3 getcolor

语法:

val = PIL.ImageColor.getcolor(color, mode)

参数:

  • color:一个颜色名称,字符串格式,可以是颜色的英文单词,或者十六进制颜色名。如果是不支持的颜色,会报 ValueError 错误

  • mode:指定色彩模式,如果是不支持的模式,会报 KeyError 错误

五、 ImageFont

1、 简介

ImageFont模块定义了相同名称的类,即ImageFont类。这个类的实例存储bitmap字体,用于ImageDraw类的text()方法

PIL使用自己的字体文件格式存储bitmap字体。用户可以使用pilfont工具包将BDF和PCF字体描述器(Xwindow字体格式)转换为这种格式

2、 模块函数
2.1 load

语法:

ft = PIL.ImageFont.load(font_file)

从指定的文件中加载一种字体 ,返回字体对象

2.2 load_path

语法:

ft = PIL.ImageFont.load_path(font_file)

和函数load()一样,但是如果没有指定当前路径的话,会从sys.path开始查找指定的字体文件

2.3 truetype

语法:

ft = PIL.ImageFont.truetype(file, size[, encoding=None])

参数:

  • file: 加载一个TrueType或者OpenType字体文件

  • size: 为指定大小的字体创建了字体对象

  • encoding:字体编码,主要字体编码有: “unic”(Unicode),“symb”(Microsoft Symbol),“ADOB”(Adobe Standard),“ADBE”(Adobe Expert)和“armn”(Apple Roman)

2.4 load_default

语法:

ft = PIL.ImageFont.load_default()

加载一个默认字体,返回一个字体对象

3、 模块方法
3.1 getsize

语法:

size = ft.getsize(text)

返回给定文本的宽度和高度,返回值为2元组

3.2 getmask

语法:

obj = ft.getmask(text,mode=None) # 为给定的文本返回一个位图。这个位图是PIL内部存储内存的实例

参数:

  • text :要渲染的文本。

  • mode:某些图形驱动程序使用它来指示驱动程序喜欢哪种模式;如果为空,渲染器可能返回任一模式。请注意,模式始终是字符串

六、 ImageDraw

1、 简介
1.1 导入

ImageDraw 模块也是 Pillow 库的主要模块之一,它能给图像化圆弧,画横线,写上文字等

导入:

from PIL import ImageDraw

实例化对象:

from PIL import Image, ImageDrawim = Image.open("./a.jpg") # 创建 image 对象draw = ImageDraw.Draw(im) # 实例化可以在指定图像上画图的 Draw 对象
1.2 基本概念
  • Coordinates

    • 绘图接口使用和PIL一样的坐标系统,即(0,0)为左上角。

  • Colours

    • 为了指定颜色,用户可以使用数字或者元组,对应用户使用函数Image.new或者Image.putpixel。对于模式为“1”,“L”和“I”的图像,使用整数。对于“RGB”图像,使用整数组成的3元组。对于“F”图像,使用整数或者浮点数。

    • 对于调色板图像(模式为“P”),使用整数作为颜色索引。在1.1.4及其以后,用户也可以使用RGB 3元组或者颜色名称。绘制层将自动分配颜色索引,只要用户不绘制多于256种颜色。

  • Colours Names

    • A、 十六进制颜色说明符,定义为“#rgb”或者“#rrggbb”。例如,“#ff0000”表示纯红色。

    • B、 RGB函数,定义为“rgb(red, green, blue)”,变量red、green、blue的取值为[0,255]之间的整数。另外,颜色值也可以为[0%,100%]之间的三个百分比。例如,“rgb(255, 0, 0)”和“rgb(100%, 0%, 0%)”都表示纯红色。

    • C、 HSL(Hue-Saturation-Lightness)函数,定义为“hsl(hue,saturation%, lightness%)”,变量hue为[0,360]一个角度表示颜色(red=0, green=120, blue=240),变量saturation为[0%,100%]之间的一个值(gray=0%,full color=100%),变量lightness为[0%,100%]之间的一个值(black=0%, normal=50%, white=100%)。例如,“hsl(0,100%, 50%)”为纯红色。

    • D、 通用html颜色名称,ImageDraw模块提供了140个标准颜色名称,Xwindow系统和大多数WEB浏览器都支持这些颜色。颜色名称对大小写不敏感。例如,“red”和“Red”都表示纯红色。

    • 在PIL 1.1.4及其以后的版本,用户绘制“RGB”图像时,可以使用字符串常量。PIL支持如下字符串格式:

  • Fonts

    • PIL可以使用bitmap字体或者OpenType/TrueType字体

2、 模块函数
2.1 arc

语法:

draw.arc(xy, start, end, options)

在给定的区域内,在开始和结束角度之间绘制一条弧

options:可以有什么内容可以在源代码中查看

2.2 bitmap

语法:

draw.bitmap(xy, bitmap, options) # options中可以添加 fill 覆盖的颜色

在给定的区域里绘制变量bitmap所对应的位图,非零部分使用变量options中fill的值来填充。变量bitmap位图应该是一个有效的透明模板(模式为“1”)或者蒙版(模式为“L”或者“RGBA”)

变量xy是变量bitmap对应位图起始的坐标值,而不是一个区域

这个方法与Image.paste(xy, color, bitmap)有相同的功能

2.3 chord

语法:

draw.chord(xy, start, end, options)

和方法arc()一样,但是使用直线连接起始点

变量 options 的 outline 给定弦轮廓的颜色;fill 给定弦内部的颜色

2,4 ellipse

语法:

draw.ellipse(xy, options)

在给定的区域绘制一个椭圆形

变量 options 的 outline 给定弦轮廓的颜色;fill 给定弦内部的颜色

2.5 line

语法:

draw.line(xy, options)

在变量xy列表所表示的坐标之间画线

xy里面至少有两个坐标,坐标使用元组表示,存储在一个列表里面[(x1, y1), (x2, y2)]

width指定宽度,fill 指定线的颜色

2.6 pieslice

语法:

draw.pieslice(xy, start, end, options)

和方法arc()一样,但是在指定区域内结束点和中心点之间绘制直线

2.7 point

语法:

draw.point(xy, options)

在指定位置画一个只占一个像素的小点

2.8 polyGon

语法:

draw.polygon(xy, options)

绘制一个多边形

多边形轮廓由给定坐标之间的直线组成,在最后一个坐标和第一个坐标间增加了一条直线,形成多边形

坐标列表是包含2元组[(x,y),…]或者数字[x,y,…]的任何序列对象,它最少包括3个坐标值

变量options的fill给定多边形内部的颜色

2.9 rectangle

语法:

draw.rectangle(xy, options)

绘制一个长边形

变量xy是包含2元组[(x,y),…]或者数字[x,y,…]的任何序列对象,它应该包括2个坐标值

注意:当长方形没有没有被填充时,第二个坐标对定义了一个长方形外面的点

变量options的fill给定长边形内部的颜色

2.10 text

语法:

draw.text(xy, string, options)

在给定的位置绘制一个字符串。变量xy给出了文本的左上角的位置

变量option的 font 用于指定所用字体。它应该是类ImangFont的一个实例,使用ImageFont模块的load()方法从文件中加载的

变量options的fill给定文本的颜色

2.11 textsize

语法:

draw.textsize(string, options)

返回给定字符串的大小,以像素为单位

变量option的 font 用于指定所用字体。它应该是类ImangFont的一个实例,使用ImageFont模块的load()方法从文件中加载的

七、 Image与Numpy

from PIL import Imageimport numpy as npim = Image.open("./a.jpg")print(np.asarray(im)) # 三维数组na = np.asarray(im) # 将图片转换为数组na[0][0][0] = 0 # 修改数组的值im_new = Image.fromarray(na) # 将数组转换为图片

到此,关于“Python图像处理库PIL如何使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Python图像处理库PIL如何使用

本文链接: https://www.lsjlt.com/news/358012.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Python图像处理库PIL如何使用
    这篇文章主要介绍“Python图像处理库PIL如何使用”,在日常操作中,相信很多人在Python图像处理库PIL如何使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python图像处理库PIL如何使用”的疑...
    99+
    2023-07-06
  • Python图像处理之PIL库
    本篇文章给大家带来了关于python的相关知识,其中主要整理了PIL库的相关问题,PIL库是一个具有强大图像处理能力的第三方库,不仅包含了丰富的像素、色彩操作功能,还可以用于图像归档和批量处理,下面一起来看一下,希望对大家有帮助。要点:PI...
    99+
    2022-06-23
    python
  • Python图像处理库PIL怎么使用
    一、 简介1、 基本介绍Pillow 是 Python 中较为基础的图像处理库,主要用于图像的基本处理,比如裁剪图像、调整图像大小和图像颜色处理等。与 Pillow 相比,OpenCV 和 Scikit-image 的功能更为丰富,所以使用...
    99+
    2023-05-14
    Python pil
  • Python图像处理之PIL库怎么使用
    本篇内容主要讲解“Python图像处理之PIL库怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python图像处理之PIL库怎么使用”吧!PIL库的使用要点:PIL库是一个具有强大图像处...
    99+
    2023-07-02
  • Python图像处理库PIL详细使用说明
    一、 简介 1、 基本介绍 Pillow 是 Python 中较为基础的图像处理库,主要用于图像的基本处理,比如裁剪图像、调整图像大小和图像颜色处理等。与 Pillow 相比,Ope...
    99+
    2022-11-10
  • Python 图像处理之PIL库详解用法
    目录前言🍒PIL库概述🍓Image类解析💚图像的创建💙图像的属性💜图像的转换💗图像处理...
    99+
    2022-11-12
  • python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
    一、PIL库对图像的基本操作 1、读取图片 PIL网上有很多介绍,这里不再讲解。直接操作,读取一张图片,将其转换为灰度图像,并打印出来。 from PIL import Image import matplo...
    99+
    2022-06-02
    python进行图像处理 python 图像处理 python图像
  • Python怎么用PIL图像处理库绘制国际象棋棋盘
    本篇内容介绍了“Python怎么用PIL图像处理库绘制国际象棋棋盘”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!目录1 PIL绘制国际象棋棋...
    99+
    2023-06-20
  • Python实现PIL图像处理库绘制国际象棋棋盘
    目录1 PIL绘制国际象棋棋盘流程1.1 思路秒懂1.2 分块解析2 完整代码2.1 方法一2.2 方法二2.3 方法三(精简版)3 结果展示网页上搜索 “python绘制国际象棋棋盘”,索引结果均为调用 turtl...
    99+
    2022-06-02
    Python 国际象棋棋盘
  • Python图像处理【3】Python图像处理库应用
    Python图像处理库应用 0. 前言1. 将 RGB 图像转换为灰度图像算法1.1 算法原理3.2 算法实现 2. 使用 PIL 库计算图像差异2.1 算法原理2.2 算法实现 ...
    99+
    2023-09-06
    python 图像处理 计算机视觉
  • python实现图像处理之PiL依赖库的案例应用详解
    Python实现图像处理:PiL依赖库的应用 本文包含的练习题主要是PIL依赖库,即pillow相关的应用。 练习一:使用python给图片增加数字 实现思路: 使用PIL的Image.open导入图片。 ...
    99+
    2022-06-02
    python图像处理 python PiL依赖库的应用
  • python PIL Image图像处理基本操作有哪些
    这篇文章主要讲解了“python PIL Image图像处理基本操作有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python PIL Imag...
    99+
    2023-06-29
  • Python图像处理类库
    本章讲解操作和处理图像的基础知识,将通过大量示例介绍处理图像所需的 Python 工具包,并介绍用于读取图像、图像转换和缩放、计算导数、画图和保存结果等的基本工具。这些工具的使用将贯穿本书的剩余章节。1.1 PIL:Python图像处理类库...
    99+
    2023-01-31
    图像处理 类库 Python
  • Python图像处理库处理步骤
    目录探索Python图像处理库0. 前言1. 利用 scikit-image 绘制图像2. 使用 SciPy 模块裁剪/调整图像大小3. 使用 OpenCV 绘制轮廓3.1 轮廓简介...
    99+
    2023-05-15
    Python图像处理库 Python图像处理
  • 如何使用Python的OpenCV库处理图像和视频
    目录介绍计算机视觉OpenCV应用:安装使用 OpenCV 处理图像1. 从文件中读取图像2. 调整图像大小:3. 旋转图像4. 翻转图像:5. 重写图像6. 裁剪图像7. 绘制形状...
    99+
    2022-11-11
  • Python 图像处理 Pillow 库详情
    前言: 图像处理是常用的技术,python 拥有丰富的第三方扩展库,Pillow 是 Python3 最常用的图像处理库,目前最高版本5.2.0。Python2 使用Pil库,两者是...
    99+
    2022-11-12
  • 怎样使用Python图像处理
    这篇文章给大家介绍怎样使用Python图像处理,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python图像处理是一种简单易学,功能强大的解释型编程语言,它有简洁明了的语法,高效率的高层数据结构,能够简单而有效地实现面...
    99+
    2023-06-17
  • Python中图像处理Pillow库怎么用
    这篇文章主要介绍Python中图像处理Pillow库怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前言:图像处理是常用的技术,python 拥有丰富的第三方扩展库,Pillow 是 Python3 最常用的图像...
    99+
    2023-06-25
  • c++图像处理库怎么使用
    在C++中,有一些流行的图像处理库可以使用。以下是一些常见的图像处理库及其使用方法: OpenCV:OpenCV是一个广泛使用的...
    99+
    2023-10-24
    c++
  • 如何使用canvas处理图像
    如何使用canvas处理图像?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。canvas 的图像处理能力通过 ImageData 对象来处理像素数据。主要的 AP...
    99+
    2023-06-09
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作