[英]change the input of a pre-defined function from a url to a local file
我需要將此功能從url輸入更改為本地文件輸入
def download_and_resize_image(url, new_width=256, new_height=256,display=False):
_, filename = tempfile.mkstemp(suffix=".jpg")
response = urlopen(url)
image_data = response.read()
image_data = BytesIO(image_data)
pil_image = Image.open(image_data)
pil_image = ImageOps.fit(pil_image, (new_width, new_height), Image.ANTIALIAS)
pil_image_rgb = pil_image.convert("RGB")
pil_image_rgb.save(filename, format="JPEG", quality=90)
print("Image downloaded to %s." % filename)
if display:
display_image(pil_image)
return filename
這段代碼是我老師給我的。 如何將輸入更改為本地文件?
我查看了請求庫,但對函數感到不滿意。 是否有預定義的函數來獲取本地文件,或者應該如何對預定義的函數進行哪些更改?
Image.open方法采用文件路徑和模式。 看這里 。 您應該能夠用文件路徑替換url並將其放在Image.open中
pil_image = Image.open(filepath)
只需傳入filepath
作為參數,然后從fileapth
讀取。 嘗試這個。
def download_and_resize_image(filepath, new_width=256, new_height=256,display=False):
# _, filename = tempfile.mkstemp(suffix=".jpg")
# response = urlopen(url)
# image_data = response.read()
# image_data = BytesIO(image_data)
pil_image = Image.open(filepath)
pil_image = ImageOps.fit(pil_image, (new_width, new_height), Image.ANTIALIAS)
pil_image_rgb = pil_image.convert("RGB")
pil_image_rgb.save(filename, format="JPEG", quality=90)
print("Image downloaded to %s." % filename)
if display:
display_image(pil_image)
return filename
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.