如何解决AttributeError: 模块“PIL.Image”没有属性“load_img”
我正在尝试运行和修改 tkinter 代码并使用“从 PIL 导入图像”,但出现属性错误,指出 PIL.Image 没有属性“load_img”。我试图将其更改为 Image.open(),但随后出现新错误,提示 TypeError: open() 获得了意外的关键字参数“target_size”。我不确定应该更改哪个部分来修复此错误。
这是部分代码:
def predictThis(folder_path):
from PIL import Image
import numpy as np
import cv2
import joblib
from numpy import argmax
model = joblib.load("HOG_SVM.npy")
img_width,img_height=img_size,img_size
label_dict = {0:'Negative COVID-19',1:'Positive COVID-19'}
test_Image = Image.load_img(folder_path,target_size=(img_width,img_height))
img=np.array(test_Image)
if(img.ndim==3):
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
else:
gray=img
gray=gray/255
resized=cv2.resize(gray,(img_size,img_size))
reshaped=resized.reshape(1,img_size,img_size)
prediction = model.predict(reshaped)
result=np.argmax(prediction,axis=1)[0]
accuracy=float(np.max(prediction,axis=1)[0])
label=label_dict[result]
return "This patient is " + label + " and the accuracy of\nx-ray image recognition is " + str(accuracy)
错误是这样的:
Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\user\anaconda3\lib\tkinter\__init__.py",line 1883,in __call__
return self.func(*args)
File "C:\Users\user\TkinterFyp\untitled3.py",line 71,in browse_button
result = predictThis(filename)
File "C:\Users\user\TkinterFyp\untitled3.py",line 44,in predictThis
test_Image = Image.load_img(folder_path,img_height))
File "C:\Users\user\anaconda3\lib\site-packages\PIL\Image.py",line 62,in __getattr__
raise AttributeError(f"module '{__name__}' has no attribute '{name}'")
AttributeError: module 'PIL.Image' has no attribute 'load_img'
更新解决方案:我把load_img改成了Image.open,我的代码还有一个错误,但是这个属性错误现在没有了,谢谢!
def predictThis(folder_path):
from PIL import Image
import numpy as np
import cv2
import joblib
from numpy import argmax
model = joblib.load("HOG_SVM.npy")
img_width,img_size
label_dict = {0:'Negative COVID-19',1:'Positive COVID-19'}
test_Image = Image.open(folder_path).resize((img_width,img_height)) #edited
img=np.array(test_Image)
if(img.ndim==3):
gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
else:
gray=img
gray=gray/255
resized=cv2.resize(gray,img_size))
reshaped=resized.reshape(1,img_size)
prediction = model.predict(reshaped)
result=np.argmax(prediction,axis=1)[0]
accuracy=float(np.max(prediction,axis=1)[0])
label=label_dict[result]
return "This patient is " + label + " and the accuracy of\nx-ray image recognition is " + str(accuracy)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。