Megvii-BaseDetection / YOLOX

YOLOX is a high-performance anchor-free YOLO, exceeding yolov3~v5 with MegEngine, ONNX, TensorRT, ncnn, and OpenVINO supported. Documentation: https://yolox.readthedocs.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

'VOCDetection' object has no attribute 'cache'

Sor3n98 opened this issue · comments

(djh) PS C:\Users\628e\PycharmProjects\YOLOX-PCB\YOLOX> python tools/train.py -f exps/example/yolox_voc/yolox_voc_s.py -d 1 -b 16
2023-10-17 10:58:19 | INFO | yolox.core.trainer:130 - args: Namespace(experiment_name='yolox_voc_s', name=None, dist_backend='nccl', dist_url=None, batch_siz
e=16, devices=1, exp_file='exps/example/yolox_voc/yolox_voc_s.py', resume=False, ckpt=None, start_epoch=None, num_machines=1, machine_rank=0, fp16=False, cache=N
one, occupy=False, logger='tensorboard', opts=[])
2023-10-17 10:58:19 | INFO | yolox.core.trainer:131 - exp value:
╒═══════════════════╤════════════════════════════╕
│ keys │ values │
╞═══════════════════╪════════════════════════════╡
│ seed │ None │
├───────────────────┼────────────────────────────┤
│ output_dir │ './YOLOX_outputs' │
├───────────────────┼────────────────────────────┤
│ print_interval │ 10 │
├───────────────────┼────────────────────────────┤
│ eval_interval │ 10 │
├───────────────────┼────────────────────────────┤
│ dataset │ None │
├───────────────────┼────────────────────────────┤
│ num_classes │ 6 │
├───────────────────┼────────────────────────────┤
│ depth │ 0.33 │
├───────────────────┼────────────────────────────┤
│ width │ 0.5 │
├───────────────────┼────────────────────────────┤
│ act │ 'silu' │
├───────────────────┼────────────────────────────┤
│ data_num_workers │ 4 │
├───────────────────┼────────────────────────────┤
│ input_size │ (640, 640) │
├───────────────────┼────────────────────────────┤
│ multiscale_range │ 5 │
├───────────────────┼────────────────────────────┤
│ data_dir │ None │
├───────────────────┼────────────────────────────┤
│ train_ann │ 'instances_train2017.json' │
├───────────────────┼────────────────────────────┤
│ val_ann │ 'instances_val2017.json' │
├───────────────────┼────────────────────────────┤
│ test_ann │ 'instances_test2017.json' │
├───────────────────┼────────────────────────────┤
│ mosaic_prob │ 1.0 │
├───────────────────┼────────────────────────────┤
│ mixup_prob │ 1.0 │
├───────────────────┼────────────────────────────┤
│ hsv_prob │ 1.0 │
├───────────────────┼────────────────────────────┤
│ flip_prob │ 0.5 │
├───────────────────┼────────────────────────────┤
│ degrees │ 10.0 │
├───────────────────┼────────────────────────────┤
│ translate │ 0.1 │
├───────────────────┼────────────────────────────┤
│ mosaic_scale │ (0.1, 2) │
├───────────────────┼────────────────────────────┤
│ enable_mixup │ True │
├───────────────────┼────────────────────────────┤
│ mixup_scale │ (0.5, 1.5) │
├───────────────────┼────────────────────────────┤
│ shear │ 2.0 │
├───────────────────┼────────────────────────────┤
│ warmup_epochs │ 1 │
├───────────────────┼────────────────────────────┤
│ max_epoch │ 500 │
├───────────────────┼────────────────────────────┤
│ warmup_lr │ 0 │
├───────────────────┼────────────────────────────┤
│ min_lr_ratio │ 0.05 │
├───────────────────┼────────────────────────────┤
│ basic_lr_per_img │ 0.00015625 │
├───────────────────┼────────────────────────────┤
│ scheduler │ 'yoloxwarmcos' │
├───────────────────┼────────────────────────────┤
│ no_aug_epochs │ 15 │
├───────────────────┼────────────────────────────┤
│ ema │ True │
├───────────────────┼────────────────────────────┤
│ weight_decay │ 0.0005 │
├───────────────────┼────────────────────────────┤
│ momentum │ 0.9 │
├───────────────────┼────────────────────────────┤
│ save_history_ckpt │ False │
├───────────────────┼────────────────────────────┤
│ exp_name │ 'yolox_voc_s' │
├───────────────────┼────────────────────────────┤
│ test_size │ (640, 640) │
├───────────────────┼────────────────────────────┤
│ test_conf │ 0.01 │
├───────────────────┼────────────────────────────┤
│ nmsthre │ 0.65 │
╘═══════════════════╧════════════════════════════╛
2023-10-17 10:58:20 | INFO | yolox.core.trainer:136 - Model Summary: Params: 8.94M, Gflops: 26.77
Exception ignored in: <function CacheDataset.del at 0x000001F30C4018B0>
2023-10-17 10:58:20 | ERROR | yolox.core.launch:98 - An error has been caught in function 'launch', process 'MainProcess' (18696), thread 'MainThread' (23044)
:
Traceback (most recent call last):

