使用Inception v3鸟类识别模型预测时出现PermissionError,如何解决?
解决鸟类识别代码的PermissionError问题
问题根源
你传入predict_image()的是文件夹路径(C:\\Users\\a2z\\Downloads\\archives\\train\\AMERICAN COOT),但image.load_img()函数要求传入单个图片文件的完整路径。当Python尝试以读取文件的方式打开文件夹时,系统会拒绝这个操作,从而触发PermissionError。
解决方案
- 预测单张图片
直接传入具体的图片文件路径,替换为该文件夹下实际存在的图片文件名即可:
predict_image('C:\\Users\\a2z\\Downloads\\archives\\train\\AMERICAN COOT\\sample_bird.jpg', model)
- 批量预测文件夹内所有图片
如果需要批量处理该文件夹下的所有图片,遍历文件夹并逐个传入函数:
import os target_folder = 'C:\\Users\\a2z\\Downloads\\archives\\train\\AMERICAN COOT' # 遍历文件夹内所有文件,过滤常见图片格式 for file_name in os.listdir(target_folder): if file_name.lower().endswith(('.jpg', '.jpeg', '.png', '.bmp')): img_full_path = os.path.join(target_folder, file_name) predict_image(img_full_path, model)
- 权限兜底检查
如果传入单个图片路径仍报错,可尝试:
- 右键图片文件→属性→安全,确认当前用户拥有读取权限
- 将图片复制到桌面(C盘桌面的权限限制通常更宽松)后再测试
内容的提问来源于stack exchange,提问作者Bala Omkar Surampalli
相关产品推荐
相关产品推荐

