Open
Description
问题确认 Search before asking
- 我已经搜索过问题,但是没有找到解答。I have searched the question and found no related answer.
请提出你的问题 Please ask your question
在使用picodet的时候,使用coco数据集 出现一下问题,初步怀疑数据集有问题,则使用labelimg 查看没有任何问题,还有一部分报错事关于dataloder 的 请问picodet 训练只支持 coco 数据集,还是voc也可以支持 .yaml 文件没有关于voc 数据读取的文件
希望您尽快答复,感谢!!!!
Traceback (most recent call last):
File "tools/train.py", line 172, in <module>
main()
File "tools/train.py", line 168, in main
run(FLAGS, cfg)
File "tools/train.py", line 132, in run
trainer.train(FLAGS.eval)
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/engine/trainer.py", line 453, in train
for step_id, data in enumerate(self.loader):
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/reader.py", line 209, in __next__
return next(self.loader)
File "/opt/conda/envs/python35-paddle120-env/lib/python3.7/site-packages/paddle/fluid/dataloader/dataloader_iter.py", line 745, in __next__
self._reader.read_next_list()[0])
SystemError: (Fatal) Blocking queue is killed because the data reader raises an exception.
[Hint: Expected killed_ != true, but received killed_:1 == true:1.] (at /paddle/paddle/fluid/operators/reader/blocking_queue.h:175)
与上面问题一起出现 transform 问题:
06/15 15:09:04] reader WARNING: fail to map batch transform [BatchRandomResize_e1acb6] with error: Invalid segm type: <class 'NoneType'> and stack:
Traceback (most recent call last):
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/reader.py", line 73, in __call__
data = f(data)
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/transform/batch_operators.py", line 167, in __call__
return resizer(samples, context=context)
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/transform/operators.py", line 102, in __call__
sample[i] = self.apply(sample[i], context)
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/transform/operators.py", line 840, in apply
[im_scale_x, im_scale_y])
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/transform/operators.py", line 774, in apply_segm
if is_poly(segm):
File "/home/aistudio/PaddleDetection-2.5.0/ppdet/data/transform/op_helper.py", line 412, in is_poly
"Invalid segm type: {}".format(type(segm))
AssertionError: Invalid segm type: <class 'NoneType'>
coco 数据集读取 文件:
metric: COCO
num_classes: 1
TrainDataset:
!COCODataSet
image_dir: Images
anno_path: train.json
dataset_dir: dataset/coco
data_fields: ['image', 'gt_bbox', 'gt_class', 'gt_poly', 'is_crowd']
EvalDataset:
!COCODataSet
image_dir: Images
anno_path: val.json
dataset_dir: dataset/coco
TestDataset:
!ImageFolder
anno_path: test.json # also support txt (like VOC's label_list.txt)
dataset_dir: dataset/coco # if set, anno_path will be 'dataset_dir/anno_path'