architecture: YOLOX
norm_type: sync_bn
use_ema: True
ema_decay: 0.9999
ema_decay_type: "exponential"
act: silu
find_unused_parameters: True

depth_mult: 1.0
width_mult: 1.0

YOLOX:
  backbone: CSPDarkNet
  neck: YOLOCSPPAN
  head: YOLOXHead
  size_stride: 32
  size_range: [15, 25] # multi-scale range [480*480 ~ 800*800]

CSPDarkNet:
  arch: "X"
  return_idx: [2, 3, 4]
  depthwise: False

YOLOCSPPAN:
  depthwise: False

YOLOXHead:
  l1_epoch: 285
  depthwise: False
  loss_weight: {cls: 1.0, obj: 1.0, iou: 5.0, l1: 1.0}
  assigner:
    name: SimOTAAssigner
    candidate_topk: 10
    use_vfl: False
  nms:
    name: MultiClassNMS
    nms_top_k: 10000
    keep_top_k: 1000
    score_threshold: 0.001
    nms_threshold: 0.65
    # For speed while keep high mAP, you can modify 'nms_top_k' to 1000 and 'keep_top_k' to 100, the mAP will drop about 0.1%.
    # For high speed demo, you can modify 'score_threshold' to 0.25 and 'nms_threshold' to 0.45, but the mAP will drop a lot.
