build.py 898 B

12345678910111213141516171819202122232425
  1. #!/usr/bin/env python3
  2. # -*- coding:utf-8 -*-
  3. from .criterion import build_criterion
  4. from .detr import DETR
  5. # build object detector
  6. def build_detr(cfg, num_classes=80, is_val=False):
  7. # -------------- Build RT-DETR --------------
  8. model = DETR(cfg = cfg,
  9. num_classes = num_classes,
  10. conf_thresh = cfg['train_conf_thresh'] if is_val else cfg['test_conf_thresh'],
  11. nms_thresh = cfg['train_nms_thresh'] if is_val else cfg['test_nms_thresh'],
  12. topk = cfg['train_topk'] if is_val else cfg['test_topk'],
  13. use_nms = False,
  14. )
  15. # -------------- Build criterion --------------
  16. criterion = None
  17. if is_val:
  18. # build criterion for training
  19. criterion = build_criterion(cfg, num_classes, aux_loss=True)
  20. return model, criterion