PIL中解决win7不显示图像
将return改成如图所示
参考文章:https://www.cnblogs.com/chimeiwangliang/p/7130434.html
包含的内容:
本篇包含:
一、Image类的属性:1、Format 2、Mode 3、Size 4、Palette 5、Info
二、类的函数:1、New 2、Open 3、Blend 4、Composite 5、Eval 6、Frombuffer 7、Fromstring 8、Merge
三、Image类的方法:1、Convert 2、Copy 3、Crop 4、Draft 5、Filter 6、Fromstring 7、Getbands 8、Getbbox 9、Getcolors 10、Getdata 1 1、 Getextrema 12、Getpixel 13、Histogram 14、Load 15、Paste
[1].PIL的基本概念:
基本概念:通道(bands)模式(mode)尺寸(size)坐标系(coordinate system)调色板(palette)信息(info)滤波器(filters)
1,通道
每张图片都是由一个或者多个数据通道构成。PIL允许在单张图片中合成相同维数和深度的多个通道。
以RGB图像为例,每张图片都是由三个数据通道构成,分别为R、G和B通道。而对于灰度图像,则只有一个通道。
对于一张图片的通道数量和名称,可以通过方法getbands()来获取。方法getbands()是Image模块的方法,它会返回一个字符串元组(tuple)。该元组将包括每一个通道的名称。
from PIL import Image
im = Image.open("xiao.png")
print(im.getbands())
输出:
('R', 'G', 'B')
2,模式
图像的模式定义了图像的类型和像素的位宽。当前支持如下模式:
1:1位像素,表示黑和白,但是存储的时候每个像素存储为8bit。
L:8位像素,表示黑和白。
P:8位像素,使用调色板映射到其他模式。
RGB:3x8位像素,为真彩色。
RGBA:4x8位像素,有透明通道的真彩色。
CMYK:4x8位像素,颜色分离。
YCbCr:3x8位像素,彩色视频格式。
I:32位整型像素。
F:32位浮点型像素。
PIL也支持一些特殊的模式,包括RGBX(有padding的真彩色)和RGBa(有自左乘alpha的真彩色)。
可以通过img.mode来获取当前图片的模式
3,尺寸
通过size属性可以获取图片的尺寸。这是一个二元组,包含水平和垂直方向上的像素数。
from PLI import Image
im=Image.open('1.jpg')
print(im.size)
返回(1024,768)
4,坐标系
PIL使用笛卡尔像素坐标系统,坐标(0,0)位于左上角。注意:坐标值表示像素的角;位于坐标(0,0)处的像素的中心实际上位于(0.5,0.5)。
坐标经常用于二元组(x,y)。长方形则表示为四元组,前面是左上角坐