initial push

This commit is contained in:
Philipp
2025-11-28 09:35:02 +01:00
commit 471ea10341
97 changed files with 7424 additions and 0 deletions

Binary file not shown.

View File

@@ -0,0 +1,67 @@
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# Copyright (c) Megvii, Inc. and its affiliates.
import os
from yolox.exp import Exp as MyExp
class Exp(MyExp):
def __init__(self):
super(Exp, self).__init__()
self.data_dir = "/home/kitraining/To_Annotate/"
self.train_ann = "coco_project_54_train.json"
self.val_ann = "coco_project_54_valid.json"
self.test_ann = "coco_project_54_test.json"
self.num_classes = 3
self.pretrained_ckpt = r'/home/kitraining/Yolox/YOLOX-main/pretrained/YOLOX_s.pth'
self.depth = 0.33
self.width = 0.50
self.exp_name = os.path.split(os.path.realpath(__file__))[1].split(".")[0]
# -------------- training config --------------------- #
self.use_focal_loss = True # Focal Loss for better class imbalance handling
self.focal_loss_alpha = 0.25
self.focal_loss_gamma = 1.5
self.warmup_epochs = 20 # More warmup
self.max_epoch = 150 # More epochs for better convergence
self.act = "silu" # Activation function
self.no_aug_epochs = 30 # No augmentation for last epochs to stabilize training
self.class_weights = [1.0, 1.0, 1.0] # Weights for each class to handle imbalance
# Thresholds
self.test_conf = 0.15 # Low to catch more the second class
self.nmsthre = 0.5 # IoU threshold for NMS
# Data Augmentation intens to improve generalization
self.enable_mixup = True
self.mixup_prob = 0.7 # mixup
self.mosaic_prob = 0.8 # mosaico
self.degrees = 20.0 # Rotation
self.translate = 0.2 # Translation
self.scale = (0.5, 1.5) # Scaling
self.shear = 5.0 # Shear
self.flip_prob = 0.8
self.hsv_prob = 1.0
# Learning rate
self.basic_lr_per_img = 0.001 / 64.0 # Lower LR to avoid divergence
self.scheduler = "yoloxwarmcos"
self.min_lr_ratio = 0.01
# Loss weights
self.cls_loss_weight = 8.0 # More weight to the classification loss
self.obj_loss_weight = 1.0
self.reg_loss_weight = 1.0
# Input size bigger for better detection of small objects like babys
self.input_size = (832, 832)
self.test_size = (832, 832)
# Batch size
self.batch_size = 5 # Reduce if you have memory issues

View File

@@ -0,0 +1,26 @@
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# Copyright (c) Megvii, Inc. and its affiliates.
import os
from yolox.exp import Exp as MyExp
class Exp(MyExp):
def __init__(self):
super(Exp, self).__init__()
self.data_dir = "/home/kitraining/To_Annotate/"
self.train_ann = "coco_project_54_train.json"
self.val_ann = "coco_project_54_valid.json"
self.test_ann = "coco_project_54_test.json"
self.num_classes = 2
self.pretrained_ckpt = r'/home/kitraining/Yolox/YOLOX-main/pretrained/YOLOX-s.pth'
self.depth = 1
self.width = 1
self.input_size = (640, 640)
self.mosaic_scale = (0.1, 2)
self.random_size = (10, 20)
self.test_size = (640, 640)
self.exp_name = os.path.split(os.path.realpath(__file__))[1].split(".")[0]
self.enable_mixup = False