You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

fastai调用learner.predict预测单图报AttributeError问题排查

错误原因

learn.predict() 不支持直接传入字符串格式的图片路径。方法内部会对输入对象调用apply_tfms方法,执行和训练阶段完全一致的尺寸调整、数据增强、归一化等预处理操作,字符串类型不存在该方法,因此抛出AttributeError: 'str' object has no attribute 'apply_tfms'错误。

修复方案

提前使用fastai框架自带的open_image工具加载目标图片,生成框架可识别的Image对象后,再传入predict方法即可。
修复后的调用代码如下:

# 从fastai.vision模块导入图片加载工具
from fastai.vision import open_image

# 加载待预测的单张图片
img = open_image('test/0.jpg')
# 执行预测,返回值依次为预测类别、类别对应索引、所有类别的预测概率
pred_class, pred_idx, pred_probs = learn.predict(img)

注意事项:

  • 传入open_image的图片路径需要和运行代码时的工作目录匹配,若触发文件不存在报错,优先检查路径拼写、相对路径对应关系是否正确
  • 不要直接传入PIL库读取的图像对象、numpy数组格式的原始图像数据,这类数据不会自动对齐训练阶段的预处理逻辑,容易出现预测结果偏差或格式报错,单张图预测优先使用框架自带的open_image加载。

内容的提问来源于stack exchange,提问作者Devon Lai

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 21:42:15