‘/tmp/pip-uninstall-srp_brok">
赞
踩
报错如下:
File "/Library/Python/2.6/site-packages/PIL/ImageFile.py", line 215, in load raise_ioerror(e)
File "/Library/Python/2.6/site-packages/PIL/ImageFile.py", line 52, in raise_ioerror
raise IOError(message + " when reading image file")
IOError: broken data stream when reading image file
可以看出是PIL出现了问题,可按照以下步骤解决:
(1) 查看Pillow的版本
使用以下命令查看,博主使用版本为5.2.0 . 若不对,可卸载,再安装
pip list
sudo pip uninstall pillow
sudo pip install pillow==5.2.0
(2) 若还未能解决,利用opencv进行读取数据
安装opencv命令如下:
sudo pip install opencv-python
安装完成后,导入opencv包
from PIL import Image
import cv2
改变读取数据的代码:
#img = Image.open(os.path.join(self.root, 'data', '{}2014'.format(self.phase), filename)).convert('RGB')
img = cv2.imread(os.path.join(self.root, 'data', '{}2014'.format(self.phase), filename))
img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # 两个函数分开写
img = Image.fromarray(img) # 数据格式转换
(3) 最后,如出现报错:
Corrupt JPEG data: premature end of data segment
将数据集删除,重新下载解压,即可解决问题!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。