我有一个包含多个图像的文件夹。我想以相同的比例裁剪所有图像,提取文本并保存到列表中。但是当我运行这些代码时
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'
你们能帮我解决这个问题吗 `
答案 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))
这应该有效