pillow库使⽤教程,菜鸟教程
Image模块(打开、旋转和显⽰图像,####创建缩略图,图像处理,混合,复合,合并,构建,创建引⽤字节缓冲区中的像素数据的图像存储器,⽣成覆盖给定范围的 Mandelbrot 集,
⽣成以 128 为中⼼的⾼斯噪声)
ImageCms 模块()
ImageColor 模块()
ImageDraw 模块(绘画<;直线,点,圆弧,圆,椭圆>,特殊效果、图像合成、算法绘画)
ImageEnhance 模块()
ImageFile 模块()
ImageFilter 模块()
ImageFont 模块()
ImageGrab 模块()
ImageMath 模块()
ImageMorph 模块()
ImageOps 模块()
ImagePalette 模块()
ImagePath 模块()
ImageQt 模块()
ImageSequence 模块()
ImageShow 模块()
ImageStat 模块()
ImageTk 模块()
ImageWin 模块(仅限 Windows)()
ExifTags 模块()
TiffTags 模块()
JpegPresets 模块()
PSDraw 模块()
PixelAccess 班级()
PyAccess 模块()
features 模块()
ImageChops (“渠道运营”)模块
该ImageChops模块包含许多算术图像运算,称为通道运算(“chops”)。这些可⽤于各种⽬的,包括特殊效果、图像合成、算法绘画等。
有关更多预制操作,请参阅ImageOps。
此时,⼤多数通道操作仅针对 8 位图像(例如“L”和“RGB”)实现。
职能
⼤多数通道操作采⽤⼀两个图像参数并返回⼀个新图像。除⾮另有说明,通道操作的结果总是被限制在 0 到 MAX 的范围内(对于此模块中的操作⽀持的所有模式,该范围为 255)。
PIL.ImageChops。添加(图像1,图像2,刻度= 1.0,偏移= 0)[来源]
添加两个图像,将结果除以⽐例并添加偏移量。如果省略,⽐例默认为 1.0,偏移为 0.0。
out = ((image1 + image2) / scale + offset)
返回类型
Image
PIL.ImageChops。add_modulo ( image1 , image2 )[来源]添加两个图像,⽽不剪裁结果。
out = ((image1 + image2) % MAX)
返回类型
Image
PIL.ImageChops。混合(image1, image2, alpha)[来源]使⽤恒定的透明度权重混合图像。的别名 PIL.Image.blend()。
返回类型
Image
PIL.ImageChops。复合(image1, image2, mask)[来源]使⽤透明蒙版创建合成。的别名 PIL.Imageposite()。
返回类型
Image
PIL.ImageChops。常量(图像,值)[来源]
⽤给定的灰度级填充通道。
返回类型
Image
PIL.ImageChops。较暗(image1, image2)[来源]
逐个像素地⽐较两个图像,并返回包含较暗值的新图像。
out = min(image1, image2)
返回类型
Image
PIL.ImageChops。差(图像1,图像2)[来源]
返回两个图像之间逐像素差异的绝对值。
out = abs(image1 - image2)
返回类型
Image
PIL.ImageChops。重复(图像)[来源]
复制频道。的别名PIL.py()。
返回类型
Image
PIL.ImageChops。反转(图像)[来源]
反转图像(通道)。
out = MAX - image
返回类型
Image
PIL.ImageChops。打⽕机( image1 , image2 )[来源]
逐个像素地⽐较两个图像,并返回⼀个包含较亮值的新图像。
out = max(image1, image2)
返回类型
Image
#打开⽂件
im = Image.open("hopper.ppm")
#查看属性
print(im.format, im.size, im.mode)
#从图像复制⼦矩形
box = (100, 100, 400, 400)
region = im.crop(box)
#处理⼦矩形并将其粘贴回去
region = anspose(Image.ROTATE_180)
im.paste(region, box)
#简单的⼏何变换
out = im.resize((128, 128))
out = im.rotate(45)
#按照⾓度旋转
out = im.transpose(Image.ROTATE_90)
#模式间转换
im = im.convert("L")
#剪裁
box = (120, 194, 220, 294) #定义裁剪区域
region = im.crop(box) #裁剪
#黏贴---可以不⽤后⾯的那个box
img.paste(img2, box)
#图像缩放---长度和宽度
#保存⽂件---要记得取名字
im.save("7776.jpg")
#im.verify():
尝试确定⽂件是否损坏,⽽不实际解码图像数据
im.format:
源⽂件的⽂件格式
菜鸟教程python2
图像模式典型值为“1”,“L”,“RGB”或“CMYK”im.size:
图像⼤⼩,以像素为单位。⼤⼩以2元组(宽度,⾼度)给出# 变暗操作
im2 = im1.point(lambda x: x * 0.01)
#图像的⼤⼩
im.size
#图像的宽度
im.width
#图像的⾼度
im.height
# 分离通道,返回3个Image对象
r, g, b = img.split()
print(r,g,b)
#尺⼨
img.size
#复制,黏贴
im = Image.open('222.jpg')
# 复制两份
im1 = im.copy()
im2 = im.copy()
# 剪切图⽚
im_crop = p((200, 200, 400, 400))
# 粘贴图⽚
im2.paste(im_crop, (30, 30))
#增强亮度并且展⽰
Image.eval(img, lambda x: x * 2).show()
Image----------------------------------------------------------------------------------------------------
#⽣成图⽚不能直接创建⼜打开,必需保存后才能打开
#覆盖颜⾊
im1 = Image.open('pic.jpg').convert(mode='RGB')
# 创建⼀个和im1⼤⼩⼀样的图像
im2 = w('RGB', im1.size, 'red')
# 混合图⽚,并显⽰
Image.blend(im1, im2, 0.5).show()
#处理图⽚新的⽅式
Image.eval(im, lambda x:x*2).show()
def func(x):
return x*2
# 对图像im每个像素点进⾏func中的操作,其中func不能加()
Image.eval(im, func)
#上下翻转
Image.FILP_TOP_BOTTOM
#左右翻转
Image.FILP_LEFT_RIGHT
#颠倒
Image.TRANSPOSE
图像处理----------------------------------------------------------------------------------------
im = Image.open(‘1.png’)
# ⾼斯模糊
im.filter(ImageFilter.GaussianBlur)
# 普通模糊
im.filter(ImageFilter.BLUR)
# 边缘增强
im.filter(ImageFilter.EDGE_ENHANCE)
# 到边缘
im.filter(ImageFilter.FIND_EDGES)
# 浮雕
im.filter(ImageFilter.EMBOSS)
# 轮廓
im.filter(ImageFilter.CONTOUR)
# 锐化
im.filter(ImageFilter.SHARPEN)
# 平滑
im.filter(ImageFilter.SMOOTH)
# 细节---好像没有什么⽤
im.filter(ImageFilter.DETAIL)
#创建的图⽚可以直接不⽤保存就可以展⽰了
w('RGB',(1920,1080),(0,0,255))
#另⼀种形式表现颜⾊
#蓝⾊
ImageEnhance ----------------------------------------------------------------------------------------------------------------------------
#亮度增强
nh_bri = ImageEnhance.Brightness(img)
brightness = 1.5
image_brightened = hance(brightness)
image_brightened.show()
#⾊度增强---所有的颜⾊都增强
enh_col = ImageEnhance.Color(img)
color = 13.5
image_colored = hance(color)
image_colored.show()
#对⽐度增强---不同的颜⾊会反差很明显
enh_con = ImageEnhance.Contrast(image)
contrast = 1.5
image_contrasted = hance(contrast)
image_contrasted.show()
#锐度增强---好像就是为了让它显得更像组合的字母⼀样
enh_sha = ImageEnhance.Sharpness(image)
sharpness = 3.0
image_sharped = hance(sharpness)
image_sharped.show()
ImageGrab-------------------------------------------------------------------------------------------------------------------------------------
#截屏
im1= ab((0,0,800,200)) #截取屏幕指定区域的图像
im2 = ab() #不带参数表⽰全屏幕截图
# 创建⼀个原图⼤⼩3倍的图⽚
img = w("RGB", (w * 3, h))
# 将减弱的图⽚放在最左边
img.paste(im2, (0, 0))
# 将原图放在中间
img.paste(im1, (w, 0))
# 将增强后的图⽚放在最右边
img.paste(im3, (w * 2, 0))
这些东西整理出来不是很容易的,要想具体的看懂,真的理解这些东西后⾯还需要⼩编的很多例⼦,⼩编还在整理之中。这些都是可以直接使⽤的,接下来就是看你们的想象⼒还要你们是如何的将这些东西给组合起来了。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论