在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相关推荐

  1. 错误处理: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) 代码如上,报 ...

  2. 成功解决 shape = predictor(img, dets[0]) IndexError: Index out of range

    成功解决    shape = predictor(img, dets[0]) IndexError: Index out of range 目录 解决问题 解决方法 解决问题 shape = pre ...

  3. IndexError: list index out of range的解决办法

    IndexError: list index out of range的解决办法 列表的索引也就是他的元素的个数是没有你所想要找的元素位置,比如这个列表只有十个元素你要找第11个元素这个肯定找不到 解 ...

  4. 爬虫时出现 IndexError: list index out of range 的原因

    爬虫时出现 IndexError: list index out of range 的原因有两种: 简单举例如下: 第一种情况: index越界 Alex = [1,2,3] Alex[1] 2 Al ...

  5. 很有必要看,这篇 解决 IndexError: list index out of range

    运行逻辑回归代码,遭遇bug: Traceback (most recent call last):File "D:/DTLFolder/paperTest/Paper_logistic r ...

  6. mmdetection训练出现:IndexError: list index out of range 错误

    mmdetection训练出现:IndexError: list index out of range 错误 文章目录: 1 问题分析 1.1 尝试解决错误:第一次 1.2 尝试解决错误:第二次 2 ...

  7. 【python基础】list操作相关:扩充、条件查找【IndexError: list assignment index out of range】...

    参考 [https://blog.csdn.net/qq_44768814/article/details/88614393] [IndexError: list assignment index o ...

  8. 成功解决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 ...

  9. 成功解决.append方法出现错误IndexError: list index out of range

    成功解决.append方法出现错误IndexError: list index out of range 目录 解决问题 解决方法 解决问题 .append方法出现错误IndexError: list ...

最新文章

  1. mysql case设固定值_MySQL CASE语句将自定义值放置为NULL
  2. 一些安全相关的HTTP响应头
  3. SpringMVC使用及知识点提炼
  4. 多标签文本分类数据集_标签感知的文档表示用于多标签文本分类(EMNLP 2019)...
  5. JUNIPER SRX Ipsec ××× 点对点Policy base ×××连接测试
  6. 昂贵的聘礼(枚举区间+最短路)
  7. 这组三八妇女节海报素材psd模板,你给打几分?
  8. HDFS 读取、写入、遍历文件夹获取文件全路径、append
  9. 音译 —— 本身的含义
  10. DB2 亲身实例(GUI界面) 加 笔记和注意事项
  11. Atitit springboot mybatis spring 集成 Springboot1.4 mybatis3.4.6 /springbootMybatis 目录 1.1. 设置map
  12. Go语言编程笔记1:Hello World
  13. 写给学生看的系统分析与验证笔记(一)——形式化基础
  14. umount报错设备繁忙(device is busy)怎么处理?
  15. 继Python之后,Go也顺利在浏览器上运行
  16. 多媒体教学计算机遥控,多媒体教学系统使用说明
  17. CodeForces 1037E Trips(瞎搞)
  18. stm32使用AD转换读取光敏电阻的值(光敏电阻5516)
  19. 一起参与开源.共同打造海派开源潮流社
  20. 408,你可敬的对手!

热门文章

  1. Java导出多个excel压缩成zip下载
  2. 学计算机毁一生,为什么说学医毁三代学法毁一生
  3. mac port更新卡住
  4. 【生成模型】浅析玻尔兹曼机的原理和实践
  5. 基于微信小程序做直播的截图(微信小程序发起视频直播)
  6. android 10系统下载地址,Android 10正式版
  7. ntpdate解决同步时间报错:the NTP socket is in use, exiting
  8. 任正非评华为HR胡玲事件,元芳你怎么看?
  9. Python基础-映射
  10. UIView相对坐标转换