详解Python PIL Image.open()方法

  • Post category:Python

当我们需要在 Python 代码中操作图像时,Python Imaging Library(PIL)是一个非常好的库,而其中的Image.open()方法可以让我们从文件中打开一张图片进行进一步的操作。

下面是Image.open()方法的详细攻略:

基本语法

Image.open(fp, mode='r')
  • 参数:
  • fp:文件路径或者一个类文件对象,如 io.BytesIO 或者 io.StringIO
  • mode:可选参数,默认值是’r’,表示使用的模式(如读取或写入等)。
  • 返回值:一个PIL.Image对象,代表打开的图片。
  • 异常:
  • 若未能打开图片或图片格式不受支持,将抛出IOError或者SyntaxError

示例说明

  1. 从文件中打开并显示一张图片
from PIL import Image

img_path = 'path/to/image.jpg'
img = Image.open(img_path)
img.show()

这样,我们就成功地从文件中打开了一张图片,并且在屏幕上显示出来。

  1. 将图片数据加载到内存,进行进一步操作
from PIL import Image
import requests
from io import BytesIO

url = 'https://picsum.photos/200'
response = requests.get(url)
img = Image.open(BytesIO(response.content))
img_gray = img.convert('L')
img_gray.show()

这里我们利用requests库获取了一张宽度为200,高度随机的图片,并将图片数据存储到了一个BytesIO对象中,然后通过Image.open()方法打开了这张图片,并使用convert()方法将其转化为灰度图,最后将灰度图显示出来。

以上就是Image.open()方法的详细介绍和几个示例说明。