【发布时间】:2019-09-14 21:43:32
【问题描述】:
我正在尝试制作一个机器学习程序,将细胞图像分类为受感染或未感染。我在一个单独的 python 文件上创建了模型,并正在创建一个脚本,该脚本将在图像上调用它来对其进行分类。完整代码如下:
def convert(img):
img1 = cv2.imread(img)
img = Image.fromarray(img1, 'RGB')
image = img.resize((50, 50))
return (np.array(image))
def cell_name(label):
if label == 0:
return ("Paracitized")
if label == 1:
return ("Uninfected")
def predict(file):
print ("Predicting...please wait")
ar = convert(file)
ar = ar/255
label = 1
a = []
ar.append(ar)
a = np.array(a)
score = loaded_model.predict(a, verbose=1)
print (score)
label_index=np.argmax(score)
print(label_index)
acc=np.max(score)
Cell=cell_name(label_index)
return (Cell,"The predicted Cell is a "+Cell+" with accuracy = "+str(acc))
print(predict("test/paracitized.png"))
这是完整的错误信息:
File "malaria_img.py", line 15, in convert
img = Image.fromarray(img1, 'RGB')
File "/Library/Python/2.7/site-packages/PIL/Image.py", line 2526, in fromarray
arr = obj.__array_interface__
AttributeError: 'NoneType' object has no attribute '__array_interface__'
有人知道为什么会这样吗?
【问题讨论】:
-
顺便说一句,Python 2.7 非常过时了,到今年年底将不再支持。您应该尽快更新到 3.x。
-
我在我的系统中尝试了转换函数,它执行得很好。如@KarlKnechtel 所述,您的文件名可能有问题
标签: python arrays numpy model nonetype