如何使用 .pkl 文件预测图像
Posted
技术标签:
【中文标题】如何使用 .pkl 文件预测图像【英文标题】:How to predict an image using .pkl file 【发布时间】:2020-04-05 19:41:40 【问题描述】:我已经训练了一个图像分类模型并将其保存在 .pkl 文件中。 现在我不知道如何使用该泡菜文件进行单个或多个图像预测。 我已经为表格数据预测做了这个,但不是为了图像
from sklearn.externals import joblib
classifer = joblib.load("model.pkl")
接下来要做什么 用于预测表格数据的方法不适用于图像。
【问题讨论】:
你在 pickle 文件中究竟保存了什么?您应该只加载它并恢复分类器对象,请提供详细信息。 感谢您的回复,我已经使用fastai library
对其进行了训练,它使用export() function
将模型保存为.pkl
格式,但现在问题是由于某种原因我不允许使用fastai
项目中的库,但是我使用 fastai
训练的模型在我的数据集上表现非常好,所以是的,我只想在不使用 fastai
的情况下从 .pkl file
中得到预测
【参考方案1】:
应该是一样的,你用你正在使用的任何图像模块读取图像,例如opencv:
import cv2
img = cv2.imread('path/to/img')
classifier.predict(img)
如果这不起作用,也许粘贴错误,以便更容易为您提供答案
【讨论】:
不工作,这个predict
来自sklearn或keras,我的错误是AttributeError: 'int' object has no attribute 'predict'
按照你的建议
你可以在用joblib加载它以显示参数后做print(classifier)
吗?它不应该是int
对象。这就是说,如果模型被正确加载和加载,如果你对用于训练的图像进行了一些预处理,你应该对你的图像做同样的事情在预测它们之前用于预测。以上是关于如何使用 .pkl 文件预测图像的主要内容,如果未能解决你的问题,请参考以下文章
python 保存训练好的预测模型 python如何加载训练好的模型pkl格式文件