【问题标题】:Convert gif image loaded in Pillow to png将 Pillow 中加载的 gif 图像转换为 png
【发布时间】:2021-01-11 05:23:36
【问题描述】:

我正在抓取一个网页,该网页通过将信息显示为图像而受到保护,以免被抓取。当我导入格式为.gif 的图像时,它会发送一个错误。我试图找到一种方法将导入的图像转换为另一种格式,如 png,但我没有成功。

from PIL import Image
import pytesseract
import cv2
import imutils

pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract'
url = "url.gif"

rawimge = Image.open(urllib.request.urlopen(url))

image = imutils.resize(rawimge, width=400)
blur = cv2.GaussianBlur(image, (7,7), 0)
thresh = cv2.threshold(blur, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1]
result = 255 - thresh

phone = pytesseract.image_to_string(result, lang='eng',config='--psm 6')
print(phone)


cv2.imshow('thresh', thresh)
cv2.imshow('result', result)
cv2.waitKey()

错误:

AttributeError: 'GifImageFile' object has no attribute 'shape'

【问题讨论】:

  • 在同一代码中使用 3 个 图像处理库 有什么合理的理由吗?
  • 是的,@nathancy 推荐 link
  • 请提供具有完全代表性的 URL 的正确工作示例。

标签: python-3.x python-imaging-library tesseract urllib imutils


【解决方案1】:

最后我无法将图像容器转换为另一种格式,所以我选择将图像转换为文件并进行处理。

img = Image.open(urllib.request.urlopen(url))
img.save("image.png")
image = cv2.imread("image.png",0)

【讨论】:

    猜你喜欢
    • 2011-02-01
    • 2019-11-10
    • 2012-01-22
    • 2011-05-11
    • 2021-06-01
    • 2014-09-15
    • 2017-09-01
    • 1970-01-01
    • 2013-06-16
    相关资源
    最近更新 更多