【Python入门基础】图像处理

图像处理

颜色与像素

颜色

  美术三原色是红黄蓝;色光三原色是红绿蓝,所以通常会将一个颜色表示为一个RGB值或者RGBA值(A表示Alpha通道,决定了通过这个图像的像素,也就是透明度)。

名称 RGBA值 名称 RGBA值
White (255, 255, 255, 255) Red (255, 0, 0, 255)
Green (0, 255, 0, 255) Blue (0, 0, 255, 255)
Gray (128, 128, 128, 255) Yellow (255, 255, 0, 255)
Black (0, 0, 0, 255) Purple (128, 0, 128, 255)

像素

  对于一个由数字序列表示的图像来说,最小的单位就是图像上单一颜色的小方格,这些小方格都有明确的位置和被分配的色彩数值,而这些小方格的颜色和位置决定了该图像最终呈现出来的样子,它们是不可分割的单位,也就是像素(pixel)。每一个图像都包含一定量的像素,这些像素决定图像再屏幕上所呈现的大小。

用Pillow处理图像

裁剪图像

from PIL import Image
image = Image.open('algorithm.jpg')
rect = 80,20,310,360
image.crop(rect).show()

生成缩略图

from PIL import Image
image = Image.open('algorithm.jpg')
size=128,128
image.thumbnail(size)
image.show()

缩放和粘贴图像

from PIL import Image
image1 = Image.open('algorithm.jpg')
image2 = Image.open('road.jpg')
rect=80,20,310,360
image2_head=image2.crop(rect)
width,height=image2.size
image1.paste(image2_head.resize((int(width/1.5),int(height/1.5))),(172,40))
image1.show()

旋转和翻转

from PIL import Image
image = Image.open('algorithm.jpg')
image.rotate(180).show()
image.transpose(Image.FLIP_LEFT_RIGHT).show()

操作像素

from PIL import Image
image = Image.open('algorithm.jpg')
for x in range(80,310):
    for y in range(20,360):
        image.putpixel((x,y),(128,128,128))
image.show()

滤镜效果

from PIL import Image,ImageFilter
image = Image.open('algorithm.jpg')
image.filter(ImageFilter.CONTOUR).show()

猜你喜欢

转载自blog.csdn.net/qq_36477513/article/details/111316216