build.py 844 B

1234567891011121314151617181920212223242526272829303132
  1. #!/usr/bin/env python3
  2. # -*- coding:utf-8 -*-
  3. from .loss import build_criterion
  4. from .yolov3 import YOLOv3
  5. # build object detector
  6. def build_yolov3(args, cfg, device, num_classes=80, trainable=False):
  7. print('==============================')
  8. print('Build {} ...'.format(args.model.upper()))
  9. print('==============================')
  10. print('Model Configuration: \n', cfg)
  11. model = YOLOv3(
  12. cfg = cfg,
  13. device = device,
  14. img_size = args.img_size,
  15. num_classes = num_classes,
  16. conf_thresh = args.conf_thresh,
  17. nms_thresh = args.nms_thresh,
  18. topk = args.topk,
  19. trainable = trainable
  20. )
  21. criterion = None
  22. if trainable:
  23. # build criterion for training
  24. criterion = build_criterion(cfg, device, num_classes)
  25. return model, criterion