PIL IndexError: index out of range
在pytorch读取自己制作的数据集时,发送return c if c.class is int else c[0] 862 IndexError: index out of range错误。
error报错信息
Traceback (most recent call last):845 File "src/train.py", line 721, in <module>846 main()847 File "src/train.py", line 683, in main848 writer,args.freeze_bn[task_idx])849 File "src/train.py", line 338, in train_model850 for batch_idx, sample in enumerate(train_loader):851 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 623, in __next__852 return self._process_next_batch(batch)853 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 658, in _process_next_batch854 raise batch.exc_type(batch.exc_msg)855 SyntaxError: Traceback (most recent call last):856 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/PIL/ImageFile.py", line 102, in __init__857 self._open()858 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/PIL/JpegImagePlugin.py", line 325, in _open859 i = i8(s)860 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/PIL/_binary.py", line 24, in i8861 return c if c.__class__ is int else c[0]862 IndexError: index out of rangeTraceback (most recent call last):867 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 138, in _worker_loop868 samples = collate_fn([dataset[i] for i in batch_indices])869 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 138, in <listcomp>870 samples = collate_fn([dataset[i] for i in batch_indices])871 File "/home/zp/disk1T/TSNet-LW/src/Read_data.py", line 174, in __getitem__872 image = imageio.imread(img_dir[idx])873 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/imageio/core/functions.py", line 221, in imread874 reader = read(uri, format, "i", **kwargs)875 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/imageio/core/functions.py", line 143, in get_reader876 return format.get_reader(request)877 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/imageio/core/format.py", line 174, in get_reader878 return self.Reader(self, request)879 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/imageio/core/format.py", line 224, in __init__880 self._open(**self.request.kwargs.copy())881 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/imageio/plugins/pillow.py", line 406, in _open882 return PillowFormat.Reader._open(self, pilmode=pilmode, as_gray=as_gray)883 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/imageio/plugins/pillow.py", line 122, in _open884 self._im = factory(self._fp, "")885 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/PIL/JpegImagePlugin.py", line 779, in jpeg_factory886 im = JpegImageFile(fp, filename)887 File "/home/zp/miniconda3/envs/pytorch/lib/python3.6/site-packages/PIL/ImageFile.py", line 111, in __init__888 raise SyntaxError(v)889 File "<string>", line None890 SyntaxError: index out of range
最终定位到错误原因时因为图片本身损坏,导致read的时候无法正常读取。
解决方法
from PIL import Image
import imageio
count = 1
with open('./casiasurf/train+++/rgb_train+++.txt', 'r') as f:s = f.read().splitlines()
for i in range(len(s)):if i > 43875:print(s[i])imageio.imread(s[i])
我用的方法比较简单粗暴,直接遍历所有图片,把报错的图片名称打印出来,定位到哪一张图片损坏,手动删除就好了。
另外还可以参考其他链接:https://github.com/python-pillow/Pillow/issues/1474,但是对我来说并没用什么用。
简单粗暴方法直接删除就好了。
Error: Segmentation fault (core dumped)
在python环境下运行的时候,出现这种情况。
导入summarywriter出错
>from tensorboardX import SummaryWriterError: Segmentation fault (core dumped)
原因:protobuf版本不对,卸载重新安装
PIL IndexError: index out of range相关推荐
- 错误处理:IndexError: index out of range in self
import torch t_embeddings = torch.nn.Embedding(2,5) x=torch.tensor([[2,3]]) y=t_embeddings(x) 代码如上,报 ...
- 成功解决 shape = predictor(img, dets[0]) IndexError: Index out of range
成功解决 shape = predictor(img, dets[0]) IndexError: Index out of range 目录 解决问题 解决方法 解决问题 shape = pre ...
- IndexError: list index out of range的解决办法
IndexError: list index out of range的解决办法 列表的索引也就是他的元素的个数是没有你所想要找的元素位置,比如这个列表只有十个元素你要找第11个元素这个肯定找不到 解 ...
- 爬虫时出现 IndexError: list index out of range 的原因
爬虫时出现 IndexError: list index out of range 的原因有两种: 简单举例如下: 第一种情况: index越界 Alex = [1,2,3] Alex[1] 2 Al ...
- 很有必要看,这篇 解决 IndexError: list index out of range
运行逻辑回归代码,遭遇bug: Traceback (most recent call last):File "D:/DTLFolder/paperTest/Paper_logistic r ...
- mmdetection训练出现:IndexError: list index out of range 错误
mmdetection训练出现:IndexError: list index out of range 错误 文章目录: 1 问题分析 1.1 尝试解决错误:第一次 1.2 尝试解决错误:第二次 2 ...
- 【python基础】list操作相关:扩充、条件查找【IndexError: list assignment index out of range】...
参考 [https://blog.csdn.net/qq_44768814/article/details/88614393] [IndexError: list assignment index o ...
- 成功解决pml.Simple derived_col_names[int(obj[‘split_feature‘])],\ IndexError: list index out of range
成功解决pml.SimplePredicate(field=xgboostToPmml.replace_name_with_derivedColumnNames(derived_col_names[i ...
- 成功解决.append方法出现错误IndexError: list index out of range
成功解决.append方法出现错误IndexError: list index out of range 目录 解决问题 解决方法 解决问题 .append方法出现错误IndexError: list ...
最新文章
- mysql case设固定值_MySQL CASE语句将自定义值放置为NULL
- 一些安全相关的HTTP响应头
- SpringMVC使用及知识点提炼
- 多标签文本分类数据集_标签感知的文档表示用于多标签文本分类(EMNLP 2019)...
- JUNIPER SRX Ipsec ××× 点对点Policy base ×××连接测试
- 昂贵的聘礼(枚举区间+最短路)
- 这组三八妇女节海报素材psd模板,你给打几分?
- HDFS 读取、写入、遍历文件夹获取文件全路径、append
- 音译 —— 本身的含义
- DB2 亲身实例(GUI界面) 加 笔记和注意事项
- Atitit springboot mybatis spring 集成 Springboot1.4 mybatis3.4.6 /springbootMybatis 目录 1.1. 设置map
- Go语言编程笔记1:Hello World
- 写给学生看的系统分析与验证笔记(一)——形式化基础
- umount报错设备繁忙(device is busy)怎么处理?
- 继Python之后,Go也顺利在浏览器上运行
- 多媒体教学计算机遥控,多媒体教学系统使用说明
- CodeForces 1037E Trips(瞎搞)
- stm32使用AD转换读取光敏电阻的值(光敏电阻5516)
- 一起参与开源.共同打造海派开源潮流社
- 408,你可敬的对手!