'Str对象没有属性“裁剪”-使用PIL和Tesseract裁剪多个图像

时间:2018-07-08 05:40:47

标签: python opencv python-imaging-library pillow

我有一个包含多个图像的文件夹。我想以相同的比例裁剪所有图像,提取文本并保存到列表中。但是当我运行这些代码时

    import glob
    image_list = []
    for filename in glob.glob('data5\*.jpg'):
      image=image_to_string( Image.open(filename))
      print(filename)
      crop=image.crop((20,10,320,70))
      print(crop)
      crop.save('data5\filename.jpg')
      b=image_to_string( Image.open('filename.jpg'), lang = 'deu' )
      image_list.append(b)

我收到此错误

     AttributeError   Traceback (most recent call 
   last)
   <ipython-input-199-e09f06845609> in <module>()
  4     image=image_to_string( Image.open(filename))
  5     print(filename)
  ----> 6     crop=image.crop((20,10,320,70))
  7     print(crop)
  8     crop.save('data5\filename.jpg')
   AttributeError: 'str' object has no attribute 'crop'

你们能帮我解决这个问题吗 `

1 个答案:

答案 0 :(得分:0)

您正在将图像转换为字符串对象。您希望如何裁剪字符串?只需避免使用image_to_string

from PIL import Image
from PIL import ImageOps

img = Image.open(filename)
crop = ImageOps.crop(img, (10, 50, 35, 55))

这应该有效