Spaces:
Sleeping
Sleeping
| import os.path | |
| import numpy as np | |
| from ultralytics import YOLO | |
| from file_utils import project_dir | |
| print(project_dir()) | |
| def train(): | |
| """ | |
| Funksiya modelni train qiladi | |
| data uyidagi formatda bo'lish kerak | |
| # - splitted | |
| # - train | |
| # - good | |
| # - problem | |
| # - val | |
| # - good | |
| # - problem | |
| """ | |
| data_joyi = 'traffic_laws/scripts/splitted/' | |
| model = YOLO('yolov8n-cls.pt') | |
| model.train(data=data_joyi, epochs=100, imgsz=224, batch=512, save_period=10, device='cuda:0', augment=True) | |
| metrics = model.val() | |
| print(metrics.top1) # top1 aniqligi | |
| def tekshirish(): | |
| """ | |
| test qilish, model va rasmni berishimiz kerak | |
| """ | |
| train_qilingan_model_joyi = os.path.join( | |
| project_dir(), | |
| "models", | |
| "classification", | |
| "tl-14", | |
| "weights/best.pt" | |
| ) | |
| test_rasm_joyi = os.path.join( | |
| project_dir(), | |
| "scripts", | |
| "splitted", | |
| "val", | |
| "good", | |
| "frame_000000_vid_39_1284-2_34good.jpg" | |
| ) | |
| model_custom = YOLO(train_qilingan_model_joyi) | |
| natijalar = model_custom(test_rasm_joyi) # predict on an image | |
| natija = natijalar[0].names[np.argmax(natijalar[0].probs.cpu().numpy())] | |
| print(f"Label natija: {natija}") | |
| tekshirish() |