Spaces:
Sleeping
Sleeping
| """ | |
| Configuration file for Automated Tablet Defect Detection System | |
| """ | |
| import os | |
| from pathlib import Path | |
| # ===================== PATH CONFIGURATION ===================== | |
| PROJECT_ROOT = Path(__file__).parent | |
| DATA_DIR = PROJECT_ROOT / "capsule" | |
| TRAIN_DIR = DATA_DIR / "train" / "good" | |
| TEST_DIR = DATA_DIR / "test" | |
| GROUND_TRUTH_DIR = DATA_DIR / "ground_truth" | |
| MODEL_DIR = PROJECT_ROOT / "models" | |
| RESULTS_DIR = PROJECT_ROOT / "results" | |
| # Create directories if they don't exist | |
| MODEL_DIR.mkdir(exist_ok=True) | |
| RESULTS_DIR.mkdir(exist_ok=True) | |
| # ===================== MODEL CONFIGURATION ===================== | |
| # Backbone architecture (ResNet18 for balance between speed and accuracy) | |
| BACKBONE = "resnet18" | |
| FEATURE_LAYERS = ["layer1", "layer2", "layer3"] # Multi-scale features | |
| # Image preprocessing | |
| IMAGE_SIZE = (224, 224) # Standard ImageNet size | |
| MEAN = [0.485, 0.456, 0.406] # ImageNet normalization | |
| STD = [0.229, 0.224, 0.225] | |
| # PaDiM parameters | |
| REDUCE_DIM = 100 # Dimensionality reduction via random projection | |
| EPSILON = 1e-5 # Numerical stability for covariance matrix | |
| # ===================== INFERENCE CONFIGURATION ===================== | |
| ANOMALY_THRESHOLD = 15.0 # Decision threshold for Mahalanobis distance (tunable) | |
| HEATMAP_COLORMAP = "jet" # Colormap for visualization | |
| HEATMAP_ALPHA = 0.4 # Overlay transparency | |
| # ===================== TRAINING CONFIGURATION ===================== | |
| BATCH_SIZE = 32 | |
| NUM_WORKERS = 4 # Dataloader workers (set to 0 for Windows compatibility) | |
| # ===================== EVALUATION CONFIGURATION ===================== | |
| DEFECT_TYPES = ["crack", "faulty_imprint", "poke", "scratch", "squeeze"] | |