File "C:\Users\628e\PycharmProjects\YOLOX-PCB\YOLOX\tools\train.py", line 138, in
launch(
└ <function launch at 0x000001F309BCA430>

File "C:\ProgramData\anaconda3\envs\djh\lib\site-packages\yolox-0.3.0-py3.9.egg\yolox\core\launch.py", line 98, in launch
main_func(*args)
│ └ (╒═══════════════════╤═══════════════════════════════════════════════════════════════════════════════════════════════════════...
└ <function main at 0x000001F30BF71280>

File "C:\Users\628e\PycharmProjects\YOLOX-PCB\YOLOX\tools\train.py", line 118, in main
trainer.train()
│ └ <function Trainer.train at 0x000001F30C44C940>
└ <yolox.core.trainer.Trainer object at 0x000001F30C458A90>

File "C:\ProgramData\anaconda3\envs\djh\lib\site-packages\yolox-0.3.0-py3.9.egg\yolox\core\trainer.py", line 74, in train
self.before_train()
│ └ <function Trainer.before_train at 0x000001F30C455310>
└ <yolox.core.trainer.Trainer object at 0x000001F30C458A90>

File "C:\ProgramData\anaconda3\envs\djh\lib\site-packages\yolox-0.3.0-py3.9.egg\yolox\core\trainer.py", line 149, in before_train
self.train_loader = self.exp.get_data_loader(
│ │ │ └ <function Exp.get_data_loader at 0x000001F30C44CB80>
│ │ └ ╒═══════════════════╤════════════════════════════════════════════════════════════════════════════════════════════════════════...
│ └ <yolox.core.trainer.Trainer object at 0x000001F30C458A90>
└ <yolox.core.trainer.Trainer object at 0x000001F30C458A90>

File "C:\ProgramData\anaconda3\envs\djh\lib\site-packages\yolox-0.3.0-py3.9.egg\yolox\exp\yolox_base.py", line 181, in get_data_loader
self.dataset = self.get_dataset(cache=False, cache_type=cache_img)
│ │ │ │ └ None
│ │ │ └ <function Exp.get_dataset at 0x000001F30C455F70>
│ │ └ ╒═══════════════════╤════════════════════════════════════════════════════════════════════════════════════════════════════════...
│ └ None
└ ╒═══════════════════╤════════════════════════════════════════════════════════════════════════════════════════════════════════...

File "C:\Users\628e\PycharmProjects\YOLOX-PCB\YOLOX\exps/example/yolox_voc\yolox_voc_s.py", line 27, in get_dataset
return VOCDetection(
└ <class 'yolox.data.datasets.voc.VOCDetection'>

File "C:\ProgramData\anaconda3\envs\djh\lib\site-packages\yolox-0.3.0-py3.9.egg\yolox\data\datasets\voc.py", line 137, in init
path_filename = [

(self._imgpath % self.ids[i]).split(self.root + "/")[1]
 │    │          │    │   │         │    └ 'C:\\Users\\628e\\PycharmProjects\\YOLOX-PCB\\YOLOX\\datasets\\VOCdevkit'
 │    │          │    │   │         └ <yolox.data.datasets.voc.VOCDetection object at 0x000001F312C10580>
 │    │          │    │   └ 0
 │    │          │    └ [('C:\\Users\\628e\\PycharmProjects\\YOLOX-PCB\\YOLOX\\datasets\\VOCdevkit\\VOC2007', 'notch_0'), ('C:\\Users\\628e\\PycharmP...     
 │    │          └ <yolox.data.datasets.voc.VOCDetection object at 0x000001F312C10580>
 │    └ '%s\\JPEGImages\\%s.jpg'
 └ <yolox.data.datasets.voc.VOCDetection object at 0x000001F312C10580>

IndexError: list index out of range
Traceback (most recent call last):
File "C:\ProgramData\anaconda3\envs\djh\lib\site-packages\yolox-0.3.0-py3.9.egg\yolox\data\datasets\datasets_wrapper.py", line 177, in del
if self.cache and self.cache_type == "ram":
AttributeError: 'VOCDetection' object has no attribute 'cache'

my system version is window10,and i want to use yolox to train my custom dataset after i have succesfully run the demo.py