当我们需要在 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
。
示例说明
- 从文件中打开并显示一张图片
from PIL import Image
img_path = 'path/to/image.jpg'
img = Image.open(img_path)
img.show()
这样,我们就成功地从文件中打开了一张图片,并且在屏幕上显示出来。
- 将图片数据加载到内存,进行进一步操作
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()
方法的详细介绍和几个示例说明。