File "D:/codetest/flower/dataset/read_yolo_dataset.py", line 35, in __getitem__ img = self.imgs[list(map(lambda x: x == self.labels[item].split('.')[0], self.imgnames)).index(True)] ValueError: True is not in list
时间: 2023-06-27 13:01:36 浏览: 78
coco2017数据集的labels文件-yolo格式
这个错误看起来像是在使用列表的index()方法时,目标元素没有在列表中找到。具体来说,你在使用lambda表达式来过滤self.imgnames列表中的元素,并将结果列表传递给index()方法。但是,由于目标元素不在列表中,所以无法找到它并且会引发ValueError异常。
你可以检查以下内容,看看是否有可能:
1. self.labels[item]的值是否正确。如果它不是一个有效的文件名,则可能会导致错误。
2. self.imgnames列表的内容是否正确。如果它没有正确地读取图像文件名,则可能会导致错误。
3. 检查lambda表达式是否正确。它是否正确地过滤了self.imgnames列表中的元素?
如果以上方法都没有解决问题,你可以尝试打印出相关变量的值,以便更好地理解问题出在哪里。
阅读全文